Commit graph

817 commits

Author SHA1 Message Date
ericwa
e7434f0391 * configure.ac: Add a configure test for Xcursor
* configure: regenerate
* config.h.in: regernate


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33677 72102866-910b-0410-8b05-ffd578937521
2011-08-02 04:08:48 +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
81ac170311 * Source/winlib/WIN32GState.m (GSCreateBitmap): Add support for
(8 bit-greyscale, 8-bit alpha) format. This fixes various 
default images not showing (menu arrows, scroller arrows, etc.)

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33582 72102866-910b-0410-8b05-ffd578937521
2011-07-18 18:13:47 +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
fredkiefer
29cf03bc43 Add include needed for Cygwin.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33544 72102866-910b-0410-8b05-ffd578937521
2011-07-14 06:53:52 +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
ericwa
407a90efc0 * Source/cairo/XGCairoSurface.m (-contentsOfScreen:inRect:):
Use the passed rect properly.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33444 72102866-910b-0410-8b05-ffd578937521
2011-07-03 23:59:35 +00:00
ericwa
1d8df067f3 * Source/cairo/XGCairoSurface.m: Implementation of
-[GSDisplayServer contentsOfScreen:inRect:] for x11/cairo


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33443 72102866-910b-0410-8b05-ffd578937521
2011-07-03 23:45:22 +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
theraven
c5c7bf600a Added ChangeLog entry from last commit
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33149 72102866-910b-0410-8b05-ffd578937521
2011-05-27 13:57:02 +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
f61d9ee591 * Source/cairo/CairoFontEnumerator.m:
* Source/cairo/CairoFaceInfo (-characterSet): Remove the call to
FcFontMatch in -characterSet which was a big performace
bottleneck.
Instead load the character set data when enumerating all fonts in
CairoFontEnumerator.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32986 72102866-910b-0410-8b05-ffd578937521
2011-05-05 19:18:43 +00:00
ericwa
7809683362 back: c89 compat.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32882 72102866-910b-0410-8b05-ffd578937521
2011-04-17 23:08:30 +00:00
ericwa
3daa9d3bc7 back: forgot to update ChangeLog
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32881 72102866-910b-0410-8b05-ffd578937521
2011-04-17 22:55:49 +00:00
ericwa
d1e4faba52 back: Copy the -Wdeclaration-after-statement test from base. Also adds -Wall.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32878 72102866-910b-0410-8b05-ffd578937521
2011-04-17 21:16:12 +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
fedor
a86d338afc Bump version to unstable
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32853 72102866-910b-0410-8b05-ffd578937521
2011-04-14 03:04:54 +00:00
fedor
1be57b5ba1 Version 0.20.0
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32849 72102866-910b-0410-8b05-ffd578937521
2011-04-14 02:54:22 +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
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
fredkiefer
f4de37421d * Tools/xpbs.m (-pasteboard:provideDataForType:, -availableTypes)
(-xSelectionNotify:): Better handling of plain text data types.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32694 72102866-910b-0410-8b05-ffd578937521
2011-03-23 19:44:46 +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
ericwa
7775bb0f77 Check for the X extention libraries (Xext, Xt, Xmu) using pkg-config if they aren't found with the default test
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32557 72102866-910b-0410-8b05-ffd578937521
2011-03-13 21:18:20 +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
wlux
09fa98f760 Fix race condition where gpbs could time out waiting for a property
change notification from the X server, which is already present in the
X event queue.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32457 72102866-910b-0410-8b05-ffd578937521
2011-03-05 14:40:22 +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
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
fredkiefer
506997b71a Remove a few compiler warnings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31726 72102866-910b-0410-8b05-ffd578937521
2010-12-11 14:49:54 +00:00
fredkiefer
ff347dffb1 Better error detection in Windows image display.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31725 72102866-910b-0410-8b05-ffd578937521
2010-12-11 14:28:44 +00:00
jonathanosx
5c0ea96187 * Source/win32/WIN32Server.m: Added better logging on Window create and destroy errors.
Added a secondary call to get current mouse position if the first call fails.	
* Source/win32/w32_text_focus.m: Cast parameter to appropriate (HWND) type.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31718 72102866-910b-0410-8b05-ffd578937521
2010-12-08 22:59:05 +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
33b59408cf back/win32: revert r31206
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31324 72102866-910b-0410-8b05-ffd578937521
2010-09-10 22:45:12 +00:00
ericwa
7921074f23 * Source/win32/WIN32Server.m: Only show taskbar buttons for windows
which satisfy both:

- style mask isn't NSBorderlessWindowMask
- style mask don't have NSUtilityWindowMask set

Should fix bug 30911

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31212 72102866-910b-0410-8b05-ffd578937521
2010-08-30 22:00:09 +00:00
ericwa
86f1a1e68a * Source/win32/w32_activate.m: Call -[NSApp deactivate] in response
to a WM_ACTIVEAPPP message reporting that the app lost focus.

This delivers NSApplicationWillResignActiveNotification
and NSApplicationDidResignActiveNotification, hides panels, etc.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31206 72102866-910b-0410-8b05-ffd578937521
2010-08-30 05:53:30 +00:00
ericwa
2fd9f1d2ca * Source/win32/WIN32Server.m: Handle Page Down and Page Up keys,
as well as adding a few others.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31200 72102866-910b-0410-8b05-ffd578937521
2010-08-25 17:03:38 +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
ericwa
b8d4c6674a Source/win32/WIN32Server.m (-setmaxsize::): Remove the maximize box when a maximum size is set on a window.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31197 72102866-910b-0410-8b05-ffd578937521
2010-08-24 23:20:01 +00:00
fredkiefer
aaf1d7ab06 For XFT Also request spacing information.
Patch by Derek Fawcus <dfawcus@employees.org>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31109 72102866-910b-0410-8b05-ffd578937521
2010-08-10 19:21:31 +00:00
ericwa
1e98247b66 back/win32:
Only look at NSUtilityWindowMask to decide whether to use a thin-
style title bar (WS_EX_TOOLWINDOW).

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31080 72102866-910b-0410-8b05-ffd578937521
2010-08-04 04:57:04 +00:00
fredkiefer
9eca3a5075 Fix for bug #30140. The code was not converting the rectangle for
pattern drawing into device space.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31044 72102866-910b-0410-8b05-ffd578937521
2010-07-28 09:11:04 +00:00
fredkiefer
c4c6268f45 * Source/win32/WIN32Server.m,
* Source/x11/XGServerEvent.m: Use NSDeleteCharacter instead of
        NSBackSpaceCharacter for the backspace key. This is what Cocoa
and
        OpenStep have been doing all the time.
        Also use NSBackTabCharacter on X11 when XK_ISO_Left_Tab is
        pressed, but don't convert shift-tab into NSBackTabCharacter.
        Patch by Derek Fawcus <dfawcus@employees.org>.


M    ChangeLog
M    Source/win32/WIN32Server.m
M    Source/x11/XGServerEvent.m


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31034 72102866-910b-0410-8b05-ffd578937521
2010-07-26 12:46:35 +00:00
ericwa
3d39a3f544 * Source/win32/WIN32Server.m:
Fix accidental integer division intended to be float division when
setting the timestamp on events. This was causing all timestamps
to be rounded to the nearest second.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31031 72102866-910b-0410-8b05-ffd578937521
2010-07-26 01:55:24 +00:00