summaryrefslogtreecommitdiffstats
path: root/video
diff options
context:
space:
mode:
authorder richter <der.richter@gmx.de>2024-03-13 23:34:29 +0100
committerder richter <der.richter@gmx.de>2024-03-16 15:29:27 +0100
commitdb4eac140de5ac01c2014f86540ebffcb0d0596b (patch)
treec5ad90c8d1141eb6c15e487483be44cf66af7dde /video
parentab419a6660c6f8f78b30ba0838ab3c274746af89 (diff)
downloadmpv-db4eac140de5ac01c2014f86540ebffcb0d0596b.tar.bz2
mpv-db4eac140de5ac01c2014f86540ebffcb0d0596b.tar.xz
mac/input: move mouse event handling into input helper
Diffstat (limited to 'video')
-rw-r--r--video/out/mac/view.swift59
1 files changed, 12 insertions, 47 deletions
diff --git a/video/out/mac/view.swift b/video/out/mac/view.swift
index 8085ec8f20..c001a106ab 100644
--- a/video/out/mac/view.swift
+++ b/video/out/mac/view.swift
@@ -145,40 +145,34 @@ class View: NSView, CALayerDelegate {
}
override func mouseDown(with event: NSEvent) {
- if input?.mouseEnabled() ?? true {
- signalMouseDown(event)
- }
+ hasMouseDown = true
+ input?.processMouse(event: event)
}
override func mouseUp(with event: NSEvent) {
- if input?.mouseEnabled() ?? true {
- signalMouseUp(event)
- }
+ hasMouseDown = false
common.window?.isMoving = false
+ input?.processMouse(event: event)
}
override func rightMouseDown(with event: NSEvent) {
- if input?.mouseEnabled() ?? true {
- signalMouseDown(event)
- }
+ hasMouseDown = true
+ input?.processMouse(event: event)
}
override func rightMouseUp(with event: NSEvent) {
- if input?.mouseEnabled() ?? true {
- signalMouseUp(event)
- }
+ hasMouseDown = false
+ input?.processMouse(event: event)
}
override func otherMouseDown(with event: NSEvent) {
- if input?.mouseEnabled() ?? true {
- signalMouseDown(event)
- }
+ hasMouseDown = true
+ input?.processMouse(event: event)
}
override func otherMouseUp(with event: NSEvent) {
- if input?.mouseEnabled() ?? true {
- signalMouseUp(event)
- }
+ hasMouseDown = false
+ input?.processMouse(event: event)
}
override func magnify(with event: NSEvent) {
@@ -188,23 +182,6 @@ class View: NSView, CALayerDelegate {
common.window?.addWindowScale(Double(event.magnification))
}
- func signalMouseDown(_ event: NSEvent) {
- signalMouseEvent(event, MP_KEY_STATE_DOWN)
- if event.clickCount > 1 {
- signalMouseEvent(event, MP_KEY_STATE_UP)
- }
- }
-
- func signalMouseUp(_ event: NSEvent) {
- signalMouseEvent(event, MP_KEY_STATE_UP)
- }
-
- func signalMouseEvent(_ event: NSEvent, _ state: UInt32) {
- hasMouseDown = state == MP_KEY_STATE_DOWN
- let mpkey = getMpvButton(event)
- input?.put(key: (mpkey | Int32(state)), modifiers: event.modifierFlags)
- }
-
func signalMouseMovement(_ event: NSEvent) {
var point = convert(event.locationInWindow, from: nil)
point = convertToBacking(point)
@@ -283,16 +260,4 @@ class View: NSView, CALayerDelegate {
guard let window = common.window else { return false }
return !hasMouseDown && containsMouseLocation() && window.isKeyWindow
}
-
- func getMpvButton(_ event: NSEvent) -> Int32 {
- let buttonNumber = event.buttonNumber
- switch (buttonNumber) {
- case 0: return SWIFT_MBTN_LEFT
- case 1: return SWIFT_MBTN_RIGHT
- case 2: return SWIFT_MBTN_MID
- case 3: return SWIFT_MBTN_BACK
- case 4: return SWIFT_MBTN_FORWARD
- default: return SWIFT_MBTN9 + Int32(buttonNumber - 5)
- }
- }
}