mirror of
https://github.com/neon443/DockPhobia.git
synced 2026-03-11 06:49:12 +00:00
applescript, just need to allow system events
This commit is contained in:
@@ -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;
|
||||||
|
|||||||
@@ -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>
|
||||||
|
|||||||
@@ -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) {
|
||||||
|
|||||||
Reference in New Issue
Block a user