OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 "views/view.h" | 5 #include "views/view.h" |
6 | 6 |
7 #include <gtk/gtk.h> | 7 #include <gtk/gtk.h> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "views/views_delegate.h" |
10 | 11 |
11 namespace views { | 12 namespace views { |
12 | 13 |
13 // static | 14 // static |
14 int View::GetDoubleClickTimeMS() { | 15 int View::GetDoubleClickTimeMS() { |
15 GdkDisplay* display = gdk_display_get_default(); | 16 GdkDisplay* display = gdk_display_get_default(); |
16 return display ? display->double_click_time : 500; | 17 return display ? display->double_click_time : 500; |
17 } | 18 } |
18 | 19 |
19 int View::GetMenuShowDelay() { | 20 int View::GetMenuShowDelay() { |
20 return kShowFolderDropMenuDelay; | 21 return kShowFolderDropMenuDelay; |
21 } | 22 } |
22 | 23 |
23 void View::NotifyAccessibilityEvent(AccessibilityTypes::Event event_type) { | 24 void View::NotifyAccessibilityEvent(AccessibilityTypes::Event event_type) { |
24 // Not implemented on GTK. | 25 NotifyAccessibilityEvent(event_type, true); |
| 26 } |
| 27 |
| 28 void View::NotifyAccessibilityEvent(AccessibilityTypes::Event event_type, |
| 29 bool send_native_event) { |
| 30 // Send the notification to the delegate. |
| 31 if (ViewsDelegate::views_delegate) |
| 32 ViewsDelegate::views_delegate->NotifyAccessibilityEvent(this, event_type); |
| 33 |
| 34 // In the future if we add native GTK accessibility support, the |
| 35 // notification should be sent here. |
25 } | 36 } |
26 | 37 |
27 ViewAccessibilityWrapper* View::GetViewAccessibilityWrapper() { | 38 ViewAccessibilityWrapper* View::GetViewAccessibilityWrapper() { |
28 NOTIMPLEMENTED(); | 39 NOTIMPLEMENTED(); |
29 return NULL; | 40 return NULL; |
30 } | 41 } |
31 | 42 |
32 int View::GetHorizontalDragThreshold() { | 43 int View::GetHorizontalDragThreshold() { |
33 static bool determined_threshold = false; | 44 static bool determined_threshold = false; |
34 static int drag_threshold = 8; | 45 static int drag_threshold = 8; |
35 if (determined_threshold) | 46 if (determined_threshold) |
36 return drag_threshold; | 47 return drag_threshold; |
37 determined_threshold = true; | 48 determined_threshold = true; |
38 GtkSettings* settings = gtk_settings_get_default(); | 49 GtkSettings* settings = gtk_settings_get_default(); |
39 if (!settings) | 50 if (!settings) |
40 return drag_threshold; | 51 return drag_threshold; |
41 int value = 0; | 52 int value = 0; |
42 g_object_get(G_OBJECT(settings), "gtk-dnd-drag-threshold", &value, NULL); | 53 g_object_get(G_OBJECT(settings), "gtk-dnd-drag-threshold", &value, NULL); |
43 if (value) | 54 if (value) |
44 drag_threshold = value; | 55 drag_threshold = value; |
45 return drag_threshold; | 56 return drag_threshold; |
46 } | 57 } |
47 | 58 |
48 int View::GetVerticalDragThreshold() { | 59 int View::GetVerticalDragThreshold() { |
49 // Vertical and horizontal drag threshold are the same in Gtk. | 60 // Vertical and horizontal drag threshold are the same in Gtk. |
50 return GetHorizontalDragThreshold(); | 61 return GetHorizontalDragThreshold(); |
51 } | 62 } |
52 | 63 |
53 } // namespace views | 64 } // namespace views |
OLD | NEW |