1. 仮想デスクトップに名前が割り当てられたが……
個人的に仮想デスクトップに名前が割り当てられても単純なものだと使いづらいな,って。
例えば,「Desktop 1: 音楽」「Desktop 2: プログラミング」って固定しても使いづらいな,って思うんですよね。
2. ならば条件分岐を取り込めば良いのでは?
単純に,「Visual Studio」のウィンドウが検出された場合「プログラミング」と自動で名前をつけるみたいな。重複した場合は,数字を振る,みたいな感じ。あるいは,Visual Studio のプロジェクト名を名付けるとか。
- 検出: 【Visual Studioが表示されている】
- ☑️通知: ☑️表示する
- 位置: 【右上】
- ☑️仮想デスクトップの名前: 【正規表現】(他: テキストなど)
- 対象ウィンドウ: 【名前】【Microsoft Visual Studio】(他: クラス名,サイズ,最大化状態など)
- 抽出するテキスト: 【(.*?) - Microsoft Visual Studio】
- 複数ウィンドウ処理: 【結合】(他: 上位ウィンドウなど)
- 結合記号: 【 / 】
- ☑️壁紙: 【ディスプレイごとに設定する】(他: 統一するなど)
- Dell U2212HM: 【C:\Users\Pictures\wallpaper.jpg】【参照】
- Display 2: 【C:\Users\Pictures\wallpaper2.jpg】【参照】
- ☑️輝度:
- Dell U2212HM: 40
- Display 2: 20
こんなロジックじみたことをすれば良いのでは? と思った。例えば,Visual Studio でプロジェクトごとに仮想デスクトップを分けている場合,通知ウィンドウにプロジェクト名が自動で表示されるなど。
検出器はウィンドウタイトル以外は今のところ考えていませんが,画像処理による検知とかでしょうか?
WindowsService
あたりを作って,hook でウィンドウタイトル変更を監視して,って感じですかね。そして WindowTitleDetector: INameDetector
が WindowsService.GetWindows(VirtualDesktop)
して,処理する感じかなーって。まあコード書いてみないことにはわからないですけど。
輝度はあくまで参考例です。実際 Electron アプリの「Twinkle Tray」というアプリがあるのですが,これで簡単に輝度調整できる環境なら問題なく動かせると思います。Microsoft Store からダウンロードして愛用しています。
3. 結論: 仮想デスクトップの名前,自動化は今の Windows にはあったら便利そう
macOS と違ってフルスクリーン アプリケーション状態がないので,1アプリの仮想デスクトップがないのが Windows の仮想デスクトップの特徴ですが,逆に自動命名があれば,仮想デスクトップごとに Chrome と Visual Studio 配置してプロジェクトごとに整理するみたいなことはできそうですね。
普通に面白そうではありますし,実装してみる価値はあるかもしれません。実装はいうほど難しくないですから。