* Source/x11/XGServer.m (xScreenSize): new primitive method.
* Source/x11/XGDragView.m (XY): use new primitive method to get Xlib
screen height. Fixes broken DnD on vertically aligned monitors.
memeber was added - `osframe`. This member intended to hold cached frame
of windows in OpenStep coordinate system. This makes backend more
reliable to the cases when gui changes NSWindow's _frame ivar before
call to backend methods which make windows placement.
* Source/x11/XGServerWindow.m (placewindow::): use `osframe` structure
member to decide if window change position or size. Removed usage of
temporary `frame` (used only for making desicion).
to hold Xlib screen size dimensions.
* Source/x11/XGServerWindow.m:
(_OSFrameToXFrame:for:): use xScreenSize instead of DisplayHeight.
(_OSFrameToXHints:for:): ditto.
(_XFrameToOSFrame:for:): ditto.
(movewindow::): ditto.
(_screenSize): new static function to get dimensions of Xlib screen from
root window.
(screenList): use xScreenSize instead of DisplayHeight/DisplayWidth.
`screen_id`; `monitor_id` element was added. Made use of
`screen_id` and `monitor_id` where it's appropriate.
* Removed `screen` parameter from methods which contains it in name.
Methods were renamed to remove `Screen` and `FromScreen`.
* Source/x11/XGServerWindow.m (screenList): change with assumption
that Xlib screen is one per application.
Failback code to RandR-related always creates arrays with one element
(no enumeration needed). Create `monitor` structure in failback (non-RandR)
code. Use `screen_id` MonitorDevice structure element to hold Xlib screen
ID.
(windowDepthForScreen:): assume that `screen` parameter is a Xlib screen ID,
simplify code - `screen` will be used with RandR or not.
(availableDepthsForScreen:): changed with assumption that `screen` is a index
of element in `monitors` structure.
* Source/x11/XGServer.m (_initXContext): initialize `monitors` array
early here before first use (calls to XGServerWindow methods).
`monitors` array items.
* Source/x11/XGServerWindow.m: use `monitorsCount` instead of local
variable `count` or ScreenCount() value.
* ChangeLog: update to the latest changes.
Mark methods where usage of X Screen as parameter is correct and where isn't.
ivars were added.
* Source/x11/XGServer.m (_initXContext): get RandR event and error base.
* Source/x11/XGServerEvent.m (processEvent:): pack several RandR events
into one notification post.
* Source/x11/XGServerWindow.m: Clean up code.
* Source/x11/XGServerWindow.m (-setwindowlevel::): Try to set
better level for tool tip windows.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@40295 72102866-910b-0410-8b05-ffd578937521
abs -> fabs
* Source/x11/XGGLContext.m
format string fix
* Headers/x11/XGOpenGL.h
glxminorversion is int, not long int
Looks good, Ivan Vucica
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@38554 72102866-910b-0410-8b05-ffd578937521
* Source/x11/XGServerWindow.m: Correct name for atom
net_wm_state_modal_atom. Use this atom to try to set the sate
for dialog windows to modal.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@38417 72102866-910b-0410-8b05-ffd578937521
Use the correct #ifdef check for Xutf8LookupString, and use
that function if available; otherwise use XLookupString.
Interpret the return value of XLookupString as Latin-1.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@35152 72102866-910b-0410-8b05-ffd578937521
* Source/art/path.m (-DPSrectfill::::),
* Source/xlib/XGGState.m (-DPSrectfill::::): Change name of local
variable to avoid compiler warning.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33365 72102866-910b-0410-8b05-ffd578937521
* Source/x11/XGServer.m:
* Source/x11/XGServerEvent.m:
* Headers/x11/XGGeneric.h:
* Headers/x11/XGServerWindow.h:
* Headers/x11/XGServer.h:
Implement the _NET_WM_SYNC_REQUEST protocol described here:
http://standards.freedesktop.org/wm-spec/1.3/ar01s06.html
This is supposed to make window resizing smoother when dragging
a resize handle provided by the window manager, by waiting to
change the window manager's frame until the GNUstep window is
finished repainting.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33045 72102866-910b-0410-8b05-ffd578937521
on the ICCCM WM_STATE property and use _NET_WM_STATE only to avoid
generating bogus miniaturize events when using an emwh compliant
window manager. This makes the code more portable and allows
generating reliable window deminiaturize events.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29283 72102866-910b-0410-8b05-ffd578937521
* Source/x11/XGServerWindow.m: Added code to automatically make
any window which uses the NSDesktopWindowLevel also be omnipresent.
This capability will be added as a style later.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26588 72102866-910b-0410-8b05-ffd578937521
Patch by Thomas Gamper <icicle@cg.tuwien.ac.at>,
slightly reworked.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25990 72102866-910b-0410-8b05-ffd578937521