Bug 372248 - Opening auto-hide panel properties messes up desktop widgets layout
Summary: Opening auto-hide panel properties messes up desktop widgets layout
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Panel (show other bugs)
Version: 5.8.3
Platform: Other Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-11-09 09:15 UTC by Gauthier
Modified: 2016-11-22 10:29 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gauthier 2016-11-09 09:15:37 UTC
Hello,

The bug has been present for a while but just had time to report it now.

Overview:
If you open panel properties on say a panel on the top edged with auto-hide settings, then it pushes all widgets on desktop down and then back up in place when you close the panel properties.
Although this behaviour is mostly fine, if you happen to have widgets on the desktop fairly tightly packed, say you have few of them stacked up vertically on the desktop with only the minimum space between them and between the top and bottom of the screen, then opening the panel property bar move them all over the place.


To reproduce:

1) Create a new empty panel placed at the top edge of the screen and enable the auto-hide settings (make it a bit wide for the bug to be easier to reproduce)
2) Place two of three widgets above each other (well I suppose it work with one too)
3) Scale them up so there is only the minimum space between them and between top and bottom of the screen
4) Open panel properties on the new panel

What should happen:
Panel properties bar should open on top of the desktop widgets without moving them

What actually happens:
Widgets are pushed down and their layout is rearranged on the desktop (resized and moved) to make them fit.

This is also the case for a panel with auto-hide settings place on the side edge if you have widgets packed horizontally along the desktop.
It used to be that this would also happen with the default bottom panel but for some reason I can't seem to reproduce it any more even if I put it on auto-hide (property bar just open over the widgets without moving them).

Thanks

Gauthier
Comment 1 Gauthier 2016-11-09 09:23:56 UTC
Forgot to say:

Using plasma 5.8.3 on KDE Neon but this has been present in plasma 5 at least since 5.6 (can't remember before) and on Kubuntu, Chakra and Manjaro.

Also my feeling is that there is an overall issue with the geometry or the dektop space occupied by auto-hide panel.

I reported a bug somewhat different but probably related here (see comment 2 as description on this bug is now irrelevant - it has been fixed): https://bugs.kde.org/show_bug.cgi?id=351217
Comment 2 Marco Martin 2016-11-17 12:29:57 UTC
what happens is that when the controller is open, the panel type is temporarly changed, to avoidthe panel hiding when it shouldn't.
but, this makes corona::availableScreenRect to be updated with the now visible panel.
i don't know how this could be fixed (except making the corona know that panel is-visible-but-just-temporarly
Comment 3 Marco Martin 2016-11-17 15:57:16 UTC
possible solution https://phabricator.kde.org/D3406
Comment 4 Marco Martin 2016-11-21 16:52:19 UTC
https://phabricator.kde.org/D3408
Comment 5 David Edmundson 2016-11-22 10:29:28 UTC
Git commit 7248a71a959f2099a4c27533c5316345c1a11fa1 by David Edmundson.
Committed on 22/11/2016 at 10:29.
Pushed by davidedmundson into branch 'Plasma/5.8'.

Don't set PanelView visibilty when opening/closing config

Summary:
    Instead of making PanelViewConfig manipulate the visibiltyMode of
    PanelView, make PanelView force the view to be visible whilst the
config
    is open.

    This is cleaner as it doesn't alter the original config, and
resolves a
    bug that opening configure with an autohide panel would shift
contents
    about.

Test Plan:
With panel as autohide opened config
Moused away from panel, panel stayed visible

With panel as autohide, plugged in a USB pen - panel appeared - and
closed when I hid the dialog

Changed mode in panel config, panel didn't immediately change - but did
on close.
Tested with all modes.

Reviewers: #plasma, mart

Reviewed By: mart

Subscribers: mart, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D3408

M  +2    -15   shell/panelconfigview.cpp
M  +0    -1    shell/panelconfigview.h
M  +28   -9    shell/panelview.cpp

http://commits.kde.org/plasma-workspace/7248a71a959f2099a4c27533c5316345c1a11fa1