SV: Default button in dialogs



>> If you choose to use specific keys for each dialog button
>> you run into troubles when there are no keyboard.
>> 
>> Note that no keyboard does not imply there is a pointing
>> device on the unit.

> Most desktop software would have to be rewritten or heavily customised 
> to work in an environment without a pointer or keyboard - there are 
> so many assumptions (in the code, in the UI design, in the 
> documentation) about what kind of system the software is embedded in. 

In fact there are not that many hard-wired assumptions about the pointer
and/or keyboard in most applications. The ones I know of are mostly graphical
systems that peeks & pokes in the X11 event queue.

Normally the only thing you do with the pointer is to set the focus to
some app and/or some specific part of an app. If you can replace those actions
then your done.

> For example, how could you add a launcher to the panel without a 
> keyboard (or something acting in place of a keyboard, like speech 
> input)? I'm not asking how to do it with the current interface, because 
> obviously you can't, but can you imagine *any* way of doing it? And why 
> would you want to? Launchers exist because most users have a keyboard 
> for typing commands, and they also have a mouse for clicking buttons, 
> and clicking is easier than typing. Without those conditions the idea 
> of launchers doesn't make sense. The whole GUI is based on those same 
> assumptions.

A launcher does not need a keyboard or pointer to be useful. Imagine a
launcher on a panel along the bottom of the screen, it would only require
a line of buttons or a pressure sensitive area to activate an action.

No "keyboard" and no pointing device. (Really, there are both a keyboard
and a pointing device but they are not like they use to be.)

> IMO Gnome is desktop software and it should not try to cater for 
> non-desktop systems. Look at WinCE for an example of what happens when 
> you take an interface that's well-designed for a particular niche and 
> apply it outside that niche. If we try to make Gnome usable on every 
> possible system, it won't be usable on any of them.

> So maybe we need to define what kind of systems Gnome is aimed at - is 
> it reasonable to assume that there will be a keyboard and optionally a 
> pointing device? Remember, X and GTK will still be policy-free, so 
> most of the Gnome code will be reusable in non-desktop systems, but at 
> some point we have to focus on desktop systems and I think gnome-libs 
> is a reasonable place to introduce that policy.

That would be great!

> Michael

My point is that nothing should be hardcoded that doesn't have to be.
Of those things I would like to have on WinCE-like devices are:

  o A well-defined function key system that can replace the menubar with
    default translation as appropriate

    In this you could define something like a "File" function key, that
    will open the "file" submenu. This submenu will then become the
    present level and replace some/all keybindings accordingly.

    (Some systems with non-standard menubars would run into troubles)

  o Some kind of function/modifier key system that sets the "level"
    or "mode" of interaction

    Today [Ctrl] and [Alt] mostly reflects the programmers mood the day
    that he made the implementation.

    Such keys could set focus for something like: global, wm, app, dialog,..
    or they could act like "normal" modifier keys: range select, incremental
    select, deselect..

  o Well defined button rules for 1, 2, 3 and 4 button mouse, roller-balls,
    rubber-mouse, glide-mouse, whatever.. And again with the option of
    replacing those rules by your own private ones.

    Now it is up to each application to define the bindings for the
    pointing device buttons but this should be uniform across all apps.
    Some apps uses <1> for drag, some <2>. Some uses [Ctrl]<1>
    for incremental select, some uses <2>.

    These rules should include such weird things as "magic wand" and 
    "exterminate monster with magic gizmo no 42". 

  o .. (lots of stuff =)

I gess all this leads to some sort of libs to standardise the X11 translation
tables.

Calum, will The GNOME accessibility project solve some parts of this?

John




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