bug-gnustep
[Top][All Lists]
Advanced

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

[bug #30560] Help key behaviour matches neither OSX nor OPENSTEP


From: Derek Fawcus
Subject: [bug #30560] Help key behaviour matches neither OSX nor OPENSTEP
Date: Tue, 27 Jul 2010 23:40:10 +0000
User-agent: Firefox/3.6.3

Follow-up Comment #2, bug #30560 (project gnustep):

Oh dear,  this partially turned out to be a bug in my test app,  so the
speculation about the help mode being triggered from the backend is rubbish.

However there are differences between OPENSTEP and OSX.

OPENSTEP generates NSFlagsChanged events and neither NSKeyUp nor NSKeyDown
events (i.e. the key is a pure modifier).  The switch in to and out of help
mode is in response to the flags being changed (beit in NSWindow or
elsewhere).  Help mode is also exited as soon as an mouse click occurs;  key
press/release while the help modifer is active generate
NSKeyUp,NSKeyDown,NSFlagsChanged events as appropriate.


OSX generates NSKeyUp and NSKeyDown events,  updating the modifier flags, 
but without generating an NSFlagsChanged event.  The NSKeyDown and NSKeyUp
events both have the NSHelpKeyMask bit set.  Indicating the modifier is set
before the key down,  and cleared after the key up.  The help key repeats
normally.  The switch to help mode is in response to the key down,  and the
key up does not exit help mode.
If the help key is still held down when a mouse click occurs,  then the
system stays in help mode; key press/release while the help modifer is active
generate NSKeyUp,NSKeyDown,NSFlagsChanged events as appropriate.

Which suggests one of two changes:
  1) Exactly emulate OSX
  2) Tidy up  the current mixed mode so that the NSFlagsChanged events occur
around the NSKeyUp/NSKeyDown events.  Giving a key up event with the help flag
set.


    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?30560>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

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