xboard-devel
[Top][All Lists]
Advanced

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

Re: [XBoard-devel] Button-bar focus


From: Tim Mann
Subject: Re: [XBoard-devel] Button-bar focus
Date: Sat, 4 Jul 2009 10:40:45 -0700

The general idea was to have a tab chain like other Windows apps.  In
4.2.7 and earlier, though, there's not much you can control with the
keyboard in the main window -- just the button bar, the menu bar, and
of course accelerator keys.  The tab chain doesn't include the menu bar
because (iirc) Windows apps don't normally include that in the tab
chain -- you can always get to the menu bar with Alt+Space, and that
works in WinBoard too.  So tabbing to (or in) the main window just gets
you to the button bar.  As you noted, this is not super useful, since
accelerator keys exist too.  However, I think the tab chain is a good
feature to keep since it's consistent with Windows standards.  I think
the idea of this standard is that you can operate the app from the
keyboard without having to know what its unique accelerator keys are.
You only have to know about the Windows standard keys Tab, arrow,
space/enter, and Alt+Space.

WinBoard does add an extra twist to the standard by making the same tab
chain cycle through two different windows if the ICS interaction window
is up.  I didn't make tabbing across select the new window and bring
it to the top because (at least on smaller screens) one sometimes
keeps the board window on top of most of the ICS interaction window,
with only the bottom part of the ICS window sticking out.  I didn't
want tabbing to the interaction window to raise and and possibly cover
up the board, though on the other hand I guess there's some argument
that tabbing to the board *should* bring it to the top.  However, you
can use the Windows standard Alt+Tab to switch windows and bring the
new one to the top.

Does WinBoard for JFW (and/or 4.3.*/4.4.0) have a way to move pieces by
moving the selection highlight around the board with the arrow keys and
picking up or putting down a piece with the space bar or Enter?  If so,
that functionality should be added to the tab chain.

Also, if you can click on the clocks to do something useful now, they
should be able to take keyboard focus and be in the tab chain too.  In
4.2.7, clicking on the clocks does something only in Edit Position mode,
where you can't do the more important functions with the keyboard
anyway, so I didn't bother putting them in the tab chain.

        --Tim

On Sat, 04 Jul 2009 12:34:44 +0200, "h.g. muller" <address@hidden> wrote:
> I hope Tim can answer this:
> 
> We uncovered some mysterious behavior when testing WB for JAWS,
> where one is completely dependent on key strokes to operate it, as the blind
> cannot use a pointing device like a mouse. The behavior is not specific
> to the JAWS version, but likely unnoticed by normal (mouse) users.
> 
> It seems WB makes a lot of effort to put focus on the button bar when
> you leave the ICS interaction console with a TAB command. There is
> a special event handler ButtonProc(), to make sure that Left and Right
> Arrow keys cycle through the buttons in this state, and that Enter 
> activates the
> selected one. There is no direct provision to get out of this mode and get 
> focus
> back onto the main window (although you can TAB back to the ICS window),
> e.g. to activate the main menu bar for changing option settings.
> The only other exit from this state is through invoking the move type-in 
> dialog,
> (by typing an alpha-numeric character) and then quitting it.
> 
> Why does this feature exist at all? We have accelerator keys defined for
> the buttons (Alt + Left / Right / Up / Down in the standard version).
> It seems much simpler to have TAB from the ICS console give focus
> to the main window, and use these key strokes to activate the step functions
> directly than to use the arrows to navigate through the buttons before you can
> activate them.
> 
> Can I savely remove all code for this, "inter-button navigation" or do you 
> recall
> special reasons why it was introduced and should better be kept?
> 
> H.G.
> 
> 
> 


-- 
Tim Mann  address@hidden  http://tim-mann.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]