非アクティブのタブをアクティブにするとNo.31527
K2man さん 12/09/23 22:19
 
Windows XP SP3
Ver8.20です。

 タブモードで非アクティブのタブをアクティブにするため、タブをクリックすると、
そのタブを含む秀丸そのものが非アクティブになり
他のアプリの裏側に行ってしまう現象があります。

条件等はよく分かりません。。。

設定は互換モードにしていますが、ほかにタブ関係で触っている
物はないです。

ちょっとソースを移動させたいだけで裏に回られてしまうのは
使い勝手が良くないの、原因等あればご教授願います。

[ ]
RE:31527 非アクティブのタブをアクティブNo.31528
秀まるお2 さん 12/09/24 10:50
 
 秀丸担当に聞いてみたのですが、一応、タブをクリックして切り替える
タイミングで切り替え先のウィンドウがアクティブにならず、裏へ言ってしまう
ような事例は、一応無かったとのことでした。

 なので、果たしてどうしてそういう問題が起きるのか、さらにはどうやったら
直るのか、現状でははっきりお返事するのが難しいです。

 とりあえず、他のユーザー様から同じような報告が今までなかったということ
は、何かパソコン環境が関係してる可能性はあると思います。例えばウィンドウ
とかデスクトップとかに関係した常駐ソフト類があると、それが影響しておかし
くなってることはあるかもしれません。

 タブモードがONの場合で、V7.xx互換モードの場合だと、実は選択されてない
タブの秀丸は、見えないウィンドウの形で裏に隠れていて、タブがクリックされ
ると表に出てくるような、ちょっと特殊なことをしています。なので、何かそう
いう、例えば非表示のウィンドウに対して何か影響するような常駐ソフト類があ
ると、相性問題が出る可能性はあるかなぁと思います。


 ということで原因がよく分からないのですが、とりあえず、今日アップロード
する予定の秀丸V8.21β9にて、タブを切り替えた後に切り替え先がアクティブに
なってるかどうかチェックして、もしも切り替えに失敗してたら無理矢理
アクティブにしなおすような処理を入れてみます。

 それでお試しいただきたいと思います。

[ ]
RE:31528 非アクティブのタブをアクティブNo.31529
秀まるお2 さん 12/09/24 13:33
 
 先ほどV8.21β9をアップロードしました。これで試してみて欲しいです。

 もしこれでもダメでしたら、「動作環境・トラブル対策」の所にある「デバッ
グモード」をONにして試してみて欲しいです。それで問題の現象(クリックした
タブのウィンドウがアクティブにならない現象)が起きたら、先ほどの動作環境
ページの「ログを開く」を押して、そこの最後付近に何が出てるか教えて欲しい
です。

 何も出てないこともありえますが、何か出てるとしたら、

    fInAllsCommand
    Invisible
    stealth
    SetForegroundWindowForced failed

 か何かが出てるはずじゃないかと思います。それを教えて欲しいです。

[ ]
RE:31529 非アクティブのタブをアクティブNo.31531
K2man さん 12/09/25 22:02
 
対応ありがとうございます。

試してみます。

現象が再現するのは100%ではなく、「たまに」なので
ご報告をするのは、少し先になるかもしれないです。


[ ]
RE:31531 非アクティブのタブをアクティブNo.31532
K2man さん 12/09/27 14:17
 
お世話になります。
 
再現方法が分かりましたので、その手順と現象発生時のログを
送付します。
 
<手順>
 
 事前の準備:ファイルマネージャ枠の表示
       同フォルダに「あいうえお.txt/かきくけこ.txt/
                            さしすせそ.txt」を用意
 
(1)エクスプローラーから「あいうえお.txt」を開く。
(2)ファイルマネージャ枠から「かきくけこ.txt」を開く。
(3)エクスプローラーから「さしすせそ.txt」を開く。
 
 この時点でタブは「あいうえお.txt|かきくけこ.txt|さしすせそ.txt」と並んでい
て、
 アクティブは「さしすせそ.txt」である。
 
(4)「あいうえお.txt」をクリックし、アクティブにするが変化なし。
(5)続いて「かきくけこ.txt」をクリックすると。エクスプローラーがアクティブ
になり
   秀丸が非アクティブになってしまう。
 
 ログですが、下記の通り何回か現象を出しましたが同じメッセージでした。
 
12/09/27 13:15:00.666 (  868) will SetForegroundWindowForced
12/09/27 13:15:00.823 (  871) SetForegroundWindowForced failed
12/09/27 13:17:22.900 (  868) will SetForegroundWindowForced
12/09/27 13:17:23.056 (  871) SetForegroundWindowForced failed
12/09/27 13:18:54.493 (  868) will SetForegroundWindowForced
12/09/27 13:18:54.665 (  871) SetForegroundWindowForced failed
12/09/27 13:19:36.024 (  868) will SetForegroundWindowForced
12/09/27 13:19:36.196 (  871) SetForegroundWindowForced failed
12/09/27 13:19:59.727 (  868) will SetForegroundWindowForced
12/09/27 13:19:59.883 (  871) SetForegroundWindowForced failed
12/09/27 13:22:47.804 (  868) will SetForegroundWindowForced
12/09/27 13:22:47.960 (  871) SetForegroundWindowForced failed
12/09/27 13:23:40.913 (  868) will SetForegroundWindowForced
12/09/27 13:23:41.085 (  871) SetForegroundWindowForced failed
12/09/27 13:24:28.194 (  868) will SetForegroundWindowForced
12/09/27 13:24:28.366 (  871) SetForegroundWindowForced failed
12/09/27 13:25:35.866 (  868) will SetForegroundWindowForced
12/09/27 13:25:36.022 (  871) SetForegroundWindowForced failed
12/09/27 13:26:38.506 (  868) will SetForegroundWindowForced
12/09/27 13:26:38.662 (  871) SetForegroundWindowForced failed
12/09/27 13:26:43.818 (  868) will SetForegroundWindowForced
12/09/27 13:26:43.974 (  871) SetForegroundWindowForced failed
12/09/27 13:27:05.099 (  868) will SetForegroundWindowForced
12/09/27 13:27:05.271 (  871) SetForegroundWindowForced failed
12/09/27 13:27:49.287 (  868) will SetForegroundWindowForced
12/09/27 13:27:49.458 (  871) SetForegroundWindowForced failed
12/09/27 13:31:30.926 (  868) will SetForegroundWindowForced
12/09/27 13:31:31.082 (  871) SetForegroundWindowForced failed
12/09/27 13:33:39.222 (  868) will SetForegroundWindowForced
12/09/27 13:33:39.378 (  871) SetForegroundWindowForced failed
12/09/27 13:34:14.628 (  868) will SetForegroundWindowForced
12/09/27 13:34:14.800 (  871) SetForegroundWindowForced failed
12/09/27 13:34:58.284 (  868) will SetForegroundWindowForced
12/09/27 13:34:58.440 (  871) SetForegroundWindowForced failed
 
調査の方よろしくお願いいたします。

[ ]
RE:31532 非アクティブのタブをアクティブNo.31533
秀丸担当 さん 12/09/27 17:23
 

手順通りにしてみて、XPでもWindows7でも似たような状態が再現できたのですが、
同じ問題が起きているかどうかわからない状況です。
こちらで確認できたのは、秀丸エディタがアクティブにはなっているけど、エク
スプローラが非アクティブなまま前面に来ているという状態でした。

その症状は無理矢理前面に持ってくることで回避できたのですが、同じ症状では
ないとしたら、また別の方法を考えないといけないです。

ログのほうもこちらとは違っていて、アクティブ化に関するログは出力されてい
ませんでした。
微妙ですが、そのあたりの挙動がこちらで確認できていることと同じかどうか教
えてもらえると助かります。


ちなみにエクスプローラでも、右クリックして「送る」から秀丸エディタを起動
した場合は再現しませんでした。
秀丸ファイラーClassicで同じように起動しても再現しませんでした。
どうもエクスプローラから直接起動するということが関わっているようです。

[ ]
RE:31533 非アクティブのタブをアクティブNo.31534
秀まるお2 さん 12/09/27 18:51
 
 僕からも追加ですみません。

 秀丸側で無理矢理アクティブにしようとして失敗してるとしたら、タスクバー
上で秀丸が点滅表示すると思います。その辺ももし分かればお願いします。

 教えていただいたデバッグログによると、たしかにアクティブにしようと努力
はしてるけども、なぜかそれが失敗してるような感じです。
 (だとすると、解決策が難しそうです)

[ ]
RE:31534 非アクティブのタブをアクティブNo.31535
K2man さん 12/09/27 19:12
 
タスクバーは点滅します。

秀丸担当さんが仰る通り、エクスプローラーからの起動と
ファイルマネージャ枠からの起動で違いがあるかもしれないです。

全てのファイルをファイルマネージャ枠から起動すると
現象がでません。

あと、タブの互換モードを外しても現象がでたので
関係ないようです。

[ ]
RE:31533 非アクティブのタブをアクティブNo.31536
K2man さん 12/09/27 19:22
 
現象発生時はエクスプローラーはアクティブ(ウィンドウがアクティブの色になって
いる)になっていると思います。

[ ]
RE:31536 非アクティブのタブをアクティブNo.31537
秀丸担当 さん 12/09/28 14:38
 

詳しい情報ありがとうございます。
こちらで確認できていたこととは違うということでわかりました。
無理矢理前面に持ってくるだけではおそらく効果が無いので、そもそも背面にし
まう状況が起きないようにすると効果がある可能性が高いと思います。
いろいろ試してみて、Windowsに対してAPIを呼ぶ順番を変えるとこちらでは背面
には行かないことがわかって、そのように次のβ版で修正します。

[ ]
RE:31537 非アクティブのタブをアクティブNo.31538
秀まるお2 さん 12/09/28 16:54
 
 V8.21β10をアップロードしました。すみませんがこれで確認お願いします。

 こちらでいろいろテストした限りでは、やはり秀丸がアクティブじゃなくなっ
てしまう現象までは再現出来てないので、果たしてこれでK2manさんの所で直っ
てくれてるかどうか、ちょっと怪しい所はあります。

 一応、こちらで起きてた「アクティブにはなってるけどエクスプローラより裏
へ行ってしまう」って現象の方は直しています。それと、もしもアクティブにす
るのが失敗した場合には、さらなる再試行処理もするようにもしてみました。

ダウンロードURL:
http://hide.maruo.co.jp/software/bin/hm821b10_signed.exe

 これでもダメだとすると、たぶんデバッグログに

    WM_ENTRUSTACTIVE failed

 って記録も出るかなぁと思います。

 よろしくお願いします。

[ ]
RE:31538 非アクティブのタブをアクティブNo.31539
K2man さん 12/09/28 20:01
 
お世話になります。

対応ありがとうございます。

β10で様子を見てみます。

あと、現象発生時の様子を動画キャプチャしましたので
別途メールで送らせて頂きます。


[ ]
RE:31539 非アクティブのタブをアクティブNo.31542
秀丸担当 さん 12/10/01 11:03
 

動画ファイル受け取りました。
ありがとうございます。

こちらで確認していた点と違う点があることがわかり、どちらもウィンドウを最
大化しているところが違っていました。
最大化していると、同じように再現できました。

そして、V8.21β10だと大丈夫になっていることも確認できました。

[ ]