特許第6037973号(P6037973)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

特許6037973ユーザ・インターフェースのための入力モード間の自動切り替え
<>
  • 特許6037973-ユーザ・インターフェースのための入力モード間の自動切り替え 図000002
  • 特許6037973-ユーザ・インターフェースのための入力モード間の自動切り替え 図000003
  • 特許6037973-ユーザ・インターフェースのための入力モード間の自動切り替え 図000004
  • 特許6037973-ユーザ・インターフェースのための入力モード間の自動切り替え 図000005
  • 特許6037973-ユーザ・インターフェースのための入力モード間の自動切り替え 図000006
  • 特許6037973-ユーザ・インターフェースのための入力モード間の自動切り替え 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6037973
(24)【登録日】2016年11月11日
(45)【発行日】2016年12月7日
(54)【発明の名称】ユーザ・インターフェースのための入力モード間の自動切り替え
(51)【国際特許分類】
   G06F 3/0487 20130101AFI20161128BHJP
   G06F 3/0484 20130101ALI20161128BHJP
   G06F 3/0488 20130101ALI20161128BHJP
【FI】
   G06F3/0487
   G06F3/0484 120
   G06F3/0488
【請求項の数】18
【外国語出願】
【全頁数】19
(21)【出願番号】特願2013-170111(P2013-170111)
(22)【出願日】2013年8月20日
(65)【公開番号】特開2015-1977(P2015-1977A)
(43)【公開日】2015年1月5日
【審査請求日】2016年8月12日
(31)【優先権主張番号】13/917,578
(32)【優先日】2013年6月13日
(33)【優先権主張国】US
【新規性喪失の例外の表示】特許法第30条第2項適用 http://smus.com/touch−laptop−experiments/(掲載日 2013年2月21日)
【早期審査対象出願】
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル インコーポレイテッド
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】スマス,ボリス
【審査官】 西田 聡子
(56)【参考文献】
【文献】 特開平8−101759(JP,A)
【文献】 特開2013−98826(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/0487
G06F 3/0484
G06F 3/0488
(57)【特許請求の範囲】
【請求項1】
ユーザ・インターフェースのための入力モード間で自動的な切り替えを行う、コンピュータによって実行される方法であって、
第1の入力タイプのための第1の入力モードでユーザ・インターフェースを画面に表示することと、
センサを使用して、前記画面からユーザまでの距離を検出することと、
前記画面上にてタッチ入力を受け取る前に、前記画面からの検出された前記距離がしきい値距離内にあるということを判断することと、
前記判断に応答して、かつ、前記画面上にて前記タッチ入力を受け取る前に、前記第1の入力タイプのための前記第1の入力モードから第2の入力タイプのための第2の入力モードに前記ユーザ・インターフェースを切り替えることとを含み、前記第2の入力モードはタッチ入力のためのタッチ・モードに対応する、方法。
【請求項2】
前記第1の入力モードで前記ユーザ・インターフェースを表示することが、前記第1の入力タイプのユーザ入力の受信に応答して行われる、請求項1記載の方法。
【請求項3】
記第1の入力タイプの前記ユーザ入力を受信したときにタイマを起動することと、
前記起動されたタイマに基づいて、前記第1の入力タイプの前記ユーザ入力の受信から事前設定された期間が経過したと判断することとをさらに含み、
前記切り替えが、前記事前設定された期間が経過したという判断に応答してさらに実行される、請求項2記載の方法。
【請求項4】
前記ユーザ・インターフェースがデバイスの画面上に表示され、前記方法はさらに、
外部デバイスが前記デバイスに接続されたと判断することを含み、
前記切り替えが、前記外部デバイスが前記デバイスに接続されたと判断したことに応答してさらに実行される、請求項1記載の方法。
【請求項5】
前記外部デバイスがキーボードまたはマウスのうちの少なくとも一方である、請求項4に記載の方法。
【請求項6】
前記第1の入力タイプがマウス入力に対応する、請求項1に記載の方法。
【請求項7】
前記第1の入力モードはマウス入力のためのマウス・モードに対応する、請求項6に記載の方法。
【請求項8】
前記マウス・モードで前記ユーザ・インターフェースを表示することが前記ユーザ・インターフェースでホバー・コンテンツを提供し、前記タッチ・モードで前記ユーザ・インターフェースを表示することが前記ユーザ・インターフェースでホバー・コンテンツを提供しない、請求項7に記載の方法。
【請求項9】
前記マウス・モードで前記ユーザ・インターフェースを表示することが前記タッチ・モードと比較してより小さいポインタ・ターゲットを前記ユーザ・インターフェースで提供し、前記タッチ・モードで前記ユーザ・インターフェースを表示することが前記マウス・モードと比較してより大きいポインタ・ターゲットを前記ユーザ・インターフェースで提供する、請求項7に記載の方法。
【請求項10】
前記センサはカメラである、請求項1に記載の方法。
【請求項11】
ユーザ・インターフェースのための入力モード間で自動的な変更を行うシステムであって、
1つまたは複数のプロセッサと、
前記プロセッサによって実行されたときに、
第1の入力タイプのための第1の入力モードでユーザ・インターフェースを画面に表示することと、
センサを使用して、前記画面からユーザまでの距離を検出することと、
前記画面上にてタッチ入力を受け取る前に、前記画面からの検出された前記距離がしきい値距離内にあるということを判断することと、
前記判断に応答して、かつ、前記画面上にて前記タッチ入力を受け取る前に、前記第1の入力タイプのための前記第1の入力モードから第2の入力タイプのための第2の入力モードに前記ユーザ・インターフェースを切り替えることとを含み、
前記第2の入力モードはタッチ入力のためのタッチ・モードに対応する、
処理を前記プロセッサに実行させる命令が保管されている機械可読媒体とを含む、システム。
【請求項12】
前記第1の入力モードで前記ユーザ・インターフェースを表示することが、前記第1の入力タイプのユーザ入力の受信に応答して行われる、請求項11記載のシステム。
【請求項13】
ユーザ・インターフェースのための入力モード間で自動的な切り替えを行う、コンピュータによって実行される方法であって、
第1の入力タイプのための第1の入力モードでユーザ・インターフェースを画面に表示することと、
センサを使用して、前記画面からユーザまでの距離を検出することと、
前記画面上にてタッチ入力を受け取る前に、前記画面からの検出された前記距離がしきい値距離内にあるということを判断することと、
前記判断に応答して、かつ、前記画面上にて前記タッチ入力を受け取る前に、前記第1の入力タイプのための前記第1の入力モードから第2の入力タイプのための第2の入力モードに前記ユーザ・インターフェースを切り替えることとを含み、
前記第2の入力モードはタッチ入力のためのタッチ・モードに対応し、
前記第1の入力モードおよび前記第2の入力モードのそれぞれが1つまたは複数のグラフィカル・コンポーネントを含み、
前記切り替えることが、前記1つまたは複数のグラフィカル・コンポーネントのサイズを変更することを含む、方法。
【請求項14】
前記サイズ変更が、前記1つまたは複数のグラフィカル・コンポーネントの表示サイズをサイズ変更することを含む、請求項13記載の方法。
【請求項15】
前記サイズ変更が、前記サイズ変更された表示サイズに対応するように前記1つまたは複数のグラフィカル・コンポーネントの反応領域をサイズ変更することをさらに含む、請求項14記載の方法。
【請求項16】
前記サイズ変更が、前記表示サイズをサイズ変更せずに、前記グラフィカル・コンポーネントの反応領域をサイズ変更することを含む、請求項13記載の方法。
【請求項17】
前記第1の入力タイプがマウス入力に対応する、請求項13記載の方法。
【請求項18】
前記第1の入力モードはマウス入力のためのマウス・モードに対応する、請求項17に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、ユーザ・インターフェースに関し、特に、ユーザ・インターフェースのための入力モード間で自動的な切り替えを行うことに関する。
【背景技術】
【0002】
最近のコンピューティング・デバイスは、その入力プロファイルが複雑になる可能性がある。たとえば、スマートフォンはタッチスクリーンと物理的キーボードの両方を有することができる。他の例では、ラップトップは標準的なキーボード/トラックパッド入力ならびに外部マウスを有することができ、場合によってはタッチスクリーンさえ有することができる。加えて、これらのデバイスは、より専門的なアプリケーションのためにカメラとマイクロホンがそのデバイスに一体化されている可能性がある。ユーザは自分のタスクを遂行するためにこれらの入力様式すべての中で選択することができる。また、ユーザは、キーボードに対して取り付けおよび取り外し可能なタブレットや、ラップトップに差し込み可能なマウスの場合のように、自分のデバイスの構成を変更することもできる。
【発明の概要】
【課題を解決するための手段】
【0003】
開示された主題は、ユーザ・インターフェースのための入力モード間で自動的に切り替えることに関する。この方法は、第1の入力タイプのための第1の入力モードでユーザ・インターフェースを表示することと、所定のイベントが発生したと判断することであって、所定のイベントが第1の入力タイプまたは第2の入力タイプ以外のタイプのものであることを含む。この方法は、その判断に応答して、第1の入力タイプのための第1の入力モードから第2の入力タイプのための第2の入力モードにユーザ・インターフェースを切り替えることをさらに含む。
【0004】
開示された主題はさらに、ユーザ・インターフェースのための入力モード間で自動的な変更を行うシステムに関する。このシステムは、1つまたは複数のプロセッサと、プロセッサによって実行されたときに、第1の入力タイプのための第1の入力モードでユーザ・インターフェースを表示することを含む動作をプロセッサに実行させる命令がそこに保管されている機械可読媒体とを含む。この動作は、所定のイベントが発生したと判断することであって、所定のイベントが第1の入力タイプまたは第2の入力タイプ以外のタイプのものであることと、その判断に応答して、第1の入力タイプのための第1の入力モードから第2の入力タイプのための第2の入力モードにユーザ・インターフェースを切り替えることであって、第1の入力タイプがマウス入力またはタッチ入力のうちの一方に対応し、第2の入力タイプがマウス入力またはタッチ入力のうちのもう一方に対応することをさらに含む。
【0005】
開示された主題は、ユーザ・インターフェースのための入力モード間で自動的な切り替えを行う、コンピュータによって実行される方法にも関する。この方法は、第1の入力タイプのための第1の入力モードでユーザ・インターフェースを表示することと、所定のイベントが発生したと判断することを含む。この方法は、その判断に応答して、第1の入力タイプのための第1の入力モードから第2の入力タイプのための第2の入力モードにユーザ・インターフェースを切り替えることであって、第1の入力モードおよび第2の入力モードのそれぞれが1つまたは複数のグラフィカル・コンポーネントを含み、切り替えることが1つまたは複数のグラフィカル・コンポーネントのサイズを変更することを含むことをさらに含む。
【0006】
主題技術の様々な構成が例示として示され記載されている以下の詳細な説明から主題技術のその他の構成が当業者にとって容易に明らかになることは言うまでもない。認識されるように、主題技術はその他の種々の構成が可能であり、そのいくつかの詳細は、いずれも主題技術の範囲を逸脱せずに、様々なその他の点で変更可能である。したがって、図面および詳細な説明は、限定的なものとしてではなく、本質的に例示的なものと見なすべきである。
【0007】
主題技術の特徴は特許請求の範囲に明記されている。しかし、説明のために、主題技術のいくつかの実施形態が以下の図面に明記されている。
【図面の簡単な説明】
【0008】
図1】ユーザ・インターフェースのための入力モード間で自動的な切り替えを行うことを提供できるネットワーク環境の一例を示す図である。
図2】マウス入力のためのマウス・モードで表示されたユーザ・インターフェースの一例を示す図である。
図3】タッチ入力のためのタッチ・モードで表示されたユーザ・インターフェースの一例を示す図である。
図4】ユーザ・インターフェースのための入力モード間で自動的な切り替えを行うことを提供するプロセスの一例を示す図である。
図5】ユーザ・インターフェースのための入力モード間で自動的な切り替えを行うことを提供するプロセスの他の例を示す図である。
図6】主題技術のいくつかの実現例を実現可能な電子システムの一例を概念的に示す図である。
【発明を実施するための形態】
【0009】
以下に明記されている詳細な説明は、主題技術の様々な構成の説明として意図されており、主題技術を実践可能な唯一の構成を表すためのものではない。添付図面は本明細書に組み込まれ、詳細な説明の一部を構成する。詳細な説明は、主題技術の完全な理解を可能にするための特定の詳細を含む。しかし、主題技術が本明細書に明記されている特定の詳細に限定されず、このような特定の詳細なしで実践可能であることは、当業者にとって明確かつ明らかになるであろう。場合によっては、主題技術の概念を曖昧にするのを回避するために、周知の構造およびコンポーネントがブロック図形式で示されている。
【0010】
上記のように、最近のコンピューティング・デバイスは、その入力プロファイルが複雑になる可能性がある。たとえば、スマートフォンはタッチスクリーンと物理的キーボードの両方を有することができる。他の例では、ラップトップは標準的なキーボード/トラックパッド入力ならびに外部マウスを有することができ、場合によってはタッチスクリーンさえ有することができる。加えて、これらのデバイスは、より専門的なアプリケーションのためにカメラとマイクロホンがそのデバイスに一体化されている可能性がある。ユーザは自分のタスクを遂行するためにこれらの入力様式すべての中で選択することができる。また、ユーザは、キーボードに対して取り付けおよび取り外し可能なタブレットや、ラップトップに差し込み可能なマウスの場合のように、自分のデバイスの構成を変更することもできる。
【0011】
このようなデバイスの問題の1つは、ユーザが入力モード間を移行するときに、モードに著しい違いがあっても、ユーザ・インターフェースは通常変化しないことである。たとえば、マウスからタッチに移行すると、ユーザは一般に画面をより近くに保持し、より粗い入力を行うことになる。
【0012】
この点に関しては、デバイスはタッチ・モードまたはマウス・モードでユーザ・インターフェースを表示することができる。タッチ・モードでは、ホバー状態(hover state)が存在せず、より大きいインターフェース・エレメント(たとえば、ボタンまたはその他のターゲット)が必要となる可能性がある。これは、タッチでは通常ユーザが画面により近づく必要があるからである。これに対して、マウス・モードでは、インターフェース・エレメントをより小さくすることができ(たとえば、ポインタがより精細であるため)、ホバー機能(hover functionality)を提供することができる。主題技術は、ユーザ・インターフェースをユーザの現在の入力モードに適合させることを提供する。
【0013】
この主題開示は、ユーザ・インターフェースのための入力モード間で自動的な切り替えを行うことを提供する。ユーザ・インターフェースは第1の入力タイプのための第1の入力モードで表示される。所定のイベントが発生したという判断が行われ、所定のイベントは第1の入力タイプまたは第2の入力タイプ以外のタイプのものである。たとえば、所定のイベントは、所定の期間の間のユーザ非活動、ユーザ(たとえば、ユーザの手または指)がタッチスクリーンから所定の距離内にあること、または外部デバイスの接続であることができるが、これらに限定されない。その判断に応答して、ユーザ・インターフェースは第1の入力タイプのための第1の入力モードから第2の入力タイプのための第2の入力モードに切り替えられる。
【0014】
図1は、ユーザ・インターフェースのための入力モード間で自動的な切り替えを行うことを提供できるネットワーク環境の一例を示している。ネットワーク環境100は、ネットワーク108によってサーバ110に通信可能に接続された、いくつかの電子デバイス102〜106を含む。電子デバイス102〜106のそれぞれはタッチスクリーンを含むことができ、そのタッチスクリーンはデバイス自体に組み込むことができるかまたはデバイスに(たとえば、周辺装置として)電子的に接続することができる。サーバ110は処理装置112およびデータ・ストア114を含む。処理装置112は、たとえば、電子デバイス102〜106のいずれかにコンテンツ(たとえば、ウェブサイトまたはその他の表示コンテンツ)を提供するために、データ・ストア114に保管されたコンピュータ命令を実行する。
【0015】
電子デバイス102〜106は、モバイル・デバイス(たとえば、スマートフォン、タブレット・コンピュータ、PDA、およびラップトップ・コンピュータ)、ポータブル・メディア・プレーヤ、デスクトップ・コンピュータ、またはその他の適切なコンピューティング・デバイスにすることができる。図1の例では、電子デバイス102はスマートフォンとして描写され、電子デバイス104はデスクトップ・コンピュータとして描写され、電子デバイス106はタブレット・コンピュータとして描写されている。
【0016】
いくつかの態様の例では、電子デバイス102〜106のいずれも、アプリケーション・データ(たとえば、ウェブ・ページ・データ)と、当該アプリケーション・データに対応する、電子デバイス(たとえば、102〜106)のタッチスクリーン上に表示すべきコンテンツ(たとえば、画像、ビデオ、テキスト、リンク)を入手することができる。いくつかの態様の例では、コンテンツは、サーバ110からネットワーク108を介して電子デバイス102〜106に伝送することができる。その他の態様の例では、コンテンツは、それぞれの電子デバイス102〜106のストレージ・コンポーネント(たとえば、ハードディスク、RAM、ROMなど)に保管することができる。
【0017】
電子デバイス102〜106のいずれも、第1の入力タイプのための第1の入力モードでユーザ・インターフェースを表示することができる。電子デバイス(たとえば、102〜106のいずれか)は所定のイベントが発生したと判断し、所定のイベントは第1の入力タイプまたは第2の入力タイプ以外のタイプのものである。
【0018】
その判断に応答して、電子デバイスは、第1の入力タイプのための第1の入力モードから第2の入力タイプのための第2の入力モードにユーザ・インターフェースを切り替える。たとえば、電子デバイス上で実行されるアプリケーション(たとえば、ウェブ・ブラウザ)は、入力モードに応じて、グラフィカル・コンポーネント(たとえば、ボタン、タブ)の種々のサイズを提供することができるか、あるいはホバー・コンテンツ(hover content)を使用可能/使用禁止にすることができる。グラフィカル・コンポーネントの種々のサイズは、種々の表示サイズに対応するか、または表示サイズを変更せずに種々の反応領域(activation area)のサイズに対応することができる。
【0019】
代わってまたは加えて、サーバ110は第1の入力モードと第2の入力モードとの切り替えを提供することができる。たとえば、電子デバイス(たとえば、102〜106)は、どの入力モードで動作するかを示す指示を提供することができる。受信した指示に応答して、サーバ110(たとえば、ウェブ・サーバ)は電子デバイスに種々のコンテンツを提供することができる。このようなコンテンツは、入力モードに応じて、グラフィカル・コンポーネントの種々のサイズ(たとえば、ウェブサイトのボタンの種々の表示サイズあるいは反応領域のサイズまたはその両方)あるいはホバー・コンテンツ/ホバー・コンテンツなし(no hover content)を含むことができるが、これらに限定されない。入力モードが切り替わる場合、アプリケーションは所望の入力モードを示す新しい指示を送信することができ、サーバ110はそれに応じて新しいコンテンツを提供することができる。
【0020】
サーバ110は、電子デバイスにコンテンツを提供するための、プロセッサ、メモリ、および通信機能を有する任意のシステムまたはデバイスにすることができる。いくつかの態様の例では、サーバ110はコンピュータ・サーバなどの単一コンピューティング・デバイスにすることができる。その他の実施形態では、サーバ110は1つのサーバ・コンピュータのアクションを実行するために協働して機能する2つ以上のコンピューティング・デバイスを表すことができる(たとえば、クラウド・コンピューティング)。
【0021】
ネットワーク108は、たとえば、セルラー・ネットワーク、衛星ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、広域ネットワーク(WAN)、ブロードバンド・ネットワーク(BBN)、インターネットなどのうちの任意の1つまたは複数を含むことができる。さらに、ネットワーク108は、バスネットワーク、星状ネットワーク、環状ネットワーク、網目状ネットワーク、星状バスネットワーク、木状または階層ネットワークなどを含むネットワーク・トポロジのうちの任意の1つまたは複数を含むことができるが、これらに限定されない。
【0022】
図2は、マウス入力のためのマウス・モードで表示されたユーザ・インターフェースの一例を示している。ユーザ・インターフェース200は、マウス入力により使用するために表示されたグラフィカル・コンポーネントを含む。図2の例では、マウス・ポインタ206を使用して、ユーザ・インターフェース200のグラフィカル・コンポーネントと対話することができる。
【0023】
たとえば、ユーザ・インターフェース200のグラフィカル・コンポーネントはボタン202a、202b、および202cを含む。ボタン202a、202b、および202cは、それぞれ、アプリケーション(またはアプリケーション・ウィンドウ)を、最小化、最大化または元に戻すため、および閉じるために使用される。加えて、ユーザ・インターフェース200はコンテンツ部分208と対話するためのボタン204a〜204gを含む。たとえば、ユーザ・インターフェース200がマッピング・アプリケーションに対応している場合、ボタン204a〜204gは、パン、ズーム、位置のマーキング、位置の指定、およびマップ・ビューの切り替えを含むがこれらに限定されない動作に使用することができる。
【0024】
マウス・モードでは(たとえば、ユーザ・インターフェース200の場合)、グラフィカル・コンポーネント(たとえば、ボタン202a〜202c、ボタン204a〜204g)はタッチ・モードと比較してより小さいサイズにすることができる。より小さいグラフィカル・コンポーネントは、グラフィカル・コンポーネントのためのより小さな表示サイズに対応することができる。代わって、より小さいグラフィカル・コンポーネントは、表示サイズの縮小なしに、グラフィカル・コンポーネントのためのより小さな反応領域に対応することができる。諸態様の例では、タッチ入力と比較してマウスの方がポインタ・モーションがより精細であり、正確であるので、マウス・モードでは、より小さいターゲットあるいはより小さいターゲット間隔またはその両方を使用することができる。
【0025】
より小さいグラフィカル・コンポーネントに加えて、マウス・モードはホバー・イベント(hover event)を提供することもできる。たとえば、ホバー・イベント(たとえば、マウスオーバ(mouseover)あるいはマウスアウト(mouseout)またはその両方)では、ユーザ・インターフェース(たとえば、ユーザ・インターフェース200)は、代替(ALT)コンテンツなどのホバー・コンテンツを表示することができる。代わってまたは加えて、ホバー・イベントでは、ユーザ・インターフェースは追加のインターフェース・コンポーネントを有するメニューまたはサブメニューを開くことができる。
【0026】
図3は、タッチ入力のためのタッチ・モードで表示されたユーザ・インターフェースの一例を示している。ユーザ・インターフェース300は、タッチ入力により使用するために表示されたグラフィカル・コンポーネントを含む。図3の例では、指306(たとえば、またはスタイラス)を使用して、ユーザ・インターフェース300のグラフィカル・コンポーネントと対話することができる。
【0027】
たとえば、ユーザ・インターフェース300のグラフィカル・コンポーネントはボタン302a、302b、および302cを含む。ボタン302a、302b、および302cは、それぞれ、アプリケーション(またはアプリケーション・ウィンドウ)を最小化、最大化または元に戻すため、および閉じるために使用される。加えて、ユーザ・インターフェース300はコンテンツ部分308と対話するためのボタン304a〜304gを含む。たとえば、ユーザ・インターフェース300がマッピング・アプリケーションに対応している場合、ボタン304a〜304gは、パン、ズーム、位置のマーキング、位置の指定、およびマップ・ビューの切り替えを含むがこれらに限定されない動作に使用することができる。
【0028】
タッチ・モードでは(たとえば、ユーザ・インターフェース300の場合)、グラフィカル・コンポーネント(たとえば、ボタン302a〜302c、ボタン304a〜304g)はマウス・モードと比較してより大きいサイズにすることができる。より大きいグラフィカル・コンポーネントは、グラフィカル・コンポーネントのためのより大きな表示サイズに対応することができる。代わって、より大きいグラフィカル・コンポーネントは、表示サイズの拡大なしに、グラフィカル・コンポーネントのためのより大きな反応領域に対応することができる。諸態様の例では、マウス入力と比較してタッチ入力の方が精度が低減されるので、タッチ・モードでは、より大きいターゲットあるいはより大きいターゲット間隔またはその両方を使用することができる。
【0029】
諸態様の例では、タッチ・モードはマウス・モードと比較して所与の時間に表示できるインターフェース・コンポーネント(たとえば、ツール)がより少ない可能性がある。マウス・モードで通常表示されるインターフェース・コンポーネントは、タッチ・モードでは初期またはデフォルト・ビューから隠され、追加のインターフェース(複数も可)(たとえば、「追加のツールの表示」ボタン)によりアクセス可能になる可能性がある。一般に、マウス・モードと比較して、ユーザにとってよりタッチフレンドリになるようにタッチ・モードを適合させることができる。たとえば、写真編集アプリケーションは、マウス・モードと比較してタッチ・モードでは、より少ないツールを表示し、一般的によりタッチフレンドリになるように適合させることができる。
【0030】
加えて、タッチ・モードは、ホバー・イベントに応答して表示されるメニューまたはALTコンテンツなど、ホバー・コンテンツを提供することができない。したがって、マウス・モードで提供されるホバー・コンテンツの代わりに、代替インターフェース・コンポーネントを使用して、タッチ・モードで同様のコンテンツを提供することができる。たとえば、マウス・モードでホバー・イベントに応答して表示されるメニューまたはサブメニューの代わりに、タッチ・モードのユーザ・インターフェース(たとえば、ユーザ・インターフェース300)は追加のタブまたはメニューを表示することができる。これらの追加のタブまたはメニューは、デフォルトで常に表示することができるか、またはタッチ入力に応答して表示することができる。他の例では、マウス・モードでホバー・イベントに応答して表示されるALTコンテンツの代わりに、タッチ・モードのユーザ・インターフェースは、デフォルトでまたはタッチ入力に応答して追加のコンテンツを表示することができる。
【0031】
図2および図3に関連して、マウス・モードとタッチ・モードとを自動的に切り替えるために種々の方法が存在する。所定のイベントに応答して、アプリケーションのためのユーザ・インターフェースは、マウス・モード(たとえば、ユーザ・インターフェース200)からタッチ・モード(たとえば、ユーザ・インターフェース300)に切り替わることができ、逆もまた同様である。
【0032】
モード間の自動切り替えは、タッチ入力またはマウス入力の受信に応答して行うことができる。一例では、タッチ・モードのユーザ・インターフェースを表示しているアプリケーションは、マウス入力に応答して直ちにマウス・モードに切り替わることができる。このアプリケーション(たとえば、フィンガー・ペインティング・アプリケーション)は、デフォルトでタッチ・モードの表示にすることができる。しかし、マウス入力またはキーボード入力を受信すると、このアプリケーションのユーザ・インターフェースは直ちにマウス・モードに切り替わることができ、これは、より小さいインターフェース・コンポーネントを含み、ホバー・コンテンツを含むこともできる。したがって、このアプリケーションは、マウス入力またはキーボード入力に対応するイベントを待ち受け、イベント・ハンドラを使用してそのイベントに応答するプログラム・コードを含むことができる。
【0033】
他の例では、マウス・モードのユーザ・インターフェースを表示しているアプリケーションは、タッチ入力に応答して直ちにタッチ・モードに切り替わることができる。このアプリケーション(たとえば、ウェブ・ブラウザ)は、デフォルトでマウス・モードの表示にすることができる。しかし、タッチ入力を受信すると、このアプリケーションのユーザ・インターフェースは直ちにタッチ・モードに切り替わることができ、これは、より大きいインターフェース・コンポーネントを含み、ホバー機能を提供しない。したがって、このアプリケーションは、タッチ入力に対応するイベントを待ち受け、イベント・ハンドラを使用してそのイベントに応答するプログラム・コードを含むことができる。
【0034】
タッチ入力またはマウス入力を受信したときにモードを切り替えることに加えて、タッチ入力またはマウス入力以外のタイプの所定のイベントに応答して切り替えを行うことも可能である。デフォルト入力モード(たとえば、マウス・モードまたはタッチ・モード)を含むアプリケーションの場合、非活動の期間が検出された後に非デフォルト・モードからデフォルト・モードへの切り替えを行うことができる。
【0035】
上記のように、デフォルトでタッチ・モードにするアプリケーション(たとえば、フィンガー・ペインティング・アプリケーション)は、マウスまたはキーボード入力を受信したことに応答してマウス・モードに切り替わることができる。この切り替えに加えて、諸態様の例は、最後のキーボードまたはマウス入力以降の所定の期間後にマウス・モード(たとえば、非デフォルト・モード)から元のタッチ・モード(たとえば、デフォルト・モード)に切り替えることを提供する。
【0036】
詳細には、このアプリケーション(たとえば、フィンガー・ペインティング・アプリケーション)は、キーボードまたはマウス入力を受信次第、タイマを起動することができ、最後のキーボードまたはマウス入力の受信以降、事前設定された期間が経過したかどうかをさらに判断することができる。事前設定された期間が経過した場合、このアプリケーションはマウス・モードからタッチ・モードにユーザ・インターフェースを切り替えることができる。当然のことながら、このような切り替えは、デフォルトでマウス・モードの表示にするアプリケーション(たとえば、ウェブ・ブラウザ)についても行うことができ、その場合、最後のタッチ入力の受信以降、事前設定された期間が経過したことに応答して、ユーザ・インターフェースはタッチ・モードから元のマウス・モードに切り替わる。
【0037】
上記の所定のイベントに加えて、自動切り替えは、ユーザ・インターフェースを表示するタッチスクリーンに対するユーザ(たとえば、手または指)の近接性に応答して行うことができる。たとえば、アプリケーションがマウス・モードで表示している場合、1つまたは複数のセンサ(たとえば、カメラ)を使用して、タッチスクリーンに対するユーザの指の近接性を検出することができる。ユーザ(またはユーザの動き)がタッチスクリーンから所定の距離内にある場合、これは、ユーザがタッチ入力を使用しようとしていることを示唆する可能性がある。指の近接性を検出したことに応答して、このアプリケーションは、ユーザが実際に画面にタッチする前に、マウス・モードからタッチ・モードに自動的に切り替わることができる。
【0038】
自動切り替えは、ユーザ・インターフェースを表示しているデバイスに外部デバイスが接続されたと判断したことに応答して行うこともできる。たとえば、このユーザ・インターフェースを有するアプリケーションを実行しているデバイスはタブレット・コンピュータに対応することができ、このユーザ・インターフェースはタッチ入力のためのタッチ・モードで表示することができる。タブレット・コンピュータのユーザは、外部キーボードまたはマウスなどの外部デバイスをタブレット・コンピュータに接続することができる。諸態様の例では、外部デバイスに接続することは、外部キーボード/マウスを含むドッキング・ステーションにタブレット・コンピュータをドッキングすることに対応することができる。外部デバイスを接続したことに応答して、このアプリケーションはタッチ・モードからマウス・モードにユーザ・インターフェースを切り替えることができる。したがって、このアプリケーションは、外部デバイスに接続することに対応するイベントを待ち受け、イベント・ハンドラを使用してそのイベントに応答するプログラム・コードを含むことができる。
【0039】
上記の所定のイベントのそれぞれが個別に入力モード間の切り替えを開始できることに留意されたい。たとえば、デフォルトでタッチ・モードになるアプリケーション(たとえば、フィンガー・ペイント・アプリケーション)の場合、マウスクリック・イベントでユーザ・インターフェースをマウス・モードに切り替えることができ、所定の時間の間、マウス入力がないと、アプリケーションを元のタッチ・モードに切り替えさせることができる。デバイスを外部キーボードまたはマウスにドッキングすると、ユーザ・インターフェースは、もう一度、マウス・モードに切り替わることができる。さらに、ユーザの指がタッチスクリーンから所定の距離内にあることを検出すると、ユーザ・インターフェースは元のタッチ・モードに切り替わることができる。当然のことながら、これは、種々の所定のイベントに基づくモード間の切り替えの一例であり、その他のイベントの組み合わせも可能である。
【0040】
また、マウス・モードとタッチ・モードとの切り替えはインターフェース・コンポーネントのサイズを変更することができるので、インターフェース・コンポーネント(たとえば、タッチ・ターゲット)がその初期位置から移動することが起こり得ることにも留意されたい。このため、アプリケーションは、マウスクリック/タッチ・ポイントのすぐ下にあるインターフェース・コンポーネントの位置に影響を及ぼさないように、ユーザ・インターフェースのインテリジェント・サイズ変更を提供することができる。
【0041】
加えて、図1に関連して上記したように、モード間の切り替えは、入力モードに応じて異なるコンテンツを提供するコンテンツ・サーバ(たとえば、サーバ110)に対応することができる。したがって、電子デバイス(たとえば、102〜106)上で実行されているアプリケーションが入力モード間の切り替えを実行させる代わりとしてまたはそれに加えて、そのアプリケーションを実行している電子デバイスは、マウス・モードとタッチ・モードとの間で切り替えるよう、サーバ(たとえば、110)に指示を送信することができる。この指示を受信したことに応答して、サーバは異なるコンテンツ(たとえば、ウェブ・コンテンツ)を電子デバイスに提供することができる。この異なるコンテンツは、グラフィカル・コンポーネントのための種々の表示サイズ(または反応領域のサイズ)あるいはアプリケーション(たとえば、ウェブ・ブラウザ)内に表示するためのホバー・コンテンツ/ホバー・コンテンツなしを含むことができるが、これらに限定されない。
【0042】
上記の例では図2および図3に示されているユーザ・インターフェースのためのマウス・モードとタッチ・モードとの切り替えについて説明しているが、主題技術はこれらのモードまたはこのようなユーザ・インターフェースに限定されない。むしろ、主題技術は種々のタイプのユーザ・インターフェースに使用することができ、そのインターフェースは、マウス入力、トラックボール入力、ペン入力、スタイラス入力、タッチ入力、あるいはトラックパッド入力、またはこれらの組み合わせなど、複数の可能性のある入力タイプの1つに適合させることができる。
【0043】
図4は、ユーザ・インターフェースのための入力モード間で自動的な切り替えを行うことを提供するプロセスの一例を示している。開始ブロック402に続いて、ステップ404で第1の入力タイプのための第1の入力モードでユーザ・インターフェースが表示される。ステップ406では、所定のイベントが発生したという判断が行われ、所定のイベントは第1の入力タイプまたは第2の入力タイプ以外のタイプのものである。
【0044】
ステップ408では、その判断に応答して、第1の入力タイプのための第1の入力モードから第2の入力タイプのための第2の入力モードにユーザ・インターフェースが切り替えられる。第1の入力タイプはマウス入力またはタッチ入力のうちの一方に対応することができ、第2の入力タイプはマウス入力またはタッチ入力のうちのもう一方に対応することができる。第1の入力モードまたは第2の入力モードのうちの一方はマウス入力のためのマウス・モードに対応することができ、第1の入力モードまたは第2の入力モードのうちのもう一方はタッチ入力のためのタッチ・モードに対応することができる。
【0045】
マウス・モードでユーザ・インターフェースを表示することはそのユーザ・インターフェースでホバー・コンテンツを提供することができ、タッチ・モードでユーザ・インターフェースを表示することはそのユーザ・インターフェースでホバー・コンテンツなしを提供することができる。代わってまたは加えて、マウス・モードでユーザ・インターフェースを表示することはタッチ・モードと比較してより小さいポインタ・ターゲットをそのユーザ・インターフェースで提供することができ、タッチ・モードでユーザ・インターフェースを表示することはマウス・モードと比較してより大きいポインタ・ターゲットをそのユーザ・インターフェースで提供することができる。
【0046】
第1の入力モードでユーザ・インターフェースを表示することは第1の入力タイプのユーザ入力の受信に応答して行うことができる。諸態様の例では、所定のイベントが発生したと判断することは、第1の入力タイプのユーザ入力を受信次第、タイマを起動することと、起動されたタイマに基づいて、第1の入力タイプのユーザ入力の受信以降、事前設定された期間が経過したと判断することを含むことができる。事前設定された期間が経過したという判断に応答して、切り替えが実行される。
【0047】
所定のイベントが発生したと判断することは、センサを使用して、ユーザ・インターフェースが表示されている画面からユーザまでの距離(たとえば、画面からユーザの指までの距離)を検出することと、その検出に基づいて、ユーザが画面から所定の距離内にあると判断することを含むことができる。ユーザが所定の距離内にあると判断したことに応答して、切り替えが実行される。
【0048】
ユーザ・インターフェースはデバイス上に表示される。所定のイベントが発生したと判断することは、外部デバイスがそのデバイスに接続されたと判断することを含むことができる。外部デバイスがそのデバイスに接続されたと判断したことに応答して、切り替えが実行される。たとえば、外部デバイスはキーボードまたはマウスにすることができる。次に、プロセスは終了ブロック410で終了する。
【0049】
図5は、ユーザ・インターフェースのための入力モード間で自動的な切り替えを行うことを提供するプロセスの他の例を示している。開始ブロック502に続いて、ステップ504で第1の入力タイプのための第1の入力モードでユーザ・インターフェースが表示される。ステップ506では、所定のイベントが発生したという判断が行われる。
【0050】
ステップ508では、その判断に応答して、第1の入力タイプのための第1の入力モードから第2の入力タイプのための第2の入力モードにユーザ・インターフェースが切り替えられる。第1の入力モードおよび第2の入力モードのそれぞれは1つまたは複数のグラフィカル・コンポーネントを含む。切り替えは、1つまたは複数のグラフィカル・コンポーネントのサイズを変更することを含む。
【0051】
サイズ変更は、1つまたは複数のグラフィカル・コンポーネントの表示サイズをサイズ変更することを含むことができる。サイズ変更は、サイズ変更された表示サイズに対応するように1つまたは複数のグラフィカル・コンポーネントのための反応領域をサイズ変更することをさらに含むことができる。代わって、サイズ変更は、表示サイズをサイズ変更せずに、グラフィカル・コンポーネントの反応領域をサイズ変更することを含むことができる。
【0052】
第1の入力タイプはマウス入力またはタッチ入力のうちの一方に対応することができ、第2の入力タイプはマウス入力またはタッチ入力のうちのもう一方に対応することができる。第1の入力モードまたは第2の入力モードのうちの一方はマウス入力のためのマウス・モードに対応することができ、第1の入力モードまたは第2の入力モードのうちのもう一方はタッチ入力のためのタッチ・モードに対応することができる。
【0053】
所定のイベントは第1の入力タイプまたは第2の入力タイプのものにすることができる。代わってまたは加えて、所定のイベントは第1の入力タイプまたは第2の入力タイプ以外のタイプのものにすることができる。
【0054】
図6は、それにより主題技術のいくつかの実現例を実現可能な電子システムの一例を概念的に示している。電子システム600は、コンピュータ、電話、PDA、または任意のその他の種類の電子デバイスにすることができる。このような電子システムは、様々なタイプのコンピュータ可読媒体と、その他の様々なタイプのコンピュータ可読媒体のためのインターフェースとを含む。電子システム600は、バス608と、処理装置(複数も可)612と、システム・メモリ604と、読み取り専用メモリ(ROM)610と、永久記憶装置602と、入力装置インターフェース614と、出力装置インターフェース606と、ネットワーク・インターフェース616とを含む。
【0055】
バス608は、電子システム600の多数の内部デバイスを通信可能に接続する、すべてのシステム・バス、周辺バス、およびチップセット・バスをひとまとめにして表している。たとえば、バス608は、処理装置(複数も可)612を、ROM610、システム・メモリ604、および永久記憶装置602と通信可能に接続する。
【0056】
これらの様々なメモリ・ユニットから、処理装置(複数も可)612は、主題開示のプロセスを実行するために、実行すべき命令および処理すべきデータを検索する。処理装置(複数も可)は、種々の実現例において単一プロセッサまたはマルチコア・プロセッサにすることができる。
【0057】
ROM610は、電子システムの処理装置(複数も可)612およびその他のモジュールが必要とする静的データおよび命令を保管する。これに対して、永久記憶装置602は読み書きメモリ・デバイスである。このデバイスは、電子システム600がオフであるときにも命令およびデータを保管する、不揮発性メモリ・ユニットである。主題開示のいくつかの実現例では、永久記憶装置602として大容量記憶装置(たとえば、磁気ディスクまたは光ディスクおよびそれに対応するディスク・ドライブ)を使用する。
【0058】
その他の実現例では、永久記憶装置602として取り外し可能な記憶装置(たとえば、フロッピー・ディスク、フラッシュ・ドライブ、およびそれに対応するディスク・ドライブ)を使用する。永久記憶装置602のように、システム・メモリ604は読み書きメモリ・デバイスである。しかし、記憶装置602とは異なり、システム・メモリ604は、ランダム・アクセス・メモリなどの揮発性読み書きメモリである。システム・メモリ604は、実行時にプロセッサが必要とする命令およびデータの一部を保管する。いくつかの実現例では、主題開示のプロセスは、システム・メモリ604、永久記憶装置602、またはROM610に保管される。たとえば、様々なメモリ・ユニットはいくつかの実現例に応じて入力モード間を変更するための命令を含む。これらの様々なメモリ・ユニットから、処理装置(複数も可)612は、いくつかの実現例のプロセスを実行するために、実行すべき命令および処理すべきデータを検索する。
【0059】
バス608は入力および出力装置インターフェース614および606にも接続する。入力装置インターフェース614は、ユーザが電子システムに対して情報を伝達し、コマンドを選択できるようにするものである。入力装置インターフェース614とともに使用される入力装置は、たとえば、英数字キーボードおよびポインティング・デバイス(「カーソル制御装置」ともいう)を含む。出力装置インターフェース606は、たとえば、電子システム600によって生成された画像の表示を可能にする。出力装置インターフェース606とともに使用される出力装置は、たとえば、プリンタおよび表示装置、たとえば、陰極線管(CRT)または液晶ディスプレイ(LCD)を含む。いくつかの実現例は、入力装置および出力装置の両方として機能するデバイス、たとえば、タッチスクリーンを含む。
【0060】
最後に、図6に示されているように、バス608はネットワーク・インターフェース616を介して電子システム600をネットワーク(図示せず)にも結合する。このように、コンピュータは、複数コンピュータからなるネットワーク(たとえば、ローカル・エリア・ネットワーク(「LAN」)、広域ネットワーク(「WAN」)、またはイントラネット)あるいは複数ネットワークからなるネットワーク、たとえば、インターネットの一部にすることができる。電子システム600のコンポーネントの一部またはすべては主題開示に併せて使用することができる。
【0061】
上述の特徴および適用例の多くは、コンピュータ可読記憶媒体(コンピュータ可読媒体ともいう)上に記録された1組の命令として指定されるソフトウェア・プロセスとして実現される。これらの命令が1つまたは複数の処理装置(たとえば、1つまたは複数のプロセッサ、複数プロセッサからなるコア、あるいはその他の処理装置)によって実行される場合、これらの命令は、その命令に指示されているアクションを処理装置(複数も可)に実行させる。コンピュータ可読媒体の例としては、CD−ROM、フラッシュ・ドライブ、RAMチップ、ハード・ドライブ、EPROMなどを含むが、これらに限定されない。コンピュータ可読媒体は、無線によるかまたは有線接続により通過する電子信号ならびに搬送波を含まない。
【0062】
本明細書では、「ソフトウェア」という用語は、読み取り専用メモリに常駐するファームウェアまたは磁気記憶装置に保管されたアプリケーションを含むものであり、どちらもプロセッサによる処理のためにメモリに読み込むことができる。また、実現例によっては、主題開示の複数のソフトウェア態様は、主題開示の別個のソフトウェア態様でありながら、より大きいプログラムのサブパートとして実現することができる。実現例によっては、複数のソフトウェア態様を別々のプログラムとして実現することもできる。最後に、本明細書に記載された1つのソフトウェア態様を一緒に実現する複数の別々のプログラムの任意の組み合わせは主題開示の範囲内である。実現例によっては、ソフトウェア・プログラムは、1つまたは複数の電子システム上で動作するようにインストールされると、そのソフトウェア・プログラムの動作を実行する1つまたは複数の特定の機械実現例を定義する。
【0063】
コンピュータ・プログラム(プログラム、ソフトウェア、ソフトウェア・アプリケーション、スクリプト、またはコードとしても知られている)は、コンパイル済みまたは解釈済み言語、宣言形または手続き形言語を含む、任意の形のプログラミング言語で作成することができ、スタンドアロン・プログラムとして、あるいはモジュール、コンポーネント、サブルーチン、オブジェクト、またはコンピューティング環境での使用に適したその他のユニットとしてを含む、任意の形で配備することができる。コンピュータ・プログラムは、ファイル・システム内のファイルに対応することができるが、対応する必要があるわけではない。プログラムは、その他のプログラムまたはデータを保持する1つのファイルの一部分(たとえば、マークアップ言語文書に保管された1つまたは複数のスクリプト)内に保管するか、当該プログラムに専用の単一ファイル内に保管するか、あるいは複数の協調ファイル(たとえば、1つまたは複数のモジュール、サブプログラム、またはコードの一部分を保管するファイル)内に、保管することができる。コンピュータ・プログラムは、1つのコンピュータ上で実行するか、あるいは1つのサイトに位置するかまたは複数のサイトに分散されて通信ネットワークによって相互接続された複数のコンピュータ上で実行するように配備することができる。
【0064】
上記のこれらの機能は、デジタル電子回路、コンピュータ・ソフトウェア、ファームウェア、またはハードウェアで実現することができる。これらの技法は1つまたは複数のコンピュータ・プログラム・プロダクトを使用して実現することができる。プログラム可能プロセッサおよびコンピュータはモバイル・デバイスに含まれるかまたはモバイル・デバイスとしてパッケージ化することができる。プロセスおよびロジック・フローは、1つまたは複数のプログラム可能プロセッサならびに1つまたは複数のプログラム可能論理回路によって実行することができる。汎用および特殊目的のコンピューティング・デバイスならびに記憶装置は、通信ネットワークにより相互接続することができる。
【0065】
いくつかの実現例は、機械可読媒体またはコンピュータ可読媒体(代わって、コンピュータ可読記憶媒体、機械可読メディア、または機械可読記憶媒体ともいう)にコンピュータ・プログラム命令を保管する電子部品、たとえば、マイクロプロセッサ、ストレージ、およびメモリを含む。このようなコンピュータ可読媒体のいくつかの例としては、RAM、ROM、読み取り専用コンパクト・ディスク(CD−ROM)、記録可能コンパクト・ディスク(CD−R)、書き換え可能コンパクト・ディスク(CD−RW)、読み取り専用デジタル多用途ディスク(たとえば、DVD−ROM、二重層DVD−ROM)、様々な記録可能/書き換え可能DVD(たとえば、DVD−RAM、DVD−RW、DVD+RWなど)、フラッシュ・メモリ(たとえば、SDカード、ミニSDカード、マイクロSDカードなど)、磁気またはソリッドステート・ハード・ドライブ、読み取り専用および記録可能Blu−Ray(R)ディスク、超高密度光ディスク、任意のその他の光または磁気メディア、フロッピー・ディスクを含む。コンピュータ可読媒体は、少なくとも1つの処理装置によって実行可能であって、様々な動作を実行するための複数の命令セットを含む、コンピュータ・プログラムを保管することができる。コンピュータ・プログラムまたはコンピュータ・コードの例としては、たとえば、コンパイラによって生成される機械コード、ならびに、インタープリタを使用してコンピュータ、電子部品、またはマイクロプロセッサによって実行される高レベル・コードを含むファイルを含む。
【0066】
上記の考察では主にソフトウェアを実行するマイクロプロセッサまたはマルチコア・プロセッサに言及しているが、いくつかの実現例は、1つまたは複数の集積回路、たとえば、特定用途向け集積回路(ASIC)またはフィールド・プログラマブル・ゲート・アレイ(FPGA)によって実行される。実現例によっては、このような集積回路は集積回路自体に保管された命令を実行する。
【0067】
本明細書ならびに本出願のいずれかの請求項で使用されるように、「コンピュータ」、「サーバ」、「プロセッサ」、および「メモリ」という用語はいずれも、電子デバイスまたはその他の技術的デバイスを指している。これらの用語は人または人のグループを除外するものである。本明細書のために、ディスプレイまたは表示という用語は、電子デバイス上で表示することを意味する。本明細書ならびに本出願のいずれかの請求項で使用されるように、「コンピュータ可読媒体」および「コンピュータ可読メディア」という用語は、コンピュータによって読み取り可能な形で情報を保管する、有形かつ物理的な対象物に完全に限定される。これらの用語は、任意の無線信号、有線ダウンロード信号、および任意のその他の一過性の信号を除外するものである。
【0068】
ユーザとの対話を可能にするために、本明細書に記載された主題の実現例は、ユーザに対して情報を表示するための表示装置、たとえば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニターと、それによりユーザがコンピュータに対して入力を行うことができるキーボードおよびポインティング・デバイス、たとえば、マウスまたはトラックボールとを有するコンピュータ上で実現することができる。ユーザとの対話を可能にするために、その他の種類のデバイスを使用することもでき、たとえば、ユーザに提供されるフィードバックは任意の形の感覚フィードバック、たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックにすることができ、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む、任意の形で受け取ることができる。加えて、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、そのデバイスから文書を受信することによって、ユーザと対話することができ、たとえば、ウェブ・ブラウザから受信した要求に応答してユーザのクライアント・デバイス上のウェブ・ブラウザにウェブ・ページを送信することによって対話することができる。
【0069】
本明細書に記載された主題の諸実施形態は、バックエンド・コンポーネント、たとえば、データ・サーバを含むか、ミドルウェア・コンポーネント、たとえば、アプリケーション・サーバを含むか、あるいはフロントエンド・コンポーネント、たとえば、それによりユーザが本明細書に記載された主題の一実現例と対話することができるグラフィカル・ユーザ・インターフェースまたはウェブ・ブラウザを有するクライアント・コンピュータを含むか、1つまたは複数のこのようなバックエンド・コンポーネント、ミドルウェア・コンポーネント、またはフロントエンド・コンポーネントの任意の組み合わせを含む、コンピューティング・システムで実現することができる。システムのコンポーネントは、任意の形または手段のデジタル・データ通信、たとえば、通信ネットワークによって相互接続することができる。通信ネットワークの例としては、ローカル・エリア・ネットワーク(「LAN」)および広域ネットワーク(「WAN」)、インターネットワーク(たとえば、インターネット)、ならびにピアツーピア・ネットワーク(たとえば、アドホック・ピアツーピア・ネットワーク)を含む。
【0070】
コンピューティング・システムはクライアントとサーバを含むことができる。クライアントとサーバは一般に相互に遠く離れており、典型的に通信ネットワークにより対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行され、相互にクライアント・サーバの関係を有するコンピュータ・プログラムによって発生する。実現例によっては、サーバはクライアント・デバイスにデータ(たとえば、HTMLページ)を伝送する(たとえば、クライアント・デバイスと対話するユーザにデータを表示し、そのユーザからユーザ入力を受信するため)。クライアント・デバイスで生成されたデータ(たとえば、ユーザ対話の結果)はサーバ側でクライアント・デバイスから受信することができる。
【0071】
開示されているプロセスにおける諸ステップの任意の特定の順序または階層は手法例の例示であることは言うまでもない。設計上の好みに基づいて、プロセスにおける諸ステップの特定の順序または階層を再編成できることあるいは例示されているすべてのステップを実行できることは言うまでもない。諸ステップのうちのいくつかは同時に実行することができる。たとえば、特定の状況では、多重タスク処理および並列処理が有利である可能性がある。その上、上記の諸実施形態における様々なシステム・コンポーネントの分離はすべての実施形態においてこのような分離を要求するものと理解すべきではなく、上記のプログラム・コンポーネントおよびシステムは一般に単一ソフトウェア・プロダクトに一緒に統合できるかまたは複数のソフトウェア・プロダクトにパッケージ化できることを理解されたい。
【0072】
上記の説明は、当業者が本明細書に記載された様々な態様を実践できるように提供されたものである。これらの態様に対する様々な変更は当業者にとって容易に明らかになり、本明細書に定義された包括的原理はその他の態様に適用することができる。したがって、特許請求の範囲は本明細書に示されている諸態様に限定するためのものではなく、請求項の表現と一致した全範囲が授与されるべきであり、その請求項においては単数形の要素に対する言及は、特にそのように指定されない限り、「唯一のもの(one and only one)」を意味するものではなく、むしろ「1つまたは複数(one or more)」を意味するものである。特に他の指定がない限り、「いくつかの(some)」という用語は1つまたは複数を指している。男性形の代名詞(たとえば、彼の(his))は女性形および中性形(たとえば、彼女の(her)およびそれの(its))を含み、逆もまた同様である。見出しおよび小見出しがある場合、便宜上使用されているだけであり、主題開示を限定するものではない。
【0073】
「態様(aspect)」などの語句は、このような態様が主題技術にとって不可欠であることまたはこのような態様が主題技術のすべての構成に適用されることを意味するものではない。一態様に関連する開示内容はすべての構成に適用される場合もあれば、1つまたは複数の構成に適用される場合もある。一態様などの語句は1つまたは複数の態様を指す可能性があり、逆もまた同様である。「構成(configuration)」などの語句は、このような構成が主題技術にとって不可欠であることまたはこのような構成が主題技術のすべての構成に適用されることを意味するものではない。一構成に関連する開示内容はすべての構成に適用される場合もあれば、1つまたは複数の構成に適用される場合もある。一構成などの語句は1つまたは複数の構成を指す可能性があり、逆もまた同様である。
【符号の説明】
【0074】
100 ネットワーク環境
102 電子デバイス
104 電子デバイス
106 電子デバイス
108 ネットワーク
110 サーバ
112 処理装置
114 データ・ストア
図1
図2
図3
図4
図5
図6