[Dapper] metacity does not all Citrix ICAclient (and others) go fullscreen

Bug #57978 reported by Stefan Kluth
4
Affects Status Importance Assigned to Milestone
Metacity
Fix Released
High
metacity (Ubuntu)
Invalid
Low
Ubuntu Desktop Bugs

Bug Description

On Dapper I try to use Citrix ICAclient for Windows remote desktop. I use version 9.15 (german) from this link.

http://citrix.com/English/SS/downloads/details.asp?dID=2755&downloadID=3323&pID=186

When the application connects it wants to display the Windows desktop fullscreen, but the gnome-panels stay on top. Other reports of the same problem involve acroread and blender.

Workarounds:

i) activate "auto-hide" on the panels

   this is ok, but the remote desktop appears twice

ii) activate fullscreen mode for this app by hand via a
    hot-key combination

iii) replace metacity by sawfish

    This works fine, I get one instance of the remote
    desktop in fullscreen.

    I got the hint from

http://gnomesupport.org/forums/viewtopic.php?t=11223

and this gnome bug report:

http://bugzilla.gnome.org/show_bug.cgi?id=343115

The gnome bug report is for metacity 2.14.3 while dapper has 2.14.5. The bug report has a patch which solves the problem. Perhaps it is already fixed in edgy so we could backport?

Revision history for this message
Sebastien Bacher (seb128) wrote :

Thanks for your bug. Could you try with edgy or with a dapper package with that patch to know if it fixes the issue?

Changed in metacity:
assignee: nobody → desktop-bugs
importance: Untriaged → Low
status: Unconfirmed → Needs Info
Revision history for this message
Stefan Kluth (skluth) wrote : Re: [Bug 57978] Re: [Dapper] metacity does not all Citrix ICAclient (and others) go fullscreen

Hi Sebastian,

I can try a dapper package with a patched metacity. Is it sufficient to
get the source package from edgy and compile it on my dapper system or
does this require a truck load of gnome upgrades? This is my better halfs
home system for her work so I am reluctant to make major changes.

If a simple "backport" of the edgy package is not an option you could send
me instructions on how to apply the patch correctly to the dapper source
of metacity. I can deal with dpkg-* to compile and install the patched
package.

Cheers, Stefan

On Tue, 29 Aug 2006, Sebastien Bacher wrote:

> Thanks for your bug. Could you try with edgy or with a dapper package
> with that patch to know if it fixes the issue?
>
> ** Changed in: metacity (Ubuntu)
> Importance: Untriaged => Low
> Assignee: (unassigned) => Ubuntu Desktop Bugs
> Status: Unconfirmed => Needs Info
>
> ** Bug watch added: GNOME Bug Tracker #343115
> http://bugzilla.gnome.org/show_bug.cgi?id=343115
>
> ** Also affects: metacity (upstream) via
> http://bugzilla.gnome.org/show_bug.cgi?id=343115
> Importance: Unknown
> Status: Unknown
>
> --
> [Dapper] metacity does not all Citrix ICAclient (and others) go fullscreen
> https://launchpad.net/bugs/57978
>

-- Stefan Kluth, PhD -------- Wissenschaftler -------------------------
- MPI fuer Physik - phone: +49 89 32354 468 - ATLAS -
- Foehringer Ring 6 - fax: +49 89 32354 305 - &OPAL -
-- D-80805 Munich, Germany -- e-mail: <email address hidden> -------------

Revision history for this message
Sebastien Bacher (seb128) wrote :

building the edgy package on dapper should work fine. Other way to get a patched package:
- apt-get source metacity
- cd metacity-2.14.5
- patch -p0 < bugzilla.patch
- apt-get build-dep metacity
- debuild

Revision history for this message
Stefan Kluth (skluth) wrote :

Ok I'll try to patch the dapper metacity with the patch from the gnome
bugzilla bug report 343115. I'll have time tommorrow evening.

Cheers, Stefan

On Tue, 29 Aug 2006, Sebastien Bacher wrote:

> building the edgy package on dapper should work fine. Other way to get a patched package:
> - apt-get source metacity
> - cd metacity-2.14.5
> - patch -p0 < bugzilla.patch
> - apt-get build-dep metacity
> - debuild
>
> --
> [Dapper] metacity does not all Citrix ICAclient (and others) go fullscreen
> https://launchpad.net/bugs/57978
>

-- Stefan Kluth, PhD -------- Wissenschaftler -------------------------
- MPI fuer Physik - phone: +49 89 32354 468 - ATLAS -
- Foehringer Ring 6 - fax: +49 89 32354 305 - &OPAL -
-- D-80805 Munich, Germany -- e-mail: <email address hidden> -------------

Revision history for this message
Sebastien Bacher (seb128) wrote :

thank you for working on that

Changed in metacity:
status: Unknown → Fix Released
Revision history for this message
Stefan Kluth (skluth) wrote :

On Tue, 29 Aug 2006, Sebastien Bacher wrote:

> building the edgy package on dapper should work fine. Other way to get a patched package:
> - apt-get source metacity
> - cd metacity-2.14.5
> - patch -p0 < bugzilla.patch
> - apt-get build-dep metacity
> - debuild

Ok, so I patched metacity 2.14.5 source from Dapper with the patch from

http://bugzilla.gnome.org/show_bug.cgi?id=343115

but the patch had a few rejects. I compiled anyway and installed the two
resulting packages for libmetacity and metacity. After restart gdm I
tried acroread in fullscree mode (^l) and lo-and-behold it works! Off to
my wifes account, change the config to use metacity instead of sawfish,
start the citrix ICAclient and it works ... almost perfectly. It goes
fullscreen just fine above the panels, however, when I open an application
on the Windows desktop (i.e. IE) the panels appear again. Clicking into
the background of the Windows desktop makes it completely fullscreen
again.

So there is still a small problem that opening a window on the Windows
desktop makes the panels go on-top again. The windows of Windows in the
citrix ICAclient are still managed by the linux window manager, i.e.
metacity. So somehow opening a new window in metacity triggers a change
of order of the active windows. I don't know metacity well enough to go
deeper though ... other than observing that a fullscreen application
opening yet another window is surely a rather special case that might not
be handled correctly yet.

Anyway, the fix works mostly, but it is not the end. I wonder if we
should also check with rdesktop?

Cheers, Stefan

> --
> [Dapper] metacity does not all Citrix ICAclient (and others) go fullscreen
> https://launchpad.net/bugs/57978
>

-- Stefan Kluth, PhD -------- Wissenschaftler -------------------------
- MPI fuer Physik - phone: +49 89 32354 468 - ATLAS -
- Foehringer Ring 6 - fax: +49 89 32354 305 - &OPAL -
-- D-80805 Munich, Germany -- e-mail: <email address hidden> -------------

Revision history for this message
Elijah (newren) wrote :

Metacity pulls non-focused windows out of fullscreen mode (unless the focus is on a *transient* (e.g. dialog) of the fullscreen application). This allows users to still recover if a fullscreen app hangs or if the user simply wants to do something else for a minute. So, this is expected behavior. To fix this for your Citrix ICAclient case, we'd need a way to be able to tell the difference between your case and normal users just leaving their movie players to do something else for a minute. The easiest fix may be to mark the new windows opened under Citrix to be transients of the fullscreen Citrix window, which probably makes sense anyway.

Revision history for this message
Sebastien Bacher (seb128) wrote :

The Citrix case seems to a rather special case.

Elijah, thank you for your comment. Do you consider "mark the new windows opened under Citrix to be transients of the fullscreen Citrix window" as a metacity bug that should be taken to bugzilla.gnome.org? Should the window manager special case applications like that?

Revision history for this message
Stefan Kluth (skluth) wrote :

For me it would be ideal if the metacity handling of fullscreen windows and focusing could be configured. As dafault the normal behaviour as you described above rules, but we poor people who have to use citrix ICAclient can change the behaviour such that fullscreen windows stay on top no matter what.

BTW, I told my wife to switch workspace with a hotkey if she wants to do something else outside of ICAclient. That even helps when ICAclient is stuck.

Cheers, Stefan

Revision history for this message
Elijah (newren) wrote :

The Citrix issue is not really fixable in Metacity as it currently stands[1]; the problem is that we don't have enough information to get the behavior right. The fix is primarily needed in Citrix, though we may first need to agree on additional WM hints (added to the EWMH on freedesktop.org) if it's decided that other side-effects of marking as a transient aren't wanted.

[1] There's the possibility of app-by-app manual hacks to deal with the fact that we don't have enough info to provide wanted behavior, and also of providing ill-advised "unbreak-this-specific-use-case-and-break-lots-of-others" configuration/workaround options, but both are maintainence nightmares and do lots more damage than good to interoperability of apps in the long run. Fixing the real root problem--that we have insufficient information to provide correct behavior--is the only appropriate route to take, IMO.

Revision history for this message
Sebastien Bacher (seb128) wrote :

rejecting the distribution task according the comment made by Elijah, that's not really a window manager bug (might be a feature request). Should be fixed by citrix and the discussion about a new wm hint should happen upstream

Changed in metacity:
status: Needs Info → Rejected
Changed in metacity:
importance: Unknown → High
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.