* 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
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
* 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
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
* 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
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
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
* 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
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/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
* 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
Implementation of coveredCharacterSet on GSXftFontInfo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26436 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
needs to be optimized for each individual backend and the original art
implemenation should be moved to this.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25519 72102866-910b-0410-8b05-ffd578937521
(-DPSsetstrokeadjust:): Implement.
(-DPSinitgraphics): Set _strokeadjust to 1 by default.
(-_adjustPath:): Implement new method that place the path to pixel
boundaries.
(-_setPath:): Change method definition adding fillOrClip argument.
Use _adjustPath: method.
(-DPSclip): Change call of _setPath: to new format.
(-DPSeoclip): Ditto.
(-DPSeofill): Ditto.
(-DPSfill): Ditto.
(-DPSstroke): Ditto.
(-compositerect:op:): Ditto.
* Headers/cairo/CairoGState.h: Define _strokeadjust variable.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25299 72102866-910b-0410-8b05-ffd578937521
- Deletion of all non-GNUstep debug stuff (printf...)
- Deletion of all Notification hooks (used for a debugging purpose)
- Deletion of the Application preference Panel that popups (pops up?)
the 1st time you run _any_ application
- Deletion of the check of GSWINHandlesWindowDecorations and
GSWIN32HandlesWindowDecorations options (none worked because of
a typo and are now deprecated).
- use of GSBackHandlesWindowDecorations option like X11 backend
instead of GSUseWMStyles (marked as deprecated)
- use of GSBackUsesNativeTaskbar option instead of GSUseWMTaskbar
(marked as deprecated)
- all these options are read in -initWithAttribute: (no more in
+inializeBackend) and set an instance (not class) variable.
- add methods -handlesWindowDecorations/-setHandlesWindowDecorations
- add methods -usesNativeTaskbar/-setUsesNativeTaskbar
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@24804 72102866-910b-0410-8b05-ffd578937521
* header fixes to include freetype
* fixed glitz api change (but does not work, because I don't know how to
retrieve a proper VisualID for the display)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23681 72102866-910b-0410-8b05-ffd578937521
activated. Removed detailed documation from MS. Read and
write correctly from defaults.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@21851 72102866-910b-0410-8b05-ffd578937521
window and toolbar issues (See Source/win32/RELEASE_NOTES for
more info).
* Headers/win32/WIN32Server.h: Added ivars and flags and methods.
* Headers/winlib/WIN32GState.h: Added method to avoid confliting
types with superclass.
* Source/win32/GNUmakefile: Add new files.
* w32_debug.m, w32_activate.m, w32_create.m, w32_general.m,
w32_movesize.m, w32_text_focus.m, w32_windowdisplay.m,
GSDisplayServer_details.m: New files.
* Source/win32/WIN32Server.m: Large changes. Merged with
WIN32ServerEvent. Lots of documentation.
* Source/winlib/WIN32GState.m: Variable name changes to
avoid shadowing.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@21716 72102866-910b-0410-8b05-ffd578937521
* Headers/x11/XGServerWindow.h: Make the border and depth ivars
unsigned.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@20694 72102866-910b-0410-8b05-ffd578937521
* Headers/x11/XWindowBuffer.h: Make the pending_rect ivar a struct
of int:s.
* Source/x11/XWindowBuffer.m: Add casts to remove pointer sign
warnings.
(-_exposeRect:, -_gotShmCompletion): Update uses of pending_rect.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@20537 72102866-910b-0410-8b05-ffd578937521
* Source/x11/XGServer.m ([XGScreenContext
-initForDisplay:screen:]): For 8bit, test for RGB_BEST_MAP.
* Source/xlib/XGBitmap.m (_pixmap_combine_alpha,
_bitmap_combine_alpha, _pixmap_read_alpha): Add 8 bit case.
(patch from Paul Secchia <paul@worldnet.att.net>).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@20033 72102866-910b-0410-8b05-ffd578937521