Add addon: newWindow (Allow pages to open new windows)
This commit is contained in:
parent
da063b736c
commit
c04c2ccc08
|
@ -2,6 +2,7 @@ userModules
|
|||
title
|
||||
favicon
|
||||
history
|
||||
newWindow
|
||||
|
||||
settings
|
||||
settingsNoHardwareAccel
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
import gi
|
||||
gi.require_version("WebKit2","4.0")
|
||||
from gi.repository import WebKit2
|
||||
|
||||
browser = mfp.require("browser")
|
||||
eventHandler = mfp.Bunch()
|
||||
|
||||
def decidePolicy(webView,decision,decisionType):
|
||||
if decisionType == WebKit2.PolicyDecisionType.NEW_WINDOW_ACTION:
|
||||
webView.cNewWindow = True
|
||||
decision.use()
|
||||
return False
|
||||
|
||||
def create(webView,navigationAction):
|
||||
newWebView = browser.createWebView(relatedWebView=webView)
|
||||
browser.windows.append(browser.module.require(mfp.p("window","browser.py")).create(webViews=[newWebView]))
|
||||
return newWebView
|
||||
|
||||
def onWebviewCreated(webView):
|
||||
webView.connect("decide-policy",decidePolicy)
|
||||
webView.connect("create",create)
|
||||
eventHandler["webview:created"] = onWebviewCreated
|
Loading…
Reference in New Issue