Ubuntu Pastebin

Paste from ltinkl at Fri, 16 Oct 2015 13:40:50 +0000

Download as text
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
=== modified file 'src/platforms/mirserver/qteventfeeder.cpp'
--- src/platforms/mirserver/qteventfeeder.cpp	2015-10-14 13:36:25 +0000
+++ src/platforms/mirserver/qteventfeeder.cpp	2015-10-16 13:21:30 +0000
@@ -390,11 +390,6 @@
         return QGuiApplication::focusWindow();
     }
 
-    QWindow* getWindowForTouchPoint(const QPoint &point) override //FIXME: not efficient, not updating focused window
-    {
-        return m_screenController->getWindowForPoint(point);
-    }
-
     void registerTouchDevice(QTouchDevice *device) override
     {
         QWindowSystemInterface::registerTouchDevice(device);
@@ -439,19 +434,19 @@
                           QPoint pixelDelta, QPoint angleDelta,
                           Qt::KeyboardModifiers mods, Qt::ScrollPhase phase) override
     {
-        QWindowSystemInterface::handleWheelEvent(m_screenController->getWindowForPoint(localPoint.toPoint()),
+        QWindowSystemInterface::handleWheelEvent(qGuiApp->topLevelAt(localPoint.toPoint()),
                                                  timestamp, localPoint, globalPoint,
                                                  pixelDelta, angleDelta, mods, phase);
     }
 
     void handleEnterEvent(const QPointF &localPoint, const QPointF &globalPoint) override
     {
-        QWindowSystemInterface::handleEnterEvent(m_screenController->getWindowForPoint(localPoint.toPoint()), localPoint, globalPoint);
+        QWindowSystemInterface::handleEnterEvent(qGuiApp->topLevelAt(localPoint.toPoint()), localPoint, globalPoint);
     }
 
     void handleLeaveEvent(const QPointF &localPoint) override
     {
-        QWindowSystemInterface::handleLeaveEvent(m_screenController->getWindowForPoint(localPoint.toPoint()));
+        QWindowSystemInterface::handleLeaveEvent(qGuiApp->topLevelAt(localPoint.toPoint()));
     }
 
 private:
@@ -669,7 +664,7 @@
     QWindow *window = nullptr;
 
     if (kPointerCount > 0) {
-        window = mQtWindowSystem->getWindowForTouchPoint(
+        window = qGuiApp->topLevelAt(
                     QPoint(mir_touch_event_axis_value(tev, 0, mir_touch_axis_x),
                            mir_touch_event_axis_value(tev, 0, mir_touch_axis_y)));
 

=== modified file 'src/platforms/mirserver/qteventfeeder.h'
--- src/platforms/mirserver/qteventfeeder.h	2015-10-14 13:36:25 +0000
+++ src/platforms/mirserver/qteventfeeder.h	2015-10-16 13:20:27 +0000
@@ -38,7 +38,6 @@
         public:
         virtual ~QtWindowSystemInterface() {}
         virtual void setScreenController(const QSharedPointer<ScreenController> &sc) = 0;
-        virtual QWindow* getWindowForTouchPoint(const QPoint &point) = 0;
         virtual QWindow* focusedWindow() = 0;
         virtual void registerTouchDevice(QTouchDevice *device) = 0;
         virtual void handleExtendedKeyEvent(QWindow *window, ulong timestamp, QEvent::Type type, int key,

=== modified file 'src/platforms/mirserver/screencontroller.cpp'
--- src/platforms/mirserver/screencontroller.cpp	2015-10-02 22:05:27 +0000
+++ src/platforms/mirserver/screencontroller.cpp	2015-10-16 13:20:01 +0000
@@ -199,13 +199,3 @@
     }
     return nullptr;
 }
-
-QWindow* ScreenController::getWindowForPoint(const QPoint &point) //FIXME - not thread safe & not efficient
-{
-    for (Screen *screen : m_screenList) {
-        if (screen->window() && screen->geometry().contains(point)) {
-            return screen->window()->window();
-        }
-    }
-    return nullptr;
-}

=== modified file 'src/platforms/mirserver/screencontroller.h'
--- src/platforms/mirserver/screencontroller.h	2015-10-02 22:05:27 +0000
+++ src/platforms/mirserver/screencontroller.h	2015-10-16 13:19:56 +0000
@@ -62,8 +62,6 @@
     QList<Screen*> screens() const { return m_screenList; }
     bool compositing() const { return m_compositing; }
 
-    QWindow* getWindowForPoint(const QPoint &point);
-
 Q_SIGNALS:
     void screenAdded(Screen *screen);
 

=== modified file 'tests/mirserver/QtEventFeeder/mock_qtwindowsystem.h'
--- tests/mirserver/QtEventFeeder/mock_qtwindowsystem.h	2015-10-14 13:36:25 +0000
+++ tests/mirserver/QtEventFeeder/mock_qtwindowsystem.h	2015-10-16 13:25:19 +0000
@@ -25,7 +25,6 @@
 public:
     MOCK_CONST_METHOD0(ready, bool());
     MOCK_METHOD1(setScreenController, void(const QSharedPointer<ScreenController> &));
-    MOCK_METHOD1(getWindowForTouchPoint, QWindow*(const QPoint &point));
     MOCK_METHOD0(lastWindow, QWindow*());
     MOCK_METHOD0(focusedWindow, QWindow*());
     MOCK_METHOD1(registerTouchDevice, void(QTouchDevice* device));

=== modified file 'tests/mirserver/QtEventFeeder/qteventfeeder_test.cpp'
--- tests/mirserver/QtEventFeeder/qteventfeeder_test.cpp	2015-09-28 09:57:18 +0000
+++ tests/mirserver/QtEventFeeder/qteventfeeder_test.cpp	2015-10-16 13:25:47 +0000
@@ -101,9 +101,6 @@
 
 void QtEventFeederTest::setIrrelevantMockWindowSystemExpectations()
 {
-    EXPECT_CALL(*mockWindowSystem, getWindowForTouchPoint(_))
-        .Times(AnyNumber())
-        .WillRepeatedly(Return(window));
     EXPECT_CALL(*mockWindowSystem, focusedWindow())
         .Times(AnyNumber())
         .WillRepeatedly(Return(window));
Download as text