(57)【要約】【課題】ユーザがスライド操作を行った場合の意図しない動作を防止する。【解決手段】タッチパネル制御部（７０）は、操作物がタッチパネル（６０）のタッチ面へのスライド操作を行っている間、タッチ面上における操作物のタッチ位置の情報を取得し、タッチ面上における操作物のスライド方向がある時点で変化した場合、タッチ座標補正処理部（１４）は、上記ある時点から後のタッチ位置を補正する。【選択図】図１
2018181067.tif 000002
【特許請求の範囲】
【請求項１】
タッチ面へのタッチ操作に応じて動作する情報処理装置であって、
操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得するタッチ位置取得部と、
上記タッチ面上における上記操作物のスライド方向が逆転した場合、該逆転した時点から後に上記タッチ位置取得部が取得した上記タッチ位置を補正するタッチ位置補正部と、を備えたことを特徴とする情報処理装置。
【請求項２】
上記タッチ位置補正部は、上記逆転した時点から後の時点において上記タッチ位置取得部が取得した上記タッチ位置を、上記逆転した時点の直前に上記タッチ位置取得部が取得した上記タッチ位置に補正することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
上記逆転した時点から後の時点において、
（i）上記逆転した時点から上記後の時点までの経過時間が所定の時間閾値未満であること、および、
（ii）上記逆転した時点の直前に上記タッチ位置取得部が取得した上記タッチ位置から上記後の時点に上記タッチ位置取得部が取得した上記タッチ位置までの距離が所定の距離閾値未満であること
の少なくとも一方が満たされる場合、上記タッチ位置補正部は、上記後の時点に上記タッチ位置取得部が取得した上記タッチ位置を補正することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
上記タッチ位置補正部は、上記タッチ面上における上記操作物のスライド方向が９０°以上変化した場合、上記タッチ面上における上記操作物のスライド方向が逆転したと判定して、上記タッチ位置取得部が取得する上記タッチ位置を補正することを特徴とする請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
タッチ面へのタッチ操作に応じて動作する情報処理装置の制御方法であって、
操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得し、
上記タッチ面上における上記操作物のスライド方向が逆転した場合、該逆転した時点から後に取得した上記タッチ位置を補正することを特徴とする情報処理装置の制御方法。
【請求項６】
請求項１に記載の情報処理装置としてコンピュータを機能させるための制御プログラムであって、上記タッチ位置取得部および上記タッチ位置補正部としてコンピュータを機能させるための制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、および制御プログラムに関し、例えば、タッチ面を備えた情報処理装置に関する。
【背景技術】
【０００２】
従来、タッチ面（例えばタッチパネル、タッチパッド）を備えた情報処理装置（例えばスマートフォン、タブレット）が存在する。ユーザは、操作物（例えばユーザの指）を、タッチ面に接触または近接させることによって、情報処理装置をタッチ操作する。情報処理装置は、タッチ操作に応じた処理を実行する。タッチ操作には様々な種類がある。例えば、タップ、長押し、スライド、フリック、スワイプ、およびピンチなどの操作が、タッチ操作に含まれる。スライド操作とは、ユーザがタッチ面上で操作物を一方向にすべらす（スライド）させるタッチ操作である。ユーザは、スライド操作を停止するために、操作物をタッチ面に付けたまま停止させる。一方、フリック操作は、タッチ面上で操作物を素早くスライドさせた後、最後指先を素早く払う（ピッとはじく）点で、スライド操作とは異なる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２３５４４３号公報（２０１６年７月１日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ユーザは、スライド操作を行った後、操作物をタッチ面から持ち上げるとき、意図せずに、スライド方向とは逆方向に、タッチ面上でわずかに操作物を移動させる場合がある。この場合、情報処理装置は、スライド方向とは逆方向への操作物の移動に応じた動作をする。例えば、情報処理装置は、スライド方向とは逆方向、つまりユーザの意図しない方向に、画面をスクロールさせる。すなわち、ユーザは、スライド操作を止めた瞬間に情報処理装置の画面が停止することを期待している。しかしながら、実際には、ユーザがスライド操作を止めた後も、操作物はタッチ面上から完全には離れていないので、画面はわずかにスクロールする。
【０００５】
特許文献１に記載の装置は、複数回のフリック操作から取得されるフリックの方向、速度、距離などの情報に基づいて、フリックの方向を固定し、そして、上記装置は、固定した方向とは異なる方向のフリックをフリック操作として受け付けない。しかしながら、特許文献１に記載の装置は、１回のフリック操作中にはフリックの方向は変化しないことを前提としているので、スライド操作に関する上記の問題、すなわち、ユーザがスライド操作を止めた後、操作物がスライド方向とは逆方向に移動し、その結果、画面がわずかにスクロールするという問題を解決することはできない。
【０００６】
本発明の一態様は、ユーザがスライド操作を行った場合の意図しない動作を防止することにある。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明の一態様に係る情報処理装置は、タッチ面へのタッチ操作に応じて動作する情報処理装置であって、操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得するタッチ位置取得部と、上記タッチ面上における上記操作物のスライド方向が逆転した場合、該逆転した時点から後に上記タッチ位置取得部が取得した上記タッチ位置を補正するタッチ位置補正部と、を備えている。
【０００８】
上記の課題を解決するために、本発明の一態様に係る情報処理装置の制御方法は、タッチ面へのタッチ操作に応じて動作する情報処理装置の制御方法であって、操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得し、上記タッチ面上における上記操作物のスライド方向が逆転した場合、該逆転した時点から後に取得した上記タッチ位置を補正する。
【発明の効果】
【０００９】
本発明の一態様によれば、ユーザがスライド操作を行った場合の意図しない動作を防止することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態１に係る端末の構成を示すブロック図である。
【図２】実施形態１に係る端末の外観図である。
【図３】（ａ）〜（ｄ）は、実施形態１に係る端末が備えたタッチパネルに対するスライド操作を示す図である。
【図４】図３の（ａ）〜（ｄ）に示すタッチ位置がどのように補正されるかを示す図である。
【図５】図３の（ａ）〜（ｄ）に示すスライド操作に応じて、実施形態１に係る端末が実行する処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１１】
〔実施形態１〕
以下、本発明の実施の形態について、図１〜図５を用いて詳細に説明する。
【００１２】
（端末１の構成）
図１は、実施形態１に係る端末１（情報処理装置）の構成を示すブロック図である。図１に示すように、端末１は、主制御部１０、アプリケーション２０、記憶部３０、表示制御部４０、表示部５０、タッチパネル６０、およびタッチパネル制御部７０（タッチ位置取得部）を備えている。
【００１３】
図２は、ユーザＵからタッチ操作を受けている端末１の外観図である。図２に示すように、ユーザＵは、操作物（図２では指）を、タッチパネル６０のタッチ面に接触または近接させることによって、タッチ操作を行う。タッチパネル６０は、静電センサまたは圧力センサ等によって操作物を検知する。端末１は、タッチパネル６０から取得する信号に基づいて、タッチ操作に応じて動作する。
【００１４】
タッチパネル６０は、静電センサまたは圧力センサ等によって、タッチパネル６０のタッチ面に接触または近接する操作物（例えばユーザの指）を検知する。タッチパネル６０は、センサが検知した信号をタッチパネル制御部７０に出力する。センサが検知した信号には、タッチ面上における操作物の位置情報が含まれる。
【００１５】
タッチパネル制御部７０は、タッチパネル６０のセンサが検知した信号を取得する。タッチパネル制御部７０は、タッチパネル６０から取得した信号に基づいて、タッチパネル６０のタッチ面上における操作物の位置を示すタッチ座標情報を生成する。タッチパネル制御部７０は、生成したタッチ座標情報を記憶部３０に記録する。あるいは、タッチパネル制御部７０は、タッチ座標情報を主制御部１０に送信してもよい。
【００１６】
主制御部１０は、端末１の各部を統合的に制御する。また、主制御部１０は、記憶部３０またはタッチパネル制御部７０から、タッチ座標情報を取得する。そして、主制御部１０は、取得したタッチ座標情報に基づいて、タッチイベント情報を生成する。タッチイベント情報は、タッチ面上におけるタッチ位置の情報と、操作物から受け付けたタッチ操作の種別の情報とを含む。主制御部１０は、タッチイベント情報を、アプリケーション２０に通知する。なお、主制御部１０がタッチ座標情報からタッチイベント情報を生成する方法については後述する。
【００１７】
図１に示すように、主制御部１０は、タッチイベント判定部１１、スライド方向判定部１２、時間差分／距離差分判定部１３、およびタッチ座標補正処理部１４（タッチ位置補正部）を含む。また、後述するアプリケーション２０も主制御部１０に含まれる。主制御部１０の上記の各部が実行する処理については後述する。
【００１８】
アプリケーション２０は、主制御部１０のタッチ座標補正処理部１４からタッチイベント情報を取得する。そして、アプリケーション２０は、タッチイベント情報が示すタッチ操作の種別に応じた処理を実行する。例えば、タッチイベント情報が示すタッチ操作の種別がスライド操作であった場合、アプリケーション２０は、表示部５０に表示された画面をスクロールするように、表示制御部４０に指示する（図１参照）。アプリケーション２０は、例えば、記憶部３０に記憶されたプログラムを端末１のＣＰＵ（図示せず）が実行することによって、ソフトウェアとして実現されてよい。
【００１９】
記憶部３０は、タッチ座標情報およびＹ座標固定化モードフラグ（０または１）を記憶している。Ｙ座標固定化モードフラグについては後述する。後述するように、主制御部１０は、タッチイベント生成処理において、記憶部３０のＹ座標固定化モードフラグを参照して、記憶部３０のタッチ座標情報を補正するか否かを決定する。
【００２０】
表示制御部４０は、主制御部１０またはアプリケーション２０等からの指示に基づいて、表示部５０が表示する画面を制御する。表示部５０は、表示制御部４０によって制御されることによって、画面を表示する。表示部５０は、例えば、液晶表示ディスプレイ（ＬＣＤ；Liquid Crystal Display）または有機ＥＬ（Electro luminescence）ディスプレイであってよい。
【００２１】
（タッチイベント生成処理）
図３の（ａ）〜（ｄ）および図４の（ａ）〜（ｄ）を参照しつつ、図５を用いて、端末１が実行するタッチイベント生成処理について説明する。図３の（ａ）〜（ｄ）は、端末１が備えたタッチパネル６０に対するスライド操作の流れを示す図である。図４の（ａ）〜（ｄ）は、図３の（ａ）〜（ｄ）に示すタッチ位置（Ｘｎ，Ｙｎ）がどのように補正されるかを示す図である。図５は、図３の（ａ）〜（ｄ）に示すスライド操作に応じて、端末１が実行する処理の流れを示すフローチャートである。
【００２２】
図３の（ａ）に示すように、ユーザは、まず、タッチパネル６０のタッチ面に操作物を接触させる（タッチダウン）。タッチ面上におけるタッチダウンの位置を、（Ｘ０，Ｙ０）とする。その後、図３の（ｂ）に示すように、ユーザは、タッチ面上で操作物をある一方向（スライド方向）に移動させることによって、スライド操作を行う。ユーザがスライド操作を行っている間、タッチパネル制御部７０は、所定時間ごとに、操作物のタッチ位置（Ｘｎ，Ｙｎ）の情報をタッチパネル６０から取得する。
【００２３】
図３の（ｂ）に示すように、ユーザは、操作物が位置ＭＶ４（Ｘ４，Ｙ４）に達した時点Ｔｃで、スライド操作を停止して、操作物をタッチ面から離そうとする。ところが、図３の（ｃ）に示すように、ユーザが意図せずに、操作物をスライド方向とは逆方向に微動させる場合がある。その結果、位置ＭＶ４から位置ＭＶ５（Ｘ５，Ｙ５）に向かう、スライド方向とは逆向きのムーブイベントが発生する。この場合、ユーザは、位置ＭＶ４でタッチアップしたと思っているため、時点Ｔｃにおいて、表示部５０に表示された画面のスクロールが停止することを期待している。ところが、従来技術のように、操作物のタッチ位置（Ｘｎ，Ｙｎ）が補正されなかった場合、時点Ｔｃから後の時点Ｔ５において、スライド方向と逆向きに、画面がスクロールする。
【００２４】
図３の（ｄ）に示すように、ユーザがスライド操作を停止したと思っている位置（Ｘ４，Ｙ４）からスライド方向とは逆の方向に少しの距離だけ移動した位置（Ｘ６，Ｙ６）で、タッチアップイベントが発生する。タッチアップイベントが発生した時点Ｔ６において、アプリケーション２０は、表示部５０に表示された画面のスクロールを停止する。
【００２５】
図５に示すように、タッチイベント生成処理では、まず、タッチパネル制御部７０が、タッチパネル６０に対するタッチ操作として、タッチダウンを検知する（Ｓ１、図３の（ａ）、図４の（ａ））。タッチパネル制御部７０は、タッチパネル６０のタッチ面上におけるタッチダウンの位置（Ｘ０，Ｙ０）を示すタッチ座標情報ＴＤを、記憶部３０に記憶する。あるいは、タッチパネル制御部７０は、タッチ座標情報ＴＤを主制御部１０のタッチイベント判定部１１に送信してもよい。
【００２６】
次に、タッチパネル制御部７０が、タッチダウンに続くタッチ操作を検知する（Ｓ２、図３の（ｂ）、図４の（ｂ））。タッチパネル制御部７０は、タッチパネル６０のセンサが検知する信号を取得する。そして、タッチパネル制御部７０は、タッチパネル６０から取得する信号に基づいて、タッチパネル６０のタッチ面上におけるタッチの位置（Ｘｎ，Ｙｎ）（ｎ＝１，２，３・・・）の情報を含むタッチ座標情報ＭＶｎ（ｎ＝１，２，３・・・）を生成する。タッチの位置（Ｘｎ，Ｙｎ）は、タッチパネル６０の横方向（図３の（ａ）〜（ｄ）では左右方向）の位置座標であるタッチＸ座標Ｘｎと、タッチパネル６０の縦方向（図３の（ａ）〜（ｄ）では上下方向）の位置座標であるタッチＹ座標Ｙｎとで表される。
【００２７】
タッチパネル制御部７０は、生成したタッチ座標情報ＭＶｎ（ｎ＝１，２，３・・・）を記憶部３０に記憶する。あるいは、タッチパネル制御部７０は、生成したタッチ座標情報ＭＶｎを主制御部１０に送信してもよい。
【００２８】
主制御部１０のタッチイベント判定部１１は、記憶部３０のタッチ座標情報ＭＶｎ（ｎ＝１，２，３・・・）に基づいて、タッチイベントの種別を判定する。ここでは、タッチイベント判定部１１は、操作物が、タッチパネル６０に接触または近接したままで、タッチパネル６０上を一方向に移動していると判定する。この場合、タッチイベント判定部１１は、ムーブイベントが発生したと判定する（Ｓ２、図３の（ｂ）、図４の（ｂ））。そして、タッチイベント判定部１１は、ムーブイベントが発生したことを、主制御部１０のスライド方向判定部１２に通知する。
【００２９】
スライド方向判定部１２は、タッチイベント判定部１１から、ムーブイベントが発生したことを通知された場合、ムーブイベントの前後のタッチ座標情報ＭＶｎ−１，ＭＶｎ（ｎ＝１，２，３・・・。ただしＭＶ０＝ＴＤ）に基づいて、操作物のスライド方向、すなわち操作物がタッチパネル６０のタッチ面上で移動している方向を判定する（Ｓ３）。具体的には、ムーブイベント後のタッチ座標情報ＭＶｎ（Ｘｎ，Ｙｎ）に含まれる位置座標Ｙｎが、ムーブイベント前のタッチ座標情報ＭＶｎ−１（Ｘｎ−１，Ｙｎ−１）に含まれる位置座標Ｙｎ−１から増加している場合、スライド方向判定部１２は、操作物が上方向に移動していると判定する。一方、位置座標Ｙｎが位置座標Ｙｎ−１から減少している場合、スライド方向判定部１２は、操作物が下方向に移動していると判定する。
【００３０】
なお、本実施形態では、端末１を正立させた場合に、上側に位置するタッチパネル６０の一つの端が上端であり、下側に位置するタッチパネル６０の他の端が下端であると規定される。そして、上記した「上方向」は、タッチパネル６０の上端に近づく方向として規定され、「下方向」は、タッチパネル６０の下端に近づく方向として規定される。しかしながら、上方向および下方向の定義の仕方は限定されない。スライド方向判定部１２は、判定結果すなわち操作物のスライド方向の情報（以下では、この情報をＳＤと呼ぶ）を、記憶部３０に記憶する（図示せず）。
【００３１】
スライド方向判定部１２は、スライド方向の情報ＳＤに基づいて、タッチパネル制御部７０がタッチ座標情報ＭＶｎ−１を取得してからタッチ座標情報ＭＶｎを取得するまでの所定時間内に、操作物のスライド方向が停止および逆転したか否かを判定する（Ｓ４、図３の（ｂ）および図３の（ｃ））。ここでは、「逆転」は、９０℃以上の方向変化を意味する。より詳細には、操作物のスライド方向が上方向から下方向に変化した場合、または、操作物のスライド方向が下方向から上方向に変化した場合、スライド方向判定部１２は、操作物のスライド方向が逆転したと判定する（Ｓ４でＹＥＳ）。一方、操作物のスライド方向が上方向または下方向のままである場合、スライド方向判定部１２は、操作物のスライド方向が逆転していないと判定する（Ｓ４でＮＯ）。
【００３２】
スライド方向判定部１２は、操作物のスライド方向が逆転したと判定した場合（Ｓ４でＹＥＳ）、記憶部３０に記憶されているＹ座標固定化モードフラグをＯＮ（１）に設定するとともに、操作物のスライド方向が逆転したとき、より正確には操作物のスライド方向が逆転する直前に停止した時点Ｔｃ、におけるタッチの位置Ｍｃ（Ｘｃ，Ｙｃ）を、タッチ座標情報として、記憶部３０に記録する（Ｓ５）。図３の（ｂ）に示すＭＶ４（Ｘ４，Ｙ４）が、（Ｘｃ，Ｙｃ）に対応する。
【００３３】
時間差分／距離差分判定部１３は、記憶部３０が記憶しているＹ座標固定化モードフラ
グを参照する。そして、Ｙ座標固定化モードフラグがＯＮ（１）である場合（Ｓ６でＹＥＳ）、時間差分／距離差分判定部１３は、操作物のスライド方向が逆転した時点Ｔｃから現在Ｔｎまでの経過時間ΔＴは時間閾値ＴＴ（例えば、１００ｍｓｅｃ）未満であるか否かを判定する（Ｓ７、図３の（ｃ）および図３の（ｄ））。
【００３４】
経過時間ΔＴが時間閾値ＴＴ以上である場合（Ｓ７でＮＯ）、時間差分／距離差分判定部１３は、記憶部３０のＹ座標固定モードフラグをＯＦＦ（０）にする（Ｓ９）。一方、経過時間ΔＴが時間閾値ＴＴ未満である場合（Ｓ７でＹＥＳ）、時間差分／距離差分判定部１３は、最新（現在）のタッチＹ座標Ｙｎと、操作物のスライド方向が逆転した時点ＴｃにおけるタッチＹ座標Ｙｃとの距離ΔＤは距離閾値ＤＴ（例えば、３０ピクセル）であるか否かを判定する（Ｓ８）。なお、Ｓ７とＳ８とは、逆順で実施されてもよい。
【００３５】
上記距離が距離閾値ＤＴ以上である場合（Ｓ８でＮＯ）、時間差分／距離差分判定部１３は、Ｙ座標固定化モードフラグをＯＦＦ（０）にする（Ｓ９）。
【００３６】
一方、上記距離ΔＤが距離閾値ＤＴ未満である場合（Ｓ８でＹＥＳ）、換言すれば、Ｙ座標固定化モードフラグがＯＮ（１）である場合、タッチ座標補正処理部１４は、タッチ座標情報ＭＶｎ（Ｘｎ，Ｙｎ）に含まれるタッチＹ座標Ｙｎを、操作物のスライド方向が逆転した時点Ｔｃにおける位置座標Ｙｃに補正する（Ｓ１０、図４の（ｃ）および図４の（ｄ））。補正後のタッチ座標情報を、以下ではＭＶｎ´（Ｘｎ，Ｙｃ）と呼ぶ。一方、上記距離が距離閾値ＤＴ以上である場合（Ｓ８でＮＯ）、換言すれば、Ｙ座標固定化モードフラグがＯＦＦ（０）である場合、タッチ座標補正処理部１４は、タッチＹ座標Ｙｎを補正しない。
【００３７】
タッチ座標補正処理部１４は、タッチ座標情報ＭＶｎ（ｎ＝１，２，３・・・）を補正した場合、補正後のタッチ座標情報ＭＶｎ´（Ｘｎ，Ｙｃ）と、発生したタッチイベントの種別（ここでは、ムーブイベント）を示す情報とを含むタッチイベント情報を、アプリケーション２０に送信する。一方、タッチ座標補正処理部１４は、タッチ座標情報ＭＶｎを補正していない場合、元のタッチ座標情報ＭＶｎ（Ｘｎ，Ｙｎ）と、発生したタッチイベントの種別を示す情報とを含むタッチイベント情報を、アプリケーション２０に送信する。
【００３８】
図４の（ａ）および図４の（ｂ）に示すように、操作物がタッチ面上で逆転する前、すなわち、操作物がタッチ面上をスライド方向に移動している間、タッチ座標補正処理部１４は、操作物のタッチ位置（図４の（ａ）の（Ｘ０，Ｙ０）、および図４の（ｂ）の（Ｘ１，Ｙ１）〜（Ｘ４，Ｘ４））を補正しない。しかしながら、図４の（ｃ）および図４の（ｄ）に示すように、操作物がタッチ面上で逆転した後、操作物がタッチ面上をスライド方向とは逆方向に移動しており、かつ、前述した距離および時間に関する２つの判定条件がいずれも満たされる場合、タッチ座標補正処理部１４は、タッチ位置（図４の（Ｘ５，Ｙ５）、および図４の（ｄ）の（Ｘ６，Ｙ６））を補正する。補正によって、タッチＹ座標（図４の（ｃ）のＹ５、図４の（ｄ）のＹ６）は、操作物がタッチ面上で逆転した時点におけるタッチＹ座標（図４の（ｂ）のＹ４）に補正される。
【００３９】
アプリケーション２０は、タッチ座標補正処理部１４から受信したタッチイベント情報が示すタッチ操作に応じた処理を実行する。ここでは、タッチイベント情報が示すタッチイベントの種別はムーブイベントである。この場合、アプリケーション２０は、表示部５０に表示された画面をスクロールさせるように、表示制御部４０に指示する。表示制御部４０は、アプリケーション２０からの指示により、表示部５０に表示された画面をスクロールする（Ｓ１１）。
【００４０】
その後、主制御部１０は、タッチパネル６０に対するタッチアップまたはタッチキャンセルのタッチ操作が行われた否かを判定する（Ｓ１２、図３の（ｄ））。タッチアップまたはタッチキャンセルのタッチ操作が行われた場合（Ｓ１２でＹＥＳ）、タッチイベント生成処理は終了する。例えば、最新のタッチ座標情報が、所定時間以上、記憶部３０に記憶されていない場合、換言すれば、タッチパネル制御部７０が、所定時間以上、タッチパネル６０のタッチ面に対するタッチ操作を検知していない場合、タッチイベント判定部１１は、タッチアップが行われたと判定する。一方、タッチアップまたはタッチキャンセルが行われず、スライド操作が継続された場合（Ｓ１２でＹＥＳ）、タッチイベント生成処理はＳ２に戻る。
【００４１】
本実施形態の構成によれば、ユーザが操作物をタッチ面から持ち上げたと思っている位置（図３の（ｂ）における位置ＭＶ４のタッチＹ座標Ｙ４）と、アプリケーション２０に通知されるタッチアップの位置（図４の（ｄ）における補正後のタッチアップの位置ＴＵ´のタッチＹ座標Ｙ４）とを一致させることができる。したがって、アプリケーション２０は、ユーザが見たい画面が表示部５０に表示されているときに、画面のスクロールを停止させることができる。
【００４２】
図５に示すフローのＳ９において、時間差分／距離差分判定部１３がＹ座標固定化モードフラグをＯＦＦ（０）にした後、アプリケーション２０が画面をスクロールする前に、タッチパネル制御部７０は、操作物の現在のタッチ位置を示す情報をタッチパネル６０から取得してもよい。そして、スライド方向判定部１２は、タッチパネル制御部７０が記憶部３０に記憶した最新のタッチ座標情報に基づいて、操作物のスライド方向を再度判定してもよい。そして、スライド方向が再度逆転していた場合、タッチ座標補正処理部１４はタッチＹ座標を補正する（Ｓ１０）。上記の構成によれば、ユーザが、意図せずに、タッチ面上で操作物を上下方向にジグザグに微動させた場合、タッチＹ座標が補正される。補正後のタッチＹ座標は、上下方向の移動を含まない。したがって、アプリケーション２０が表示部５０に表示される画面を振動させることを防止することができる。
【００４３】
ただし、ユーザは、意図的に、タッチ面上で、操作物のスライド方向を、上方向から下方向（またはその逆）へと交互に変化させる場合もある。この場合、スライド方向が逆転した直後には、距離および時間に関する判定条件がどちらも満たされる（Ｓ７でＹＥＳかつＳ８でＹＥＳ）ので、タッチＹ座標は補正される（Ｓ１０）が、スライド操作がしばらく継続した後、タッチＹ座標は補正されなくなる。しかしながら、スライド方向が再び逆転した場合（Ｓ４でＹＥＳ）、距離および時間に関する判定条件が再び満たされるようになるので、タッチＹ座標は補正される（Ｓ１０）。
【００４４】
（従来技術との対比）
特許文献１に記載の従来技術では、フリックの方向（すなわち、操作物が移動する方向）が、固定された方向であるか、それとも逆方向であるのかを、各フリック操作ごとに、１回だけ判定している。そのため、特許文献１に記載の従来技術は、スクロール操作のように、操作の途中で操作物の方向が逆転する可能性があることを想定していない。そのため、特許文献１に記載の従来技術は、ユーザがスライド操作を止めた後、画面がわずかにスクロールすることを防止できない。すなわち、ユーザは、スライド操作を止めた瞬間に情報処理装置の画面が停止することを期待している。しかしながら、実際には、ユーザがスライド操作を止めた後も、画面はわずかにスクロールする。
【００４５】
一方、本実施形態の構成によれば、ユーザが操作物を用いてスライド操作を行っている間、操作物のスライド方向が判定される。また、操作物のスライド方向がタッチ面上で逆転した場合であって、前述した時間および距離に関する条件がいずれも満たされる場合（図５参照）、タッチＹ座標が補正される。そのため、ユーザがスライド操作を停止したときに、操作物がスライド方向とは逆方向に少し移動した場合であっても、表示部５０に表示される画面が、スライド方向とは逆方向にわずかにスクロールすることを防止することができる。一方、ユーザがスライド操作を停止したときに、操作物を一定時間（具体的には、時間閾値ＴＴ）以上停止させた場合、タッチＹ座標は補正されない。したがって、ユーザは、表示部５０に表示された画面が所望の位置までスクロールしたときに、操作物を一定時間以上停止させることによって、画面を所望の位置で停止させることができる。
【００４６】
さらに、本実施形態の構成によれば、ユーザの意図しないスライド操作を判定するために、特許文献１に記載の装置のように、複数回のスライド操作（フリック操作）が行われる必要がない。換言すれば、本実施形態の構成によれば、ユーザが１回だけスライド操作を行った場合であっても、ユーザの意図しないスライド操作を判定することができる。
【００４７】
（変形例）
一変形例では、操作物のスライド方向がタッチ面上で逆転した場合であって、前述した時間および距離に関する条件の少なくとも一方が満たされる場合（図５参照）、タッチ位置座標が補正される。すなわち、本変形例では、以下の条件（i）および（iia）または（iib）が満たされる場合、タッチ位置座標が補正される。
（i）操作物のスライド方向がタッチ面上で逆転した後、かつ、
（iia）操作物のスライド方向が逆転した時点Ｔｃから現在Ｔｎまでの経過時間ΔＴが時間閾値ＴＴ未満であるか、あるいは、
（iib）操作物のスライド方向が逆転した時点のタッチＹ座標と現在のタッチＹ座標との距離が距離閾値ＤＴ未満である。
【００４８】
本変形例の構成によれば、操作物のスライド方向が逆転した時点Ｔｃから後、上記条件（iia）または（iib）が満たされる場合、タッチ位置座標が補正される。
【００４９】
上記（iia）の条件が満たされる場合、操作物のスライド方向が逆転した時点から経過した時間が短い。そのため、ユーザが、操作物をタッチ面から離す直前に、意図せずに操作物の移動する方向を変化させた可能性がある。上記（iib）の条件が満たされる場合、操作物のスライド方向が逆転した位置から、操作物がタッチ面上を移動した距離が短い。そのため、ユーザが、操作物をタッチ面から離して、操作物をタッチダウンの位置まで戻そうとしたときに、意図せずに操作物の移動する方向を変化させた可能性がある。
【００５０】
そのため、ユーザがスライド操作を止めた後、操作物がタッチパネル６０のタッチ面上で移動した場合、端末１がユーザの意図に反した動作（例えば、表示部５０の画面のスクロール）することを防止することができる。
【００５１】
〔実施形態２〕
Ｙ座標固定化モードフラグがＯＦＦになるための判定条件は、前記実施形態１〜２で説明した判定条件に限定されない。本実施形態では、Ｙ座標固定化モードフラグがＯＦＦになるための判定条件は、ユーザがＹ座標固定化モードフラグをＯＦＦにするための特別な操作を行うことである。
【００５２】
本実施形態の構成によれば、ユーザが上記特別な操作を行わない限り、Ｙ座標固定化モードは解除されない。そのため、タッチ座標補正処理部１４は、操作物のスライド方向が逆転した場合、必ずタッチＹ座標Ｙｎを補正する（図５参照）。換言すれば、操作物のスライド方向が逆転した後、タッチＹ座標Ｙｎは固定される。したがって、操作物のスライド方向が逆転した後、表示部５０に表示された画面はスクロールされない。換言すれば、操作物のスライド方向が逆転した後、表示部５０に表示された画面は停止する。
【００５３】
ユーザは、表示部５０に表示された画面が所望の位置までスクロールしたときに、操作物をスライド方向とは逆方向に少し移動させる。これにより、ユーザは、画面のスクロールを簡単に停止させることができる。このように、本実施形態の構成によれば、ユーザがスライド操作を行う場合の端末１の利便性が向上する。
【００５４】
〔実施形態３〕
（ソフトウェアによる実現例）
端末１の制御ブロック（特に主制御部１０、アプリケーション２０、表示制御部４０、およびタッチパネル制御部７０）は、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。
【００５５】
後者の場合、端末１は、各機能を実現するソフトウェアであるプログラムの命令を実行するＣＰＵ、上記プログラムおよび各種データがコンピュータ（またはＣＰＵ）で読み取り可能に記録されたＲＯＭ（Read Only Memory）または記憶装置（これらを「記録媒体」と称する）、上記プログラムを展開するＲＡＭ（Random Access Memory）などを備えている。そして、コンピュータ（またはＣＰＵ）が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【００５６】
〔まとめ〕
本発明の態様１に係る情報処理装置（端末１）は、タッチ面へのタッチ操作に応じて動作する情報処理装置であって、操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得するタッチ位置取得部（タッチパネル制御部７０）と、上記タッチ面上における上記操作物のスライド方向が逆転した場合、該逆転した時点から後に上記タッチ位置取得部が取得した上記タッチ位置を補正するタッチ位置補正部（タッチ座標補正処理部１４）と、を備えている。
【００５７】
上記の構成によれば、タッチ面上における操作物のスライド方向が変化した時点から後、操作物のタッチ位置を補正する。したがって、ユーザがスライド操作を行っているときに、操作物のスライド方向を意図せずに逆転させた場合、情報処理装置の意図しない動作を防止することができる。
【００５８】
本発明の態様２に係る情報処理装置は、上記態様１において、上記タッチ位置補正部は、上記逆転した時点から後の時点において上記タッチ位置取得部が取得した上記タッチ位置を、上記逆転した時点の直前に上記タッチ位置取得部が取得した上記タッチ位置に補正してもよい。
【００５９】
上記の構成によれば、タッチ面上における操作物のスライド方向がある時点で変化した場合、その時点から後、タッチ位置が固定される（すなわち変化しない）ように、タッチ位置を補正することができる。
【００６０】
本発明の態様３に係る情報処理装置は、上記態様１または２において、上記逆転した時点から後の時点において、（i）上記逆転した時点から上記後の時点までの経過時間が所定の時間閾値未満であること、および、（ii）上記逆転した時点の直前に上記タッチ位置取得部が取得した上記タッチ位置から上記後の時点に上記タッチ位置取得部が取得した上記タッチ位置までの距離が所定の距離閾値未満であることの少なくとも一方が満たされる場合、上記タッチ位置補正部は、上記後の時点に上記タッチ位置取得部が取得した上記タッチ位置を補正してもよい。
【００６１】
上記の構成によれば、タッチ面上における操作物のスライド方向が変化し、かつ、上記（i）および（ii）の少なくとも一方の条件が満たされる場合に、操作物のタッチ位置を補正することができる。上記（i）の条件が満たされる場合、操作物のスライド方向が逆転した時点から経過した時間が短い。そのため、ユーザが、操作物をタッチ面から離す直前に、意図せずに操作物の移動する方向を変化させた可能性がある。上記（ii）の条件が満たされる場合、操作物のスライド方向が逆転した位置から、操作物がタッチ面上を移動した距離が短い。そのため、ユーザが、操作物をタッチ面から離して、操作物をタッチダウンの位置まで戻そうとしたときに、意図せずに操作物の移動する方向を変化させた可能性がある。
【００６２】
本発明の態様４に係る情報処理装置は、上記態様１から３のいずれかにおいて、上記タッチ位置補正部は、上記タッチ面上における上記操作物のスライド方向が９０°以上変化した場合、上記タッチ面上における上記操作物のスライド方向が逆転したと判定して、上記タッチ位置取得部が取得する上記タッチ位置を補正してもよい。
【００６３】
上記の構成によれば、タッチ面上における操作物のスライド方向が９０°以上変化した場合、すなわち、スライド方向が逆転した場合に、タッチ位置を補正することができる。
【００６４】
本発明の態様５に係る情報処理装置の制御方法は、タッチ面へのスライド操作に応じて動作する情報処理装置（端末１）の制御方法であって、操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得し、上記タッチ面上における上記操作物のスライド方向が逆転した場合、該逆転した時点から後に取得した上記タッチ位置を補正する。上記の構成によれば、上記態様１に係る情報処理装置と同様の効果を奏することができる。
【００６５】
本発明の各態様に係る情報処理装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記情報処理装置が備える各部（ソフトウェア要素）として動作させることにより上記情報処理装置をコンピュータにて実現させる情報処理装置の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【００６６】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
【符号の説明】
【００６７】
１  端末（情報処理装置）
１４  タッチ座標補正処理部（タッチ位置補正部）
７０  タッチパネル制御部（タッチ位置取得部）
Ｔｃ  時点（ある時点）
ＴＴ  時間閾値
ＤＴ  距離閾値
【図１】
2018181067.tif 000003
【図２】
2018181067.tif 000004
【図３】
2018181067.tif 000005
【図４】
2018181067.tif 000006
【図５】
2018181067.tif 000007