Gnome では、アプリケーションが開始されるたびに、マウス カーソルが通常の状態からアクティビティ インジケーター (Ubuntu では回転する車輪のようなもの) に変わります。アプリケーションの起動が完了したときに(システムコールを介して)Gnomeに通知し、通常の30秒のタイムアウトが発生するのを待たずにマウスカーソルが通常に戻るようにする方法はありますか?
起動後もアイコンが表示される GTK+ を使用する Pythong のプログラムがあります。
通常、アプリケーションのウィンドウを開くと自動的に発生します。
アプリケーションのランチャーが既に実行中のインスタンスを呼び出すだけである可能性があり、その場合は自動的に検出されません。次に必要な呼び出しは次のとおりです。
import gtk
gtk.gdk.notify_startup_complete()
アプリケーションは、追加することで起動通知をオプトアウトできます
StartupNotify=false
アプリケーションの.desktop
ファイルに。
もちろん、有効のままにして起動通知に参加する方が使いやすいです。
私が書いたアプリケーションでも同様の問題がありました。次の行を含むシェルスクリプトを介してアプリケーションを起動していました
python /path/to/application.py
これで期待どおりにアプリケーションが起動しましたが、起動通知が停止しませんでした。スクリプトの内容を次のように変更すると、正しく機能しました。
exec "/usr/bin/python" "/path/to/application.py"
明らかに、後者の方法がアプリケーションを起動する正しい方法のようですが、その理由を説明するのに十分な洞察はありません。
これは通常、gtk.main()
関数を呼び出すときに自動的に発生します