Commit graph

34 commits

Author SHA1 Message Date
Eric Wasylishen
d84def3af7 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
Eric Wasylishen
47c06f7ca2 * 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
Eric Wasylishen
5ece9220eb * 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
David Chisnall
ed0e764447 Make terminating on signal via NSApp conditional on NSApp actually existing. This allows you to kill applications with ^C if they are using AppKit but not NSApplication.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29016 72102866-910b-0410-8b05-ffd578937521
2009-11-15 13:57:34 +00:00
Fred Kiefer
1802f35b22 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
Fred Kiefer
d6fc8b8e74 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
Adam Fedor
250ebdfad0 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
Fred Kiefer
47ca0b471e Correct creation of screen object and treat primary screen the same as
others.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26132 72102866-910b-0410-8b05-ffd578937521
2008-02-25 19:13:53 +00:00
Fred Kiefer
0f8c5487c7 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
Fred Kiefer
efb48fbccb Handle SIGINT by calling ([NSApp terminate: NSApp]) to shut down
cleanly.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25368 72102866-910b-0410-8b05-ffd578937521
2007-08-02 07:31:37 +00:00
Richard Frith-MacDonald
38c35f71c3 Don't request colormap and property notifications that we don't use
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23605 72102866-910b-0410-8b05-ffd578937521
2006-09-24 18:21:21 +00:00
Richard Frith-MacDonald
8cc7985bd4 Shut down cleanly on receipt of SIGTERM
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23144 72102866-910b-0410-8b05-ffd578937521
2006-07-07 04:14:14 +00:00
Richard Frith-MacDonald
940a0eabbe Avoid spurious warnings produced by gcc-4.1
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23127 72102866-910b-0410-8b05-ffd578937521
2006-07-04 21:54:48 +00:00
Fred Kiefer
23e714f886 Don't set NSHost from X display name.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@22445 72102866-910b-0410-8b05-ffd578937521
2006-02-06 20:31:39 +00:00
Richard Frith-Macdonald
fe123cdc96 Some amd64 fixups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@22305 72102866-910b-0410-8b05-ffd578937521
2006-01-14 11:34:55 +00:00
Adam Fedor
d9db95f880 * Source/art/ARTContext.m ([ARTContext -beep]): Respect user setting
of bell volume.
* Source/x11/XGServe.m: Idem.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@22191 72102866-910b-0410-8b05-ffd578937521
2005-12-20 20:36:59 +00:00
Adam Fedor
0f4e4f317e * Headers/x11/XGServer.h: Add 8bit fast drawing.
* 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
2004-09-08 16:22:00 +00:00
Adam Fedor
72938ea456 Window focus fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@18096 72102866-910b-0410-8b05-ffd578937521
2003-11-19 16:05:29 +00:00
Alexander Malmberg
c593ef9dd5 (-dealloc): Only free rcontext when using our own wraster.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@17417 72102866-910b-0410-8b05-ffd578937521
2003-08-02 11:35:47 +00:00
Fred Kiefer
26b0b36750 In [XGScreenContext dealloc] free hermes_data of RContext.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@17348 72102866-910b-0410-8b05-ffd578937521
2003-07-26 13:14:40 +00:00
Adam Fedor
57f11eaa12 Add XIM Input Method, UPdate to wraster 0.80.2
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@17286 72102866-910b-0410-8b05-ffd578937521
2003-07-22 04:28:43 +00:00
Fred Kiefer
af2959566f Added [XGScreenContext dealloc] to clean up RContext.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@17238 72102866-910b-0410-8b05-ffd578937521
2003-07-16 11:01:51 +00:00
Fred Kiefer
7b260f5c88 Added #ifdef around include of XGOpenGL.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@15040 72102866-910b-0410-8b05-ffd578937521
2002-11-21 20:29:56 +00:00
Adam Fedor
6bec019bff OpenGL implmentation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@14998 72102866-910b-0410-8b05-ffd578937521
2002-11-16 05:00:14 +00:00
Adam Fedor
65701cac5d Don't set FocusWindow Attrib. Fixes crash on XCloseDisplay
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@14153 72102866-910b-0410-8b05-ffd578937521
2002-07-15 03:11:11 +00:00
Adam Fedor
28e92746b8 Alpha fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@14152 72102866-910b-0410-8b05-ffd578937521
2002-07-15 02:50:59 +00:00
Adam Fedor
edb4bc930e More robust parsing of display
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@13924 72102866-910b-0410-8b05-ffd578937521
2002-06-21 14:27:14 +00:00
Adam Fedor
d0ea4d0557 Implement beep in server
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@13764 72102866-910b-0410-8b05-ffd578937521
2002-06-04 02:21:35 +00:00
Adam Fedor
72d35bd260 Don't flip font for flipped view
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@13606 72102866-910b-0410-8b05-ffd578937521
2002-05-08 03:29:21 +00:00
Adam Fedor
2f3bc2ccb0 Simplify backend selection. libart patches
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@13595 72102866-910b-0410-8b05-ffd578937521
2002-05-06 02:03:29 +00:00
Adam Fedor
9c50aaf19a Handle multiple screens.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@13531 72102866-910b-0410-8b05-ffd578937521
2002-04-23 21:05:50 +00:00
Adam Fedor
433edb9c86 Screen handling
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@13524 72102866-910b-0410-8b05-ffd578937521
2002-04-22 15:45:10 +00:00
Adam Fedor
41f9981ac1 Fix non-X configure, Remove old graphics methods
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@13418 72102866-910b-0410-8b05-ffd578937521
2002-04-10 22:25:37 +00:00
Adam Fedor
669a4955e9 Initial revision
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@13249 72102866-910b-0410-8b05-ffd578937521
2002-03-27 23:44:41 +00:00