1 // Copyright (c) 2012 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.
5 #ifndef ASH_WM_GESTURES_SHELF_GESTURE_HANDLER_H_
6 #define ASH_WM_GESTURES_SHELF_GESTURE_HANDLER_H_
8 #include "base/basictypes.h"
9 #include "base/memory/scoped_ptr.h"
21 // This manages gestures on the shelf (e.g. launcher, status tray) that affects
22 // the shelf visibility.
23 class ShelfGestureHandler
{
25 ShelfGestureHandler();
26 virtual ~ShelfGestureHandler();
28 // Processes a gesture event and updates the status of the shelf when
29 // appropriate. Returns true of the gesture has been handled and it should not
30 // be processed any farther, false otherwise.
31 // The caller must provide the |event_target_window| because the caller has
32 // knowledge of the type of the |event.target()| whether it's a |views::View|
33 // or an |aura::Window|.
34 bool ProcessGestureEvent(const ui::GestureEvent
& event
,
35 const aura::Window
* event_target_window
);
38 bool drag_in_progress_
;
40 DISALLOW_COPY_AND_ASSIGN(ShelfGestureHandler
);
45 #endif // ASH_WM_GESTURES_SHELF_GESTURE_HANDLER_H_