Compare commits

...

2 Commits

Author SHA1 Message Date
Duraid Abdul d995119198 Update LCManager.swift 2022-02-01 12:26:52 -08:00
Duraid Abdul b4d7c06432 Update LCManager.swift 2022-01-26 21:02:54 -08:00
+12 -10
View File
@@ -383,9 +383,11 @@ public class LCManager: NSObject, UIGestureRecognizerDelegate {
.first
if let windowScene = windowScene as? UIWindowScene {
windowSceneFound = true
UIWindow.swizzleStatusBarAppearanceOverride()
SwizzleTool().swizzleContextMenuReverseOrder()
consoleWindow = ConsoleWindow(windowScene: windowScene)
consoleWindow?.frame = UIScreen.main.bounds
consoleWindow?.windowLevel = UIWindow.Level.statusBar
@@ -397,9 +399,6 @@ public class LCManager: NSObject, UIGestureRecognizerDelegate {
viewController.view.addSubview(consoleView)
UIWindow.swizzleStatusBarAppearanceOverride
SwizzleTool().swizzleContextMenuReverseOrder()
updateConsoleOrigin()
}
}
@@ -765,9 +764,11 @@ public class LCManager: NSObject, UIGestureRecognizerDelegate {
func makeMenu() -> UIMenu {
let copy = UIAction(title: "Copy",
image: UIImage(systemName: "doc.on.doc"), handler: { _ in
self.copy()
let share = UIAction(title: "Share Text...",
image: UIImage(systemName: "square.and.arrow.up"), handler: { _ in
let activityViewController = UIActivityViewController(activityItems: [self.consoleTextView.text ?? ""],
applicationActivities: nil)
self.viewController.present(activityViewController, animated: true)
})
let resize = UIAction(title: "Resize Console",
@@ -987,7 +988,7 @@ public class LCManager: NSObject, UIGestureRecognizerDelegate {
var menuContent: [UIMenuElement] = []
if consoleTextView.text != "" {
menuContent.append(contentsOf: [copy, consoleActions])
menuContent.append(contentsOf: [share, consoleActions])
} else {
menuContent.append(resize)
}
@@ -1229,12 +1230,13 @@ extension UIView {
extension UIWindow {
/// Make sure this window does not have control over the status bar appearance.
static let swizzleStatusBarAppearanceOverride: Void = {
static func swizzleStatusBarAppearanceOverride() {
guard let originalMethod = class_getInstanceMethod(UIWindow.self, NSSelectorFromString("_can" + "Affect" + "Status" + "Bar" + "Appearance")),
let swizzledMethod = class_getInstanceMethod(UIWindow.self, #selector(swizzled_statusBarAppearance))
else { return }
method_exchangeImplementations(originalMethod, swizzledMethod)
}()
}
@objc func swizzled_statusBarAppearance() -> Bool {
return isKeyWindow