Review Request: Prevent resizing panel vertically from breaking the desktop (or bleeding over into positive coords)

Aaron Seigo aseigo at kde.org
Wed Feb 18 22:34:27 CET 2009



> On 2009-02-18 13:24:30, Aaron Seigo wrote:
> > it's an interesting hint as to the problem, but the code is in completely the wrong place. this fix needs to be in Containment, not a specific View subclass.

can you try this patch:

http://pastebin.ca/1341413

and see if that fixes it for you? the reason it should fix it is that constraintsEvent is delayed, and that event loop is entered between. this is something that needs to be done synchronously, however. SizeConstraint is triggered by Applet::resizeEvent, so putting this code in resizeEvent is no more or less immune to applets/containments reimplementing resizeEvent and not calling the base implementation.

in any case, this fixes it for me, but i'd like some confirmation of that. didn't start a new review request as i'd like to keep this all in one place and oddly rewviewboard doesn't seem to let me post a patch to an existing review?


- Aaron


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/101/#review159
-----------------------------------------------------------


On 2009-02-16 02:16:03, Josh wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/101/
> -----------------------------------------------------------
> 
> (Updated 2009-02-16 02:16:03)
> 
> 
> Review request for Plasma.
> 
> 
> Summary
> -------
> 
> This patch fixes the bug 176280 where resizing a horizontal panel to be larger would break the desktop.  It applies to kdebase/workspace/plasma/shells/desktop/panelview.cpp.  What appears to be the problem is at times panels will begin to bleed over into positive coordinates (they are meant to be in negative coordinates).  A function is added to check for this overflow and fixes it by setting the y position to be -(height_of_panel + 10).  This is a collaboration of a few people and is basically just a hack that has worked on 3 separate machines.  It should help to have more knowledgeable eyes check over it and maybe provide a better way of solving the problem.  Thanks for your time. 
> 
> 
> This addresses bug 176280.
>     https://bugs.kde.org/show_bug.cgi?id=176280
> 
> 
> Diffs
> -----
> 
>   /trunk/KDE/kdebase/workspace/plasma/shells/desktop/panelview.cpp 925267 
> 
> Diff: http://reviewboard.kde.org/r/101/diff
> 
> 
> Testing
> -------
> 
> Tested with one panel, top and bottom.  Tested with 2 panels, resizing both.
> 
> 
> Thanks,
> 
> Josh
> 
>



More information about the Plasma-devel mailing list