Kristian Rietveld
32731fcb07
quartz: register before/after process all updates
2010-12-22 17:47:04 +01:00
Kristian Rietveld
ab74358b82
quartz: set all methods on window class, not root window class
2010-12-22 17:47:04 +01:00
Kristian Rietveld
552e7be7e5
quartz: set window_type in display_class
2010-12-22 17:47:04 +01:00
Kristian Rietveld
b0ffe16f90
quartz: introduce GdkQuartzWindow (as a subclass of GdkWindow)
2010-12-22 17:47:04 +01:00
Kristian Rietveld
3bc60a8149
quartz: rename GdkQuartzWindow to GdkQuartzNSWindow
2010-12-22 17:47:04 +01:00
Kristian Rietveld
c6fad1d2cb
quartz: fix typo
2010-12-22 17:47:04 +01:00
Kristian Rietveld
c87e878308
quartz: add new files to Makefile.am
2010-12-22 17:47:04 +01:00
Kristian Rietveld
e5695de12b
GdkDisplayManager: register Quartz backend when applicable
2010-12-22 17:47:04 +01:00
Kristian Rietveld
5226ae3ecc
quartz: create gdkdisplaymanager-quartz.h
2010-12-22 17:47:04 +01:00
Kristian Rietveld
f2883fe8eb
quartz: gdkselection-quartz.c: fix typos
2010-12-22 17:47:04 +01:00
Kristian Rietveld
b638515ae0
quartz: re-introduce _gdk_quartz_display_list_devices
2010-12-22 17:47:03 +01:00
Kristian Rietveld
4c663f0474
gdkwindow-quartz: fix typo
2010-12-22 17:47:03 +01:00
Kristian Rietveld
9b4f5a424c
gdk: Fix toplevel makefile to build non-x11 backends again
2010-12-22 17:47:03 +01:00
Kristian Rietveld
6b96c56976
quartz: remove duplicate definition of gdk_flush
2010-12-22 17:47:03 +01:00
Kristian Rietveld
8b4d583cd8
quartz: gdkkeys-quartz.c: remove duplicate function
2010-12-22 17:47:03 +01:00
Kristian Rietveld
3d02a14f4f
quartz: remove duplicate functions from gdkmain-quartz.c
2010-12-22 17:47:03 +01:00
Kristian Rietveld
fbd9fd6a38
quartz: make gdkwindow-quartz.c build again
2010-12-22 17:47:03 +01:00
Kristian Rietveld
c14078f388
quartz: adapt gdkdisplay-quartz.c to new function names
2010-12-22 17:47:03 +01:00
Kristian Rietveld
5f782ed9e7
quartz: add prototype for _gdk_quartz_screen_new()
2010-12-22 17:47:03 +01:00
Kristian Rietveld
1b344ad8e4
quartz: convert GdkVisual
2010-12-22 17:47:02 +01:00
Kristian Rietveld
d024153c96
quartz: Fix screen implementation, rename to GdkQuartzScreen
2010-12-22 17:47:02 +01:00
Kristian Rietveld
cde6dade8f
quartz: Port gdkkeys-quartz.c to new API
2010-12-22 17:47:02 +01:00
Kristian Rietveld
6fe3100f14
quartz: Remove gdkinput code
2010-12-22 17:47:02 +01:00
Kristian Rietveld
e4a0101542
quartz: gdkeventloop-quartz.c: fix
2010-12-22 17:47:02 +01:00
Kristian Rietveld
d0976d9f53
quartz: Fix gdkevents-quartz.c
2010-12-22 17:47:02 +01:00
Kristian Rietveld
b2844cb48b
quartz: Make GdkQuartzDisplay compile
2010-12-22 17:47:02 +01:00
Kristian Rietveld
709b4d4346
quartz: Fix display manager, move over code from gdkmain-quartz.c
2010-12-22 17:47:02 +01:00
Kristian Rietveld
988b8bf96a
quartz: gdkcursor-quartz.h: fix cut-n-paste error
2010-12-22 17:47:02 +01:00
Kristian Rietveld
98b8bf035f
quartz: gdkdevice-core: fix up
2010-12-22 17:47:02 +01:00
Kristian Rietveld
da481666cd
quartz: gdkdevice-core.c: use GdkQuartzCursor
2010-12-22 17:47:01 +01:00
Kristian Rietveld
62273fc08a
quartz: add forgotten file (gdkdnd-quartz.h)
2010-12-22 17:47:01 +01:00
Kristian Rietveld
f4c0c47a1a
quartz: move bits into gdkcursor-quartz.h (private header for now)
2010-12-22 17:47:01 +01:00
Kristian Rietveld
dff3973198
quartz: remove GdkCursorPrivate typedef
2010-12-22 17:47:01 +01:00
Kristian Rietveld
013cbea25f
quartz: Remove API for extension checks
2010-12-22 17:47:01 +01:00
Kristian Rietveld
881ea6e06c
quartz: convert GdkQuartzWindow to new drag context API
2010-12-22 17:47:01 +01:00
Kristian Rietveld
71404825c3
quartz: fix up GdkDragContext conversion
2010-12-22 17:47:01 +01:00
Kristian Rietveld
8cb301762a
Fix typo
2010-12-22 17:47:01 +01:00
Kristian Rietveld
3ace122563
quartz: turn quartz GdkCursor into GObject
2010-12-22 17:47:01 +01:00
Matthias Clasen
bd1ff477ca
Deal with property encoding functions for quartz
2010-12-22 17:47:01 +01:00
Matthias Clasen
de41790470
Implement selection related vfuncs for quartz
2010-12-22 17:47:01 +01:00
Matthias Clasen
762548d303
Implement selection owner vfuncs for quartz
2010-12-22 17:47:01 +01:00
Matthias Clasen
547d674ce5
Implement window property vfuncs for quartz
2010-12-22 17:47:01 +01:00
Matthias Clasen
168b3c13b7
Implement keyval vfuncs for quartz
2010-12-22 17:47:00 +01:00
Matthias Clasen
9ae2dc0deb
Drop gdk_set_locale from quartz
2010-12-22 17:47:00 +01:00
Matthias Clasen
a1b300ecb6
Implement test vfuncs for quartz
2010-12-22 17:47:00 +01:00
Matthias Clasen
6eb2a3520c
Implement atom-related vfuncs for quartz
2010-12-22 17:47:00 +01:00
Matthias Clasen
51f149df5e
Implement get_keymap vfunc for quartz
2010-12-22 17:47:00 +01:00
Matthias Clasen
46352afa6f
Implement create_window_impl vfunc for quartz
2010-12-22 17:47:00 +01:00
Matthias Clasen
57efe15bda
Drop gdk_spawn functions
...
These have been removed since the implementation was just
a straight wrapper around g_spawn.
2010-12-22 17:47:00 +01:00
Matthias Clasen
9dbe3bd316
Drop unimplemented foreign window functions
...
These have been relegated to backend-specific
2010-12-22 17:47:00 +01:00
Matthias Clasen
b2ff02332f
Implement event_data_{copy,free} for quartz
2010-12-22 17:47:00 +01:00
Matthias Clasen
4b92625fe0
Implement notify_startup_complete vfunc for quartz
2010-12-22 17:47:00 +01:00
Matthias Clasen
2f3c7da763
Remove a duplicate doc comment
2010-12-22 17:47:00 +01:00
Matthias Clasen
1a04631707
Implement get_next_serial for quartz
2010-12-22 17:47:00 +01:00
Matthias Clasen
dadbc63f1e
gdk_display_warp_pointer is in the frontend now
2010-12-22 17:46:59 +01:00
Matthias Clasen
a1a0205dad
Implment process_updates_recurse vfunc for quartz
2010-12-22 17:46:59 +01:00
Matthias Clasen
3232be603a
Implement has_pending and queue_events vfuncs for quartz
2010-12-22 17:46:59 +01:00
Matthias Clasen
733c8fc8e7
Derive GdkDisplayManager for quartz
2010-12-22 17:46:59 +01:00
Matthias Clasen
8a9c604b8a
Adapt quartz device code to new ways
...
We will need to rename the Core implementations in X11/Quartz
to not clash, later.
2010-12-22 17:46:59 +01:00
Matthias Clasen
e2fea748d6
Adapt quartz visual code to new ways
...
We may still need a subclass here later, not sure
2010-12-22 17:46:59 +01:00
Matthias Clasen
46e8aadaf8
Rename _gdk_dnd_init
2010-12-22 17:46:59 +01:00
Matthias Clasen
25271f5e9a
Implement dnd vtables for quartz
2010-12-22 17:46:59 +01:00
Matthias Clasen
d2ce9ec3dc
Convert a bunch of visual related calls to use the screen vtable, quartz
2010-12-22 17:46:59 +01:00
Matthias Clasen
41352f24d6
Convert all GdkScreen methods to vtable calls, quartz backend
2010-12-22 17:46:59 +01:00
Matthias Clasen
f43f259d49
Derive GdkKeymap for Quartz
2010-12-22 17:46:59 +01:00
Matthias Clasen
acd99409b8
Make display method vtable calls, quartz backend
2010-12-22 17:46:59 +01:00
Matthias Clasen
064bfceaad
Convert all gdk_window methods to vtable calls in the quartz backend
2010-12-22 17:46:59 +01:00
Matthias Clasen
367211ed7f
Document WINDOWING macros
2010-12-22 01:43:57 -05:00
Matthias Clasen
3973ef760e
Mention GDK_BACKEND in the docs
2010-12-22 01:32:18 -05:00
Matthias Clasen
b824cdd6db
Fix a blunder in grab handling
...
This was causing segfaults which would go away when compiled with
debug options.
2010-12-21 18:42:30 -05:00
Mike Gorse
2a324ae304
Fix inclusion of gdkconfig.h
2010-12-21 18:18:07 -05:00
Matthias Clasen
fcbfa05347
Drop no-longer-existing header from Makefile
2010-12-21 17:36:50 -05:00
Matthias Clasen
3ca69937f4
Don't install headers twice
2010-12-21 16:37:16 -05:00
Matthias Clasen
940d123de5
Add gdk_disable_multidevice to headers
2010-12-21 14:33:56 -05:00
Matthias Clasen
928fd84ebf
Implement some more vfuncs in GdkOffscreenWindow
2010-12-21 14:20:19 -05:00
Matthias Clasen
82fe7594f9
More include shuffling; keep X extension headers to ourselves
2010-12-21 14:17:02 -05:00
Matthias Clasen
f9e876e265
Fix another typo
2010-12-21 12:32:34 -05:00
Matthias Clasen
b3bd184274
Fix a silly typo
2010-12-21 12:19:03 -05:00
Matthias Clasen
106047ffa4
Detangle includes for GdkDeviceManager subclasses
2010-12-21 12:07:10 -05:00
Matthias Clasen
b1aaa10b6a
Detangle includes for device subclasses
2010-12-21 12:07:10 -05:00
Matthias Clasen
e5090396bf
Forgotten file
2010-12-21 12:07:10 -05:00
Matthias Clasen
bd36374413
Rename GdkAppLaunchContextX11 to GdkX11AppLaunchContext
2010-12-21 12:07:10 -05:00
Matthias Clasen
3fb8c3415b
Rename GdkDragContextX11 to GdkX11DragContext
2010-12-21 12:07:09 -05:00
Matthias Clasen
fdfabea958
Don't export gdk_x11_cursor_finalize
2010-12-21 12:07:09 -05:00
Matthias Clasen
71a515ef17
Get abicheck to almost pass again
2010-12-21 12:07:09 -05:00
Matthias Clasen
b4802e3042
Rename x11-specific GdkDevice[Manager] implementations
...
Make them all fit in the gdk_x11_ prefix, and make the
get_type functions and standard macros available in headers.
2010-12-21 12:07:09 -05:00
Matthias Clasen
5cddc7ccbb
Rename GdkDevice[Manager]Core to GdkX11Device[Manager]Core
...
This is mainly to avoid clash with the classes of the same
name in the quartz backend.
2010-12-21 12:07:09 -05:00
Matthias Clasen
e96c193d06
Rename GdkKeymapX11 to GdkX11Keymap
...
And add a gdkx11keys.h header file.
2010-12-21 12:07:09 -05:00
Matthias Clasen
146fd989d6
Rename GdkDisplayManagerX11 to GdkX11DisplayManager
...
And add a gdkx11displaymanager.h header file.
2010-12-21 12:07:09 -05:00
Benjamin Otte
36893a9ef8
gdk: Make GdkWindow abstract
...
This way backend implementors get an error if they don't set
display_class->window_type to their subclass. And that's exactly what we
want.
2010-12-21 12:07:09 -05:00
Benjamin Otte
dcb03b1085
gdk: Use G_DEFINE_TYPE for GdkWindow
2010-12-21 12:07:08 -05:00
Benjamin Otte
19699989e5
x11: Add a GdkX11Window class for X11 windows
2010-12-21 12:07:08 -05:00
Benjamin Otte
af7afbbe06
gdk: Allow display subclasses to override the type used for windows
...
We want to have different window types for different displays, so we can
write code like this:
#if GDK_WINDOWING_X11
if (GDK_IS_X11_WINDOW (window))
{
/* do x11 stuff */
}
else
#endif
#if GDK_WINDOWING_WAYLAND
if (GDK_IS_WAYLAND_WINDOW (window))
{
/* do wayland stuff */
}
else
#endif
{
/* do stuff for unsupported system */
}
This requires different GdkWindow types and we currently don't have
that, as only the GdkWindowImpl differs. With this method, every backend
defines a custom type that's just a simple subclass of GdkWindow. This
way GdkWindow behaves like all the other types (visuals, screens,
displays) and we can write code like the above.
2010-12-21 12:07:08 -05:00
Benjamin Otte
3036922b3d
gdk: Create windows via _gdk_display_create_window()
...
THe use of this function will become visible in the next commits. But
wrapping g_object_new() is a generally a good idea anyway.
2010-12-21 12:07:08 -05:00
Benjamin Otte
503087dfc9
x11: Export GdkX11Screen
2010-12-21 12:07:08 -05:00
Benjamin Otte
a8b69df376
x11: Rename GdkScreenX11 to GdkX11Screen
2010-12-21 12:07:08 -05:00
Benjamin Otte
b154d3abf6
x11: Export GdkX11Visual
2010-12-21 12:07:08 -05:00
Benjamin Otte
d185987ebd
x11: Rename GdkVisualX11 to GdkX11Visual
2010-12-21 12:07:08 -05:00
Benjamin Otte
86e0a9aef7
x11: Have a proper GdkVisualX11Class struct
2010-12-21 12:07:08 -05:00
Benjamin Otte
21d8160c57
x11: Export GdkX11Cursor
2010-12-21 12:07:08 -05:00
Benjamin Otte
4848bf2719
x11: typedef GdkX11Display to GdkDisplay
...
This is for compatibility reasons. We want to change APIs that operate
on X11 objects to take the X11 objects as arguments. However, this would
break a lot of APIs and we'd like to avoid this, so we play this little
trick (we will use the same trick for the other X11 objects). Also,
gobject-introspection and other bindings can correctly attach the
functions to the correct types as it is the same scheme that GDK2 used
for pixmaps, windows and drawables.
For GTK 4, we will remove this trick, so apps should properly cast their
objects right now.
Unfortunately, I don't think there is a way to use
GDK_DISABLE_DEPRECATED or similar macros to check for proper type casts
while compiling ensure compatibility with future GDK versions. I'm free
to consider them though.
2010-12-21 12:07:07 -05:00
Benjamin Otte
eba4529246
x11: Export GdkX11Display
2010-12-21 12:07:07 -05:00
Benjamin Otte
4db086da4b
x11: Rename GdkDisplayX11 to GdkX11Display
...
Also rename all the macros etc.
2010-12-21 12:07:07 -05:00
Benjamin Otte
8e2240f699
x11: Rename GdkDisplayX11 to GdkX11Display
2010-12-21 12:07:07 -05:00
Benjamin Otte
85bd61778f
API: gdk: GDK_DISPLAY_OBJECT() => GDK_DISPLAY()
...
GDK_DISPLAY_OBJECT is now deprecated. No need to keep failures from
gtk1 around.
2010-12-21 12:07:07 -05:00
Benjamin Otte
04d1459fca
x11: Move remaining APIs into gdkx11utils.h
...
Now gdkx.h is a clean header equivalent to gdk.h.
2010-12-21 12:07:07 -05:00
Benjamin Otte
dd177b5201
x11: Move atom API into gdkx11property.h
2010-12-21 12:07:07 -05:00
Benjamin Otte
ebe46e6f9d
x11: Move selection-specific API into gdkx11selection.h
2010-12-21 12:07:07 -05:00
Benjamin Otte
7949073dd5
x11: Move display-specific APIs into gdkx11display.h
2010-12-21 12:07:06 -05:00
Benjamin Otte
6dfa90f57c
x11: Move screen-specific API into gdkx11screen.h
2010-12-21 12:07:06 -05:00
Benjamin Otte
0ca6a7ab20
x11: Move visual-specific API into gdkx11visual.h
2010-12-21 12:07:06 -05:00
Benjamin Otte
55f3451754
x11: Move cursor API into gdkx11cursor.h
2010-12-21 12:07:06 -05:00
Benjamin Otte
124cf96850
x11: Split out public window API into gdkx11window.h
2010-12-21 12:07:06 -05:00
Benjamin Otte
66f7c3a562
API: gdk: gdk_display_warp_device() => gdk_device_warp()
...
warping devices has nothing to do with displays, so putting it there
seems weird.
2010-12-21 12:07:06 -05:00
Benjamin Otte
7a33592231
gdk: Move gdk_cursor_get_image() to the base class
...
.. and make it call a vfunc on the cursor
2010-12-21 12:07:06 -05:00
Benjamin Otte
60dc856daf
x11: Remove duplicated docs
...
They're in gdk/gdkdisplay.c now.
2010-12-21 12:07:06 -05:00
Benjamin Otte
095d1905a9
x11: Don't keep the display around anymore
...
Use gdk_cursor_get_display() instead.
2010-12-21 12:07:06 -05:00
Benjamin Otte
4793bd3399
gdk: Move gdk_cursor_get_display() out of the backends
...
Now that we store the display inside the cursor, that change is obvious.
2010-12-21 12:07:05 -05:00
Benjamin Otte
7a14b30ea3
gdk: Make display a property of GdkCursor
2010-12-21 12:07:05 -05:00
Benjamin Otte
28b2d7e5da
gdk: Make cursor-type a property of the cursor
2010-12-21 12:07:05 -05:00
Benjamin Otte
3e068e921f
API: gdk: Deprecate gdk_cursor_ref() and gdk_cursor_unref()
...
Now that GdkCursor is a GObject, it doesn't need custom refcount
handling anymore.
2010-12-21 12:07:05 -05:00
Benjamin Otte
a9637f05b6
gdk: Use g_object_(un)ref instead of gdk_cursor_(un)ref
2010-12-21 12:07:05 -05:00
Benjamin Otte
768b425ce6
x11: Use g_object_(un)ref instead of gdk_cursor_(un)ref
2010-12-21 12:07:04 -05:00
Benjamin Otte
0b4913a166
gdk: Make GdkCursor a GObject
...
Also port the X11 implementation. Win32 and Quartz need to be ported
still.
2010-12-21 12:07:04 -05:00
Benjamin Otte
66e3894539
gdk: Move GdkCursor definition into a private header
2010-12-21 12:07:04 -05:00
Benjamin Otte
2eef91ad93
x11: Move GdkCursorPrivate into the C file
2010-12-21 12:07:04 -05:00
Benjamin Otte
8e3afc6e5a
x11: Use public API to access cursor's xcursor
2010-12-21 12:07:04 -05:00
Matthias Clasen
3d5d558393
Downgrade some Since tags
2010-12-21 12:07:04 -05:00
Matthias Clasen
2650328ea8
Add win32 implementation for foreign window functions
2010-12-21 12:07:04 -05:00
Matthias Clasen
58529e69ec
Drop sm_client_id implementation for Quartz
2010-12-21 12:07:04 -05:00
Matthias Clasen
10e23de49e
Drop sm_client_id win32 implementation
2010-12-21 12:07:04 -05:00
Matthias Clasen
00e2b949eb
Reinstate the correct field value
2010-12-21 12:07:03 -05:00
Matthias Clasen
572bb20011
Deal with property encoding functions
...
Move everything dealing with compound text to be X11 specific
Only gdk_text_property_to_utf8_list and gdk_utf8_to_string_target
are kept across backends, so add vfuncs for these.
Also, remove the non-multihead-safe variants of all these.
2010-12-21 12:07:03 -05:00
Matthias Clasen
05497c799a
Add a vfunc for gdk_selection_convert
2010-12-21 12:07:03 -05:00
Matthias Clasen
95868ef00b
Add a vfunc for gdk_selection_property_get
2010-12-21 12:07:03 -05:00
Matthias Clasen
625b8305e9
Add a vfunc for gdk_selection_send_notify_for_display
2010-12-21 12:07:03 -05:00
Matthias Clasen
7e22cf7e50
Rename some private x11 backend functions to _gdk_x11
2010-12-21 12:07:03 -05:00
Matthias Clasen
cc03a6df79
Add vfuncs for get/set_selection_owner
2010-12-21 12:07:03 -05:00
Matthias Clasen
519f09f7f4
Add vfuncs for keyval and window property functions
...
The keyval functions should really be generic, and the window
property api should be completely revisited, but for now this
will allow us to proceed.
2010-12-21 12:07:03 -05:00
Matthias Clasen
fdabc9585d
Drop g[dt]k_set_locale
...
These functions were essentially just calling setlocale anyway.
The X11 version was also setting a gdk_use_mb variable that
is not used anywhere.
2010-12-21 12:07:02 -05:00
Matthias Clasen
afa0ebf36b
Add vfuncs for gdk_test apis
2010-12-21 12:07:02 -05:00
Matthias Clasen
28abd0c75f
Add vfuncs for atoms
2010-12-21 12:07:02 -05:00
Matthias Clasen
62e9bb06a0
Add a vfunc for gdk_keymap_get_for_display
2010-12-21 12:07:02 -05:00
Matthias Clasen
a97b1891b3
Rename private keymap symbols to _gdk_x11_keymap...
2010-12-21 12:07:02 -05:00
Matthias Clasen
1d5afe4880
Rename the _gdk_xid_table functions
2010-12-21 12:07:02 -05:00
Matthias Clasen
55e1031e84
Remove gdk_net_wm_supports
...
This function is totally misnamed, only operates on the default
screen, and has a perfectly fine replacement in
gdk_x11_screen_supports_net_wm_hint.
2010-12-21 12:07:02 -05:00
Matthias Clasen
902fd60a86
Remove the --sync commandline option
...
Remove the --sync option and remove the possibility of backend-specific
commandline options altogether. --sync is being replaced by
a GDK_SYNCHRONIZE environment variable.
2010-12-21 12:07:02 -05:00
Matthias Clasen
b938e71e1d
Remove unused _gdk_use_xshm global
2010-12-21 12:07:01 -05:00
Matthias Clasen
021f595a38
Rename _gdk_window_move_resize_child
...
Rename _gdk_window_move_resize_child and _gdk_window_process_expose
to _gdk_x11.
2010-12-21 12:07:01 -05:00
Matthias Clasen
214342eac5
Clean up gdkx.h a bit
...
Moving the direct-access redefinitions of various macros
to gdkprivate-x11.h and use that header throughout in x11/.
Also remove a workaround for a long-fixed X server bug.
2010-12-21 12:07:01 -05:00