Bug 479478 - workspace switcher ignores rows setting
Summary: workspace switcher ignores rows setting
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: libwnck
Version: 14
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Søren Sandmann Pedersen
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 507784 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-01-09 22:11 UTC by bwelling
Modified: 2014-06-18 09:10 UTC (History)
19 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2012-08-16 22:18:37 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Debian BTS 597450 0 None None None Never
GNOME Bugzilla 630229 0 Normal RESOLVED Multi-row pager never shown as multi-row 2020-05-05 10:23:40 UTC

Description bwelling 2009-01-09 22:11:36 UTC
Description of problem:

The workspace switcher in the gnome-panel ignores the configured number of rows, and puts all workspaces in one row.

Version-Release number of selected component (if applicable):

gnome-panel-2.24.2-1.fc10 (if this is a gnome-panel problem)

How reproducible:

In the workspace switcher preferences, set the number of rows to a value >1.

Steps to Reproduce:
1. see above
2.
3.
  
Actual results:

All workspaces are in one row.  Occasionally, but not always, the value is changed from its configured value (2) to 1.

Expected results:

The workspaces are displayed in 2 rows, as configured.

Additional info:

Comment 1 bwelling 2009-01-10 00:12:32 UTC
If I stop metacity and run enlightement (e16), this goes away, so maybe it's a problem with metacity.

Comment 2 Daniel Roesen 2009-06-19 10:30:42 UTC
I do observe the same problem since a few Fedora releases, highly annoying. My standard setup is 8 desktops, in 2 rows (4x2). Usually it works a short time, but then (no idea whats the specific trigger) it folds back to single row, no matter what the #rows config is. You can then change the #row setting as you like, but it will always stay at single row arrangement.

Changing distro version to Fedora 11 as I just had this happening with a F11 installation again. :-(

Comment 3 Daniel Roesen 2009-06-19 14:19:42 UTC
FWIW, the problem is not present with gnome-panel-2.16.3-2 (latest update for FC6.

Comment 4 Daniel Roesen 2009-06-19 15:36:00 UTC
Perhaps this is a libwnck problem. The workspace-switcher applet uses libwnck to generate a pager widget (WnckPager), and uses wnck_pager_set_n_rows() to tell this libwnck pager widget how many rows it should use to display the workspaces. This might fail, as the docs do say about wnck_pager_set_n_rows(): "Since no more than one application should set this property of a WnckScreen at a time, setting the layout is not guaranteed to work.". The return code indicating failure is not being checked:

static void
pager_update (PagerData *pager)
{
...
        wnck_pager_set_n_rows (WNCK_PAGER (pager->pager),
                               pager->n_rows);
...
}

So as far as I can see (by no means being familiar with GNOME programming) there are three possibilities:

a) Workplace-Switcher itself is buggy and doesn't call pager_update() at proper times to update the switcher layout according to the n_rows variable
b) wnck_pager_set_n_rows() or the drawing function of the WnckPager using the n_rows attribute is buggy
c) wnck_pager_set_n_rows() fails because it thinks such a layout is deemed invalid (very unlikely, given that it works fine in the first place, but fails later)

I fear that I cannot troubleshoot this any further, not being familiar with GNOME programming and Unix/Linux X11 UI development environments at all. I wouldn't even know how to get any debug output on screen, e.g. monitor PagerData->n_rows over time, displaying wnck_pager_set_n_rows() return status etc.

Comment 5 Daniel Roesen 2009-06-19 15:46:56 UTC
OK, another data point after looking at the num_rows_changed() function logic. Workplace Switcher saves the n_rows value to a gconf variable. I verified that it does save the correct value of "2":

        <entry name="num_rows" mtime="1245424707" schema="/schemas/apps/workspace_switcher_applet/prefs/num_rows" type="int" value="2"/>

This confirms, that Workplace Switcher itself really thinks it is operating in 2-row mode internally, but still the pager is displayed with one row only. To me, it rules out option A from my comment #4.

Chances are, that the problem really lies within libwnck...

Comment 6 Denis Tumpic 2009-07-01 18:59:29 UTC
I had this problem on F10 and I circumvented it by starting brightside (yeah I know brightside is not condoned by gnome devs.) after 10 seconds... it would correct the rows. However on F11 it does not do this at all. 

Also I still need to manually run /usr/libexec/gnome-settings-daemon after 15 seconds of login to get things looking right in the UI with my settings.

I did not have this problem on Fedora 8... it feels as if gnome developers want me to look at other solutions and I am more and more inclined to do so.

Comment 7 Denis Tumpic 2009-07-01 19:53:35 UTC
A very unholy hack is the following (should only be done if there is not time to do it properly):

Line ~2000 metacity-2.26.0/src/core/screen.c

Set rows and cols to your values explicitly and not from the screen struct.

add in the same file

  screen->rows_of_workspaces=SAME_ROW_#_AS_ABOVE;
  screen->columns_of_workspaces=SAME_COLS_#_AS_ABOVE;

This will make the effect that the keyboard maneuvering will become right... the switcher applet will still look straight one row.

If it drives anyone else nuts like it did me regarding the keyboard flipping this should work as a last ditch effort.

This innovative workaround definitely isn't beautiful and it should be frowned upon BUT it works.

Comment 8 Denis Tumpic 2009-07-03 21:07:38 UTC
With some cycles over I tried to find the root cause for this. It appears that the switcher doesn't set the current gnome profiles setting and it is thus not propagated correctly to the window manager.

Testing on a clean account (no upgrade from some ancient version... 3,5,6,7,8,9,10 and now 11) it looks as if it is working as it should.

Comment 9 Matthias Clasen 2009-11-02 02:42:31 UTC
*** Bug 507784 has been marked as a duplicate of this bug. ***

Comment 10 Christopher Beland 2010-01-06 02:43:40 UTC
The rows option seems to be working in Fedora 12 (gnome-panel-2.28.0-16.fc12.i686) as well, having never set it before.  Are people with old preferences still experiencing this problem with Fedora 11 or 12, or should this bug be closed?

Comment 11 Denis Tumpic 2010-01-06 14:48:04 UTC
It still only shows one row for me in the panel even if I have set it to two, but then again I am using an app that sets the row explicitly to two after I login to get the rest working as expected (workspace flipping with keyboard and edge flip)

Tried to start with the gnome dot files cleared with no success either.

Comment 12 Mads Kiilerich 2010-02-12 12:53:09 UTC
I see this with gnome-panel-2.28.0-16.fc12.i686.

I think it worked fine until I tried the fancy Desktop Effects or Gnome Shell which changed to just two workspaces - and now I can't switch back. 

Is there a workaround?

Comment 13 Mads Kiilerich 2010-02-17 12:35:03 UTC
I see different behaviour on different fedora-12-with-latest-updates-and-testing machines. So it seems like there is a secret setting somewhere which controls this ...

Comment 14 Mads Kiilerich 2010-02-22 14:37:27 UTC
Hmm ...

I rebooted the machine where the settings didn't work at all. I had configured 4 workspaces but it only showed 2. When I logged in again it showed all 4 - but in one column. When I right clicked to see properties it crashed silently - and took the windows list with it. I added the desktop switcher again, and THEN it showed four columns as expected and everything works.

So it seems like there is a problem with handling old settings somewhere somehow.

Comment 15 Ed Santiago 2010-03-31 20:54:55 UTC
Confirmed, I see this happening on a pretty much plain vanilla F12 install.

My workaround:

  1) On login, set up 6 workspaces (via the "+" icon).  They will
     appear in one row.

  2) Fire up System Preferences > Look and Feel > Desktop Effects
     "GNOME Shell" should be selected (my default).  At this point:
       * click Standard; wait
       * click GNOME Shell; then Keep settings

After this, my 6 workspaces are aligned as 3x2 instead of 6x1.  At least until the next crash or reboot.  FWIW my Workspace Switcher preferences (in "Standard") are 8 workspaces, 2 rows.

Oh, yeah, and I do this with my left hand only while humming the theme song to The Twilight Zone. Seems to help.

Comment 16 Bug Zapper 2010-04-27 12:42:35 UTC
This message is a reminder that Fedora 11 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 11.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '11'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 11's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 11 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 17 Mads Kiilerich 2010-04-27 13:01:27 UTC
Both Ed and I saw the problem with F12, so I will update this reports version.

I don't know if F13 has the problem too?

Comment 18 Josh 2010-06-04 17:35:13 UTC
Gnome 2.30.0
Linux Kernel 2.6.33.5-112.fc13.i686 (Fedora 13)

I am still having this problem.  I tried changing the setting in gconf-editor, and now it looks right in the workspace switcher, but I still have 4 workspaces in one row.  If I click on a workspace in the switcher, the windows fade out, and I'm now on 4 more virtual desktops (with no clue where the other windows went).  Also, the "show windows from all workspaces" is not set in the window list, but that's what it does, maybe they're related? Workspace switcher 2.30.0 set to show all workspaces in 2 rows, though I have the same problem (with 4 new workspaces if I click on one in the bottom left) if I show all workspaces in 1 row.

Comment 19 Adam Goode 2010-10-29 02:11:45 UTC
I just discovered this bug for the very first time after doing an update to Fedora 14.

Comment 20 Kanak Kshetri 2010-11-07 14:46:11 UTC
Bug confirmed in Fedora 14 using applet version 2.23.0.2 . I will gladly provide more information on request.

Comment 21 Adam Goode 2010-12-05 18:20:15 UTC
This is kind of driving me crazy. I'm upgrading to rawhide to see if this problem goes away.

Comment 22 Mads Kiilerich 2010-12-05 20:56:39 UTC
Can your problems have been trigged by running Gnome Shell or Desktop Effects?

FWIW I got back to a working state somehow and now I have no problem.

Comment 23 Jeff Taylor 2010-12-28 03:49:51 UTC
I have a similar bug with 2.32.0.2, but with entries forced to one column (I have a vertical layout).  I can provide more information on request.  I have not ever run Gnome Shell nor Desktop effects on this machine.

Comment 24 William Bader 2010-12-28 10:27:11 UTC
This problem happened to me when I rebooted today after applying a few day's of Fedora 14 updates yesterday.  I have 16 work spaces that I want in a 4x4 grid.  The work space switcher panel applet is now ignoring the columns and shows all of the work spaces vertically, which fills up the panel.

If I add a second work space switcher applet to the panel, it shows the work spaces horizontally, again ignoring the number of rows.

rpm reports that the installed version of the panel is
gnome-panel-2.32.0.2-2.fc14.i686

I think that this is a new bug the same as noticed by comment 23.

Comment 25 Ankur Sinha (FranciscoD) 2010-12-28 19:38:50 UTC
Hello,

Experienced this today. 

[ankur@ankur 20101225_rati_didi]$ rpm -q gnome-panel
gnome-panel-2.32.0.2-2.fc14.x86_64

Reported to gnome-bugzilla here
https://bugzilla.gnome.org/show_bug.cgi?id=638213

Thanks,
regards,
Ankur

Comment 26 William Bader 2010-12-28 21:27:50 UTC
The broken workspace switcher is annoying me enough that I would be willing to look at it if no one else is and if it won't risk breaking gnome.  Does anyone know where I can get the current Fedora 14 source, whether I need just gnome-panel or all of gnome, or whether I can test the executables from a build area or if I must install it?
William

Comment 27 William Bader 2010-12-30 03:25:14 UTC
I periodically save the results of "rpm -qa". I compared listings before and after the problem.  The version of gnome-panel did not change.  The problem might be due to a change in another package.  Here are some of the changes (before/after):

boost-1.44.0-1.fc14.i686
boost-1.44.0-4.fc14.i686

dbus-1.4.0-1.fc14.i686
dbus-1.4.0-2.fc14.i686

kernel-2.6.35.6-45.fc14.i686
kernel-2.6.35.10-74.fc14.i686

libwnck-2.30.3-1.fc14.i686
libwnck-2.30.4-1.fc14.i686

xorg-x11-server-Xorg-1.9.1-3.fc14.i686
xorg-x11-server-Xorg-1.9.3-3.fc14.i686

Comment 28 Dan Scholnik 2011-01-01 03:24:09 UTC
Same thing here, but on the Fedora 14/x86_64 platform.  Rebooted after lots of updates and now my previous 3x3 arrangement of workspaces is a 9x1 column no matter the rows setting.  Removed and re-added the switcher applet and got a 1x9 row.  Tried manually changing every potentially relevant value using gconf-editor, but no luck.  Tried running as root to see if my user configuration was screwed up, but had the same problem.

Comment 29 Mads Kiilerich 2011-01-02 00:04:31 UTC
It works fine for me with f14 + updates + testing.

The only issue is that changes in the number of workspaces are shown immediately, but changing the number of rows only kicks in after logout+login.

Comment 30 Dan Scholnik 2011-01-02 04:47:16 UTC
I reverted to libwnck-2.30.3-1.fc14.x86_64, and all was well.  Number of rows is correct and changes immediately.  With libwnck-2.30.4-1.fc14.x86_64 the rows never matched even after a logout/login.  Would seem to either be a bug in, or triggered by, the update.

Comment 31 Jeff Taylor 2011-01-02 04:50:08 UTC
I downgraded to 2.30.3 as well, which fixes this bug.  It appears that this is fixed upstream, in 2.30.5.

https://bugzilla.gnome.org/show_bug.cgi?id=630229

Comment 32 Matthew Hobbs 2011-01-07 01:37:03 UTC
(In reply to comment #31)
> I downgraded to 2.30.3 as well, which fixes this bug.  

I experienced same problem after upgrading a number of packages today, and also fixed it by downgrading libwnck - thanks everyone.

Comment 33 William Bader 2011-01-09 13:53:09 UTC
Thanks for the information.
I downloaded ftp://mirrors.kernel.org/fedora/releases/14/Everything/i386/os/Packages/libwnck-2.30.3-1.fc14.i686.rpm
ran
rpm -e libwnck-devel-2.30.4-1.fc14.i686
rpm -Uvh --oldpackage libwnck-2.30.3-1.fc14.i686.rpm
logged out, and logged in, and the pager is working.
Hopefully Fedora will update to 2.30.5 soon.

Comment 34 Richard Hitt 2011-04-12 09:24:18 UTC
I encountered this problem in Fedora 14 and when I backed libwnck to 2.30.3 from 2.30.4 it fixed the problem.  With 2.30.4 I could only format one row of workspace switch windows (of 12 or however many); with 2.30.3 I can format my usual array of three rows of 4.

Comment 35 Richard Hitt 2011-04-12 10:00:33 UTC
With elad661's kind help on freenode:#fedora-qa I find that this problem is noted as fixed in 2.30.5.  See ftp://ftp.gnome.org/pub/GNOME/sources/libwnck/2.30/libwnck-2.30.5.news

Comment 36 Adam Goode 2011-08-12 14:39:32 UTC
Is this issue resolved?

Comment 37 William Bader 2011-08-12 16:27:14 UTC
I have not tried to install 2.30.5 because I don't know if it will break anything in the version of gnome distributed with Fedora 14.  If you can point me to an i686 rpm, I could try installing it.

Even if 2.30.5 works, the issue is not completely resolved until 2.30.5 gets into the repository of the automatic updater.  I manually downgraded to 2.30.3, and every day for the last 8 months, the automatic updater has asked me to update to 2.30.4.  It is a bit annoying.

Comment 38 Fedora End Of Life 2012-08-16 22:18:40 UTC
This message is a notice that Fedora 14 is now at end of life. Fedora 
has stopped maintaining and issuing updates for Fedora 14. It is 
Fedora's policy to close all bug reports from releases that are no 
longer maintained.  At this time, all open bugs with a Fedora 'version'
of '14' have been closed as WONTFIX.

(Please note: Our normal process is to give advanced warning of this 
occurring, but we forgot to do that. A thousand apologies.)

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, feel free to reopen 
this bug and simply change the 'version' to a later Fedora version.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we were unable to fix it before Fedora 14 reached end of life. If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora, you are encouraged to click on 
"Clone This Bug" (top right of this page) and open it against that 
version of Fedora.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 39 William Bader 2012-08-17 00:22:38 UTC
I updated to Fedora 17 and replaced gnome with mate.


Note You need to log in before you can comment on or make changes to this bug.