Skip to content

Commit 0324c6b

Browse files
committed
Disable input handling on MacOS.
1 parent d2c96a4 commit 0324c6b

File tree

1 file changed

+43
-4
lines changed

1 file changed

+43
-4
lines changed

Sources/MacOSAppSupport/MAS_NodeEditorNSViewControl.mm

+43-4
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,13 @@ static void MouseDownEvent (NUIE::NodeEditor* nodeEditor, NSEvent* event, NUIE::
1414
}
1515
}
1616

17-
@interface CocoaNSViewControl : NSView
17+
@interface EditorView : NSView
1818
{
1919
@private MAS::NodeEditorNSViewControl* nodeEditorControl;
2020
}
2121
@end
2222

23-
@implementation CocoaNSViewControl
23+
@implementation EditorView
2424

2525
- (BOOL) acceptsFirstResponder
2626
{
@@ -49,6 +49,9 @@ - (void) drawRect : (NSRect) dirtyRect
4949

5050
- (void) mouseDown : (NSEvent*) event
5151
{
52+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
53+
return;
54+
}
5255
NUIE::Point position = MAS::GetViewPositionFromEvent (self, event);
5356
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
5457
if ([event modifierFlags] & NSEventModifierFlagControl) {
@@ -60,62 +63,89 @@ - (void) mouseDown : (NSEvent*) event
6063

6164
- (void) mouseUp : (NSEvent*) event
6265
{
66+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
67+
return;
68+
}
6369
NUIE::Point position = MAS::GetViewPositionFromEvent (self, event);
6470
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
6571
nodeEditor->OnMouseUp (MAS::GetModifierKeysFromEvent (event), NUIE::MouseButton::Left, position.GetX (), position.GetY ());
6672
}
6773

6874
- (void) rightMouseDown : (NSEvent*) event
6975
{
76+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
77+
return;
78+
}
7079
NUIE::Point position = MAS::GetViewPositionFromEvent (self, event);
7180
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
7281
MouseDownEvent (nodeEditor, event, NUIE::MouseButton::Right, position.GetX (), position.GetY ());
7382
}
7483

7584
- (void) rightMouseUp : (NSEvent*) event
7685
{
86+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
87+
return;
88+
}
7789
NUIE::Point position = MAS::GetViewPositionFromEvent (self, event);
7890
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
7991
nodeEditor->OnMouseUp (MAS::GetModifierKeysFromEvent (event), NUIE::MouseButton::Right, position.GetX (), position.GetY ());
8092
}
8193

8294
- (void) otherMouseDown : (NSEvent*) event
8395
{
96+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
97+
return;
98+
}
8499
NUIE::Point position = MAS::GetViewPositionFromEvent (self, event);
85100
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
86101
MouseDownEvent (nodeEditor, event, NUIE::MouseButton::Middle, position.GetX (), position.GetY ());
87102
}
88103

89104
- (void) otherMouseUp : (NSEvent*) event
90105
{
106+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
107+
return;
108+
}
91109
NUIE::Point position = MAS::GetViewPositionFromEvent (self, event);
92110
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
93111
nodeEditor->OnMouseUp (MAS::GetModifierKeysFromEvent (event), NUIE::MouseButton::Middle, position.GetX (), position.GetY ());
94112
}
95113

96114
- (void) mouseDragged : (NSEvent*) event
97115
{
116+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
117+
return;
118+
}
98119
NUIE::Point position = MAS::GetViewPositionFromEvent (self, event);
99120
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
100121
nodeEditor->OnMouseMove (MAS::GetModifierKeysFromEvent (event), position.GetX (), position.GetY ());
101122
}
102123

103124
- (void) rightMouseDragged : (NSEvent*) event
104125
{
126+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
127+
return;
128+
}
105129
NUIE::Point position = MAS::GetViewPositionFromEvent (self, event);
106130
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
107131
nodeEditor->OnMouseMove (MAS::GetModifierKeysFromEvent (event), position.GetX (), position.GetY ());
108132
}
109133

110134
- (void) otherMouseDragged : (NSEvent*) event
111135
{
136+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
137+
return;
138+
}
112139
NUIE::Point position = MAS::GetViewPositionFromEvent (self, event);
113140
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
114141
nodeEditor->OnMouseMove (MAS::GetModifierKeysFromEvent (event), position.GetX (), position.GetY ());
115142
}
116143

117144
- (void) scrollWheel : (NSEvent*) event
118145
{
146+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
147+
return;
148+
}
119149
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
120150
NUIE::ModifierKeys modifierKeys = MAS::GetModifierKeysFromEvent (event);
121151
float deltaX = [event scrollingDeltaX];
@@ -134,6 +164,9 @@ - (void) scrollWheel : (NSEvent*) event
134164

135165
- (void) magnifyWithEvent : (NSEvent*) event
136166
{
167+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
168+
return;
169+
}
137170
NUIE::Point position = MAS::GetViewPositionFromEvent (self, event);
138171
NUIE::MouseWheelRotation rotation = NUIE::MouseWheelRotation::Forward;
139172
if ([event magnification] < 0.0f) {
@@ -145,12 +178,18 @@ - (void) magnifyWithEvent : (NSEvent*) event
145178

146179
- (void) swipeWithEvent : (NSEvent*) event
147180
{
181+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
182+
return;
183+
}
148184
NUIE::NodeEditor* nodeEditor = nodeEditorControl->GetNodeEditor ();
149185
nodeEditor->OnMouseSwipe (MAS::GetModifierKeysFromEvent (event), [event deltaX], [event deltaY]);
150186
}
151187

152188
- (void) keyDown : (NSEvent*) event
153189
{
190+
if (!nodeEditorControl->IsInputHandlingEnabled ()) {
191+
return;
192+
}
154193
if (!nodeEditorControl->IsMouseOverEditorWindow ()) {
155194
return;
156195
}
@@ -242,8 +281,8 @@ - (void) cursorUpdate : (NSEvent *) theEvent
242281
@autoreleasepool {
243282
@try {
244283
NSRect viewRect = NSMakeRect (x, y, width, height);
245-
nsView = [[CocoaNSViewControl alloc] initWithFrame : viewRect];
246-
[((CocoaNSViewControl*) nsView) setNodeEditorControl : this];
284+
nsView = [[EditorView alloc] initWithFrame : viewRect];
285+
[((EditorView*) nsView) setNodeEditorControl : this];
247286
[((NSView*) nativeParentHandle) addSubview : nsView];
248287
} @catch (NSException*) {
249288

0 commit comments

Comments
 (0)