Carlos Garnacho
6a3d521466
wayland: Split MetaWaylandDataSource into a separate file
...
The split wasn't 100% clean, and some extra private API had to be
added for it (but well, looking at the API, it's already evident
there's a cleanup/streamlining task due). This is meant to be a
refactor with no functional changes, so just go with it.
https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1193
2020-04-17 00:46:21 +02:00
Carlos Garnacho
ba3417667f
wayland/xdnd: Add error traps around Xdnd* IPC
...
Make all of them spew criticals, except for XdndLeave as it's feasible
to expect the window we are sending the event to did disappear in the
way (eg. if the window is destroyed while the DnD operation is ongoing
and the pointer is over the window).
Fixes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2590
https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1184
2020-04-07 18:08:03 +00:00
Sebastian Keller
509e9ca5a0
xwayland: Fix mime type atom list leak on DnD with more than 3 types
...
Found using the clang static analyzer
https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1117
2020-03-11 03:21:36 +01:00
Jonas Ådahl
c0c74484bc
wayland: Don't access MetaWaylandSurface::window directly
...
It'll be moved to the role owning it, accessed via a helper function
implemented by the role. Currently it still just fetches the field in
MetaWaylandSurface.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/835
2020-02-19 22:34:28 +00:00
Carlos Garnacho
090a6ad409
xwayland: Set XDND source-side actions as per XDND
...
In XDND, we just get a hint on XdndPosition about what's the action
chosen by the user. Make the data source actions the full set on
XdndEnter (as we can't know better), and pass the hint in XdndPosition
as the user chosen action as it should be.
Makes Wayland drop sites aware of the user action as per XDND with X11
drag sources, and still makes modifiers during DnD work.
https://gitlab.gnome.org/GNOME/mutter/issues/974
https://gitlab.gnome.org/GNOME/mutter/merge_requests/1005
2020-01-27 14:07:47 +00:00
Carlos Garnacho
c1df48befd
wayland: Preserve XdndTypeList for future callers
...
This Xdnd property is owned by the drag source, we shouldn't delete
it when reading/proxying it to Wayland clients.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/2347
https://gitlab.gnome.org/GNOME/mutter/merge_requests/1005
2020-01-27 14:07:47 +00:00
Georges Basile Stavracas Neto
160cc9182d
Replace ClutterPoint by graphene_point_t
...
Remove the tests for ClutterPoint since it's
corresponding code moved to private ClutterStage
methods.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/458
2019-10-16 11:38:14 +00:00
Olivier Fourdan
bc166aa6b4
xwayland: Use given X11 display for DnD setup
...
Use the provided X11 display instead of poking into GDK to get the X11
display.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/735
2019-08-19 17:14:40 +02:00
Carlos Garnacho
17d00d49d4
wayland: Reduce MetaXWaylandSelection to just DnD
...
All the actual selection management functionality is superseded by
MetaSelection. Reduce it to just handling the XDND messaging and leave
selections to MetaSelection.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/320
2019-05-02 16:31:45 +02:00