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 108152 - new constraints code doesn't use xinerama work areas correctly
new constraints code doesn't use xinerama work areas correctly
Status: RESOLVED FIXED
Product: metacity
Classification: Other
Component: general
2.4.x
Other other
: Normal normal
: ---
Assigned To: Metacity maintainers list
Metacity maintainers list
Depends on: 86682
Blocks:
 
 
Reported: 2003-03-12 04:06 UTC by Rob Adams
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
deal with per-xinerama work areas (2.72 KB, patch)
2003-03-12 04:07 UTC, Rob Adams
none Details | Review
updated patch (2.91 KB, patch)
2003-03-12 04:56 UTC, Rob Adams
none Details | Review

Description Rob Adams 2003-03-12 04:06:26 UTC
The constraints code isn't quite right for dealing with workareas that have
potentially different sizes.  The attached patch has no effect on any
behavior of current metacity (though I changed the order of some of the
calls resulting in one fewer traversals through the xinerama list), but
when work_areas actually have potentially different sizes this patch will
cause the constraints code to work correctly.
Comment 1 Rob Adams 2003-03-12 04:07:43 UTC
Created attachment 14955 [details] [review]
deal with per-xinerama work areas
Comment 2 Havoc Pennington 2003-03-12 04:33:54 UTC
aren't the nw_x etc. also used for the onscreen constraint, so this 
would keep you from moving windows between xineramas?
Comment 3 Rob Adams 2003-03-12 04:38:22 UTC
I admit it seems like that, but by the time you get the window to the
point where the onscreen constraint would be a problem, the xinerama
of the window has changed.

If your window is really small this can be a problem, but once we fix
Bug 94815 that problem will be fixed as well.  Basically we need to
ensure that the onscreen constraint threshold is always less than half
the size of the window.
Comment 4 Rob Adams 2003-03-12 04:43:30 UTC
Although now that I think about it this could be a problem for
xineramas arranged vertically, since we don't allow any part of the
titlebar to go offscreen.

Perhaps we need to look at both work areas and use the one always
which is least restrictive.  That seems like it would work in all cases.
Comment 5 Rob Adams 2003-03-12 04:55:56 UTC
Some testing reveals that using the least restrictive of the two is
the correct solution.  Since the all_xineramas work area will include
struts from any workarea, it is always at least as restrictive in
terms of struts, but is not as restrictive in terms of xinerama
borders.  I'm attaching an updated patch.
Comment 6 Rob Adams 2003-03-12 04:56:43 UTC
Created attachment 14958 [details] [review]
updated patch
Comment 7 Rob Adams 2003-06-09 16:31:35 UTC
This is also fixed in my partial-width struts patch.
Comment 8 Rob Adams 2003-06-26 03:46:54 UTC
now fixed in CVS