真魚2.19
ゲームに夢中でも、掲示板に書き込まれていればアップデートしちゃう余裕はあるわけだ。
でもVistaに幻滅してからあんまし熱意はなくなったし、今回のDelphiはまだ買ってないから、
これからもアップデートし続けるとは限らない状況だ。
さて修正点の一つはコマンドラインに関するもの。
以前、誰かがIEでソースを表示するエディタとして真魚を登録した際、不具合を発見した。
テキストエディタの関連付けを自前でやったことのある人なら基本中の基本で常識だが、
ダブルコーテーションで囲っておかないと誤動作しますよというのがある。
Mana2.exe ”%1”って感じで書くのだが、初心者はたまに%1って書いちゃうんだな。
これと同じミスをIEがやっていて、当時の真魚をソース表示に使うと不具合が出ていた。
コマンドラインに複数のファイルを指定して一度に開けるエディタの場合だけ不具合が出る。
という話だった気がするが、古い話題なので忘れてしまったよ。
でな、その行儀が悪くてしかも使用人口の多い某アプリの、いわばバグに自前で対応した部分が、
これまたMSのセキュリティーホールが見つかって修正の入ったAPIの仕様とバッティングし、
真魚のコマンドラインにあんまり長い文字列を送ると、Windowsがパンク防止のためエラーを返す。
よって、あんまり長い文字列をWindowsのAPIに渡す前に、真魚が自前フィルタリングする事にした。
コマンドラインなんて普通の人は使わないのだが、SendToすなわち送るの起動とか、
真魚のアイコンにテキストファイルをドロップして起動する時は、裏でコマンドラインが動いている。
今回の修正は、何をした時にどんなエラーが出るのかをしっかり検証したユーザーのおかげ。
その人が修正したと言っても過言ではない。
ちなみにあたしは真魚をSendToに入れてないので、毎日使って一度もこの現象に遭遇したことはなかった。
もう一つは、ドラッグドロップしている間のCtrlキーの問題。
検証はワードパッドなどで行った。
つーかかなり昔もこれについての検証はしていたのだが、その時は.NETでやっていたせいか、
いわゆる標準的なアプリでの動作というものをどう頑張っても再現することは出来なかった。
今は.NETではないので、他のアプリで出来ていることは真魚でもすべてパクって出来るわけで、
あとは作者のやる気と、本当に必要かどうか、むしろ嫌いな機能でないかさえクリアすれば、
何でもかんでも出来ないことなどない。
さて、ワードパッドでのドラッグドロップ時、コピーになるか移動になるかの検証。
自分からよそへのドラッグドロップは全てコピー。
よそから自分へのドラッグドロップも全てコピー。
この二つは問題ない。
問題は、自分から自分へのドラッグドロップ時で、何もしないと全て移動で、
ドラッグ途中でもCtrlキーを押せばコピーに切り替わり、離せば移動に戻る。
それを視覚的にユーザーに伝えるため、マウスのアイコンにも反映させている。
これを真魚でもやることにした。
実はもう一つやらなければならない課題が、この検証で見つかったのだが、しかしやっていない。
ドラッグドロップする際、ドラッグ元の範囲内にカーソルがある時は、禁止マークに変えなきゃいけない。
出来ないことではないのだが、面倒なので今日はこれで更新終了と言うことで。