Commit graph

149 commits

Author SHA1 Message Date
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
ericwa
765d7b443d * Headers/cairo/CairoGState.h:
* Source/cairo/CairoGState.m: Remove most of the rounding code and
implementation of DPSstrokeadjust.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33492 72102866-910b-0410-8b05-ffd578937521
2011-07-08 21:02:06 +00:00
fredkiefer
590eedf3c0 * Headers/x11/XGServer.h: Add #include of config.h.
* 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
2011-06-22 22:09:41 +00:00
fredkiefer
26e096a1b5 Revert last change as gui is fixed now.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33305 72102866-910b-0410-8b05-ffd578937521
2011-06-14 22:27:58 +00:00
fredkiefer
fb05d6c895 * Source/cairo/CairoContext.m (-supportsDrawGState): Delegate to
gstate.
* Headers/cairo/CairoGState.h (-supportsDrawGState): Declare this method.
* Source/cairo/CairoGState.m (-supportsDrawGState): Only allow the
faster drawing operation when the clip can be represented as a
list of rectangles.
* Source/cairo/CairoGState.m (-copyWithZone:): Always free the
clip rectangle list.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33289 72102866-910b-0410-8b05-ffd578937521
2011-06-13 12:34:52 +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
ericwa
b23f4dd6a9 * Source/winlib/WIN32GState.m:
* Source/art/ARTGState.m:
* Source/cairo/CairoGState.m:
* Source/xlib/XGGState.m:
* Source/gsc/GSContext.m:
* Source/gsc/GSGState.m:
* Headers/gsc/GSGStateOps.h:
Add a new interface, GSShowGlyphsWithAdvances, which replaces
GSShowGlyphs as the primitive text drawing method.

None of the backends implement it properly yet; I simply renamed
the existing -GSShowGlyphs:: methods to -GSShowGlyphsWithAdvances:::,
so they currently ignore the glyph advances.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33121 72102866-910b-0410-8b05-ffd578937521
2011-05-26 03:48:58 +00:00
fredkiefer
1bdcc0b82d Protect the name id.
Patch by Sebastian Reitenbach <sebastia@l00-bugdead-prods.de>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33065 72102866-910b-0410-8b05-ffd578937521
2011-05-19 07:37:29 +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
ericwa
09c3361700 * Undo the previous change and try a different approach..
just cache the character set in CairoFaceInfo, but load them
as needed as we were doing before.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32987 72102866-910b-0410-8b05-ffd578937521
2011-05-05 20:05:13 +00:00
ericwa
b1b61ab926 back/cairo: use Fontconfig for descriptor matching
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32864 72102866-910b-0410-8b05-ffd578937521
2011-04-14 23:14:38 +00:00
ericwa
e6b42470de back: implement coveredCharacterSet for CairoFontInfo
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32716 72102866-910b-0410-8b05-ffd578937521
2011-03-28 04:19:41 +00:00
ericwa
9a1aa3367f * Headers/win32/WIN32Server.h:
* Source/win32/WIN32Server.m:
* Source/win32/w32_movesize.m:
Fix a rather serious error where the extra window data was allocated
in two places (allocated with objc_malloc in the WM_CREATE handler,
and also allocated by Windows using the cbWndExtra field of the window
class structure). Sometimes the window level was accessed from one
memory area and sometimes from the other.
	
This is a quick fix that leaves the level and ordered properties
in the cbWndExtra area, and the rest is left in the WIN_INTERN
structure. 

This fixes the problem where window ordering was broken when running
apps in gdb.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31198 72102866-910b-0410-8b05-ffd578937521
2010-08-25 04:20:45 +00:00
qmathe
b36e330207 Fixed Windows backend issues introduced with r30523 where images are drawn at
the wrong location by -[NSImage drawXXX] methods.

See bug report #30069


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@30829 72102866-910b-0410-8b05-ffd578937521
2010-06-22 22:18:56 +00:00
qmathe
9995a94236 Fixed many drawing issues (many ones being related to the flipping).
See bug report #27782

In particular, fixed -[NSImage drawXXX] and -[NSImage composite/dissolveXXX] 
methods to work exactly as Cocoa when the Cairo backend is used.
Added a new draw operator (in addition to composite) to the backend. Cairo is 
the only backend that implements it for now.
Eliminated as many flipping checks as possible.

Warning: Untested with the winlib backend. 
You must update, recompile and install both Back and Gui.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@30523 72102866-910b-0410-8b05-ffd578937521
2010-06-01 11:04:36 +00:00
gcasa
fcef56e1f5 Reactivate the theme when the *Windows* theme is changed.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@30402 72102866-910b-0410-8b05-ffd578937521
2010-05-16 21:32:56 +00:00
ericwa
64b1d873e6 back/win32: update windows while resizing
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@30008 72102866-910b-0410-8b05-ffd578937521
2010-03-20 06:42:17 +00:00
ericwa
d52619c248 back/win32: horizontal mousewheel support
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29933 72102866-910b-0410-8b05-ffd578937521
2010-03-13 21:38:23 +00:00
fredkiefer
35a79cf85d Adjust to the CGFloat change for NSFont
and NSAffineTransform done in base and gui.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29689 72102866-910b-0410-8b05-ffd578937521
2010-02-20 16:33:30 +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
gcasa
4c66d96e91 * Headers/win32/WIN32Server.h: Remove HOTKEY method.
* Source/win32/w32_general.m: Remove HOTKEY method.
	* Source/win32/WIN32Server.m: Remove call to HOTKEY method.  Added
	function "mask_for_keystate(..)" to implement modifier mappings
	on Windows.   Also changed process_key_event to use the new function
	and changed the call to ToUnicode to use a blank array instead of
	modifying the existing keyState array since this was returning the
	characters with the modifiers still applied.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29498 72102866-910b-0410-8b05-ffd578937521
2010-02-07 08:37:04 +00:00
gcasa
99296fd283 * Headers/win32/WIN32Server.h: Added declaration for decodeWM_HOTKEY:...
* Source/win32/WIN32Server.m: Added call to method decodeWM_HOTKEY:...
        * Source/win32/w32_general.m: Added method decodeWM_HOTKEY:...



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29490 72102866-910b-0410-8b05-ffd578937521
2010-02-05 21:32:42 +00:00
wlux
768d177488 Avoid unnecessary runtime check in the fix for #28590.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29358 72102866-910b-0410-8b05-ffd578937521
2010-01-22 11:47:06 +00:00
wlux
d2e8790c6f Fix bug #28590.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29357 72102866-910b-0410-8b05-ffd578937521
2010-01-22 08:16:50 +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
gcasa
e210cbd8b7 * Headers/win32/WIN32Server.h: Added decodeWM_MOUSEACTIVATE:..
* Source/win32/w32_general.m: Added call to decodeWM_COMMAND:
	to -[GSTheme processCommand:] the theme callback which handles 
	native menus, 


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29279 72102866-910b-0410-8b05-ffd578937521
2010-01-14 10:40:29 +00:00
icicle
f8a8f51ce4 TG: OpenGL cleanup
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28877 72102866-910b-0410-8b05-ffd578937521
2009-10-25 13:49:19 +00:00
fredkiefer
9ad681c14a Add simple gradient implementation for the cairo backend.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28873 72102866-910b-0410-8b05-ffd578937521
2009-10-23 20:46:41 +00:00
fredkiefer
b40cb71904 Implement pattern colours for all backends.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28850 72102866-910b-0410-8b05-ffd578937521
2009-10-19 14:17:45 +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
fredkiefer
c95e25693d In XwindowBuffer get the default visual and depth from the XGServer.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26961 72102866-910b-0410-8b05-ffd578937521
2008-10-24 16:42:38 +00:00
fredkiefer
088a632e74 Remove unused parameters for rect conversion on windows.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26926 72102866-910b-0410-8b05-ffd578937521
2008-10-17 15:22:41 +00:00
fredkiefer
349c0cb393 Further cleanup of windows server code.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26924 72102866-910b-0410-8b05-ffd578937521
2008-10-17 14:49:02 +00:00
fredkiefer
8407089ec7 Try to keep the visual of art consistent with the one used by X.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26849 72102866-910b-0410-8b05-ffd578937521
2008-09-14 21:22:54 +00:00
fredkiefer
590c984fed Patch by Hubert Chathi <hubert@uhoreg.ca> to handle window minimization
on EWMH systems better.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26795 72102866-910b-0410-8b05-ffd578937521
2008-07-19 21:17:42 +00:00
fedor
52a046da0f Revert library license version to 2 until applications can be converted
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26620 72102866-910b-0410-8b05-ffd578937521
2008-06-10 04:12:46 +00:00
gcasa
7886e22ead * Headers/x11/XGGeneric.h:
* 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
2008-06-01 22:01:08 +00:00
fedor
9bbb15310f Standardize cache name to handle new Mac OS X display names
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26530 72102866-910b-0410-8b05-ffd578937521
2008-05-16 17:14:30 +00:00
fredkiefer
9b97919bcf Backend support for appendBezierPathWithPackedGlyphs:.
Implementation of coveredCharacterSet on GSXftFontInfo.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26436 72102866-910b-0410-8b05-ffd578937521
2008-04-07 13:51:28 +00:00
fredkiefer
b2e50a88da Remove method resetForGSWindowStyle:w32Style:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26245 72102866-910b-0410-8b05-ffd578937521
2008-03-07 23:18:39 +00:00
rfm
46a1bbe6fa fix for segementation violation accessing window of another app
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26226 72102866-910b-0410-8b05-ffd578937521
2008-03-06 13:48:40 +00:00
rfm
a13562b657 some work towards supportign window levels
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26195 72102866-910b-0410-8b05-ffd578937521
2008-03-05 08:07:51 +00:00
xgl
b3d15b5e31 Experimental Cairo and Cairo/Glitz backends on win32
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26189 72102866-910b-0410-8b05-ffd578937521
2008-03-04 10:14:29 +00:00
fredkiefer
025ee25307 General cleanup of win32 code.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26066 72102866-910b-0410-8b05-ffd578937521
2008-02-14 22:26:00 +00:00
fredkiefer
f3dd6d33cf Windows resize/drawing patch by Christopher Armstrong
<carmstrong@fastmail.com.au>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26065 72102866-910b-0410-8b05-ffd578937521
2008-02-14 21:13:17 +00:00
fredkiefer
4e47d7d7c2 Get to work with newer versions of GLX.
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
2008-01-21 21:27:58 +00:00
ipaqah
4e6f30b8c0 Reverting back to former font system.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25721 72102866-910b-0410-8b05-ffd578937521
2007-12-11 12:06:42 +00:00
ipaqah
54113200ef Rewrite font system to cache fonts in a plist and support nfont bundles.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25717 72102866-910b-0410-8b05-ffd578937521
2007-12-11 00:14:01 +00:00
fredkiefer
37b1a789d4 Change stroke and fill to use NSColorSpace
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25711 72102866-910b-0410-8b05-ffd578937521
2007-12-10 15:34:56 +00:00
fredkiefer
344df899d9 Remove non-normal windows from task list.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25626 72102866-910b-0410-8b05-ffd578937521
2007-11-29 00:56:11 +00:00