Commit graph

80 commits

Author SHA1 Message Date
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
fredkiefer
88d9d3240b Revert part of the repeated key handling as requested by Riccardo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@39131 72102866-910b-0410-8b05-ffd578937521
2015-11-03 08:42:47 +00:00
fredkiefer
5e0d451269 * Source/x11/XGServerEvent.m (-processEvent:): Move repeate key
detection from process_key_event() to here to enable filtering
        out keyUp events as Cocoa does.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@39078 72102866-910b-0410-8b05-ffd578937521
2015-10-16 22:07:24 +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
espectador
430751201b Don't delay sending events GSAppKitWindowMoved and GSAppKitWindowResized.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@36765 72102866-910b-0410-8b05-ffd578937521
2013-06-28 01:44:24 +00:00
ericwa
0172f2afac * Source/x11/XGServerEvent.m: Make the GSModifiersAreKeys
default to YES, by renaming the default to GSModifiersAreNotKeys.
This should fix bug 25659; for example, in Ink you can now
open the color panel with <Shift>+<Alt>+c or <Alt>+<Shift>+c.
* Documentation/Back/DefaultsSummary.gsdoc: Update docs for
GSModifiersAreNotKeys.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34984 72102866-910b-0410-8b05-ffd578937521
2012-03-23 00:13:09 +00:00
ericwa
25c7e8a1b9 Revert mousewheel coalescing (r34553, r34554, r34558)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34582 72102866-910b-0410-8b05-ffd578937521
2012-01-18 21:35:59 +00:00
ericwa
e8e54bc0a8 * Source/x11/XGServerEvent.m (-processEvent:): Rewrite coalescing
code to only combine an uninterrupted set of scroll events.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34558 72102866-910b-0410-8b05-ffd578937521
2012-01-17 00:43:29 +00:00
ericwa
9fcefd73fc * Source/x11/XGServerEvent.m (-processEvent:): Coalesce
mousewheel events


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34554 72102866-910b-0410-8b05-ffd578937521
2012-01-16 06:37:18 +00:00
ericwa
a27098a2be * Source/x11/XGServer.m: Don't read X events in NSConnectionReplyMode
* Source/x11/XGServerEvent.m (-receivedEvent:type:extra:forMode:):
Only read one event from the xlib event queue, instead of all of them.
* Source/x11/XGServerEvent.m (-getEventMatchingMask:beforeDate:inMode:):
Remove call to -receivedEvent:type:extra:forMode:
* Source/x11/XGServerEvent.m (-discardEventsMatchingMask:beforeEvent:):
Remove call to -receivedEvent:type:extra:forMode:

These changes are an attempt to fix a bug where a steady stream
of X events can postpone autodisplay indefinitely. To see it, open
a long document in Ink and scroll with the mousewheel slowly but
continuously. If you scroll steadily enough, the window will not
update until you stop scrolling.

This occurs beacuse autodisplay only occurs when the AppKit event
queue is empty and the runloop runs, and without the above changes,
the AppKit event queue was filling up and not emptying until the
mousewheel events stopped arriving.

In the long run I think we should get rid of the AppKit event queue
and have XGServer override the default implementation of
-[GSDisplayServer getEventMatchingMask:beforeDate:inMode:dequeue:]
and related methods with custom ones that interact
directly with the Xlib event queue.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34553 72102866-910b-0410-8b05-ffd578937521
2012-01-16 06:33:45 +00:00
fredkiefer
2dc367c44e Revert change to use AltGr as Alt key. You may still get the same result
by setting a user default.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34225 72102866-910b-0410-8b05-ffd578937521
2011-11-28 17:00:50 +00:00
fredkiefer
9b784885d4 Use XK_ISO_Level3_Shift as second alternate key and document this change.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34130 72102866-910b-0410-8b05-ffd578937521
2011-11-07 09:41:38 +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
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
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
fredkiefer
621d682b3d Submit X11 shift key handling patch by Derek Fawcus
<dfawcus@employees.org>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31025 72102866-910b-0410-8b05-ffd578937521
2010-07-25 19:39:18 +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
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
gcasa
e4ec7cdcd4 Minor formatting change in ChangeLog and temporary removal/commenting out of code until a fix for bug#26046 can be resolved.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28151 72102866-910b-0410-8b05-ffd578937521
2009-03-30 05:37:42 +00:00
fredkiefer
dce97e65b8 Correct formatting, replaced tabs.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28070 72102866-910b-0410-8b05-ffd578937521
2009-03-12 22:12:31 +00:00
icicle
a3f5800658 Thomas Gamper: implement key repeat support
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28068 72102866-910b-0410-8b05-ffd578937521
2009-03-12 12:13:35 +00:00
xgl
c0df36607b Fix a bug (from rev.28036)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28049 72102866-910b-0410-8b05-ffd578937521
2009-03-07 20:47:55 +00:00
xgl
f08a621965 Fix typo and oversights - Comes along with the previous changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@28037 72102866-910b-0410-8b05-ffd578937521
2009-03-04 14:48:19 +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
wlux
ed55476d58 Fix an issue where the X11 backend could use incorrect modifier key
settings.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27358 72102866-910b-0410-8b05-ffd578937521
2008-12-19 23:01:04 +00:00
wlux
4a89149f9c Fix two issues with Window Maker.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27296 72102866-910b-0410-8b05-ffd578937521
2008-12-15 20:47:06 +00:00
wlux
8d8d64823a Add method to XGServer to avoid blocking the run loop when the X event
queue is not empty.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27275 72102866-910b-0410-8b05-ffd578937521
2008-12-10 20:30:09 +00:00
fredkiefer
90a62908d3 Add missing window caching for minimized check.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26809 72102866-910b-0410-8b05-ffd578937521
2008-08-14 06:33:04 +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
fredkiefer
4bb9a9edfb Convert X event millisecond timestamp to NSEvent second timestamp.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26634 72102866-910b-0410-8b05-ffd578937521
2008-06-12 19:55:09 +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
fredkiefer
3b97bdc79f Faster check for modifier keys.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26578 72102866-910b-0410-8b05-ffd578937521
2008-05-27 20:22:17 +00:00
fredkiefer
fa6e35e2f8 Change files to use GPL 3 and LGPL 3.
Prepare for next release.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25538 72102866-910b-0410-8b05-ffd578937521
2007-10-29 23:25:10 +00:00
fredkiefer
cb3f3e35bf New methods to store and get last event time.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25457 72102866-910b-0410-8b05-ffd578937521
2007-09-05 14:35:06 +00:00
fredkiefer
5e75161bf3 Made handling of focus in and out more explicit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25403 72102866-910b-0410-8b05-ffd578937521
2007-08-20 22:31:09 +00:00
fredkiefer
66caf72438 XDnD improvements by Matt Rice.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25071 72102866-910b-0410-8b05-ffd578937521
2007-04-25 00:12:46 +00:00
rfm
f202c1e114 Improve help key support
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@24193 72102866-910b-0410-8b05-ffd578937521
2006-12-08 09:09:40 +00:00
ratmice
b77406d3e0 * Source/x11/XGServerEvent.m (_handleTakeFocusAtom:forContext:):
Unset ignore_take_focus for the key window.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@24001 72102866-910b-0410-8b05-ffd578937521
2006-10-31 12:48:23 +00:00
ratmice
b684db215f * Source/win32/WIN32Server.m: Update -windowlist implementation.
* Source/x11/XGServerWindow.m (-orderwin:::): Replace
        desiredOrderedWindow with ignore_take_focus.
        (windowlist): Implement.
        (setinputfocus:): Replace desiredOrderedWindow with 
	ignore_take_focus.
        * Headers/x11/XGGeneric.h (XGGeneric): Remove 
	desiredOrderedWindow.
        * Headers/x11/XGServerWindow.h (gswindow_device_t):
        Add ignore_take_focus.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23937 72102866-910b-0410-8b05-ffd578937521
2006-10-21 19:16:47 +00:00
rfm
221e3cab14 Improve help key support
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23748 72102866-910b-0410-8b05-ffd578937521
2006-10-04 05:24:58 +00:00
rfm
dfc470d1cc Add help key mask support
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23745 72102866-910b-0410-8b05-ffd578937521
2006-10-03 18:54:22 +00:00
rfm
336a4fd4b9 Some more style/offset checking.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23613 72102866-910b-0410-8b05-ffd578937521
2006-09-25 13:49:32 +00:00
rfm
02c6dc3ba2 Revert exposure event change as it causes too many problems
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23608 72102866-910b-0410-8b05-ffd578937521
2006-09-24 19:19:21 +00:00
rfm
46ae1bab01 Send expose events to the front end.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23601 72102866-910b-0410-8b05-ffd578937521
2006-09-24 07:39:51 +00:00
rfm
c1cdc25750 Window frame/coordinate handling cleanups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23461 72102866-910b-0410-8b05-ffd578937521
2006-09-12 09:50:14 +00:00
rfm
f3a24e7bc5 Window frame handling fixups (bug #17377)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23400 72102866-910b-0410-8b05-ffd578937521
2006-09-06 11:29:32 +00:00
fredkiefer
22ce633be4 Added handlign of _NET_WM_PING.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23148 72102866-910b-0410-8b05-ffd578937521
2006-07-08 23:33:50 +00:00
fredkiefer
a16455b809 New method -_XFrameToXHints:for:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@22923 72102866-910b-0410-8b05-ffd578937521
2006-05-13 20:56:18 +00:00