[haiku-bugs] [Haiku] #9689: DisableUpdates()/EnableUpdates doesn't seem to work with Layout API

  • From: "jessicah" <trac@xxxxxxxxxxxx>
  • Date: Sat, 20 Apr 2013 02:29:51 -0000

#9689: DisableUpdates()/EnableUpdates doesn't seem to work with Layout API
----------------------------+------------------------------
 Reporter:  jessicah        |        Owner:  stippi
     Type:  bug             |       Status:  new
 Priority:  normal          |    Milestone:  R1
Component:  User Interface  |      Version:  R1/Development
 Keywords:                  |   Blocked By:
 Blocking:                  |  Has a Patch:  0
 Platform:  All             |
----------------------------+------------------------------
 While making changes to Tracker's Find to use the Layout API, discovered a
 drawing bug when layout changes were triggered by a function in the
 overridden `BWindow::MessageReceived` hook.

 The window calls `DisableUpdates()`, makes layout changes, and then calls
 `EnableUpdates()`, but the window is not redrawn correctly. Even adding
 `UpdateIfNeeded()` after `EnableUpdates()` did not cause the window to
 redraw.

 Removing the calls to disable/enable updates allowed the window to redraw
 correctly.

 My current changes are available at https://github.com/jessicah/haiku/tree
 /find-panel-layout-api, [https://github.com/jessicah/haiku/blob/find-
 panel-layout-api/src/kits/tracker/FindPanel.cpp#L278 SwitchToTemplate].

--
Ticket URL: <http://dev.haiku-os.org/ticket/9689>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: