Benjamin Otte
65fcff87b2
gdk: Remove ability to request selection notifications
...
Without selections, that's kinda pointless.
2017-12-14 04:20:48 +01:00
Benjamin Otte
f2bb2024c8
gdk: Remove properties
...
They are not used anymore.
Gone with them are PropertyNotify events.
2017-12-14 03:05:34 +01:00
Benjamin Otte
a4b42f0b73
gdk: Remove selection defines
...
And with it, remove the selections section from the docs.
So selections are gone for good now.
2017-12-14 03:05:34 +01:00
Benjamin Otte
54f9aef0d4
gdk: Remove gdk_selection_convert()
...
It's not used anymore.
2017-12-14 00:44:26 +01:00
Benjamin Otte
4042d5f242
gdk: Remove ability to own a selection
...
With this, the GDK_EVENT_SELECTION_REQUEST and GDK_EVENT_SELECTION_CLEAR
and the associated GtkWidget signals are gone, too.
2017-12-13 23:39:02 +01:00
Benjamin Otte
b66052f3ce
gdk: Remove gdk_selection_add_targets()
...
It's not needed anymore, now that we can look at the content provider's
formats.
Alose remove all the API in GTK that was used to set it.
2017-12-13 19:27:51 +01:00
Benjamin Otte
218efa62ef
dnd: Pass dx/dy instead of x_root/y_root
...
This way, we don't need root coordinates when computing the dnd start
position.
2017-12-11 01:02:31 +01:00
Benjamin Otte
0d31eb8670
dnd: Add gdk_drag_context_get_display()
...
Also turn it into a readable, construct-only property.
Every GDK object should have this. (Apart from GdkDisplay, obviously.)
2017-12-10 01:09:14 +01:00
Matthias Clasen
1471c64fb2
quartz: Stop deriving from GdkDeviceManager
...
We can just derive from GObject.
2017-11-25 11:04:15 -05:00
Matthias Clasen
fd958939be
Drop the GdkDeviceManager::display property
...
Move this to the backends, and stop deriving
from GdkDeviceManager.
2017-11-25 11:04:15 -05:00
Matthias Clasen
0ec491ea9d
Drop the get_client_pointer vfunc
...
There is no api using this anymore.
2017-11-25 11:04:15 -05:00
Matthias Clasen
b6a634fe38
Drop the list_devices vfunc
...
We no longer have api that uses this.
2017-11-25 11:04:15 -05:00
Matthias Clasen
95ae688072
quartz: Stop using display->device_manager
...
We can keep the device manager in the backend.
2017-11-25 11:04:14 -05:00
Matthias Clasen
0b8c88f7d6
quartz: Remove remaining uses of GdkScreen
2017-11-17 13:47:15 -05:00
Matthias Clasen
a62e75964c
quartz: Make GdkQuartzScreen a plain object
...
No need to derive this from GdkScreen anymore.
2017-11-17 13:47:15 -05:00
Matthias Clasen
77f921f5de
quartz: Drop an unused include
...
No GdkScreen apis are used in here.
2017-11-17 13:47:15 -05:00
Matthias Clasen
c7b5cb8e8e
quartz: Avoid a screen argument
...
The screen is never used in _gdk_quartz_screen_get_setting,
so drop it.
2017-11-17 13:47:15 -05:00
Matthias Clasen
fc0f7dc217
Remove gdkprivate.h
...
This is one-too-many private headers. Move the few
declarations here to gdkinternals.h.
2017-11-17 00:34:04 -05:00
Matthias Clasen
3f0d42f74b
Stop including gdkmain.h
...
It is empty now.
2017-11-17 00:16:09 -05:00
Benjamin Otte
4c4e914806
gdk: Replace GDK_NONE with NULL
2017-11-15 19:07:17 +01:00
Benjamin Otte
fb94f79094
selection: Remove #ifdef WAYLAND
...
Instead, turn the functions into backend API:
gdk_broadway_display_add_selection_targets()
gdk_broadway_display_clear_selection_targets()
Remove the old per-backend functions, too.
2017-11-15 19:07:16 +01:00
Matthias Clasen
20fab69c38
Drop gdk_display_get_root_window
...
This is no longer used.
2017-11-05 21:45:51 -05:00
Matthias Clasen
e980f68f5b
quartz: Drop another use of gdk_display_get_toplevel_windows
...
This one was forgotten in the previous commit.
2017-11-05 18:30:03 -05:00
Matthias Clasen
4f701c71f1
quartz: Drop use of gdk_display_get_toplevel_windows
...
We can use the newly added helper function for this.
2017-11-05 18:28:27 -05:00
Matthias Clasen
c44e693b26
quartz: Add a function to get all toplevels
...
This will let us avoid frontend API for this.
2017-11-05 18:27:49 -05:00
Matthias Clasen
807cac2c79
quartz: Drop mentions of foreign windows
...
The quartz backend never creates foreign windows,
so no need to check for window type.
2017-11-05 12:09:06 -05:00
Benjamin Otte
4e7a056777
gdk: Cursors are created generically
...
There are no longer subclasses for cursors now.
2017-11-04 00:07:13 +01:00
Benjamin Otte
81c2bebaca
gdk: Remove ability to download a cursor
2017-11-04 00:07:13 +01:00
Benjamin Otte
9c98adcd15
gdk: Remove GdkWindow.set_device_cursor() vfunc
...
That one calls through to GdkDevice.set_window_cursor(), so let's just
use that one.
2017-11-02 12:42:58 +01:00
Matthias Clasen
2a60928157
t Remove gdk_cursor_new_for_display
...
The preferred api to create cursors is by name, and the
GdkCursorType enumeration can directly trace its ancestry
to the horrible X cursor font. So lets stop using it.
2017-11-01 21:49:05 -04:00
Matthias Clasen
3b7763eebc
Drop gdk_screen_get_display
...
This is not longer used.
2017-11-01 20:57:46 -04:00
Matthias Clasen
b44ef37a21
quartz: Stop using gdk_screen_get_display
...
We can just use the field directly.
2017-11-01 20:54:22 -04:00
Matthias Clasen
7f0b5297c6
Drop gdk_display_get_default_screen
...
Also remove the backend implementations.
This api is no longer used.
2017-11-01 19:44:28 -04:00
Matthias Clasen
03ae29b7c5
quartz: Stop using gdk_screen_get_default
...
This api is going away.
2017-11-01 19:44:28 -04:00
Matthias Clasen
44a173824e
quartz: Stop using gdk_display_get_default_screen
...
The GdkScreen api is going away. The quartz screen is
a singleton anyway.
2017-11-01 19:44:28 -04:00
Matthias Clasen
727aa6cb08
Drop the monitors-changed signal
...
We are not using it anymore.
2017-10-31 22:42:33 -04:00
Matthias Clasen
524fcbecfd
Drop gdk_screen_get_root_window
...
This function is no longer used.
2017-10-31 21:28:28 -04:00
Matthias Clasen
8f129ddd13
Use gdk_display_get_toplevel_windows
...
This replaces the GdkScreen api of the same name.
2017-10-31 20:47:57 -04:00
Matthias Clasen
5cb5bdf1bc
Add gdk_display_get_toplevel_windows
...
This is replacing the corresponding GdkScreen api, which
is going away. To implement this, we need to add a
get_root_window vfunc to GdkDisplay.
2017-10-31 20:29:48 -04:00
Matthias Clasen
2d6bd1ae6d
Drop gdk_window_get_screen
...
This includes removing the GdkScreen argument from the
create_window_impl display vfunc.
2017-10-31 17:25:01 -04:00
Matthias Clasen
a3cffa5072
Drop GdkScreen from GdkDevice apis
...
Returning the screen does not add anything here and
GdkScreen is going away.
2017-10-31 12:30:38 -04:00
Matthias Clasen
f8cad19829
dnd: Drop GdkScreen from apis
...
Drop the screen argument from gdk_dnd_find_window_for_screen
and rename the function to gdk_dnd_find_window. The screen
argument does not add anything here since the drag context
is already tied to the display. Update all backends, and
update all callers.
2017-10-31 10:18:10 -04:00
Matthias Clasen
dea277520f
quartz: Don't set the GdkScreen get_setting vfunc
...
We are not using it anymore.
2017-10-30 16:51:59 -04:00
Matthias Clasen
c63c672ba8
quartz: Implement the GdkDisplay get_setting vfunc
...
Just call the GdkScreen vfunc.
2017-10-30 16:42:49 -04:00
Matthias Clasen
627c0ae549
quartz: Stop emitting setting events
...
Not needed anymore.
2017-10-30 09:49:02 -04:00
Matthias Clasen
36a94b49c7
quartz: Emit GdkDisplay::setting-changed
...
We still generate the event too.
That will be removed in a future commit.
2017-10-30 09:27:59 -04:00
Alexander Larsson
d3fc937b4d
GtkWindow/GdkWindow: Finish converting icons to surfaces
...
There were some parts left, for instance gdk_window_set_icon_list.
2017-10-23 13:45:25 +02:00
Emmanuele Bassi
391d1a04ec
Drop Autotools build
...
We are officially switching to Meson as the default build system for
GTK+.
2017-08-14 22:23:09 +01:00
Matthias Clasen
9859f8f69f
Allow passing a NULL window to gdk_device_query_state
...
Interpret NULL as "root window" here - we only have one
screen nowadays, so there is no choice involved, and this
will let us avoid dealing with the root window in the
fontend code.
2017-08-11 15:45:24 -04:00
Daniel Boles
406db15066
gdk/gtk: Fix more AVAILABLE_IN annotations to 3_92
2017-05-28 14:20:19 +01:00
Tim-Philipp Müller
e1dc4f7ae1
meson: gdk: fix static library names
...
Fix double lib prefix in filenames (liblibgdk-xyz.a)
2017-05-03 15:10:56 +01:00
Tim-Philipp Müller
c7d3fe5e26
meson: gdk: add quartz backend skeleton
...
Won't even build yet, just put basic bits in place.
2017-05-03 15:10:54 +01:00
John Ralls
139b669196
Replace NSScreen:userSpaceScaleFactor, deprecated since MacOS X 10.7.
...
userSpaceScaleFactor is not compatible with high-resolution (aka HiDPI)
displays.
2017-04-11 16:10:51 -07:00
Tom Schoonjans
98d9a05a0c
quartz: code cleanup
...
removed unused static functions, unused class variables and a large
comment section that was copied over from gdkdisplay-x11.h
https://bugzilla.gnome.org/show_bug.cgi?id=779184
2017-04-01 16:45:37 -04:00
Tom Schoonjans
758d26738a
quartz: add support for Gtk+4
...
The addition of GdkMonitor broke the quartz backend. This patch restores
that support by adding a new class GdkQuartzMonitor, and by modifying
the existing classes GdkQuartzDisplay and GdkQuartzScreen where
necessary.
It should be noted that this patch is essentially a refactor as no new
functionality that will impact the user has been added or removed.
https://bugzilla.gnome.org/show_bug.cgi?id=779184
2017-04-01 16:45:37 -04:00
Christoph Reiter
b843efcb79
quartz: fix build for <10.12
...
The style mask type was changed from NSUInteger to NSWindowStyleMask.
Use NSUInteger so it also works on older macOS.
https://bugzilla.gnome.org/show_bug.cgi?id=780019
2017-03-15 07:18:48 -04:00
Matthias Clasen
e02924a77d
quartz: Fix another typo
2017-03-10 07:26:05 -05:00
Matthias Clasen
0cb0542673
quartz: Fix the build
...
A ; was left out inadvertently.
2017-03-10 07:12:12 -05:00
Matthias Clasen
8531ee4c88
Quartz: Implement gdk_window_set_functions
...
This is useful, and easy to implement.
2017-03-05 22:52:03 -05:00
Matthias Clasen
015ff46633
Convince OS X to fully fullscreen windows
...
We typically want to have the full screen given to
the content, not the aspect-ratio preserving behavior
that newer OS X has.
https://bugzilla.gnome.org/show_bug.cgi?id=779383
2017-03-02 08:10:39 -05:00
Matthias Clasen
6278d003b4
Implement backdrop for Quartz
...
We need to send window state change events to make GTK+
pick up on focus changed for backdrop.
https://bugzilla.gnome.org/show_bug.cgi?id=779392
2017-03-01 11:47:18 -05:00
Matthias Clasen
169e2d8d92
quartz: Let CSD windows be fullscreen
...
I've found that I need this patch to make it possible for
windows with headerbar to be made fullscreen on OS X.
https://bugzilla.gnome.org/show_bug.cgi?id=779383
2017-03-01 11:46:31 -05:00
Benjamin Otte
7ade6e3f46
gdk: Remove testing functions
...
They were unused and unimplemented.
2017-01-08 03:46:30 +01:00
Alexander Larsson
330c7feaa2
gdk: Drop gdk_window_reparent
...
We're not currently using this, and dropping it allows us to loose
a bunch of code which leads us towards the goal of having GdkWindow
only for toplevels (and reparenting makes not sense for toplevels).
2016-12-16 12:35:03 +01:00
Alexander Larsson
5bf28a3869
gdk: Drop support for native (and thus foreign) subwindows
...
We can't really support these on e.g. wayland anyway, and we're trying
to get rid of subwindow at totally in the long term, so lets drop this.
It allows us to drop a lot of complexity.
2016-12-16 12:28:44 +01:00
Benjamin Otte
efd04b47aa
gdk: Make GdkDrawingContext not per-backend
...
No backend is using it, and we can put the backend-specific drawing code
into GdkGLContext.
2016-11-30 15:52:22 +01:00
Benjamin Otte
2a27b7ecc6
API: Remove gdk_window_process_all_updates()
...
It's completely unused since we have a frame clock.
2016-11-23 19:10:34 +01:00
Benjamin Otte
cb18752f94
gdk: Make each backend have a custom GdkDrawingContext subclass
2016-11-20 07:19:52 +01:00
Benjamin Otte
d2c26c471c
gdk: Remove attributes_mask from gdk_window_new()
...
The only remaining values were always treated as 0, so we just hardcode
them to 0.
2016-11-07 01:33:43 +01:00
Benjamin Otte
7a6cab14eb
gdkwindow: Remove GdkWindowAttr.type_hint
...
Instead, let the callers call gdk_window_set_type_hint(). Which is
surprsingly what every backend did.
2016-11-06 16:22:21 +01:00
John Ralls
2c642dd654
Update gdk-quartz functions for the demise of GdkDeviceManager.
2016-11-05 15:08:59 -07:00
John Ralls
2b53583e80
Remove screen height and width functions from gdk-quartz.
...
Since they were previously deleted from gdk.
2016-11-05 15:08:59 -07:00
John Ralls
a45f96e9cb
Update GdkOSXVersion enum with the last 4 MacOS releases.
2016-11-05 15:08:59 -07:00
Benjamin Otte
9707f4d3b3
API: gdk: Remove title from gdk_window_new()
...
Use gdk_window_set_title() afterwards instead.
2016-11-05 03:32:27 +01:00
Benjamin Otte
33e7a7898f
API: gdk: Remove gdk_window_set_override_redirect()
...
When you want an override-redirect window, you create it that way.
Changing that behavior is not supported anywhere (but on X of course).
2016-11-05 03:32:27 +01:00
Benjamin Otte
31a0933fe9
quartz: Remove all mentions of visuals
2016-11-04 00:10:43 +01:00
Benjamin Otte
4585af5719
gdk: Remove visual APIs from GdkScreen
...
gdk_screen_list_visuals(), gdk_screen_get_system_visual() and
gdk_screen_get_rgba_visual() are gone now.
2016-11-04 00:02:37 +01:00
Benjamin Otte
d249e77bcb
API: screen: Remove gdk_screen_is_composited()
...
Switch code to use gdk_display_is_composited() instead.
The new code also doesn't use a vfunc to query the property but rather
requires the backend to call set_composited()/set_rgba() to change the
value.
2016-10-29 04:49:47 +02:00
Benjamin Otte
45c0379f87
API: gdk: Remove visual querying APIs
...
They are unused, only work on the default display anyway and visuals are
on their way out.
2016-10-28 05:22:50 +02:00
Benjamin Otte
f420dc7456
API: gdk: Remove gdk_window_get_visual()
...
With it, remove window->visual.
2016-10-28 05:22:49 +02:00
Matthias Clasen
7fa09a3e3a
quartz: Stop using gdk_device_manager_list_devices
...
The function has been deprecated.
2016-10-26 10:36:32 -04:00
Alexander Larsson
70935f0952
Drop support for offscreen GdkWindows
...
These complicate a lot of GdkWindow internals to implement features
that not a lot of apps use, and will be better achieved using gsk.
So, we just drop it all.
2016-10-25 09:54:37 +02:00
Benjamin Otte
eace2cf421
API: Remove gdk_window_set_background()
...
Backgrounds are always transparent black.
2016-10-16 18:17:21 +02:00
Benjamin Otte
89f2e17f91
API: Remove gdk_window_set_composited()
...
And the related call gdk_display_supports_composite().
2016-10-16 18:17:21 +02:00
Benjamin Otte
8d54c641f1
screen: Remove unused vfunc
...
GdkScreenClass.broadcast_client_message was unused, but a bunch of
backends still had functions (not) implementing it.
2016-10-16 18:17:21 +02:00
Benjamin Otte
fcbd480c76
API: Remove GDK_WA_CURSOR
...
The cursor was set using gdk_window_set_cursor() even in
gdk_window_new().
So instead of having yet another flag, just make the users of that flag
call gdk_window_set_cursor() directly after the window was created.
2016-10-16 18:17:21 +02:00
Benjamin Otte
9be9e00a0e
API: screen: Remove gdk_screen_make_display_name()
...
It's identical to gdk_display_get_name().
2016-10-16 18:17:21 +02:00
Benjamin Otte
6b9e481e38
API: screen: Remove gdk_screen_get_active_window()
...
... and gdk_screen_get_window_stack().
Those functions were originally added in
5afb4f0f11
but do not seem to be used as
they are not implemented anywhere but in X.
As GDK is not meant to fulfill window management functionality I'm going
to remove these functions without replacements.
2016-10-16 18:17:21 +02:00
Benjamin Otte
26f9b584be
API: gdk: Remove gdk_screen_get_number()
...
It's useless everywhere but in internal X11 code.
2016-10-16 18:17:21 +02:00
Matthias Clasen
d053d5c58f
Rename Makefile references from 3.0 to 4.0
...
This is almost certainly incomplete.
Needs careful scrutiny
2016-10-07 10:34:50 -04:00
Emmanuele Bassi
74bd3f3810
quartz: Fix typo that broke debug builds
2016-08-22 09:23:02 +01:00
Matthias Clasen
82fd72a477
Opt in to structured logging
...
Define G_LOG_USE_STRUCTURED, so that all our g_debug, g_warning,
etc calls directly use structured logging and provide source information.
2016-07-22 23:13:20 -04:00
Matthias Clasen
0f476590fb
Make gdk_event_get_pointer_emulated public
...
There is not strong reason to keep the getter private.
At the same time, strip _-prefixes from a few other GdkEvent
APIs. Update all callers.
2016-05-10 15:16:45 -04:00
Jonas Ådahl
1a4f000f3b
gdk/dnd: Don't use default display when getting cursor
...
Always associate a drag context with a GdkDisplay and use that when
getting a cursor for a given action.
If we don't do this, dragging on a window that doesn't use the default
display will make us use cursors from the wrong display.
https://bugzilla.gnome.org/show_bug.cgi?id=765565
2016-04-26 23:03:24 +08:00
Frediano Ziglio
cf14fea5a8
Save scancode inside GdkEventPrivate
...
Windows save in hardware_keycode an information which is not so low
level and some application require the hardware scancode.
As Windows provides this information save it in GdkEventPrivate
and provide a function to get this information.
For no Windows system the function return the hardware_keycode instead.
Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
https://bugzilla.gnome.org/show_bug.cgi?id=765259
2016-04-21 22:35:47 -04:00
Friedrich Beckmann
fe80230985
quartz: zoom/rotate change compile/runtime check from 10.7 to 10.8
...
The zoom/rotate change for quartz does not build on 10.7. This change
adds zoom/rotate support in quartz only for 10.8 and following. The
problems is described here:
https://bugzilla.gnome.org/show_bug.cgi?id=760276 and here
https://trac.macports.org/ticket/51052
NSEventPhaseMayBegin was only introduced in 10.8 although documentation
says it is introduced in 10.7. Tests on 10.7 indicate that the phase
property for the Magnify event is not supported at all on 10.7
2016-04-09 18:05:59 -04:00
Christoph Reiter
3f077ec36f
quartz: fix pixelated image surfaces in retina/hidpi mode
...
gtk+ currently depends on the scaling factor and the cairo device scale
of both the backend surfaces and image surfaces to be equal.
Until now we didn't apply a cairo device scale at all and depended on the
automatic scaling of CGContexts. This works when drawing with cairo but
fails in case of image surfaces, which get requested at a too small size.
To make the quartz backend behave more like the X11 one, set the cairo device
scale on the surface in gdk_quartz_ref_cairo_surface(). As this conflicts
with the default scaling done by CGContext (we would get double scaling)
undo the CGContext scaling using CGContextScaleCTM().
This patch is based on the following patches by Brion Vibber:
https://bugzilla.gnome.org/show_bug.cgi?id=740199#c4
https://bugs.freedesktop.org/show_bug.cgi?id=69796#c4
https://bugzilla.gnome.org/show_bug.cgi?id=763779
2016-03-23 16:27:10 +01:00
Christian Hergert
1bd5be6b7c
quartz: fix quartz build
...
More fallout from recent refactoring.
See also b3860e407d
.
2016-03-17 21:18:58 -07:00
Friedrich Beckmann
8879052887
added NSEventTypeMagnify and NSEventTypeRotate for ZOOM and ROTATE gestures
...
MacOS provides the NSEventTypeMagnify which is very similar to the
Gtk ZOOM gesture and NSEventTypeRotate which is very similar to the
Gtk Rotate gesture. Those two event sequences are translated to a
sequence of GDK_TOUCHPAD_PINCH events. This sequence is then detected
in the upper gtk layers as Gtk Zoom/Rotate Gestures.
https://bugzilla.gnome.org/show_bug.cgi?id=760276
2016-03-11 09:59:01 -05:00
Philip Chimento
b3860e407d
quartz: Get core pointer from device manager
...
Some spots missed in the earlier refactor removing core_pointer from
the GdkDisplay struct.
https://bugzilla.gnome.org/show_bug.cgi?id=762820
2016-03-09 22:11:07 -08:00