新着フォルダ [+] 部分の水色表示ずれNo.03121
Imabeppu さん 18/04/05 15:11
 
Imabeppu です。

秀丸メール Ver.6.79 (64bit) を使用しております。

昨年末ごろからだと思いますが、新着フォルダの [+] 部分を水色表示
する際の水色部分がずれて表示されるようになりました。
起動直後は問題ないようなのですが、いつのまにかずれて表示されてい
ます。設定で水色表示を解除し、再度設定すれば正しく表示されます。
[+] の矩形よりも水色の矩形のほうが大きくて、フォルダのアイコンと
同じくらいのサイズです。描画位置も、[+] よりも左側に描画されます。
どのようなタイミングで発生するのかは特定できていません。

以前はこのようなことはなかったと思います。
実用上は困らないのですが、修正されるとうれしいです。

[ ]
RE:03121 新着フォルダ [+] 部分の水色表No.03122
秀まるお2 さん 18/04/05 16:12
 
 毎度お手数かけてすみません。

 [+]部分の水色の色つけですが、Version 6.76の時に仕様変更してまして、それの
せいでおかしくなったんだろうと思います。

 以前は、[+]の位置を、固定の式で計算してました。しかし、Windowsの種類の違い
や画面解像度の違い、フォントサイズの設定の違い、インテント幅のピクセル数の指
定の違いなどによって、ずれるケースが多々ありました。それでどうしたかという
と・・・一番最初に色つけするタイミングで、画面の中の[+]の位置をGetPixelってA
PIを使ってどこにあるか読み取って、その位置にうまく合わせて色つけをするように
しました。

 うまく画面が読み取れなかった場合には、従来通りの方式で計算するようにしまし
た。

 一回位置を決めたら、その計算で得られた位置をずっと保持する手はずになってま
すが、例えば画面サイズが変わった場合や「全般的な設定」を実行した場合には、計
算で得られた位置を一回忘れて、もう一回、描画のタイミングで計算しなおすように
しています。

 最初大丈夫なのが後でおかしくなるとしたら、何か画面の設定をいじった時か、ま
たは「全般的な設定」をONした直後からおかしくなるんじゃないかと思います。

 こちらのWindows10環境で簡単にテストした限りでは、画面解像度の変更や全般的
な設定のタイミングで再計算が働いても、一応、おかしくなることは無いようでした。

 何か再現の条件が分かると助かりますが・・・

 とりあえず、いくつか教えて欲しい点があります。

 − Windowsの種類。

 − 画面のDPI値(文字サイズ)の設定。Windows10の場合だと、「設定 - システム
    - ディスプレイ」の「拡大縮小とレイアウト」の100%〜の指定。
   (たぶん100%になってるんだろうと思いますけども)

 − 「全般的な設定 - フォルダ - 詳細」の「インデント幅の指定」がONになっ
   てるかどうか、およびその幅指定。

 − マルチモニタにしたり切ったりしてることがあるのかとか、あと、リモート
   デスクトップ接続して使っておられるかどうか。

 すみませんがその辺お願いしたいです。

 とりあえず、次のβ版に、この辺の再計算の状況をdump.txtに出力するようにして、
さらには計算ミスが起きてそうな場合のフェールセーフの処理とかも考えてみます。

[ ]
RE:03122 新着フォルダ [+] 部分の水色表No.03124
秀まるお2 さん 18/04/05 17:00
 
 [+]の位置の計算ですが、とりあえず、特定の典型的な設定の時は、あらかじめ計
算しておいた値固定にしてしまうことにします。

 とりあえず、インデントの幅指定がされてないケースで、フォントサイズが9ポイ
ント以上で画面dpi値が100%で、アイコンサイズが100%、150%、200%辺りのいくつか
のパターンで正しい値を実験してデータを取得しておいて、それらに該当するケース
は、画面の読み取りロジックを使わずに、固定の値を使うようにしてみます。

 その辺のデータを収集してみます。

[ ]
RE:03124 新着フォルダ [+] 部分の水色表No.03125
秀まるお2 さん 18/04/05 17:21
 
 っということでデータ収集をしてたら再現しました。

 [+]が水色になるフォルダがたまたまウィンドウの一番下とかにあって、半分しか
画面上に出てない時とかがあると、計算が狂うようでした。

 いろいろ見直して、なんとか正しい結果になるように修正させていただきます。

[ ]
RE:03122 新着フォルダ [+] 部分の水色表No.03126
Imabeppu さん 18/04/05 18:19
 
Imabeppu です。

すでに解決されているかもしれませんが、念のため回答します。

> − Windowsの種類。

Windows 7 Professional SP1 です。

> − 画面のDPI値(文字サイズ)の設定。Windows10の場合だと、「設定 - システ
>ム - ディスプレイ」の「拡大縮小とレイアウト」の100%〜の指定。

100% です。

> − 「全般的な設定 - フォルダ - 詳細」の「インデント幅の指定」がONになって
>るかどうか、およびその幅指定。

インデント幅の指定は OFF です。(一応、幅指定は 12 です)

> − マルチモニタにしたり切ったりしてることがあるのかとか、あと、リモートデ
>スクトップ接続して使っておられるかどうか。

通常はマルチモニタで使用しています。
シングルで使用することはありませんが、リモートデスクトップで使用することはあ
ります。
そのときはシングルになります。
ですが、リモートデスクトップを使用しないときでも発生しています。

以上、よろしくお願いします。

[ ]
RE:03126 新着フォルダ [+] 部分の水色表No.03127
Imabeppu さん 18/04/06 08:57
 
Imabeppu です。

確認はないですが、画面をロックして報知しておいたあと、水色表示画ずれているこ
とがあるように思います。
ロックしているあいだにメールを受信したとき、水色表示がずれる場合があるのかも
しれません。

[ ]
RE:03127 新着フォルダ [+] 部分の水色表No.03128
秀まるお2 さん 18/04/06 11:53
 
 情報どうもです。

 画面をロックしてる最中だと、たぶんウィンドウが画面上に描画されてないために、
画面を読み取るGetPixelが失敗してるんだと思います。GetPixelに失敗してる場合の
エラーコードをうまく見てなかったので、それで位置計算が狂ったんだと思います。

 どっちにしても、GetPixelする方式は不安定なので、この方式はやめて、とにかく
画面のいろんなケースについて[+]の位置/サイズがどうなるか徹底調査して、その調
査した結果を使って位置計算するようにしてみました。

 Windows Vista/7の場合で、デスクトップテーマが有効/無効両方のケース、
 Windows10の場合(Windows10ではデスクトップテーマが常に有効)、
 画面DPI値がいろんなケース。
 アイコンサイズがいろんなケース。
 インデントが指定されてるケース。

 で調査して、一応大丈夫になったと思います。

 次β版にて対応させていただきます。

[ ]