applescript, just need to allow system events

This commit is contained in:
neon443
2025-05-23 15:14:36 +01:00
parent 9ed7419685
commit 39f4a42181
3 changed files with 26 additions and 5 deletions

View File

@@ -284,7 +284,8 @@
COMBINE_HIDPI_IMAGES = YES; COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 1; CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = 8JGND254B7; DEVELOPMENT_TEAM = 8JGND254B7;
ENABLE_HARDENED_RUNTIME = YES; ENABLE_HARDENED_RUNTIME = NO;
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GENERATE_INFOPLIST_FILE = YES; GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_NSHumanReadableCopyright = ""; INFOPLIST_KEY_NSHumanReadableCopyright = "";
INFOPLIST_KEY_NSMainNibFile = MainMenu; INFOPLIST_KEY_NSMainNibFile = MainMenu;
@@ -313,7 +314,8 @@
COMBINE_HIDPI_IMAGES = YES; COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 1; CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = 8JGND254B7; DEVELOPMENT_TEAM = 8JGND254B7;
ENABLE_HARDENED_RUNTIME = YES; ENABLE_HARDENED_RUNTIME = NO;
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GENERATE_INFOPLIST_FILE = YES; GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_NSHumanReadableCopyright = ""; INFOPLIST_KEY_NSHumanReadableCopyright = "";
INFOPLIST_KEY_NSMainNibFile = MainMenu; INFOPLIST_KEY_NSMainNibFile = MainMenu;

View File

@@ -2,9 +2,7 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"> <plist version="1.0">
<dict> <dict>
<key>com.apple.security.app-sandbox</key> <key>com.apple.security.automation.apple-events</key>
<true/>
<key>com.apple.security.files.user-selected.read-only</key>
<true/> <true/>
</dict> </dict>
</plist> </plist>

View File

@@ -15,6 +15,12 @@ struct Screen {
var height: CGFloat var height: CGFloat
} }
enum DockSide {
case left
case right
case bottom
}
class MouseTracker { class MouseTracker {
var screen: Screen var screen: Screen
@@ -32,6 +38,7 @@ class MouseTracker {
fatalError("no screen wtf???") fatalError("no screen wtf???")
} }
addMonitor() addMonitor()
moveDock(.left)
} }
func checkMouse(_ event: NSEvent) { func checkMouse(_ event: NSEvent) {
@@ -40,6 +47,9 @@ class MouseTracker {
#if DEBUG #if DEBUG
print(location) print(location)
#endif #endif
if location.y > 1000 {
}
} }
func addMonitor() { func addMonitor() {
@@ -50,6 +60,17 @@ class MouseTracker {
NSEvent.removeMonitor(monitor as Any) NSEvent.removeMonitor(monitor as Any)
} }
func moveDock(_ toSide: DockSide) {
let script = """
tell application "System Events"
tell dock preferences
set screen edge to \(toSide)
end tell
end tell
"""
applescript(script)
}
func applescript(_ script: String) { func applescript(_ script: String) {
var error: NSDictionary? var error: NSDictionary?
if let scriptObject = NSAppleScript(source: script) { if let scriptObject = NSAppleScript(source: script) {