From d975ffe7b06db18ba418207270f58ec79eb07ae1 Mon Sep 17 00:00:00 2001 From: Alex Henrie Date: Mon, 8 Aug 2016 17:57:01 -0600 Subject: Use Gdk::Seat instead of Gdk::DeviceManager (bzr r15046.1.1) --- src/desktop-events.cpp | 12 +++++++++++- src/device-manager.cpp | 20 +++++++++++++++++--- src/ui/dialog/filter-effects-dialog.cpp | 12 +++++++++++- 3 files changed, 39 insertions(+), 5 deletions(-) diff --git a/src/desktop-events.cpp b/src/desktop-events.cpp index 1932a9864..5fef8cbfc 100644 --- a/src/desktop-events.cpp +++ b/src/desktop-events.cpp @@ -21,7 +21,12 @@ #include "ui/dialog/guides.h" #include "desktop-events.h" -#include +#include +#if GTK_CHECK_VERSION(3, 20, 0) +# include +#else +# include +#endif #include <2geom/line.h> #include <2geom/angle.h> @@ -596,8 +601,13 @@ static void init_extended() Glib::ustring avoidName("pad"); auto display = Gdk::Display::get_default(); +#if GTK_CHECK_VERSION(3, 20, 0) + auto seat = display->get_default_seat(); + auto const devices = seat->get_slaves(Gdk::SEAT_CAPABILITY_ALL); +#else auto dm = display->get_device_manager(); auto const devices = dm->list_devices(Gdk::DEVICE_TYPE_SLAVE); +#endif if ( !devices.empty() ) { for (auto const dev : devices) { diff --git a/src/device-manager.cpp b/src/device-manager.cpp index 68444fe66..6c8d4514c 100644 --- a/src/device-manager.cpp +++ b/src/device-manager.cpp @@ -15,13 +15,17 @@ #include -#include +#include + #include +#if GTK_CHECK_VERSION(3, 20, 0) +# include +#else +# include +#endif #include -#include - #define noDEBUG_VERBOSE 1 @@ -317,8 +321,13 @@ DeviceManagerImpl::DeviceManagerImpl() : { Glib::RefPtr display = Gdk::Display::get_default(); +#if GTK_CHECK_VERSION(3, 20, 0) + auto seat = display->get_default_seat(); + auto devList = seat->get_slaves(Gdk::SEAT_CAPABILITY_ALL); +#else auto dm = display->get_device_manager(); auto devList = dm->list_devices(Gdk::DEVICE_TYPE_SLAVE); +#endif if (fakeList.empty()) { createFakeList(); @@ -649,8 +658,13 @@ static void createFakeList() { // try to find the first *real* core pointer Glib::RefPtr display = Gdk::Display::get_default(); +#if GTK_CHECK_VERSION(3, 20, 0) + auto seat = display->get_default_seat(); + auto devList = seat->get_slaves(Gdk::SEAT_CAPABILITY_ALL); +#else auto dm = display->get_device_manager(); auto devList = dm->list_devices(Gdk::DEVICE_TYPE_SLAVE); +#endif // Set iterator to point at beginning of device list std::vector< Glib::RefPtr >::iterator dev = devList.begin(); diff --git a/src/ui/dialog/filter-effects-dialog.cpp b/src/ui/dialog/filter-effects-dialog.cpp index 97fa47f2f..676dcf31f 100644 --- a/src/ui/dialog/filter-effects-dialog.cpp +++ b/src/ui/dialog/filter-effects-dialog.cpp @@ -22,7 +22,12 @@ #include "dialog-manager.h" #include -#include +#include +#if GTK_CHECK_VERSION(3, 20, 0) +# include +#else +# include +#endif #include "ui/widget/spinbutton.h" @@ -1970,8 +1975,13 @@ bool FilterEffectsDialog::PrimitiveList::on_draw_signal(const Cairo::RefPtrget_display(); +#if GTK_CHECK_VERSION(3, 20, 0) + auto seat = display->get_default_seat(); + auto device = seat->get_pointer(); +#else auto dm = display->get_device_manager(); auto device = dm->get_client_pointer(); +#endif get_bin_window()->get_device_position(device, mx, my, mask); // Outline the bottom of the connection area -- cgit v1.2.3