ユーザーガイドなどを開く処理の再検討
検討中の方針
本件の作業ブランチ:
To git@github.com:nvdajp/nvdajp.git * [new branch] ti34622 -> ti34622
nvda_jpbeta150323
https://dl.dropboxusercontent.com/u/62564469/nvda_jpbeta150323.exe
ti34622 を jpbeta にマージする前にスナップショットを作りました。
期待されている動作:
(1) 日本語設定「ヘルプを既定のブラウザではなくHTAで開く」がデフォルトで有効であること
(2) 「ヘルプを既定のブラウザではなくHTAで開く」が有効のときに、いままでどおり ヘルプ「NVDA日本語版の説明」などがメニューバーのないウィンドウで開くこと
(3) 「ヘルプを既定のブラウザではなくHTAで開く」が無効のときに、 ヘルプ「NVDA日本語版の説明」などが Windows で拡張子 .html に関連づけられた既定のブラウザで開くこと。 環境によっては NetReader など NVDA で読み上げできないブラウザが開く可能性がある。
日本語版の説明を読み直していて 「ヘルプを既定のブラウザではなくHTAで開く」 の項目名が分かりにくいと感じたので、 「ヘルプを独自のウィンドウで開く」 に変更します。
本家版ではユーザーガイドなどは拡張子 .html に関連づけされたアプリケーションで開く。
日本語版ではファイル名を .hta に付け替えた一時ファイルを作成して、関連づけされたアプリケーションで開いている。 (NVDA でアクセスできないウェブブラウザがデフォルトのブラウザになっているユーザーのため)
結果的に mshta.exe という内部プログラムが「ユーザーガイド」などのウィンドウを開いている。
しかし mshta.exe に HTML ファイルのフルパスを指定すれば同じことができるので、一時ファイルを使わないほうがよい。
さらにいえば、mshta そのものが不正アクセスに利用されやすいツールなので、他の方法を検討する、あるいは、 本家版と同じ挙動に戻すオプションを提供する方がよいかも知れない。