Commit graph

161 commits

Author SHA1 Message Date
fredkiefer
a749409cb5 Fix some clang static analyser warnings reported by
Sebastian Reitenbach <sebastia@l00-bugdead-prods.de>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@40485 72102866-910b-0410-8b05-ffd578937521
2017-04-16 11:57:05 +00:00
fredkiefer
58da815142 * Headers/x11/XGGeneric.h: Remove obsolte atom.
* 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
2017-01-17 22:01:52 +00:00
fredkiefer
305049a5ff * Source/x11/XGServerWindow.m (-_checkStyle:): Ignore invalid
border information.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@40286 72102866-910b-0410-8b05-ffd578937521
2017-01-08 21:01:01 +00:00
rmottola
43b08cb4f1 Enable Sync only on explicit presence of sync.h, not just Xext.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@39198 72102866-910b-0410-8b05-ffd578937521
2015-11-24 23:47:25 +00:00
wlux
e37551c342 Create an empty app icon window before eventually checking the window
frame offsets when using WindowMaker. This fixes the issue that the
first GNUstep application started under WindowMaker did not get a
proper application menu.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@39171 72102866-910b-0410-8b05-ffd578937521
2015-11-13 15:30:15 +00:00
fredkiefer
f4f51aa9fc * Source/x11/XGServerEvent.m (-processEvent:): Reenable
Richard's frontend based expose code.
        * Source/x11/XGServerWindow.m (-window::::, -_checkStyle:):
        Don't use CWBackPixel, as the window background may be different.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@38419 72102866-910b-0410-8b05-ffd578937521
2015-03-22 15:15:20 +00:00
fredkiefer
75af3760a5 * Headers/x11/XGGeneric.h
* 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
2015-03-21 18:53:46 +00:00
thebeing
9b154f183b Roll back addition of redundant method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@37539 72102866-910b-0410-8b05-ffd578937521
2014-01-05 23:03:35 +00:00
fredkiefer
3db5c5231a * Source/x11/XGServerWindow.m(-_checkStyle:): Change NSLog into
NSDebugLLog.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@37535 72102866-910b-0410-8b05-ffd578937521
2014-01-05 16:40:32 +00:00
thebeing
38cbd4fcb7 Add a method to GSDisplayServer that allows you to obtain the
identifier used by the backend's windowing system instead of
just the GNUstep-internal window number. On X11, the identifier
is useful, among other things, to implement the D-Bus menu 
protocol.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@37533 72102866-910b-0410-8b05-ffd578937521
2014-01-01 19:45:26 +00:00
fredkiefer
3f72f49afb * Source/x11/XGServerWindow.m (-_createBuffer, -windowbacking::,
-setWindowdevice:forContext:): Move code from last patch around a bit.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@37475 72102866-910b-0410-8b05-ffd578937521
2013-12-18 22:34:20 +00:00
ericwa
234703ae7a * Source/x11/XGServerWindow.m (-_createBuffer): Fix a big
memory leak noticed by Riccardo with the cairo backend,
by #ifdef-ing out this method when using cairo.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@37471 72102866-910b-0410-8b05-ffd578937521
2013-12-18 17:40:21 +00:00
fredkiefer
b5dff3e089 * Source/x11/XGServerWindow.m (-setIgnoreMouse::): Completely
rewrite this method to use Xfixes.
        * Source/win32/WIN32Server.m (-setIgnoreMouse::): Implement a
        Windows version of this method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@36861 72102866-910b-0410-8b05-ffd578937521
2013-07-09 21:23:20 +00:00
fredkiefer
d6149a4ca1 * Source/x11/XGServerWindow.m (-setIgnoreMouse::): New method
that allows to ignore mouse events for a window.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@36855 72102866-910b-0410-8b05-ffd578937521
2013-07-08 20:46:07 +00:00
fredkiefer
7bc7a5c8ed Fix compiler warnings reported by
Sebastian Reitenbach <sebastia@l00-bugdead-prods.de>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@36165 72102866-910b-0410-8b05-ffd578937521
2013-02-18 20:29:10 +00:00
fredkiefer
e391153348 Adopt to changes in gui.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@36149 72102866-910b-0410-8b05-ffd578937521
2013-02-16 00:11:14 +00:00
fredkiefer
264f3eb3e2 Silence warnings from clang.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@36106 72102866-910b-0410-8b05-ffd578937521
2013-02-10 17:32:47 +00:00
wlux
2e13792007 Fix for big endian machines.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@35587 72102866-910b-0410-8b05-ffd578937521
2012-09-21 20:32:05 +00:00
wlux
8199abe52f Fix the brain-dead commits I made this morning.
Looks like I wasn't awake then ...


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34595 72102866-910b-0410-8b05-ffd578937521
2012-01-19 21:37:35 +00:00
wlux
680e1c9eb7 Change order of atoms in client message; at least metacity seems to
ignore the _NET_WM_STATE_STICKY_ATOM otherwise.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34590 72102866-910b-0410-8b05-ffd578937521
2012-01-19 09:44:50 +00:00
wlux
5bdfbbb1af Add GS prefix to the names of the new user defaults.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34587 72102866-910b-0410-8b05-ffd578937521
2012-01-19 09:14:57 +00:00
wlux
a570a5190f Introduce new user defaults to respectively make app icons and mini
windows sticky (aka omnipresent).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34586 72102866-910b-0410-8b05-ffd578937521
2012-01-19 09:05:09 +00:00
fredkiefer
d98abdb5b9 Protect usage of shape extension.
Should fix bug #34552.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34016 72102866-910b-0410-8b05-ffd578937521
2011-10-17 11:28:54 +00:00
ericwa
2c788e3701 * Source/win32/WIN32Server.m (-resolutionForScreen:):
Scale the result by 0.75 so the Windows default of 96 DPI is
mapped to the GNUstep default of 72 DPI. While this sounds wrong,
72 and 96 are just "virtual" DPI's; both mean 1 point = 1 pixel,
so it's actually the right thing to do.
* Source/x11/XGServerWindow.m (-resolutionForScreen:):
Comment out the implementation and just return 72 for now,
because I'm not sure if we can trust the value the X server
gives us.

NOTE: Currently -gui ignores these methods and only looks at the
GSScaleFactor user default. I'm going to make -gui use the server
values now, because it's safe to do so on Windows (the system
DPI is set by the user, and affects all applications.)

NOTE: We might consider refactoring these methods to be called
scaleFactorForScreen: to make it clearer what they do.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33658 72102866-910b-0410-8b05-ffd578937521
2011-07-30 20:39:10 +00:00
ericwa
667db18ffc * Source/x11/XGServerWindow.m: Add Xcursor support (for RGBA
imagecursor support.) configure test is still TODO, so it isn't
compiled in at the moment.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33563 72102866-910b-0410-8b05-ffd578937521
2011-07-15 19:05:44 +00:00
ericwa
83efe751a0 * Headers/x11/XGGeneric.h
* Source/x11/XGServerWindow.m: Add new netwm window state atoms


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33549 72102866-910b-0410-8b05-ffd578937521
2011-07-14 19:09:17 +00:00
wlux
f8dda0994b Enlarge protocol array to make space for the _NET_WM_SYNC_REQUEST
protocol atom.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33224 72102866-910b-0410-8b05-ffd578937521
2011-06-01 20:56:27 +00:00
theraven
31f64e4f27 Call NSZoneFree() on pointer allocated with NSAllocateCollectable(), not free(). This is a no-op in GC mode, and will free the memory in non-GC mode.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33148 72102866-910b-0410-8b05-ffd578937521
2011-05-27 13:53:57 +00:00
theraven
9f61e2a679 Use NSAllocateCollectable() for some things that store pointers.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33106 72102866-910b-0410-8b05-ffd578937521
2011-05-24 16:37:26 +00:00
ericwa
6c0d48eeec * Source/x11/XGServerWindow.m:
* 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
2011-05-15 08:37:44 +00:00
fredkiefer
c5e5d1d202 Fixes warnings reported by clang.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32823 72102866-910b-0410-8b05-ffd578937521
2011-04-09 17:10:49 +00:00
fredkiefer
e6d1827e27 Extract the bitmap conversion into a local function and use it througout the file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32643 72102866-910b-0410-8b05-ffd578937521
2011-03-18 09:29:01 +00:00
fredkiefer
8b809fea8c Change the way the image for the cursor gets passed on to the backend.
The old way could only work for 8 bit data.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32492 72102866-910b-0410-8b05-ffd578937521
2011-03-07 19:45:20 +00:00
fredkiefer
f8ff437b87 Implement the ne cursor backend methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32180 72102866-910b-0410-8b05-ffd578937521
2011-02-15 22:54:51 +00:00
wlux
2b2e7a4041 Ooops, a closing parenthesis got lost in the last commit :-(
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32167 72102866-910b-0410-8b05-ffd578937521
2011-02-14 22:44:55 +00:00
wlux
22567efe26 Omit app icons and mini windows from the pager and task bar even when
they are displayed at normal window level.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32166 72102866-910b-0410-8b05-ffd578937521
2011-02-14 22:40:21 +00:00
ericwa
f228d45b78 core/back: replace objc_{malloc/free} with malloc/free
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31629 72102866-910b-0410-8b05-ffd578937521
2010-11-18 20:28:15 +00:00
fredkiefer
c3bf8b14c5 Fixed problems found by sttic code analyser.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31326 72102866-910b-0410-8b05-ffd578937521
2010-09-11 14:00:35 +00:00
ericwa
dbbc2c36c1 Handle horizontal scrolling in X11
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29532 72102866-910b-0410-8b05-ffd578937521
2010-02-10 07:36:36 +00:00
wlux
d7553ab584 Revise detection of window miniaturization and deminiaturization based
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
2010-01-14 22:27:03 +00:00
rfm
0aaa13fc2b pply fix from Doug Simons
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29062 72102866-910b-0410-8b05-ffd578937521
2009-11-26 11:15:59 +00:00
fredkiefer
00682252d0 Don't return a static variable as the window device.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28975 72102866-910b-0410-8b05-ffd578937521
2009-11-08 16:14:53 +00:00
wlux
358491e462 Partially revert the (defunct) recent window miniaturization changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28930 72102866-910b-0410-8b05-ffd578937521
2009-11-01 12:55:52 +00:00
icicle
89153eb724 TG: Implement setMouseLocation:onScreen
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28898 72102866-910b-0410-8b05-ffd578937521
2009-10-27 18:42:33 +00:00
rfm
23904f379f code for deminiaturisation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28836 72102866-910b-0410-8b05-ffd578937521
2009-10-18 06:28:50 +00:00
xgl
6acde03c4d OpenGL sub-windows: prevent back-store flush, handle expose events, and small fix/improvements
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28036 72102866-910b-0410-8b05-ffd578937521
2009-03-04 09:58:41 +00:00
rfm
9e1e930940 minor fixes to compile with GC
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27843 72102866-910b-0410-8b05-ffd578937521
2009-02-11 08:45:56 +00:00
wlux
31c2c90be5 Add an asterisk before the window's title if its document is edited
and the window manager is not capable of displaying the document's
status (i.e., any window manager other than Window Maker for now).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27821 72102866-910b-0410-8b05-ffd578937521
2009-02-08 23:04:34 +00:00
rfm
37e80a9462 Fix typo in method to set parent window of a child, optimise color handling in themes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27742 72102866-910b-0410-8b05-ffd578937521
2009-01-31 09:59:32 +00:00
fredkiefer
9c1d6c5c86 Implement new method -setPartentWindow:forChildWindow: for X and
Windows.

Adjust y coordinate of point in compositeGState:... for cairo. This
solves bug #24709. 


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27718 72102866-910b-0410-8b05-ffd578937521
2009-01-29 09:32:32 +00:00