                 // when we try and open them
                 quickActions.handleShortCutItem(shortcut, withBrowserViewController: browserViewController)
                 quickActions.launchedShortcutItem = nil
+            }
+        }
+
+        // If we have a URL waiting to open, switch to non-private mode and open the URL.
+        if let url = openInFirefoxURL {
+            openInFirefoxURL = nil
+            // This needs to be scheduled so that the BVC is ready.
+            dispatch_async(dispatch_get_main_queue()) {
+                if #available(iOS 9, *) {
+                    self.browserViewController.switchToPrivacyMode(isPrivate: false)
+                }
+                self.browserViewController.switchToTabForURLOrOpen(url)
             }
         }
     }

                default: ()
                }
            }
            if let url = url,
                   newURL = NSURL(string: url.unescape()) {
                self.browserViewController.openURLInNewTab(newURL)
                return true
            }
        }


    let appVersion = NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleShortVersionString") as! String

    var openInFirefoxURL: NSURL? = nil

    func application(application: UIApplication, willFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
        // Hold references to willFinishLaunching parameters for delayed app launch
        self.application = application
        self.launchOptions = launchOptions
