[haiku-bugs] Re: [Haiku] #16165: Q's knobs turn no more

  • From: "Haiku" <trac@xxxxxxxxxxxx>
  • To: undisclosed-recipients: ;
  • Date: Sat, 30 May 2020 12:56:36 -0000

#16165: Q's knobs turn no more
---------------------------------+----------------------------
  Reporter:  humdinger           |      Owner:  nobody
      Type:  bug                 |     Status:  new
  Priority:  normal              |  Milestone:  Unscheduled
 Component:  Kits/Interface Kit  |    Version:  R1/Development
Resolution:                      |   Keywords:
Blocked By:                      |   Blocking:
  Platform:  All                 |
---------------------------------+----------------------------
Comment (by pulkomandy):

 Yes, it was, but we still try to provide BeOS compatibility. It was
 confirmed that BeOS does not behave as documented here and now we know at
 least two apps rely on that behavior. We are lucky that we have the
 sources for these two but it may not always be the case.

 We may try a more compromising solution, by having both the B_KEY_DOWN
 message and the KeyDown() call triggered. But it should not be possible
 for a BView subclass to intercept the message and prevent KeyDown to be
 called.

 So:
 - In BWindow, call both view->KeyDown(string, bytes - 1); and
 target->MessageReceived(message); when handling the messages
 - In BView, remove the default handling of the messages.

 I think this would allow to manage input events in MessageReceived if you
 really want to, but at least you couldn't accidentally break the other
 functions by forgetting to call the parent handler, and restore Behavior
 more similar to BeOS.
-- 
Ticket URL: <https://dev.haiku-os.org/ticket/16165#comment:4>
Haiku <https://dev.haiku-os.org>
The Haiku operating system.

Other related posts: