● 1999/7/22 「IMはさりげなく」 IMを切り替えた瞬間、ワークスペースが切り替わってしまった。BeOSを使っている人なら一度はそんな経験があると思います。今回紹介するのはその動作を抑制する方法。 adolibe04で紹介したheyユーテリティを再び使用します。 Terminalで、次のコマンド列を入力します。
さあ、とっととUserBootcriptにつっこんじまいましょう :D ちょこっとだけ解説。B_FLOATING_ALL_WINDOW_FEELを持ったWindowは、Workspacesが切り替わっても表示され続けるという特徴を持っています。ただし、これはapp_serverが逐一WindowのWorkspacesをカレントに切り替えてくれているだけで、B_ALL_WORKSPACESが指定されているからではありません。そのため、特定のWorkspaceでWindowをHideし、Workspaceを切り替えてから再びそのWindowをShowすると、WindowをHideしたWorkspaceに切り替わってしまうというのが先程の動作の真相です。 原理がわかればあとは簡単で、該当するWindowのWorkspacesにB_ALL_WORKSPACES (0xffffffff)を設定してやれば万事解決というわけです。 自作のプログラムでB_FLOATING_ALL_WINDOW_FEELなウィンドウを扱う場合は、注意しておく必要があるでしょう。 ● |