Merge pull request #1936 from michalsrutek/feature/swift-code-improvements
Swift code improvements
This commit is contained in:
commit
bccd7535ce
|
@ -9,8 +9,9 @@ import Foundation
|
|||
|
||||
public class CredentialDatabase: ChannelDelegate {
|
||||
static let METHOD_CHANNEL_NAME = "com.pichillilorenzo/flutter_inappwebview_credential_database"
|
||||
var plugin: SwiftFlutterPlugin?
|
||||
static var credentialStore = URLCredentialStorage.shared
|
||||
static let credentialStore = URLCredentialStorage.shared
|
||||
|
||||
private var plugin: SwiftFlutterPlugin?
|
||||
|
||||
init(plugin: SwiftFlutterPlugin) {
|
||||
super.init(channel: FlutterMethodChannel(name: CredentialDatabase.METHOD_CHANNEL_NAME, binaryMessenger: plugin.registrar!.messenger()))
|
||||
|
@ -44,7 +45,7 @@ public class CredentialDatabase: ChannelDelegate {
|
|||
let host = arguments!["host"] as! String
|
||||
let urlProtocol = arguments!["protocol"] as? String
|
||||
let urlPort = arguments!["port"] as? Int ?? 0
|
||||
var realm = arguments!["realm"] as? String;
|
||||
var realm = arguments!["realm"] as? String
|
||||
if let r = realm, r.isEmpty {
|
||||
realm = nil
|
||||
}
|
||||
|
@ -64,7 +65,7 @@ public class CredentialDatabase: ChannelDelegate {
|
|||
let host = arguments!["host"] as! String
|
||||
let urlProtocol = arguments!["protocol"] as? String
|
||||
let urlPort = arguments!["port"] as? Int ?? 0
|
||||
var realm = arguments!["realm"] as? String;
|
||||
var realm = arguments!["realm"] as? String
|
||||
if let r = realm, r.isEmpty {
|
||||
realm = nil
|
||||
}
|
||||
|
@ -80,14 +81,14 @@ public class CredentialDatabase: ChannelDelegate {
|
|||
let host = arguments!["host"] as! String
|
||||
let urlProtocol = arguments!["protocol"] as? String
|
||||
let urlPort = arguments!["port"] as? Int ?? 0
|
||||
var realm = arguments!["realm"] as? String;
|
||||
var realm = arguments!["realm"] as? String
|
||||
if let r = realm, r.isEmpty {
|
||||
realm = nil
|
||||
}
|
||||
let username = arguments!["username"] as! String
|
||||
let password = arguments!["password"] as! String
|
||||
|
||||
var credential: URLCredential? = nil;
|
||||
var credential: URLCredential? = nil
|
||||
var protectionSpaceCredential: URLProtectionSpace? = nil
|
||||
|
||||
for (protectionSpace, credentials) in CredentialDatabase.credentialStore.allCredentials {
|
||||
|
@ -116,12 +117,12 @@ public class CredentialDatabase: ChannelDelegate {
|
|||
let host = arguments!["host"] as! String
|
||||
let urlProtocol = arguments!["protocol"] as? String
|
||||
let urlPort = arguments!["port"] as? Int ?? 0
|
||||
var realm = arguments!["realm"] as? String;
|
||||
var realm = arguments!["realm"] as? String
|
||||
if let r = realm, r.isEmpty {
|
||||
realm = nil
|
||||
}
|
||||
|
||||
var credentialsToRemove: [URLCredential] = [];
|
||||
var credentialsToRemove: [URLCredential] = []
|
||||
var protectionSpaceCredential: URLProtectionSpace? = nil
|
||||
|
||||
for (protectionSpace, credentials) in CredentialDatabase.credentialStore.allCredentials {
|
||||
|
|
|
@ -9,13 +9,13 @@ import Foundation
|
|||
import Flutter
|
||||
|
||||
public class FindInteractionController: NSObject, Disposable {
|
||||
static let METHOD_CHANNEL_NAME_PREFIX = "com.pichillilorenzo/flutter_inappwebview_find_interaction_"
|
||||
|
||||
static var METHOD_CHANNEL_NAME_PREFIX = "com.pichillilorenzo/flutter_inappwebview_find_interaction_";
|
||||
var plugin: SwiftFlutterPlugin?
|
||||
var webView: InAppWebView?
|
||||
var channelDelegate: FindInteractionChannelDelegate?
|
||||
var settings: FindInteractionSettings?
|
||||
var shouldCallOnRefresh = false
|
||||
|
||||
private var plugin: SwiftFlutterPlugin?
|
||||
private var settings: FindInteractionSettings?
|
||||
|
||||
private var _searchText: String? = nil
|
||||
var searchText: String? {
|
||||
|
|
|
@ -9,6 +9,7 @@ import Foundation
|
|||
|
||||
public class HeadlessInAppWebView: Disposable {
|
||||
static let METHOD_CHANNEL_NAME_PREFIX = "com.pichillilorenzo/flutter_headless_inappwebview_"
|
||||
|
||||
var id: String
|
||||
var channelDelegate: HeadlessWebViewChannelDelegate?
|
||||
var flutterWebView: FlutterWebViewController?
|
||||
|
@ -24,7 +25,7 @@ public class HeadlessInAppWebView : Disposable {
|
|||
}
|
||||
|
||||
public func onWebViewCreated() {
|
||||
channelDelegate?.onWebViewCreated();
|
||||
channelDelegate?.onWebViewCreated()
|
||||
}
|
||||
|
||||
public func prepare(params: NSDictionary) {
|
||||
|
|
|
@ -11,7 +11,7 @@ import WebKit
|
|||
import Foundation
|
||||
|
||||
public class InAppBrowserWebViewController: UIViewController, InAppBrowserDelegate, UIScrollViewDelegate, UISearchBarDelegate, Disposable {
|
||||
static var METHOD_CHANNEL_NAME_PREFIX = "com.pichillilorenzo/flutter_inappbrowser_";
|
||||
static let METHOD_CHANNEL_NAME_PREFIX = "com.pichillilorenzo/flutter_inappbrowser_"
|
||||
|
||||
var closeButton: UIBarButtonItem!
|
||||
var reloadButton: UIBarButtonItem!
|
||||
|
|
|
@ -9,7 +9,7 @@ import Foundation
|
|||
|
||||
public class ContextMenuSettings: ISettings<NSObject> {
|
||||
|
||||
var hideDefaultSystemContextMenuItems = false;
|
||||
var hideDefaultSystemContextMenuItems = false
|
||||
|
||||
override init(){
|
||||
super.init()
|
||||
|
|
|
@ -14,7 +14,7 @@ public class InAppWebView: WKWebView, UIScrollViewDelegate, WKUIDelegate,
|
|||
WKDownloadDelegate,
|
||||
PullToRefreshDelegate,
|
||||
Disposable {
|
||||
static var METHOD_CHANNEL_NAME_PREFIX = "com.pichillilorenzo/flutter_inappwebview_"
|
||||
static let METHOD_CHANNEL_NAME_PREFIX = "com.pichillilorenzo/flutter_inappwebview_"
|
||||
|
||||
var id: Any? // viewId
|
||||
var plugin: SwiftFlutterPlugin?
|
||||
|
@ -32,8 +32,8 @@ public class InAppWebView: WKWebView, UIScrollViewDelegate, WKUIDelegate,
|
|||
var inFullscreen = false
|
||||
var preventGestureDelay = false
|
||||
|
||||
static var sslCertificatesMap: [String: SslCertificate] = [:] // [URL host name : SslCertificate]
|
||||
static var credentialsProposed: [URLCredential] = []
|
||||
private static var sslCertificatesMap: [String: SslCertificate] = [:] // [URL host name : SslCertificate]
|
||||
private static var credentialsProposed: [URLCredential] = []
|
||||
|
||||
var lastScrollX: CGFloat = 0
|
||||
var lastScrollY: CGFloat = 0
|
||||
|
@ -103,14 +103,14 @@ public class InAppWebView: WKWebView, UIScrollViewDelegate, WKUIDelegate,
|
|||
set {
|
||||
super.frame = newValue
|
||||
|
||||
self.scrollView.contentInset = UIEdgeInsets.zero;
|
||||
self.scrollView.contentInset = .zero
|
||||
if #available(iOS 11, *) {
|
||||
// Above iOS 11, adjust contentInset to compensate the adjustedContentInset so the sum will
|
||||
// always be 0.
|
||||
if (scrollView.adjustedContentInset != UIEdgeInsets.zero) {
|
||||
let insetToAdjust = self.scrollView.adjustedContentInset;
|
||||
let insetToAdjust = self.scrollView.adjustedContentInset
|
||||
scrollView.contentInset = UIEdgeInsets(top: -insetToAdjust.top, left: -insetToAdjust.left,
|
||||
bottom: -insetToAdjust.bottom, right: -insetToAdjust.right);
|
||||
bottom: -insetToAdjust.bottom, right: -insetToAdjust.right)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2190,7 +2190,6 @@ public class InAppWebView: WKWebView, UIScrollViewDelegate, WKUIDelegate,
|
|||
}
|
||||
|
||||
struct IdentityAndTrust {
|
||||
|
||||
var identityRef: SecIdentity
|
||||
var trust: SecTrust
|
||||
var certArray: AnyObject
|
||||
|
@ -2200,7 +2199,7 @@ public class InAppWebView: WKWebView, UIScrollViewDelegate, WKUIDelegate,
|
|||
var identityAndTrust: IdentityAndTrust?
|
||||
var securityError: OSStatus = errSecSuccess
|
||||
|
||||
var importResult: CFArray? = nil
|
||||
var importResult: CFArray?
|
||||
securityError = SecPKCS12Import(
|
||||
PKCS12Data as NSData,
|
||||
[kSecImportExportPassphrase as String: password] as NSDictionary,
|
||||
|
@ -2208,19 +2207,19 @@ public class InAppWebView: WKWebView, UIScrollViewDelegate, WKUIDelegate,
|
|||
)
|
||||
|
||||
if securityError == errSecSuccess {
|
||||
let certItems:CFArray = importResult! as CFArray;
|
||||
let certItems: CFArray = importResult! as CFArray
|
||||
let certItemsArray: Array = certItems as Array
|
||||
let dict:AnyObject? = certItemsArray.first;
|
||||
let dict: AnyObject? = certItemsArray.first
|
||||
if let certEntry: Dictionary = dict as? Dictionary<String, AnyObject> {
|
||||
// grab the identity
|
||||
let identityPointer:AnyObject? = certEntry["identity"];
|
||||
let secIdentityRef:SecIdentity = (identityPointer as! SecIdentity?)!;
|
||||
let identityPointer: AnyObject? = certEntry["identity"]
|
||||
let secIdentityRef:SecIdentity = (identityPointer as! SecIdentity?)!
|
||||
// grab the trust
|
||||
let trustPointer:AnyObject? = certEntry["trust"];
|
||||
let trustRef:SecTrust = trustPointer as! SecTrust;
|
||||
let trustPointer: AnyObject? = certEntry["trust"]
|
||||
let trustRef:SecTrust = trustPointer as! SecTrust
|
||||
// grab the cert
|
||||
let chainPointer:AnyObject? = certEntry["chain"];
|
||||
identityAndTrust = IdentityAndTrust(identityRef: secIdentityRef, trust: trustRef, certArray: chainPointer!);
|
||||
let chainPointer: AnyObject? = certEntry["chain"]
|
||||
identityAndTrust = IdentityAndTrust(identityRef: secIdentityRef, trust: trustRef, certArray: chainPointer!)
|
||||
}
|
||||
} else {
|
||||
print("Security Error: " + securityError.description)
|
||||
|
@ -2228,7 +2227,7 @@ public class InAppWebView: WKWebView, UIScrollViewDelegate, WKUIDelegate,
|
|||
print(SecCopyErrorMessageString(securityError, nil) ?? "")
|
||||
}
|
||||
}
|
||||
return identityAndTrust;
|
||||
return identityAndTrust
|
||||
}
|
||||
|
||||
func createAlertDialog(message: String?, responseMessage: String?, confirmButtonTitle: String?, completionHandler: @escaping () -> Void) {
|
||||
|
@ -2239,7 +2238,7 @@ public class InAppWebView: WKWebView, UIScrollViewDelegate, WKUIDelegate,
|
|||
|
||||
alertController.addAction(UIAlertAction(title: okButton, style: UIAlertAction.Style.default) {
|
||||
_ in completionHandler()}
|
||||
);
|
||||
)
|
||||
|
||||
guard let presentingViewController = inAppBrowserDelegate != nil ? inAppBrowserDelegate as? InAppBrowserWebViewController : window?.rootViewController else {
|
||||
completionHandler()
|
||||
|
@ -2463,16 +2462,16 @@ public class InAppWebView: WKWebView, UIScrollViewDelegate, WKUIDelegate,
|
|||
let disableHorizontalScroll = settings?.disableHorizontalScroll ?? false
|
||||
if startedByUser {
|
||||
if disableVerticalScroll && disableHorizontalScroll {
|
||||
scrollView.contentOffset = CGPoint(x: lastScrollX, y: lastScrollY);
|
||||
scrollView.contentOffset = CGPoint(x: lastScrollX, y: lastScrollY)
|
||||
}
|
||||
else if disableVerticalScroll {
|
||||
if scrollView.contentOffset.y >= 0 || scrollView.contentOffset.y < 0 {
|
||||
scrollView.contentOffset = CGPoint(x: scrollView.contentOffset.x, y: lastScrollY);
|
||||
scrollView.contentOffset = CGPoint(x: scrollView.contentOffset.x, y: lastScrollY)
|
||||
}
|
||||
}
|
||||
else if disableHorizontalScroll {
|
||||
if scrollView.contentOffset.x >= 0 || scrollView.contentOffset.x < 0 {
|
||||
scrollView.contentOffset = CGPoint(x: lastScrollX, y: scrollView.contentOffset.y);
|
||||
scrollView.contentOffset = CGPoint(x: lastScrollX, y: scrollView.contentOffset.y)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2789,24 +2788,24 @@ public class InAppWebView: WKWebView, UIScrollViewDelegate, WKUIDelegate,
|
|||
switch (message.name) {
|
||||
case "consoleLog":
|
||||
messageLevel = 1
|
||||
break;
|
||||
break
|
||||
case "consoleDebug":
|
||||
// on Android, console.debug is TIP
|
||||
messageLevel = 0
|
||||
break;
|
||||
break
|
||||
case "consoleError":
|
||||
messageLevel = 3
|
||||
break;
|
||||
break
|
||||
case "consoleInfo":
|
||||
// on Android, console.info is LOG
|
||||
messageLevel = 1
|
||||
break;
|
||||
break
|
||||
case "consoleWarn":
|
||||
messageLevel = 2
|
||||
break;
|
||||
break
|
||||
default:
|
||||
messageLevel = 1
|
||||
break;
|
||||
break
|
||||
}
|
||||
let consoleMessage = body["message"] as? String ?? ""
|
||||
|
||||
|
|
|
@ -11,8 +11,9 @@ import WebKit
|
|||
@available(iOS 11.0, *)
|
||||
public class MyCookieManager: ChannelDelegate {
|
||||
static let METHOD_CHANNEL_NAME = "com.pichillilorenzo/flutter_inappwebview_cookiemanager"
|
||||
var plugin: SwiftFlutterPlugin?
|
||||
static var httpCookieStore = WKWebsiteDataStore.default().httpCookieStore
|
||||
static let httpCookieStore = WKWebsiteDataStore.default().httpCookieStore
|
||||
|
||||
private var plugin: SwiftFlutterPlugin?
|
||||
|
||||
init(plugin: SwiftFlutterPlugin) {
|
||||
super.init(channel: FlutterMethodChannel(name: MyCookieManager.METHOD_CHANNEL_NAME, binaryMessenger: plugin.registrar!.messenger()))
|
||||
|
@ -64,13 +65,13 @@ public class MyCookieManager: ChannelDelegate {
|
|||
let path = arguments!["path"] as! String
|
||||
let domain = arguments!["domain"] as? String
|
||||
MyCookieManager.deleteCookie(url: url, name: name, path: path, domain: domain, result: result)
|
||||
break;
|
||||
break
|
||||
case "deleteCookies":
|
||||
let url = arguments!["url"] as! String
|
||||
let path = arguments!["path"] as! String
|
||||
let domain = arguments!["domain"] as? String
|
||||
MyCookieManager.deleteCookies(url: url, path: path, domain: domain, result: result)
|
||||
break;
|
||||
break
|
||||
case "deleteAllCookies":
|
||||
MyCookieManager.deleteAllCookies(result: result)
|
||||
break
|
||||
|
|
|
@ -11,8 +11,9 @@ import WebKit
|
|||
@available(iOS 9.0, *)
|
||||
public class MyWebStorageManager: ChannelDelegate {
|
||||
static let METHOD_CHANNEL_NAME = "com.pichillilorenzo/flutter_inappwebview_webstoragemanager"
|
||||
var plugin: SwiftFlutterPlugin?
|
||||
static var websiteDataStore = WKWebsiteDataStore.default()
|
||||
static let websiteDataStore = WKWebsiteDataStore.default()
|
||||
|
||||
private var plugin: SwiftFlutterPlugin?
|
||||
|
||||
init(plugin: SwiftFlutterPlugin) {
|
||||
super.init(channel: FlutterMethodChannel(name: MyWebStorageManager.METHOD_CHANNEL_NAME, binaryMessenger: plugin.registrar!.messenger()))
|
||||
|
|
|
@ -9,7 +9,8 @@ import Foundation
|
|||
import Flutter
|
||||
|
||||
public class PullToRefreshControl: UIRefreshControl, Disposable {
|
||||
static var METHOD_CHANNEL_NAME_PREFIX = "com.pichillilorenzo/flutter_inappwebview_pull_to_refresh_";
|
||||
static let METHOD_CHANNEL_NAME_PREFIX = "com.pichillilorenzo/flutter_inappwebview_pull_to_refresh_"
|
||||
|
||||
var plugin: SwiftFlutterPlugin?
|
||||
var channelDelegate: PullToRefreshChannelDelegate?
|
||||
var settings: PullToRefreshSettings?
|
||||
|
|
|
@ -1571,7 +1571,6 @@ public class InAppWebView: WKWebView, WKUIDelegate,
|
|||
}
|
||||
|
||||
struct IdentityAndTrust {
|
||||
|
||||
var identityRef: SecIdentity
|
||||
var trust: SecTrust
|
||||
var certArray: AnyObject
|
||||
|
@ -1594,14 +1593,14 @@ public class InAppWebView: WKWebView, WKUIDelegate,
|
|||
let dict: AnyObject? = certItemsArray.first;
|
||||
if let certEntry: Dictionary = dict as? Dictionary<String, AnyObject> {
|
||||
// grab the identity
|
||||
let identityPointer:AnyObject? = certEntry["identity"];
|
||||
let secIdentityRef:SecIdentity = (identityPointer as! SecIdentity?)!;
|
||||
let identityPointer: AnyObject? = certEntry["identity"]
|
||||
let secIdentityRef:SecIdentity = (identityPointer as! SecIdentity?)!
|
||||
// grab the trust
|
||||
let trustPointer:AnyObject? = certEntry["trust"];
|
||||
let trustRef:SecTrust = trustPointer as! SecTrust;
|
||||
let trustPointer: AnyObject? = certEntry["trust"]
|
||||
let trustRef:SecTrust = trustPointer as! SecTrust
|
||||
// grab the cert
|
||||
let chainPointer:AnyObject? = certEntry["chain"];
|
||||
identityAndTrust = IdentityAndTrust(identityRef: secIdentityRef, trust: trustRef, certArray: chainPointer!);
|
||||
let chainPointer: AnyObject? = certEntry["chain"]
|
||||
identityAndTrust = IdentityAndTrust(identityRef: secIdentityRef, trust: trustRef, certArray: chainPointer!)
|
||||
}
|
||||
} else {
|
||||
print("Security Error: " + securityError.description)
|
||||
|
|
Loading…
Reference in New Issue