Re: GNOME user environment brainstorming



>  I wanted to add that gnome is still lacking keyboard shortcuts for programs.
> I begining to think that it's technically easy to implement reliably in a way
> Panel in gnome-1.4 supports shortcuts for "run program" and "show menu"
> actions - by just stealing keypresses from X (by grabbing keys) - this will
> work with *any* window manager.
> 
>  After keyboard shortcuts for programs are implemented, the next step is to
> implement "runonce" mode for shortcuts that will make mouseless work with
> gnome really possible and efficient - when such shortcut is pressed it's
> checked whether a program has been already launched using that shortcut - if
> it's not, program is started, if it's already running - just uniconify,
> unshring, raise its window and switch to desktop that program is running.
> 
>  Best regards,
>   -Vlad

Isn't it far better to have a central keyboard shortcut manager which grabs
*all* shortcuts from X and distributes them to the programs that have registered
for them?  There's only one keyboard (on most systems); there should only be one
keyboard manager.

Of course shortcuts are usually context sensitive between programs (and
sometimes even between different parts of one program) so there would need to be
either a context-detection mechanism (following input-focus) or a context switch
request mechanism, with different shortcut maps assigned to each context.

I don't know the details of how the system works currently but I get the
impression that the approach taken is not a centralised approach.  If it were
centralised then you could have a single configuration-point for all shortcuts,
make certain shortcuts globally unique, notify the user if a shortcut they were
adding conflicts with a globally-unique one, change the "Open" key in all
applications from Ctrl-O to Ctrl-Shift-Alt-F3, or whatever.  Default shortcut
sets (Mac, PC etc.) could be swapped in/out effortlessly.

Applications would export a set of named functions for each of their shortcut
contexts to the shortcut manager, and when a shortcut is pressed, that function
name is invoked in the application (like how Sawfish does it now).  There would
be a set of default functions (Open, Save, Save As, Close, Print etc.) that most
programs should support in their main context.  Internationalisation could be
considered in the configuration-panel as a translation layer.

Perhaps most of this framework is already in place, if so please ignore this post..

Luke Hutchison.



 ---------------------------------------------
This message was sent using Endymion MailMan.
http://www.endymion.com/products/mailman/






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