     
     func webView(webView: WKWebView, decidePolicyForNavigationAction navigationAction: WKNavigationAction, decisionHandler: (WKNavigationActionPolicy) -> Void) {
         // Open external links in browser
-        if navigationAction.request.URL?.host != NSURL(string: AppGlobal.userDefaults[.baseURL])?.host {
-            decisionHandler(.Cancel)
-            return presentSafariController(navigationAction.request.URLString)
+        if navigationAction.navigationType == .LinkActivated
+            && navigationAction.targetFrame?.mainFrame == true
+            && navigationAction.request.URL?.host != NSURL(string: AppGlobal.userDefaults[.baseURL])?.host {
+                decisionHandler(.Cancel)
+                return presentSafariController(navigationAction.request.URLString)
         }
         
         decisionHandler(.Allow)

        super.viewDidLoad()
        
        loadToolbar()
        
        // Handle when navigation bar show/hide on swipe
        navigationController?.barHideOnSwipeGestureRecognizer
            .addTarget(self, action: #selector(barHideOnSwipe))
    }
    
    func barHideOnSwipe() {
        // Status bar background transparent by default so fill in
        toggleStatusBar(navigationController?.navigationBar.hidden)
    }
    
    override func viewWillAppear(animated: Bool) {


    func refreshFavoriteIcon() {
        // Update favorite indicator
        favoriteBarButton.image = UIImage(named: AppGlobal.userDefaults[.favorites].contains(model.id)
            ? "star-filled" : "star",
                inBundle: AppConstants.bundle)
    }
    
    func refreshCommentIcon() {
