Hatena::ブログ(Diary)

KOTETU’s Hatena このページをアンテナに追加 RSSフィード

いいもの見つかる70,000点の品揃え!ソフマップ・ドットコム

 iTunes Store(Japan)

Google

お知らせ

コメントでのアプリに対する希望・要望は受け付けていません。
また、不具合報告は歓迎ですが、その際はこちらでも再現できるだけの環境(使用機種、OS、言語など)、詳細な再現手順などをお願いします。

SugarSync

まだ SugarSync のアカウントを持っていない方は、こちらから是非どうぞ
※普通にアカウントを作るよりも、500MB の容量が、紹介 "した人"・"された人" の両方にプラスされてお得です

Dropbox

まだ Dropbox のアカウントを持っていない方は、こちらから是非どうぞ
※普通にアカウントを作るよりも、250MB の容量が、紹介 "した人"・"された人" の両方にプラスされてお得です

2009-02-02 (Mon)

Touch Diamond/Proの左右カーソル

最近は X05HT を入手してメイン機として使っています。

タッチでの操作にもだいぶ慣れ、セッティングもしてだいぶ使いやすくはなったのですが、やはりあのカーソルだけはなんともなじめません。

上下はいいのですが、左右カーソル操作時に誤動作が多くていらつきます。


当初、形状を見て普通に考えると、左側に左カーソル・受話・ホームで3つ、真中にアクションと上下カーソルで3つ、右側に右カーソル・BACK・終話で3つのプッシュスイッチがあると思ってました。

しかしいろいろ触っていて気がついたのですが、これ左側・右側共におそらくプッシュスイッチ自体は各1つしか無いです。

スイッチ一つでどうやってどのボタンが押されているのか判断しているのかというと、おそらく表面のタッチセンサーです。


たとえば BACK を押したときの動作は、

「右側のプッシュスイッチが押された → タッチセンサーを読むと指が BACK の上にある → BACK の動作」

のような動きになっているのだと思います。


試しにやってみたのですが、左手で右カーソルを押すときに、右手の指を BACK の上に置いておく(もちろん触れているだけで押さない)と、BACK の動作になります。

また、右カーソルの上に指を置いておき(触れているだけ)、ペンなどで BACK を押しても、右カーソルの動作になりました。


カーソルを使うときは意識してアクションに近いところを押して誤動作をさせないようにしていたのですが、押す位置の問題ではなく、指が寝ていたりして BACK 付近に触れていると、どこを押しても BACK の動作になってしまっていたのです。

さらに誤動作のもととして、タッチセンサーの優先順位がカーソルよりも他のキーのほうが高いようです。これは、上記操作をやる時に指で触れる順番を変えても、必ず BACK の動作になることでわかります。

つまり、どんなにアクションのそばを押そうと、BACK に少しでも指がかかっていると、必ず BACK の動作になってしまうということです。

※ もちろん、ここでは BACK を例にあげていますが、その他のキー(受話、終話、HOME)についても同様です。


おそらく、右手親指でカーソル操作をする人(私も右手)は右カーソル、左手の人は左カーソル操作時に誤動作が多いのではないでしょうか?これは、親指がその他のキーに触れやすいからです。

これに気がついてからは、ボタンを押す時の指の姿勢に気をつけるようになり、だいぶ誤動作が減りました。

あとは、指が隣のキー位置に触れないように、縦の棒のような膨らんだシールでカーソルとその他のキーを区切ってやるといいかもしれません。

HoshibaHoshiba 2009/02/02 11:12 最近、S21HTを購入して、同じようにたまに右キーがBACK動作になって不便に感じていたので、その理由が分かってスッキリしました。ご解説ありがとうございます(礼

2008-11-21 (Fri)

KOTETU2008-11-21

pocetgames ポケットリング

ポケットリング

「ポケットリング」は、リングのついたストラップ。シンプルだけど、これが結構便利なんです。

リングに指を引っかければ、ポケットから取り出しやすく、指に引っかけたまま使えば落下の不安も激減!そんな Aさんからの声にお応えして、リング付きストラップ「ポケットリング」を作ってみました!

強度と軽さをクリアするためリング部分はアルミ素材を使用。マットブラック仕上げで渋いです!

全長は約95mm、リング部分の外径は約28mm、内径は約22mm。重さ約3g!

ストラップホールのある機種ならほぼ汎用。

pocetgamesから販売されたばかりのポケットリングが届いたので、TreoProに付けました。

ストラップとして短いので邪魔にならないし、引っぱり出したりするときもリングを指に通せば楽にできてとてもいい感じ。

使ってる時も指に通しておけば安心だし、かなり気に入りました^^

2008-09-28 (Sun)

wince.nls

TreoPro では reloadnls.exe とか入れなくても、nls の上書きだけで OK ですね。Treo750 もそうだったので試してみたらビンゴでした。

これが、iPAQ と違って日本語化しても安定している理由なのかも。

電話やContactでのインクリメンタルサーチ の続き2

なりさんやchaiさんが KeyboardMappings 以下のレジストリを自動設定するプログラムを公開されていますが、私の環境ではうまく動作しませんでした。みなさんインクリメンタルサーチできるようになっているのでしょうか?^^;


と言うのも、先日記事を書いた際に、同じようなプログラムはとっくに自作していて、StartUpに入れてみたりしたのですが、うまく動かないので公開していませんでした。


今の私の環境での動作は以下のようになっています。

例えば、"江藤(えとう)"さんが Contact に登録されているとします。

  1. Todayの状態から"E"を押す → 江藤さんが候補に出る
  2. そこからさらに"T"を押す → 江藤さんが候補から消える (PAQ910やContact上では、江藤さんも候補になります)
  3. Backキーを2回押す("ET"を消す)
  4. "E"を押す → 江藤さんが候補に出ない
  1. Todayの状態から受話キーを押して、Phone画面を出す
  2. "E"を押す → 江藤さんが候補に出ない

という動作になります。

つまり、数字のふってあるキーに対しては、Todayから入力した1文字目しか検索対象になりません。

また、上記動作には KeyboardMappings 以下のレジストリはまったく関係してないようで、削除してしまっても同じ動作になりました。


他の方のところでは正常に動作しているとしたら、何か入れているアプリか、他の設定が動作に影響しているのでしょうか?

う〜ん、わからない^^;


[追記]

というか、この KeyboardMappings 以下のレジストリって、起動時に StartUp 実行前に読み込まれていて、StartUp やその後で値を書き換えてもまったく動作が変わらないような気がします。

そもそも StartUp で書き換えた値が有効になっているということは、前に書いた「Treo Pro では KeyboardMappings を起動時に誰かが書き戻している」は StartUp よりも前に実行されているということで、その時点で読み込みが完了してしまっているのではないでしょうか?

Contactは終了できますが、Phone は起動時に常駐していて、終了することの無いアプリなので、上記の動きになるのだと思います。


試しに AlternateLanguageProcessing の値を変えてみましたが、Contactではリセット無しに値によって動作が変わりますが、Phone ではリセットするまで動作は変わりませんでした。


[追記2]

発行されているキーコードを調べてみました。


Today や Contact が起動している状態で、'E' を押した時のキーコードは 0x45。これは 'E' のキーコードです。

次に Phone が起動している状態では、0x31 でした。これは '1' のキーコードです。


これらの違いは、おそらくドライバレベルで行われていることなので、上記レジストリは関係ないでしょう。また、Today 状態からなら1文字だけ日本語の検索ができているのも、これが原因でしょう。


試しに、Phone 起動中に '1' のキーコードが来たら 'E' に置き換えるプログラムを書いて試してみましたが、正しく日本語のインクリメンタルサーチができるようになりました。

chai99chai99 2008/09/28 17:46 ローマ字変換のレジストリは、Base_Lang_0409のi780(AKU1.3.3)では動作しませんでした。テンキー部分のマッチングについては、i780も数字と英字の両方を定義されています。

chai99chai99 2008/09/28 19:28 運が良ければ、HKLM¥initで走らせればなんとかなるかもしれませんね。OEMパッケージ内にAlternateLanguageProcessing書き換えているDLLなりEXEなりが、見つかりましたか?(私は見つけられなかったので)
SYS/OS/ossvcs.dllだけは見つけたんですが、その近辺にSoftware¥Microsoft¥shell¥smartdialer¥Japaneseという怪しげなキーが・・・orz

KOTETUKOTETU 2008/09/28 19:38 あー、確かにHKLM¥initなら何とかなるかもしれませんね。
KeyboardMappings(ですよね?)を書き換えているアプリは探していません^^;

chai99chai99 2008/09/28 19:59 i780は、Contactでもローマ字変換でのカナ検索が効かなかったのですが、試しにHKLM¥Software¥Microsoft¥shell¥smartdialer¥Japanese:Mode=1を設定して、AlternateLanguageProcessing=1にしたら、Contactでローマ字カナ検索が効くようになりました(^^;
Phoneはダメですね。PhoneSkinを無効にしても、ダメでした。
あ、書き換えているのはKeyboardMappingsでしたね。ちょっと、そっちで探してみます(^^;;

chai99chai99 2008/09/28 20:03 phcanhtc.dllっぽいですね。OEMパッケージで、KeyboardMappings読み書きしているのは、コレとkeybddr.dllだけな雰囲気がプンプンしています。

KOTETUKOTETU 2008/09/28 20:30 PhoneSkinはTreoでも無効にしたり、iPAQのものに変えたりしてもだめだったので、今回の件とは関係ないみたいですね。

2008-09-23 (Tue)

SMSの通知

WM6から(だったかな?)、標準のSMSがスレッド表示になりました。個人的にこの表示形式があまり好きではないので、毎回以下のレジストリを設定して、スレッドではなく通常のメールと同じような表示になるようにしていました。

[HKCU\Software\Microsoft\Inbox\Settings]

"SMSAvailable"=1 → 0

で、今日初めて気がついたのですが、SMSを受信した際の通知(Notification message、音)がまったく出ていませんでした。ただし、Spb Phone SuiteなどでのSMSカウントは正常にカウントされています。

初めはTreoの問題かとも思っていろいろレジを調べたけど、特に変なところはない。

もしかしたら、と思って上記レジを元に戻したら、通知されるようになりました。


確かに、レジストリ名を見ると、「スレッド表示をしない」ではなく、「SMSを無効にする」という意味に取れます。

そういえば、基本的にSMSはあまり使わないので今まで気が付かなかったのですが、Treo以前の機種でも通知されていなかった気がするw


ということで、とりあえず上記設定は戻して、諦めてスレッド表示で使うことにしました。

2008-09-22 (Mon)

Treo Pro の充電

Treo Proでは、なにか充電があやしいという情報が飛び交ってますが、うちでは何も問題なく純正以外のAC-USBアダプタとくるくるケーブルで充電できています^^;


手元にあるAC-USBタイプのアダプタでは、以下のものが問題なく使えてます。

[追記]「FILCO モバイルクルーザーツイン」ですが、発売されてすぐに買ったものはいつでも問題なく充電できていますが、最近新しく購入したものは、リセット直後は充電でき、しばらくするとできなくなったりしました。ロットにより微妙に出力に差がある???

FILCO モバイルクルーザーホワイト PLS5USBW

FILCO モバイルクルーザーホワイト PLS5USBW

また、上記アダプタとセットで使用しているケーブルも純正ではなく、以下の製品を利用しています。

リトラクタブル USBケーブル(MicroUSB Bタイプ) RCUMBC

リトラクタブル USBケーブル(MicroUSB Bタイプ) RCUMBC


[WILLCOM SERECT] USBminiB←→Micro USB ウィルコム専用USB変換コネクター

※ これと適当なminiBのクルクルケーブルを組み合わせて使ってます


ポケットシンクデュアル microUSB
※ただし、充電できるのはシンク&チャージのコネクタのみ


というか、箱からは本体とバッテリ以外は何も出していません^^;

出力が1A確保されていて、なおかつiPodを充電できる(ストレージとして繋がっていると端末をだませる)タイプであれば、問題なく充電できるのではないかと思います。(もしかしたら、後者は関係なくて、出力だけの問題かも。)

電話やContactでのインクリメンタルサーチ の続き1

昨日書いた、電話やContactでのハードキーボードからのインクリメンタルサーチですが、一部解決しました。


昨日の記事へのコメントで、chaiさんから以下のようなコメントをいただきました。

[HKEY_LOCAL_MACHINE¥Security¥Phone¥Skin]は、どうなっていますか?OEM Dialerが定義されているようなら、そのDLLを持ってこれれば同様のことができるんじゃないかと思います。

まずはじめに、書かれていたskinについて調べたところ、確かにiPAQ910とTreoProでは違うdll名が書かれていました。早速iPAQ910からdllを持ってきて試してみましたが、これは関係ありませんでした。というか、これをやると着信時などに不具合がでたため、このdllは元に戻しました。


次に、周辺のレジストリを眺めていたところ、iPAQ910だけに存在する以下のレジストリを見つけました。

HKEY_LOCAL_MACHINE\Security\Phone\PhoneKeyMatch

AlternateLanguageProcessing = 1

これをTreoProにも作ってリセットしたところ、日本語でのインクリメンタルサーチができるようになりました^^


と思っていましたが、何かちょっと変。

さらに調べたところ、

  • Contactでは完璧に日本語でのインクリメンタルサーチができている
  • Phoneでは、数字のふってあるキー(E,R,Tなど)以外は日本語でのインクリメンタルサーチができている

ということがわかりました。


で、さらに調べたのですが、おそらく以下のレジストリが関係しているのだと思われます。

HKEY_LOCAL_MACHINE\Security\Phone\PhoneKeyMatch\KeyboardMappings

ここに、おそらくVKの値と、対応する文字が書かれているのですが、たとえばTreoでは、

65 = 31

となっていますが、iPAQでは、

65 = 31,65,

となっています。

これは、Treoでは「Eを押したら、1が検索対象」で、iPAQでは「Eを押したら、1とEが検索対象」ということではないかと思います。


ここまでわかれば、Treoの値をiPAQと同じにしてやればすべて解決するはずなんですが。。。

しかしながらこの値、Treoではリセットするとデフォルトの値にすべて戻ってしまします。ためしにすべて削除してみましたが、リセット後には見事にすべて復活してましたorz

多分、なんらかのプログラムが起動時にこの値を上書きしてるんだと思いますが、今のところそれがつきとめられていません。


とりあえず、Contactでは日本語でのインクリメンタルサーチができるようになったので、こっちを使いつつ、もう少し調べてみようと思います。

mobachikimobachiki 2008/09/22 03:03 うう、コンセントの違いかしら orz
それともそれこそ日ごろの行いかしら orz

ちなみに1A出力のものでも駄目だったので、だませるのが必要なのかも。
明日会社帰りに一個買ってみますw

kzoukzou 2008/09/22 03:08 きっと、富士川から先はコンセントが60Hzだからとか?w

chai99chai99 2008/09/22 21:59 おお、お疲れ様です。キー変換のレジストリは、なんとうなくそんな動作なのかなぁと思いつつ、手を付けたことが無かったのですが、奥が深そうですね。