问题标签 [gjs]

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 投票
0 回答
98 浏览

clutter - gnome shell 扩展动画演员大小

我正在尝试为 gnome-shell 中的现有演员设置动画。我尝试了几种方法,每次都可以更改演员位置,但无法更改演员大小。

这是我尝试过的方法之一,演员正在改变它的位置但不改变大小。

我也试过直接使用 set_width 和 set_hight 没有成功,也没有错误。

0 投票
0 回答
60 浏览

javascript - 在 Gnome Applet 中使用 JavaScript 加密字符串

有没有一种简单的方法可以在用 JavaScript 编写的 gnome 小程序中加密例如带有 AES 的字符串?我在 gnome api 参考 [1] 中找不到解决方案。我看到 libsecret 有一个用于测试目的的 AES 实现 [2],但我不知道我是否可以使用它 - 如果可以,如何使用。

我实际上能想象的唯一方法是使用opensslover GLib.spawn_command_line_

[1] https://developer.gnome.org/references
[2] https://github.com/GNOME/libsecret/blob/master/libsecret/mock/aes.py

0 投票
1 回答
376 浏览

gnome - 如何使用 GJS 创建杂乱事件

我将从与像素坐标对应的网络接收 {x,y} 数据。

我想创建混乱事件或至少通知系统(混乱阶段)有鼠标移动到接收到的 {x,y} 数据。

我查看了非官方的 GJS 文档:http ://www.roojs.com/seed/gir-1.2-gtk-3.0/seed/Clutter.Event.html

0 投票
1 回答
729 浏览

javascript - 在 Gjs Gtk.Application 的命令行中处理作为参数传递的文件

我正在尝试使用Gjs编写一个 GNOME GTK3 应用程序,它处理作为命令行参数传递的文件。为此,我连接了 的open信号Gtk.Application并设置了Gio.ApplicationFlags.HANDLES_OPEN标志:

当我使用文件参数运行程序时,我希望_onOpen使用传入的参数来调用它GFile。而是_onActivate被调用,就像我在没有任何文件参数的情况下运行它一样:

我正在运行 gjs@1.44。

0 投票
1 回答
536 浏览

javascript - 使用 Soup 使用具有基本身份验证的 Web 服务

作为 gnome-shell 扩展的一部分,我尝试使用 xmlrpc 使用 Web 服务。Web 服务需要一个基本的身份验证标头。使用 Soup,我得到了以下代码(基本上是来自伟大的 openweather 扩展的蓝图):

我正在使用 Soup 来建立连接。在执行队列回调之前执行验证信号。

尽管如此,在回调的开头,response_body 持有状态码 401 而不是预期的授权。给定的凭据不正确。更正后,呼叫通过。但是,您总是需要以这种方式对提供程序进行两次调用:第一次获取它使用 BasicAuth 的信息,第二次实际进行调用。

有没有办法在第一次调用时直接提供身份验证信息?

0 投票
1 回答
117 浏览

introspection - 使用 GObjectIntrospection 异步调用 GnomeKeyring

我正在编写一个 gnome-shell 扩展程序,显示电话(或电)等预付卡的当前余额。由于这需要给定服务的凭据,我不想将密码存储在 gsettings 中,而是作为 gnome 密钥环中的条目。

目前,我使用同步方式向密钥环询问登录名和密码

这个同步。方法的弱点是,密钥环需要已经打开或提示密码对话框。当使用自动登录启动 gnome-shell 时,这个同步调用会阻止实际启动 shell - 所以不可能输入密钥环密码。

Gnome Developer Wiki命名异步方法

  • GnomeKeyring.unlock
  • GnomeKeyring.find_items

但两者都没有在javascript 环境中找到。

我在哪里可以找到 fedora23 下的 GnomeKeyring-Gir 文件以确认缺少缺少的异步功能?如何实现异步密钥环打开和密码检索?有人看到完全不同的可能方法吗?每一点都有帮助...

0 投票
2 回答
736 浏览

glib - gjs/gnome-shell-extension:从 url 读取远程 jpg 图像并设置为图标

我正在尝试通过允许检索远程图像(jpg)并设置为某个小部件的图标来改进 gnome-shell 扩展。

这是我到目前为止得到的,但由于数据类型不匹配,它不起作用:

这是回调:

我的问题是,如何解析响应,这是一个 jpg 图像,以便我可以用它设置小部件图标?非常感谢!

0 投票
3 回答
1778 浏览

javascript - 如何使用 Gjs Gnome Javascript 包含文件

我知道我可以很容易地导入文件,但我正在尝试制作某种插件结构。我希望能够扫描文件夹并加载每个 Javascript 文件。

使用 Seed JS,我可以使用 Seed.include() 来评估文件,就好像它在调用 include 时包含在文件中一样。(参考

Gnome Javascript (Gjs) 是否具有等效功能?

0 投票
1 回答
314 浏览

gnome - 如何通过 Gjs 将 Basic Auth 与 libsoup 一起使用

我正在尝试使用令牌查询 github 的 api。Github 的 api 接受生成的令牌,前提是它们作为基本身份验证标头发送。

如果在没有身份验证的情况下进行调用,API 不会返回 HTTP 401,这意味着如果想要使用基本身份验证查询他们的 api,则必须先发制人地填写标头,而不是进行往返。

我现在正在尝试使用 libsoup 和 Gjs 查询 API。

我注意到 SoupAuthManager 的功能似乎与我需要的完全匹配(此处为 soup_auth_manager_use_auth ),但找不到调用它的方法。

这可用于“预加载” manager 的身份验证缓存,以避免在您提前知道将返回 401 响应的情况下进行额外的 HTTP 往返

这是我目前使用的,但它不起作用,因为 SoupAuthManager 是会话的私有对象;因此对程序的实际行为没有影响

我可以使用其他方法在第一次旅行中强制进行基本身份验证吗?还是我可以从 gjs 使用其他库来调用 github 的 API 并强制进行基本身份验证?

0 投票
0 回答
74 浏览

c - cygwin gjs 段错误:egList.js、egSpawn.js 和 egSearch.js

gjs-examples ( https://github.com/optimisme/gjs-examples ):egList.js、egSpawn.js 和 egSearch.js 会导致分段错误。

gjs 版本是 1.44.0-1 (cygwin)

导致分段错误的方法:

  • egList.js (Gtk.TreeViewColumn)col.set_cell_data_func

  • egSearch.js (Gtk.FlowBox)flow.set_filter_func

  • egSpawn.js (Spawn.SpawnReader)reader.spawn

gdb 输出 egList.js:
程序收到信号 SIGSEGV,分段错误。
gjs_invoke_c_function at /usr/src/debug/gjs-1.44.0-1/gi/function.cpp:1117
gjs_callback_trampoline_unref(trampoline);
print trampoline
(GjsCallbackTrampoline *) 0x0
print function->invoker.native_address
(gpointer) gtk_tree_view_column_set_cell_data_func

同样的情况在其他情况下重复:egSpawn.js 和 egSearch.js

Ununtu 14 - Ubuntu 16:示例工作正常我无法理解这种行为的原因。

更新:完整的 gdb 输出