After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 414476 - Add fullscreen monitors hint.
Add fullscreen monitors hint.
Status: RESOLVED FIXED
Product: metacity
Classification: Other
Component: EWMH specification
trunk
Other Linux
: Normal enhancement
: ---
Assigned To: Metacity maintainers list
Metacity maintainers list
Depends on:
Blocks:
 
 
Reported: 2007-03-04 05:55 UTC by David Trowbridge
Modified: 2008-11-17 02:59 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
metacity implementation (10.00 KB, patch)
2007-03-04 05:56 UTC, David Trowbridge
needs-work Details | Review
test program which moves a fullscreen window around monitors on a dual-head system (900 bytes, text/x-python)
2007-03-04 05:57 UTC, David Trowbridge
  Details
Standardized implementation (10.89 KB, patch)
2008-06-25 03:28 UTC, David Trowbridge
committed Details | Review
Test program (1.93 KB, text/x-csrc)
2008-06-25 03:29 UTC, David Trowbridge
  Details
Updated Test program (2.24 KB, text/x-csrc )
2008-11-14 23:49 UTC, Jason 'vanRijn' Kasper
  Details

Description David Trowbridge 2007-03-04 05:55:06 UTC
We've been wrestling with this problem at VMware -- how to make a single window go fullscreen over a set of monitors.  It appears to be impossible to do (at least, robustly, without ugly hacks and problems) with the current state of EWMH.

I believe this would be useful to more than just VMware; for example, Blender's main window wants to cover the entire screen.  On a single-head host, it goes to fullscreen, but with multiple heads it's beholden to the same sorts of sizing/placement glitches that are making my life hell.

This patch adds a new hint to the window manager.  It is currently called "VMWARE_FULLSCREEN_MONITORS", but I expect this to change -- I'm hesitant to name it _NET_WM_FULLSCREEN_MONITORS until I know more about how the EWMH standards process works.
Comment 1 David Trowbridge 2007-03-04 05:56:17 UTC
Created attachment 83866 [details] [review]
metacity implementation
Comment 2 David Trowbridge 2007-03-04 05:57:02 UTC
Created attachment 83867 [details]
test program which moves a fullscreen window around monitors on a dual-head system
Comment 3 David Trowbridge 2007-03-04 05:58:45 UTC
I'd love to get reviews/comments on this quickly.  If possible, it would be nice to enable conditional support for this in VMware Workstation 6, so we can point people to an unstable release of metacity when they inevitably run into trouble with the workaround hacks we've done.

This would, of course, depend on a finalized specification of this property.
Comment 4 Thomas Thurman 2007-03-27 02:49:14 UTC
This all looks sane to me, but I don't know enough about the EWMH standards process to know what the best name for the atom should be. Havoc, Elijah: is it reasonable to have an atom named VMWARE_*? Maybe we could call it that for now and just wait and see where the standards process went.
Comment 5 David Trowbridge 2007-03-27 02:58:37 UTC
This was just the first attempt -- I didn't want to name it something until the standards process finished (speaking of which, I should reply again on wm-spec-list...).

My plan was always to rename it before this went in to metacity.
Comment 6 Elijah Newren 2007-03-28 02:32:35 UTC
I'm Adding some reference notes to make sure this bug is more complete:

See also the discussion of this feature on the wm-spec-list for inclusion in the EWMH, starting at http://mail.gnome.org/archives/wm-spec-list/2007-March/msg00002.html.

(And while I'm at it, you should subscribe to the wm-spec-list, Thomas.  That's where EWMH spec changes/questions/suggestions are posted)
Comment 7 Thomas Thurman 2007-12-10 00:31:51 UTC
(marking as needs-work since it's not a final version)
Comment 8 David Trowbridge 2008-06-25 03:28:06 UTC
Created attachment 113378 [details] [review]
Standardized implementation

This now implements _NET_WM_FULLSCREEN_MONITORS as defined in EWMH
Comment 9 David Trowbridge 2008-06-25 03:29:16 UTC
Created attachment 113379 [details]
Test program

Here's a new test program.  It's in C because I couldn't figure out how to send a client message to the root window in PyGTK.
Comment 10 David Trowbridge 2008-08-19 00:32:43 UTC
Can someone review the updated patch? I'd love to get this support in.
Comment 11 Jason 'vanRijn' Kasper 2008-11-14 23:49:44 UTC
Created attachment 122703 [details]
Updated Test program

David's original test program didn't have a "return FALSE;" at the end of switch_monitors(), so I was getting more than one of the same monitor switch as I was implementing this functionality on KWin. I've also slowed down the iterations and added some debugging to explain what the user should be seeing as she's running the test program.
Comment 12 Thomas Thurman 2008-11-17 02:59:52 UTC
It seems good to me, though I don't have the setup to test it.  I'll trust your results: committed.