Version: unspecified (using Devel) OS: Linux When I change the "desktop rows" setting in pager settings to 1, kwin respects it ... until I reboot. After reboot and logging in again the desktops are in two rows again although the pager displays only one row. This happens even with clean configuration (after renaming the ~/.kde4 folder and relogging). Reproducible: Always Steps to Reproduce: 1) Open the desktop pager settings 2) Set you want 1 desktop row 3) Set you want 5 desktops total 4) Click OK 5) Reboot and log in again 6) Go to the first desktop 7) Open a wwindow and place it to the bottom-left corner of the screen. 8) Cycle through desktops, to see results. Actual Results: When switching from third to fourth desktop, you'll see the window from the first desktop to "fly over" in the upper-right corner of the screen. This indicates the desktops are rather in two rows than in one as the desktop pages is saying. Expected Results: The desktop layout should respect the setting in pager. OS: Linux (x86_64) release 2.6.39-ARCH Compiler: gcc Qt: 4.7.3 KDE Development Platform: 4.6.5 (4.6.5) KWin: 4.6.5 (4.6.5)
*** Bug 277990 has been marked as a duplicate of this bug. ***
Please open konsole and fire: "xprop -root | grep _NET_DESKTOP_LAYOUT" the block that starts with "_NET_SUPPORTED(ATOM)" is IRRELEVANT (but should exists) -> Is there any other output?
The output is following: $ xprop -root | /bin/grep _NET_DESKTOP_LAYOUT _NET_SUPPORTED(ATOM) = _NET_SUPPORTED, _NET_SUPPORTING_WM_CHECK, _NET_CLIENT_LIST, _NET_CLIENT_LIST_STACKING, _NET_NUMBER_OF_DESKTOPS, _NET_DESKTOP_GEOMETRY, _NET_CURRENT_DESKTOP, _NET_DESKTOP_NAMES, _NET_ACTIVE_WINDOW, _NET_WORKAREA, _NET_DESKTOP_LAYOUT, _NET_CLOSE_WINDOW, _NET_RESTACK_WINDOW, _NET_SHOWING_DESKTOP, _NET_WM_MOVERESIZE, _NET_MOVERESIZE_WINDOW, _NET_WM_NAME, _NET_WM_VISIBLE_NAME, _NET_WM_DESKTOP, _NET_WM_WINDOW_TYPE, _NET_WM_WINDOW_TYPE_NORMAL, _NET_WM_WINDOW_TYPE_DESKTOP, _NET_WM_WINDOW_TYPE_DOCK, _NET_WM_WINDOW_TYPE_TOOLBAR, _NET_WM_WINDOW_TYPE_MENU, _NET_WM_WINDOW_TYPE_DIALOG, _NET_WM_WINDOW_TYPE_UTILITY, _NET_WM_WINDOW_TYPE_SPLASH, _KDE_NET_WM_WINDOW_TYPE_OVERRIDE, _KDE_NET_WM_WINDOW_TYPE_TOPMENU, _NET_WM_STATE, _NET_WM_STATE_MODAL, _NET_WM_STATE_MAXIMIZED_VERT, _NET_WM_STATE_MAXIMIZED_HORZ, _NET_WM_STATE_SHADED, _NET_WM_STATE_SKIP_TASKBAR, _NET_WM_STATE_SKIP_PAGER, _NET_WM_STATE_HIDDEN, _NET_WM_STATE_FULLSCREEN, _NET_WM_STATE_ABOVE, _NET_WM_STATE_BELOW, _NET_WM_STATE_DEMANDS_ATTENTION, _NET_WM_STATE_STAYS_ON_TOP, _NET_WM_STRUT, _NET_WM_STRUT_PARTIAL, _NET_WM_ICON_GEOMETRY, _NET_WM_ICON, _NET_WM_PID, _NET_WM_PING, _NET_WM_USER_TIME, _NET_STARTUP_ID, _NET_WM_FULLSCREEN_MONITORS, _NET_WM_ALLOWED_ACTIONS, _NET_WM_ACTION_MOVE, _NET_WM_ACTION_RESIZE, _NET_WM_ACTION_MINIMIZE, _NET_WM_ACTION_SHADE, _NET_WM_ACTION_MAXIMIZE_VERT, _NET_WM_ACTION_MAXIMIZE_HORZ, _NET_WM_ACTION_FULLSCREEN, _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_CLOSE, _NET_FRAME_EXTENTS, _KDE_NET_WM_FRAME_STRUT, _KDE_NET_WM_TEMPORARY_RULES, _NET_WM_FULL_PLACEMENT
Pager layout isn't set -> pager bug (? Or an unilateral step to depreach this approach?)
$ xprop -root | grep _NET_DESKTOP_LAYOUT _NET_DESKTOP_LAYOUT(CARDINAL) = 0, 4, 1, 0 _NET_SUPPORTED(ATOM) = _NET_SUPPORTED, _NET_SUPPORTING_WM_CHECK, _NET_CLIENT_LIST, _NET_CLIENT_LIST_STACKING, _NET_NUMBER_OF_DESKTOPS, _NET_DESKTOP_GEOMETRY, _NET_CURRENT_DESKTOP, _NET_DESKTOP_NAMES, _NET_ACTIVE_WINDOW, _NET_WORKAREA, _NET_DESKTOP_LAYOUT, _NET_CLOSE_WINDOW, _NET_RESTACK_WINDOW, _NET_SHOWING_DESKTOP, _NET_WM_MOVERESIZE, _NET_MOVERESIZE_WINDOW, _NET_WM_NAME, _NET_WM_VISIBLE_NAME, _NET_WM_DESKTOP, _NET_WM_WINDOW_TYPE, _NET_WM_WINDOW_TYPE_NORMAL, _NET_WM_WINDOW_TYPE_DESKTOP, _NET_WM_WINDOW_TYPE_DOCK, _NET_WM_WINDOW_TYPE_TOOLBAR, _NET_WM_WINDOW_TYPE_MENU, _NET_WM_WINDOW_TYPE_DIALOG, _NET_WM_WINDOW_TYPE_UTILITY, _NET_WM_WINDOW_TYPE_SPLASH, _KDE_NET_WM_WINDOW_TYPE_OVERRIDE, _KDE_NET_WM_WINDOW_TYPE_TOPMENU, _NET_WM_STATE, _NET_WM_STATE_MODAL, _NET_WM_STATE_MAXIMIZED_VERT, _NET_WM_STATE_MAXIMIZED_HORZ, _NET_WM_STATE_SHADED, _NET_WM_STATE_SKIP_TASKBAR, _NET_WM_STATE_SKIP_PAGER, _NET_WM_STATE_HIDDEN, _NET_WM_STATE_FULLSCREEN, _NET_WM_STATE_ABOVE, _NET_WM_STATE_BELOW, _NET_WM_STATE_DEMANDS_ATTENTION, _NET_WM_STATE_STAYS_ON_TOP, _NET_WM_STRUT, _NET_WM_STRUT_PARTIAL, _NET_WM_ICON_GEOMETRY, _NET_WM_ICON, _NET_WM_PID, _NET_WM_PING, _NET_WM_USER_TIME, _NET_STARTUP_ID, _NET_WM_FULLSCREEN_MONITORS, _NET_WM_ALLOWED_ACTIONS, _NET_WM_ACTION_MOVE, _NET_WM_ACTION_RESIZE, _NET_WM_ACTION_MINIMIZE, _NET_WM_ACTION_SHADE, _NET_WM_ACTION_MAXIMIZE_VERT, _NET_WM_ACTION_MAXIMIZE_HORZ, _NET_WM_ACTION_FULLSCREEN, _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_CLOSE, _NET_FRAME_EXTENTS, _KDE_NET_WM_FRAME_STRUT, _NET_WM_FRAME_OVERLAP, _KDE_NET_WM_TEMPORARY_RULES, _NET_WM_FULL_PLACEMEN The first line does not appear after reboot, it only appears after I have redone the pager settings to set it back to one row. So that first line gets wiped after reboot.
While waiting for the fix I've found a workaround. Put the following code somewhere to your autorun: #!/bin/bash xprop -root -f _NET_DESKTOP_LAYOUT 32cccc -set _NET_DESKTOP_LAYOUT "0,5,1,0" I am not sure what the numbers mean, but seems like the "5" is the number of desktops and the "1" is the number of desktop rows.
Git commit 4bf7761307a2453a63d918c60e13c26980727830 by Martin Gräßlin. Committed on 24/07/2011 at 14:59. Pushed by graesslin into branch 'master'. Move control of desktop layout from pager to KWin The desktop layout (number of rows) should be controlled by the window manager as it is also responsible for the number of desktops and the names of them. The setting for the rows is moved from the pager UI to the virtual desktops KCM. The desktop layout is set when KWin starts and updated by the KCM. With this change there is no process claiming the manager selection for pager any more. This means the KDE Plasma Workspaces are no longer compliant to the complete section of _NET_DESKTOP_LAYOUT in the EWMH. REVIEW: 102073 BUG: 277965 FEATURE: 105779 FEATURE: 213353 FIXED-IN: 4.8.0 M +10 -0 kwin/workspace.cpp M +2 -2 kwin/kcmkwin/kwindesktop/main.ui M +4 -57 plasma/desktop/applets/pager/pagerConfig.ui M +30 -8 kwin/kcmkwin/kwindesktop/main.cpp M +0 -3 plasma/desktop/applets/pager/pager.h M +10 -47 plasma/desktop/applets/pager/pager.cpp http://commits.kde.org/kde-workspace/4bf7761307a2453a63d918c60e13c26980727830