このガイドに従って、スクリーンレットを最初から作成しようとしています http://www.ibm.com/developerworks/linux/library/l-script-linux-desktop-1/index.html 。
Hello World!を作成しました。例ですが、テスト時にクリックできません。スクリーンレットがデスクトップに直接描画されており、基になるウィンドウがないためです。それを右クリックすると、デスクトップのコンテキストメニューが表示されます。 self.windowを印刷してみましたが、これは通常のGtk.Windowオブジェクト。
On_draw_shapeをオーバーライドすると、問題が解決することがわかります。
def on_draw_shape(self, ctx):
ctx.Paint()
ただし、これが正しい解決策であるかどうかはわかりません。また、on_draw_shapeイベントの目的や、on_drawイベントとの違いもわかりません。