mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-08-21 03:43:16 +09:00
47 lines
2.5 KiB
Swift
47 lines
2.5 KiB
Swift
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
import Foundation
|
|
|
|
@objc public protocol MenuHelperInterface {
|
|
@objc optional func menuHelperCopy()
|
|
@objc optional func menuHelperOpenAndFill()
|
|
@objc optional func menuHelperReveal()
|
|
@objc optional func menuHelperSecure()
|
|
@objc optional func menuHelperFindInPage()
|
|
}
|
|
|
|
open class MenuHelper: NSObject {
|
|
open static let SelectorCopy: Selector = #selector(MenuHelperInterface.menuHelperCopy)
|
|
open static let SelectorHide: Selector = #selector(MenuHelperInterface.menuHelperSecure)
|
|
open static let SelectorOpenAndFill: Selector = #selector(MenuHelperInterface.menuHelperOpenAndFill)
|
|
open static let SelectorReveal: Selector = #selector(MenuHelperInterface.menuHelperReveal)
|
|
open static let SelectorFindInPage: Selector = #selector(MenuHelperInterface.menuHelperFindInPage)
|
|
|
|
open class var defaultHelper: MenuHelper {
|
|
struct Singleton {
|
|
static let instance = MenuHelper()
|
|
}
|
|
return Singleton.instance
|
|
}
|
|
|
|
open func setItems() {
|
|
let revealPasswordTitle = NSLocalizedString("Reveal", tableName: "LoginManager", comment: "Reveal password text selection menu item")
|
|
let revealPasswordItem = UIMenuItem(title: revealPasswordTitle, action: MenuHelper.SelectorReveal)
|
|
|
|
let hidePasswordTitle = NSLocalizedString("Hide", tableName: "LoginManager", comment: "Hide password text selection menu item")
|
|
let hidePasswordItem = UIMenuItem(title: hidePasswordTitle, action: MenuHelper.SelectorHide)
|
|
|
|
let copyTitle = NSLocalizedString("Copy", tableName: "LoginManager", comment: "Copy password text selection menu item")
|
|
let copyItem = UIMenuItem(title: copyTitle, action: MenuHelper.SelectorCopy)
|
|
|
|
let openAndFillTitle = NSLocalizedString("Open & Fill", tableName: "LoginManager", comment: "Open and Fill website text selection menu item")
|
|
let openAndFillItem = UIMenuItem(title: openAndFillTitle, action: MenuHelper.SelectorOpenAndFill)
|
|
|
|
let findInPageTitle = NSLocalizedString("Find in Page", tableName: "FindInPage", comment: "Text selection menu item")
|
|
let findInPageItem = UIMenuItem(title: findInPageTitle, action: MenuHelper.SelectorFindInPage)
|
|
|
|
UIMenuController.shared.menuItems = [copyItem, revealPasswordItem, hidePasswordItem, openAndFillItem, findInPageItem]
|
|
}
|
|
}
|