(57)【特許請求の範囲】
【請求項１】
表示部と、前記表示部に積層されて備えられたタッチパネルと、プロセッサとを備え、
前記プロセッサは、
前記タッチパネルのタッチ位置を検出し、
前記表示部に表示される複数のキーの中から前記タッチ位置に応じて選択される入力キーと、前記入力キーに対する前記タッチ位置の移動方向との組みに対応付けて、前記入力キーから入力される文字が修正された回数を計測し、
前記入力キーに対して前記タッチ位置が移動する場合、前記入力キーと前記タッチ位置の移動方向との組みに応じた前記回数に基づいて、移動後の前記タッチ位置に応じて前記入力キーから入力される文字を確定するまでの待機時間を調整する
ことを特徴とする電子機器。
【請求項２】
前記プロセッサは、
前記入力キーから入力された文字を削除する操作が受け付けられた後に検出される前記タッチパネルの新タッチ位置が前回検出された前記タッチ位置と同一の前記入力キーの表示領域に存在し、かつ、前記入力キーに対して前記新タッチ位置が移動するか否かを判定し、
前記新タッチ位置が前記表示領域に存在し、かつ、前記入力キーに対して前記新タッチ位置が移動しない場合、前記回数の計測として、前記入力キーと削除された前記文字に対応する前記タッチ位置の移動方向との組みに応じた前記回数をカウントアップし、
前記待機時間の調整として、前記回数がカウントアップされるほど、前記待機時間を延長する
ことを特徴とする請求項１に記載の電子機器。
【請求項３】
前記プロセッサは、
前記新タッチ位置が前記表示領域に存在し、かつ、前記入力キーに対して前記新タッチ位置が移動する場合、前記回数の計測として、前記入力キーと前記新タッチ位置の移動方向との組みに応じた前記回数をカウントダウンし、
前記待機時間の調整として、前記回数がカウントダウンされるほど、前記待機時間を短縮する
ことを特徴とする請求項２に記載の電子機器。
【請求項４】
前記プロセッサは、
前記新タッチ位置が前記表示領域に存在しない場合、前記回数のカウントアップ又はカウントダウンを行わない
ことを特徴とする請求項２または３に記載の電子機器。
【請求項５】
前記プロセッサは、
前記入力キーに対して前記タッチ位置が移動してから前記待機時間が満了するまでの期間において、移動後の前記タッチ位置に代えて、移動前の前記タッチ位置に応じて前記入力キーから入力される文字を確定する
ことを特徴とする請求項１〜４のいずれか一つに記載の電子機器。
【請求項６】
表示部と、前記表示部に積層されて備えられたタッチパネルとを備えた電子機器のプロセッサに
前記タッチパネルのタッチ位置を検出し、
前記表示部に表示される複数のキーの中から前記タッチ位置に応じて選択される入力キーと、前記入力キーに対する前記タッチ位置の移動方向との組みに対応付けて、前記入力キーから入力される文字が修正された回数を計測し、
前記入力キーに対して前記タッチ位置が移動する場合、前記入力キーと前記タッチ位置の移動方向との組みに応じた前記回数に基づいて、移動後の前記タッチ位置に応じて前記入力キーから入力される文字を確定するまでの待機時間を調整する
処理を実行させることを特徴とする入力制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器および入力制御プログラムに関する。
【背景技術】
【０００２】
近年、スマートフォン、携帯電話機、電子書籍端末などの電子機器において、タッチパネルを備えたものが普及している。タッチパネルを備えた電子機器では、タッチパネルに表示されるソフトウェアキーボードを用いた文字入力が行われる。ソフトウェアキーボードを用いた代表的な文字入力方式として、「フリック入力方式」が知られている。フリック入力方式とは、タッチパネルのタッチ位置に応じて選択される入力キーに対してタッチ位置が移動する場合に、入力キーに割り当てられた複数の文字候補のうち、タッチ位置とタッチ位置の移動方向との組みに対応する文字を入力する方式である。フリック入力方式において、入力キーに対してタッチ位置を移動させる操作は、「フリック操作」と呼ばれる。
【０００３】
フリック入力方式を採用した電子機器では、キーごとのボタンが無く入力面が平らであることから、利用者の意図に反して入力キーからタッチ位置を移動させる操作、すなわち、意図しないフリック操作が行われることがある。意図しないフリック操作が行われると、入力キーに割り当てられた複数の文字候補のうち、利用者が本来入力したい文字とは異なる文字が誤入力される可能性がある。このため、誤入力を抑止するための技術が種々提案されている。
【０００４】
例えば、入力キーに対する初期のタッチ位置の移動距離と、閾値とを比較し、移動距離が閾値以下である場合、フリック操作に応じたイベントの発生を中止する技術が存在する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−３５５４２６号公報
【特許文献２】特開２００６−２７７５８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来技術では、意図しないフリック操作に伴う誤入力を抑止することが困難であるという問題があった。例えば、上述した従来技術では、意図しないフリック操作によって移動したタッチ位置の移動距離が閾値を超える場合、イベントの発生が中止されないため、利用者が本来入力したい文字とは異なる文字が誤入力される恐れがある。
【０００７】
開示の技術は、上記に鑑みてなされたものであって、意図しないフリック操作に伴う誤入力を抑止することができる電子機器および入力制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本願の開示する電子機器は、一つの態様において、表示部と、前記表示部に積層されて備えられたタッチパネルと、プロセッサとを備える。電子機器は、前記タッチパネルのタッチ位置を検出する。電子機器は、前記表示部に表示される複数のキーの中から前記タッチパネルのタッチ位置に応じて選択される入力キーと、前記入力キーに対する前記タッチ位置の移動方向との組みに対応付けて、前記入力キーから入力される文字が修正された回数を計測する。電子機器は、前記入力キーに対して前記タッチ位置が移動する場合、前記入力キーと前記タッチ位置の移動方向との組みに応じた前記回数に基づいて、移動後の前記タッチ位置に応じて前記入力キーから入力される文字を確定するまでの待機時間を調整する。
【発明の効果】
【０００９】
本願の開示する電子機器の一つの態様によれば、意図しないフリック操作に伴う誤入力を抑止することができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、本実施例の電子機器のハードウェア構成例を示す図である。
【図２】図２は、本実施例の電子機器の動作の説明に供する図である。
【図３】図３は、メモリに記憶された、入力キーとタッチ位置の移動方向と修正回数との対応関係の一例を示す図である。
【図４】図４は、本実施例の電子機器の処理の説明に供するフローチャートである。
【図５】図５は、本実施例の電子機器の処理の説明に供するフローチャートである。
【図６】図６は、本実施例の電子機器の処理の説明に供するフローチャートである。
【図７】図７は、本実施例の電子機器の処理の説明に供するフローチャートである。
【発明を実施するための形態】
【００１１】
以下に、本願の開示する電子機器及び入力制御プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例により開示技術が限定されるものではない。また、以下の実施例において、同一の機能を有する構成には同一の符号を付し、重複する説明は省略される。
【実施例】
【００１２】
＜電子機器のハードウェア構成例＞
図１は、本実施例の電子機器のハードウェア構成例を示す図である。図１において、電子機器１０は、アンテナ１１と、無線部１２と、スピーカ１３と、マイク１４と、オーディオ入出力部１５と、タッチパネル１６と、ＬＣＤ（Liquid  Crystal  Display）１７と、メモリ１９と、プロセッサ２０とを有する。電子機器１０の一例として、スマートフォン、タブレット端末等がある。
【００１３】
無線部１２は、アンテナ１１経由で無線信号を送受信する。
【００１４】
オーディオ入出力部１５は、マイク１４で収音した音声にオーディオ処理を施すと共に、無線部１２経由で受信した無線信号内の音声信号にオーディオ処理を施してスピーカ１３から音響出力する。
【００１５】
タッチパネル１６は、ＬＣＤ１７の画面上のタッチ操作等を検出する入力インタフェースである。ＬＣＤ１７は、文字入力モードの文字入力画面等の各種情報を画面表示する出力インタフェースである。タッチパネル１６とＬＣＤ１７とは、例えば、積層されて表示モジュール１８を構成し、表示モジュール１８が電子機器１０の表面に取り付けられる。なお、以下の説明では、タッチパネル１６とＬＣＤ１７とを併せて「タッチパネル１６」と表記する。
【００１６】
メモリ１９は、各種のアプリケーションプログラム、各種のテーブル等を記憶する。また、メモリ１９は、バッファメモリとして用いられる。メモリ１９の一例として、ＳＤＲＡＭ（Synchronous  Dynamic  Random  Access  Memory）等のＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ等が挙げられる。
【００１７】
プロセッサ２０は、電子機器１０の各種処理を行う。特に、プロセッサ２０は、タッチパネル１６に対する入力操作に従った各種の制御を行う。プロセッサ２０の一例として、ＣＰＵ（Central  Processing  Unit）、ＤＳＰ（Digital  Signal  Processor）、ＦＰＧＡ（Field  Programmable  Gate  Array）等が挙げられる。
【００１８】
＜電子機器の動作＞
図２は、本実施例の電子機器の動作の説明に供する図である。図２では、ユーザが本来入力したい文字「あ」とは異なる文字「お」が誤入力される事態を回避するための電子機器１０の動作の一例が時刻ｔ１〜ｔ５の時系列で示されている。
【００１９】
図２において、時刻ｔ１では、タッチパネル１６に文字入力画面１６Ａが表示された後、タッチが行われる。以下では、文字入力画面１６Ａの表示後のタッチを単に「タッチ」と呼ぶことがある。また、タッチパネル１６に対するタッチの位置を「タッチ位置」と呼ぶことがある。
【００２０】
また、文字入力画面１６Ａは、１６Ｂ及び１６Ｃの２つの領域に区分される。領域１６Ｂには、ユーザにより入力された文字が表示され、領域１６Ｃには、キーボードが表示される。ここでは、キーボードの一例として、仮名文字入力用のテンキーを示す。仮名文字入力用のテンキーには、文字を入力するキーや、文字を削除する削除キー等が含まれる。
【００２１】
プロセッサ２０は、時刻ｔ１において、タッチパネル１６のタッチ位置を検出する。図２の例では、プロセッサ２０は、キー「あ」に対するタッチ位置Ｔ１を検出する。
【００２２】
フリック入力方式における仮名文字の文字入力では、タッチパネル１６に表示される複数のキーの中からタッチパネル１６のタッチ位置に応じて入力キーが選択されると、入力キーに割り当てられた複数の文字候補が表示される。ここで、「入力キー」とは、タッチパネル１６に表示される複数のキーのうち文字を入力するキーとして現在選択されているキーをいう。複数の文字候補とは、入力キーの選択に応じてタッチパネル１６に表示される複数の文字であって、所定の規則に従って互いに連続する複数の文字をいう。図２の例では、タッチ位置Ｔ１に応じて入力キーとしてキー「あ」が選択されると、複数の文字候補として「い」、「う」、「え」、「お」が、それぞれ、キー「あ」の左方向、上方向、右方向、下方向に表示される。
【００２３】
なお、図示は省略されるが、タッチ位置Ｔ１に応じて入力キーとしてキー「か」が選択される場合、複数の文字候補として「き」、「く」、「け」、「こ」が、それぞれ、キー「か」の左方向、上方向、右方向、下方向に表示される。他のキーに関しても、同様に、入力キーに割り当てられた複数の文字候補が表示される。
【００２４】
次いで、時刻ｔ２では、ユーザにより意図しない「フリック操作」が行われるものとする。「フリック操作」とは、入力キーに対してタッチ位置を移動させる操作であり、「意図しないフリック操作」とは、ユーザの意図に反して入力キーに対してタッチ位置を移動させる操作である。時刻ｔ２では一例として、入力キーであるキー「あ」の領域内で、意図しないフリック操作が行われることによって、キー「あ」に対してタッチ位置Ｔ１が下方向に移動し、移動後のタッチ位置Ｔ２となる。すると、入力キーであるキー「あ」に割り当てられた複数の文字候補のうち、移動後のタッチ位置Ｔ２に応じて、キー「あ」の下方向に位置する文字「お」が入力される。プロセッサ２０は、ユーザにより入力された文字「お」を領域１６Ｂに表示する。
【００２５】
次いで、時刻ｔ３，ｔ４に示すように、プロセッサ２０は、タッチ位置に応じて選択される入力キーと、入力キーに対するタッチ位置の移動方向との組みに対応付けて、入力キーから入力される文字が修正された回数（以下適宜「修正回数」と呼ぶ）を計測する。
【００２６】
すなわち、時刻ｔ３では、ユーザにより入力キー「あ」から入力された文字「お」を削除する操作が行われる。プロセッサ２０は、ユーザにより入力キー「あ」から入力された文字「お」を削除する操作を受け付けると、削除された文字（以下適宜「削除文字」と呼ぶ）「お」をメモリ１９に記憶するとともに、領域１６Ｂから削除文字「お」を消去する。
【００２７】
次いで、時刻ｔ４では、入力キー「あ」から入力された文字「お」を削除する操作が受け付けられた後に、最初のタッチが行われる。以下では、文字を削除する操作の受け付け後の最初のタッチを「新タッチ」と呼ぶことがある。また、タッチパネル１６に対する新タッチの位置を「新タッチ位置」と呼ぶことがある。プロセッサ２０は、時刻ｔ４において、タッチパネル１６の新タッチ位置を検出し、検出した新タッチ位置に応じて入力キーから入力される文字を確定する。図２の例では、プロセッサ２０は、入力キー「あ」に対する新タッチ位置Ｔ３を検出し、検出した新タッチ位置Ｔ３に応じて入力キーから入力される文字として文字「あ」を確定する。
【００２８】
そして、プロセッサ２０は、新タッチ位置Ｔ３がタッチ位置Ｔ１と同一の入力キー「あ」の表示領域に存在し、かつ、入力キー「あ」に対して新タッチ位置Ｔ３が移動しない場合、以下の処理を行う。すなわち、プロセッサ２０は、入力キー「あ」から入力された文字「お」が文字「あ」へ修正されたので、入力キー「あ」と、削除文字「お」に対応するタッチ位置の移動方向「下方向」との組みに応じた修正回数をカウントアップする。このようにして、プロセッサ２０は、タッチ位置に応じて選択される入力キーと、入力キーに対するタッチ位置の移動方向との組みに対応付けて、修正回数を計測する。プロセッサ２０によって計測された修正回数は、メモリ１９へ記憶される。
【００２９】
図３は、メモリに記憶された、入力キーとタッチ位置の移動方向と修正回数との対応関係の一例を示す図である。図３において、修正回数の初期値は「０」であるものとする。新タッチ位置Ｔ３がタッチ位置Ｔ１と同一の入力キー「あ」の表示領域に存在し、かつ、入力キー「あ」に対して新タッチ位置Ｔ３が移動しない場合を想定する。この場合、プロセッサ２０は、入力キー「あ」と削除文字「お」に対応するタッチ位置の移動方向「下方向」との組みに応じた修正回数を１だけカウントアップする。
【００３０】
図２の説明に戻る。次いで、時刻ｔ５では、ユーザにより意図しない「フリック操作」が再度行われるものとする。時刻ｔ５では一例として、入力キーであるキー「あ」の領域内で、意図しないフリック操作が行われることによって、キー「あ」に対して初期のタッチ位置が下方向に移動し、移動後のタッチ位置Ｔ４となる。これに対して、プロセッサ２０は、入力キー「あ」とタッチ位置の移動方向「下方向」との組みに応じた修正回数に基づいて、移動後のタッチ位置に応じて入力キー「あ」から入力される文字を確定するまでの待機時間を調整する。
【００３１】
図３を用いて、待機時間の調整の一例を説明する。プロセッサ２０は、入力キー「あ」とタッチ位置の移動方向「下方向」との組みに応じた修正回数「１」をメモリ１９から読み出す。そして、プロセッサ２０は、読み出した修正回数「１」を用いて、移動後のタッチ位置Ｔ４に応じて入力キー「あ」から入力される文字「お」を確定するまでの待機時間を算出する。具体的には、プロセッサ２０は、待機時間の調整として、修正回数がカウントアップされるほど、待機時間を延長する。例えば、プロセッサ２０は、修正回数「１」と予め定められた基準時間とを乗算することによって、待機時間を算出する。
【００３２】
図２の説明に戻る。プロセッサ２０は、時刻ｔ５で入力キー「あ」に対してタッチ位置が移動してから待機時間が満了するまでの期間において、移動後のタッチ位置Ｔ４に代えて、移動前のタッチ位置に応じて入力キー「あ」から入力される文字「あ」を確定する。言い換えると、プロセッサ２０は、待機時間が満了するまでの期間において、移動後のタッチ位置Ｔ４を検出した場合、検出した移動後のタッチ位置Ｔ４を無効とし、移動前のタッチ位置に応じて入力キー「あ」から入力される文字「あ」を確定する。そして、プロセッサ２０は、移動前のタッチ位置に応じて確定した文字「あ」を領域１６Ｂに表示する。これにより、ユーザが本来入力したい文字「あ」とは異なる文字「お」が誤入力される事態が回避される。
【００３３】
＜電子機器の処理＞
図４〜図７は、本実施例の電子機器の処理の説明に供するフローチャートである。
【００３４】
プロセッサ２０は、文字入力がユーザにより行われるアプリケーション、つまり、文字入力アプリケーションが起動したか否かを判定する（Ｓ１０１）。文字入力アプリケーションが起動していないときは（Ｓ１０１否定）、プロセッサ２０は、ステップＳ１０１の判定を繰り返す。
【００３５】
文字入力アプリケーションが起動したとき（Ｓ１０１肯定）、プロセッサ２０は、文字入力画面１６Ａをタッチパネル１６に表示させる（Ｓ１０２）。
【００３６】
プロセッサ２０は、タッチを検出したか否かを判定する（Ｓ１０３）。タッチが検出されない場合（Ｓ１０３否定）、プロセッサ２０は、処理をステップＳ１０９へ移行する。
【００３７】
タッチが検出された場合（Ｓ１０３肯定）、プロセッサ２０は、タッチ開始処理を行う（Ｓ１０４）。ステップＳ１０４で行われるタッチ開始処理を図５に示す。
【００３８】
図５に示すタッチ開始処理において、まず、プロセッサ２０は、タッチパネル１６に対するタッチ位置の座標であるタッチ座標を取得する（Ｓ２０１）。
【００３９】
プロセッサ２０は、タッチ座標が入力キーの表示領域に存在するか否かを判定する（Ｓ２０２）。プロセッサ２０は、タッチ座標が入力キーの表示領域に存在する場合（Ｓ２０２肯定）、入力キーに割り当てられた複数の文字候補をタッチパネル１６に表示し（Ｓ２０３）、処理を図４のステップＳ１０５へ移行する。
【００４０】
タッチ座標が入力キーの表示領域に存在しない場合（Ｓ２０２否定）、プロセッサ２０は、タッチ座標が削除キーの表示領域に存在するか否かを判定する（Ｓ２０４）。プロセッサ２０は、タッチ座標が削除キーの表示領域に存在しない場合（Ｓ２０４否定）、処理を図４のステップＳ１０５へ移行する。
【００４１】
タッチ座標が削除キーの表示領域に存在する場合（Ｓ２０４肯定）、プロセッサ２０は、入力キーから入力された文字を削除する操作を受け付けて、タッチパネル１６の表示から文字を削除する（Ｓ２０５）。そして、プロセッサ２０は、削除文字をメモリ１９に記憶し（Ｓ２０６）、処理を図４のステップＳ１０５へ移行する。
【００４２】
図４の説明に戻り、プロセッサ２０は、タッチ座標が削除キーの表示領域に存在するか否かを判定する（Ｓ１０５）。プロセッサ２０は、タッチ座標が削除キーの表示領域に存在する場合（Ｓ１０５肯定）、処理をステップＳ１０９へ移行する。
【００４３】
プロセッサ２０は、タッチ座標が削除キーの表示領域に存在しない場合、すなわち、タッチ座標が入力キーの表示領域に存在する場合（Ｓ１０５否定）、入力キーに対してタッチ座標が移動するか否かを判定する（Ｓ１０６）。プロセッサ２０は、タッチ座標が移動しない場合（Ｓ１０６否定）、タッチのリリース操作等の、文字入力を決定するための操作を必要に応じて受け付けて、処理をステップＳ１０８へ移行する。
【００４４】
プロセッサ２０は、入力キーに対してタッチ座標が移動する場合、すなわち、入力キーに対してタッチ位置が移動する場合（Ｓ１０６肯定）、タッチ更新処理を行う（Ｓ１０７）。ステップＳ１０７で行われるタッチ更新処理を図６に示す。
【００４５】
図６に示すタッチ更新処理において、まず、プロセッサ２０は、移動後のタッチ位置の座標である移動タッチ座標を取得する（Ｓ３０１）。
【００４６】
プロセッサ２０は、移動前のタッチ座標と移動タッチ座標とからタッチ位置の移動方向を特定する（Ｓ３０２）。タッチ位置の移動方向としては、例えば、左方向、上方向、右方向、下方向が特定される。プロセッサ２０によって特定されたタッチ位置の移動方向は、メモリ１９に記憶される。
【００４７】
プロセッサ２０は、入力キーとタッチ位置の移動方向との組みに応じた修正回数をメモリ１９から読み出す（Ｓ３０３）。なお、メモリ１９には、例えば、図３に示したような、入力キーとタッチ位置の移動方向と修正回数との対応関係が記憶されているものとする。そして、プロセッサ２０は、読み出した修正回数を用いて、移動後のタッチ位置に応じて入力キーから入力される文字を確定するまでの待機時間を算出する（Ｓ３０４）。具体的には、プロセッサ２０は、待機時間の調整として、修正回数がカウントアップされるほど、待機時間を延長し、修正回数がカウントダウンされるほど、待機時間を短縮する。なお、修正回数のカウントアップ又はカウントダウンの詳細については、後述する。
【００４８】
プロセッサ２０は、待機時間を算出すると、待機時間タイマーを起動させ（Ｓ３０５）、処理を図４のステップＳ１０８へ移行させる。待機時間タイマーは、待機時間を計時する。
【００４９】
図４の説明に戻り、プロセッサ２０は、タッチ終了処理を行う（Ｓ１０８）。ステップＳ１０８で行われるタッチ終了処理を図７に示す。
【００５０】
図７に示すタッチ終了処理において、まず、プロセッサ２０は、待機時間タイマーが起動されているか否かを判定する（Ｓ４０１）。待機時間タイマーが起動されていないならば、タッチ座標が移動しておらず、待機時間タイマーが起動されているならば、タッチ座標が移動している。プロセッサ２０は、待機時間タイマーが起動されていない場合（Ｓ４０１否定）、処理をステップＳ４０４へ移行する。
【００５１】
プロセッサ２０は、待機時間タイマーが起動されている場合（Ｓ４０１肯定）、待機時間タイマーのタイムアウトが検出されたか否か、すなわち、待機時間が満了したか否かを判定する（Ｓ４０２）。
【００５２】
プロセッサ２０は、待機時間タイマーのタイムアウトが検出されない場合（Ｓ４０２否定）、移動タッチ座標を無効とし、移動タッチ座標に代えて、移動前のタッチ座標に応じて入力キーから入力される文字を確定し（Ｓ４０３）、処理をステップＳ４０５へ移行する。
【００５３】
プロセッサ２０は、待機時間タイマーのタイムアウトが検出された場合（Ｓ４０２肯定）、移動前のタッチ座標とタッチ位置の移動方向とに応じて入力キーから入力される文字を確定し（Ｓ４０４）、処理をステップＳ４０５へ移行する。
【００５４】
次いで、プロセッサ２０は、削除文字がメモリ１９に記憶されているか否かを判定する（Ｓ４０５）。削除文字がメモリ１９に記憶されているならば、現在のタッチ座標は、新タッチ位置の座標である新タッチ座標に相当し、削除文字がメモリ１９に記憶されていないならば、現在のタッチ座標は、新タッチ座標に相当しない。プロセッサ２０は、削除文字がメモリ１９に記憶されていない場合（Ｓ４０５否定）、処理を図４のステップＳ１０９へ移行する。
【００５５】
プロセッサ２０は、削除文字がメモリ１９に記憶されている場合（Ｓ４０５肯定）、メモリ１９を参照し、削除文字と、ステップＳ４０３又はＳ４０４で確定された文字とが同一の入力キーから入力されたか否かを判定する（Ｓ４０６）。すなわち、削除文字がメモリ１９に記憶されているならば、現在のタッチ座標は、新タッチ座標に相当するので、プロセッサ２０は、新タッチ位置が前回検出されたタッチ位置と同一の入力キーの表示領域に存在するか否かを判定する。
【００５６】
プロセッサ２０は、削除文字と、確定された文字とが同一の入力キーから入力されていない場合、すなわち、新タッチ位置が前回検出されたタッチ位置と同一の入力キーの表示領域に存在しない場合（Ｓ４０６否定）、処理を図４のステップＳ１０９へ移行する。新タッチ位置が前回検出されたタッチ位置と同一の入力キーの表示領域に存在しない場合、意図しないフリック操作に起因した誤入力の修正ではなく、ユーザによる入力キーの選択誤りに起因した誤入力の修正が行われる。このため、プロセッサ２０は、新タッチ位置が前回検出されたタッチ位置と同一の入力キーの表示領域に存在しない場合、ステップＳ４０７〜Ｓ４１０の処理における修正回数のカウントアップ又はカウントダウンを行わない。
【００５７】
プロセッサ２０は、削除文字と、確定された文字とが同一の入力キーから入力された場合、すなわち、新タッチ位置が前回検出されたタッチ位置と同一の入力キーの表示領域に存在する場合（Ｓ４０６肯定）、以下の処理を行う。すなわち、プロセッサ２０は、入力キーに対して新タッチ座標が移動するか否かを判定する（Ｓ４０７）。プロセッサ２０は、入力キーに対して新タッチ座標が移動しない場合（Ｓ４０７否定）、入力キーと削除文字に対応するタッチ位置の移動方向との組みに応じた修正回数をカウントアップし（Ｓ４０８）、処理を図４のステップＳ１０９へ移行する。このとき、プロセッサ２０は、メモリ１９に記憶されている削除文字を初期化（消去）する。
【００５８】
プロセッサ２０は、入力キーに対して新タッチ座標が移動する場合（Ｓ４０７肯定）、削除文字がフリック操作に伴って入力される文字であるか否かを判定する（Ｓ４０９）。プロセッサ２０は、削除文字がフリック操作に伴って入力される文字である場合（Ｓ４０９肯定）、処理を図４のステップＳ１０９へ移行する。
【００５９】
プロセッサ２０は、削除文字がフリック操作に伴って入力される文字ではない場合（Ｓ４０９否定）、入力キーと新タッチ位置の移動方向との組みに応じた修正回数をカウントダウンし（Ｓ４１０）、処理を図４のステップＳ１０９へ移行する。このとき、プロセッサ２０は、メモリ１９に記憶されている削除文字を初期化（消去）する。
【００６０】
このように、プロセッサ２０は、タッチ位置に応じて選択される入力キーと、入力キーに対するタッチ位置の移動方向との組みに対応付けて、修正回数を計測する。
【００６１】
図４の説明に戻り、プロセッサ２０は、文字入力アプリケーションが終了したか否かを判定する（Ｓ１０９）。プロセッサ２０は、文字入力アプリケーションが終了していない場合（Ｓ１０９否定）、処理をステップＳ１０３に戻す。
【００６２】
プロセッサ２０は、文字入力アプリケーションが終了した場合（Ｓ１０９肯定）、文字入力画面１６Ａを閉じる（Ｓ１１０）。
【００６３】
以上のように、本実施例では、電子機器１０は、タッチパネル１６と、プロセッサ２０とを有する。プロセッサ２０は、タッチパネル１６のタッチ位置を検出する。そして、プロセッサ２０は、タッチパネル１６に表示される複数のキーの中からタッチ位置に応じて選択される入力キーと、入力キーに対するタッチ位置の移動方向との組みに対応付けて、入力キーから入力される文字が修正された回数である修正回数を計測する。そして、プロセッサ２０は、入力キーに対してタッチ位置が移動する場合、入力キーとタッチ位置の移動方向との組みに応じた修正回数に基づいて、移動後のタッチ位置に応じて入力キーから入力される文字を確定するまでの待機時間を調整する。
【００６４】
これにより、意図しないフリック操作に伴って入力キーに対してタッチ位置が移動しても、移動後のタッチ位置に応じた入力文字の確定を待機時間だけ遅延させることができる。その結果、意図しないフリック操作に伴う誤入力を抑止することができる。
【００６５】
また、プロセッサ２０は、入力キーから入力された文字を削除する操作が受け付けられた後に検出される新タッチ位置が前回検出されたタッチ位置と同一の入力キーの表示領域に存在し、かつ、入力キーに対して新タッチ位置が移動しない場合、以下の処理を行う。すなわち、プロセッサ２０は、回数の計測として、入力キーと削除文字に対応するタッチ位置の移動方向との組みに応じた修正回数をカウントアップする。そして、プロセッサ２０は、修正回数がカウントアップされるほど、待機時間を延長する。
【００６６】
これにより、入力キーから入力される文字が修正されるほど、待機時間が延長されるので、意図しないフリック操作に伴う誤入力をさらに効率的に抑止することができる。
【００６７】
また、プロセッサ２０は、入力キーから入力された文字を削除する操作が受け付けられた後に検出される新タッチ位置が前回検出されたタッチ位置と同一の入力キーの表示領域に存在し、かつ、入力キーに対して新タッチ位置が移動する場合、以下の処理を行う。すなわち、プロセッサ２０は、回数の計測として、入力キーと新タッチ位置の移動方向との組みに応じた修正回数をカウントダウンする。そして、プロセッサ２０は、修正回数がカウントダウンされるほど、待機時間を短縮する。
【００６８】
これにより、ユーザにより意図されたフリック操作に伴って入力キーに対してタッチ位置が移動した場合に、移動後のタッチ位置に応じた入力文字の確定が過度に遅延される事態が回避される。その結果、ユーザにより意図されたフリック操作に伴う文字入力をスムーズに行うことが可能となる。
【００６９】
また、プロセッサ２０は、新タッチ位置が前回検出されたタッチ位置と同一の入力キーの表示領域に存在しない場合、修正回数のカウントアップ又はカウントダウンを行わない。
【００７０】
これにより、ユーザによる入力キーの選択誤りに起因した誤入力の修正に伴って修正回数の更新が行われないので、ユーザによる入力キーの選択誤りに起因した誤入力の修正と、意図しないフリック操作に起因した誤入力の修正とを明確に判別することが可能となる。
【００７１】
また、プロセッサ２０は、入力キーに対してタッチ位置が移動してから待機時間が満了するまでの期間において、移動後のタッチ位置に代えて、移動前のタッチ位置に応じて入力キーから入力される文字を確定する。
【００７２】
これにより、待機時間が満了するまでの期間において、移動後のタッチ位置を無効化することができるため、意図しないフリック操作に伴う誤入力をさらに効率的に抑止することができる。
【００７３】
［他の実施例］
［１］電子機器１０での上記説明における各処理は、各処理に対応するプログラムをプロセッサ２０に実行させることによって実現してもよい。例えば、上記説明における各処理に対応するプログラムがメモリ１９に記憶され、各プログラムがプロセッサ２０によってメモリ１９から読み出されて実行されてもよい。
【００７４】
［２］上記説明では、キーボードの一例として仮名文字入力用のテンキー（図２）を示したが、開示の技術を適用可能なキーボードは仮名文字入力用のテンキーに限定されない。開示の技術は、アルファベット入力用のテンキーにも適用可能である。また、開示の技術を適用可能なキーボードはテンキーに限定されない。開示の技術は、フルキーボード、テンキーを含まないテンキーレスキーボード、ファンクションキー及びテンキー等を含まない最小限のＱＷＥＲＴＹ配列のキーボード等にも適用可能である。
【符号の説明】
【００７５】
１０  電子機器
１１  アンテナ
１２  無線部
１３  スピーカ
１４  マイク
１５  オーディオ入出力部
１６  タッチパネル
１７  ＬＣＤ
１８  表示モジュール
１９  メモリ
２０  プロセッサ
【図１】
0006467712.tif 000002
【図２】
0006467712.tif 000003
【図３】
0006467712.tif 000004
【図４】
0006467712.tif 000005
【図５】
0006467712.tif 000006
【図６】
0006467712.tif 000007
【図７】
0006467712.tif 000008