チケット #32424

マルチモニタでツールチップが正しく描画されない

登録: 2013-11-10 01:09 最終更新: 2014-02-18 07:59

報告者:
(del#24082)
担当者:
(del#24082)
チケットの種類:
状況:
完了
コンポーネント:
マイルストーン:
(未割り当て)
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
なし
投票
点数: 0
No votes
0.0% (0/0)
0.0% (0/0)

詳細

マルチモニタ環境で Tera Term をリサイズした場合、左上の描画されるべきの「リサイズ後の縦横サイズ」 ツールチップが、プライマリモニタに表示されてしまうことに気がつきました。

ツールチップの実装は PuTTY のコードを流用したので、PuTTY でも再現します。

UpdateSizeTip() を見ると、以下のif文が怪しそうです。 すなわち、wr.left が負数だった場合、16に丸められてしまいます。

この丸めは PuTTY では意図的に行っているような気がしますが、正しくマルチモニタ環境に 対応させるためにはどうしたらよいでしょうか?

		GetWindowRect(src, &wr);

		ix = wr.left;
		if (ix < 16) {
			ix = 16;
		}

		iy = wr.top - sz.cy;
		if (iy < 16) {
			iy = 16;
		}

チケットの履歴 (4 件中 3 件表示)

2013-11-10 01:09 更新者: (del#24082)
  • 新しいチケット "マルチモニタでツールチップが正しく描画されない" が作成されました
2013-11-10 08:04 更新者: (del#1144)
コメント

たとえばシングルモニタで、ウィンドウを左に移動していってウィンドウの右半分だけが見えている状態にしてウィンドウの右下をつかんだら、x=16にしないとツールチップが見えないということではないでしょうか。

2013-11-10 21:35 更新者: (del#24082)
コメント

なるほど。 まずは現状の実装でもよさそうです。

まじめに対応するとなると、マルチモニタ環境かどうかを判定して、負数を受け付けるかどうかを チェックすることになるでしょうが。。

2014-02-18 07:59 更新者: (del#1144)
  • 解決法なし から 修正済み に更新されました
  • 状況オープン から 完了 に更新されました
  • チケット完了時刻2014-02-18 07:59 に更新されました

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする