On 2010-12-28, at 14:47, Max Carlson wrote:
> 1) lib/componentmodel/__updatedisabled:
>
> I don't think the logic is right here. It seems to me that you want to know
> a) if the user has requested clickable or focusable, and then set the actual
> value according to whether it is disabled or not? As written, if I make a
> component clickable and disabled, when I un-disable it, it won't become
> clickable. See also comment 5).
>
> I fixed this and a bunch of other focus/clickable edge cases. To test:
> <bsbtn x="10" width="195" height="72"
> onclick="this.setAttribute('disabled', true);"/>
>
Maybe I don't understand the contract here.
It seems there are two attributes, `clickable` and `focusable`, which can be
individually enabled/disabled; and then there is another attribute, `disabled`
which is meant to over-ride the former two. My question is, if I set an
element to be focusable=true, then set disabled=true, then disabled=false, I
would hope that focusable would return to `true` (the setting it started with,
before disabled was changed). That does not seem to be the case with the code
as written. It looks like setting disabled=false will smash clickable and
focusable to false, and any original setting will be lost.
Maybe you just need to explain what the contract of these three attributes is
with respect to each other.