FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
cefpython/cefpython/keyboard_handler_cef3.pyx at cefpython31 · cztomczak/cefpython · GitHub
cztomczak
/
cefpython
Public
Uh oh!
There was an error while loading.
Please reload this page
.
Notifications
You must be signed in to change notification settings
Fork
477
Star
3.2k
Code
Issues
223
Pull requests
4
Actions
Wiki
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
cefpython
/
cefpython
/
keyboard_handler_cef3.pyx
Copy path
More file actions
More file actions
Latest commit
History
History
History
88 lines (83 loc) · 3.49 KB
Breadcrumbs
cefpython
/
cefpython
/
keyboard_handler_cef3.pyx
Copy path
File metadata and controls
88 lines (83 loc) · 3.49 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#
Copyright (c) 2012-2014 The CEF Python authors. All rights reserved.
#
License: New BSD License.
#
Website: http://code.google.com/p/cefpython/
#
cef_key_event_type_t
KEYEVENT_RAWKEYDOWN
=
cef_types.KEYEVENT_RAWKEYDOWN
KEYEVENT_KEYDOWN
=
cef_types.KEYEVENT_KEYDOWN
KEYEVENT_KEYUP
=
cef_types.KEYEVENT_KEYUP
KEYEVENT_CHAR
=
cef_types.KEYEVENT_CHAR
#
cef_event_flags_t
EVENTFLAG_NONE
=
cef_types.EVENTFLAG_NONE
EVENTFLAG_CAPS_LOCK_ON
=
cef_types.EVENTFLAG_CAPS_LOCK_ON
EVENTFLAG_SHIFT_DOWN
=
cef_types.EVENTFLAG_SHIFT_DOWN
EVENTFLAG_CONTROL_DOWN
=
cef_types.EVENTFLAG_CONTROL_DOWN
EVENTFLAG_ALT_DOWN
=
cef_types.EVENTFLAG_ALT_DOWN
EVENTFLAG_LEFT_MOUSE_BUTTON
=
cef_types.EVENTFLAG_LEFT_MOUSE_BUTTON
EVENTFLAG_MIDDLE_MOUSE_BUTTON
=
cef_types.EVENTFLAG_MIDDLE_MOUSE_BUTTON
EVENTFLAG_RIGHT_MOUSE_BUTTON
=
cef_types.EVENTFLAG_RIGHT_MOUSE_BUTTON
#
Mac OS-X command key.
EVENTFLAG_COMMAND_DOWN
=
cef_types.EVENTFLAG_COMMAND_DOWN
EVENTFLAG_NUM_LOCK_ON
=
cef_types.EVENTFLAG_NUM_LOCK_ON
EVENTFLAG_IS_KEY_PAD
=
cef_types.EVENTFLAG_IS_KEY_PAD
EVENTFLAG_IS_LEFT
=
cef_types.EVENTFLAG_IS_LEFT
EVENTFLAG_IS_RIGHT
=
cef_types.EVENTFLAG_IS_RIGHT
cdef
dict
CefToPyKeyEvent(const cef_types.CefKeyEvent
&
cefKeyEvent):
pyKeyEvent
=
{
"
type
"
: cefKeyEvent.type,
"
modifiers
"
: cefKeyEvent.modifiers,
"
windows_key_code
"
: cefKeyEvent.windows_key_code,
"
native_key_code
"
: cefKeyEvent.native_key_code,
"
is_system_key
"
: cefKeyEvent.is_system_key,
"
character
"
: cefKeyEvent.character,
"
unmodified_character
"
: cefKeyEvent.unmodified_character,
"
focus_on_editable_field
"
: cefKeyEvent.focus_on_editable_field
}
return
pyKeyEvent
cdef public cpp_bool KeyboardHandler_OnPreKeyEvent(
CefRefPtr[CefBrowser] cefBrowser,
const cef_types.CefKeyEvent
&
cefEvent,
cef_types.CefEventHandle cefEventHandle,
cpp_bool
*
cefIsKeyboardShortcut
)
except
*
with
gil:
cdef PyBrowser pyBrowser
cdef
dict
pyEvent
cdef
list
pyIsKeyboardShortcutOut
cdef py_bool returnValue
cdef
object
callback
try
:
pyBrowser
=
GetPyBrowser(cefBrowser)
pyEvent
=
CefToPyKeyEvent(cefEvent)
pyIsKeyboardShortcutOut
=
[cefIsKeyboardShortcut[
0
]]
callback
=
pyBrowser.GetClientCallback(
"
OnPreKeyEvent
"
)
if
callback:
returnValue
=
callback(pyBrowser, pyEvent,
<
object
>
PyLong_FromVoidPtr(cefEventHandle),
pyIsKeyboardShortcutOut)
cefIsKeyboardShortcut[
0
]
=
\
<
cpp_bool
>
bool
(pyIsKeyboardShortcutOut[
0
])
return
bool
(returnValue)
return
False
except
:
(exc_type, exc_value, exc_trace)
=
sys.exc_info()
sys.excepthook(exc_type, exc_value, exc_trace)
cdef public cpp_bool KeyboardHandler_OnKeyEvent(
CefRefPtr[CefBrowser] cefBrowser,
const cef_types.CefKeyEvent
&
cefEvent,
cef_types.CefEventHandle cefEventHandle
)
except
*
with
gil:
cdef PyBrowser pyBrowser
cdef
dict
pyEvent
cdef py_bool returnValue
cdef
object
callback
try
:
pyBrowser
=
GetPyBrowser(cefBrowser)
pyEvent
=
CefToPyKeyEvent(cefEvent)
callback
=
pyBrowser.GetClientCallback(
"
OnKeyEvent
"
)
if
callback:
returnValue
=
callback(pyBrowser, pyEvent,
<
object
>
PyLong_FromVoidPtr(cefEventHandle))
return
bool
(returnValue)
return
False
except
:
(exc_type, exc_value, exc_trace)
=
sys.exc_info()
sys.excepthook(exc_type, exc_value, exc_trace)
Back
|
FazBrowse Home
|
New Git URL