カスタム通知アイコンのセット
Eröffnet am: 2022-05-05 23:41
Letztes Update: 2022-05-17 19:21
Auswertung: | nmaya | Verantwortlicher: | (Keine) |
---|---|---|---|
Priorität: | 5 - Mittel | Meilenstein: | Tera Term 5.0 alpha2 |
Typ: | Reminds | Schweregrad: | 5 - Mittel |
Komponente: | (Keine) | Status: | Offen |
Lösung | Keine |
Einzelheiten
表から見える動作
- 通知バルーンは Me 以上・2000 以上で利用できる r6692
- 4bit アイコンが表示されている
- SSH のエージェント転送で VT アイコンが表示されている。Windows 2000 のときのみ SSH アイコンが表示されている r6691
- CVTWindow::VTWindow() で Windows 2000 以外の場合にも SetCustomNotifyIcon() を呼んでいて、CustomIcon に VT アイコンがセットされているため
4-stable, trunk で同じ動作
実装を調査
- CVTWindow::CVTWindow()
- ts.VTIcon
- 16x16 で読み込み
- LR_VGACOLOR|LR_SHARED
- notify_established_secure_connection()
- IsWindows2000 のときのみ、pvar->settings.IconID
- 0x0 で読み込み
- LR_VGACOLOR | LR_SHARED
- CreateNotifyIcon()
- CustomIcon があればそれを、なければ HWin の ICON_SMALL を使用する
- SetCustomNotifyIcon(), SetCustomNotifyIcon() は、通知バルーンに対応していて 32bit アイコンに対応していない Windows 2000 専用の関数となっている
- カスタム通知アイコンには「Windows 2000 のときに 4bit に落とす」以外の可能性もあるが、今のところこの用途でしか使われていない
本当はこうあって欲しい動作はこう?
- 32bit アイコンが表示される
- SSH 接続のあいだは SSH アイコンを使う
- 高解像度アイコンをセットしたら表示される? → #43907
- SSH の通知アイコンは、SSH 接続中ずっとではなく SSH から通知を送る瞬間だけセットしたほうがよい?
- SSH 接続中に Tera Term が通知を出したときに SSH のアイコンが出るのはおかしい気もするが、VT ウィンドウのアイコンになっているのでおかしくはない気もする
Kommentar
ここまでの進展
cf. ttssh2-dev 397
cf. r9927
TODO
4-stable と trunk で、アイコンの読み込みかた(TTLoadIcon() など)や通知アイコンの持ち方がだいぶ異なっている。