// // InAppWebView.swift // flutter_inappbrowser // // Created by Lorenzo on 21/10/18. // import Foundation import WebKit public class InAppWebView: WKWebView { var historyOffset = 0 public func goBackOrForward(steps: Int) { if canGoBackOrForward(steps: steps) { if (steps > 0) { let index = steps - 1 go(to: self.backForwardList.forwardList[index]) } else if (steps < 0){ let backListLength = self.backForwardList.backList.count let index = backListLength + steps go(to: self.backForwardList.backList[index]) } } } public func canGoBackOrForward(steps: Int) -> Bool { let currentIndex = self.backForwardList.backList.count return (steps >= 0) ? steps <= self.backForwardList.forwardList.count : currentIndex + steps >= 0 } }