Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(329)

Side by Side Diff: third_party/WebKit/Source/core/input/KeyboardEventManager.h

Issue 2290313002: Remove PlatformKeyboardEvent (Closed)
Patch Set: One more fix Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #ifndef KeyboardEventManager_h 5 #ifndef KeyboardEventManager_h
6 #define KeyboardEventManager_h 6 #define KeyboardEventManager_h
7 7
8 #include "core/CoreExport.h" 8 #include "core/CoreExport.h"
9 #include "platform/PlatformEvent.h" 9 #include "platform/PlatformEvent.h"
10 #include "platform/heap/Handle.h" 10 #include "platform/heap/Handle.h"
11 #include "platform/heap/Visitor.h" 11 #include "platform/heap/Visitor.h"
12 #include "public/platform/WebFocusType.h" 12 #include "public/platform/WebFocusType.h"
13 #include "public/platform/WebInputEvent.h"
13 #include "public/platform/WebInputEventResult.h" 14 #include "public/platform/WebInputEventResult.h"
14 #include "wtf/Allocator.h" 15 #include "wtf/Allocator.h"
15 16
16 namespace blink { 17 namespace blink {
17 18
18 class KeyboardEvent; 19 class KeyboardEvent;
19 class LocalFrame; 20 class LocalFrame;
20 class PlatformKeyboardEvent;
21 class ScrollManager; 21 class ScrollManager;
22 22
23 enum class OverrideCapsLockState {
24 Default,
25 On,
26 Off
27 };
28
23 class CORE_EXPORT KeyboardEventManager { 29 class CORE_EXPORT KeyboardEventManager {
24 WTF_MAKE_NONCOPYABLE(KeyboardEventManager); 30 WTF_MAKE_NONCOPYABLE(KeyboardEventManager);
25 DISALLOW_NEW(); 31 DISALLOW_NEW();
26 public: 32 public:
33 static const int kAccessKeyModifiers =
34 // TODO(crbug.com/618397): Add a settings to control this behavior.
35 #if OS(MACOSX)
36 WebInputEvent::ControlKey | WebInputEvent::AltKey;
37 #else
38 WebInputEvent::AltKey;
39 #endif
40
27 KeyboardEventManager(LocalFrame*, ScrollManager*); 41 KeyboardEventManager(LocalFrame*, ScrollManager*);
28 ~KeyboardEventManager(); 42 ~KeyboardEventManager();
29 DECLARE_TRACE(); 43 DECLARE_TRACE();
30 44
31 bool handleAccessKey(const PlatformKeyboardEvent&); 45 bool handleAccessKey(const WebKeyboardEvent&);
32 WebInputEventResult keyEvent(const PlatformKeyboardEvent&); 46 WebInputEventResult keyEvent(const WebKeyboardEvent&);
33 void defaultKeyboardEventHandler(KeyboardEvent*, Node*); 47 void defaultKeyboardEventHandler(KeyboardEvent*, Node*);
34 48
35 void capsLockStateMayHaveChanged(); 49 void capsLockStateMayHaveChanged();
50 static WebInputEvent::Modifiers getCurrentModifierState();
51 static bool currentCapsLockState();
36 52
37 private: 53 private:
54 friend class Internals;
55 // Allows overriding the current caps lock state for testing purposes.
56 static void setCurrentCapsLockState(OverrideCapsLockState);
38 57
39 void defaultSpaceEventHandler(KeyboardEvent*, Node*); 58 void defaultSpaceEventHandler(KeyboardEvent*, Node*);
40 void defaultBackspaceEventHandler(KeyboardEvent*); 59 void defaultBackspaceEventHandler(KeyboardEvent*);
41 void defaultTabEventHandler(KeyboardEvent*); 60 void defaultTabEventHandler(KeyboardEvent*);
42 void defaultEscapeEventHandler(KeyboardEvent*); 61 void defaultEscapeEventHandler(KeyboardEvent*);
43 void defaultArrowEventHandler(WebFocusType, KeyboardEvent*); 62 void defaultArrowEventHandler(WebFocusType, KeyboardEvent*);
44 63
45 const Member<LocalFrame> m_frame; 64 const Member<LocalFrame> m_frame;
46 65
47 ScrollManager* m_scrollManager; 66 ScrollManager* m_scrollManager;
48 }; 67 };
49 68
50 } // namespace blink 69 } // namespace blink
51 70
52 #endif // KeyboardEventManager_h 71 #endif // KeyboardEventManager_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698