问题标签 [webkit2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
16537 浏览

objective-c - 如何在基于 WKWebView 的桌面应用程序中显示检查器?

我正在寻找一种方法来在我的 Mac 应用程序中显示 WKWebView的检查器。

使用 WebKit1 和 WebView,只需在 UserDefaults 中将 WebKitDeveloperExtras 设置为 true,就可以轻松地在 Mac 应用程序中显示检查器。这将在每个 Web 视图中为您提供“检查元素”菜单。

但是在带有 WKWebView 的 WebKit2 中,这不再起作用了。在 WWDC14 检查器会话中,他们解释说您必须添加一项权利,然后才能从 Safari 开发人员菜单中显示检查器。这仅在您是开发人员时才有效。

我查看了私有标题,发现 _allowsRemoteInspection 这让我认为您可以以某种方式启动检查器并连接到它,但我不确定从那里去哪里。

虽然我希望有一种官方的方式来做到这一点,但我的应用程序不在 AppStore 中,所以我可以使用私人的东西。

0 投票
2 回答
1622 浏览

java - 致命错误:webkit2/webkit2.h:没有这样的文件或目录

在 Arch Linux 上,升级到 Gnome 3.14 后,我在使用 Webkit2Gtk 时遇到了一些问题。

Vala: 考虑以下 vala 测试:

在升级到 Gnome 3.14 之前,我可以这样编译valac --pkg gtk+-3.0 --pkg webkit2gtk-3.0 --vapidir . valawebkit.vala(我没有在这里粘贴 webkit2gtk-3.0.vapi,因为它太长了)。现在使用 gnome 3.14 如果我尝试编译我得到

此外,如果我尝试运行在升级到 Gnome 3.14 之前编译的二进制文件,我会收到以下错误:

2) GJS / Eclipse / Java (SWT):如果我运行这个 gjs 示例或 eclipse (luna) 或任何其他基于 swt 4.4 的应用程序,我会得到以下信息:

我感觉这是 ArchLinux 和 Gnome 3.14 上的一种打包问题。有没有人有同样的问题?是否有针对 webkit2gtk 编译和运行的解决方法?

编辑 我取得了一点进展:我发现我需要的头文件现在位于/usr/include/webkitgtk3.0/usr/include/libsoup-2.4. 现在,像这样编译:

有效,但在链接器上仍然失败:

0 投票
1 回答
513 浏览

web - Webkit/webkit2 浏览器

Blink (Chromium) 是从 webkit 中衍生出来的。他们在两三年前就分开了。

似乎有很多浏览器使用铬引擎。顺便说一句,除了 safari 之外,还有其他由 webkit/webkit2 驱动的浏览器吗?

先感谢您。

0 投票
1 回答
73 浏览

webkit2 - 在没有 JavaScript 的 WebKit2 Web 扩展中清除选择

我想从 Web 扩展中清除选择。

有信号selection-changed,但似乎没有办法清除选择。

我尝试创建一个WebKitDOMRange,但似乎无法在文档中设置这个新范围。而且它似乎没有办法获得当前范围。

如何在不使用 JavaScript 字符串的情况下从 WebKit2 Web 扩展中清除选择?

0 投票
1 回答
263 浏览

webkit - Webkit2gtk 获取新窗口链接

我需要在新窗口中获取链接要求 webkit2gtk

在 create-web-view 中,新窗口的 uri 在哪里?

它到 webkitGTK 我需要 webkit2Gtk

0 投票
1 回答
111 浏览

python-3.x - python 3 pygi webkit2 api如何调用__init__(self)中的变量:

我得到了下面的类,我需要从另一个类中的函数调用 self.webview 变量。我如何做到这一点。

0 投票
0 回答
301 浏览

gtk3 - WebKit2Gtk WebView 触屏滚动

我在带有触摸屏的 Raspberry PI 上获得了 kiosk 网络视图。我不知道如何让触摸屏滚动工作。例如,当我打开 chrome 并导航到网站 xyz 时,我可以使用拖动(平移?)手势进行滚动。当我使用 WebKitWebView 在我的信息亭浏览器中导航到网站 xyz 时,我必须抓住滚动条并与他一起拖动以滚动。

我尝试了谷歌,尝试设置gtk_scrolled_window_set_kinetic_scrolling,, "gtk-touchscreen-mode"使用GtkScrolledWindow但仍然不幸运。也许我错过了一些东西......

有人对我的解决方案有任何提示吗?

0 投票
1 回答
1602 浏览

javascript - WebKit2Gtk 中的 JavaScriptCore 与 C?

我无法让 JavaScriptCore 与 WebKit2Gtk 一起使用。在我的 C 应用程序中,我使用 WebKit2Gtk 作为我希望能够访问 C 函数的应用程序的前端。

WebKitGtk(不是 WebKit2 版本)有几个示例。然而,在邮件列表中有一些信息表明 WebKit2Gtk 的线程性质,它更复杂。不幸的是,我没有找到任何例子。

我在加载回调中写了这段代码:

不幸的是,WebKit2Gtk 中绝对没有发生任何事情。但是,如果我使用 API 文档中定义的新函数并执行以下操作,我会得到所需的输出。

带有 run-javascript-function 的新 API 可以快速执行 JS 代码,但我想允许 WebKit2Gtk 中的 JS 代码执行我可以在我的 C 代码中处理的 JS 函数。

期待您的帮助,因为我有点卡在这件事上,在恢复到 WebKitGtk(不是 WebKit2Gtk 版本,而是以前的版本)之前,我很快想检查你们是否对如何实现它有任何想法。

0 投票
1 回答
140 浏览

gtk3 - 使用 WebKit2 时 Gtk 3 窗口“冻结”(Vala)

所以最近我一直在玩 Vala 和 Gtk+3.0,我决定创建一个非常简单的网络浏览器作为我的一个应用程序的一部分,以便显示我的一个网页,它使用 Google Maps API 来显示一些标记. 我创建了一个如下所示的类:

在我使用的编译标志中

类是这样使用的(这里将使用随机数据):

它有效。它在测试中得分为 100/100。唯一的问题是,我不能使用实际的 WebKit 对象。当我调整窗口大小时,WebKit 行为正常并且它正确调整网页大小,但我无法关闭窗口,也无法以任何方式与网页交互。我可以处理一些信号并手动关闭窗口,但 WebKit 仍然出现“冻结”。有没有办法让鼠标控制对象或者这只是一个错误?起初我认为这与我使用 gtk+-3.0 和 webkit2gtk-4.0 可能适用于某些较新版本的 gtk 的事实有关,但在某处我读到 webkit2gtk-3.0 被重命名为 webkit2gtk-4.0 确实,如果我使用旧版本的 WebKit2,我的应用程序将无法编译。

0 投票
0 回答
119 浏览

python - Python webkit2 无法在 Gmail 或 Google 收件箱中打开链接

我正在使用包含 WebKit2 webview 的 Python 创建一个 Gtk+ 应用程序。每当单击 GMail 或 Google 收件箱中的传出链接时,javascript 都会生成一个弹出窗口,内容为:

我已经为 webview 启用了“javascript-can-open-windows-automatically”设置,但它仍然不起作用。

如果我右键单击任何传出链接,然后选择“打开链接”或“在新窗口中打开”,链接就会打开。

我还使用“决定策略”信号和“创建”信号为导航请求创建了一个处理程序,希望检索 uri,但是在请求对象中,uri 是空白的。

正如这里所讨论的,这似乎是 webview 和 gmail/inbox 的问题。上一个问题尚未解决,因此我再次询问,但在 Python 的上下文中。