Re: Gnome Key Binding Standard -- Basic Issues



------------------------------
Date: 7/2/98 4:39 AM
Alex Achenbach wrote:

>Existing definitions (= map of one key, or maybe multiple keys
>[if that was the initial application or user setup], to a function)
>should be left alone by applications altogether.

>HOWEVER, (and you might have meant that from the start) this leaves
>a risk of two applications implementing a new function that has not
>been "standardized" before, with different symbolic names,
>eg "paste as column", named "paste-as-column" by one application,
>but "paste-clipboard-as-column" by another; these two (differently
>named, but with equivalent semantics) would cause a duplication
>in the database.

A good UI trick that Microsoft came up with (in their office suite) was the regular "paste-clipboard" and the all encompasing "paste-special".  The "paste-special" would bring up a dialog that would further inquire which type of application specific pasting is required.  That type of scheme for special purpose actions would be good.

However, I think a standard naming scheme would also prove benificial and less frustrating than a hundred dialog boxes.  I.e. the format "action-application" using Alex's example would always be "paste-column".

If Gnome is going to establish a central key binding repository, they should be related to general applications.  If an application has further specific actions that need binding, then they would use a local binding scheme.  In the event of a conflict, the application would change what the modifying keys are.

for example:
Ctrl+V = "paste"
an application wants to add the action "validate", and because it was devoped by someone who is not used to the normal key binding wants to use Ctrl+V as well.

The resolution is that the conflicting app specific binding Ctrl+V = "validate" is automatically reassigned to Ctrl+Meta+V = "validate" or some such equivalent.  (obviously this needs to be reflected in the menus--another axample of why hard coding is bad).




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