From: Yves G. <yc....@wa...> - 2009-11-14 22:58:50
|
Le samedi 14 novembre 2009 22:31:03, dmm...@us... a écrit : > Revision: 11262 > > http://rosegarden.svn.sourceforge.net/rosegarden/?rev=11262&view=rev > Author: dmmcintyr > Date: 2009-11-14 21:31:03 +0000 (Sat, 14 Nov 2009) > > Log Message: > ----------- > A real solution, or merely a bandaid? I leave it up to someone else to > untangle the web of interconnections and make that determination. In the > meantime, we trap a race condition and avoid crashing when trying to edit > notation in a smaller than default window. > Another working solution is to never call ensureVisible() (from Panned::ensureVisiblePointerInView()) on a rectangle taller than the view (ie to reduce the height of that rectangle when necessary). When the rectangle doesn't fit inside the view, a mouseMoveEvent() is trigged inside the scene, setCurrentStaff() is called, currentStaffChanged signal is emited etc... and we get a vertical oscillation of the view position. Nevertheless, I'm not sure my solution is better than yours as I don't totally understand the whole processing chain so I will not commit it. Yves |