import WebKit
import JavaScriptCore
-fileprivate extension Selector {
+private extension Selector {
static let reloadContent = #selector(GameViewController.reloadContent(_:))
static let deleteCacheAndReload = #selector(GameViewController.deleteCacheAndReload(_:))
@IBOutlet var webView: WebView!
- override var nibName: String! {
+ override var nibName: NSNib.Name {
- return "GameViewController"
+ return .nibName(instanceOf: self)
}
- fileprivate var flashTopLeft = NSPoint(x: 2600, y: 1445)
+ private var flashTopLeft = NSPoint(x: 2600, y: 1445)
private var clipView: NSClipView {
return view as! NSClipView // swiftlint:disable:this force_cast
@IBAction func reloadContent(_ sender: AnyObject?) {
- guard let _ = webView.mainFrameURL
- else {
- webView.mainFrameURL = GameViewController.gamePageURL
- return
+ guard let _ = webView.mainFrameURL else {
+
+ webView.mainFrameURL = GameViewController.gamePageURL
+ return
}
// ゲームページでない場合はゲームページを表示する
let panel = ProgressPanel()
- guard let window = view.window,
- let panelWindow = panel.window
- else { return }
+ guard let window = view.window else { return }
+ guard let panelWindow = panel.window else { return }
panel.title = ""
panel.message = NSLocalizedString("Deleting caches...", comment: "Deleting caches...")
panel.animate = true
- window.beginSheet(panelWindow) { _ in NSSound(named: "Submarine")?.play() }
+ window.beginSheet(panelWindow) { _ in NSSound(named: NSSound.Name("Submarine"))?.play() }
AppDelegate.shared.clearCache()
if menuItem.action == .reloadContent {
- guard let _ = webView.mainFrame,
- let frameURL = webView.mainFrameURL
- else { return true }
+ guard let _ = webView.mainFrame else { return true }
+ guard let frameURL = webView.mainFrameURL else { return true }
switch frameURL {
case GameViewController.gamePageURL:
func webView(_ sender: WebView!, didFinishLoadFor frame: WebFrame!) {
- guard let path = frame.dataSource?.initialRequest.url?.path
- else { return }
+ guard let path = frame.dataSource?.initialRequest.url?.path else { return }
let handler: (JSContext?, JSValue?) -> Void = { (_, exception) in
if path.hasSuffix("gadgets/ifr") {
- guard let context = frame.javaScriptContext
- else { return }
+ guard let context = frame.javaScriptContext else { return }
context.exceptionHandler = handler
context.evaluateScript(
if path.hasSuffix("app_id=854854") {
- guard let context = frame.javaScriptContext
- else { return }
+ guard let context = frame.javaScriptContext else { return }
context.exceptionHandler = handler
context.evaluateScript(
)
let validIframe = context.objectForKeyedSubscript("validIframe").toInt32()
- guard validIframe != 0
- else { return }
+ guard validIframe != 0 else { return }
let top = context.objectForKeyedSubscript("atop").toDouble()
let left = context.objectForKeyedSubscript("aleft").toDouble()
func webView(_ sender: WebView!, contextMenuItemsForElement element: [AnyHashable: Any]!, defaultMenuItems: [Any]!) -> [Any]! {
- guard let menuItems = defaultMenuItems as? [NSMenuItem]
- else { return [] }
+ guard let menuItems = defaultMenuItems as? [NSMenuItem] else { return [] }
return menuItems.filter { !GameViewController.excludeMenuItemTag.contains($0.tag) }
}