Re: Thoughts on an INACTIVATE state



on 3/3/01 5:45 PM, Owen Taylor at otaylor redhat com wrote:

> - The Macintosh UI has traditionally done this. (Probably
>   inspired by the fact that switching between apps on the
>   Macintosh is more of a major transition than on other
>   platforms.)

Actually, this was a new feature added in Mac OS 8 (so it's only a few years
old, while the Macintosh is 17 years old). The feature was inspired by
usability feedback. I don't think it has anything to do with application
switching since it affects all inactive windows, including those within the
current application. The major motivations are:

    a) So that widgets that won't do anything when you click on them (since
the window will just be brought to the front) won't look the same as widgets
that will do something when you click on them, and
    b) So that widgets in non-frontmost windows won't provide an unwanted
distraction from the contents of the front window and the main task,
especially for novices.

> - The eazel-engine and Crux theme try to emulate this
>   behavior, though it seems rather unreliable as currently
>   implemented.

Unsurprising, since Arlo was both a major designer of the look for OS 8 and
the designer of the Crux theme.

> [example of the case statement]
>
> GCC is pretty good about catching this, but only if people
> are careful to always use the GtkStateType type.

And only if they are also careful not to have a default: case that does
something like g_assert_not_reached.

Sorry, Owen, I guess this didn't answer any of your questions. Maybe I
should at least try:

> So, how much are you dying to have this feature? and does anybody
> have any better ideas about how to do it?

It's a nice feature. It's a flaw in the basic appearance of widgets that the
Macintosh designers took many years to notice and remedy, and I think we
should take advantage of their insight.

I'm sorry that I don't have specific implementation suggestions.

    -- Darin





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]