OLD | NEW |
---|---|
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ui/base/touch/touch_device.h" | 5 #include "ui/base/touch/touch_device.h" |
6 #include "base/logging.h" | |
6 #include "ui/events/devices/x11/touch_factory_x11.h" | 7 #include "ui/events/devices/x11/touch_factory_x11.h" |
7 | 8 |
8 namespace ui { | 9 namespace ui { |
9 | 10 |
10 bool IsTouchDevicePresent() { | 11 bool IsTouchDevicePresent() { |
11 return ui::TouchFactory::GetInstance()->IsTouchDevicePresent(); | 12 return ui::TouchFactory::GetInstance()->IsTouchDevicePresent(); |
12 } | 13 } |
13 | 14 |
14 int MaxTouchPoints() { | 15 int MaxTouchPoints() { |
15 return ui::TouchFactory::GetInstance()->GetMaxTouchPoints(); | 16 return ui::TouchFactory::GetInstance()->GetMaxTouchPoints(); |
16 } | 17 } |
17 | 18 |
19 // FIXME: Use mouse/keyboard detection logic. crbug.com/440503 | |
18 int GetAvailablePointerTypes() { | 20 int GetAvailablePointerTypes() { |
19 // TODO(mustaq): Replace the stub below | 21 // Assume there is a keyboard |
22 int available_pointer_types = POINTER_TYPE_NONE; | |
sadrul
2014/12/11 15:22:27
You can look for a non-empty DeviceDataManager::ke
mustaq
2014/12/11 19:21:04
Done.
| |
23 | |
24 // Assume either a touch-device or a mouse is there | |
25 if (IsTouchDevicePresent()) | |
26 available_pointer_types |= POINTER_TYPE_COARSE; | |
27 else | |
28 available_pointer_types |= POINTER_TYPE_FINE; | |
29 | |
30 return available_pointer_types; | |
31 } | |
32 | |
33 PointerType GetPrimaryPointerType() { | |
34 int available_pointer_types = GetAvailablePointerTypes(); | |
35 if (available_pointer_types & POINTER_TYPE_COARSE) | |
36 return POINTER_TYPE_COARSE; | |
37 if (available_pointer_types & POINTER_TYPE_FINE) | |
38 return POINTER_TYPE_FINE; | |
39 DCHECK(available_pointer_types & POINTER_TYPE_NONE); | |
20 return POINTER_TYPE_NONE; | 40 return POINTER_TYPE_NONE; |
21 } | 41 } |
22 | 42 |
23 PointerType GetPrimaryPointerType() { | 43 // FIXME: Use mouse/keyboard detection logic. crbug.com/440503 |
24 // TODO(mustaq): Replace the stub below | 44 int GetAvailableHoverTypes() { |
25 return POINTER_TYPE_NONE; | 45 // Assume there is a keyboard |
46 int available_hover_types = HOVER_TYPE_NONE; | |
sadrul
2014/12/11 15:22:27
ditto
mustaq
2014/12/11 19:21:04
Done.
| |
47 | |
48 // Assume either a touch-device or a mouse is there | |
49 if (IsTouchDevicePresent()) | |
50 available_hover_types |= HOVER_TYPE_ON_DEMAND; | |
51 else | |
52 available_hover_types |= HOVER_TYPE_HOVER; | |
53 | |
54 return available_hover_types; | |
26 } | 55 } |
27 | 56 |
28 int GetAvailableHoverTypes() { | 57 HoverType GetPrimaryHoverType() { |
29 // TODO(mustaq): Replace the stub below | 58 int available_hover_types = GetAvailableHoverTypes(); |
59 if (available_hover_types & HOVER_TYPE_ON_DEMAND) | |
60 return HOVER_TYPE_ON_DEMAND; | |
61 if (available_hover_types & HOVER_TYPE_HOVER) | |
62 return HOVER_TYPE_HOVER; | |
63 DCHECK(available_hover_types & HOVER_TYPE_NONE); | |
30 return HOVER_TYPE_NONE; | 64 return HOVER_TYPE_NONE; |
31 } | 65 } |
32 | 66 |
33 HoverType GetPrimaryHoverType() { | |
34 // TODO(mustaq): Replace the stub below | |
35 return HOVER_TYPE_NONE; | |
36 } | |
37 | |
38 } // namespace ui | 67 } // namespace ui |
OLD | NEW |