この日記はMozillaのプロダクトへの貢献者としての私の成果を中心に、気になったバグやWeb界隈の話題について書いていますが、 断り書きがある場合を除き、いかなる団体のオフィシャルな見解ではありません。あくまでも個人的なものです。 Mozilla Foundation、Mozilla Corporation、及び関連企業の公式情報ではないことに注意してください。

現在、XHTML 1.0 (もどき)から、HTML5なコンテンツに修正中です。古い日記は修正が完了していませんので表示が崩れます。 順次、修正していく予定ですのでしばらくお待ちください。

もずはっく日記(2008年12月)

2008年12月9日

Bug 6417 メッセージボックスが出るときに、システム既定の音が鳴らない #2
初回投稿日時: 2008年12月09日16時43分33秒
最終更新日時: 2008年12月09日17時14分46秒
カテゴリ: Mozilla Core
SNS: (list)

先日修正したこのバグですが、現在のところユーザが設定を変えるにはWindowsのコントロールパネルでOS全体の設定を変更するしかありません。

その様にした理由の一点目は、アプリケーションはXPなものであっても、できる限りそのOSでのネイティブアプリケーションの挙動に従うべきであるという考えに基づきます。Win32APIからメッセージボックスを表示する場合、指定したアイコンの種類に応じて、否応なく設定されたサウンドが再生されます。ここに、アプリケーションが介在する余地はありません。

次にメッセージボックスの出る頻度ですが、これは非常に少ないと言わざるを得ないと思います。まず私自身、一日どころか一週間に一度もメッセージボックスを見ていません。くでんさんの意見によると、ウインドウを頻繁に閉じる上に、タブの存在を確認するダイアログを出す設定のままにしてあるので他のアプリケーションよりも頻繁に出てくる、とのことですが、これは使い方の問題だと思います。例えば、秀丸で新規ウインドウを開き、何らかの編集を行って閉じようとするとメッセージボックスが出ます。秀丸の新規ウインドウをちょっとしたメモ書きに利用して頻繁に閉じる、というのであれば同じように頻繁にメッセージボックスが出てきます。くでんさんの言う頻度の高さは、メッセージボックスが不当に大量に出現している訳ではなく、使い方が頻度を高めているのであって、一般的なアプリケーションに比べてFirefoxが極端に多くの回数メッセージボックスを出しているのではないと思います。

続いてMozilla Firefox Thunderbird の拡張あれこれ-MEMOさんの意見では、Javascriptのデバッグ時にalertを多用するので鬱陶しいと書かれています。しかし、私はalertはデバッグで用いられるべきではないと思います。その理由は、非同期処理の結果が変わってしまう点や、フォーカスが移動する点にあります。少し複雑なJavascriptのコードであれば、デバッグ用のalertがコードの挙動を変えてしまいます。Firefoxでのデバッグなら、dumpを利用してみてはどうでしょうか?

ちらし◎のうらさんの意見は少し興味深いかもしれません。確かにこのケースでは一般的なアプリケーションに比べて明らかにメッセージボックスの開く回数は多いと思います。ですが、この件こそシステム設定に従って、きちんと確実にユーザに警告を出すべきケースのように思いますがどうでしょうか? ユーザは音を頼りにメッセージボックスの出現を感じ取ろうとしているのかもしれません。音が鳴らないのは深刻なアクセシビリティの問題を抱えていると言って良いと思います。またこのケースは本当に音が原因であるのか、UI設計に問題があるのではないのか、そこもじっくりと考えるべきなのかもしれません。

Firefoxではシステム既定の音を鳴らさない、というユーザ設定をFirefox内で持ち、チェックすることは可能です。手間もあまりかかりません。パッチを書くことが決定すればすぐに用意できるでしょう。しかし、そのパッチの必要性について私がレビュアを説得する材料は持ち合わせていません。ユーザがカスタマイズできる項目は細かければ良いというのは気持ちは分かりますが、それも限度があります。その限度はレビュアが納得するかどうか、というところにあります。レビュアを説得できなければ過剰な細かさである、ということです。

メッセージボックスの音を鬱陶しいと感じる人(私もそうです)がなぜシステム設定では音を出したがるのか、ここが私の一番の疑問点です。メッセージボックスはモーダルダイアログです。つまり、メッセージボックスを生成したスレッドはメッセージボックスを出したところで一旦停止します。つまり、音が出なかったことで気付かなかったから不利益を被る、という状況は自動で長時間、何らかのジョブを行わせるようなアプリケーションで問題になるだけで、ブラウザのようにインタラクティブな利用方法がメインのアプリケーションでは視覚に不自由が無いユーザには問題無いのではないか、というのが私の意見です。Fxでのみ音を消したい、という方は、他にメッセージボックスが多く出現するアプリケーションを使いたくなった時に、逐一、そのアプリケーションに音を消す設定を追加してくれと要求していくのでしょうか?

今回、三つのサイトの方から意見を頂いていますが、こういったUIの変更への不満に関するフィードバックは大抵、本家bugzillaにすぐに来ます。しかし、今回はまだ来ていません。こういったケースは初めてのことで、どの程度のユーザが同様に不満に感じるのか計りきれずに居る、というのが正直なところです。

ちなみに、Windows2000以降で、問い合わせ(confirmダイアログ)時に音が標準で出る設定になっているのはWindows2000のみで、WindowsXPとWindowsVistaは警告(alertダイアログ)でしか音は出ないようです。

関連するかもしれないエントリ

bug 6417を含むエントリ

Bug 6417 メッセージボックスが出るときに、システム既定の音が鳴らない