Bug 478376 - Panel in "Dodge Windows" mode does not dodge window whose center is on other screen even when it touches the panel
Summary: Panel in "Dodge Windows" mode does not dodge window whose center is on other ...
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Panel (show other bugs)
Version: 5.90.0
Platform: Other Linux
: NOR minor
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: multiscreen, qt6
Depends on:
Blocks:
 
Reported: 2023-12-10 22:40 UTC by fanzhuyifan
Modified: 2024-01-21 15:05 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 6.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description fanzhuyifan 2023-12-10 22:40:23 UTC
SUMMARY
***
NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols.
See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports
***


STEPS TO REPRODUCE
1. Set up multiple monitors
2. Create a panel in dodge window mode
3. Create a big window such that its center is on the other monitor but it touches the panel 

OBSERVED RESULT
The panel does not hide.

EXPECTED RESULT
The panel should hide

SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 5.90.90
KDE Frameworks Version: 5.247.0
Qt Version: 6.6.1
Kernel Version: 6.6.5-arch1-1 (64-bit)
Graphics Platform: Wayland
Processors: 20 × 13th Gen Intel® Core™ i9-13900H
Memory: 15.2 GiB of RAM
Graphics Processor: Mesa Intel® Graphics
Manufacturer: ASUSTeK COMPUTER INC.
Product Name: ROG Zephyrus G16 GU603VV_GU603VV
System Version: 1.0

ADDITIONAL INFORMATION
Comment 1 Bug Janitor Service 2023-12-10 23:06:15 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/1913
Comment 2 fanzhuyifan 2023-12-10 23:16:39 UTC
Git commit ef34561f7c93e122cf14d802917e966f3de98e69 by Yifan Zhu.
Committed on 11/12/2023 at 00:04.
Pushed by davidedmundson into branch 'master'.

Don't filter by screen for touching windows

Windows centered on one screen may extend to other screens. Panels in
dodge windows mode should dodge these windows if touching (BUG 478376).

This is also a work around for BUG 478256, which seems to be caused by
incorrectly updated screen geometries. Removing the screen filter
bypasses the problem.
Related: bug 478256

M  +1    -1    desktoppackage/contents/views/Panel.qml

https://invent.kde.org/plasma/plasma-desktop/-/commit/ef34561f7c93e122cf14d802917e966f3de98e69
Comment 3 Nate Graham 2023-12-11 15:12:32 UTC
The patch was reverted; re-opening.
Comment 4 Nate Graham 2023-12-18 17:16:12 UTC
Can reproduce.
Comment 5 Bug Janitor Service 2024-01-20 18:18:34 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/1986
Comment 6 Bug Janitor Service 2024-01-21 01:41:33 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/3795
Comment 7 fanzhuyifan 2024-01-21 06:49:57 UTC
Git commit 661668c780e0920a1ab2a4ed083ecaf278f6de40 by Yifan Zhu.
Committed on 21/01/2024 at 03:30.
Pushed by fusionfuture into branch 'master'.

libtaskmanager/taskfilterproxymodel: convert region geometry to device coordinate system

This is better than the original method of converting windowGeometry to
logical coordinate system since the window may span multiple screens,
while the region is always on one screen.

M  +12   -11   libtaskmanager/taskfilterproxymodel.cpp

https://invent.kde.org/plasma/plasma-workspace/-/commit/661668c780e0920a1ab2a4ed083ecaf278f6de40
Comment 8 Bug Janitor Service 2024-01-21 06:50:48 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/3799
Comment 9 Fushan Wen 2024-01-21 07:28:41 UTC
Git commit a0378d455157638920c2af5a58ef332fb837c8f0 by Fushan Wen, on behalf of Yifan Zhu.
Committed on 21/01/2024 at 07:50.
Pushed by fusionfuture into branch 'Plasma/6.0'.

libtaskmanager/taskfilterproxymodel: convert region geometry to device coordinate system

This is better than the original method of converting windowGeometry to
logical coordinate system since the window may span multiple screens,
while the region is always on one screen.


(cherry picked from commit 661668c780e0920a1ab2a4ed083ecaf278f6de40)

M  +12   -11   libtaskmanager/taskfilterproxymodel.cpp

https://invent.kde.org/plasma/plasma-workspace/-/commit/a0378d455157638920c2af5a58ef332fb837c8f0
Comment 10 Bug Janitor Service 2024-01-21 10:30:55 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/1987
Comment 11 Bug Janitor Service 2024-01-21 10:32:05 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/1988
Comment 12 Fushan Wen 2024-01-21 10:39:58 UTC
Git commit ba3995f0859e2fdfe7adb2464867df3b7a1835ec by Fushan Wen, on behalf of Yifan Zhu.
Committed on 21/01/2024 at 11:30.
Pushed by fusionfuture into branch 'master'.

Don't filter by screen for touching windows

Windows centered on one screen may extend to other screens. Panels in
dodge windows mode should dodge these windows if touching (BUG 478376).

This is also a work around for BUG 478256, which seems to be caused by
incorrectly updated screen geometries. Removing the screen filter
bypasses the problem.
Related: bug 478256


(cherry picked from commit ef34561f7c93e122cf14d802917e966f3de98e69)

M  +1    -1    desktoppackage/contents/views/Panel.qml

https://invent.kde.org/plasma/plasma-desktop/-/commit/ba3995f0859e2fdfe7adb2464867df3b7a1835ec
Comment 13 Fushan Wen 2024-01-21 10:43:17 UTC
Git commit 4cdefe5d52b8facb996462f691f2c695288e48d2 by Fushan Wen, on behalf of Yifan Zhu.
Committed on 21/01/2024 at 11:31.
Pushed by fusionfuture into branch 'Plasma/6.0'.

Don't filter by screen for touching windows

Windows centered on one screen may extend to other screens. Panels in
dodge windows mode should dodge these windows if touching (BUG 478376).

This is also a work around for BUG 478256, which seems to be caused by
incorrectly updated screen geometries. Removing the screen filter
bypasses the problem.
Related: bug 478256


(cherry picked from commit ef34561f7c93e122cf14d802917e966f3de98e69)

M  +1    -1    desktoppackage/contents/views/Panel.qml

https://invent.kde.org/plasma/plasma-desktop/-/commit/4cdefe5d52b8facb996462f691f2c695288e48d2