Review Request 120584: Don't position the panel until it's about to be displayed

Marco Martin notmart at gmail.com
Tue Oct 14 17:05:47 UTC 2014



> On Ott. 14, 2014, 4:36 p.m., Marco Martin wrote:
> > Sounds sensible.
> > however, can someone try plasma without this patch and with the Qt patch:
> > https://codereview.qt-project.org/#/c/97050/ 
> > 
> > this one may be a workaround for the qt xcb problem adressed in the above, but i'm not 100% sure since i can't reproduce the issue of panel starting up on wrong monitor (even if is a workaround, this one may be needed anyways since it would take aeons anyways for the qt patch making to releases)

even without the patch in qt, to see if it was *that* issue, it can be checked if seeting the panels as window can cover (or anything *without* struts) makes the problem not happen.

so the problem is the following:
* the panel sets an extended strut, removing its geometry from QScreen::AvailableGeometry()
* if the panel is ill-positioned just a little and overflows in the second screen even just a pixel (admittedly a bug in itself, but unrelated), qt xcb sees that the panel is not in the availableGeometry() of its screen, so checks if it is of any other screen, and if it is of even 1 pixel, it migrates the panel t the new screen


- Marco


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/120584/#review68403
-----------------------------------------------------------


On Ott. 14, 2014, 4:15 p.m., Aleix Pol Gonzalez wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/120584/
> -----------------------------------------------------------
> 
> (Updated Ott. 14, 2014, 4:15 p.m.)
> 
> 
> Review request for Plasma.
> 
> 
> Repository: plasma-workspace
> 
> 
> Description
> -------
> 
> I was getting the Panels wrongly positioned because Qt would reset the position at some point while initializing the class. This patch disables any position while the panel is not shown and makes sure it's placed when it's set to be shown.
> 
> 
> Diffs
> -----
> 
>   shell/panelview.cpp 9260c18 
> 
> Diff: https://git.reviewboard.kde.org/r/120584/diff/
> 
> 
> Testing
> -------
> 
> Both my installations initialize properly now.
> 
> 
> Thanks,
> 
> Aleix Pol Gonzalez
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20141014/77d955bc/attachment-0001.html>


More information about the Plasma-devel mailing list