Description of problem:
When using multiscreen with placement set to cascade, kwin will reset to smart placement as soon as a a window is opened on the second monitor.
Version-Release number of selected component (if applicable):
kdebase-3.5.4-20.el5 but also present in current svn trunk upstream
Steps to Reproduce:
1. Configure a system with multi-screen (dual-head)
2. Run KDE
3. Select "Cascade" placement in KDE Control Center => Desktop => Window Behavior => "Moving" tab => "Placement" option
4. On the first monitor, select the root menu, Konsole a few times, the windows appear in cascade as expected
5. Redo the same on the other monitor
Windows are not placed in cascade and placement is reverted to "Smart" placement (even on the first monitor)
Windows are placed in cascade on both monitors
The problem comes from Placement::placeCascaded() in kwin/placement.cpp, the ode is fairly old (1998) and does not take into account the actual position of the monitors, just their size.
Therefore when opening a window on the second monitor, the coordonates are considered off screen and placement is set back to smart placement.
The same code and the same problem is still present in current kde 4 (svn trunk), I shall upload a patch for kde3 (in el5) and also kde 4 for upstream.
Created attachment 408332 [details]
Patch for kwin in kde4
This patch is to be sent upstream if considered as a satisfactory solution.
Created attachment 408335 [details]
Patch for kwin in kde 3.5 in el5
Same patch for kwin in kdebase 3.5 on el5.
Oliver, thabks for the patch, i will send the the patch to upstream
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated in the
current release, Red Hat is unfortunately unable to address this
request at this time. Red Hat invites you to ask your support
representative to propose this request, if appropriate and relevant,
in the next release of Red Hat Enterprise Linux.
This request was erroneously denied for the current release of
Red Hat Enterprise Linux. The error has been fixed and this
request has been re-proposed for the current release.
Technical note added. If any revisions are required, please edit the "Technical Notes" field
accordingly. All revisions will be proofread by the Engineering Content Services team.
On a system with dual screens enabled, selecting the "Cascade" window placement option in the KDE Control Center and opening a new window on the second screen could cause KWin to consider the new window off screen, and thus change the window placement back to "Smart". This update corrects the window placement algorithm to take into account the position of the screens, so that the "Cascade" window placement now works on both screens.
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.