Commit Graph

1056 Commits

Author SHA1 Message Date
Alexander Larsson
d7e369c27a Implement input shapes 2009-04-02 10:15:16 +02:00
Alexander Larsson
e14e05addc Remove shape_combine_mask from backend. Make X11 backend use XShapeCombineMask directly to unset region 2009-04-02 10:15:16 +02:00
Alexander Larsson
4ba2b181bf Implement shaped windows 2009-04-02 10:15:16 +02:00
Alexander Larsson
062da50b9f Add _gdk_windowing_window_get_shape 2009-04-02 10:15:16 +02:00
Alexander Larsson
0ba99e6e7b Make gdk_windowing_window_destroy a GdkWindowImpl method 2009-04-02 10:15:15 +02:00
Alexander Larsson
36ce54878b Make _gdk_windowing_window_queue_translation a GdkWindiwImpl call 2009-04-02 10:15:15 +02:00
Alexander Larsson
f22211c881 Remove unnecessary clear_area method in GdkWindowImpl 2009-04-02 10:15:15 +02:00
Alexander Larsson
b771c9924d New approach to motion event handling 2009-04-02 10:15:11 +02:00
Alexander Larsson
1f5e104495 Add _gdk_pixmap_set_as_backing which is a way to get GraphicsExposures on pixmaps reported to the window they are backing store for 2009-04-02 10:14:08 +02:00
Alexander Larsson
bb709321f0 Store colormap on impl window (necessary for e.g. foreign windows) 2009-04-02 10:14:07 +02:00
Alexander Larsson
7536708c4b Don't sent native MotionHint masks on pointer grabs as then we won't get enought motion events reported. 2009-04-02 10:14:07 +02:00
Alexander Larsson
ec5d176278 Move gdk_window_get_deskrelative_origin to the GdkWindowImpl and make the common code handle abs_x/y 2009-04-02 10:14:07 +02:00
Alexander Larsson
2b9dc3338a Fix up keyboard grab handling 2009-04-02 10:14:05 +02:00
Alexander Larsson
d47ee4d797 Grab pointer on toplevel window, not on nearest native, so that we always get all events on toplevel 2009-04-02 10:14:05 +02:00
Alexander Larsson
6b1d7fd53d Make synchronized_configure work for child windows (used by in-process plugs) and ensures a native window exist 2009-04-02 10:14:05 +02:00
Alexander Larsson
ec4f8baa08 For foreign parents, use the real parent not the root (which is what we list as parent in the APIs) 2009-04-02 10:14:05 +02:00
Alexander Larsson
d326a638fb Really create a native window when getting xid 2009-04-02 10:14:04 +02:00
Alexander Larsson
8fc7a9547c Create native window when requesting xid 2009-04-02 10:14:04 +02:00
Alexander Larsson
eabac453e6 Initial client-side-windows work
The history before this was kind of twisted as several different
approaches were tested, so that was all squashed into this initial
commit to hide the uninteresting changes and files that were later
removed.
2009-04-02 10:14:01 +02:00
Matthias Clasen
fcdd092ae6 Another attempt at getting Xrandr screen size changes right. Actually
* gdk/x11/gdkevents-x11.c:
        * gdk/x11/gdkscreen-x11.[hc]: Another attempt at getting Xrandr
        screen size changes right. Actually handle XRRScreenChangeNotify
        events, and ignore root ConfigureNotify events if we are using
        Xrandr. Only emit size-changed signals if the screen size changed,
        and only emit monitor-changed signals if the monitors changed.


svn path=/trunk/; revision=22398
2009-02-24 05:09:13 +00:00
Ray Strode
e822462333 After using randr to get a list of monitors, sort the list such that the
2009-02-19  Ray Strode  <rstrode@redhat.com>

	* gdk/x11/gdkscreen-x11.c
	(monitor_compare_function), (init_randr13):
	After using randr to get a list of monitors,
	sort the list such that the biggest output
	of "cloned" outputs comes first in the list.
	This helps apps that don't generally handle
	overlapping outputs to work better in randr
	clone mode.

svn path=/trunk/; revision=22386
2009-02-20 04:42:33 +00:00
Matthias Clasen
0bd95af21a Be more robust against X breakage
svn path=/trunk/; revision=22378
2009-02-19 19:13:10 +00:00
Matthias Clasen
f517b9d5fc some xrandr fixes
svn path=/trunk/; revision=22370
2009-02-18 23:12:26 +00:00
Matthias Clasen
e86a6ddd60 Register randr events
svn path=/trunk/; revision=22328
2009-02-13 22:15:23 +00:00
Matthias Clasen
2e67143e3b Check for Xrandr 1.3
* configure.in: Check for Xrandr 1.3

        * gdk/x11/gdkdisplay-x11.[ch]: Rename have_randr12 to have_randr13
        and set if if we have randr 1.3

        * gdk/x11/gdkscreen-x11.c: Go back to using randr for monitor
        information, if we have XRRGetScreenResourcesCurrent.


svn path=/trunk/; revision=22327
2009-02-13 18:12:57 +00:00
Matthias Clasen
a576e0c9fa Don't update blank cursors
svn path=/trunk/; revision=22208
2009-01-24 21:29:36 +00:00
Matthias Clasen
5c317ec762 Bug 567761 – Spellfixes in GTK+ documentation
* gdk/x11/gdkselection-x11.c:
        * gtk/gtktestutils.c: Fix typos in the docs.


svn path=/trunk/; revision=22189
2009-01-23 05:51:25 +00:00
Matthias Clasen
1cba7387ce Cache cursors to avoid libXcursor theme lookup overhead.
Patch by David Alan Gilbert.

        * gdk/gdkcursor.h: Add a GDK_BLANK_CURSOR cursor type.

        * gdk/x11/gdkcursor-x11.c: Cache font cursors and named cursors.

        * gdk/x11/gdkprivate-x11.h:
        * gdk/x11/gdkcdisplay-x11.c: Remove cached cursors when a
        display if finalized.


svn path=/trunk/; revision=22145
2009-01-20 02:15:59 +00:00
Matthias Clasen
daf29bffed Recheck _NET_SUPPORTING_WM_CHECK every now and then to avoid getting stuck
2009-01-03  Matthias Clasen  <mclasen@redhat.com>

        * gdk/x11/gdkscreen-x11.h:
        * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window): Recheck
        _NET_SUPPORTING_WM_CHECK every now and then to avoid getting
        stuck on the id of a former wmcheck window that got reused by
        another client (see RH bug 471927)


svn path=/trunk/; revision=22058
2009-01-04 04:50:36 +00:00
Matthias Clasen
8ea8b1ee48 Typo fixes and small doc improvements
svn path=/trunk/; revision=21929
2008-12-26 04:20:28 +00:00
Matthias Clasen
856b37bb89 Remove a C99ism. Pointed out by Eric Lamarque
* gdk/x11/gdktestutils-x11.c (gdk_test_simulate_button):
        Remove a C99ism. Pointed out by Eric Lamarque



svn path=/trunk/; revision=21886
2008-12-13 08:05:11 +00:00
Matthias Clasen
7b30a1589d Initialize the XAtom cache earlier. Patch by Christian Persch
* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize the
        XAtom cache earlier. Patch by Christian Persch


svn path=/trunk/; revision=21880
2008-12-13 05:33:14 +00:00
Matthias Clasen
1934d3423b Fix a typo
svn path=/trunk/; revision=21877
2008-12-13 05:20:10 +00:00
Behdad Esfahbod
49ef054981 Bug 563547 – Update gdkx11 atom precache table
2008-12-07  Behdad Esfahbod  <behdad@gnome.org>

        Bug 563547 – Update gdkx11 atom precache table

        * gdk/x11/gdkdisplay-x11.c: Add more atoms to precache.


svn path=/trunk/; revision=21849
2008-12-08 00:01:29 +00:00
Christian Dywan
d494aa7203 Bug 559622 – GdkDevice test segfaults
2008-11-30  Christian Dywan  <christian@imendio.com>

	Bug 559622 – GdkDevice test segfaults

	* gdk/x11/gdkdisplay-x11.c (gdk_display_x11_dispose):
	* gdk/x11/gdkinput.c (gdk_device_class_init), (gdk_device_dispose):
	Free and reset device in dispose. Patch by Michael Natterer and myself.

svn path=/trunk/; revision=21834
2008-11-30 05:33:57 +00:00
Christian Dywan
e0ce091631 Bug 554076 – eventually release g_new-ed supported_atoms
2008-11-30  Christian Dywan  <christian@imendio.com>

	Bug 554076 – eventually release g_new-ed supported_atoms

	* gdk/x11/gdkevents-x11.c (cleanup_atoms),
	(gdk_x11_screen_supports_net_wm_hint): Set cleanup callback.
        Patch by Caolan McNamara.

svn path=/trunk/; revision=21833
2008-11-30 05:28:28 +00:00
Matthias Clasen
aadac20e90 Only emit size-changed if the screen size actually changed.
2008-10-22  Matthias Clasen  <mclasen@redhat.com>

        * gdk/x11/gdkscreen-x11.c: Only emit size-changed if the screen
        size actually changed.


svn path=/trunk/; revision=21698
2008-10-22 14:55:56 +00:00
Matthias Clasen
d6350143cc remove debug spew
svn path=/trunk/; revision=21561
2008-10-01 14:34:12 +00:00
Matthias Clasen
859aaf903d Bug 107000 – Add signals to GdkKeymap for monitoring caps_lock, etc.
2008-09-29  Matthias Clasen  <mclasen@redhat.com>

        Bug 107000 – Add signals to GdkKeymap for monitoring caps_lock, etc.

        * gdk/gdk.symbols:
        * gdk/gdkkeys.[ch]: Add a new GdkKeymap::state-changed signal, and
        a gdk_keymap_get_caps_lock_state function.

        * gdk/x11/gdkkeys-x11.c: Implement it here. For now, only emit
        state-changed when caps lock lockedness changes.

        * gdk/x11/gdkdisplay-x11.c: Also select for modifier lock status
        changes in the XkbSelectEventDetails call.


svn path=/trunk/; revision=21545
2008-09-29 20:40:45 +00:00
Emmanuele Bassi
2b23dc99e7 Correctly chain up the finalize implementation.
2008-09-29  Emmanuele Bassi  <ebassi@linux.intel.com>

	* gdk/x11/gdkinput.c:
	(gdk_device_class_init), (gdk_device_finalize): Correctly chain
	up the finalize implementation.

svn path=/trunk/; revision=21542
2008-09-29 10:54:50 +00:00
Matthias Clasen
1a962664ee Bug 552956 – Should check composite extension version
2008-09-26  Matthias Clasen  <mclasen@redhat.com>

        Bug 552956 – Should check composite extension version

        * gdk/x11/gdkdisplay-x11.c: Check that the version of the
        composite extension is at least 0.4.
        Patch by Owen Taylor


svn path=/trunk/; revision=21530
2008-09-27 03:43:50 +00:00
Matthias Clasen
abe8d89fd9 Bug 553803 – eventually call XCloseDevice on XOpenDevice results
* gdk/x11/gdkinput.c: Add a finalize function for device objects,
        and call XCloseDevice there.

        * gdk/x11/gdkinput-x11.c:
        * gdk/x11/gdkdisplay-x11.c: Move freeing of device objects to
        the finalize function.
        Patch by Caolan McNamara


svn path=/trunk/; revision=21529
2008-09-27 00:47:45 +00:00
Michael Natterer
014acf7565 remove unused variable and fix indentation.
2008-09-23  Michael Natterer  <mitch@imendio.com>

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): remove unused
	variable and fix indentation.


svn path=/trunk/; revision=21496
2008-09-23 10:46:46 +00:00
Søren Sandmann
90759964ee Don't use XRRGetScreenResources() as there are performance issues with it.
Wed Sep 10 06:18:25 2008  Søren Sandmann  <sandmann@redhat.com>

	* gdk/x11/gdkscreen-x11.c (init_multihead): Don't use
	XRRGetScreenResources() as there are performance issues with
	it. Instead rely on the fact that the RandR information is
	propagated through Xinerama as well.


svn path=/trunk/; revision=21334
2008-09-10 10:22:25 +00:00
Matthias Clasen
8f59f3adbb Return FALSE from reparent implementations to avoid #548993. Patch by Ed
2008-08-27  Matthias Clasen  <mclasen@redhat.com>

        * gdk/x11/gdkwindow-x11.c:
        * gdk/win32/gdkwindow-win32.c: Return FALSE from reparent
        implementations to avoid #548993. Patch by Ed Catmur.


svn path=/trunk/; revision=21215
2008-08-28 00:32:17 +00:00
Søren Sandmann Pedersen
779bd67a29 +Wed Aug 20 18:16:29 2008 Søren Sandmann <sandmann@redhat.com>
+
+	* gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_size_changed): Emit the
+	monitors changed signal when the screen size changes.
+


svn path=/trunk/; revision=21172
2008-08-20 22:18:38 +00:00
Erwann Chenede -
a82a25aa23 Bug 547456 - gdk/x11/gdkscreen-x11.c : init_solaris_xinerama doesn't
2008-08-13 Erwann Chenede - <erwann.chenede@sun.com>

  Bug 547456 - gdk/x11/gdkscreen-x11.c : init_solaris_xinerama 
  doesn't compile on Solaris

  * gdk/x11/gdkscreen-x11.c: make init_solaris_xinerama () compile 
  when HAVE_SOLARIS_XINERAMA is defined.



svn path=/trunk/; revision=21107
2008-08-13 13:47:02 +00:00
Michael Natterer
e0d30ee141 define -DGDK_PIXBUF_DISABLE_DEPRECATED in the global CFLAGS.
2008-08-12  Michael Natterer  <mitch@imendio.com>

	* configure.in: define -DGDK_PIXBUF_DISABLE_DEPRECATED in the
	global CFLAGS.

	* gdk-pixbuf/Makefile.am: make the contents gdk-pixbuf-marshal.h
	visible for GDK_PIXBUF_COMPILATION.

	* contrib/gdk-pixbuf-xlib/Makefile.am
	* demos/Makefile.am
	* demos/gtk-demo/Makefile.am
	* gdk-pixbuf/pixops/Makefile.am
	* gdk/Makefile.am
	* gdk/x11/Makefile.am
	* gtk/Makefile.am
	* gtk/tests/Makefile.am
	* gtk/theme-bits/Makefile.am
	* modules/engines/ms-windows/Makefile.am
	* modules/engines/pixbuf/Makefile.am
	* modules/input/Makefile.am
	* perf/Makefile.am
	* tests/Makefile.am: remove -DDGDK_PIXBUF_DISABLE_DEPRECATED here.


svn path=/trunk/; revision=21096
2008-08-12 15:04:55 +00:00
Tor Lillqvist
f4d9ce22f4 Bug 544684 - Win64 issue, window handles are assumed to be 32-bit
2008-08-05  Tor Lillqvist  <tml@novell.com>

	Bug 544684 - Win64 issue, window handles are assumed to be 32-bit

	* gdk/gdkselection.h
	* gdk/gdkselection.c
	* gdk/win32/gdkselection-win32.c
	* gdk/x11/gdkselection-x11.c: Change type of the requestor
	window id parameter of gdk_selection_send_notify_for_display()
	and gdk_selection_send_notify() from guint32 to
	GdkNativeWindow.

	* gdk/win32/gdkselection-win32.c: Add some guchar and char pointer
	casts to get rid of gcc 4.4 warnings. Print GdkAtom values in
	debugging output using the %p format.


svn path=/trunk/; revision=20991
2008-08-04 22:43:57 +00:00
Tor Lillqvist
b1e744b064 Bug 544684 - Win64 issue, window handles are assumed to be 32-bit
2008-08-05  Tor Lillqvist  <tml@novell.com>

	Bug 544684 - Win64 issue, window handles are assumed to be 32-bit

	* gdk/gdkdnd.h
	* gdk/gdkdnd.c
	* gdk/win32/gdkdnd-win32.c
	* gdk/x11/gdkdnd-x11.c: Change return value and type of window id
	from guint32 to GdkNativeWindow for
	gdk_drag_get_protocol_for_display() and
	gdk_drag_get_protocol(). This is not an API break on existing
	platforms, as GdkNativeWindow has been guint32 for them
	already.


svn path=/trunk/; revision=20988
2008-08-04 22:35:16 +00:00