Commit Graph

1037 Commits

Author SHA1 Message Date
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
Matthias Clasen
a8700de468 Support GEmblemedIcon
svn path=/trunk/; revision=20951
2008-08-03 19:28:05 +00:00
Matthias Clasen
4c7d351053 Bug 544265 – GDK assumes XFIXES extension
2008-07-23  Matthias Clasen  <mclasen@redhat.com>

        Bug 544265 – GDK assumes XFIXES extension

        * gdk/x11/gdkcursor-x11.c (_gdk_x11_cursor_update_theme):
        Only call XFixes functions if the server has the extension.
        Reported by Ian Turner.

svn path=/trunk/; revision=20901
2008-07-24 03:38:08 +00:00
Frederic Crozat
db7915ec51 Don't use RandR 1.2 if driver is detected as randr12_compat (ie X driver
2008-07-22  Frederic Crozat  <fcrozat@mandriva.com>

        * gdk/x11/gdkscreen-x11.c: Don't use RandR 1.2
        if driver is detected as randr12_compat (ie X driver
        is not RandR 1.2 compliant). Fixes multihead with
        such drivers. Bug #543317.


svn path=/trunk/; revision=20893
2008-07-22 17:41:39 +00:00
Matthias Clasen
486d65659f Bug 493008 – gdk_screen_get_window_stack is not 64-bit-compatible
2008-07-06  Matthias Clasen  <mclasen@redhat.com>

        Bug 493008 – gdk_screen_get_window_stack is not 64-bit-compatible

        * gdk/x11/gdkscreen-x11.c (gdk_screen_get_window_stack): Fix
        64-bit brokenness. Reported by Christian Hammond.


svn path=/trunk/; revision=20788
2008-07-06 06:05:02 +00:00
Matthias Clasen
a1b44ad8cf Some GDK doc additions
svn path=/trunk/; revision=20770
2008-07-04 21:52:54 +00:00
Cody Russell
57223c9a05 Revert name change
svn path=/trunk/; revision=20724
2008-07-01 22:57:50 +00:00
Matthias Clasen
44e2afaadb Add event sound settings. Patch by Lennart Pöttering.
* gdk/x11/gdksettings.c:
        * gtk/gtksettings.c: Add event sound settings.
        Patch by Lennart Pöttering.


svn path=/trunk/; revision=20717
2008-07-01 06:22:04 +00:00
Cody Russell
fce9c8b7d4 Practically everything changed.
2008-06-30  Cody Russell  <bratsche@gnome.org>

        * Practically everything changed.

        Change	all references	of GIMP	Toolkit	(and variations	of it)
        to GTK+	Toolkit, showing no mercy at all to our	beloved
	ancestry. (#540529)


svn path=/trunk/; revision=20709
2008-06-30 23:01:56 +00:00
Michael Natterer
971023d922 Some unrelated cleanups found while reviewing the offscreen window patch:
2008-06-30  Michael Natterer  <mitch@imendio.com>

	Some unrelated cleanups found while reviewing
	the offscreen window patch:

	* gdk/gdkwindow.c: add missing Since: 2.14 to the redirection
	functions, fix some function header indentation, update
	documentation of redirect_to_drawable().

	* gdk/x11/gdkwindow-x11.c
	* gdk/x11/gdkpixmap-x11.c: fix function header
	formatting/indentation.

	* gtk/gtkwidget.c: use I_() on "damage_event".


svn path=/trunk/; revision=20708
2008-06-30 12:15:29 +00:00
Emmanuele Bassi
e27632cd6d Abstract some GdkWindow API into an interface that the backends must
2008-06-27  Emmanuele Bassi  <ebassi@gnome.org>

	Abstract some GdkWindow API into an interface that the backends
	must implement. (based on a patch by Alex Larsson)

	* gdk/Makefile.am: Add gdkwindowimpl.[ch]

	* gdk/gdk.symbols: Move symbols around.

	* gdk/gdkinternals.h:
	* gdk/gdkwindowimpl.[ch]: Move some of the GdkWindow API we require
	from the backends to a GInterface that the backends should implement
	instead.

	* gdk/gdkwindow.c: Provide some of the GdkWindow public API as a
	wrapper call around the GdkWindowImpl interface vtable.

	* gdk/x11/gdkevents-x11.c:
	* gdk/x11/gdkgeometry-x11.c:
	* gdk/x11/gdkprivate-x11.h:
	* gdk/x11/gdkwindow-x11.c:
	* gdk/x11/gdkwindow-x11.h: Update the X11 backend to implement
	the GdkWindowImpl interface.

svn path=/trunk/; revision=20695
2008-06-27 14:27:44 +00:00
Johan Dahlin
d97cdbdf53 Include "config.h" instead of <config.h> Command used: find -name
2008-06-21  Johan Dahlin  <jdahlin@async.com.br>

    * *.[ch]: Include "config.h" instead of <config.h>
    Command used:
    find -name \*.[ch]|xargs perl -p -i -e 's/^#include <config.h>/#include "config.h"/g'
    Rubberstamped by Mitch and Tim


svn path=/trunk/; revision=20669
2008-06-22 14:28:52 +00:00
Michael Natterer
67c6c28fe0 deprecate GdkDestroyNotify.
2008-06-18  Michael Natterer  <mitch@imendio.com>

	* gdk/gdk.h: deprecate GdkDestroyNotify.

	* gdk/gdkevents.c
	* gdk/gdktypes.h
	* gdk/x11/gdkevents-x11.c
	* gtk/gtkmain.c: s/GdkDestroyNotify/GDestroyNotify/g.


svn path=/trunk/; revision=20449
2008-06-18 09:39:24 +00:00
Matthias Clasen
080253c257 Protect against XKB being stupid. Reported by Pedro Villavicencio.
* gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): Protect
        against XKB being stupid. Reported by Pedro Villavicencio.



svn path=/trunk/; revision=20413
2008-06-17 02:11:47 +00:00
Matthias Clasen
d06e3a6a62 Return the right coordinates
svn path=/trunk/; revision=20325
2008-06-06 20:57:50 +00:00
Behdad Esfahbod
74b8297ee3 Bug 536185 – monitor font configuration
2008-06-06  Behdad Esfahbod  <behdad@gnome.org>

        Bug 536185 – monitor font configuration

        * configure.in:
        * gdk/x11/gdksettings.c:
        * gtk/gtksettings.c (gtk_settings_class_init),
        (gtk_settings_notify), (settings_update_fontconfig):
        Monitor xsettings key Fontconfig/Timestamp and upon change,
        reread fontconfig configuration, clear Pango's caches, and
        redraw all widgets.


svn path=/trunk/; revision=20324
2008-06-06 16:39:37 +00:00
Michael Natterer
791ac426d7 define __GDK_H_INSIDE__ around including all other headers.
2008-05-28  Michael Natterer  <mitch@imendio.com>

	* gdk/gdk.h: define __GDK_H_INSIDE__ around including all other
	headers.

	* gdk/gdkenumtypes.h.template
	* gdk/gdk*.h: add single-include guards that #error out if
	GTK_DISABLE_SINGLE_INCLUDES is defined and any of these files is
	included individually. Also removed some redundant includes and
	did some tiny trailing whitespace removal that's not worth to
	commit separately.

	* gdk/gdkprivate.h: include <gdk/gdk.h> instead of individual
	files.

	* gdk/win32/gdkwin32.h
	* gdk/x11/gdkx.h: only include <gdk/gdkprivate.h> and remove all
	other includes.


svn path=/trunk/; revision=20217
2008-05-28 14:01:57 +00:00
Cody Russell
4f84a5f292 Bug 526635 - _gdk_window_get_toplevel handles FOREIGN windows
2008-05-25  Cody Russell  <bratsche@gnome.org>

        Bug 526635 - _gdk_window_get_toplevel handles FOREIGN windows

        * gdk/x11/gdkwindow-x11.c (_gdk_window_get_toplevel): Check
        !WINDOW_IS_TOPLEVEL instead of checking for GDK_WINDOW_CHILD,
        so that we also take into account for foreign windows.
        Report and patch by Nathaniel Smith.


svn path=/trunk/; revision=20166
2008-05-25 23:27:34 +00:00
Cody Russell
a0e6b36478 Bug 525461 - Don't invalidate under an input-only child
2008-05-25  Cody Russell  <bratsche@gnome.org>

        Bug 525461 - Don't invalidate under an input-only child

        * gdk/x11/gdkgeometry-x11.c (_gdk_window_move_resize_child):
        Check that the window is not input-only before invalidating.
        Report and patch by Owen Taylor.


svn path=/trunk/; revision=20165
2008-05-25 23:21:40 +00:00
Cody Russell
4a5da1a18d Bug 524110 - Gdk should not assume reparenting WMs when retrieving window
2008-05-25  Cody Russell  <bratsche@gnome.org>

        Bug 524110 - Gdk should	not assume reparenting	WMs when retrieving
        window	frame extents

        * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents):
        Use _NET_FRAME_EXTENTS,	if available. Patch by Danny Baumann.


svn path=/trunk/; revision=20164
2008-05-25 23:14:39 +00:00