summaryrefslogtreecommitdiff
path: root/gdk
Commit message (Collapse)AuthorAgeFilesLines
* texture: Update docsMatthias Clasen2023-01-141-3/+3
| | | | Document that we support TIFF as well.
* Fix a compiler warningMatthias Clasen2023-01-141-5/+5
| | | | | Clang things that timings can be NULL here, and I think it might be right.
* Fix a compiler warningMatthias Clasen2023-01-131-1/+4
| | | | | Clang things that timings can be NULL here, and I think it might be right.
* Silence a compiler warningMatthias Clasen2023-01-131-1/+1
| | | | | | | Clang was complaining that we never use the value stored in mime_type. Just don't store it, we are only interested in the side-effect (interning the string).
* gdk/macos: fix warning about _coreCursorTypeChristian Hergert2023-01-121-0/+4
|
* gdk: fix warning when !HAVE_EGLChristian Hergert2023-01-121-1/+1
|
* css: Avoid more allocations for tokensMatthias Clasen2023-01-121-3/+3
| | | | Make short string tokens static.
* Deprecate gdk_display_put_eventMatthias Clasen2023-01-094-3/+9
| | | | | | | The documentation already tells you not to use this function. Ifdef the remaining users in the X11 backend.
* Merge branch 'macos-stable-dnd' into 'main'Matthias Clasen2023-01-093-5/+17
|\ | | | | | | | | macos: Drag and drop should not freeze applications See merge request GNOME/gtk!5291
| * Fix code styleMatthias Clasen2023-01-081-1/+1
| |
| * macos: Fix freeze on dragArjan Molenaar2022-12-131-1/+1
| | | | | | | | | | | | | | A Drag surface does not have a parent surface. Therefore, if we initialize it with one, it's inheriting the frame clock from the parent, but the drag surface is not linked to the parent. Once the drag surface is destroyed, it's disposing the frame clock, which results in a "frozen" application.
| * macos: Explicitly ungrab seat when drag is done or finalizedArjan Molenaar2022-12-131-1/+11
| | | | | | | | | | | | This is an extra safeguard that avoids grabbing resources longer than nessecary. It also ensures the resource is removed from the drag, so it is not freed again.
| * Remove old dragImage codeArjan Molenaar2022-12-131-3/+5
| | | | | | | | | | New code (macOS 10+ should support the NSDraggingSource protocol: https://developer.apple.com/documentation/appkit/nsdraggingsource.
* | gdk: Update docsMatthias Clasen2023-01-071-3/+0
| | | | | | | | Update the docs for gdk_display_get_monitor_at_surface.
* | Merge branch 'gdk-display-get-monitor-is-nullable' into 'main'Matthias Clasen2023-01-071-1/+1
|\ \ | | | | | | | | | | | | | | | | | | gdkdisplay: Document get_monitor_at_surface can return NULL Closes #5075 See merge request GNOME/gtk!4917
| * | gdkdisplay: Document get_monitor_at_surface can return NULLOndřej Míchal2022-08-011-1/+1
| | | | | | | | | | | | Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/5075
* | | glcontext: Avoid gcc warning on non-egl buildBenjamin Otte2023-01-061-1/+1
| | |
* | | Drop gdkpopup-wayland-private.hMatthias Clasen2023-01-063-20/+0
| | | | | | | | | | | | It is empty now.
* | | waylandsurface: Introduce a few vfuncsMatthias Clasen2023-01-066-54/+70
| | |
* | | waylandpopup: Drop unused exportsMatthias Clasen2023-01-062-8/+8
| | |
* | | waylandtoplevel: Drop unused exportsMatthias Clasen2023-01-063-43/+27
| | |
* | | More cleanupsMatthias Clasen2023-01-061-50/+8
| | |
* | | Misc cleanupsMatthias Clasen2023-01-067-109/+105
| | | | | | | | | | | | Detangle compute_size, among other things.
* | | wip: Split off GdkWaylandPopupMatthias Clasen2023-01-065-1410/+1498
| | | | | | | | | | | | | | | Like the GdkWaylandToplevel split-off, this needs some more cleanup.
* | | wip: Split off GdkWaylandToplevelMatthias Clasen2023-01-067-2510/+2607
| | | | | | | | | | | | This still needs some more cleanup.
* | | wayland: Rearrange the surface codeMatthias Clasen2023-01-061-2352/+2341
| | |
* | | wayland: Split public headersMatthias Clasen2023-01-066-40/+117
| | | | | | | | | | | | | | | | | | | | | Split gdkwaylandsurface.h into itself, gdkwaylandtoplevel.h and gdkwaylandpopup.h. This is in preparation for splitting the types for real.
* | | wayland: Split display_server sub-structsMatthias Clasen2023-01-062-110/+134
| | | | | | | | | | | | | | | Move these to GdkWaylandToplevel and GdkWaylandPopup as appropriate.
* | | wayland: Move next_layout into popup and toplevelMatthias Clasen2023-01-062-33/+23
| | | | | | | | | | | | This is where it belongs.
* | | wayland: Move pending toplevel state to GdkWaylandToplevelMatthias Clasen2023-01-061-31/+40
| | | | | | | | | | | | Another toplevel-only thing.
* | | wayland: Move input_grab_seat to GdkWaylandPopupMatthias Clasen2023-01-062-12/+15
| | | | | | | | | | | | This is popup-only functionality.
* | | wayland: Move reposition_token to GdkWaylandPopupMatthias Clasen2023-01-062-8/+12
| | | | | | | | | | | | This is only used for popups, so move it there.
* | | wayland: Move shortcuts_inhibitors to GdkWaylandToplevelMatthias Clasen2023-01-062-32/+27
| | | | | | | | | | | | Another toplevel-only feature.
* | | wayland: Move imported_transient_for to GdkWaylandToplevelMatthias Clasen2023-01-062-23/+25
| | | | | | | | | | | | Another toplevel-only thing.
* | | wayland: Move geometry hints to GdkWaylandToplevelMatthias Clasen2023-01-062-38/+46
| | | | | | | | | | | | Another toplevel-only thing.
* | | wayland: Move title to GdkWaylandToplevelMatthias Clasen2023-01-062-35/+26
| | | | | | | | | | | | This is a toplevel property.
* | | wayland: Move drag surfaces to their own fileMatthias Clasen2023-01-064-190/+294
| | |
* | | wayland: Drop create_dnd_surfaceMatthias Clasen2023-01-063-25/+6
| | | | | | | | | | | | It is only used in one place.
* | | Merge branch 'gtk4-fix-xdg-activation-set-surface' into 'main'Matthias Clasen2023-01-061-2/+9
|\ \ \ | | | | | | | | | | | | | | | | gdk/wayland: set requesting surface to xdg-activation See merge request GNOME/gtk!5293
| * | | gdk/wayland: set requesting surface to xdg-activationJoan Bruguera2022-12-041-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The argument to xdg_activation_token_v1_set_surface is documented to be the surface requesting the activation, not the surface to be activated, which is given later when calling xdg_activation_v1_activate. (c.f. https://gitlab.freedesktop.org/wayland/wayland-protocols/-/commit/36cee4bdbcaf3a75f567315809953b5e21d703da) Use the same logic as in gdk_wayland_app_launch_context_get_startup_notify_id, i.e. if we have a surface with focus, set that, otherwise set NULL. This fixes requesting urgent/focus on wlroots (compositors like Sway, etc.), which was blocked as the surface requesting the activation didn't have focus. Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com>
* | | | x11: Make a call NULL-safeMatthias Clasen2023-01-041-0/+3
| | | | | | | | | | | | | | | | | | | | Make it safe to call gdk_x11_app_launch_context_get_startup_notify_id with a NULL info.
* | | | gdkdisplay: Deprecate gdk_display_notify_startup_complete()Carlos Garnacho2023-01-032-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have various layers where we store the startup ID for a request, since this API does not have a GdkToplevel that we can refer about for the Wayland platform, this is the most obvious candidate to start untangling these various layers. Deprecate this call, it is already unused in the gtk/ side.
* | | | gdk/x11: Emit "remove" s-n message from gdk_toplevel_set_startup_idCarlos Garnacho2023-01-031-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In the way towards deprecating gdk_display_notify_startup_complete(), make gdk_toplevel_set_startup_id() on X11 perform this piece of messaging itself. It should be harmless that the message is emitted twice, if callers do still use that API.
* | | | gdk/wayland: Perform xdg_activation on gdk_toplevel_set_startup_idCarlos Garnacho2023-01-031-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This call has everything to perform activation as specified by the xdg_activation protocol, notably a surface to activate as opposed to gdk_display_notify_startup_complete(). Make activation happen here, so that the surface gets activated when its gets a startup ID assigned.
* | | | gdk_display_open: Mark arg as nullablenullable-gdkMaximiliano Sandoval R2023-01-021-1/+1
| | | |
* | | | gdk/surface: Handle clicks outside client surfacesCarlos Garnacho2022-12-232-8/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The owner_events=TRUE grab makes GDK on X11 see events happening outside every client window as received on the grab window. Additionally check that the pointer is inside the grab window (i.e. it received GDK_CROSSING_NORMAL crossing events for the core pointer) in order to handle clicks happening outside client windows. These new paths are expected to be a no-op on Wayland, and to also work for touchscreen input on X11, due to emulated pointer events.
* | | | clipboard: improve EOL conversion of plain textIgnazio Pillai2022-12-221-5/+19
| | | | | | | | | | | | | | | | Handle the case of clipboard text with CR line endings
* | | | gdk: Fix g_set_str version checkNirbheek Chauhan2022-12-181-1/+1
| | | | | | | | | | | | | | | | | | | | The function was added to glib in 2.75.1. This fixes gtk's build with the glib main branch.
* | | | gdkprivate: Add compatibility shim for g_set_str()Christopher Davis2022-12-161-0/+19
| | | | | | | | | | | | | | | | | | | | Allows us to make use of this API without depending on bleeding-edge glib
* | | | Add GDK_DEBUG=no-portalsMatthias Clasen2022-12-142-2/+7
| | | | | | | | | | | | | | | | Fixes: #5441