問題タブ [gnome-shell-extensions]

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 投票する
1 に答える
101 参照

javascript - _init() を変更すると、parent() にどのような影響がありますか?

Gnome シェル拡張機能を更新しようとしています。その中で、オブジェクトの _init メソッドをオーバーライドします。これは次のように行っています。

新しいメソッドは次のエラーで失敗します。

JS エラー: TypeError: メソッド 'parent' を呼び出せません

ここで非常に驚くべきことは、parentメソッドが実際に存在することです (名前を変更すると、「未定義」エラーが発生します)。

私が理解していないのは、元の AppSwitcherPopup._init がまだこの親への呼び出しを使用していることです ( https://git.gnome.org/browse/gnome-shell/tree/js/ui/altTab.js?h=gnome -3-16#n54 )。

これは Gnome 3.12 ではうまく機能していましたが、Gnome 3.16 では壊れています... GObject または継承モデルで何かが変更されたのでしょうか?

0 投票する
1 に答える
471 参照

gnome-shell-extensions - GNOME Shell 拡張機能はどのようにして GNOME バージョンを検出できますか?

シェル拡張で複数の GNOME バージョンをサポートしたいと考えています。実行されている GNOME のバージョンを検出し、コードを適切に分岐するにはどうすればよいですか?

0 投票する
1 に答える
335 参照

javascript - GNOME Shell 拡張機能のモンキー パッチの後、this.parent が予期しないものになる

レイズでアクティブ化された GNOME Shell 3.16 拡張機能については、AppSwitcherPopup._finishメソッドにモンキー パッチを適用しようとしています。のと同様に、パッチを適用したバージョンでは次のように呼び出しますthis.parent

(完全なコード)

しかし、コンソールでこのスタック トレースを取得します (実行中からgnome-shell --replace):

この場合、SwitcherPopup._keyReleaseEventは を呼び出しthisており、サブクラスのインスタンスであるthis 必要があります。パッチを適用した後も同じはずだとAppSwitcherPopup思いますが、なぜ発信者に電話をかけようとしているのですか? this.parentさらに言えば、なぜそれが成功しないのでしょうか?

を生成したGJS コードを調べましたが、this.parent何が欠けているのかわかりません。

0 投票する
0 に答える
98 参照

clutter - gnome シェル拡張アニメート アクター サイズ

gnome-shell で既存のアクターをアニメーション化しようとしています。いくつかの方法を試しましたが、毎回アクターの位置を変更できますが、アクターのサイズを変更することはできません。

これは私が試した方法の 1 つで、アクターは位置を変更していますが、サイズは変更していません。

set_width と set_hight を直接使用しても成功しませんでしたが、エラーはありません。

0 投票する
0 に答える
60 参照

javascript - Gnome アプレットで 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 で Clutter イベントを作成する方法

ピクセル座標に対応するネットワークから {x,y} データを受け取ります。

クラッター イベントを作成するか、少なくともシステム (クラッター ステージ) に、受信した {x,y} データへのマウスの移動があることを通知したいと思います。

非公式の GJS ドキュメントを見てみました: http://www.roojs.com/seed/gir-1.2-gtk-3.0/seed/Clutter.Event.html

0 投票する
0 に答える
736 参照

javascript - 文字列の配列の配列をgsettingsに保存する方法

JS コードで GSettings を使用してデータを保存しています。今、私は次のような文字列の配列の配列を保存する必要があります:

文字列の配列を GSettings スキーマに格納する方法は知っていますが、この配列の配列をバリアント obj に変換する際に問題が発生しました。これを試してみます。

そしてgschemaで私はこのキーを作成します:

私が得たエラーはこれです

エラーがありました: エラー: 文字列配列の要素が無効です

では、文字列のマトリックスを GSettings に格納するにはどうすればよいでしょうか? どうも