1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef UI_VIEWS_WIDGET_DESKTOP_AURA_X11_WHOLE_SCREEN_MOVE_LOOP_DELEGATE_H_ 6 #define UI_VIEWS_WIDGET_DESKTOP_AURA_X11_WHOLE_SCREEN_MOVE_LOOP_DELEGATE_H_ 7 8 #include <X11/Xlib.h> 9 // Get rid of a macro from Xlib.h that conflicts with Aura's RootWindow class. 10 #undef RootWindow 11 12 namespace views { 13 14 // Receives mouse events while the X11WholeScreenMoveLoop is tracking a drag on 15 // the screen. 16 class X11WholeScreenMoveLoopDelegate { 17 public: 18 // Called when we receive a motion event. 19 virtual void OnMouseMovement(XMotionEvent* event) = 0; 20 21 // Called when the mouse button is released. 22 virtual void OnMouseReleased() = 0; 23 24 // Called when the user has released the mouse button. The move loop will 25 // release the grab after this has been called. 26 virtual void OnMoveLoopEnded() = 0; 27 }; 28 29 } // namespace views 30 31 #endif // UI_VIEWS_WIDGET_DESKTOP_AURA_X11_WHOLE_SCREEN_MOVE_LOOP_DELEGATE_H_ 32