On initialization, the panels' window size is 12x12, we can't use the
window size then, we need to use the thickness.
Also assert if we are setting the Panel's window outside of the screen, so
the problem doesn't happen again.
REVIEW: 120584
needed for center and right alignments
now 90% of the times the behavior of the panel controller is correct.
but problems still happen
CCBUG:339202
CCBUG:339207
needed for center and right alignments
now 90% of the times the behavior of the panel controller is correct.
but problems still happen
CCBUG:339202
CCBUG:339207
Rename removeDesktop -> removeScreen
Embrace removeScreen as the procedure to disable a screen.
Don't delay destruction of the panels either, the screen could have been
deleted by then.
Workaround a lack of API from Qt where it will decide to move the panels
around without us being able to control it.
This patch overrides the QWindow::screenDestroyed slot to be able to decide
where to move the Panel or whether it needs to be removed. This is
considered a workaround and should be removed once the new API is in and
released.
See also: https://codereview.qt-project.org/#/c/88351/
BUG: 335710
if we will not set it panel geometry will end up being wrong and hence availableScreenRect
This fixes plasmoids and icons being disappeared when adding panels.
BUG: 336376
REVIEW: 118847
This way, we don't need to have everything being repainted when geometries
change while constructing the panel.
Also don't connect to screen changed until everything is initialized and
the panel is displayed.
To set the sizes, we use the thickness and length properties, those will
also trigger the position timer.
This reduces quite a bit the amount of random changes happening when
initializing and when moving the panel around
All QQuickWindows share a default format. By setting a custom format
it overwrites the default and this results in a format without a
stencil buffer being requested resulting in possible rendering errors.
This was used to get an alpha buffer. Instead use the static method
on QQuickWindow to request an alpha buffer.
REVIEW: 118123
This broke screenForContainment because the Panel didn't know where it
would be placed when the panel is being set. This shouldn't be the case
anymore.
BUG: 334500
CCBUG: 334502
Set all the winId dependent stuff whenever it changes, windows are recreated
upon screen change and we need to make sure the set properties are
honored after changing screens.
At the moment the Panel didn't have any code to react status changes from
the containment (and therefore its applets).
This patch aims to add this, only problem being that it doesn't work. The
"unhide requested" and "unhiding" messages are being displayed though.
I've been looking for the code that does the actual display of the
auto-hiding panels and I wasn't able to find it, help is welcome.
REVIEW: 117563