説明

タッチスクリーン型ユーザ・インターフェース上への仮想入力装置の配置

【課題】タッチスクリーン型ユーザ・インターフェース上への仮想入力装置の配置を提供する。
【解決手段】コンピュータのタッチスクリーン上に表示が生成される。表示は、コンピュータ上で実行されているアプリケーションと関連したアプリケーション表示と、ユーザが、タッチスクリーンを介してコンピュータ上で実行されているアプリケーションに入力を与えるための仮想入力装置表示とを含む。仮想入力装置開始イベントに応答して、仮想入力装置表示の初期特性が判断される。アプリケーション表示の特性及び仮想入力装置表示の特性に基づいて、アプリケーション表示及び仮想入力装置表示を含む複合表示画像の初期特性が判断される。タッチスクリーン上に複合画像が表示させられる。

【発明の詳細な説明】
【技術分野】
【0001】
本特許出願は、タッチスクリーン型ユーザ・インターフェースに関し、特に、タッチスクリーン型ユーザ・インターフェース上への、仮想キーボード又は他の仮想入力装置等の仮想入力装置の配置に関する。
(関連出願の相互参照)
本出願は、合衆国法典第35巻第120条の下の優先権が主張され、その全体が引用によりここに組み入れられる、先行出願第10/903,964号の部分継続出願である、2005年9月16日に出願された米国特許出願第11/228,758号に基づく優先権を主張するものである。本出願はまた、次の同時継続中の出願、すなわち2004年5月6日に出願された米国特許出願第10/840,862号、2004年7月30日に出願された米国特許出願第11/048,264号、2004年7月30日に出願された米国特許出願第11/038,590号、2005年9月16日に出願された米国特許出願第11/228,737号、2005年9月16日付で出願された米国特許出願番号第11/228,700号にも関連し、これらの特許の全ては、全ての目的のために全体が引用によりここに組み入れられる。
【背景技術】
【0002】
タッチスクリーンは、画面を覆うタッチ感知式透明パネルを有する又は他の方法で画面上のタッチ入力を認識することができる表示画面の種類である。一般的に、タッチスクリーン型ディスプレイは、プログラム制御下で作動する処理回路を含むコンピュータ回路と同じハウジング内に収容される。タッチスクリーンを用いてコンピュータ上で実行されているアプリケーションに入力を与えるとき、ユーザは、画面上に表示されたグラフィカル・ユーザ・インターフェース(GUI)のオブジェクトを直接指し示すことにより、(通常は、スタイラス又は指を用いて)表示画面上で選択を行う。
【0003】
タッチスクリーン上に表示されたGUIオブジェクトの集合は、仮想入力装置と考えることができる。幾つかの例においては、仮想入力装置は、仮想キーボードである。表示画面とそれほど密接に関連付けられていない従来の外部キーボードと同様に、仮想キーボードは、複数のキー(「仮想キー」)を含む。特定の仮想キー(又は、仮想キーの組み合わせ)の作動により、コンピュータ上で実行されているアプリケーションに入力として与えられる信号が生成される。
【発明の概要】
【発明が解決しようとする課題】
【0004】
外部キーボード及び他の外部入力装置は、その性質上(すなわち、外部のものであることから)、アプリケーションの表示出力をカバーするものではない。他方、仮想入力装置は、実行中のアプリケーションの出力を表示するのに用いられるものと同じ表示画面上に表示されるため、そうしたアプリケーションの表示出力をカバーすることができる。
仮想入力装置をタッチスクリーン上にインテリジェントに表示し、仮想入力装置及びタッチスクリーン・ベースのコンピュータの操作性を向上させる方法が望まれる。
【課題を解決するための手段】
【0005】
表示が、コンピュータのタッチスクリーン上に生成される。この表示は、コンピュータ上で実行されているアプリケーションと関連したアプリケーション表示と、タッチスクリーンを介してコンピュータ上で実行されているアプリケーションにユーザが入力を与えるための仮想入力装置表示とを含む。仮想入力装置開始イベントに応答して、仮想入力装置表示の初期特性が判断される。アプリケーション表示の特性及び仮想入力装置表示の特性に基づいて、アプリケーション表示及び仮想入力装置表示を含む複合表示画像の初期特性が判断される。タッチスクリーン上に、複合画像が表示させられる。
この要約は、全てを含むことを意図するものではない。他の態様は、添付の図面と併せた以下の詳細な説明、及び添付の特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0006】
【図1−1】タッチスクリーン・ベースのコンピュータ・システムのブロック図である。
【図1】1つの態様による、タッチスクリーン上に表示をもたらすコンピュータ内の処理を示す。
【図2】仮想入力装置表示を含まない例示的なタッチスクリーン表示出力を示す。
【図3】図2の表示とは実質的に変わらないアプリケーション出力表示を有する、アプリケーション表示及び仮想入力装置表示の両方を含む例示的なタッチスクリーン表示出力を示す。
【図3−1】図2の表示とは実質的に変わらないアプリケーション出力表示を有する、アプリケーション表示及び仮想入力装置表示の両方を含む例示的なタッチスクリーン表示出力を示す。
【図4】アプリケーション表示の空間アスペクトが仮想入力装置表示を適合させるように変更された例示的なタッチスクリーン表示を示す。
【図5】アプリケーション表示の空間アスペクトが仮想入力装置表示を適合させるように変更された例示的なタッチスクリーン表示を示す。
【図6】入力の表示が仮想入力装置と関連した表示の部分内に現れる、例示的なタッチスクリーン表示を示す。
【図7A】種々のスクロールされた状態の仮想入力装置表示を示す。
【図7B】種々のスクロールされた状態の仮想入力装置表示を示す。
【図7C】種々のスクロールされた状態の仮想入力装置表示を示す。
【発明を実施するための形態】
【0007】
例及び態様が、図面を参照して以下に説明される。しかしながら、これらの図面に関して本明細書に与えられた詳細な説明は、説明目的のためのものにすぎず、限定としてではないことを理解すべきである。
図1−1は、本発明の1つの実施形態による例示的なコンピュータ・システム50のブロック図である。コンピュータ・システム50は、デスクトップ、ラップトップ、タブレット、又は手持ち式コンピュータのようなパーソナル・コンピュータ・システムに対応することができる。コンピュータ・システムはまた、携帯電話、PDA、専用メディア・プレーヤ、家庭用電子機器などのコンピュータ装置に対応することもできる。
【0008】
図1−1に示される例示的なコンピュータ・システム50は、命令を実行し、コンピュータ・システム50と関連した演算を行うように構成されたプロセッサ56を含む。例えば、メモリなどから取り出された命令を用いて、プロセッサ56は、コンピュータ・システム50のコンポーネント間の、入出力データの受信及び操作を制御することができる。
プロセッサ56は、単一のチップ上、多数のチップ上、又は多数の電気部品上に実装することができる。例えば、プロセッサ56のために、専用又は内蔵プロセッサ、単機能プロセッサ、コントローラ、ASICなどを含む種々のアーキテクチャを用いることができる。
【0009】
ほとんどの場合、プロセッサ56は、オペレーティング・システムと協働してコンピュータ・コードを実行し、データを作成してこれを使用するように作動する。オペレーティング・システムは、一般的によく知られており、より詳細には説明しない。一例として、オペレーティング・システムは、Mac OS X、OS/2、DOS、Unix(登録商標)、Linux(登録商標)、Palm OSなどに対応することができる。オペレーティング・システムはまた、目的が限定されたアプライアンス型コンピュータ装置に用い得るような、特殊目的のオペレーティング・システムとすることもできる。オペレーティング・システム、他のコンピュータ・コード及びデータは、プロセッサ56に作動可能に結合されたメモリブロック58内に常駐させることができる。メモリブロック58は、一般に、コンピュータ・システム50によって用いられるコンピュータ・コード及びデータを格納するための場所を提供する。一例として、メモリブロック58は、読み出し専用メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、ハードディスク・ドライブ、及び/又はその他同種類のものを含むことができる。情報を取り外し可能な記憶媒体上に常駐させ、必要時にコンピュータ・システム50にロード又はインストールすることもできる。取り外し可能な記憶媒体は、例えば、CD−ROM、PCカード、メモリカード、フロッピィ・ディスク、磁気テープ、及びネットワーク・コンポーネントを含む。
【0010】
コンピュータ・システム50はまた、プロセッサ56に作動可能に結合されたディスプレイ装置68も含む。ディスプレイ装置68は、液晶ディスプレイ(LCD)(例えば、アクティブ・マトリクス、パッシブ・マトリクスなど)とすることができる。代替的に、ディスプレイ装置68は、単色ディスプレイ、カラー・グラフィックス・アダプタ(CGA)ディスプレイ、強化グラフィックス・アダプタ(EGA)ディスプレイ、可変グラフィックス・アレイ(VGA)ディスプレイ、超VGAディスプレイ、陰極線管(CRT)等のようなモニタとすることもできる。ディスプレイ装置はまた、プラズマ・ディスプレイ、又は電子インクで実装されるディスプレイに対応することもできる。
【0011】
ディスプレイ装置68は、一般に、コンピュータ・システムのユーザとオペレーティング・システム又はその上で実行されているアプリケーションとの間に使い勝手のよいインターフェースを提供するグラフィカル・ユーザ・インターフェース(GUI)69を表示するように構成される。一般的に言うと、GUI69は、グラフィック画像により、プログラム、ファイル、及び操作上のオプションを表す。グラフィック画像は、ウィンドウ、フィールド、ダイアログ・ボックス、メニュー、アイコン、ボタン、カーソル、スクロール・バー等を含むことができる。こうした画像は、所定のレイアウトで配置してもよく、又は、ユーザがとる特定のアクションに役立つように動的に生成してもよい。操作中、ユーザは、種々のグラフィック画像を選択してそれらを作動させ、それらと関連した機能及びタスクを開始することができる。一例として、ユーザはウィンドウを開閉し、最小化し、又は最大化するボタン、或いは特定のプログラムを起動するアイコンを選択することができる。付加的に又は代替的に、GUI69は、ディスプレイ装置68上に、ユーザのために非対話型テキスト及びグラフィックスのような情報を表示することもできる。
【0012】
コンピュータ・システム50はまた、プロセッサ56に作動可能に結合された入力装置70も含む。入力装置70は、外界からコンピュータ・システム50内にデータを転送するように構成される。例えば、入力装置70を用いて、ディスプレイ68上のGUI69に対して追跡を行い、選択をなすことができる。入力装置70を用いて、コンピュータ・システム50内でコマンドを出すこともできる。入力装置70は、ユーザのタッチ(touch)により入力を受け取り、この情報をプロセッサ56に送るように構成されたタッチ感知装置を含むことができる。
【0013】
一例として、タッチ感知装置は、タッチパッド又はタッチスクリーンに対応することができる。多くの場合、タッチ感知装置は、タッチ感知面へのタッチ、並びにタッチの位置及び強さを認識する。タッチ感知手段は、タッチをプロセッサ56に報告し、プロセッサ56は、そのプログラミングに従って該タッチを解釈する。例えば、プロセッサ56は、特定のタッチに従ってタスクを開始することができる。専用プロセッサを用いてタッチを局所的に処理し、コンピュータ・システムのメインプロセッサに対する要求を減少させることができる。タッチ感知装置は、容量の感知、抵抗の感知、表面弾性波の感知、圧力の感知、光学的感知、及び/又はその他同種類のものを含む感知技術に基づくことができるが、これらに限定されない。さらに、タッチ感知手段は、シングルポイント感知又はマルチポイント感知に基づくこともできる。シングルポイント感知は、単一のタッチしか識別することができないが、マルチポイント感知は、同時になされる多数のタッチを識別することができる。
【0014】
入力装置70は、ディスプレイ68の上に又はその前に配置されたタッチスクリーンとすることができる。タッチスクリーン70は、ディスプレイ装置68と一体にしてもよく、又は別個のコンポーネントであってもよい。タッチスクリーン70は、タッチパッド、マウス等のような他の入力技術に優る幾つかの利点を有する。一例としては、タッチスクリーン70がディスプレイ68の前に配置されるので、ユーザは、GUI69を直接操作することができる。例えば、ユーザは、単に、オブジェクトの上に指を置くだけ制御することができる。タッチパッドにおいては、このような一対一の関係は存在しない。タッチパッドを用いる場合、タッチパッドは、典型的には異なる面に、ディスプレイから離れて配置される。例えば、ディスプレイは、一般に垂直方向の面に配置され、タッチパッドは、一般に水平方向の面に配置される。タッチスクリーンであることに加えて、入力装置70は、マルチポイント入力装置とすることが可能である。マルチポイント入力装置は、1つより多いオブジェクト(指)を識別できるという点で、従来のシングルポイント入力装置に優る利点を有する。シングルポイント入力装置は、単に、多数のオブジェクトを識別することができないだけである。一例として、引用によりここに組み入れられる、同時継続中の同一出願人による米国特許出願第10/840,862号において、ここで用いることが可能なマルチポイント・タッチスクリーンが示され、より詳細に説明されている。
【0015】
コンピュータ・システム50はまた、1つ又はそれ以上のI/O装置80を結合させるための能力も含む。一例として、I/O装置80は、キーボート、プリンタ、スキャナ、カメラ、スピーカ、及び/又はその他の同種類のものに対応することができる。I/O装置80は、コンピュータ・システム50と一体にしてもよく、又は別個のコンポーネント(例えば、周辺機器)としてもよい。場合によっては、I/O装置80は、有線接続(例えば、ケーブル/ポート)を通してコンピュータ・システム50に接続することもできる。他の場合には、I/O装置80は、無線接続を通してコンピュータ・システム50に接続することができる。一例として、データリンクは、PS/2、USB、IR、RF、Bluetooth(登録商標)等に対応することができる。
【0016】
ここで、タッチスクリーン・ベースのコンピュータ内での特定の処理について説明され、この処理により、アプリケーションが実行され、コンピュータのタッチスクリーン上に表示が提供される。表示処理は、アプリケーション表示に基づいた特性と、仮想入力装置に関する特性とを有する複合表示を提供することを含む。仮想入力装置表示は、ユーザが仮想入力装置と対話するために、表示された入力装置に対するタッチスクリーンへの適切なタッチ入力を受け取るための少なくとも入力部分を含む。仮想入力装置とのユーザ対話は、仮想入力装置の部分を作動させてユーザ入力を与え、アプリケーションの処理に影響を与えることを含む。仮想入力装置(すなわち、仮想入力装置を達成するためのコンピュータ上での処理)は、ユーザ対話を処理し、その処理に基づいて、対応するユーザ入力をアプリケーションに与える。
【0017】
仮想入力装置表示は、一般的には、仮想入力装置とのユーザ対話の仮想入力装置の処理と大きな相関がある。例えば、仮想入力装置が仮想キーボードである場合には、仮想入力装置表示は、典型的なQWERTYキーボードのキーのグラフィック表現を含むことができ、一方、仮想キーボードとのユーザ対話の仮想入力装置の処理は、ユーザによってどの仮想キーが作動されたかを判断し、対応する入力(例えば、文字及び/又は数字)をアプリケーションに与えることを含む。
【0018】
ここで、図1、図2、図3、及び図3−1を参照する。図1は、タッチスクリーン上に複合表示(すなわち、アプリケーション表示と仮想入力装置表示の複合体)を達成するための処理を大ざっぱに示す。図2は、仮想入力装置がタッチスクリーン上に表示されていない状態の、タッチスクリーン上のアプリケーション表示の例を示す。図3は、コンポーネントがアプリケーション表示及び仮想入力装置表示を含む、例示的な複合表示を概略的に示す。
【0019】
最初に図1を参照すると、フローチャートが、図1−1に示されるタッチスクリーン・ベースのコンピュータのようなコンピュータ上で実行されている処理ステップを示す。最初に、コンピュータ上で実行されているアプリケーション102の処理ステップが、抽象的に示される。アプリケーションは、例えば、電子メール・クライアント・プログラム、文書作成処理プログラム、又は他のアプリケーション・プログラムとすることができる。
アプリケーション102は、コンピュータ上で実行されているオペレーティング・システム・プログラム104と協働して実行される。特定的には、オペレーティング・システム104は、実行中のアプリケーション102に、コンピュータのリソースへのアクセスを提供する。オペレーティング・システム104がアクセスを提供する1つのリソースが、タッチスクリーンである。
【0020】
アプリケーション102は、オペレーティング・システム104に、アプリケーション表示の特性の表示を与える。大まかに言うと、アプリケーション表示の特性の表示は、タッチスクリーン上にアプリケーション表示を生成させるための、オペレーティング・システム104によって少なくとも部分的に使用可能なデータを含む。
【0021】
アプリケーション102により提供されたアプリケーション表示の特性は、典型的には、アプリケーションによる処理の結果に関係している。アプリケーションによって提供される表示なしに、アプリケーション表示の特性の少なくとも一部は、オペレーティング・システム104に知られることがあり、及び/又は、オペレーション・システムによって制御することができる。このようなタイプの特性は、典型的には、アプリケーション表示のウィンドウの「ウィンドウ・サイズ」及びアプリケーション表示のウィンドウの背景色のような、より一般的な表示関連のものである。
アプリケーション表示の特性が与えられた場合、オペレーティング・システム・プログラム104の表示処理106が、アプリケーション表示の特性の表示に少なくとも部分的に基づいて、タッチスクリーン上に表示される、結果として得られる表示画像の特性を決定する。
【0022】
さらに、オペレーティング・システム・プログラム104は、仮想キーボード処理108を含む。より一般的には、処理部108が、タッチスクリーン上に表示され、かつ、タッチスクリーンからのユーザ入力を受け取る、いずれかの仮想入力装置のための処理とすることができる。仮想キーボード処理108の初期特性処理110は、キーボード開始イベントに応答し、仮想キーボードの初期表示特性を判断する。仮想キーボード処理108の進行中の特性処理112は、典型的には、仮想キーボードの仮想キーの作動に基づくが、場合によっては他の条件にも基づいて、仮想キーボードの進行中の表示特性を判断する。(ここでの説明は仮想キーボードの表示特性に関するものであるが、アプリケーション入力に対するキーのマッピングのような、仮想キーボードの操作上の特性は、多くの場合、表示特性と結び付けられることを認識すべきである。)判断された仮想キーボードの表示特性は、表示処理部106に与えられる。
【0023】
アプリケーション表示の特性の表示に鑑みて、表示処理106は、仮想入力装置の示された特性に基づいて、仮想入力装置の表示を含む複合表示の特性を判断する。より具体的には、複合表示の仮想入力装置部分は、アプリケーション表示の特性に対してインテリジェントである。仮想入力装置表示の出力及びアプリケーション表示の出力の両方に対して同じタッチスクリーンが用いられるので、このことは特に有用である。特定のアプリケーションについて(すなわち、特定のアプリケーション表示の特性について)特定の方法で仮想入力装置を表示することにより、仮想入力装置を用いてアプリケーションと対話するためのタッチスクリーンの操作性が改善され得る。
上述のように、図2は、仮想入力装置の表示を有さない状態の、アプリケーション表示を示す。
【0024】
図3に示される例によると、結果として得られる複合表示は、仮想入力表示がアプリケーション表示の一部分の上にあるが、アプリケーションの全ての上にあるわけではない点を除いて、アプリケーション表示(例えば、図2に示される)は実質的に変わらない。図3−1に示される別の例によると、結果として得られる複合表示は、アプリケーション表示が「上にスライドされ」、「上にスライドされた」アプリケーション表示によって空いたタッチスクリーンの一部分に仮想入力表示が表示される点を除いて、アプリケーション表示(例えば、図2に示される)は実質的に変わらない。
【0025】
表示処理106は、アプリケーションの示された特性を考慮して、タッチスクリーン上の複合表示における仮想入力装置表示の位置を判断する。例えば、表示処理106は、アプリケーション表示(及び仮想入力装置)と関連した入力フィールドのような、アプリケーション表示の重要な部分が、仮想キーボード表示によって覆われないように、複合表示の特性を決定することができる。
【0026】
つまり、アプリケーション表示の入力フィールドは、典型的には、仮想入力装置を介してユーザが対話するアプリケーションの部分を表すことができるので、重要であると判断される。しかしながら、アプリケーション表示の他の部分が重要であると判断されることもある。例えば、仮想入力装置を介した入力によって直接作用されるアプリケーション表示の部分が重要であると判断されることもある。幾つかの例においては、アプリケーション表示の入力フィールドが存在しないことさえあり得る。
【0027】
重要であると判断されるものは、特定のアプリケーション及び/又はアプリケーション表示の関数とすることができ、或いは、一般にアプリケーション特性の関数とすることができる。場合によっては、仮想入力装置表示によって、複合表示において覆われないことを保証するように、入力フィールド以外のアプリケーション表示の部分が、相対的に重要であってもよい。相対的な重要性は、文脈に依存することができる。例えば、相対的な重要性は、アプリケーションが動作している特定のモードに依存することができる。
【0028】
幾つかの例によると、実質的に変わらないアプリケーション表示(図3及び図3−1に示されるような)ではなく、表示処理106は、アプリケーション表示についての実質的に全ての情報が複合表示内で視認可能なままであるが、仮想入力装置表示に適合させるように、複合表示内でアプリケーション表示が変更されるように、複合表示の特性を決定する。幾つかの例においては、表示処理106は、他の場合には、仮想入力装置表示により複合表示上で見えにくくなるアプリケーション表示についての情報量を最小にしながら又は排除しながら、アプリケーション表示の空間アスペクトを調整して、仮想入力装置のためのスペースを複合表示上に与えるように、複合表示の特性を決定する。
【0029】
幾つかの例においては、複合表示上で、アプリケーション表示の少なくとも一部を圧縮し、仮想入力装置表示を適合させる。図4は、複合表示上にアプリケーション表示の全ての部分が、一方向に実質的に等しく圧縮された1つの例を示す。図5は、複合表示上にアプリケーション表示の全てより少ない部分が圧縮された別の例を示す。他の例においては、例えば、アプリケーション表示のこれらの部分が仮想入力装置に対して重要である場合、複合表示上でアプリケーション表示の部分が拡大される。
【0030】
幾つかの例においては、複合表示上でアプリケーション表示のどの部分が圧縮されるのかは、アプリケーション表示の特性に基づいている。例えば、より重要性が高いと判断されたアプリケーション表示の幾つかの部分は圧縮することができず、重要性が低いと判断されたアプリケーション表示の他の部分を圧縮することが可能である。幾つかの例においては、アプリケーション表示の特定の部分を圧縮する量は、アプリケーション表示のその部分の相対的な重要性に基づいている。空間アスペクトの変化がないことを含む、複合表示における異なる量だけ、アプリケーション表示の異なる部分を圧縮する(又は拡大する)ことができる。
【0031】
更に他の例においては、仮想入力装置表示の事前設定条件及び/又は特性は動的に構成することができるので、複合表示上の仮想入力装置表示の特性は、ユーザが構成することができる。動的な構成の例として、ユーザは、仮想キーボード表示の部分にタッチし、仮想入力装置表示を複合表示の所望の部分に「ドラッグする」ことにより、複合表示内の仮想入力装置表示の位置を変えることができる。
【0032】
幾つかの例においては、ユーザが複合表示内の仮想入力装置表示の特性を変化させるとき、複合表示内のアプリケーション表示コンポーネント自体は変化しない。従って、例えば、ユーザが複合表示内の仮想入力装置表示の位置を変化させる場合には、仮想入力装置表示が移動されるに従って、アプリケーション表示の異なる部分が覆われる。他の例においては、ユーザが仮想入力装置表示の特性を変化させるに従って、表示処理106は、複合表示内のアプリケーション表示の特性を新たに判断する。例えば、表示処理106は、複合表示内の仮想入力装置表示の新しい位置に少なくとも部分的に基づいて、複合表示内のアプリケーション表示のどの部分を圧縮するかを判断することができる。
【0033】
ここで、仮想入力装置開始イベント(図1)をより詳細に説明する。特定的には、複合表示の一部として仮想入力装置を最初に表示させるために、仮想入力装置開始イベントを含むことができるイベントの種々の例が存在する。例えば、仮想入力装置開始イベントに直接対応するユーザの特定のアクションに応答して、仮想入力装置を複合表示の一部として表示することができる。1つの例によると、アプリケーションは、アプリケーション表示の一部としての入力フィールドを有し、その入力フィールドに対するユーザのジェスチャにより、仮想入力装置開始イベントをトリガさせることができる。ユーザのジェスチャは、例えば、入力フィールドの表示に対応するタッチスクリーンの部分をタップすること又はダブル・タップすることにすることができる。典型的には、オペレーティング・システム処理104は、入力フィールドに対するこうしたユーザのジェスチャを認識し、仮想入力装置開始イベントをトリガさせるための処理を含む。
【0034】
仮想入力装置開始イベントをトリガさせ得るイベントの別の例として、アプリケーション表示の一部として表示される「画面上の(on screen)」ボタンがあり、ユーザによるそのボタンの作動がオペレーティング・システム処理104によって解釈され、仮想入力装置開始イベントをトリガさせる。更に別の例として、画面上のボタンをオペレーティング・システムと関連付けることができ、より一般的には、例えば、アプリケーション表示の具体的な部分ではなく、オペレーティング・システムと関連したタッチスクリーンの「デスクトップ」部分上に表示することができる。どちらの場合も、画面上のボタンの作動により、仮想入力装置開始イベントがトリガさせられ、その結果、初期入力装置処理110が実行される。
【0035】
更に別の例として、ユーザが「タイピング」位置で指をタッチスクリーン(例えば、マルチポイント・タッチスクリーン)上に置くことによって、キーボード開始イベントをトリガすることができる。このユーザ・アクションの検知は、最初のキーボード処理110が実行され、仮想入力装置が複合表示の一部として表示されることに基づいて、仮想キーボード開始イベントをトリガすることができる。この場合、例えば、タッチスクリーン・ハードウェア及び/又は低レベルの処理と対話するオペレーティング・システム処理104は、タッチスクリーンへのユーザ入力を認識させられる。このような認識は、例えば、タッチスクリーン上でタッチされたポイントの座標の形とすることができる。ユーザが「タイピング」位置で指をタッチスクリーン上に置くことに対応するように、タッチスクリーン上でタッチされたこうしたポイントの組み合わせが判断されたとき、仮想キーボード開始イベントがトリガされる。ポイントの組み合わせが、ユーザが「タイピング」位置で指をタッチスクリーン上に置くことに対応し、これにより仮想キーボード開始イベントがトリガされることを判断するための処理は、オペレーティング・システム処理104に割り当てることができ、或いは、例えば、オペレーティング・システム処理104と共に又は協働して行なわれる処理とすることもできる。
【0036】
ここで、仮想入力装置の動作停止イベントに関して、より詳細に説明する。図1に示されるように、仮想入力装置動作停止イベントをトリガすることにより、仮想入力は、タッチスクリーン上の複合表示の一部として表示されなくなる。仮想入力装置動作停止イベントは、例えば、仮想入力装置に対して、直接、ユーザが具体的に取るアクションの結果としてトリガすることができる。このことは、例えば、仮想入力装置表示上の特定の「動作停止」キーを作動させ、仮想入力装置が複合表示の一部として表示されなくすることを含むことができる。必須ではないが、より一般的には、具体的に仮想入力装置上のキーを作動させることによる、アプリケーションとの対話が、動作停止イベントをトリガさせ得る。
【0037】
このような対話の1つの例は、仮想入力装置を介して入力を与えることが適切でないような方法で実行中のアプリケーションの表示と対話することを含む。別の例は、アプリケーションを閉じるために、アプリケーションと(必要に応じて、アプリケーション表示を介して、又は仮想キーボード表示を介して)対話することを含む。更に別の例は、ジェスチャ(キーボードを横切って手で「拭う(wiping)」といった)、又は仮想リターンキーから指を「スライドさせる」ことと組み合わせて仮想リターンキーを作動させることを含み、これにより「リターン」が作動され、次いで、仮想キーボードが終了させられる。
【0038】
更に別の例として、動作停止イベントのトリガは、特に仮想入力装置又は一般にタッチスクリーンとの特定の対話にあまり関連しないが、例えば、仮想入力装置上のキーが作動されてから特定の時間が経過することにより引き起こされることがある。つまり、特定の時間、仮想入力装置が使用されないことは、仮想キーボードがもはや使用されていないことを意味する。更に別の例においては、アプリケーションの状態が仮想入力装置の表示が必要とされない及び/又は適切でないと見なされるようになったときに、アプリケーションが動作停止イベントをトリガするなど、アプリケーション自体によって動作停止イベントをトリガすることができる。
【0039】
ここで、仮想入力装置の種々の作動モードを説明する。一例においては、作動されたキーと関連した入力(これに限定されるものではないが、典型的には、テキスト)は、アプリケーション表示が対応しているアプリケーションに直接与えてもよく、又はアプリケーションによって作動されてもよい。入力の表示は、アプリケーションと関連した入力フィールドに直接表示することさえできる。
【0040】
図6に示される他の例においては、入力の表示は、仮想入力装置602と関連するが、アプリケーション表示とは直接関連していない、表示の部分604内に現れることが可能である。次いで、入力は、自動的に又はユーザのコマンドによって、アプリケーションに転送することができる(アプリケーションによって動作されるように直接、又はアプリケーション表示と関連した入力フィールド608に)。1つの例によると、「n」個の文字の仮想入力装置602を介して、自動転送が行なわれ、ここで、「n」は、ユーザにより構成可能な設定である。別の例によると、自動転送は、「m」秒毎に又は他の時間単位ごとに行なわれ、ここで、「m」はユーザにより構成可能な設定である。
【0041】
幾つかの例において、仮想入力装置表示602は、仮想入力装置602及びアプリケーション表示の入力フィールド608と関連した視覚インジケータ606を含む。図6の例示的な表示600を参照すると、仮想入力装置表示602は、仮想入力装置表示602からアプリケーション表示の対応する入力フィールド608まで指し示す視覚インジケータの矢印606を含む。視覚インジケータ606は、ポインタに限定されない。別の例としては、視覚インジケータ606は、強調表示されたアプリケーションの入力フィールド608とすることができる。
【0042】
幾つかの例においては、仮想入力装置と関連した表示は、仮想入力装置自体より小さいウィンドウ内に表示された(ウィンドウのサイズはユーザにより構成可能である)。この場合、ユーザは、仮想入力装置表示の部分を作動し、仮想入力装置表示の異なる部分にスクロールする(よって、これにアクセスする)ことができる。図7A、図7B、及び図7Cは、スクロールされた種々の状態における仮想入力装置表示を示す。仮想入力装置の表示されていない部分にアクセスするために、スクロールは、二次元より大きい次元(例えば、仮想立方体、又は三次元より大きい次元の仮想形状)にすることさえ可能である。
【0043】
本発明の多くの特徴及び利点は、記述された説明から明らかであり、よって、添付の特許請求の範囲により、本発明のこうした特徴及び利点の全てを網羅するように意図される。さらに、当業者であれば、多くの修正及び変更を思い付くので、本発明は、図示され説明されたような厳密な構成及び作働に限定すべきはない。従って、全ての適切な修正及び均等物は、本発明の範囲内にあるものとして用いることができる。

【特許請求の範囲】
【請求項1】
コンピュータのタッチスクリーン上に、前記コンピュータ上で実行されているアプリケーションと関連したアプリケーション表示と、ユーザが、前記タッチスクリーンを介して該コンピュータ上で実行されている前記アプリケーションに入力を与えるための仮想入力装置表示とを含む表示を生成する、コンピュータにより実施される方法であって、前記方法は、
仮想入力装置開始イベントに応答して、前記仮想入力装置表示の初期特性を判断し、
前記アプリケーション表示の特性及び前記仮想入力装置表示の特性に基づいて、該アプリケーション表示及び該仮想入力装置表示を含む複合表示画像の初期特性を判断し、
前記タッチスクリーン上に前記複合表示を表示させる、
ステップを含むことを特徴とする方法。
【請求項2】
前記仮想入力装置開始イベントの前に、前記仮想入力装置表示がない状態で、前記タッチスクリーン上に前記アプリケーション表示を表示するステップをさらに含むことを特徴とする、請求項1に記載の方法。
【請求項3】
前記複合表示の前記初期特性を判断するステップは、前記仮想入力装置表示と重ね合わせるように、前記アプリケーション表示の複数の部分の特定の部分を判断するステップを含むことを特徴とする、請求項1に記載の方法。
【請求項4】
前記複数の部分の前記特定の部分を判断するステップは、該複数の部分の重要性の表示を処理するステップを含むことを特徴とする、請求項3に記載の方法。
【請求項5】
前記複合表示の初期特性を判断するステップは、前記複合表示上に前記仮想入力装置表示を適合させるように、前記アプリケーション表示の変更を判断するステップを含むことを特徴とする、請求項1に記載の方法。
【請求項6】
前記アプリケーション表示の変更を判断するステップは、前記アプリケーション表示の空間アスペクトの変更を判断するステップを含むことを特徴とする、請求項5に記載の方法。
【請求項7】
前記アプリケーション表示の空間アスペクトの変更を判断するステップは、圧縮すべき該アプリケーション表示の部分を判断するステップを含むことを特徴とする、請求項6に記載の方法。
【請求項8】
圧縮すべき前記アプリケーション表示の部分を判断する前記ステップは、アクティブ入力フィールドを含む、圧縮すべき該アプリケーション表示の部分を判断し、前記アクティブ入力フィールドを含む該アプリケーションの該部分を圧縮しないように判断するステップを含むことを特徴とする、請求項7に記載の方法。
【請求項9】
前記仮想入力装置開始イベントは、前記タッチスクリーンに対するユーザのジェスチャによって引き起こされることを特徴とする、請求項1に記載の方法。
【請求項10】
前記タッチスクリーンに対する前記ユーザのジェスチャは、ユーザが、所定の特性を有する位置において前記タッチスクリーンの多数のポイントにタッチすることを含むことを特徴とする、請求項9に記載の方法。
【請求項11】
所定の特性を有する位置は、入力装置上の指の特性であるように予め定められた特性を有する位置を含むことを特徴とする、請求項9に記載の方法。
【請求項12】
前記タッチスクリーンに対する前記ユーザのジェスチャは、前記タッチスクリーン上のアプリケーション表示の入力フィールドに対するユーザのジェスチャを含むことを特徴とする、請求項9に記載の方法。
【請求項13】
前記タッチスクリーンに対する前記ユーザのジェスチャは、前記タッチスクリーン上に表示された特定のユーザ・インターフェース項目に対するユーザのジェスチャを含むことを特徴とする、請求項9に記載の方法。
【請求項14】
前記特定のユーザ・インターフェース項目は、前記アプリケーション表示と関連付けられることを特徴とする、請求項13に記載の方法。
【請求項15】
前記アプリケーション表示と関連した前記ユーザ・インターフェース項目は、該アプリケーション表示と関連した入力フィールドであることを特徴とする、請求項14に記載の方法。
【請求項16】
前記ユーザのジェスチャは、前記入力フィールドと関連した前記タッチスクリーンの部分を少なくとも一度タップすることを含むことを特徴とする、請求項15に記載の方法。
【請求項17】
前記特定のユーザ・インターフェース項目は、前記コンピュータのオペレーティング・システムと関連した、前記タッチスクリーンのデスクトップ部分と関連付けられることを特徴とする、請求項13に記載の方法。
【請求項18】
仮想入力装置動作停止イベントに応答して、前記仮想入力装置表示を含む前記複合画像の表示を中止させるステップをさらに含むことを特徴とする、請求項1に記載の方法。
【請求項19】
前記仮想入力装置動作停止イベントは、前記仮想入力装置表示に対する前記ユーザの特定のジェスチャによってトリガされることを特徴とする、請求項18に記載の方法。
【請求項20】
前記仮想入力装置動作停止イベントは、前記仮想入力装置を介する入力と一致しない、前記複合表示に対する前記ユーザの特定のジェスチャによってトリガされることを特徴とする、請求項18に記載の方法。
【請求項21】
前記仮想入力装置動作停止イベントは、前記仮想入力装置を介する最後の入力から特定の時間が経過することによってトリガされることを特徴とする、請求項18に記載の方法。
【請求項22】
前記複合表示は、前記仮想入力装置表示を前記アプリケーション表示の入力フィールドと視覚的に関連付ける視覚インジケータを含むことを特徴とする、請求項1に記載の方法。
【請求項23】
前記視覚インジケータは、前記仮想入力装置表示の部分から前記アプリケーション表示の入力フィールドまでの矢印であることを特徴とする、請求項22に記載の方法。
【請求項24】
前記仮想入力装置表示の前記部分は、前記仮想入力装置の入力表示であることを特徴とする、請求項23に記載の方法。
【請求項25】
前記視覚インジケータは、前記アプリケーション表示の前記入力フィールドの差別化された表示であることを特徴とする、請求項22に記載の方法。
【請求項26】
前記仮想入力装置表示は入力バッファ表示を含むことを特徴とする、請求項1に記載の方法。
【請求項27】
前記仮想入力装置表示の前記入力バッファ表示から前記アプリケーション表示の入力フィールドまで入力を転送するステップをさらに含むことを特徴とする、請求項26に記載の方法。
【請求項28】
コンピュータのタッチスクリーン上に、前記コンピュータ上で実行されているアプリケーションと関連したアプリケーション表示と、ユーザが、前記タッチスクリーンを介して該コンピュータ上で実行されている前記アプリケーションに入力を与えるための仮想入力装置表示とを含む表示を生成するためのステップを含むコンピュータ・プログラムが上に実体的に具体化されたコンピュータ可読媒体であって、前記コンピュータ・プログラムのステップは、
仮想入力装置開始イベントに応答して、前記仮想入力装置表示の初期特性を判断し、
前記アプリケーション表示の特性及び前記仮想入力装置表示の特性に基づいて、該アプリケーション表示及び該仮想入力装置表示を含む複合表示画像の初期特性を判断し、
前記タッチスクリーン上に前記複合表示を表示させる、
ステップを含むことを特徴とする、コンピュータ可読媒体。
【請求項29】
前記コンピュータ・プログラムの前記ステップは、
前記仮想入力装置開始イベントの前に、前記仮想入力装置表示がない状態で、前記タッチスクリーン上に前記アプリケーション表示を表示するステップをさらに含むことを特徴とする、請求項28に記載のコンピュータ可読媒体。
【請求項30】
前記複合表示の前記初期特性を判断するステップは、前記仮想入力装置表示と重ね合わせるように、前記アプリケーション表示の複数の部分の特定の部分を判断するステップを含むことを特徴とする、請求項29に記載のコンピュータ可読媒体。
【請求項31】
前記複数の部分の前記特定の部分を判断するステップは、該複数の部分の重要性の表示を処理するステップを含むことを特徴とする、請求項30に記載のコンピュータ可読媒体。
【請求項32】
前記複合表示の初期特性を判断するステップは、前記複合表示上に前記仮想入力装置表示を適合させるように、前記アプリケーション表示の変更を判断するステップを含むことを特徴とする、請求項28に記載のコンピュータ可読媒体。
【請求項33】
前記アプリケーション表示の変更を判断するステップは、前記アプリケーション表示の空間アスペクトの変更を判断するステップを含むことを特徴とする、請求項32に記載のコンピュータ可読媒体。
【請求項34】
前記アプリケーション表示の空間アスペクトの変更を判断するステップは、圧縮すべき該アプリケーション表示の部分を判断するステップを含むことを特徴とする、請求項33に記載のコンピュータ可読媒体。
【請求項35】
圧縮すべき前記アプリケーション表示の部分を判断する前記ステップは、アクティブ入力フィールドを含む、圧縮すべき該アプリケーション表示の部分を判断し、前記アクティブ入力フィールドを含む該アプリケーションの該部分を圧縮しないように判断するステップを含むことを特徴とする、請求項34に記載のコンピュータ可読媒体。
【請求項36】
前記仮想入力装置開始イベントは、前記タッチスクリーンに対するユーザのジェスチャによって引き起こされることを特徴とする、請求項28に記載のコンピュータ可読媒体。
【請求項37】
前記タッチスクリーンに対する前記ユーザのジェスチャは、ユーザが、所定の特性を有する位置において前記タッチスクリーンの多数のポイントにタッチすることを含むことを特徴とする、請求項36に記載のコンピュータ可読媒体。
【請求項38】
所定の特性を有する位置は、入力装置上の指の特性であるように予め定められた特性を有する位置を含むことを特徴とする、請求項36に記載のコンピュータ可読媒体。
【請求項39】
前記タッチスクリーンに対する前記ユーザのジェスチャは、前記タッチスクリーン上のアプリケーション表示の入力フィールドに対するユーザのジェスチャを含むことを特徴とする、請求項36に記載のコンピュータ可読媒体。
【請求項40】
前記タッチスクリーンに対する前記ユーザのジェスチャは、前記タッチスクリーン上に表示された特定のユーザ・インターフェース項目に対するユーザのジェスチャを含むことを特徴とする、請求項36に記載のコンピュータ可読媒体。
【請求項41】
前記特定のユーザ・インターフェース項目は、前記アプリケーション表示と関連付けられることを特徴とする、請求項40に記載のコンピュータ可読媒体。
【請求項42】
前記アプリケーション表示と関連した前記ユーザ・インターフェース項目は、該アプリケーション表示と関連した入力フィールドであることを特徴とする、請求項41に記載のコンピュータ可読媒体。
【請求項43】
前記ユーザのジェスチャは、前記入力フィールドと関連した前記タッチスクリーンの部分を少なくとも一度タップすることを含むことを特徴とする、請求項42に記載のコンピュータ可読媒体。
【請求項44】
前記特定のユーザ・インターフェース項目は、前記コンピュータのオペレーティング・システムと関連した、前記タッチスクリーンのデスクトップ部分と関連付けられることを特徴とする、請求項43に記載のコンピュータ可読媒体。
【請求項45】
前記コンピュータ・プログラムは、
仮想入力装置動作停止イベントに応答して、前記仮想入力装置表示を含む前記複合画像の表示を中止させるステップをさらに含むことを特徴とする、請求項28に記載のコンピュータ可読媒体。
【請求項46】
前記仮想入力装置動作停止イベントは、前記仮想入力装置表示に対する前記ユーザの特定のジェスチャによってトリガされることを特徴とする、請求項35に記載のコンピュータ可読媒体。
【請求項47】
前記仮想入力装置動作停止イベントは、前記仮想入力装置を介する入力と一致しない、前記複合表示に対する前記ユーザの特定のジェスチャによってトリガされることを特徴とする、請求項35に記載のコンピュータ可読媒体。
【請求項48】
前記仮想入力装置動作停止イベントは、前記仮想入力装置を介する最後の入力から特定の時間が経過することによってトリガされることを特徴とする、請求項35に記載のコンピュータ可読媒体。
【請求項49】
前記複合表示は、前記仮想入力装置表示を前記アプリケーション表示の入力フィールドと視覚的に関連付ける視覚インジケータを含むことを特徴とする、請求項28に記載のコンピュータ可読媒体。
【請求項50】
前記視覚インジケータは、前記仮想入力装置表示の部分から前記アプリケーション表示の入力フィールドまでの矢印であることを特徴とする、請求項49に記載のコンピュータ可読媒体。
【請求項51】
前記仮想入力装置表示の前記部分は、前記仮想入力装置の入力表示であることを特徴とする、請求項50に記載のコンピュータ可読媒体。
【請求項52】
前記視覚インジケータは、前記アプリケーション表示の前記入力フィールドの差別化された表示であることを特徴とする、請求項49に記載のコンピュータ可読媒体。
【請求項53】
前記仮想入力装置表示は入力バッファ表示を含むことを特徴とする、請求項28に記載のコンピュータ可読媒体。
【請求項54】
前記コンピュータ・プログラムは、
前記仮想入力装置表示の前記入力バッファ表示から前記アプリケーション表示の入力フィールドまで入力を転送するステップをさらに含む、請求項53に記載のコンピュータ可読媒体。

【図1−1】
image rotate

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図3−1】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7A】
image rotate

【図7B】
image rotate

【図7C】
image rotate


【公開番号】特開2012−208962(P2012−208962A)
【公開日】平成24年10月25日(2012.10.25)
【国際特許分類】
【出願番号】特願2012−169514(P2012−169514)
【出願日】平成24年7月31日(2012.7.31)
【分割の表示】特願2008−531106(P2008−531106)の分割
【原出願日】平成18年8月11日(2006.8.11)
【出願人】(503260918)アップル インコーポレイテッド (568)
【Fターム(参考)】