【解決手段】片手保持操作で指が届かない操作不能領域に表示されたターゲット・オブジェクト253を含む全体画面(182、184)をタッチ・スクリーン101の標準位置に表示する(B)。片手保持操作でタッチ・スクリーンの指が届く押圧位置259に対して行われた押圧力によって、全体画面のタッチ・スクリーンに対する表示位置を操作する手に近づく方向に移動させる(C)。移動した画面のターゲット・オブジェクト253が指の下に到達したときに急激に指を離すことで入力を確定する。
前記第1のイベントを受け取るステップが、前記タッチ・スクリーンの押圧位置に対する前記片手保持操作をする指の押圧力を検出するステップを含む請求項1または請求項2に記載のコンピュータ・プログラム。
前記第2のイベントが、前記ターゲット・オブジェクトが前記押圧位置まで移動した瞬間に押圧力を解放したときに生成される請求項3から請求項6のいずれかに記載のコンピュータ・プログラム。
前記移動させるステップが、前記押圧力の大きさに応じて前記タッチ・スクリーンにおける前記全体画面の座標を決定するステップを有する請求項3から請求項7のいずれかに記載のコンピュータ・プログラム。
前記第2のイベントを受け取ったことに応答して前記全体画面の表示位置を前記標準位置に戻すステップを有する請求項1から請求項8のいずれかに記載のコンピュータ・プログラム。
前記片手保持操作で容易に操作できる快適操作領域に表示されたターゲット・オブジェクトに対して行われたタッチ・パネル操作で入力を確定するステップを有する請求項1から請求項10のいずれかに記載のコンピュータ・プログラム。
前記タッチ・スクリーンまたは筐体に対する押圧力を検出して前記第1のイベントまたは前記第2のイベントを生成するための圧力センサを有する請求項15に記載の携帯式情報端末。
前記片手保持操作をする手の方向に存在する前記タッチ・スクリーンの座標に基準位置を定義し、該基準位置の座標と前記タッチ・スクリーンに対する押圧位置の座標に基づいて前記画面が移動する方向を計算する移動方向判定部を有する請求項15または請求項16に記載の携帯式情報端末。
【発明の概要】
【発明が解決しようとする課題】
【0009】
図8は、スマートフォンを左手の親指で片手保持操作をするときの様子を示す図である。片手保持操作には、筐体を安定して保持しながら操作できる親指が最も適している。タッチ・スクリーンに表示される画面は、タッチ操作の対象となるオブジェクトを全体に渡って含む。したがって、タッチ・スクリーンには片手保持操作をする親指で操作できない範囲が発生する。そして、タッチ・スクリーンのサイズが大型化すると、親指で操作できない範囲が拡大する。片方の手だけで筐体を持ち替えて不安定な姿勢のまま親指で操作したり他の指で操作したりすれば落下の危険が伴う。
【0010】
特許文献1の発明のように、アイコンを親指で操作し易い位置まで移動させてから操作する方法はアイコンに対する片手保持操作を容易にするが、アイコンの移動で画面の表示が変わってしまうため画面がみにくくなったり適用可能な画面が限られたりするため、ブラウザの画面や文章入力画面などの一般的なアプリケーション・プログラム(アプリケーション)には適用できない。非特許文献2のスマートフォンは、入力画面が操作する手の方に水平にシフトして表示されるため、電話、キーパッド、電卓パッドなどの限られたアプリケーションは親指で操作できるようになるが、利用できるアプリケーションが限定される。またその場合でもタッチ・スクリーン上には依然として親指で操作できないオブジェクトが存在することになる。
【0011】
スマートフォンでは画像のサイズが大きいためタッチ・スクリーンに画面の全体を表示できないときは、スクロールして隠れた画像を表示することができる。この場合、入力したいオブジェクトが親指の届く範囲にくるまでスクロールできれば片手保持操作ができる。しかしそれ以上は上側にスクロールでない上限が表示されている画面には親指が届かない範囲が残る。また、スクロールできない画面が表示されているときは適用できない。さらに、スクロールは、指のスワイプやフリックで行うが、それらは熟練しないと片手保持操作で容易にはできず、オブジェクトに対する入力をするには面倒な操作方法でもある。
【0012】
そこで本発明の目的は、タッチ・スクリーンに対する片手保持操作を容易に行うことができる携帯式情報端末を提供することにある。さらに本発明の目的は、アプリケーションに依存しないで片手保持操作を容易に行うことができる携帯式情報端末を提供することにある。さらに本発明の目的は、そのような携帯式情報端末に適用が可能な入力方法およびコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【0013】
本発明は、タッチ・スクリーンに対する片手保持操作が可能な携帯式情報端末に関する。このような携帯式情報端末には、スマートフォン(多機能携帯電話)またはタブレット端末がある。第1の態様では、片手保持操作で指が届かない領域に表示されたターゲット・オブジェクトを含む全体画面をタッチ・スクリーンの標準位置に表示し、画面移動操作の開始を示す第1のイベントを受け取り、第1のイベントに応じて全体画面を片手保持操作する手に近づく方向に移動させ、移動したターゲット・オブジェクトに対する操作を示す第2のイベントを受け取って入力を確定する。
【0014】
上記の構成によれば、片手保持操作で指が届かない領域に表示されたターゲット・オブジェクトを手に近い位置まで移動させてから入力することができるため片手保持操作を容易に行うことができる。また、全体画面を移動させるため、アプリケーションに対する依存性がなく、適用できるアプリケーションを限定したり修正を加えたりする必要がない。さらに、移動する全体画面の一貫性が保たれるため、アプリケーションを使用するユーザの思考が中断されることもなくなる。
【0015】
第1のイベントは、タッチ・パネルに対する通常の操作と区別できれば限定する必要はないが、片手保持操作をする指が届くタッチ・スクリーンの領域に対して行う操作で生成すると、画面移動操作に入る前から一貫して片手保持操作をすることができるため都合がよい。画面を移動させる第1のイベントは、タッチ・スクリーンの押圧位置に対する片手保持操作をする指の押圧力を検出して生成することができる。指の届く範囲でのタッチ・スクリーンに対する押圧操作はタッチ・パネルに対するタッチ・パネル操作と区別することができ、かつ、片手保持操作で容易に行うことができる。
【0016】
全体画面が移動した後のタッチ・スクリーンにはブランク画面が表示される。なお、全体画面には、システム領域の画像とクライアント領域の画像を含んでいてもよい。全体画面の移動方向は、タッチ・スクリーンに基準位置を定義し、基準位置の座標と押圧位置の座標に基づいて全体画面が移動する方向を計算することができる。基準位置は、タッチ・スクリーンのコーナーに設定することができる。この場合、ユーザは容易に基準位置とターゲット・オブジェクトの間に押圧位置を見いだすことができる。基準位置はまた、片手保持操作をする親指でタッチした位置から計算した円弧の中心座標とすることができる。この場合は、ターゲット・オブジェクトの方に自然に指を伸ばして押圧位置を決めることができる。
【0017】
全体画面が移動する方向は、基準位置の座標と押圧位置の座標を結ぶ直線の方向とすることができる。全体画面が移動を開始したあとに、ユーザは全体画面が意図する方向に移動していないことに気づくこともある。このとき、押圧位置を変更したことを示す第3のイベントを受け取り、第3のイベントに応答して、基準位置と変更された押圧位置に基づいて画面が移動する方向を再計算することができる。
【0018】
第2のイベントは、ターゲット・オブジェクトが押圧位置まで移動した瞬間に押圧力を解放したときに生成することができる。押圧力の解放は片手保持操作で容易に行うことができ、かつタッチ・パネルに対するタップと区別することができる。移動させる際には、押圧力の大きさに応じてタッチ・スクリーンにおける画面の座標を決定することができる。第2のイベントを受け取ったことに応答して画面の表示位置を標準位置に戻すことで次の入力の準備をすることができる。
【0019】
片手保持操作をする手に近い操作困難領域に表示されたターゲット・オブジェクトを含む全体画面をタッチ・スクリーンの標準位置に表示し、画面移動操作を開始する第4のイベントを受け取り、第4のイベントに応じて全体画面を片手保持操作する手から離れる方向に移動させ、移動したターゲット・オブジェクトに対する入力を示す第5のイベントを受け取って入力を確定することができる。
【0020】
従って、操作する手から遠い操作不能領域のターゲット・オブジェクトおよび操作する手に近い操作困難領域のターゲット・オブジェクトのいずれに対しても指を快適に操作できる領域に対して片手保持操作で容易に入力することができる。快適操作領域に表示されたターゲット・オブジェクトに対してはタッチ・パネル操作で入力を確定することができる。
【0021】
本発明の第2の態様では、タッチ・スクリーンに第1のターゲット・オブジェクトと第2のターゲット・オブジェクトを含む全体画面を表示し、画面移動操作の開始を示す第1のイベントを受け取り、第1のイベントに応じて全体画面の表示位置を片手保持操作する手に近づく方向に移動させてから停止させ、停止した全体画面の第1のターゲット・オブジェクトに対する操作を示す第2のイベントを受け取って入力を確定し、停止した全体画面の第2のターゲット・オブジェクトに対する操作を示す第3のイベントを受け取って入力を確定することができる。このような構成によれば、複数のターゲット・オブジェクトが操作不能領域に表示されている場合に、画面を指に近づけた状態で固定してから連続的に複数回入力をすることができる。
【0022】
本発明の第3の態様では、タッチ・スクリーンにターゲット・オブジェクトを含むウィンドウ画面を表示し、タッチ・スクリーンに対する押圧力を検出し、押圧力の検出に応じてフォアグラウンドに表示されているウィンドウ画面の表示位置を片手保持操作する手に近づく方向に移動させ、ターゲット・オブジェクトが押圧位置に到達したときに押圧力が解放された位置の座標を検出して入力を確定することができる。
【発明の効果】
【0023】
本発明により、タッチ・スクリーンに対する片手保持操作を容易に行うことができる携帯式情報端末を提供することができた。さらに本発明により、アプリケーションに依存しないで片手保持操作を容易に行うことができる携帯式情報端末を提供することができた。さらに本発明により、そのような携帯式情報端末に適用が可能な入力方法およびコンピュータ・プログラムを提供することができた。
【発明を実施するための形態】
【0025】
[片手保持操作と操作不能領域]
図1は、携帯式情報端末の一例としてのスマートフォン100を右手の親指で片手保持操作をしている様子を示している。タッチ・スクリーン101に対する通常の片手保持操作では、スマートフォン100の下側のコーナーが掌に収まるように右手または左手で保持しながら親指でタッチ・パネルの操作をする方法が一般的である。一旦保持した後で持ち替えることなく快適に親指でタッチ・パネルの操作ができる範囲は、親指の付け根を中心とし半径を親指の長さとする概略的な円弧状の領域となる。タッチ・スクリーン101におけるこの領域を快適操作領域205ということにする。
【0026】
快適操作領域205は、手から遠い方の外側境界201と手に近い方の内側境界203に囲まれている。内側境界203より手に近い方の領域は、親指を曲げることで持ち替えないでも操作はできるが快適操作領域205よりも操作がし難いためこれを操作困難領域207ということにする。外側境界201よりも手から遠い方の領域は、持ち替えない限り右手の親指で操作することができないためこれを操作不能領域209ということにする。快適操作領域205は、親指が自然に伸びた最も操作がし易い領域に相当する。
【0027】
図2は、スマートフォン100の概略の構成を示す機能ブロック図である。スマートフォン100は、カメラ、オーディオ、無線などを含む多くの機能デバイスを備えるが、
図2には、本発明の説明または理解に必要な範囲の機能デバイスだけを示している。また、これらの機能のいくつかを1つの半導体チップに統合したり個別の半導体チップに分割したりすることができる。I/Oコントローラ111には、CPU1109、ディスプレイ103、およびメイン・メモリ113が接続されている。I/Oコントローラ111は、ディスプレイ103を含む多くの周辺デバイス、CPU109およびメイン・メモリ113の相互間のデータ転送を制御するインターフェース機能を提供する。
【0028】
ディスプレイ103は、一例として液晶表示装置(LCD)を採用しているが有機ELなどの他の方式のフラット・パネル型ディスプレイを採用することもできる。ディスプレイ103の内部には、透明な導電膜で形成されたインセル・タッチ・パネルがタッチ・パネル105として設けられている。他の例としてはタッチ・パネル105を、透明電極で別部材として形成してディスプレイ103に重ねて配置するようにしてもよい。
【0029】
タッチ・パネル105には、ディスプレイ103の表面に対して指が接触または接近した位置の座標を出力する投影型または表面型の静電容量式、押圧された位置の座標を出力する抵抗膜式または、その他の方式を採用することができる。本実施の形態では投影型の静電容量式を採用している。タッチ・パネル105とディスプレイ103が組み合わせられた複合体はタッチ・スクリーン101を構成する。タッチ・パネル105は、タッチ・パネル・コントローラ115に接続されている。
【0030】
圧力センサ107は、タッチ・センサ101に指で加えられた押圧力を検出できる位置に1個または複数個配置されている。圧力センサ107は、タッチ・センサ101の下に配置してもよいし、スマートフォン100の筐体の裏面に配置してもよい。圧力センサ107は、タッチ・パネル・コントローラ115に接続されている。圧力センサ107は、タッチ・パネル105と協働して、以下に述べる画面移動操作をするための操作イベントを生成する。メイン・メモリ113は、CPU109が実行するプログラムを記憶する揮発性のメモリである。
【0031】
タッチ・パネル・コントローラ115は、タッチ・パネル105から受け取った座標信号および圧力センサ107から受け取った圧力信号をプログラムが認識できる所定のプロトコルのデータに変換してシステムに出力する。フラッシュ・メモリ117は、CPU109が実行するOSおよびアプリケーションおよびデータを格納する不揮発性のメモリである。本発明の画面移動操作を実行するプログラム(
図4)もフラッシュ・メモリ117に格納されている。
【0032】
加速度センサ119は、スマートフォン100の筐体に発生した重力の加速度および振動による加速度を検出してプログラムに加速度データを出力する。加速度センサ119は、直交する3つの検出軸(X軸、Y軸、Z軸)を備えており、各検出軸は重力加速度の分力成分およびスマートフォン100の筐体に加えられた衝撃による加速度を検出して出力する。OSは、加速度センサ119から受け取った重力加速度の分力成分から各検出軸の重力方向に対する傾斜角度を計算して筐体の縦横方向を判定しディスプレイ103に表示される画面の表示方向がユーザのみる方向に整合するように変更する。
【0033】
[ソフトウェア構成]
図3は、フラッシュ・メモリ117に格納されたプログラムがCPU109で実行されるときの様子を説明するブロック図である。
図3にはアプリケーションの一例として文書アプリケーション155とブラウジング・アプリケーション157を示している。文書アプリケーション155は文書作成の際に実行し、ブラウジング・アプリケーション157は、インターネットにアクセスする際に実行する。
【0034】
画面移動アプリケーション159は、以下に説明する画面移動操作をするための外側境界201および内側境界203を登録する際のユーザー・インターフェースを提供する。画面移動操作プログラム153は、OS151と協働して画面移動操作のための処理をする。画面移動操作プログラム153は一例として、アプリケーション・レイヤーとOS151のレイヤーの間に配置されている。したがって、文書アプリケーション155およびブラウジング・アプリケーション157は、画面移動操作のために修正したり特別なコードを加えたりする必要がない。
【0035】
[画面移動操作の概要]
図4はスマートフォン100において、
図1のように右手で片手保持操作をして画面移動操作をするときの概要を説明する図である。文書アプリケーション155を例にして説明する。
図4(A)では、タッチ・スクリーン101に文書アプリケーション155のアイコン155aを含む複数のアイコンで構成されたホーム画面181が表示されている。ホーム画面181は、すべてのアプリケーションを開始する際に最初に表示される画面で待受画面ともいう。ノートPCではホーム画面をデスクトップ画面という。
【0036】
タッチ・スクリーン101には、ホーム画面181を表示するクライアント領域184の他に電波状態、時刻、および充電状態などのシステム情報を表示するシステム領域182も存在する。ユーザはクライアント領域184にアプリケーション画面を表示して操作することができるが、システム領域182にはアクセスすることができない。クライアント領域184とシステム領域182で構成されたタッチ・スクリーン101に表示する画面を全体画面ということにする。スマートフォン100は、タッチ・スクリーン101のクライアント領域184に1つのアプリケーション画面を表示する。ただし、1つの画面のサイズ(画素数)がディスプレイ103の解像度よりも大きい場合には、クライアント領域184から隠れる部分が生ずるが、隠れた部分はスクロールをして表示することができる。スクロールはタッチ・スクリーン101に対するフリックまたはスワイプで行うことができる。
【0037】
アイコン155aはこの例では快適操作領域205に表示されているため、親指によるタップで片手保持操作をすることができる。ただし、アイコン155aが操作不能領域209に表示されているときにも以下に説明する方法で片手保持操作をすることができる。アイコン155aに対するタップが行われると、アプリケーション155が起動して
図4(B)のようにクライアント領域184に編集中のアプリケーション画面155bがフルスクリーン形式で表示される。
図4(B)の全体画面の表示位置を標準位置ということにする。
【0038】
本明細書においてフルスクリーン形式の表示とは、クライアント領域184の全体に1つのアプリケーション画面を表示することを意味しており、ウィンドウ形式で複数のアプリケーション画面を表示する場合とは区別される。フルスクリーン形式で表示される画像は、サイズがタッチ・スクリーン101の解像度より大きくてもよい。この場合はスクロールで画面の隠れた領域を表示することができる。フルスクリーン形式で表示された画面はウィンドウ画面と異なってホーム画面181上での表示位置を変更することはできない。
【0039】
アプリケーション画面155bはソフトウェア・キーボード251を含んでいる。ソフトウェア・キーボード251は、アプリケーション155の一部であってもOS151が提供するものであってもよい。OS151が提供する場合はキーボード入力を必要とするアプリケーションが起動したことを検知したOS151がクライアント領域184のアプリケーションによって指示された位置にアプリケーション画面155bに重ねてソフトウェア・キーボード251を表示する。
【0040】
文章の最後には入力位置を示すカーソル155cが表示されている。ソフトウェア・キーボード251は、操作不能領域209に表示された電話キーに対応するターゲット・オブジェクト253も含んでいる。ターゲット・オブジェクト253は、ホーム画面181またはアプリケーション画面151のなかでタッチ・スクリーン101にタップやフリックなどをしたときにシステムが反応するアイコン、文字、記号などをいう。タッチ・スクリーン101には、保持している手に近いタッチ・スクリーン101のコーナーにタッチ・スクリーン101の基準位置255が定義されている。
【0041】
ここでユーザが片手保持操作でターゲット・オブジェクト253に入力したいとする。ユーザは、基準位置255とターゲット・オブジェクト253の間に仮想的に仮想移動直線257を想定し、快適操作領域205において仮想移動直線257上の押圧位置259に対して押圧操作をする。ここで、タッチ・パネル操作と押圧操作について説明する。タッチ・パネル操作は、圧力センサ107の下限値を超えない範囲の圧力でのタッチ・スクリーン101に対する指の接触または接近によりタッチ・パネル105が座標を検出する操作をいう。
【0042】
タッチ・パネル操作には、タッチ・スクリーン101に指が触れるタッチ、タッチしてから短い時間のうちに指を離すタップ、タッチした状態で指を移動させるスワイプ、タッチした指をすばやく動かすフリックなどの複数のジェスチャがある。タップには指を離すまでの時間が長いロング・タップもある。またシステムは、マルチ・タッチにも適応しており、同時に複数の指で操作するジェスチャでの入力も可能である。押圧操作は、圧力センサ107が下限の閾値以上の圧力を検出する操作をいう。押圧操作ではタッチ・スクリーン101に対して接触した指の座標を検出するジェスチャも発生するが、システムは押圧力を検出してタッチ・パネル操作のジェスチャと区別することができる。
【0043】
押圧操作があると、アプリケーション画面155bとソフトウェア・キーボード251は、それぞれの画面サイズ、コンテンツの形状、および配置を変えないで画面の一貫性を保ちながら、全体画面が仮想移動直線257に沿って押圧位置259に向かって移動する。その結果、
図4(C)に示すように、タッチ・スクリーン101の左端と上端にはブランク画面261が表示されると同時に、
図4(B)では表示していたアプリケーション画面155bの右下に表示欠損が生ずる。
【0044】
ブランク画面261は、アプリケーション処理部309が要求する画像データが存在しないタッチ・スクリーン101の領域に表示される画面で、ディスプレイ103はノーマリ・ホワイトまたはノーマリ・ブラックの特性に従う色を表示する。ただし、画像データ生成部301(
図5)は、ブランク画面261を表示する領域に特別な画像データを送って任意の背景画像を表示してもよい。押圧操作の間は全体画面の移動が続き、ターゲット・オブジェクト253はやがて、押圧位置259に到達する。
【0045】
ターゲット・オブジェクト253が押圧位置259に到達したことを目視で確認したユーザが指を急に離して圧力センサ107の圧力を解放すると、それを検知したシステムはその座標に対する入力があったと認識する。このときシステムは入力座標をタッチ・パネル105から取得する。入力が確定したあとは、画面が
図4(B)の状態に戻ってシステムは次の入力を待つ。このようにターゲット・オブジェクト253が快適操作領域205に入るように全体画面を移動させてから入力することを画面移動操作という。
【0046】
画面移動操作は、片手保持操作を容易に実現する操作手法である。画面移動操作は、タッチ・パネル操作と押圧操作の協働で実現する。このとき、押圧操作は、タッチ・パネル101が検出する座標が、画面移動操作に伴うものであることをシステムが認識できるようにする役割を果たしている。画面移動操作をすると、標準位置では表示されていたアプリケーション画面に表示欠損が発生するとともに、ブランク画面が発生する。全体画面は、クライアント領域184に表示されるアプリケーション画面と定義してもよい。この場合は、画面移動操作でクライアント領域184に表示されるアプリケーション画面155bだけが移動し、システム領域182の画面は移動しない。
【0047】
[入力システム]
図5は、画面移動操作をサポートする入力システム300の構成を示す機能ブロック図である。入力システム300は、
図2に示したハードウェア資源と
図3に示したソフトウェア資源で構成されている。画像データ生成部301、座標変換部303、移動方向判定部311、および入力処理部307は、主としてOS151および画面移動操作プログラム153とそれらを実行するCPU109およびメイン・メモリ113などのハードウェア資源との協働により実現することができる。
【0048】
アプリケーション処理部309は、主として文書アプリケーション155、ブラウジング・アプリケーション157、画面移動アプリケーション159およびOS151などのソフトウェア資源と、それらを実行するハードウェア資源との協働により実現することができる。アプリケーションの開発者は、画面移動操作を一切考慮しないでコードを作成することができる。
【0049】
入力処理部307は、タッチ・パネル・コントローラ115から座標データおよび圧力データを受け取り、加速度センサ119から加速度データを受け取る。圧力データを受け取らないときは、タッチ・パネル操作と判断して受け取った座標データおよび加速度データをアプリケーション処理部309に送る。圧力データを受け取ったときは、押圧操作と判断して受け取った圧力データ、座標データおよび加速度データを移動方向判定部311に送る。入力処理部307は、画面移動操作において行われたターゲット・オブジェクト253に対する入力を検出すると押圧位置259の座標を座標変換部303に送る。
【0050】
移動方向判定部311は、快適操作領域205を特定する外側境界201および内側境界203を定義したデータおよび基準位置255の座標データを登録する。移動方向判定部311は、仮想移動直線257と移動直線258の式を計算する。移動方向判定部311は、特別な操作が行われたときに現在保持している手が右手と左手のいずれであるかを登録する。座標変換部303は、移動直線258の式と圧力データから移動ベクトルを計算して、タッチ・スクリーン101に表示するときの全体画面の基準位置186の座標を計算し画像データ生成部301に送る。座標変換部303は、入力処理部307から受け取った押圧位置259の座標データを、標準位置の座標データに変換してアプリケーション処理部309に送る。
【0051】
アプリケーション処理部309は、入力処理部307または座標変換部303から入力位置の座標データを受け取って、文書アプリケーション155またはブラウジング・アプリケーション157を実行する。アプリケーション処理部309は、座標変換部303によりアプリケーション画面155bの表示位置が変更されたことを認識しない。画像データ生成部301は、アプリケーション処理部309または座標変換部303からの指示に基づいてディスプレイ103に表示する画素データを生成しI/Oコントローラ123に送る。
【0052】
[画面移動操作の手順]
図6は、入力システム300が画面移動操作を処理する手順を示すフローチャートである。ブロック401では、移動方向判定部311に対して
図1の外側境界201または外側境界201と内側境界203を登録するためにタッチ・パネル操作で画面移動アプリケーション159を起動する。画面移動アプリケーション159は、ディスプレイ103にウィザード画面を表示して、ユーザに右手および左手で順番に片手保持操作により、親指でタッチ・スクリーン101の数箇所をタップするように促す。
【0053】
タップ位置の座標データは、アプリケーション処理部309から移動方向判定部311に送られる。移動方向判定部311は、一例として受け取った座標から円環状の快適操作領域205の中心を円弧で近似したデータを作成する。さらに移動方向判定部311は円弧の中心に対して同心となる外側境界201または外側境界201と内側境界203を、半径を所定の割合で増減した円弧として定義してその座標データを登録する。
【0054】
なお、外側境界201と内側境界203のデータは、親指でスワイプしたときに親指の腹がタッチした座標から直接生成してもよい。さらに、移動方向判定部311は、タッチ・スクリーン101の基準位置255の座標(
図4)を登録する。基準位置255の座標は、一例として右手の片手保持操作に対するタッチ・スクリーン101の右下のコーナーまたは左手の片手保持操作に対する左下のコーナーの座標とすることができる。
【0055】
あるいは基準位置255の座標は、外側境界201と内側境界203を円弧で近似した場合の円弧の中心座標とすることができる。円弧の中心座標は、親指の付け根に近い位置となる。円弧の中心座標はタッチ・スクリーン101の外側にあってもよい。右手と左手のそれぞれに対する外側境界201、内側境界203、および基準位置255の座標の登録が終了して画面移動アプリケーション159を停止すると、画面移動操作の準備が完了する。
【0056】
ブロック403で、ユーザはシステムに現在スマートフォン100を保持している手が右手または左手のいずれかを知らせるために特別な操作をする。特別な操作はオブジェクトに対するタッチ・パネル操作と区別できれば特に限定する必要はないが、持ち替えをしないで片手保持操作を継続した状態でできることが望ましい。一例では、押圧しながら右手または左手の親指でそれぞれの快適操作領域205上をスワイプするジェスチャとすることができる。
【0057】
他の例では、右手または左手の親指でそれぞれの快適操作領域にタッチした状態で、スマートフォンを1回または数回特徴的に振って加速度センサ119に加速度信号を生成させる操作とすることができる。入力処理部307は、特別な操作が行われたときの圧力データ、座標データおよび加速度データを移動方向判定部311に送る。移動方向判定部311は、受け取った座標データ、座標データまたは加速度データから現在保持している手が右手と左手のいずれかを認識して登録する。
【0058】
ブロック405では、文書アプリケーション155を起動するために
図4(A)のホーム画面181でアイコン155aをタップする。快適操作領域205に表示されたターゲット・オブジェクトに対する操作は、タッチ・パネル操作で行うことができる。内側境界203を定義しない場合は、操作困難領域207に表示されたターゲット・オブジェクトに対する操作もタッチ・パネル操作で行うことができる。もし、アイコン155aが操作不能領域209に表示されている場合は、アイコン155aに対する入力も画面移動操作で行うことができる。快適操作領域205に表示されたアイコン155aに対してタップ操作をすると、
図4(B)のようにタッチ・パネル103にフルスクリーン形式でアプリケーション画面155が表示される。
【0059】
OS151は一例として、タッチ・スクリーン101の左上のコーナーに座標(0,0)を定義する。OS151は、タッチ・スクリーン101に表示されている全体画面の基準位置186を定義する。ここでは、システム領域182の左上のコーナーに全体画面の基準位置186を定義する。アプリケーション155はOS151にアプリケーション画面155bの表示要求をすると、OS151はクライアント領域184にフルスクリーン形式でアプリケーション画面155bを表示する。このときのタッチ・スクリーン101における全体画面の表示位置を標準位置という。
【0060】
ブロック407では、操作不能領域209に表示されたアプリケーション画面155bを構成するターゲット・オブジェクト253に対して画面移動操作を開始する。文字の入力位置を変更するためにカーソル155cにアクセスする場合は、カーソル155cがターゲット・オブジェクトになる。また、ターゲット・オブジェクト253がタッチ・スクリーン101の表示範囲から隠れている場合は、スクロールして操作不能領域209にターゲット・オブジェクト253を表示してから画面移動操作をすることができる。内側境界203を登録していない場合は、ユーザは目視でタッチ・スクリーン101のコーナーに設定した基準位置255とターゲット・オブジェクト253を結ぶ仮想移動直線257を想定しその上を親指で押圧する。押圧位置259は、自然に快適操作領域205の範囲になる。
【0061】
タッチ・スクリーン101の基準位置255を円弧の中心に定義しているときは、自然に親指の先をターゲット・オブジェクト253に向けるだけでよい。さらに、操作困難領域207に対する内側境界203も定義している場合は、快適操作領域205の中で外側境界201に近い位置を押下する。快適操作領域205の中で内側境界203に近い位置を押下すると、操作困難領域207が押圧位置259に近付くように全体画面が移動する。画面移動操作が行われて以下の手順で全体画面の移動が開始すると、入力が確定するまで入力処理部307は座標データと圧力データを移動方向判定部311に送る。
【0062】
ブロック409で移動方向判定部311は、タッチ・スクリーン101の基準位置255の座標と押圧位置259の座標を結ぶ仮想移動直線257の式を計算する。さらに、移動方向判定部311は、全体画面の基準位置186に一致するタッチ・スクリーン101の座標(0,0)を通過し、仮想移動直線257に平行な移動直線258の式を作成して座標変換部303に送る。ブロック411で座標変換部303は、移動直線258の式と圧力データから移動ベクトルを計算する。移動ベクトルは、移動する全体画面の基準位置186の座標データである。
【0063】
移動ベクトルの計算の一例では、圧力センサ107から受け取った圧力データに対して下限値と上限値を設定し、その間に全体画面の基準位置186の座標を割り当てた位置ベクトルを計算する。具体的には、圧力データが下限値を超える直前の基準位置186をタッチ・スクリーン101の座標(0,0)とし、圧力データが上限値に到達したときの基準位置186の座標を、移動直線258とタッチ・スクリーン101の右端の座標の交点とするように設定する。この場合は画面移動操作をしている間の基準位置186の座標は、押圧力に比例した移動直線258上のいずれかとなる。圧力データが上限値を示すまでの間に、ターゲット・オブジェクト253は必ず押圧位置259を通過する。
【0064】
移動ベクトルの計算の他の例では、押圧力の変化に対応した速度ベクトルを計算する。具体的には、押圧力の時間微分値に移動速度を対応させる。この場合は、画面移動操作をしている間は全体画面の基準位置186の座標が、増圧すればアプリケーション画面155bが右下方向に移動し、押圧力が変化しないときは移動が停止し、減圧すれば戻る方向に移動するように変化する。そして移動速度を、押圧力の時間微分値に比例させることができる。
【0065】
ブロック413で座標変換部303は、全体画面の基準位置186の座標を一定の時間ごとに継続して画像データ生成部301に送る。画像データ生成部313は、基準位置186の座標を受け取るたびに、基準位置186が指定された座標に一致するように画像データを更新し、画面の一貫性を保ちながら全体画面を移動した位置に表示する。全体画面の移動に伴ってアプリケーション画面155bはタッチ・スクリーン101の右下方向に移動した位置に表示される。
【0066】
結果としてタッチ・スクリーン101が左端部と上端部にブランク画面261を表示し、アプリケーション画面155bの右下端部に表示欠損を生じさせながら、ターゲット・オブジェクト253が押圧位置259に近付いていく。ブロック415では当初の押圧位置259が適切でなかったために、移動方向を修正するためにユーザが押圧位置259を変更する場合がある。押圧しながら押圧位置を変更したときはブロック409に戻る。入力処理部307は押圧位置が変更された後の指の座標データと圧力データを移動方向判定部311に送る。移動方向判定部311は、ブロック409で仮想移動直線257および移動直線258を再計算する。
【0067】
ブロック417では、ターゲット・オブジェクト253が押圧位置259に到達したと目視で判断したユーザは、指を急激にタッチ・スクリーン101から離す。指を急激に離すのは、画面移動操作を開始してから指を緩慢に離したときは、入力を確定しないで位置ベクトルまたは速度ベクトルを再計算して全体画面を標準位置に戻すことができるようにするためである。したがって、入力を確定する操作は、急激な指のリリースに限定する必要はない。入力処理部307は、急激な圧力の変化を検出すると、画面移動操作による入力が行われたと判断して押圧位置259の座標を座標変換部303に送る。
【0068】
ブロック421で座標変換部303は、画面移動操作を開始してから入力が確定するまでの、全体画面の基準位置186の移動量および移動方向を計算する。座標変換部303は、
図4(C)に示す押圧位置259の座標を、
図4(B)の標準位置に表示されたアプリケーション画面155bにおけるターゲット・ファイル253の座標に変換してアプリケーション処理部309に送る。アプリケーション処理部309は、アプリケーション画面155bが常に標準位置に表示されていると認識しており、ターゲット・オブジェクト253に入力操作が行われたことに対応する処理をする。座標変換部303は、ターゲット・オブジェクト253の座標を送ると、ブロック423で画像データ生成部301に全体画面の基準位置186の座標をタッチ・スクリーン101の座標(0,0)に一致させて表示するように要求して次の入力を待つ。
【0069】
上記の手順において、ブロック401で内側境界203も定義したときは、操作困難領域207に表示されたターゲット・オブジェクトに対して入力するために、内側境界203の近辺を押下すると、移動方向判定部311が移動方向を計算してアプリケーション画面155bを左上方向に移動させる。ブロック423では一つのターゲット・オブジェクトに対する入力操作が確定すると、全体画面の表示位置を標準位置に戻している。この方法は、つぎのターゲット・オブジェクトが標準位置で快適操作領域に表示されているような場合には都合がよい。
【0070】
ここで、1回の画面移動操作でターゲット・オブジェクト253、254がともに快適操作領域205に表示されると仮定する。このときターゲット・オブジェクト253につづいてターゲット・オブジェクト254に対してアクセスするときには、全体画面を標準位置に戻さないで連続して入力できると都合がよい。この場合に座標変換部303は、ターゲット・オブジェクト253に対する入力が確定したときに全体画面の標準位置への復帰を停止して、移動後のアプリケーション画面155bに対して連続してタッチ・パネル操作をすることができる。
【0071】
このときの操作は、一例として、座標変換部303は全体画面が所定の位置まで移動したときに急激に指を離したイベントを受け取ると全体画面の表示位置をそのときの座標に固定する。停止したターゲット・オブジェクト253、254に対して順番にタップすると入力処理部は座標データをアプリケーション処理部309に送る。さらに押圧を再開すると、移動方向判定部311が新たな仮想移動直線257を計算して、座標変換部303が再び全体画面を移動させ、急激に指を離したイベントを受け取ると再び全体画面の移動が停止する。押圧操作をしている間に緩やかに指を離すイベントを受け取ると座標変換部303は全体画面の表示位置が標準位置に復帰する。
【0072】
なお、画面移動操作は、ウィンドウ形式で表示されるアプリケーション画面にも適用することができる。
図7には、ブラウジング・アプリケーション157のアプリケーション画面157bがウィンドウ形式で表示されているときに、画面移動操作をしたときの様子を示している。ウィンドウ形式で表示されるアプリケーション画面に対しては、フォアグラウンドに表示されているアプリケーション画面が画面移動操作の対象となり、バックグラウンドに表示されている画面およびホーム画面181は移動しない。画面移動操作によりアプリケーション画面157bはクライアント領域184の範囲で移動して表示欠損が発生する。
【0073】
アプリケーション画面157bでは、ハイパーリンクが埋め込まれたすべての文字、画像、およびアイコンなどをターゲット・オブジェクトにして画面移動操作で入力することができる。このとき、次のターゲット・オブジェクトに入力するときは、画面移動操作を開始する前の位置までアプリケーション画面157bを一旦戻してもよいし、停止させてからタップしてつぎのターゲット・オブジェクトに連続して入力するようにしてもよい。
【0074】
入力システム300は、ディスプレイ103の表面に対する押圧操作とタッチ・パネル操作で画面移動操作を行うことができるため、安定した保持を維持しながら簡単に片手保持操作をすることができる。ただし、本発明は、圧力センサを使用しないでも実現することができる。たとえば、タッチ・スクリーン101を指が所定の押圧力で押下したときに、タッチ・パネル105が検出した座標から触れている指の面積を計算して画面移動操作をするイベントを生成することができる。
【0075】
あるいは、タッチ・パネル操作に特別なジェスチャを定義して、入力システム300を画面移動操作モードに移行させてから画面移動操作を実現することもできる。たとえば入力システム300が画面移動操作モードに移行している間は、スワイプするとアプリケーション画面が移動し、リリースするとその位置で画面の表示位置が固定されるように移動方向判定部311と座標変換部303を構成する。スワイプにより、ブランク画面とアプリケーション画面の表示欠損が発生するが、ユーザは都合のよい位置まで全体画面またはウィンドウ画面を移動させてからタッチ・パネル操作で入力することができる。
【0076】
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。