(58)【調査した分野】(Int.Cl.,DB名)
前記アプリケーションは電子メールアプリケーションであって、前記アプリケーションの前記ユーザインタフェースは前記電子メールアプリケーションからの電子メールメッセージの表現を含む、請求項1から4のいずれか1項に記載の方法。
【発明の概要】
【0004】
従って、手の運動技能が満足でないユーザがタッチユーザインタフェースを有するデバイスを利用しやすくする必要がある。換言すると、タッチセンシティブ面を十分に操作できないユーザがタッチユーザインタフェースを有する電子デバイスを操作できるようにする必要がある。
【0005】
タッチセンシティブ面を有する電子デバイスに対するユーザインタフェースに関わる上記の欠点及び他の問題は、開示するデバイスにより軽減又は解消される。いくつかの実施形態において、デバイスはデスクトップコンピュータである。いくつかの実施形態において、デバイスは携帯可能である(例えば、ノートブックコンピュータ、タブレットコンピュータ又はハンドヘルドデバイス)。いくつかの実施形態において、デバイスはタッチパッドを有する。いくつかの実施形態において、デバイスはタッチセンシティブディスプレイ(「タッチスクリーン」又は「タッチスクリーンディスプレイ」としても既知である)を有する。いくつかの実施形態において、デバイスは、グラフィカルユーザインタフェース(GUI)と、1つ以上のプロセッサと、メモリと、多数の機能を実行するためのメモリに格納された1つ以上のモジュール、プログラム又は命令の集合とを有する。いくつかの実施形態において、ユーザは主にタッチセンシティブ面に対する指の接触及びジェスチャを介してGUIと対話する。いくつかの実施形態において、機能は、画像編集、描画、プレゼンテーション、ワードプロセシング、ウェブサイト作成、ディスクオーサリング、スプレッドシート作成、ゲーム、電話、テレビ会議、電子メール送信、インスタントメッセージング、ワークアウトサポート、デジタル写真撮影、デジタルビデオ撮影、ウェブブラウジング、デジタル音楽再生及び/又はデジタルビデオ再生を含んでもよい。これらの機能を実行する実行可能な命令は、非一時的なコンピュータ可読記憶媒体又は1つ以上のプロセッサにより実行されるように構成された他のコンピュータプログラムに含まれてもよい。
【0006】
いくつかの実施形態によると、方法は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにおいて実行される。方法は、仮想タッチに対応する第1の視覚標識をディスプレイに表示することと、適応入力デバイスから第1の入力を受信することと、適応入力デバイスから第1の入力を受信することに応じて第1のメニューをディスプレイに表示することとを備える。第1のメニューは仮想タッチ選択アイコンを含む。仮想タッチ選択アイコンの選択を検出することに応じて、仮想マルチタッチ接触のメニューが表示される。
【0007】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、1つ以上のプロセッサと、メモリと、1つ以上のプログラムとを備える。1つ以上のプログラムは、メモリに格納され、1つ以上のプロセッサにより実行されるように構成される。1つ以上のプログラムは、仮想タッチに対応する第1の視覚標識をディスプレイに表示する命令と、適応入力デバイスから第1の入力を受信する命令と、適応入力デバイスから第1の入力を受信することに応じて第1のメニューをディスプレイに表示する命令とを含む。第1のメニューは仮想タッチ選択アイコンを含む。1つ以上のプログラムは、仮想タッチ選択アイコンの選択を検出することに応じて仮想マルチタッチ接触のメニューを表示する命令を含む。
【0008】
いくつかの実施形態によると、コンピュータ可読記憶媒体は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにより実行された場合に、デバイスが仮想タッチに対応する第1の視覚標識をディスプレイに表示する命令と、デバイスが適応入力デバイスから第1の入力を受信する命令と、適応入力デバイスから第1の入力を受信することに応じて、デバイスが第1のメニューをディスプレイに表示する命令とを格納している。第1のメニューは仮想タッチ選択アイコンを含む。更に命令により、デバイスは、仮想タッチ選択アイコンの選択を検出することに応じて仮想マルチタッチ接触のメニューを表示する。
【0009】
いくつかの実施形態によると、ディスプレイと、タッチセンシティブ面と、メモリと、メモリに格納された1つ以上のプログラムを実行するための1つ以上のプロセッサとを有する電子デバイスにおけるグラフィカルユーザインタフェースは、仮想タッチに対応する第1の視覚標識を含む。適応入力デバイスから第1の入力を受信することに応じて、第1のメニューがディスプレイに表示される。第1のメニューは仮想タッチ選択アイコンを含む。仮想タッチ選択アイコンの選択を検出することに応じて、仮想マルチタッチ接触のメニューが表示される。
【0010】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、仮想タッチに対応する第1の視覚標識をディスプレイに表示する手段と、適応入力デバイスから第1の入力を受信する手段と、適応入力デバイスから第1の入力を受信することに応じて有効にされた第1のメニューをディスプレイに表示する手段とを備える。第1のメニューは仮想タッチ選択アイコンを含む。電子デバイスは、仮想タッチ選択アイコンの選択を検出することに応じて有効にされた仮想マルチタッチ接触のメニューを表示する手段を更に備える。
【0011】
いくつかの実施形態によると、ディスプレイ及びタッチセンシティブ面を有する電子デバイス用の情報処理装置は、仮想タッチに対応する第1の視覚標識をディスプレイに表示する手段と、適応入力デバイスから第1の入力を受信する手段と、適応入力デバイスから第1の入力を受信することに応じて有効にされた第1のメニューをディスプレイに表示する手段とを備える。第1のメニューは仮想タッチ選択アイコンを含む。情報処理装置は、仮想タッチ選択アイコンの選択を検出することに応じて有効にされた仮想マルチタッチ接触のメニューを表示する手段を備える。
【0012】
いくつかの実施形態によると、方法は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにおいて実行される。方法は、仮想タッチに対応する第1の視覚標識をディスプレイに表示することと、適応入力デバイスから第1の入力を受信することと、適応入力デバイスから第1の入力を受信することに応じて仮想マルチタッチ接触のメニューを表示することとを備える。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコンを含む。方法は、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することと、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、それぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の視覚標識を表示することとを更に備える。
【0013】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、1つ以上のプロセッサと、メモリと、1つ以上のプログラムとを備える。1つ以上のプログラムは、メモリに格納され、1つ以上のプロセッサにより実行されるように構成される。1つ以上のプログラムは、仮想タッチに対応する第1の視覚標識をディスプレイに表示する命令と、適応入力デバイスから第1の入力を受信する命令と、適応入力デバイスから第1の入力を受信することに応じて、仮想マルチタッチ接触のメニューを表示する命令とを含む。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコンを含む。1つ以上のプログラムは、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出する命令と、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、それぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の視覚標識を表示する命令とを更に含む。
【0014】
いくつかの実施形態によると、コンピュータ可読記憶媒体は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにより実行された場合に、デバイスが仮想タッチに対応する第1の視覚標識をディスプレイに表示する命令と、デバイスが適応入力デバイスから第1の入力を受信する命令と、適応入力デバイスから第1の入力を受信することに応じて、デバイスが仮想マルチタッチ接触のメニューを表示する命令とを格納している。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコンを含む。更に命令により、デバイスは、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出し、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、それぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の視覚標識を表示する。
【0015】
いくつかの実施形態によると、ディスプレイと、タッチセンシティブ面と、メモリと、メモリに格納された1つ以上のプログラムを実行するための1つ以上のプロセッサとを有する電子デバイスにおけるグラフィカルユーザインタフェースは、仮想タッチに対応する第1の視覚標識を含む。適応入力デバイスから第1の入力を受信することに応じて、仮想マルチタッチ接触のメニューが表示される。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコンを含む。仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、それぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の視覚標識が表示される。
【0016】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、仮想タッチに対応する第1の視覚標識をディスプレイに表示する手段と、適応入力デバイスから第1の入力を受信する手段と、適応入力デバイスから第1の入力を受信することに応じて有効にされた仮想マルチタッチ接触のメニューを表示する手段とを備える。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコンを含む。電子デバイスは、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出する手段と、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて有効にされたそれぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の視覚標識を表示する手段とを更に備える。
【0017】
いくつかの実施形態によると、ディスプレイ及びタッチセンシティブ面を有する電子デバイス用の情報処理装置は、仮想タッチに対応する第1の視覚標識をディスプレイに表示する手段と、適応入力デバイスから第1の入力を受信する手段と、適応入力デバイスから第1の入力を受信することに応じて有効にされた仮想マルチタッチ接触のメニューを表示する手段とを備える。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコンを含む。情報処理装置は、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出する手段と、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて有効にされたそれぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の視覚標識を表示する手段とを更に備える。
【0018】
いくつかの実施形態によると、方法は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにおいて実行される。方法は、仮想タッチに対応する第1の視覚標識をディスプレイに表示することと、適応入力デバイスから第1の入力を受信することと、適応入力デバイスから第1の入力を受信することに応じて仮想ジェスチャのメニューを表示することとを備える。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。方法は、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することと、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャアイコンに対応する複数の視覚標識を表示することとを備える。方法は、適応入力デバイスから第2の入力を受信することと、適応入力デバイスから第2の入力を受信することに応じて、それぞれの仮想ジェスチャに従って動作を実行することとを備える。
【0019】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、1つ以上のプロセッサと、メモリと、1つ以上のプログラムとを備える。1つ以上のプログラムは、メモリに格納され、1つ以上のプロセッサにより実行されるように構成される。1つ以上のプログラムは、仮想タッチに対応する第1の視覚標識をディスプレイに表示する命令と、適応入力デバイスから第1の入力を受信する命令と、適応入力デバイスから第1の入力を受信することに応じて仮想ジェスチャのメニューを表示する命令とを含む。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。1つ以上のプログラムは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出する命令と、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャアイコンに対応する複数の視覚標識を表示する命令とを含む。1つ以上のプログラムは、適応入力デバイスから第2の入力を受信する命令と、適応入力デバイスから第2の入力を受信することに応じて、それぞれの仮想ジェスチャに従って動作を実行する命令とを含む。
【0020】
いくつかの実施形態によると、コンピュータ可読記憶媒体は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにより実行された場合に、デバイスが仮想タッチに対応する第1の視覚標識をディスプレイに表示する命令と、デバイスが適応入力デバイスから第1の入力を受信する命令と、適応入力デバイスから第1の入力を受信することに応じて、デバイスが仮想ジェスチャのメニューを表示する命令とを格納している。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。命令により、デバイスは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャアイコンに対応する複数の視覚標識を表示する。命令により、デバイスは、適応入力デバイスから第2の入力を受信し、適応入力デバイスから第2の入力を受信することに応じてそれぞれの仮想ジェスチャに従って動作を実行する。
【0021】
いくつかの実施形態によると、ディスプレイと、タッチセンシティブ面と、メモリと、メモリに格納された1つ以上のプログラムを実行するための1つ以上のプロセッサとを有する電子デバイスにおけるグラフィカルユーザインタフェースは、仮想タッチに対応する第1の視覚標識を含む。適応入力デバイスから第1の入力を受信することに応じて、仮想ジェスチャのメニューが表示される。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャアイコンに対応する複数の視覚標識が表示される。適応入力デバイスから第2の入力を受信することに応じて、それぞれの仮想ジェスチャに従って動作が実行される。
【0022】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、仮想タッチに対応する第1の視覚標識をディスプレイに表示する手段と、適応入力デバイスから第1の入力を受信する手段と、適応入力デバイスから第1の入力を受信することに応じて有効にされた仮想ジェスチャのメニューを表示する手段とを備える。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。電子デバイスは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出する手段と、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて有効にされたそれぞれの仮想ジェスチャアイコンに対応する複数の視覚標識を表示する手段とを備える。電子デバイスは、適応入力デバイスから第2の入力を受信する手段と、適応入力デバイスから第2の入力を受信することに応じて有効にされたそれぞれの仮想ジェスチャに従って動作を実行する手段とを備える。
【0023】
いくつかの実施形態によると、ディスプレイ及びタッチセンシティブ面を有する電子デバイス用の情報処理装置は、仮想タッチに対応する第1の視覚標識をディスプレイに表示する手段と、適応入力デバイスから第1の入力を受信する手段と、適応入力デバイスから第1の入力を受信することに応じて有効にされた仮想ジェスチャの種類を示す複数のアイコンを含む仮想ジェスチャのメニューを表示する手段とを備える。情報処理装置は、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出する手段と、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて有効にされたそれぞれの仮想ジェスチャアイコンに対応する複数の視覚標識を表示する手段とを備える。情報処理装置は、適応入力デバイスから第2の入力を受信する手段と、適応入力デバイスから第2の入力を受信することに応じて有効にされたそれぞれの仮想ジェスチャに従って動作を実行する手段とを備える。
【0024】
いくつかの実施形態によると、方法は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにおいて実行される。方法は、仮想ピンチイン/ピンチアウトジェスチャアイコンを表示することと、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することと、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて、仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識を表示することとを備える。方法は、適応入力デバイスから入力を受信することと、適応入力デバイスから入力を受信することに応じて、それぞれの仮想ピンチイン/ピンチアウトジェスチャに従ってズーム動作を実行することとを更に備える。
【0025】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、1つ以上のプロセッサと、メモリと、1つ以上のプログラムとを備える。1つ以上のプログラムは、メモリに格納され、1つ以上のプロセッサにより実行されるように構成される。1つ以上のプログラムは、仮想ピンチイン/ピンチアウトジェスチャアイコンを表示する命令と、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出する命令と、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて、仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識を表示する命令とを含む。1つ以上のプログラムは、適応入力デバイスから入力を受信する命令と、適応入力デバイスから入力を受信することに応じて、それぞれの仮想ピンチイン/ピンチアウトジェスチャに従ってズーム動作を実行する命令とを含む。
【0026】
いくつかの実施形態によると、コンピュータ可読記憶媒体は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにより実行された場合に、デバイスが仮想ピンチイン/ピンチアウトジェスチャアイコンを表示する命令と、デバイスが仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出する命令と、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて、デバイスが仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識を表示する命令とを格納している。更に命令により、デバイスは、適応入力デバイスから入力を受信し、適応入力デバイスから入力を受信することに応じて、それぞれの仮想ピンチイン/ピンチアウトジェスチャに従ってズーム動作を実行する。
【0027】
いくつかの実施形態によると、ディスプレイと、タッチセンシティブ面と、メモリと、メモリに格納された1つ以上のプログラムを実行するための1つ以上のプロセッサとを有する電子デバイスにおけるグラフィカルユーザインタフェースは、仮想ピンチイン/ピンチアウトジェスチャアイコンを含む。仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて、仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識が表示される。適応入力デバイスから入力を受信することに応じて、それぞれの仮想ピンチイン/ピンチアウトジェスチャに従ってズーム動作が実行される。
【0028】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、仮想ピンチイン/ピンチアウトジェスチャアイコンを表示する手段と、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出する手段と、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて有効にされた仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識を表示する手段とを備える。電子デバイスは、適応入力デバイスから入力を受信する手段と、適応入力デバイスから入力を受信することに応じて有効にされたそれぞれの仮想ピンチイン/ピンチアウトジェスチャに従ってズーム動作を実行する手段とを備える。
【0029】
いくつかの実施形態によると、ディスプレイ及びタッチセンシティブ面を有する電子デバイス用の情報処理装置は、仮想ピンチイン/ピンチアウトジェスチャアイコンを表示する手段と、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出する手段と、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて有効にされた仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識を表示する手段とを備える。情報処理装置は、適応入力デバイスから入力を受信する手段と、適応入力デバイスから入力を受信することに応じて有効にされたそれぞれの仮想ピンチイン/ピンチアウトジェスチャに従ってズーム動作を実行する手段とを更に備える。
【0030】
いくつかの実施形態によると、方法は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにおいて実行される。方法は、仮想ジェスチャアイコンを表示することと、仮想ジェスチャアイコンの選択を検出することと、仮想ジェスチャアイコンの選択を検出することに応じて仮想ジェスチャのメニューを表示することとを備える。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。方法は、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することと、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャに対応する動作を実行することとを更に備える。
【0031】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、1つ以上のプロセッサと、メモリと、1つ以上のプログラムとを備える。1つ以上のプログラムは、メモリに格納され、1つ以上のプロセッサにより実行されるように構成される。1つ以上のプログラムは、仮想ジェスチャアイコンを表示する命令と、仮想ジェスチャアイコンの選択を検出する命令と、仮想ジェスチャアイコンの選択を検出することに応じて仮想ジェスチャのメニューを表示する命令とを含む。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。1つ以上のプログラムは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出する命令と、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャに対応する動作を実行する命令とを更に含む。
【0032】
いくつかの実施形態によると、コンピュータ可読記憶媒体は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにより実行された場合に、デバイスが仮想ジェスチャアイコンを表示する命令と、デバイスが仮想ジェスチャアイコンの選択を検出する命令と、仮想ジェスチャアイコンの選択を検出することに応じてデバイスが仮想ジェスチャのメニューを表示する命令とを格納している。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。更に命令により、デバイスは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャに対応する動作を実行する。
【0033】
いくつかの実施形態によると、ディスプレイと、タッチセンシティブ面と、メモリと、メモリに格納された1つ以上のプログラムを実行するための1つ以上のプロセッサとを有する電子デバイスにおけるグラフィカルユーザインタフェースは、仮想ジェスチャアイコンを含む。仮想ジェスチャアイコンの選択を検出することに応じて、仮想ジェスチャのメニューが表示される。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャに対応する動作が実行される。
【0034】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、仮想ジェスチャアイコンを表示する手段と、仮想ジェスチャアイコンの選択を検出する手段と、仮想ジェスチャアイコンの選択を検出することに応じて有効にされた仮想ジェスチャのメニューを表示する手段とを備える。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。電子デバイスは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出する手段と、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて有効にされたそれぞれの仮想ジェスチャに対応する動作を実行する手段とを備える。
【0035】
いくつかの実施形態によると、ディスプレイ及びタッチセンシティブ面を有する電子デバイス用の情報処理装置は、仮想ジェスチャアイコンを表示する手段と、仮想ジェスチャアイコンの選択を検出する手段と、仮想ジェスチャアイコンの選択を検出することに応じて有効にされた仮想ジェスチャのメニューを表示する手段とを備える。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。情報処理装置は、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出する手段と、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて有効にされたそれぞれの仮想ジェスチャに対応する動作を実行する手段とを備える。
【0036】
いくつかの実施形態によると、方法は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにおいて実行される。方法は、仮想デバイスアイコンを表示することと、仮想デバイスアイコンの選択を検出することと、仮想デバイスアイコンの選択を検出することに応じて仮想デバイス動作のメニューを表示することとを備える。仮想デバイス動作のメニューは、仮想デバイス動作の種類を示す複数のアイコンを含む。方法は、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することと、
仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて、それぞれの仮想デバイス動作に対応する動作を実行することとを更に備える。
【0037】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、1つ以上のプロセッサと、メモリと、1つ以上のプログラムとを備える。1つ以上のプログラムは、メモリに格納され、1つ以上のプロセッサにより実行されるように構成される。1つ以上のプログラムは、仮想デバイスアイコンを表示する命令と、仮想デバイスアイコンの選択を検出する命令と、仮想デバイスアイコンの選択を検出することに応じて仮想デバイス動作のメニューを表示する命令とを含む。仮想デバイス動作のメニューは、仮想デバイス動作の種類を示す複数のアイコンを含む。1つ以上のプログラムは、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出する命令と、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて、それぞれの仮想デバイス動作に対応する動作を実行する命令とを更に含む。
【0038】
いくつかの実施形態によると、コンピュータ可読記憶媒体は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにより実行された場合に、デバイスが仮想デバイスアイコンを表示する命令と、デバイスが仮想デバイスアイコンの選択を検出する命令と、仮想デバイスアイコンの選択を検出することに応じて、デバイスが仮想デバイス動作のメニューを表示する命令とを格納している。仮想デバイス動作のメニューは、仮想デバイス動作の種類を示す複数のアイコンを含む。更に命令により、デバイスは、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出し、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて、それぞれの仮想デバイス動作に対応する動作を実行する。
【0039】
いくつかの実施形態によると、ディスプレイと、タッチセンシティブ面と、メモリと、メモリに格納された1つ以上のプログラムを実行するための1つ以上のプロセッサとを有する電子デバイスにおけるグラフィカルユーザインタフェースは、仮想デバイスアイコン含む。仮想デバイスアイコンの選択を検出することに応じて、仮想デバイス動作のメニューが表示される。仮想デバイス動作のメニューは、仮想デバイス動作の種類を示す複数のアイコンを含む。仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて、それぞれの仮想デバイス動作に対応する動作が実行される。
【0040】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、仮想デバイスアイコンを表示する手段と、仮想デバイスアイコンの選択を検出する手段と、仮想デバイスアイコンの選択を検出することに応じて有効にされた仮想デバイス動作のメニューを表示する手段とを備える。仮想デバイス動作のメニューは、仮想デバイス動作の種類を示す複数のアイコンを含む。電子デバイスは、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出する手段と、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて有効にされたそれぞれの仮想デバイス動作に対応する動作を実行する手段とを更に備える。
【0041】
いくつかの実施形態によると、ディスプレイ及びタッチセンシティブ面を有する電子デバイス用の情報処理装置は、仮想デバイスアイコンを表示する手段と、仮想デバイスアイコンの選択を検出する手段と、仮想デバイスアイコンの選択を検出することに応じて有効にされた仮想デバイス動作のメニューを表示する手段とを備える。仮想デバイス動作のメニューは、仮想デバイス動作の種類を示す複数のアイコンを含む。情報処理装置は、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出する手段と、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて有効にされたそれぞれの仮想デバイス動作に対応する動作を実行する手段とを更に備える。
【0042】
いくつかの実施形態によると、方法は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにおいて実行される。方法は、仮想デバイス回転アイコンを表示することと、仮想デバイス回転アイコンの選択を検出することと、仮想デバイス回転アイコンの選択を検出することに応じて仮想デバイスの向きのメニューを表示することとを備える。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコンを含む。方法は、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することと、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて、それぞれの仮想デバイスの向きに従って表示を配向させることとを更に備える。
【0043】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、1つ以上のプロセッサと、メモリと、1つ以上のプログラムとを備える。1つ以上のプログラムは、メモリに格納され、1つ以上のプロセッサにより実行されるように構成される。1つ以上のプログラムは、仮想デバイス回転アイコンを表示する命令と、仮想デバイス回転アイコンの選択を検出する命令と、仮想デバイス回転アイコンの選択を検出することに応じて仮想デバイスの向きのメニューを表示する命令とを備える。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコンを含む。1つ以上のプログラムは、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出する命令と、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて、それぞれの仮想デバイスの向きに従って表示を配向させる命令とを含む。
【0044】
いくつかの実施形態によると、コンピュータ可読記憶媒体は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにより実行された場合に、デバイスが仮想デバイス回転アイコンを表示する命令と、デバイスが仮想デバイス回転アイコンの選択を検出する命令と、仮想デバイス回転アイコンの選択を検出することに応じて、デバイスが仮想デバイスの向きのメニューを表示する命令とを格納している。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコンを含む。更に命令により、デバイスは、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出し、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて、それぞれの仮想デバイスの向きに従って表示を配向させる。
【0045】
いくつかの実施形態によると、ディスプレイと、タッチセンシティブ面と、メモリと、メモリに格納された1つ以上のプログラムを実行するための1つ以上のプロセッサとを有する電子デバイスにおけるグラフィカルユーザインタフェースは、仮想デバイス回転アイコンを含む。仮想デバイス回転アイコンの選択を検出することに応じて、仮想デバイスの向きのメニューが表示される。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコンを含む。仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて、それぞれの仮想デバイスの向きに従って表示が配向される。
【0046】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、仮想デバイス回転アイコンを表示する手段と、仮想デバイス回転アイコンの選択を検出する手段と、仮想デバイス回転アイコンの選択を検出することに応じて有効にされた仮想デバイスの向きのメニューを表示する手段とを備える。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコンを含む。電子デバイスは、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出する手段と、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて有効にされたそれぞれの仮想デバイスの向きに従って表示を配向させる手段とを更に備える。
【0047】
いくつかの実施形態によると、ディスプレイ及びタッチセンシティブ面を有する電子デバイス用の情報処理装置は、仮想デバイス回転アイコンを表示する手段と、仮想デバイス回転アイコンの選択を検出する手段と、仮想デバイス回転アイコンの選択を検出することに応じて有効にされた仮想デバイスの向きのメニューを表示する手段とを備える。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコンを含む。情報処理装置は、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出する手段と、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて有効にされたそれぞれの仮想デバイスの向きに従って表示を配向させる手段とを更に備える。
【0048】
いくつかの実施形態によると、方法は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにおいて実行される。方法は、仮想ジェスチャ記録モードの間に複数の視覚標識をディスプレイに表示することを備える。方法は、複数の視覚標識の視覚標識毎に、
それぞれの視覚標識に対するそれぞれのユーザ入力を適応入力デバイスから受信することと、それぞれのユーザ入力に従ってそれぞれの視覚標識を移動することと、それぞれの視覚標識の移動に対応するそれぞれの軌跡をそれぞれの視覚標識と同時に表示することとを備える。方法は、複数の視覚標識及び複数の視覚標識の移動に対応するユーザ規定の仮想ジェスチャを作成することと、ユーザ規定の仮想ジェスチャを電子デバイスの所定の動作と関連付けることと、ユーザ規定の仮想ジェスチャを格納することとを更に備える。
【0049】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、1つ以上のプロセッサと、メモリと、1つ以上のプログラムとを備える。1つ以上のプログラムは、メモリに格納され、1つ以上のプロセッサにより実行されるように構成される。1つ以上のプログラムは、仮想ジェスチャ記録モードの間に複数の視覚標識をディスプレイに表示する命令を含む。1つ以上のプログラムは、複数の視覚標識の視覚標識毎に、それぞれの視覚標識に対するそれぞれのユーザ入力を適応入力デバイスから受信する命令と、それぞれのユーザ入力に従ってそれぞれの視覚標識を移動する命令と、それぞれの視覚標識の移動に対応するそれぞれの軌跡をそれぞれの視覚標識と同時に表示する命令とを含む。1つ以上のプログラムは、複数の視覚標識及び複数の視覚標識の移動に対応するユーザ規定の仮想ジェスチャを作成する命令と、ユーザ規定の仮想ジェスチャを電子デバイスの所定の動作と関連付ける命令と、ユーザ規定の仮想ジェスチャを格納する命令とを更に含む。
【0050】
いくつかの実施形態によると、コンピュータ可読記憶媒体は、ディスプレイ及びタッチセンシティブ面を有する電子デバイスにより実行された場合に、仮想ジェスチャ記録モードの間にデバイスが複数の視覚標識をディスプレイに表示する命令を格納している。命令により、デバイスは、複数の視覚標識の視覚標識毎に、それぞれの視覚標識に対するそれぞれのユーザ入力を適応入力デバイスから受信し、それぞれのユーザ入力に従ってそれぞれの視覚標識を移動し、それぞれの視覚標識の移動に対応するそれぞれの軌跡をそれぞれの視覚標識と同時に表示する。更に命令により、デバイスは、複数の視覚標識及び複数の視覚標識の移動に対応するユーザ規定の仮想ジェスチャを作成し、ユーザ規定の仮想ジェスチャを電子デバイスの所定の動作と関連付け、ユーザ規定の仮想ジェスチャを格納する。
【0051】
いくつかの実施形態によると、ディスプレイと、タッチセンシティブ面と、メモリと、メモリに格納された1つ以上のプログラムを実行するための1つ以上のプロセッサとを有する電子デバイスにおけるグラフィカルユーザインタフェースは、仮想ジェスチャ記録モードの間にディスプレイに複数の視覚標識を含む。複数の視覚標識の視覚標識毎に、それぞれの視覚標識に対するそれぞれのユーザ入力が適応入力デバイスから受信され、それぞれの視覚標識がそれぞれのユーザ入力に従って移動され、それぞれの視覚標識の移動に対応するそれぞれの軌跡がそれぞれの視覚標識と同時に表示される。複数の視覚標識及び複数の視覚標識の移動に対応するユーザ規定の仮想ジェスチャが作成される。ユーザ規定の仮想ジェスチャは、電子デバイスの所定の動作と関連付けられる。ユーザ規定の仮想ジェスチャが格納される。
【0052】
いくつかの実施形態によると、電子デバイスは、ディスプレイと、タッチセンシティブ面と、仮想ジェスチャ記録モードの間に有効にされた複数の視覚標識をディスプレイに表示する手段とを備える。電子デバイスは、複数の視覚標識の視覚標識毎に、それぞれの視覚標識に対するそれぞれのユーザ入力を適応入力デバイスから受信する手段と、それぞれのユーザ入力に従ってそれぞれの視覚標識を移動する手段と、それぞれの視覚標識の移動に対応するそれぞれの軌跡をそれぞれの視覚標識と同時に表示する手段とを備える。電子デバイスは、複数の視覚標識及び複数の視覚標識の移動に対応するユーザ規定の仮想ジェスチャを作成する手段と、ユーザ規定の仮想ジェスチャを電子デバイスの所定の動作と関連付ける手段と、ユーザ規定の仮想ジェスチャを格納する手段とを更に備える。
【0053】
いくつかの実施形態によると、ディスプレイ及びタッチセンシティブ面を有する電子デバイス用の情報処理装置は、仮想ジェスチャ記録モードの間に有効にされた複数の視覚標識をディスプレイに表示する手段を備える。情報処理装置は、複数の視覚標識の視覚標識毎に、それぞれの視覚標識に対するそれぞれのユーザ入力を適応入力デバイスから受信する手段と、それぞれのユーザ入力に従ってそれぞれの視覚標識を移動する手段と、それぞれの視覚標識の移動に対応するそれぞれの軌跡をそれぞれの視覚標識と同時に表示する手段とを備える。情報処理装置は、複数の視覚標識及び複数の視覚標識の移動に対応するユーザ規定の仮想ジェスチャを作成する手段と、ユーザ規定の仮想ジェスチャを電子デバイスの所定の動作と関連付ける手段と、ユーザ規定の仮想ジェスチャを格納する手段とを更に備える。
【0054】
いくつかの実施形態によると、電子デバイスは、仮想タッチに対応する第1の視覚標識を表示するように構成された表示ユニットと、指の接触を入力するように構成されたタッチセンシティブ面ユニットと、表示ユニット及びタッチセンシティブ面ユニットに結合された処理ユニットとを備える。処理ユニットは、適応入力デバイスから第1の入力を受信し、且つ適応入力デバイスから第1の入力を受信することに応じて、表示ユニットでの第1のメニューの表示を有効にするように構成される。第1のメニューは仮想タッチ選択アイコンを含む。仮想タッチ選択アイコンの選択を検出することに応じて、仮想マルチタッチ接触のメニューが表示される。
【0055】
いくつかの実施形態によると、電子デバイスは、仮想タッチに対応する第1の視覚標識を表示するように構成された表示ユニットと、指の接触を入力するように構成されたタッチセンシティブ面と、表示ユニット及びタッチセンシティブ面ユニットに結合された処理ユニットとを備える。処理ユニットは、適応入力デバイスから第1の入力を受信し、且つ適応入力デバイスから第1の入力を受信することに応じて、仮想マルチタッチ接触のメニューの表示を有効にするように構成される。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコンを含む。処理ユニットは、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出し、且つ仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、それぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の視覚標識の表示を有効にするように構成される。
【0056】
いくつかの実施形態によると、電子デバイスは、仮想タッチに対応する第1の視覚標識を表示するように構成された表示ユニットと、指の接触を入力するように構成されたタッチセンシティブ面と、表示ユニット及びタッチセンシティブ面ユニットに結合された処理ユニットとを備える。処理ユニットは、適応入力デバイスから第1の入力を受信し、且つ適応入力デバイスから第1の入力を受信することに応じて、仮想ジェスチャのメニューの表示を有効にするように構成される。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。処理ユニットは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し、且つ仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャアイコンに対応する複数の視覚標識の表示を有効にするように構成される。処理ユニットは、適応入力デバイスから第2の入力を受信し、且つ適応入力デバイスから第2の入力を受信することに応じて、それぞれの仮想ジェスチャに従って動作を実行するように構成される。
【0057】
いくつかの実施形態によると、電子デバイスは、仮想ピンチイン/ピンチアウトジェスチャアイコンを表示するように構成された表示ユニットと、指の接触を入力するように構成されたタッチセンシティブ面ユニットと、表示ユニット及びタッチセンシティブ面ユニットに結合された処理ユニットとを備える。処理ユニットは、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出し、且つ仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて、仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識の表示を有効にするように構成される。処理ユニットは、適応入力デバイスから入力を受信し、且つ適応入力デバイスから入力を受信することに応じて、それぞれの仮想ピンチイン/ピンチアウトジェスチャに従ってズーム動作を実行するように構成される。
【0058】
いくつかの実施形態によると、電子デバイスは、仮想ジェスチャアイコンを表示するように構成された表示ユニットと、指の接触を入力するように構成されたタッチセンシティブ面と、表示ユニット及びタッチセンシティブ面ユニットに結合された処理ユニットとを備える。処理ユニットは、仮想ジェスチャアイコンの選択を検出し、且つ仮想ジェスチャアイコンの選択を検出することに応じて仮想ジェスチャのメニューの表示を有効にするように構成される。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。処理ユニットは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し、且つ仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャに対応する動作を実行するように構成される。
【0059】
いくつかの実施形態によると、電子デバイスは、仮想デバイスアイコンを表示するように構成された表示ユニットと、指の接触を入力するように構成されたタッチセンシティブ面ユニットと、表示ユニット及びタッチセンシティブ面ユニットに結合された処理ユニットとを備える。処理ユニットは、仮想デバイスアイコンの選択を検出し、且つ仮想デバイスアイコンの選択を検出することに応じて、仮想デバイス動作のメニューの表示を有効にするように構成される。仮想デバイス動作のメニューは、仮想デバイス動作の種類を示す複数のアイコンを含む。処理ユニットは、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出し、且つ仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて、それぞれの仮想デバイス動作に対応する動作を実行するように構成される。
【0060】
いくつかの実施形態によると、電子デバイスは、仮想デバイス回転アイコンを表示するように構成された表示ユニットと、指の接触を入力するように構成されたタッチセンシティブ面ユニットと、表示ユニット及びタッチセンシティブ面ユニットに結合された処理ユニットとを備える。処理ユニットは、仮想デバイス回転アイコンの選択を検出し、且つ仮想デバイス回転アイコンの選択を検出することに応じて、仮想デバイスの向きのメニューの表示を有効にするように構成される。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコンを含む。処理ユニットは、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出し、且つ仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて、それぞれの仮想デバイスの向きに従って表示を配向させるように構成される。
【0061】
いくつかの実施形態によると、電子デバイスは、視覚標識を表示するように構成された表示ユニットと、指の接触を入力するように構成されたタッチセンシティブ面ユニットと、表示ユニット及びタッチセンシティブ面ユニットに結合された処理ユニットとを備える。処理ユニットは、仮想ジェスチャ記録モードの間に表示ユニットでの複数の視覚標識の表示を有効にするように構成される。処理ユニットは、複数の視覚標識の視覚標識毎に、それぞれの視覚標識に対するそれぞれのユーザ入力を適応入力デバイスから受信し、それぞれのユーザ入力に従ってそれぞれの視覚標識を移動し、且つそれぞれの視覚標識及びそれぞれの視覚標識の移動に対応するそれぞれの軌跡の同時表示を有効にするように構成される。処理ユニットは、複数の視覚標識及び複数の視覚標識の移動に対応するユーザ規定の仮想ジェスチャを作成し、ユーザ規定の仮想ジェスチャを電子デバイスの所定の動作と関連付け、且つユーザ規定の仮想ジェスチャを格納するように構成される。
【0062】
従って、タッチユーザインタフェースを有する電子デバイスは、手の運動技能が満足でないユーザがこれらのデバイスを利用しやすくする方法及びインタフェースを与えられる。
【発明を実施するための形態】
【0064】
タッチセンシティブ面を十分に操作できないユーザがタッチユーザインタフェースを有する電子デバイスを操作できるようにするデバイス及び方法を以下に説明する。本明細書で説明する方法は、以下のことを含む。
【0065】
・実際のタッチをエミュレートするために、仮想タッチに対応する視覚標識を使用する。
【0066】
・エミュレートされるマルチタッチ接触の種類を選択するために、適応入力デバイス(例えば、ジョイスティック)からの入力と共に仮想マルチタッチ接触のメニューを使用する。
【0067】
・タッチセンシティブ面に対する実際のジェスチャを選択及びエミュレートするために、適応入力デバイスからの入力と共に仮想ジェスチャのメニューを使用する。
【0068】
・タッチセンシティブ面に対するピンチイン/ピンチアウトジェスチャをエミュレートするために、適応入力デバイスからの入力と共に2つの視覚標識(2つの仮想タッチに対応する)を使用する。
【0069】
・一般に電子デバイス上の物理的コントロール(例えば、ミュートスイッチ、ロックスイッチ、音量ボタン)の起動を介して、あるいは加速度計により検出された動作(例えば、デバイスの振動又はデバイスの回転)に応じて実行される動作を選択及びエミュレートするために、適応入力デバイスからの入力と共に仮想デバイス動作のメニューを使用する。
【0070】
・ディスプレイの向きを制御するために、適応入力デバイスからの入力と共に仮想デバイスの向きのメニューを使用する。
【0071】
・ユーザ規定のカスタム仮想ジェスチャを作成するために、適応入力デバイスからの入力を使用する。
【0072】
これらの方法は、タッチセンシティブ面と対話するユーザに対して設計される動作(例えば、シングルタッチジェスチャ及びマルチタッチジェスチャ)をタッチセンシティブ面を使用しないユーザが利用しやすいようにする。
【0073】
以下において、
図1A及び
図1B、
図2、並びに
図3は例示的なデバイスを説明する。
図4Cは、適応入力デバイスと結合された例示的なデバイスを説明する。
図4A及び
図4B、並びに
図5A〜
図5ACは、タッチユーザインタフェースを利用しやすくするための例示的なユーザインタフェースを示す。
図6A〜
図6E及び
図7〜
図13は、タッチユーザインタフェースを利用しやすくする方法を示すフローチャートである。
図5A〜
図5ACのユーザインタフェースは、
図6A〜
図6E及び
図7〜
図13の処理を示すために使用される。
例示的なデバイス
実施形態を詳細に参照する。実施形態の例を添付の図面に示す。以下の詳細な説明において、本発明を完全に理解できるように多くの特定の詳細を示す。しかし、本発明は、それら特定の詳細を含まずに実施されてもよいことが当業者には明らかとなるだろう。他の例において、実施形態の態様を不必要に曖昧にしないために、周知の方法、手順、構成要素、回路及びネットワークについては詳細に説明していない。
【0074】
本明細書において種々の要素を説明するために第1、第2等の用語が使用されてもよいが、それらの要素はこれらの用語により限定されるべきではないことが理解されるだろう。これらの用語は、1つの要素を別の要素と区別するためだけに使用される。例えば本発明の範囲から逸脱せずに、第1のコンタクトが第2のコンタクトと呼ばれてよく、同様に第2のコンタクトが第1のコンタクトと呼ばれてよい。第1のコンタクト及び第2のコンタクトは、双方ともコンタクトであるが同一のコンタクトではない。
【0075】
本明細書の本発明の説明において使用される専門用語は、特定の実施形態を説明するためだけのものであり、本発明を限定することを意図しない。本発明の説明及び添付の特許請求の範囲において使用されるように、特に指定のない限り、単数形は複数形も含むことを意図する。本明細書で使用されるような「及び/又は」という用語は、一覧表示された関連する項目の1つ以上のあらゆる全ての可能な組み合わせを参照し且つ含むことが理解されるだろう。「含む」及び/又は「備える」という用語は、本明細書で使用される場合、記載される特徴、数字、ステップ、動作、要素及び/又は構成要素の存在を特定するが、1つ以上の他の特徴、数字、ステップ、動作、要素、構成要素及び/又はそれらの集合の存在又は追加を除外しないことが更に理解されるだろう。
【0076】
本明細書で使用されるように、「場合」という用語は、状況に応じて「時」、あるいは「判定することに応じて」又は「検出することに応じて」を意味すると解釈されてもよい。同様に、「判定された場合」又は「[明示された状態又は事象]が検出された場合」という句は、状況に応じて「判定した時」又は「判定することに応じて」、あるいは「[明示された状態又は事象]を検出した時」又は「[明示された状態又は事象]を検出することに応じて」を意味すると解釈されてもよい。
【0077】
電子デバイス、そのようなデバイスに対するユーザインタフェース及びそのようなデバイスを使用するための関連する処理の実施形態を説明する。いくつかの実施形態において、デバイスは、PDA機能及び/又は音楽プレーヤ機能等の他の機能も含む移動電話等のポータブル通信デバイスである。ポータブル多機能デバイスの例示的な実施形態は、アップル社(Apple Inc.)(カリフォルニア州クパチーノ)のiPhone(r)デバイス、iPod Touch(r)デバイス及びiPad(r)デバイスを含むがこれらに限定されない。タッチセンシティブ面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を有するラップトップコンピュータ又はタブレットコンピュータ等の他のポータブル電子デバイスが更に使用されてもよい。いくつかの実施形態において、デバイスは、ポータブル通信デバイスではなく、タッチセンシティブ面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を有するデスクトップコンピュータであることが理解されるべきである。
【0078】
以下の説明において、ディスプレイ及びタッチセンシティブ面を含む電子デバイスを説明する。しかし、電子デバイスは、物理的なキーボード、マウス及び/又はジョイスティック等の1つ以上の他の物理的なユーザインタフェースデバイスを含んでもよく、あるいはそれらの接続されてもよい(例えば、
図4Cの有線又は無線の通信チャネル484により)ことが理解されるべきである。
【0079】
一般にデバイスは、描画アプリケーション、プレゼンテーションアプリケーション、ワードプロセシングアプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、スプレッドシートアプリケーション、ゲームアプリケーション、電話アプリケーション、テレビ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、ワークアウトサポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、ウェブブラウジングアプリケーション、デジタル音楽プレーヤアプリケーション及び/又はデジタルビデオプレーヤアプリケーションのうちの1つ以上等の種々のアプリケーションをサポートする。
【0080】
デバイスにおいて実行されてもよい種々のアプリケーションは、タッチセンシティブ面等の少なくとも1つの共通の物理的なユーザインタフェースデバイスを使用してもよい。タッチセンシティブ面の1つ以上の機能及びデバイスに表示された対応する情報は、1つのアプリケーションから次のアプリケーションへ及び/又は各アプリケーション内で調整及び/又は変更されてもよい。このように、デバイスの共通の物理的アーキテクチャ(タッチセンシティブ面等)は、直観的で且つユーザに透過的なユーザインタフェースにより種々のアプリケーションをサポートしてもよい。
【0081】
次に、タッチセンシティブディスプレイを有するポータブルデバイスの実施形態に注目する。
図1Aは、いくつかの実施形態に係るタッチセンシティブディスプレイ112を有するポータブル多機能デバイス100を示すブロック図である。タッチセンシティブディスプレイ112は、便宜上「タッチスクリーン」と呼ばれる場合があり、タッチセンシティブディスプレイシステムとして既知であるか又はタッチセンシティブディスプレイシステムと呼ばれてもよい。デバイス100は、メモリ102(1つ以上の非一時的なコンピュータ可読記憶媒体を含んでもよい)と、メモリコントローラ122と、1つ以上の処理ユニット(CPU)120と、周辺インタフェース118と、RF回路網108と、オーディオ回路網110と、スピーカ111と、マイク113と、入出力(I/O)サブシステム106と、他の入力又は制御デバイス116と、外部ポート124とを含んでもよい。デバイス100は、1つ以上の光センサ164を含んでもよい。これらの構成要素は、1つ以上の通信バス又は信号線103を介して通信してもよい。
【0082】
デバイス100は、ポータブル多機能デバイスの単なる一例であり、デバイス100は、図示するより多くの又は少ない構成要素を有してもよく、2つ以上の構成要素を組み合わせてもよく、あるいは構成要素の異なる構成又は配置を有してもよいことが理解されるべきである。
図1Aに示した種々の構成要素は、1つ以上の信号処理及び/又は特定用途向け集積回路を含むハードウェア、ソフトウェア、あるいはハードウェア及びソフトウェア双方の組み合わせで実現されてもよい。
【0083】
メモリ102は、高速ランダムアクセスメモリを含んでもよく、1つ以上の磁気ディスク記憶装置、フラッシュメモリ素子又は他の不揮発性固体メモリ素子等の不揮発性メモリを更に含んでもよい。CPU120及び周辺インタフェース118等のデバイス100の他の構成要素によるメモリ102へのアクセスは、メモリコントローラ122により制御されてもよい。
【0084】
周辺インタフェース118は、デバイスの入出力周辺装置をCPU120及びメモリ102に結合するために使用されうる。1つ以上のプロセッサ120は、メモリ102に格納された種々のソフトウェアプログラム及び/又は命令の集合を実行し、デバイス100に対して種々の機能を実行し且つデータを処理する。
【0085】
いくつかの実施形態において、周辺インタフェース118、CPU120及びメモリコントローラ122は、チップ104等のシングルチップに実現されてもよい。いくつかの他の実施形態において、それらは別個のチップに実現されてもよい。
【0086】
RF(無線周波数)回路網108は、電磁信号とも呼ばれるRF信号を受信及び送出する。RF回路網108は、電気信号を電磁信号に及び電磁信号を電気信号に変換し、電磁信号を介して通信ネットワーク及び他の通信デバイスと通信する。RF回路網108は、それらの機能を実行する既知の回路網を含んでもよい。回路網は、アンテナシステム、RFトランシーバ、1つ以上の増幅器、チューナ、1つ以上の発振器、デジタル信号プロセッサ、CODECチップセット、加入者識別モジュール(SIM)カード及びメモリ等を含むがこれらに限定されない。RF回路網108は、ワールドワイドウェブ(WWW)とも呼ばれるインターネット、イントラネット、並びに/あるいは携帯電話網、無線ローカルエリアネットワーク(LAN)及び/又はメトロポリタンエリアネットワーク(MAN)等の無線ネットワーク等のネットワークと通信してもよく、無線通信により他のデバイスと通信してもよい。無線通信は、汎ヨーロッパデジタル移動通信システム(GSM)、GSMの拡張向け高速データ(EDGE)、高速ダウンリンクパケットアクセス(HSDPA)、高速アップリンクパケットアクセス(HSUPA)、広帯域符号分割多元接続(W−CDMA)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、Bluetooth、Wi−Fi(Wireless Fidelity)(例えば、IEEE802.11a、IEEE802.11b、IEEE802.11g及び/又はIEEE802.11n)、VoIP(voice over IP(インターネットプロトコル))、Wi−MAX、電子メールに対するプロトコル(例えば、インターネットメッセージアクセスプロトコル(IMAP)及び/又は郵便局プロトコル(POP))、インスタントメッセージング(例えば、拡張可能メッセージング/プレゼンスプロトコル(XMPP)、SIMPLE(SIP(セッション開始プロトコル) for Instant Messaging and Presence Leveraging Extensions)、インスタントメッセージング/プレゼンスサービス(IMPS))及び/又はショートメッセージサービス(SMS)、あるいは本明細書の出願時点ではまだ開発されていない通信プロトコルを含む他のあらゆる適切な通信プロトコルを含むがこれらに限定されない複数の通信規格、プロトコル及び技術のいずれかを使用してもよい。
【0087】
オーディオ回路網110、スピーカ111及びマイク113は、ユーザとデバイス100との間のオーディオインタフェースを提供する。オーディオ回路網110は、周辺インタフェース118からオーディオデータを受信し、オーディオデータを電気信号に変換し、電気信号をスピーカ111に送信する。スピーカ111は、電気信号を可聴音波に変換する。オーディオ回路網110は、マイク113により音波から変換された電気信号を更に受信する。オーディオ回路網110は、電気信号をオーディオデータに変換し、オーディオデータを処理するために周辺インタフェース118に送信する。オーディオデータは、周辺インタフェース118によりメモリ102及び/又はRF回路網108から検索されてもよく且つ/又はメモリ102及び/又はRF回路網108に送信されてもよい。いくつかの実施形態において、オーディオ回路網110はヘッドセットジャック(例えば、
図2の212)を更に含む。ヘッドセットジャックは、出力のみのヘッドフォン又は出力(例えば、片耳又は両耳用ヘッドフォン)及び入力(例えば、マイク)の双方を有するヘッドセット等の取り外し可能オーディオ入出力周辺装置とオーディオ回路網110との間のインタフェースを提供する。
【0088】
I/Oサブシステム106は、タッチスクリーン112及び他の入力制御デバイス116等のデバイス100上の入出力周辺装置を周辺インタフェース118に結合する。I/Oサブシステム106は、ディスプレイコントローラ156及び他の入力デバイス又は制御デバイスに対する1つ以上の入力コントローラ160を含んでもよい。1つ以上の入力コントローラ160は、他の入力デバイス又は制御デバイス116から電気信号を受信し、他の入力デバイス又は制御デバイス116に電気信号を送出する。他の入力制御デバイス116は、物理的なボタン(例えば、押しボタン、ロッカーボタン等)、ダイヤル、スライダスイッチ、ジョイスティック及びクリックホイール等を含んでもよい。いくつかの別の実施形態において、入力コントローラ160は、キーボード、赤外線ポート、USBポート及びマウス等のポインタデバイスのいずれかに結合されてもよい(又はいずれにも結合されなくてもよい)。1つ以上のボタン(例えば、
図2の208)は、スピーカ111及び/又はマイク113の音量制御のための上下ボタンを含んでもよい。1つ以上のボタンは、押しボタン(例えば、
図2の206)を含んでもよい。
【0089】
タッチセンシティブディスプレイ112は、デバイスとユーザとの間の入力インタフェース及び出力インタフェースを提供する。ディスプレイコントローラ156は、タッチスクリーン112から電気信号を受信し且つ/又はタッチスクリーン112に電気信号を送出する。タッチスクリーン112は、ユーザに対して視覚出力を表示する。視覚出力は、グラフィックス、テキスト、アイコン、ビデオ及びそれらのあらゆる組み合わせ(総称して「グラフィックス」と呼ぶ)を含んでもよい。いくつかの実施形態において、視覚出力の一部分又は全てはユーザインタフェースオブジェクトに対応してもよい。
【0090】
タッチスクリーン112は、触覚及び/又は触感接触に基づいてユーザからの入力を受け入れるタッチセンシティブ面、センサ又はセンサの集合を有する。タッチスクリーン112及びディスプレイコントローラ156(メモリ102中のあらゆる関連するモジュール及び/又は命令の集合と共に)は、タッチスクリーン112に対する接触(及び接触のあらゆる移動又は中断)を検出し、検出した接触をタッチスクリーン112に表示されるユーザインタフェースオブジェクト(例えば、1つ以上のソフトキー、アイコン、ウェブページ又は画像)との対話に変換する。例示的な一実施形態において、タッチスクリーン112とユーザとの間の接触点はユーザの指に対応する。
【0091】
タッチスクリーン112は、LCD(液晶ディスプレイ)技術、LPD(発光ポリマーディスプレイ)技術又はLED(発光ダイオード)技術を使用してもよいが、他のディスプレイ技術が他の実施形態において使用されてもよい。タッチスクリーン112及びディスプレイコントローラ156は、静電容量技術、抵抗技術、赤外線技術及び表面弾性波技術、並びに他の近接センサアレイ又はタッチスクリーン112との1つ以上の接触点を判定する他の要素を含むがこれらに限定されない現在既知であるか又は後で開発される複数のタッチ検知技術のいずれかを使用して接触及び接触のあらゆる移動又は中断を検出してもよい。例示的な一実施形態において、アップル社(Apple Inc.)(カリフォルニア州クパチーノ)のiPhone(r)、iPod Touch(r)及びiPad(r)において見られるような投影相互キャパシタンス感知技術が使用される。
【0092】
タッチスクリーン112は、100dpiを上回るビデオ解像度を有してもよい。いくつかの実施形態において、タッチスクリーンは、約160dpiのビデオ解像度を有する。ユーザは、スタイラス及び指等のあらゆる適切なオブジェクト又は付属品を使用してタッチスクリーン112と接触してもよい。いくつかの実施形態において、ユーザインタフェースは、主に指を使用した接触及びジェスチャで動作するように設計される。指を使用した接触及びジェスチャは、スタイラスを使用した入力と比較して、タッチスクリーンに対する指の接触面積が広いため精度が低くなりうる。いくつかの実施形態において、デバイスは、指を使用した粗入力を高精度なポインタ/カーソル位置又はユーザの所望の動作を実行するためのコマンドに変換する。
【0093】
いくつかの実施形態において、タッチスクリーンに加えて、デバイス100は、特定の機能を起動又は停止するためのタッチパッド(不図示)を含んでもよい。いくつかの実施形態において、タッチパッドは、タッチスクリーンとは異なり視覚出力を表示しないデバイスのタッチセンシティブ領域である。タッチパッドは、タッチスクリーン112とは異なるタッチセンシティブ面であってもよく、あるいはタッチスクリーンにより形成されたタッチセンシティブ面の拡張部であってもよい。
【0094】
デバイス100は、種々の構成要素に電力を供給する電力系統162を更に含む。電力系統162は、電力管理システム、1つ以上の電源(例えば、バッテリ、交流(AC))、充電システム、電源異常検出回路、電力コンバータ又は電力インバータ、電力状態表示器(例えば、発光ダイオード(LED))、並びにポータブルデバイスにおける電力の生成、管理及び配分と関連する他のあらゆる構成要素を含んでもよい。
【0095】
デバイス100は、1つ以上の光センサ164を更に含んでもよい。
図1Aは、I/Oサブシステム106の光センサコントローラ158に結合された光センサを示す。光センサ164は、電荷結合素子(CCD)又は相補型金属酸化膜半導体(CMOS)フォトトランジスタを含んでもよい。光センサ164は、1つ以上のレンズから投影される環境からの光を受け、その光を画像を表すデータに変換する。結像モジュール143(カメラモジュールとも呼ばれる)と共に、光センサ164は静止画又はビデオを撮影してもよい。いくつかの実施形態において、光センサは、タッチスクリーンディスプレイが静止画及び/又はビデオ画像を取得するためにファインダとして使用されてもよいようにデバイスの前面にあるタッチスクリーンディスプレイ112の反対側のデバイス100の裏面に配置される。いくつかの実施形態において、別の光センサは、ユーザの画像がテレビ会議のために取得されてもよく、その一方でユーザがタッチスクリーンディスプレイにおいて他のテレビ会議参加者を見れるようにデバイスの前面に配置される。
【0096】
デバイス100は、1つ以上の近接センサ166を更に含んでもよい。
図1Aは、周辺インタフェース118に結合された近接センサ166を示す。あるいは、近接センサ166は、I/Oサブシステム106の入力コントローラ160に結合されてもよい。いくつかの実施形態において、多機能デバイスがユーザの耳の近くに置かれた時(例えば、ユーザが電話をかけている時)、近接センサは、電源が落とされ、タッチスクリーン112を無効にする。
【0097】
デバイス100は、1つ以上の加速度計168を更に含んでもよい。
図1Aは、周辺インタフェース118に結合された加速度計168を示す。あるいは、加速度計168は、I/Oサブシステム106の入力コントローラ160に結合されてもよい。いくつかの実施形態において、情報は、1つ以上の加速度計から受信されるデータの解析に基づいて縦表示又は横表示でタッチスクリーンディスプレイに表示される。デバイス100は、加速度計168に加えて、デバイス100の場所及び向き(例えば、縦向き又は横向き)に関する情報を取得するために磁力計(不図示)及びGPS(あるいはGLONASS又は他のグローバルナビゲーションシステム)受信機(不図示)をオプションとして含む。
【0098】
いくつかの実施形態において、メモリ102に格納されたソフトウェアコンポーネントは、オペレーティングシステム126、通信モジュール(又は命令の集合)128、接触/動きモジュール(又は命令の集合)130、グラフィックスモジュール(又は命令の集合)132、テキスト入力モジュール(又は命令の集合)134、全地球測位システム(GPS)モジュール(又は命令の集合)135及びアプリケーション(又は命令の集合)136を含む。更にいくつかの実施形態において、
図1A及び
図3に示すように、メモリ102はデバイス/グローバル内部状態157を格納する。デバイス/グローバル内部状態157は、現在アクティブであるアプリケーションがある場合はそのアプリケーションを示すアクティブアプリケーション状態と、タッチスクリーンディスプレイ112の種々の領域を占有するアプリケーション、ビュー又は他の情報を示す表示状態と、デバイスの種々のセンサ及び入力制御デバイス116から取得される情報を含むセンサ状態と、デバイスの場所及び/又は姿勢に関する場所情報とのうちの1つ以上を含む。
【0099】
オペレーティングシステム126(例えば、Darwin、RTXC、LINUX、UNIX、OS X、WINDOWS又はVxWorks等の組み込みオペレーティングシステム)は、一般的なシステムタスク(例えば、メモリ管理、記憶装置制御、電力管理等)を制御及び管理する種々のソフトウェアコンポーネント及び/又はドライバを含み、種々のハードウェアコンポーネントとソフトウェアコンポーネントとの間の通信を容易にする。
【0100】
通信モジュール128は、1つ以上の外部ポート124を介する他のデバイス(例えば、
図4Cの適応入力デバイス482)との通信を容易にし、RF回路網108及び/又は外部ポート124により受信されたデータを処理するための種々のソフトウェアコンポーネントを更に含む。外部ポート124(例えば、USB(Universal Serial Bus)、FIREWIRE等)は、他のデバイス(例えば、
図4Cの適応入力デバイス482)に直接結合するように構成されるか、あるいはネットワーク(例えば、インターネット、無線LAN等)を介して間接的に結合するように構成される。いくつかの実施形態において、外部ポートは、iPod(アップル社(Apple Inc.)の登録商標)デバイスで使用される30ピンコネクタと同一であるか、あるいはそれに類似し且つ/又は互換性がある複数ピン(例えば、30ピン)コネクタである。
【0101】
接触/動きモジュール130は、タッチスクリーン112(ディスプレイコントローラ156と共に)及び他のタッチセンシティブデバイス(例えば、タッチパッド又は物理的なクリックホイール)との接触を検出してもよい。接触/動きモジュール130は、接触が起こったかの判定(例えば、フィンガーダウン事象の検出)、接触の移動があるかの判定及びタッチセンシティブ面にわたる移動の追跡(例えば、1つ以上のフィンガードラッグ事象の検出)、並びに接触が中止されたかの判定(例えば、フィンガーアップ事象又は接触の中断の検出)等の接触の検出に関連する種々の動作を実行するための種々のソフトウェアコンポーネントを含む。接触/動きモジュール130は、タッチセンシティブ面から接触データを受信する。一連の接触データにより表される接触点の移動を判定することは、接触点の速度(speed)(大きさ)、速度(velocity)(大きさ及び方向)及び/又は加速度(大きさ及び/又は方向の変化)を判定することを含んでもよい。これらの動作は、単一の接触(例えば、1本指の接触)又は複数の同時の接触(例えば、「マルチタッチ」/複数本指の接触)に適用されてもよい。いくつかの実施形態において、接触/動きモジュール130及びディスプレイコントローラ156は、タッチパッドに対する接触を検出する。
【0102】
接触/動きモジュール130は、ユーザにより入力されたジェスチャを検出してもよい。タッチセンシティブ面に対する種々のジェスチャは、種々の接触パターンを有する。従って、ジェスチャは、特定の接触パターンを検出することにより検出されてもよい。例えばフィンガータップジェスチャを検出することは、フィンガーダウン事象を検出し、その後フィンガーダウン事象(例えば、アイコンの位置における)と同一の位置(又はほぼ同一の位置)におけるフィンガーアップ(リフトオフ)事象を検出することを含む。別の例として、タッチセンシティブ面でフィンガースワイプジェスチャを検出することは、フィンガーダウン事象を検出し、その後1つ以上のフィンガードラッグ事象を検出し、その後フィンガーアップ(リフトオフ)事象を検出することを含む。
【0103】
グラフィックスモジュール132は、表示されるグラフィックスの明度を変更するコンポーネントを含むタッチスクリーン112又は他のディスプレイにグラフィックスをレンダリング及び表示する種々の既知のソフトウェアコンポーネントを含む。本明細書で使用されるように、「グラフィックス」という用語はユーザに対して表示されうるあらゆるオブジェクトを含み、オブジェクトはテキスト、ウェブページ、アイコン(ソフトキーを含むユーザインタフェースオブジェクト等)、デジタル画像、ビデオ及びアニメーション等を含むがこれらに限定されない。
【0104】
いくつかの実施形態において、グラフィックスモジュール132は、使用されるグラフィックスを表すデータを格納する。各グラフィックスは対応するコードに割り当てられてもよい。グラフィックスモジュール132は、必要に応じて座標データ及び他のグラフィックスプロパティデータと共に表示されるグラフィックスを特定する1つ以上のコードをアプリケーション等から受信し、ディスプレイコントローラ156に出力するためにスクリーン画像データを生成する。
【0105】
グラフィックスモジュール132の構成要素であってもよいテキスト入力モジュール134は、種々のアプリケーション(例えば、連絡先137、電子メール140、IM141、ブラウザ147及びテキスト入力を必要とする他のあらゆるアプリケーション)にテキストを入力するためのソフトキーボードを提供する。
【0106】
GPSモジュール135は、デバイスの場所を判定し、種々のアプリケーションにおいて使用するためにその情報を提供する(例えば、場所を使用して電話をかける際に使用するために電話138に、ピクチャ/ビデオメタデータとしてカメラ143に、並びに天気ウィジェット、ローカル職業別電話帳ウィジェット及びマップ/ナビゲーションウィジェット等の場所を使用したサービスを提供するアプリケーションに)。
【0107】
アプリケーション136は、以下のモジュール(又は命令の集合)、あるいはそれらの部分集合又は上位集合を含んでもよい。
【0108】
・連絡先モジュール137(電話帳又は連絡先リストと呼ばれる場合がある)
・電話モジュール138
・テレビ会議モジュール139
・電子メールクライアントモジュール140
・インスタントメッセージング(IM)モジュール141
・ワークアウトサポートモジュール142
・静止画及び/又はビデオ画像のためのカメラモジュール143
・画像管理モジュール144
・ブラウザモジュール147
・カレンダモジュール148
・天気ウィジェット149−1、株価ウィジェット149−2、計算機ウィジェット149−3、アラーム時計ウィジェット149−4、辞書ウィジェット149−5及びユーザにより取得された他のウィジェット、並びにユーザ作成ウィジェット149−6のうちの1つ以上の含んでもよいウィジェットモジュール149
・ユーザ作成ウィジェット149−6を作成するウィジェットクリエータモジュール150
・検索モジュール151
・ビデオプレーヤモジュール及び音楽プレーヤモジュールから構成されてもよいビデオ及び音楽プレーヤモジュール152
・メモモジュール153
・マップモジュール154及び/又は
・オンラインビデオモジュール155
メモリ102に格納されてもよい他のアプリケーション136の例は、他のワードプロセシングアプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、JAVA対応アプリケーション、暗号化、デジタル権利管理、音声認識及び音声複製を含む。
【0109】
タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132及びテキスト入力モジュール134と共に、連絡先モジュール137は、電話帳又は連絡先リスト(例えば、メモリ102又はメモリ370中の連絡先モジュール137のアプリケーション初期状態192に格納された)を管理するために使用されてもよい。これは、電話帳に名前を追加すること、電話帳から名前を削除すること、電話番号、電子メールアドレス、住所又は他の情報を名前と関連付けること、画像を名前と関連付けること、名前を分類及びソートすること、並びに電話138、テレビ会議139、電子メール140又はIM141による通信を開始及び/又は容易にするために電話番号又は電子メールアドレスを提供すること等を含む。
【0110】
RF回路網108、オーディオ回路網110、スピーカ111、マイク113、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132及びテキスト入力モジュール134と共に、電話モジュール138は、電話番号に対応する文字列を入力したり、電話帳137の1つ以上の電話番号にアクセスしたり、入力されている電話番号を修正したり、各電話番号をダイヤルしたり、会話をしたり、且つ会話が完了した時に切断するか又は電話を切ったりするために使用されてもよい。上述したように、無線通信は、複数の通信規格、プロトコル及び技術のうちのいずれかを使用してもよい。
【0111】
RF回路網108、オーディオ回路網110、スピーカ111、マイク113、タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134、連絡先リスト137及び電話モジュール138と共に、テレビ会議モジュール139は、ユーザ命令に従ってユーザと1人以上の他の参加者との間のテレビ会議を開始、実行及び終了する実行可能な命令を含む。
【0112】
RF回路網108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132及びテキスト入力モジュール134と共に、電子メールクライアントモジュール140は、ユーザ命令に応じて電子メールを作成、送出、受信及び管理する実行可能な命令を含む。画像管理モジュール144と共に、電子メールクライアントモジュール140は、カメラモジュール143で撮影された静止画又はビデオ画像を含む電子メールの作成及び送出を非常に容易にする。
【0113】
RF回路網108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132及びテキスト入力モジュール134と共に、インスタントメッセージングモジュール141は、インスタントメッセージに対応する文字列を入力したり、以前に入力された文字を修正したり、各インスタントメッセージを送信したり(例えば、電話技術を使用したインスタントメッセージに対してショートメッセージサービス(SMS)プロトコル又はマルチメディアメッセージサービス(MMS)プロトコルを使用するか、あるいはインターネットを使用したインスタントメッセージに対してXMPP、SIMPLE又はIMPSを使用して)、インスタントメッセージを受信したり、受信したインスタントメッセージを閲覧したりする実行可能な命令を含む。いくつかの実施形態において、送信及び/又は受信したインスタントメッセージは、MMS及び/又は拡張メッセージングサービス(EMS)でサポートされるようなグラフィックス、写真、オーディオファイル、ビデオファイル及び/又は他の添付ファイルを含んでもよい。本明細書で使用されるように、「インスタントメッセージング」は、電話技術を使用したメッセージ(例えば、SMS又はMMSを使用して送出されたメッセージ)及びインターネットを使用したメッセージ(例えば、XMPP、SIMPLE又はIMPSを使用して送出されたメッセージ)を示す。
【0114】
RF回路網108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134、GPSモジュール135、マップモジュール154及び音楽プレーヤモジュール146と共に、ワークアウトサポートモジュール142は、ワークアウト(例えば、時間、距離及び/又はカロリー燃焼目標を含む)を作成したり、ワークアウトセンサ(スポーツデバイス)と通信したり、ワークアウトセンサデータを受信したり、ワークアウトを監視するために使用されるセンサを校正したり、ワークアウトのための音楽を選択及び再生したり、並びにワークアウトデータを表示、格納及び送信したりする実行可能な命令を含む。
【0115】
タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触モジュール130、グラフィックスモジュール132及び画像管理モジュール144と共に、カメラモジュール143は、静止画又はビデオ(ビデオストリームを含む)を撮影してそれらをメモリ102に格納したり、静止画又はビデオの特性を修正したり、あるいは静止画又はビデオをメモリ102から削除したりする実行可能な命令を含む。
【0116】
タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134及びカメラモジュール143と共に、画像管理モジュール144は、静止画及び/又はビデオ画像を整理、修正(例えば、編集)、あるいは操作、ラベル付け、削除、プレゼンテーション(例えば、デジタルスライドショー又はアルバムにおいて)及び格納する実行可能な命令を含む。
【0117】
RF回路網108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132及びテキスト入力モジュール134と共に、ブラウザモジュール147は、ウェブページ又はその一部分、並びにウェブページにリンクされた添付ファイル及び他のファイルを検索、リンク、受信及び表示することを含むユーザ命令に従ってインターネットをブラウズする実行可能な命令を含む。
【0118】
RF回路網108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134、電子メールクライアントモジュール140及びブラウザモジュール147と共に、カレンダモジュール148は、ユーザ命令に従ってカレンダ及びカレンダと関連付けられたデータ(例えば、カレンダエントリ、to doリスト等)を作成、表示、修正及び格納する実行可能な命令を含む。
【0119】
RF回路網108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134及びブラウザモジュール147と共に、ウィジェットモジュール149は、ユーザによりダウンロード及び使用されてもよいミニアプリケーション(例えば、天気ウィジェット149−1、株価ウィジェット149−2、計算機ウィジェット149−3、アラーム時計ウィジェット149−4及び辞書ウィジェット149−5)、あるいはユーザにより作成されてもよいミニアプリケーション(例えば、ユーザ作成ウィジェット149−6)である。いくつかの実施形態において、ウィジェットは、HTML(ハイパーテキストマークアップ言語)ファイル、CSS(カスケーディングスタイルシート)ファイル及びJavaScriptファイルを含む。いくつかの実施形態において、ウィジェットは、XML(拡張マークアップ言語)ファイル及びJavaScriptファイル(例えば、Yahoo!ウィジェット)を含む。
【0120】
RF回路網108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134及びブラウザモジュール147と共に、ウィジェットクリエータモジュール150は、ウィジェットを作成するためにユーザにより使用されてもよい(例えば、ウェブページのユーザ指定の部分をウィジェットにする)。
【0121】
タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132及びテキスト入力モジュール134と共に、検索モジュール151は、ユーザ命令に従って1つ以上の検索基準(例えば、1つ以上のユーザ指定の検索語)に一致するメモリ102中のテキスト、音楽、サウンド、画像、ビデオ及び/又は他のファイルを検索する実行可能な命令を含む。
【0122】
タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、オーディオ回路網110、スピーカ111、RF回路網108及びブラウザモジュール147と共に、ビデオ及び音楽プレーヤモジュール152は、録音された音楽及びMP3ファイル又はAACファイル等の1つ以上のファイル形式で格納された他のサウンドファイルをユーザがダウンロード及び再生することを可能にする実行可能な命令、並びにビデオを表示、プレゼンテーション又は再生する(例えば、タッチスクリーン112又は外部ポート124を介して接続された外部ディスプレイにおいて)実行可能な命令を含む。いくつかの実施形態において、デバイス100は、iPod(アップル社(Apple Inc.)の登録商標)等のMP3プレーヤの機能性を含んでもよい。
【0123】
タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132及びテキスト入力モジュール134と共に、メモモジュール153は、ユーザ命令に従ってメモ及びto doリスト等を作成及び管理する実行可能な命令を含む。
【0124】
RF回路網108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134、GPSモジュール135及びブラウザモジュール147と共に、マップモジュール154は、ユーザ命令に従ってマップ及びマップと関連付けられたデータ(例えば、走行方向、特定の場所又はその近くの店舗及び他の地点情報に関するデータ、並びに他の場所に基づくデータ)を受信、表示、修正及び格納するために使用されてもよい。
【0125】
タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、オーディオ回路網110、スピーカ111、RF回路網108、テキスト入力モジュール134、電子メールクライアントモジュール140及びブラウザモジュール147と共に、オンラインビデオモジュール155は、ユーザが特定のオンラインビデオへのリンクを含む電子メールにアクセスし、それをブラウズ、受信(例えば、ストリーミング及び/又はダウンロードすることにより)、再生(例えば、タッチスクリーン又は外部ポート124を介して接続された外部ディスプレイにおいて)、送出し、あるいはH.264等の1つ以上のファイル形式でオンラインビデオを管理することを可能にする命令を含む。いくつかの実施形態において、特定のオンラインビデオへのリンクを送出するために、電子メールクライアントモジュール140ではなくインスタントメッセージングモジュール141が使用される。
【0126】
上記の識別されたモジュール及びアプリケーションの各々は、上述した1つ以上の機能及び本出願で説明された方法(例えば、コンピュータにより実現される方法及び本明細書で説明する他の情報処理方法)を実行する実行可能な命令の集合に対応する。これらのモジュール(すなわち、命令の集合)は、独立したソフトウェアプログラム、手順又はモジュールとして実現される必要はないため、種々の実施形態においてこれらのモジュールの種々の部分集合が組み合わされてもよく、あるいは再構成されてもよい。いくつかの実施形態において、メモリ102は、上記で識別されたモジュール及びデータ構造の部分集合を格納してもよい。更にメモリ102は、上述されていない追加のモジュール及びデータ構造を格納してもよい。
【0127】
いくつかの実施形態において、デバイス100は、デバイスにおける所定の機能の集合の動作がタッチスクリーン及び/又はタッチパッドを介して排他的に実行されるデバイスである。デバイス100の動作に対する主な入力制御デバイスとしてタッチスクリーン及び/又はタッチパッドを使用することにより、デバイス100における物理的な入力制御デバイス(例えば、押しボタン及びダイヤル等)の数が減少されてもよい。
【0128】
タッチスクリーン及び/又はタッチパッドを介して排他的に実行されてもよい所定の機能の集合は、ユーザインタフェース間のナビゲーションを含む。いくつかの実施形態において、タッチパッドは、ユーザによりタッチされた時にデバイス100に表示されてもよいあらゆるユーザインタフェースからメインメニュー、ホームメニュー又はルートメニューにデバイス100を操作する。そのような実施形態において、タッチパッドは「メニューボタン」と呼ばれてもよい。いくつかの他の実施形態において、メニューボタンは、タッチパッドではなく物理的な押しボタン又は他の物理的な入力制御デバイスであってもよい。
【0129】
図1Bは、いくつかの実施形態に係る事象処理のための例示的な構成要素を示すブロック図である。いくつかの実施形態において、メモリ102(
図1Aの)又はメモリ370(
図3)は、事象ソータ170(例えば、オペレーティングシステム126における)及び各アプリケーション136−1(例えば、上述したアプリケーション137〜151、155、380〜390のうちのいずれか)を含む。
【0130】
事象ソータ170は、事象情報を受信し、アプリケーション136−1及び事象情報の配信先となるアプリケーション136−1のアプリケーションビュー191を判定する。事象ソータ170は、事象モニタ171及び事象ディスパッチャモジュール174を含む。いくつかの実施形態において、アプリケーション136−1はアプリケーション内部状態192を含み、これは、アプリケーションがアクティブであるか又は実行している時にタッチセンシティブディスプレイ112に表示される現在のアプリケーションビューを示す。いくつかの実施形態において、デバイス/グローバル内部状態157は、現在アクティブであるアプリケーションを判定するために事象ソータ170により使用され、アプリケーション内部状態192は、事象情報の配信先となるアプリケーションビュー191を判定するために事象ソータ170により使用される。
【0131】
いくつかの実施形態において、アプリケーション内部状態192は、アプリケーション136−1が実行を再開する時に使用される再開情報と、表示されている情報を示すか又はアプリケーション136−1による表示の準備が整っているユーザインタフェース状態情報と、ユーザが前の状態又はアプリケーション136−1のビューに戻ることを可能にする状態キューと、ユーザにより行われた前の動作のリドゥ/アンドゥキューとのうちの1つ以上等の追加の情報を含む。
【0132】
事象モニタ171は、周辺インタフェース118から事象情報を受信する。事象情報は、サブ事象(例えば、マルチタッチジェスチャの一部分であるタッチセンシティブディスプレイ112に対するユーザタッチ)に関する情報を含む。周辺インタフェース118は、近接センサ166等のセンサ、加速度計168及び/又はマイク113、あるいはI/Oサブシステム106から受信する(オーディオ回路網110を介して)情報を送信する。周辺インタフェース118がI/Oサブシステム106から受信する情報は、タッチセンシティブディスプレイ112又はタッチセンシティブ面からの情報を含む。
【0133】
いくつかの実施形態において、事象モニタ171は、所定の間隔で周辺インタフェース118に要求を送出する。それに応じて、周辺インタフェース118は事象情報を送信する。他の実施形態において、周辺インタフェース118は、重要な事象(例えば、所定の雑音閾値より高く且つ/又は所定の期間より長い期間の入力の受信)があった時にのみ事象情報を送信する。
【0134】
いくつかの実施形態において、事象ソータ170は、ヒットビュー判定モジュール172及び/又はアクティブ事象レコグナイザ判定モジュール173を更に含む。
【0135】
ヒットビュー判定モジュール172は、タッチセンシティブディスプレイ112が2つ以上のビューを表示した時にサブ事象が行われた1つ以上のビュー内の場所を判定するソフトウェア手順を提供する。ビューは、ユーザがディスプレイで見ることのできるコントロール及び他の要素から構成される。
【0136】
アプリケーションと関連付けられたユーザインタフェースの別の態様は、本明細書においてアプリケーションビュー又はユーザインタフェースウィンドウと呼ばれる場合があるビューの集合であり、このビューにおいて、情報が表示され且つタッチジェスチャが発生する。タッチが検出されるアプリケーションビュー(各アプリケーションの)は、アプリケーションのプログラム階層又はビュー階層内のプログラムレベルに対応してもよい。例えばタッチが検出される最下位レベルのビューはヒットビューと呼ばれてもよく、適切な入力として認識される事象の集合は、タッチジェスチャを開始する最初のタッチのヒットビューに少なくとも部分的に基づいて判定されてもよい。
【0137】
ヒットビュー判定モジュール172は、タッチジェスチャのサブ事象に関連する情報を受信する。アプリケーションが階層に編成された複数のビューを有する場合、ヒットビュー判定モジュール172は、サブ事象を処理すべき階層の最下位のビューとしてヒットビューを識別する。殆どの状況において、ヒットビューは、開始サブ事象(すなわち、事象又は潜在的な事象を形成するサブ事象のシーケンスの第1のサブ事象)が発生する最下位レベルのビューである。ヒットビューは、ヒットビュー判定モジュールにより識別されると、一般に、ヒットビューとして識別された同一のタッチ又は入力ソースに関連する全てのサブ事象を受信する。
【0138】
アクティブ事象レコグナイザ判定モジュール173は、特定のサブ事象のシーケンスを受信すべきであるビュー階層内の1つ以上のビューを判定する。いくつかの実施形態において、アクティブ事象レコグナイザ判定モジュール173は、ヒットビューのみが特定のサブ事象のシーケンスを受信すべきであると判定する。他の実施形態において、アクティブ事象レコグナイザ判定モジュール173は、サブ事象の物理的な場所を含む全てのビューが能動的に関わるビューであると判定するため、能動的に関わる全てのビューが特定のサブ事象のシーケンスを受信すべきであると判定する。他の実施形態において、タッチサブ事象が1つの特定のビューと関連付けられた領域に全体的に制限された場合でも、階層の上位レベルのビューは能動的に関わるビューとして依然として存在する。
【0139】
事象ディスパッチャモジュール174は、事象情報を事象レコグナイザ(例えば、事象レコグナイザ180)にディスパッチする。アクティブ事象レコグナイザ判定モジュール173を含む実施形態において、事象ディスパッチャモジュール174は、アクティブ事象レコグナイザ判定モジュール173により判定された事象レコグナイザに事象情報を配信する。いくつかの実施形態において、事象ディスパッチャモジュール174は、各事象受信部モジュール182により検索される事象情報を事象キューに格納する。
【0140】
いくつかの実施形態において、オペレーティングシステム126は事象ソータ170を含む。あるいは、アプリケーション136−1は事象ソータ170を含む。更に他の実施形態において、事象ソータ170は、スタンドアロンモジュールであるか、あるいは接触/動きモジュール130等のメモリ102に格納された別のモジュールの一部分である。
【0141】
いくつかの実施形態において、アプリケーション136−1は、複数の事象ハンドラ190及び1つ以上のアプリケーションビュー191を含む。各アプリケーションビューは、アプリケーションのユーザインタフェースの各ビュー内で発生するタッチ事象を処理する命令を含む。アプリケーション136−1の各アプリケーションビュー191は、1つ以上の事象レコグナイザ180を含む。一般に、各アプリケーションビュー191は複数の事象レコグナイザ180を含む。他の実施形態において、1つ以上の事象レコグナイザ180は、ユーザインタフェースキット(不図示)又はアプリケーション136−1がメソッド及び他のプロパティを継承する上位レベルのオブジェクト等の独立したモジュールの一部分である。いくつかの実施形態において、各事象ハンドラ190は、データ更新部176、オブジェクト更新部177、GUI更新部178及び/又は事象ソータ170から受信した事象データ179のうちの1つ以上を含む。事象ハンドラ190は、データ更新部176、オブジェクト更新部177又はGUI更新部178を利用するか又は呼び出して、アプリケーション内部状態192を更新してもよい。あるいは、1つ以上のアプリケーションビュー191は、1つ以上の各事象ハンドラ190を含む。また、いくつかの実施形態において、データ更新部176、オブジェクト更新部177及びGUI更新部178のうちの1つ以上が各アプリケーションビュー191に含まれる。
【0142】
各事象レコグナイザ180は、事象ソータ170から事象情報(例えば、事象データ179)を受信し、事象情報から事象を識別する。事象レコグナイザ180は、事象受信部182及び事象比較部184を含む。いくつかの実施形態において、事象レコグナイザ180は、メタデータ183及び事象配信命令188(サブ事象配信命令を含んでもよい)の少なくとも部分集合を更に含む。
【0143】
事象受信部182は、事象ソータ170から事象情報を受信する。事象情報は、サブ事象、例えばタッチ又はタッチの移動に関する情報を含む。サブ事象に依存して、事象情報は、サブ事象の場所等の追加の情報を更に含む。サブ事象がタッチの動きに関係する場合、事象情報は、サブ事象の速度及び方向を更に含んでもよい。いくつかの実施形態において、事象は1つの向きから別の向き(例えば、縦向きから横向き又は横向きから縦向き)へのデバイスの回転を含み、事象情報は、デバイスの現在の向き(デバイスの態勢とも呼ばれる)に関する対応する情報を含む。
【0144】
事象比較部184は、事象情報を所定の事象定義又はサブ事象定義と比較し、その比較に基づいて、事象又はサブ事象を判定するか、あるいは事象又はサブ事象の状態を判定又は更新する。いくつかの実施形態において、事象比較部184は事象定義186を含む。事象定義186は、例えば事象1(187−1)及び事象2(187−2)等である事象(例えば、所定のサブ事象のシーケンス)の定義を含む。いくつかの実施形態において、事象187のサブ事象は、例えばタッチの開始、タッチの終了、タッチの移動、タッチの取り消し及び複数のタッチを含む。一例において、事象1(187−1)の定義は、表示されたオブジェクトに対するダブルタップである。例えばダブルタップは、所定のフェーズに対する表示オブジェクトへの第1のタッチ(タッチの開始)と、所定のフェーズに対する第1のリフトオフ(タッチの終了)と、所定のフェーズに対する表示オブジェクトへの第2のタッチ(タッチの開始)と、所定のフェーズに対する第2のリフトオフ(タッチの終了)とを含む。別の例において、事象2(187−2)の定義は、表示オブジェクトに対するドラッグである。例えばドラッグは、所定のフェーズに対する表示オブジェクトへのタッチ(又は接触)と、タッチセンシティブディスプレイ112にわたるタッチの移動と、タッチのリフトオフ(タッチの終了)とを含む。いくつかの実施形態において、事象は1つ以上の関連する事象ハンドラ190に対する情報を更に含む。
【0145】
いくつかの実施形態において、事象定義187は、各ユーザインタフェースオブジェクトに対する事象の定義を含む。いくつかの実施形態において、事象比較部184は、サブ事象と関連付けられるユーザインタフェースオブジェクトを判定するためにヒットテストを実行する。例えば3つのユーザインタフェースオブジェクトがタッチセンシティブディスプレイ112に表示されるアプリケーションビューにおいて、タッチがタッチセンシティブディスプレイ112で検出された時、事象比較部184は、3つのユーザインタフェースオブジェクトのうちどのユーザインタフェースオブジェクトがタッチ(サブ事象)と関連付けられるかを判定するためにヒットテストを実行する。各表示オブジェクトが各事象ハンドラ190と関連付けられる場合、事象比較部は、ヒットテストの結果を使用して、起動されるべき事象ハンドラ190を判定する。例えば事象比較部184は、ヒットテストをトリガするオブジェクト及びサブ事象と関連付けられた事象ハンドラを選択する。
【0146】
いくつかの実施形態において、各事象187の定義は、サブ事象のシーケンスが事象レコグナイザの事象の種類に対応するか否かを判定するまで事象情報の配信を遅延させる遅延動作を更に含む。
【0147】
各事象レコグナイザ180は、一連のサブ事象が事象定義186のいずれの事象とも一致しないと判定した場合、事象不可能状態、事象失敗状態又は事象終了状態になり、その後、タッチジェスチャの後続のサブ事象を無視する。この状況において、ヒットビューに対してアクティブのままである他の事象レコグナイザがある場合、それらの事象レコグナイザは実行中のタッチジェスチャのサブ事象を追跡及び処理し続ける。
【0148】
いくつかの実施形態において、各事象レコグナイザ180は、事象配信システムが能動的に関わる事象レコグナイザへのサブ事象配信を実行すべきである方法を示す設定可能なプロパティ、フラグ及び/又はリストを有するメタデータ183を含む。いくつかの実施形態において、メタデータ183は、事象レコグナイザが互いに対話してもよい方法を示す設定可能なプロパティ、フラグ及び/又はリストを含む。いくつかの実施形態において、メタデータ183は、サブ事象がビュー階層又はプログラム階層の種々のレベルに配信されるかを示す設定可能なプロパティ、フラグ及び/又はリストを含む。
【0149】
いくつかの実施形態において、各事象レコグナイザ180は、事象の1つ以上の特定のサブ事象が認識された時に事象と関連付けられた事象ハンドラ190を起動する。いくつかの実施形態において、各事象レコグナイザ180は、事象と関連付けられた事象情報を事象ハンドラ190に配信する。事象ハンドラ190を起動することは、各ヒットビューへのサブ事象の送出(及び遅延された送出)とは異なる。いくつかの実施形態において、事象レコグナイザ180は、認識された事象と関連付けられたフラグをスローし、フラグと関連付けられた事象ハンドラ190は、フラグをキャッチして所定の処理を実行する。
【0150】
いくつかの実施形態において、事象配信命令188は、事象ハンドラを起動することなくサブ事象に関する事象情報を配信するサブ事象配信命令を含む。その代わりに、サブ事象配信命令は、一連のサブ事象と関連付けられた事象ハンドラ又は能動的に関わるビューに事象情報を配信する。一連のサブ事象又は能動的に関わるビューと関連付けられた事象ハンドラは、事象情報を受信し、所定の処理を実行する。
【0151】
いくつかの実施形態において、データ更新部176は、アプリケーション136−1で使用されるデータを作成及び更新する。例えばデータ更新部176は、連絡先モジュール137で使用される電話番号を更新するか、あるいはビデオプレーヤモジュール145で使用されるビデオファイルを格納する。いくつかの実施形態において、オブジェクト更新部177は、アプリケーション136−1で使用されるオブジェクトを作成及び更新する。例えばオブジェクト更新部176は、新しいユーザインタフェースオブジェクトを作成するか、あるいはユーザインタフェースオブジェクトの位置を更新する。GUI更新部178はGUIを更新する。例えばGUI更新部178は、表示情報を準備し、タッチセンシティブディスプレイに表示するためにその情報をグラフィックスモジュール132に送出する。
【0152】
いくつかの実施形態において、事象ハンドラ190は、データ更新部176、オブジェクト更新部177及びGUI更新部178を含むか又はそれらへのアクセス権を有する。いくつかの実施形態において、データ更新部176、オブジェクト更新部177及びGUI更新部178は、アプリケーションビュー191又は各アプリケーション136−1の単一のモジュールに含まれる。他の実施形態において、それらは2つ以上のソフトウェアモジュールに含まれる。
【0153】
タッチセンシティブディスプレイに対するユーザタッチの事象処理に関する上記説明は、入力デバイスを含む多機能デバイス100を動作させるための他の形式のユーザ入力にも当てはまり、ユーザ入力の全てがタッチスクリーン上で開始されるわけではなく、例えば認識される事象を定義するサブ事象に対応する入力として利用されてもよいジョイスティック又はマウスの移動及びボタンの押下、単一又は複数のキーボードの押下あるいは保持、タッチパッドにおけるユーザの移動、タップ、ドラッグ、スクロール等、ペンスタイラスの入力、デバイスの移動、音声命令、検出された眼球運動、バイオメトリック入力、並びに/あるいはそれらの組み合わせを連携することが理解される。
【0154】
図2は、いくつかの実施形態に係るタッチスクリーン112を有するポータブル多機能デバイス100を示す。タッチスクリーンは、ユーザインタフェース(UI)200内に1つ以上のグラフィックスを表示してもよい。本実施形態及び以下に説明する他の実施形態において、ユーザは、例えば1本以上の指202(図中、縮尺通りに描かれていない)又は1つ以上のスタイラス203(図中、縮尺通りに描かれていない)を使用してグラフィックスに対してジェスチャを実行することにより1つ以上のグラフィックスを選択してもよい。いくつかの実施形態において、ユーザが1つ以上のグラフィックスとの接触を中断した時、1つ以上のグラフィックスの選択が行われる。いくつかの実施形態において、ジェスチャは、1つ以上のタップ、1つ以上のスワイプ(左から右、右から左、上方向及び/又は下方向)、並びに/あるいはデバイス100と接触した指の回転(右から左、左から右、上方向及び/又は下方向)等のジェスチャを含む。いくつかの実施形態において、グラフィックスとの不注意による接触はそのグラフィックスを選択しなくてもよい。例えば選択に対応するジェスチャがタップである場合、アプリケーションアイコン上を移動するスワイプジェスチャは、対応するアプリケーションを選択しなくてもよい。
【0155】
デバイス100は、「ホーム」又はメニューボタン204等の1つ以上の物理的なボタンを更に含んでもよい。上述したように、メニューボタン204は、デバイス100上で実行されてもよいアプリケーションの集合のいずれのアプリケーション136に操作するために使用されてもよい。あるいは、いくつかの実施形態において、メニューボタンは、タッチスクリーン112に表示されたGUIのソフトキーとして実現される。
【0156】
一実施形態において、デバイス100は、タッチスクリーン112、メニューボタン204、デバイスの電源をON/OFFにし且つデバイスをロックするための押しボタン206、音量調整ボタン208、加入者識別モジュール(SIM)カードスロット210、ヘッドセットジャック212及びドッキング/充電外部ポート124を含む。押しボタン206は、ボタンを押下し且つ押下状態で所定の時間間隔の間ボタンを保持することによりデバイスの電源をON/OFFし、ボタンを押下し且つ所定の時間間隔が経過する前にボタンを解放することによりデバイスをロックし、且つ/あるいはデバイスをアンロック又はアンロック処理を開始するために使用されてもよい。別の一実施形態において、デバイス100は、マイク113を介していくつかの機能の起動又は停止のための音声入力を更に受け付けてもよい。
【0157】
図3は、いくつかの実施形態に係るディスプレイ及びタッチセンシティブ面を有する例示的な多機能デバイスを示すブロック図である。デバイス300は携帯可能である必要はない。いくつかの実施形態において、デバイス300は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディアプレーヤデバイス、ナビゲーションデバイス、教育デバイス(子供の学習玩具等)、ゲームシステム又は制御デバイス(例えば、家庭用又は産業用コントローラ)である。一般にデバイス300は、1つ以上の処理ユニット(CPU)310、1つ以上のネットワーク又は他の通信インタフェース360、メモリ370及びそれら構成要素を相互接続する1つ以上の通信バス320を含む。通信バス320は、システム構成要素間の通信を相互接続及び制御する回路網(チップセットと呼ばれる場合がある)を含んでもよい。デバイス300は、一般にタッチスクリーンディスプレイであるディスプレイ340を含む入出力(I/O)インタフェース330を含む。I/Oインタフェース330は、キーボード及び/又はマウス(又は他のポインティングデバイス)350、並びにタッチパッド355を更に含んでもよい。メモリ370は、DRAM、SRAM、DDR RAM又は他のランダムアクセス固体メモリ素子等の高速ランダムアクセスメモリを含み、1つ以上の磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリ素子又は他の不揮発性固体記憶装置等の不揮発性メモリを含んでもよい。メモリ370は、CPU310から遠隔地に配置された1つ以上の記憶装置をオプションとして含んでもよい。いくつかの実施形態において、メモリ370は、ポータブル多機能デバイス100(
図1)のメモリ102に格納されたプログラム、モジュール及びデータ構造に類似するプログラム、モジュール及びデータ構造、あるいはそれらの部分集合を格納する。更にメモリ370は、ポータブル多機能デバイス100のメモリ102に存在しない追加のプログラム、モジュール及びデータ構造を格納してもよい。例えばデバイス300のメモリ370は、描画モジュール380、プレゼンテーションモジュール382、ワードプロセシングモジュール384、ウェブサイト作成モジュール386、ディスクオーサリングモジュール388及び/又はスプレッドシートモジュール390を格納してもよいが、その一方でポータブル多機能デバイス100(
図1)のメモリ102はそれらモジュールを格納してもしなくてもよい。
【0158】
図3の上記で識別された各要素は、上述した1つ以上のメモリ素子に格納されてもよい。上記で識別された各モジュールは、上述した機能を実行する命令の集合に対応する。上記で識別されたモジュール又はプログラム(すなわち、命令の集合)は、独立したソフトウェアプログラム、手順又はモジュールとして実現される必要はなく、種々の実施形態において、それらモジュールの種々の部分集合は組み合わされてもよく又は再構成されてもよい。いくつかの実施形態において、メモリ370は、上記で識別されたモジュール及びデータ構造の部分集合を格納してもよい。更にメモリ370は、上述されていない追加のモジュール及びデータ構造を格納してもよい。
【0159】
次に、ポータブル多機能デバイス100で実現されてもよいユーザインタフェース(「UI」)の実施形態に注目する。
【0160】
図4Aは、いくつかの実施形態に係るポータブル多機能デバイス100のアプリケーションのメニューに対する例示的なユーザインタフェースを示す。同様のユーザインタフェースがデバイス300において実現されてもよい。いくつかの実施形態において、ユーザインタフェース400は、以下の要素、あるいはそれらの部分集合又は上位集合を含む。
【0161】
・セルラ信号及びWi−Fi信号等の無線通信に対する信号強度標識402
・時間404
・Bluetooth標識405
・バッテリ状態標識406
・以下のような頻繁に使用されるアプリケーションのアイコンを含むトレイ408
*応答できなかった通話又はボイスメールメッセージの数の標識414を含んでもよい電話138
*未読の電子メールの数の標識410を含んでもよい電子メールクライアント140
*ブラウザ147
*iPod(アップル社(Apple Inc.)の登録商標)モジュール152とも呼ばれるビデオ及び音楽プレーヤ152
・他のアプリケーションに対するアイコン、例えば、
*IM141
*画像管理144
*カメラ143
*天気149−1
*株価149−2
*ワークアウトサポート142
*カレンダ148
*アラーム時計149−4
*マップ154
*メモ153
*デバイス100及びその種々のアプリケーション136に対する設定へのアクセス権を提供する設定412
*YouTube(グーグル社(Google Inc.)の登録商標)モジュール155とも呼ばれるオンラインビデオモジュール155
図4Bは、ディスプレイ450(例えば、タッチスクリーンディスプレイ112)とは異なるタッチセンシティブ面451(例えば、
図3のタブレット又はタッチパッド355)を有するデバイス(例えば、
図3のデバイス300)における例示的なユーザインタフェースを示す。以下の多くの例がタッチスクリーンディスプレイ112(タッチセンシティブ面及びディスプレイが組み合わされる)における入力を参照して与えられるが、いくつかの実施形態において、デバイスは
図4Bに示すようにディスプレイとは異なるタッチセンシティブ面で入力を検出する。いくつかの実施形態において、タッチセンシティブ面(例えば、
図4Bの451)は、ディスプレイ(例えば、450)における主軸(例えば、
図4Bの453)に対応する主軸(例えば、
図4Bの452)を有する。これらの実施形態によると、デバイスは、ディスプレイ上の各場所に対応する場所(例えば、
図4Bにおいて、460は468に対応し、462は470に対応する)におけるタッチセンシティブ面451との接触(例えば、
図4Bの460及び462)を検出する。このように、タッチセンシティブ面(例えば、
図4Bの451)においてデバイスにより検出されたユーザ入力(例えば、接触460及び462、並びにそれらの移動)は、タッチセンシティブ面がディスプレイとは異なる場合に多機能デバイスのディスプレイ(例えば、
図4Bの450)上のユーザインタフェースを操作するためにデバイスにより使用される。本明細書で説明する他のユーザインタフェースに対して同様の方法が使用されてもよいことが理解されるべきである。
【0162】
図4Cは、いくつかの実施形態に係る多機能デバイスに対する例示的な適応入力デバイスを示す。
図4Cにおいて、適応入力デバイス482は、ジョイスティック486と、2つのボタン488−1及び488−2とを含む。適応入力デバイス482は、有線又は無線の通信チャネル484によりタッチセンシティブ面451を有する多機能デバイス(例えば、
図1Aのデバイス100)と接続される。例えば適応入力デバイス482は、多機能デバイス100の外部ポート124にプラグ接続されてもよい。あるいは、適応入力デバイス482は、Bluetooth又はWi−Fi等の1つ以上の無線通信プロトコルを使用して多機能デバイスと接続されてもよい。
【0163】
図4Cは、いくつかの実施形態に係るタッチセンシティブ面451を有する多機能デバイス(例えば、
図1Aのデバイス100)のディスプレイに表示された例示的な視覚標識490を示す。いくつかの実施形態において、タッチセンシティブ面451は、適応入力デバイス482の主軸(例えば、
図4Cの454)に対応する主軸(例えば、
図4Cの452)を有する。このように、適応入力デバイス482により受信されたユーザ入力(例えば、主軸452に沿うプッシングジョイスティック486)は、視覚標識490を移動する(例えば、主軸452に沿って)ために使用されてもよい。適応入力デバイス482上のボタン(例えば、タッピングボタン488−1又は488−2)を起動することは、タッチセンシティブ面に対するタップジェスチャ等のボタンの起動を実行する視覚標識490に配置されたユーザインタフェースオブジェクトを選択又は起動するために使用されてもよい。いくつかの実施形態において、ユーザがボタンのうちの一方(例えば、488−1又は488−2)を押下しながらジョイスティック486をプッシュする時、多機能デバイス100は、視覚標識490の場所におけるタッチセンシティブ面451にわたり移動する指の接触と同等のものとしてそのようなユーザ入力を処理する。いくつかの実施形態において、ボタンを起動することでメニューが開く。本明細書で説明する他のユーザインタフェースに対して同様の方法が使用されてもよいことが理解されるべきである。
【0164】
尚、
図4Cに示す適応入力デバイス482は、ジョイスティック486と、ボタン488−1及び488−2とを含むが、本明細書で説明する方法(例えば、トラックボール、ハンドスティック、マウススティック、ヘッドスティック及び物理的なキーボード)により、他の適応入力デバイスが使用されてもよい。本明細書で使用されるように、適応入力デバイスは、タッチセンシティブ面を使用せずにユーザ入力を受信するように構成される入力デバイスを示す。一般に適応入力デバイスは、手、眼球、脚、頭及び/又は口/舌の動き等のユーザの動きに基づいて上下左右の動き、起動事象、並びに選択事象(例えば、ボタンの起動又はタッチセンシティブ面に対するタップに等しい)を示すユーザ入力を受信する。
ユーザインタフェース及び関連する処理
次に、デバイス300又はポータブル多機能デバイス100等のディスプレイ及びタッチセンシティブ面を有する電子デバイスにおいて実現されてもよいユーザインタフェース(「UI」)及び関連する処理の実施形態に注目する。
【0165】
図5A〜
図5ACは、いくつかの実施形態に係るタッチユーザインタフェースを利用しやすくするための例示的なユーザインタフェースを示す。これらの図におけるユーザインタフェースは、
図6A〜
図6E及び
図7〜
図13における処理を含む以下に説明する処理を示すために使用される。
【0166】
図5Aは、多機能電子デバイス100のタッチスクリーン112に表示された電子メールアプリケーションの例示的なユーザインタフェース502−Aを示す。ユーザインタフェース502−Aは、電子メールメッセージの表示を含む。
図5Aには、仮想タッチ(例えば、1本指の仮想接触等のタッチスクリーン112に対する仮想タッチ)に対応する視覚標識504−1も示される。仮想タッチは、擬似タッチ(例えばデバイスは、あたかも視覚標識504−1の場所でフィンガータッチが検出されているかのように実行する)と呼ばれる場合がある。
図5Aの視覚標識504−1は、環状を含むものとして示される。あるいは、視覚標識504−1は、ドーナツ形、円形、楕円形、長円形、矢印、十字形、Iビーム、星形、あるいは仮想指(例えば、指又は手の形のアイコン)のうちの1つを含んでもよい。
【0167】
視覚標識504−1は、適応入力デバイス(例えば、
図4Cの482)からの入力に従って移動するように構成される。例えば視覚標識504−1は、適応入力デバイスからの入力に従って、ディスプレイの所定の隅等のタッチスクリーン112の所定の領域に移動してもよい(例えば、視覚標識504−1の移動506−1)。あるいは、視覚標識504−1は、左右に移動する適応入力デバイスに対する制御(例えば、ジョイスティック486)に従って左右に移動してもよい(例えば、視覚標識504−1の移動506−2)。換言すると、視覚標識504−1は、適応入力デバイスからの入力に従って上下左右及び/又は対角線状に移動してもよい。
【0168】
図5Bは、メニュー508が電子メールアプリケーションのユーザインタフェース502−Aの上に表示されることを示す。一般にメニュー508は、適応入力デバイスからの所定の入力に応じて表示される。例えばメニュー508は、タッチスクリーン112の所定の領域に移動する(例えば、ディスプレイの隅への
図5Aの移動506−1)視覚標識504−1に応じて表示されてもよい。別の例として、視覚標識504−1をディスプレイの隅に移動した後に適応入力デバイス上のボタン(例えば、
図4Cの488−1)を起動する結果、メニュー508が表示される。あるいは、視覚標識504−1が左右に移動する(例えば、
図5Aの移動506−2)結果、メニュー508が表示されてもよい。例えば、少なくとも所定の回数(例えば、2回、3回又は4回)にわたり少なくとも所定の距離(例えば、0.02インチ、0.03インチ又は0.04インチ)だけ視覚標識504−1を水平に前後に移動することにより、ボタンを起動する必要なくメニューが開く。更に別の例として、適応入力デバイス上の所定のボタン(例えば、
図4Cの488−2)を起動する結果、メニュー508が表示されてもよい。いくつかの実施形態において、
図5Bに示すように、メニュー508が最初に表示される時、視覚標識504−1はメニュー508の中心領域に位置付けられる。他の実施形態において、メニュー508が最初に表示される時、視覚標識504−1は、メニュー508が表示される前の位置を維持する。
【0169】
いくつかの実施形態において、メニュー508は、仮想タッチ選択アイコン510−1、仮想ジェスチャアイコン510−2、仮想デバイスアイコン510−3及びホームボタン510−4のうちの1つ以上を含む複数のアイコン510を含む。いくつかの実施形態において、アイコン510は、メニュー508の中心の周りに放射状に表示される(例えばアイコンは、メニュー508の中心からほぼ等しい距離に表示される)。
【0170】
図5Cにおいて、視覚標識504−1は、仮想タッチ選択アイコン510−1の上に移動する。いくつかの実施形態において、仮想タッチ選択アイコン510−1は、仮想タッチ選択アイコン510−1の上に視覚標識504−1を移動することで選択される。いくつかの実施形態において、仮想タッチ選択アイコン510−1は、仮想タッチ選択アイコン510−1の上に視覚標識504−1を移動した後に適応入力デバイス上のボタン(例えば、
図4Cの488−1)を起動することで選択される。
【0171】
図5Dは、仮想タッチ選択アイコン510−1の選択(
図5C)に応じて仮想マルチタッチ接触のメニュー512が表示されることを示す。仮想マルチタッチ接触のメニュー512は、仮想マルチタッチ接触の種類を示す複数のアイコン514(例えば、2本指の接触アイコン514−1、3本指の接触アイコン514−2、4本指の接触アイコン514−3及び5本指の接触アイコン514−4)を含む。いくつかの実施形態において、仮想マルチタッチ接触のメニュー512は、1本指の接触アイコン(不図示)を更に含む。アイコン514は、本明細書で仮想マルチタッチ接触アイコンとも呼ばれる。
図5Dは、3本指の接触アイコン514−3が視覚標識504−1により選択されることを更に示す。
【0172】
図5Eは、
図5Dにおける3本指の接触アイコン514−3の選択に応じて3つの視覚標識504−2、504−3及び504−4が表示されることを示す。
図5Eは、3つの視覚標識504−2〜504−4が左に移動する(例えば、適応入力デバイスからの入力に従って)ことを更に示す。尚、いくつかの実施形態において、タッチスクリーン112に対する3本指の左スワイプジェスチャは、現在表示されているアプリケーション(例えば、電子メールアプリケーション)とは異なる多機能デバイス100上で実行する開いているアプリケーションのユーザインタフェース(例えば、ウェブブラウザアプリケーションのユーザインタフェース502−B)を表示する。換言すると、3本指の左スワイプジェスチャは、いくつかの実施形態において、次の開いているアプリケーションへのナビゲーションを開始する。
【0173】
いくつかの実施形態において、多機能デバイス100は、3つの視覚標識504−2〜504−4の左方向の移動に応じて次の開いているアプリケーションのユーザインタフェース(例えば、ユーザインタフェース502−B)を表示するように構成される。
図5Fにおいて、ウェブブラウザアプリケーションのユーザインタフェース502−Bは、3つの視覚標識504−2〜504−4の左方向の移動に応じて示される。3つの視覚標識504−2〜504−4も
図5Fに示される。
【0174】
図5Gは、所定の期間(例えば、5秒、10秒、15秒又は何らかの適当な期間)にわたり適応入力デバイスから入力が受信されない場合、3つの視覚標識504−2〜504−4の表示が単一の視覚標識504−1の表示に置換されることを示す。いくつかの実施形態において、所定の期間は、ユーザにより設定される(例えば、不図示の設定メニューを介して)。
【0175】
図5Bと同様の
図5Hにおいて、ユーザインタフェースは、仮想タッチ選択アイコン510−1、仮想ジェスチャアイコン510−2、仮想デバイスアイコン510−3及びホームボタン510−4を有するメニュー508を含む。
図5Hにおいて、仮想ジェスチャアイコン510−2は、視覚標識504−1により選択される。
【0176】
図5Iは、仮想ジェスチャアイコン510−2の選択(
図5H)に応じて仮想ジェスチャのメニュー516が表示されることを示す。仮想ジェスチャのメニュー516は、仮想ジェスチャの種類を示す複数のアイコン518(例えば、2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1、3本指の仮想上スワイプジェスチャアイコン518−2、3本指の仮想下スワイプジェスチャアイコン518−3、ユーザ構成の仮想ジェスチャアイコン518−4、3本指の仮想左スワイプジェスチャアイコン(不図示)、3本指の仮想右スワイプジェスチャアイコン(不図示)、4本指の仮想左スワイプジェスチャアイコン(不図示)、4本指の仮想右スワイプジェスチャアイコン(不図示)、4本指の仮想上スワイプジェスチャアイコン(不図示)、4本指の仮想下スワイプジェスチャアイコン(不図示)、2本指の仮想左スワイプジェスチャアイコン(不図示)、2本指の仮想右スワイプジェスチャアイコン(不図示)、2本指の仮想上スワイプジェスチャアイコン(不図示)、2本指の仮想下スワイプジェスチャアイコン(不図示)等)を含む。本明細書で使用されるように、アイコン518は仮想ジェスチャアイコンとも呼ばれる。尚、仮想ジェスチャアイコン510−2及び各仮想ジェスチャアイコン518は別個の機能を有する。例えば、仮想ジェスチャアイコン510−2を選択することで仮想ジェスチャのメニュー516の表示を開始し、それぞれの仮想ジェスチャを選択することでそれぞれの仮想ジェスチャアイコンと関連付けられた動作の実行を開始する。
図5Iは、3本指の仮想上スワイプジェスチャアイコン518−2が選択されることを示す。
【0177】
図5Jにおいて、ユーザインタフェース502−Aの一部及びアプリケーションアイコン領域520は、3本指の仮想上スワイプジェスチャアイコン518−2の選択に応じて同時に表示されている。アプリケーションアイコン領域520は、各々が起動されると(例えば、
図5Jの視覚標識504−1を介して)対応するアプリケーションのユーザインタフェースの表示を開始する複数の開いているアプリケーションアイコン5004を含む。あるいは、ユーザインタフェース502−Aの一部及びアプリケーションアイコン領域520は、タッチスクリーン112に対する3本指の上スワイプジェスチャに応じて表示されてもよい。
【0178】
図5Kにおいて、複数のアイコン518(例えば、2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1、3本指の仮想上スワイプジェスチャアイコン518−2、3本指の仮想下スワイプジェスチャアイコン518−3、ユーザ構成の仮想ジェスチャアイコン518−4等)を含む仮想ジェスチャのメニュー516が表示される。
図5Kは、2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1が視覚標識504−1により選択されることを更に示す。
【0179】
図5Lにおいて、2つの視覚標識504−5及び504−6は、2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1の選択(
図5K)に応じて表示される。いくつかの実施形態において、2つの視覚標識504−5及び504−6は、視覚的にリンクされる(例えば、コネクタ522を用いて)。いくつかの実施形態において、2つの視覚標識504−5及び504−6の各視覚標識は、環状の表示オブジェクトを含む。環状の視覚標識は、第1のモードの視覚標識と呼ばれる場合がある(
図5Nを参照して以下に説明する第2のモードの視覚標識と比較して)。
【0180】
図5Mは、第1のモードにおいて、2つの視覚標識504−5及び504−6が適応入力デバイスからの入力に従って共に移動することを示す。更にユーザインタフェース502−Aは、2つの視覚標識504−5及び504−6の同時移動に従ってスクロールされる。
【0181】
図5Nにおいて、2つの第1のモードの視覚標識504−5及び504−6は、2つの第2のモードの視覚標識504−7及び504−8に置換される。第2のモードの視覚標識の各々は、環状の表示オブジェクト及び同心ディスク状の表示オブジェクトを含む。場合によっては、2つの第2のモードの視覚標識は、適応入力デバイス上のボタン(例えば、
図4Cの488−2)の起動に応じて表示される。
【0182】
図5Oは、適応入力デバイスからの入力に応じて、2つの第2のモードの視覚標識504−7及び504−8が第2のモードで互いに対して移動し(例えば、2つの第2のモードの視覚標識504−7と504−8との間の距離が長くなる)、且つそれに応じてユーザインタフェースが拡大される(例えば、ズームインされる)ことを示す。
【0183】
図5Pにおいて、仮想タッチ選択アイコン510−1、仮想ジェスチャアイコン510−2、仮想デバイスアイコン510−3及びホームボタン510−4を含むメニュー508が表示される。
図5Pは、仮想デバイスアイコン510−3が視覚標識504−1により選択されることを更に示す。
【0184】
図5Qにおいて、仮想デバイスの向きのメニュー524は、仮想デバイスアイコン510−3の起動(
図5P)に応じて表示される。仮想デバイス動作のメニュー524は、仮想デバイス動作の種類を示す複数のアイコン526(例えば、仮想デバイスミュート/ミュート解除アイコン526−1、仮想デバイス回転アイコン526−2、仮想デバイス振動アイコン526−3、仮想デバイスロック画面アイコン526−4、仮想デバイス音量アップアイコン526−5、仮想デバイス音量ダウンアイコン526−6、仮想回転ロックアイコン(不図示)、仮想ノックノックアイコン(不図示)等)を含む。例示的な仮想デバイス動作は、一般に電子デバイス上の物理的コントロールを介して実行される動作、例えば、一般にミュートスイッチを介して実行されるデバイス上で呼び出し音及び音響の効果をミュート及びミュート解除することと、一般にロック/ロック解除スイッチを介して開始されるデバイスをロックすることと、一般に音量アップボタンを介して実行される音量を上げることと、一般に音量ダウンボタンを介して実行される音量を下げることとを含んでもよい。例示的な仮想デバイス動作は、電子デバイスを振動させて所定の動作(例えば、取り消し動作)を実行することと、電子デバイスを回転させて表示の向きを回転させることとを更に含んでもよい。振動及び回転等の動作は、一般に、電子デバイスの加速度計を介して検出される。本明細書で使用されるように、アイコン526は、仮想デバイス動作アイコンとも呼ばれる。
図5Qは、仮想デバイス回転アイコン526−2が視覚標識504−1により選択されることを更に示す。
【0185】
図5Rは、仮想デバイス回転アイコン526−2の選択(
図5Q)に応じて仮想デバイスの向きのメニュー528が表示されることを示す。仮想デバイスの向きのメニュー528は、仮想デバイスの向き(又はデバイスの向きの回転)の種類を示す複数のアイコン530を含む。例えば仮想デバイス動作のメニュー528は、縦向きアイコン530−1、左回転向きアイコン530−2、右回転向きアイコン530−3及び上下反対回転向きアイコン530−4を含んでもよい。尚、いくつかの実施形態において、デバイスが反時計回りに約90度回転することにより、ユーザインタフェースは時計回りに90度回転する。
図5Rは、左回転向きアイコン530−2が視覚標識504−1により選択されることを更に示す。
【0186】
図5Sにおいて、ユーザインタフェースは、デバイスの実際の物理的な回転ではなく、左回転向きアイコン530−2の選択に応じて時計回りに90度回転する。
図5Sは、回転したユーザインタフェース502−Cがタッチスクリーン112に表示されることを更に示す。
【0187】
図5Tにおいて、仮想タッチ選択アイコン510−1、仮想ジェスチャアイコン510−2、仮想デバイスアイコン510−3及びホームボタン510−4を含むメニュー508が表示される。
図5Tは、ホームボタンアイコン510−4が視覚標識504−1により選択されることを更に示す。
【0188】
図5Uは、ホームボタンアイコン510−4の選択に応じてホームスクリーン502−Dが表示されることを示す。いくつかの実施形態において、ホームスクリーン502−Dは複数のアプリケーションアイコン5002を含む。
【0189】
図5Vは、いくつかの実施形態において視覚標識504−1がメニュー508に表示されないことを示す。いくつかの実施形態において、視覚標識504−1がメニュー508に表示されていない間に適応入力デバイスから入力を受信すること(例えば、
図4Cの適応入力デバイス482上のボタン488−1の起動)に応じて、メニュー508の表示を中止する。いくつかの実施形態において、所定の期間にわたり適応入力デバイスから入力が受信されない場合、メニュー508の表示を中止する。
【0190】
図5W〜
図5ACは、いくつかの実施形態に係るユーザ規定のジェスチャ(ユーザ構成のジェスチャ又はカスタムジェスチャとも呼ばれる)を作成するための例示的なユーザインタフェースを示す。
図5Wにおいて、ユーザ規定のジェスチャを作成するためのユーザインタフェースが表示される。ユーザインタフェースは、指追加ボタン532、指除去ボタン534、保存ボタン536、クリアボタン538及び完了ボタン544等の複数のユーザインタフェースオブジェクトを含む。
図5Wは、指追加ボタン532が視覚標識504−1により選択されることを更に示す。
【0191】
図5Xは、指追加ボタン532の選択に応じて、カスタムジェスチャを作成するために第1の視覚標識540−1が表示されることを示す。
【0192】
図5Yにおいて、第1の視覚標識540−1は、適応入力デバイスからの1つ以上の入力に従って移動する。
図5Yには、第1の視覚標識540−1の軌跡542−1も示される。
【0193】
図5Zは、指追加ボタン532の第2の選択に応じて、第2の視覚標識540−2が表示されることを示す。
【0194】
図5AAにおいて、第2の視覚標識540−2は、適応入力デバイスからの1つ以上の入力に従って移動する。
図5AAには、第2の視覚標識540−2の軌跡542−2も示される。視覚標識540−1及び540−2の移動を含むユーザ規定のジェスチャを格納するために、保存ボタン536が選択されてもよい。
【0195】
図5ABにおいて、複数のアイコン518(例えば、2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1、3本指の仮想上スワイプジェスチャアイコン518−2、3本指の仮想下スワイプジェスチャアイコン518−3、ユーザ規定の仮想ジェスチャアイコン518−4等)を含む仮想ジェスチャのメニュー516が表示される。
図5ABは、ユーザ規定のジェスチャアイコン518−4が視覚標識504−1により選択されることを更に示す。
【0196】
いくつかの実施形態において、ユーザが2つ以上のユーザ規定の仮想ジェスチャを格納している場合、カスタムジェスチャアイコン518−4の選択(不図示)に応じて、これらのユーザ規定の仮想ジェスチャのうちの少なくともいくつかのメニューが表示される。ユーザ規定の仮想ジェスチャのメニューの特定のユーザ規定の仮想ジェスチャを起動することにより(示されないが、例えば視覚標識504−1により)、対応する動作を実現する。一方、カスタムジェスチャアイコン518−4が単一のユーザ規定の仮想ジェスチャに対応する場合、カスタムジェスチャアイコン518−4の選択に応じて、単一のユーザ規定の仮想ジェスチャに対応する動作が実現される。例えば
図5ACは、ユーザ規定の仮想ジェスチャと関連付けられた所定の動作、すなわち
図5W〜
図5AAにおいて作成及び格納された2本指の仮想ジェスチャが実行されることを示す。いくつかの実施形態において、視覚標識540−1及び540−2のアニメーション化された移動は、ユーザ規定の仮想ジェスチャと関連付けられた所定の動作が実行される直前、実行された直後又は実行されている間にそれぞれの軌跡542−1及び542−2と共に表示される。
【0197】
図6A〜
図6Eは、いくつかの実施形態に係るタッチユーザインタフェースを利用しやすくする方法600を示すフローチャートである。方法600は、ディスプレイ及びタッチセンシティブ面を有する電子デバイス(例えば、
図3のデバイス300又は
図1のポータブル多機能デバイス100)において実行される。いくつかの実施形態において、ディスプレイはタッチスクリーンディスプレイであり、タッチセンシティブ面はディスプレイにある。いくつかの実施形態において、ディスプレイはタッチセンシティブ面とは異なる。方法600のいくつかの動作は組み合わされてもよく、且つ/又はいくつかの動作の順序は変更されてもよい。
【0198】
以下に説明するように、方法600は、手の運動技能が満足でないユーザがタッチユーザインタフェースを有するデバイスを利用しやすくする。方法により、そのようなユーザは、デバイスのタッチセンシティブ面との対話を別の方法で必要とする動作を実行できるようになる。
【0199】
デバイスは、仮想タッチ(例えば、1本指の仮想接触等のタッチセンシティブ面に対する仮想タッチ)に対応する第1の視覚標識(例えば、
図5Aの504−1)をディスプレイに表示する(602)。
【0200】
いくつかの実施形態において、第1の視覚標識は、環状(例えば、
図5Aの504−1)、ドーナツ形、円形、楕円形、長円形、矢印、十字形、Iビーム、星形又は仮想指のうちの1つを含む(604)。
【0201】
デバイスは、適応入力デバイス(例えば、
図4Cのジョイスティック486、ボタン488−1又は488−2、あるいは他のあらゆる適応入力デバイス)から第1の入力を受信する(606)。
【0202】
いくつかの実施形態において、第1の入力は、第1の視覚標識をディスプレイの所定の領域に移動する(608)。例えば、視覚標識をディスプレイの隅(例えば、所定のアクティブな画面の隅)に移動する結果、第1のメニューが表示される(例えば、
図5Aの移動506−1)。別の例として、視覚標識をディスプレイの隅に移動した後に適応入力デバイス上のボタンを起動する結果、第1のメニューが表示される。
【0203】
いくつかの実施形態において、第1の入力は、適応入力デバイス上のコントロールの起動(例えば、適応入力デバイス上の
図4Cのメニューボタン488−2等の物理的なボタンを起動すること)に対応する(610)。
【0204】
いくつかの実施形態において、第1の入力は、適応入力デバイス上のコントロールを左右に移動すること(例えば、
図4Cのジョイスティック486を左右に移動すること、あるいは手、眼球、脚、頭又は口等の身体の一部により適応入力デバイス上のコントロールを左右に移動すること)に対応する(612)。
【0205】
いくつかの実施形態において、適応入力デバイスはジョイスティック(例えば、
図4Cの486)を含み、第1の入力は、ジョイスティックを左右に移動することに対応する(614)。
【0206】
適応入力デバイスから第1の入力を受信することに応じて、デバイスは、第1のメニュー(例えば、
図5Bのメニュー508)をディスプレイに表示する(616)。第1のメニューは、仮想タッチ選択アイコン(例えば、
図5Bのアイコン510−1)を含む。仮想タッチ選択アイコンの選択を検出することに応じて、仮想マルチタッチ接触のメニューが表示される(例えば、
図5Dのメニュー512)。
【0207】
いくつかの実施形態において、第1のメニューは、第1のメニューの中心の周りに放射状に(例えば、中心の周りの同心配置)表示されたアイコンを含む(618)。例えば、
図5Bのメニュー508は、メニュー508の中心の周りに放射状に表示されたアイコン510を含む。更なる例として、本明細書で説明する他のいくつかのメニュー(例えば、
図5Dのメニュー512、
図5Iのメニュー516及び
図5Rのメニュー528)のアイコンは、対応するメニューの中心の周りに放射状に表示される。また、
図5Qのメニュー524のアイコンは、メニュー524の中心の周りに放射状に表示されてもよい。メニューのアイコンをこのように配置することにより、各アイコンは容易にアクセス可能になる。
【0208】
いくつかの実施形態において、第1のユーザインタフェース(例えば、
図5Aのユーザインタフェース502−A)は、適応入力デバイスから第1の入力を受信する直前にディスプレイに表示され、第1のメニュー(例えば、
図5Bのメニュー508)は、第1のユーザインタフェースの上に表示される(620)(例えば、半透過、半透明又は不透明なオーバレイとして)。同様に、本明細書で説明する他のメニュー(例えば、
図5Dのメニュー512、
図5Iのメニュー516、
図5Qのメニュー524及び
図5Rのメニュー528)は、下にある標準的なユーザインタフェース上の半透過、半透明又は不透明なオーバレイとして表示されてもよい。これらのオーバレイメニューは、標準的なユーザインタフェースを使用したデバイスの制御に非常に類似する適応入力デバイスを介した電子デバイスの制御を行うことを補助する。
【0209】
いくつかの実施形態において、適応入力デバイスから第1の入力を受信することに応じて、デバイスは、第1の視覚標識を第1のメニューの中心領域に表示する(622)。例えば
図5Bにおいて、視覚標識504−1は、メニュー508が最初に表示される時にメニュー508の中心に表示される。視覚標識を第1のメニューの中心に表示することにより、第1のメニューの各オプションは容易にアクセス可能になる。同様に、本明細書で説明する他のメニュー(例えば、
図5Dのメニュー512、
図5Iのメニュー516、
図5Qのメニュー524及び
図5Rのメニュー528)が適応入力デバイスから受信された入力に応じて表示される時、視覚標識は、最初にこれらのメニューの中心に表示されてもよい。
【0210】
いくつかの実施形態において、メニュー(例えば、
図5Bのメニュー508、
図5Dの仮想マルチタッチ接触のメニュー512、
図5Iの仮想ジェスチャのメニュー516、
図5Qの仮想デバイス動作のメニュー524、
図5Rの仮想デバイス回転のメニュー528又は何らかのアクセス可能なメニュー)をディスプレイに表示している間、デバイスは、第1の視覚標識がメニューに残るように(例えば、視覚標識504−1のオーバシュートを防止するために)第1の視覚標識の移動を制限する(
図6Bの624)。
【0211】
いくつかの実施形態において、第1のメニューをディスプレイに表示している間、デバイスは、第1の視覚標識が第1のメニューに表示されない場合に適応入力デバイスから第2の入力(例えば、
図5Vにおいて視覚標識504−1が第1のメニューを越えて表示領域の上に配置される時に適応入力デバイス上の
図4Cのボタン488−1の起動を検出すること)を受信し、第2の入力に応じて第1のメニューの表示(例えば、
図5Aのユーザインタフェース502−Aを表示すること)を中止する(626)。同様に、本明細書で説明する他のメニュー(例えば、
図5Bのメニュー508、
図5Dの仮想マルチタッチ接触のメニュー512、
図5Iの仮想ジェスチャのメニュー516、
図5Qの仮想デバイス動作のメニュー524、
図5Rの仮想デバイス回転のメニュー528又は何らかのアクセス可能なメニュー)は、視覚標識がメニューの上にない時に適応入力デバイスから入力が受信される場合に消されてもよい。
【0212】
いくつかの実施形態において、第1のメニューをディスプレイに表示している間、デバイスは、所定の期間(例えば、5秒、10秒、15秒又は何らかの適当な期間)を超える期間にわたり適応入力デバイスからの入力の受信を待機する(628)。いくつかの実施形態において、所定の期間はユーザにより設定される(例えば、設定メニューを介して)。所定の期間を超える期間にわたり適応入力デバイスからの入力の受信を待機したことに応じて(例えば、適応入力デバイスから入力を受信せずに)、デバイスは、第1のメニューの表示(例えば、
図5Aのユーザインタフェース502−Aを表示すること)を中止する。同様に、本明細書で説明する他のメニュー(例えば、
図5Bのメニュー508、
図5Dの仮想マルチタッチ接触のメニュー512、
図5Iの仮想ジェスチャのメニュー516、
図5Qの仮想デバイス動作のメニュー524、
図5Rの仮想デバイス回転のメニュー528又は何らかのアクセス可能なメニュー)は、所定の期間内に適応入力デバイスから入力が受信されない場合に消されてもよい。
【0213】
いくつかの実施形態において、デバイスは、仮想タッチ選択アイコン(例えば、
図5Cの仮想タッチ選択アイコン510−1)の選択を検出する(
図6Cの630)。例えばデバイスは、視覚標識が仮想タッチ選択アイコン(例えば、
図5Cの視覚標識504−1)の上に配置される時に適応入力デバイス上のボタン(例えば、
図4Cの488−1)の起動を検出するか、あるいは仮想タッチ選択アイコンにわたり移動する視覚標識を検出する。仮想タッチ選択アイコンの選択を検出することに応じて、デバイスは、仮想マルチタッチ接触のメニュー(例えば、
図5Dのメニュー512)を表示する。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコン(例えば、
図5Dのメニュー512の2本指の接触アイコン514−1、3本指の接触アイコン514−2、4本指の接触アイコン514−3及び5本指の接触アイコン514−4)を含む。いくつかの実施形態において、仮想マルチタッチ接触のメニューは、1本指の接触アイコン(不図示)を更に含む。デバイスは、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出する(例えば、視覚標識が3本指の仮想接触アイコン514−2の上に配置される時に適応入力デバイス上のボタンの起動を検出するか、あるいは3本指の仮想接触アイコンにわたり移動する視覚標識を検出すること等により、
図5Dの3本指の仮想接触アイコン514−2の選択を検出すること)。仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、デバイスは、それぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の視覚標識(例えば、
図5Eの視覚標識504−2〜504−4)を表示する。いくつかの実施形態において、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、デバイスは、仮想マルチタッチ接触のメニューの表示を更に中止する(例えば、メニュー512は
図5Eに表示されない)。いくつかの実施形態において、第2の視覚標識は、それぞれの仮想マルチタッチ接触アイコンに対応する複数の接触を示す単一のアイコンの部分である。従って、1つ以上の第2の視覚標識は、一般に一斉に移動する(例えば、同一の速度で同一の方向に同一の距離移動すること)。いくつかの実施形態において、第2の視覚標識は、それぞれの仮想マルチタッチ接触アイコンに対応する複数の接触を示す複数のアイコンである。
【0214】
いくつかの実施形態において、第2の視覚標識を表示することは、それぞれの仮想マルチタッチ接触アイコンに対応する複数の視覚標識を表示することを含む(632)。例えば、
図5Dの3本指の仮想接触アイコン514−2の選択に応じて、3つの仮想タッチに対応する3つの視覚標識が
図5Eに表示される。同様に、
図5Dの2本指の仮想接触アイコン514−1の選択に応じて、デバイスは、2つの仮想タッチ(不図示)に対応する2つの視覚標識を表示し、
図5Dの4本指の仮想接触アイコン514−3の選択に応じて、デバイスは、4つの仮想タッチ(不図示)に対応する4つの視覚標識を表示し、
図5Dの5本指の仮想接触アイコン514−4の選択に応じて、デバイスは、5つの仮想タッチ(不図示)に対応する5つの視覚標識を表示する。
【0215】
いくつかの実施形態において、デバイスは、適応入力デバイスから第2の入力を受信し、適応入力デバイスから第2の入力を受信することに応じて、1つ以上の第2の視覚標識を移動し且つ1つ以上の第2の視覚標識の移動に従って動作を実行する(634)。例えば
図5Eにおいて、ジョイスティックを左にプッシュすることで受信された入力は、ちょうどあたかも3つの実際の指の接触がタッチセンシティブ面上で左に移動していたかのように、3つの視覚標識を左に移動し且つ次の開いているアプリケーションにナビゲートするために使用される。
【0216】
いくつかの実施形態において、1つ以上の第2の視覚標識を表示している間、デバイスは、所定の期間(例えば、5秒、10秒、15秒又は何らかの適当な期間)を超える期間にわたり適応入力デバイスから入力を受信するのを待機し、所定の期間を超える期間にわたり適応入力デバイスからの入力の受信を待機したことに応じて、1つ以上の第2の視覚標識の表示を第1の視覚標識の表示に置換する(636)。例えば、所定の期間を超える期間にわたり適応入力デバイスから入力を受信するのを待つこと(適応入力デバイスから入力を受信せずに)に応じて、デバイスは、3つの視覚標識504−2〜504−4(
図5F)の表示を単一の視覚標識504−1(
図5G)の表示に置換する。いくつかの実施形態において、所定の期間はユーザにより設定される(例えば、不図示の設定メニューを介して)。
【0217】
いくつかの実施形態において、1つ以上の第2の視覚標識を表示している間、デバイスは、第1の所定の時間間隔にわたりユーザ入力を待つ。第1の所定の時間間隔の間にユーザ入力が受信されなかったという判定に従って、デバイスは、第2の視覚標識の表示を第2の視覚標識とは異なる(例えば、異なる輝度、異なる色、異なるラインパターン、異なる透明度等)第3の視覚標識の表示に置換する。
【0218】
いくつかの実施形態において、第2の視覚標識及び第3の視覚標識は同数のタッチを示す。
【0219】
いくつかの実施形態において、第3の視覚標識を表示している間、デバイスは、第2の所定の時間間隔にわたりユーザ入力を待機する。いくつかの実施形態において、第2の所定の時間間隔は、第1の所定の時間間隔と同一である。他の実施形態において、第2の所定の時間間隔は、第1の所定の時間間隔とは異なる。第2の所定の時間間隔の間にユーザ入力が受信されなかったという判定に従って、デバイスは、第3の視覚標識の表示を第1の仮想標識の表示に置換する。
【0220】
いくつかの実施形態において、デバイスは、仮想ジェスチャアイコン(例えば、
図5Hのメニュー508の510−2)を表示し、仮想ジェスチャアイコンの選択を検出し、仮想ジェスチャアイコンの選択を検出することに応じて仮想ジェスチャのメニュー(例えば、
図5Iの516)を表示する(
図6Dの638)。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコン(例えば、
図5Iのアイコン518)を含む。デバイスは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し(例えば、適応入力デバイス上のボタンの起動により
図5Iの3本指の仮想上スワイプジェスチャアイコン518−2の選択を検出すること)、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャに対応する動作を実行する。例えば、
図5Iの3本指の仮想上スワイプジェスチャアイコン518−2の選択に応じて、デバイスは、
図5Jに示す複数の開いているアプリケーションアイコンを含むアプリケーションアイコン領域520を表示する。いくつかの実施形態において、デバイスは、ジェスチャに対応する視覚標識を表示せずにある特定のジェスチャに対応する動作を実行してもよい(例えば
図5Jにおいて、開いているアプリケーションアイコン領域520は、3本指の上スワイプジェスチャに対応する視覚標識を表示せずに表示される)。
【0221】
いくつかの実施形態において、デバイスは、仮想ジェスチャアイコン(例えば、
図5Hのメニュー508の510−2)を表示し、仮想ジェスチャアイコンの選択を検出し(例えば、視覚標識が仮想ジェスチャアイコンの上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は仮想ジェスチャアイコンにわたり移動する視覚標識を検出すること)、仮想ジェスチャアイコンの選択を検出することに応じて仮想ジェスチャ(例えば、
図5Iの516)のメニューを表示する(640)。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコン(例えば、
図5Iの2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1、3本指の仮想上スワイプジェスチャアイコン518−2、3本指の仮想下スワイプジェスチャアイコン518−3、ユーザ構成の仮想ジェスチャアイコン518−4)を含む。デバイスは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し(例えば、視覚標識が2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1の上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は2本指の仮想ピンチイン/ピンチアウトジェスチャアイコンにわたり移動する視覚標識を検出すること等により、
図5Iの2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1の選択を検出すること)、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャアイコンに対応する複数の視覚標識を表示する。例えば、
図5Kの2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1の選択に応じて、2つの仮想タッチに対応する2つの視覚標識が
図5Lに表示される。デバイスは、適応入力デバイスから第2の入力を受信し、適応入力デバイスから第2の入力を受信することに応じてそれぞれの仮想ジェスチャに従って動作を実行する。例えば
図5Mにおいて、適応入力デバイスにより受信された入力は、2つの視覚標識504−5及び504−6を移動し、ユーザインタフェース502−Aをスクロールする。別の例では、
図5Oにおいて、適応入力デバイスにより受信された入力は、異なる倍率(例えば、ズーム動作)でユーザインタフェースを表示する。
【0222】
いくつかの実施形態において、適応入力デバイスから第2の入力を受信することに応じて、デバイスは、それぞれの仮想ジェスチャに対応する表示された視覚標識を移動して、タッチセンシティブ面に対する実際の接触の移動をシミュレートする(642)(例えば
図5Mにおいて、適応入力デバイスにより受信された入力は、2つの視覚標識504−5及び504−6を移動する)。
【0223】
いくつかの実施形態において、デバイスは、仮想ピンチイン/ピンチアウトジェスチャアイコン(例えば、第1のメニュー又は仮想ジェスチャメニューの)を表示し、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出し(例えば、視覚標識が仮想ピンチイン/ピンチアウトジェスチャアイコンの上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は仮想ピンチイン/ピンチアウトジェスチャアイコンにわたり移動する視覚標識を検出すること)、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて、仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識を表示する(644)。デバイスは、適応入力デバイスから第2の入力を受信し、適応入力デバイスから第2の入力を受信することに応じて仮想ピンチイン/ピンチアウトジェスチャに従って動作を実行する。いくつかの実施形態において、仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識が表示されている間、適応入力デバイスから受信された入力は、タッチセンシティブ面に対する実際のピンチイン/ピンチアウトジェスチャに対応する動作を実行するために使用される。例えば、ジョイスティックを右にプッシュすることで受信された入力は、2つの視覚標識を離して移動(ピンチアウト)してディスプレイをズームインするために使用される。逆に、ジョイスティックを左にプッシュすることで受信された入力は、2つの視覚標識を共に移動(ピンチイン)してディスプレイをズームアウトするために使用される。従って、ユーザは、タッチユーザインタフェースを有する電子デバイス上のタッチセンシティブ面を実際にはタッチしないが、適応入力デバイスを使用してデバイスを操作できる(例えば、ディスプレイに対する仮想ジェスチャを実行できる)。
【0224】
いくつかの実施形態において、仮想ピンチイン/ピンチアウトジェスチャアイコン(例えば、
図5Kの518−1)の選択を検出することに応じて、デバイスは、第1の動作モードでユーザインタフェースを表示する。第1の動作モードは、2つの第1のモードの仮想タッチ点及び2つの第1のモードの仮想タッチ点をリンクする第1のコネクタを含む第1の視覚標識を表示することを含む。第1の動作モードの間、デバイスは、適応入力デバイスから第1の所定のユーザ入力(例えば、
図4Cのロックボタン488−1の選択)を検出する。第1の動作モードの間に第1の所定のユーザ入力を検出することに応じて、デバイスは第2の動作ーモード(例えば、第1の動作モードを終了すること)を開始する。第2の動作モードは、2つの第2のモードの仮想タッチ点(例えば、
図5Nの504−7及び504−8)、並びに2つの第2のモードの仮想タッチ点をリンクする第2のコネクタを含む第2の視覚標識に第1の視覚標識を置換することを含む。第2の動作モードの間、デバイスは、適応入力デバイスからのそれぞれのユーザ入力を検出する。第2の動作モードの間にそれぞれのユーザ入力を検出することに応じて、デバイスは、それぞれのユーザ入力に従ってピンチインジェスチャ又はピンチアウトジェスチャに対応する所定の動作(例えば、ズームイン動作又はズームアウト動作)を実行する。ズーム動作は、仮想ピンチイン/ピンチアウトジェスチャに応じて実行されてもよい所定の動作の一例に過ぎない。別の例として、写真アプリケーションにおいて、アルバムの集合のアルバムに対する仮想ピンチアウトジェスチャの結果、アルバムの集合の表示は、選択されたアルバムのデジタル写真の表示に置換されてもよい(不図示)。また、選択されたアルバムの写真に対する仮想ピンチアウトジェスチャの結果、選択されたアルバムの表示は選択された写真の表示に置換されてもよい。逆に、選択された写真に対する仮想ピンチインジェスチャの結果、選択された写真の表示は選択されたアルバムの表示に置換されてもよい。また、選択されたアルバムのデジタル写真に対する仮想ピンチインジェスチャの結果、選択されたアルバムのデジタル写真の表示はアルバムの集合の表示に置換されてもよい。より一般的に、タッチセンシティブ面に対する実際のピンチインジェスチャ又はピンチアウトジェスチャによりタッチユーザインタフェースにおいて実行されるあらゆる動作は、適応入力デバイスからの入力により行われた仮想ピンチインジェスチャ又は仮想ピンチアウトジェスチャにより更に実行されてもよい。
【0225】
いくつかの実施形態において、第2の動作モードの間にそれぞれのユーザ入力を検出することに応じて、デバイスは、2つの第2のモードの仮想タッチ点のそれぞれの位置を移動し且つ2つの第2のモードの仮想タッチ点をリンクする第2のコネクタの長さを調整すること(例えば、
図5Oの第2のモードの視覚標識504−7及び504−8、並びにコネクタ522を移動すること)により、第2の視覚標識の表示を更新する。
【0226】
いくつかの実施形態において、第2の動作モードの間、デバイスは、適応入力デバイスからの第2の所定のユーザ入力を検出し、第2の動作モードの間に第2の所定のユーザ入力を検出することに応じて、第1の動作モード(例えば、第2の動作モードを終了すること)を開始する。例えば、
図5Oの第2のモードの視覚標識の表示は、第1のモードの視覚標識の表示に置換されてもよい。いくつかの実施形態において、第2の動作モードから第1の動作モードに変化しても、表示されたユーザインタフェースの倍率は変化しない。
【0227】
いくつかの実施形態において、第1の動作モードの間、デバイスは、適応入力デバイスからの第2のそれぞれのユーザ入力を検出し、第1の動作モードの間に第2の所定のユーザ入力を検出することに応じて、デバイスは、第2のそれぞれのユーザ入力(例えば、
図5Nのスクロールされたユーザインタフェース)に従ってユーザインタフェースをスクロールする。
【0228】
いくつかの実施形態において、第1のモードの仮想タッチ点の各々は、環状の表示オブジェクト(例えば、
図5Mの504−5及び504−6)を含み、第2のモードの仮想タッチ点の各々は、環状の表示オブジェクト及び環状の表示オブジェクトの内部の同心円(例えば、
図5Nの504−7及び504−8)を含む。
【0229】
いくつかの実施形態において、各コネクタは鎖状の表示オブジェクト(例えば、
図5Mの522)を含む。
【0230】
いくつかの実施形態において、ズーム動作(例えば、ディスプレイのズームイン又はディスプレイのズームアウト)は、仮想ピンチイン/ピンチアウトジェスチャに従って実行される(646)(例えば、
図5Oのズームインされたユーザインタフェース502−Aを参照されたい)。
【0231】
いくつかの実施形態において、デバイスは、仮想デバイスアイコン(例えば、
図5Pの510−3)を表示し、仮想デバイスアイコンの選択を検出し、仮想デバイスアイコンの選択を検出することに応じて、仮想デバイス動作のメニュー(例えば、
図5Qのメニュー524)を表示する(
図6Eの648)。仮想デバイス動作のメニューは、仮想デバイス動作の種類を示す複数のアイコン(例えば、
図5Qのアイコン526)を含む。例示的な仮想デバイス動作は、一般に電子デバイス上の物理的コントロールを介して実行される動作、例えば、一般にミュートスイッチを介して実行されるデバイス上で呼び出し音及び音響の効果をミュート及びミュート解除することと、一般にロック/ロック解除スイッチを介して開始されるデバイスをロックすることと、一般に音量アップボタンを介して実行される音量を上げることと、一般に音量ダウンボタンを介して実行される音量を下げることとを含んでもよい。例示的な仮想デバイス動作は、電子デバイスを振動させて所定の動作(例えば、取り消し動作)を実行することと、電子デバイスを回転させて表示の向きを回転させることとを更に含んでもよい。振動及び回転等の動作は、一般に、電子デバイスの加速度計を介して検出される。デバイスは、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出し(例えば、視覚標識が仮想デバイス回転アイコン526−2の上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は仮想デバイス回転アイコン526−2にわたり移動する視覚標識を検出すること等により、
図5Qの仮想デバイス回転アイコン526−2の選択を検出すること)、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて、それぞれの仮想デバイス動作に対応する動作を実行する。例えば、
図5Qの仮想デバイスロック画面アイコン526−4の選択に応じて、デバイスは、デバイスの画面をロックするかあるいはスクリーンセーバアプリケーション(不図示)を起動する。従って、ユーザは、電子デバイス上の物理的コントロールを実際にはタッチしないが、適応入力デバイスを使用してデバイス上の物理的コントロールを操作することもできる。
【0232】
いくつかの実施形態において、デバイスは、仮想デバイス回転アイコン(例えば、
図5Qのメニュー524の526−2)を表示し、仮想デバイス回転アイコンの選択を検出し、仮想デバイス回転アイコンの選択を検出することに応じて、仮想デバイスの向きのメニュー(例えば、
図5Rのメニュー528)を表示する(650)。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコン(例えば、
図5Rの仮想縦向きアイコン530−1、仮想左横向きアイコン530−2、仮想右横向きアイコン530−3及び仮想上下反対縦向きアイコン530−4)を含む。デバイスは、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出し(例えば、視覚標識が仮想左横向きアイコン530−2の上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は仮想左横向きアイコン530−2にわたり移動する視覚標識を検出すること等により、
図5Rの仮想左横向きアイコン530−2の選択を検出すること)、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて、それぞれの仮想デバイスの向きに従って表示を配向させる。例えば、
図5Rの仮想左横向きアイコン530−2の選択に応じて、デバイスは、ユーザインタフェースの向きを
図5Sに示す向きに変更する。
【0233】
いくつかの実施形態において、デバイスは、ホームボタン(例えば、ディスプレイに表示された仮想ホームボタン又は
図2のディスプレイとは別個の物理的なホームボタン204)を含む(652)。デバイスは、ホームボタンアイコン(例えば、
図5Tのメニュー508又は仮想デバイス動作のメニューの510−4)を表示し、ホームボタンアイコンの選択を検出し(例えば、視覚標識がホームボタンアイコンの上に配置される時に適応入力デバイス上のボタンの起動を検出すること又はホームボタンアイコンにわたり移動する視覚標識を検出すること)、ホームボタンアイコンの選択を検出することに応じて、ホームボタンの起動に対応する動作を実行する。例えば、
図5Tのホームボタンアイコン510−4の選択に応じて、ホームスクリーン502−Dは、ちょうどあたかもホームボタン204(
図2)が押下されているかのように
図5Uに表示される。
【0234】
尚、方法600に関連して上述した処理の詳細も同様に以下に説明する方法700、800、900、1000、1100、1200及び1300を含む本明細書で説明する他の方法に適用可能である。簡略化するために、これらの詳細は本明細書では繰り返されない。
【0235】
図7は、いくつかの実施形態に係る仮想マルチタッチ接触アイコンのメニューを使用する方法700を示すフローチャートである。方法700は、ディスプレイ及びタッチセンシティブ面を有する電子デバイス(例えば、
図3のデバイス300又は
図1のポータブル多機能デバイス100)において実行される。いくつかの実施形態において、ディスプレイはタッチスクリーンディスプレイであり、タッチセンシティブ面はディスプレイにある。いくつかの実施形態において、ディスプレイはタッチセンシティブ面とは異なる。方法700のいくつかの動作は組み合わされてもよく、且つ/あるいはいくつかの動作の順序は変更されてもよい。
【0236】
以下に説明するように、方法700は、エミュレートされるマルチタッチ接触の種類を選択するために、適応入力デバイス(例えば、ジョイスティック)からの入力と共に仮想マルチタッチ接触のメニューを使用する。これにより、ユーザは、電子デバイスのタッチセンシティブ面を使用せずに、複数の指を使用して電子デバイスのタッチセンシティブ面との対話を別の方法で必要とするマルチタッチ動作を実行できるようになる。
【0237】
デバイスは、仮想タッチ(例えば、1本指の仮想接触等のタッチセンシティブ面に対する仮想タッチ)に対応する第1の視覚標識をディスプレイに表示し(702)、適応入力デバイスから第1の入力(例えば、視覚標識が仮想タッチ選択アイコンの上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は仮想タッチ選択アイコンにわたり移動する視覚標識を検出すること)を受信し(704)、適応入力デバイスから第1の入力を受信することに応じて、仮想マルチタッチ接触のメニュー(例えば、
図5Dのメニュー512)を表示する(706)。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコン(例えば、
図5Dのメニュー512の2本指の接触アイコン514−1、3本指の接触アイコン514−2、4本指の接触アイコン514−3及び5本指の接触アイコン514−4)を含む。いくつかの実施形態において、仮想マルチタッチ接触のメニューは、1本指の接触アイコン(不図示)を更に含む。
【0238】
デバイスは、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出し(708)(例えば、視覚標識が3本指の仮想接触アイコン514−2の上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は3本指の仮想接触アイコンにわたり移動する視覚標識を検出すること等により、
図5Dの3本指の仮想接触アイコン514−2の選択を検出すること)、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、それぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の仮想視覚標識(例えば、
図5Eの視覚標識504−2〜504−4)を表示する(710)。いくつかの実施形態において、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、デバイスは、仮想マルチタッチ接触のメニューの表示を更に中止する。いくつかの実施形態において、第2の視覚標識は、それぞれの仮想マルチタッチ接触アイコンに対応する複数の接触を示す単一のアイコンの一部である。いくつかの実施形態において、第2の視覚標識は、それぞれの仮想マルチタッチ接触アイコンに対応する複数の接触を示す複数のアイコンである。
【0239】
図8は、いくつかの実施形態に係る仮想ジェスチャのメニューを使用する方法800を示すフローチャートである。方法800は、ディスプレイ及びタッチセンシティブ面を有する電子デバイス(例えば、
図3のデバイス300又は
図1のポータブル多機能デバイス100)において実行される。いくつかの実施形態において、ディスプレイはタッチスクリーンディスプレイであり、タッチセンシティブ面はディスプレイにある。いくつかの実施形態において、ディスプレイはタッチセンシティブ面とは異なる。方法800のいくつかの動作は組み合わされてもよく、且つ/あるいはいくつかの動作の順序は変更されてもよい。
【0240】
以下に説明するように、方法800は、タッチセンシティブ面に対する実際のジェスチャを選択及びエミュレートするために、適応入力デバイスからの入力と共に仮想ジェスチャのメニューを使用する。これにより、ユーザは、電子デバイスのタッチセンシティブ面を使用せずに、複数の指を使用して電子デバイスのタッチセンシティブ面と対話することで取得されるのと同一の結果をもたらす仮想マルチタッチジェスチャを実行できる。
【0241】
デバイスは、仮想タッチ(例えば、1本指の仮想接触等のタッチセンシティブ面に対する仮想タッチ)に対応する第1の視覚標識をディスプレイに表示し(802)、適応入力デバイスからの第1の入力(例えば、視覚標識が仮想ジェスチャアイコンの上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は仮想ジェスチャアイコンにわたり移動する視覚標識を検出すること)を受信し(804)、適応入力デバイスから第1の入力を受信することに応じて仮想ジェスチャのメニュー(例えば、
図5Kのメニュー516)を表示する(806)。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコン(例えば、
図5Kの2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1、3本指の仮想上スワイプジェスチャアイコン518−2、3本指の仮想下スワイプジェスチャアイコン518−3、ユーザ構成の仮想ジェスチャアイコン518−4)を含む。
【0242】
デバイスは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し(808)(例えば、視覚標識が2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1の上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は2本指の仮想ピンチイン/ピンチアウトジェスチャアイコンにわたり移動する視覚標識を検出すること等により、
図5Kの2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1の選択を検出すること)、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャアイコンに対応する複数の視覚標識を表示する(810)。例えば、
図5Kの2本指の仮想ピンチイン/ピンチアウトジェスチャアイコン518−1の選択に応じて、2つの仮想タッチに対応する2つの視覚標識が
図5Lに表示される。
【0243】
デバイスは、適応入力デバイスから第2の入力を受信し(812)、適応入力デバイスから第2の入力を受信することに応じて、それぞれの仮想ジェスチャに従って動作を実行する(814)。例えば
図5Mにおいて、適応入力デバイスにより受信された入力は、2つの視覚標識504−5及び504−6を移動し、ユーザインタフェース502−Aをスクロールする。別の例では、
図5Oにおいて、適応入力デバイスにより受信された入力は、異なる倍率(例えば、ズーム動作)でユーザインタフェースを表示する。
【0244】
図9は、いくつかの実施形態に係る仮想ピンチジェスチャを実行する方法900を示すフローチャートである。方法900は、ディスプレイ及びタッチセンシティブ面を有する電子デバイス(例えば、
図3のデバイス300又は
図1のポータブル多機能デバイス100)において実行される。いくつかの実施形態において、ディスプレイはタッチスクリーンディスプレイであり、タッチセンシティブ面はディスプレイにある。いくつかの実施形態において、ディスプレイはタッチセンシティブ面とは異なる。方法900のいくつかの動作は組み合わされてもよく、且つ/あるいはいくつかの動作の順序は変更されてもよい。
【0245】
以下に説明するように、方法900は、タッチセンシティブ面に対するピンチイン/ピンチアウトジェスチャをエミュレートするために、適応入力デバイスからの入力と共に2つの視覚標識(2つの仮想タッチに対応する)を使用する。これにより、ユーザは、電子デバイスのタッチセンシティブ面を使用せずに、2本の指を使用して電子デバイスのタッチセンシティブ面との対話を別の方法で必要とする動作(例えば、ズーム)を実行できる。
【0246】
デバイスは、仮想ピンチイン/ピンチアウトジェスチャアイコン(例えば、第1のメニュー又は仮想ジェスチャメニューの)を表示し(902)、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出し(904)(例えば、視覚標識が仮想ピンチイン/ピンチアウトジェスチャアイコンの上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は仮想ピンチイン/ピンチアウトジェスチャアイコンにわたり移動する視覚標識を検出すること)、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて、仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識(例えば、
図5K及び
図5Lに示すような)を表示する(906)。
【0247】
デバイスは、適応入力デバイスから入力を受信し(908)、適応入力デバイスから入力を受信することに応じて、それぞれの仮想ピンチイン/ピンチアウトジェスチャに従ってズーム動作(例えば、
図5N及び
図5Oに示すような)を実行する(910)。いくつかの実施形態において、仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識が表示されている間、適応入力デバイスから受信された入力は、タッチセンシティブ面に対する実際のピンチイン/ピンチアウトジェスチャに対応する動作を実行するために使用される。例えば、ジョイスティックを右にプッシュすることで受信された入力は、2つの視覚標識を離して移動(ピンチアウト)してディスプレイをズームインするために使用される。逆に、ジョイスティックを左にプッシュすることで受信された入力は、2つの視覚標識を共に移動(ピンチイン)してディスプレイをズームアウトするために使用される。従って、ユーザは、タッチユーザインタフェースを有する電子デバイス上のタッチセンシティブ面を実際にはタッチしないが、適応入力デバイスを使用してデバイスを操作できる(例えば、ディスプレイに対する仮想ジェスチャを実行できる)。
【0248】
図10は、いくつかの実施形態に係る仮想ジェスチャのメニューを使用する方法1000を示すフローチャートである。方法1000は、ディスプレイ及びタッチセンシティブ面を有する電子デバイス(例えば、
図3のデバイス300又は
図1のポータブル多機能デバイス100)において実行される。いくつかの実施形態において、ディスプレイはタッチスクリーンディスプレイであり、タッチセンシティブ面はディスプレイにある。いくつかの実施形態において、ディスプレイはタッチセンシティブ面とは異なる。方法1000のいくつかの動作は組み合わされてもよく、且つ/あるいはいくつかの動作の順序は変更されてもよい。
【0249】
以下に説明するように、方法1000は、タッチセンシティブ面に対する実際のジェスチャを選択及びエミュレートするために適応入力デバイスからの入力と共に仮想ジェスチャのメニューを使用する。これにより、ユーザは、電子デバイスのタッチセンシティブ面を使用せずに、複数の指を使用して電子デバイスのタッチセンシティブ面と対話することで取得されるのと同一の結果をもたらす仮想マルチタッチジェスチャを実行できる。
【0250】
デバイスは、仮想ジェスチャアイコン(例えば、第1のメニューの)を表示し(1002)、仮想ジェスチャアイコンの選択を検出し(1004)、仮想ジェスチャアイコンの選択を検出することに応じて、仮想ジェスチャのメニュー(例えば、
図5H及び
図5Iに示すような)を表示する(1006)。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。
【0251】
デバイスは、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し(1008)(例えば、適応入力デバイス上のボタンの起動により、
図5Iの3本指の仮想上スワイプジェスチャアイコン518−2の選択を検出すること)、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャに対応する動作を実行する(1010)。例えば、
図5Iの3本指の仮想上スワイプジェスチャアイコン518−2の選択に応じて、デバイスは、
図5Jに示す複数の開いているアプリケーションアイコンを含むアプリケーションアイコン領域520を表示する。いくつかの実施形態において、デバイスは、ジェスチャに対応する視覚標識を表示せずにある特定のジェスチャに対応する動作を実行してもよい。
【0252】
図11は、いくつかの実施形態に係る仮想デバイス動作のメニューを使用する方法1100を示すフローチャートである。方法1100は、ディスプレイ及びタッチセンシティブ面を有する電子デバイス(例えば、
図3のデバイス300又は
図1のポータブル多機能デバイス100)において実行される。いくつかの実施形態において、ディスプレイはタッチスクリーンディスプレイであり、タッチセンシティブ面はディスプレイにある。いくつかの実施形態において、ディスプレイはタッチセンシティブ面とは異なる。方法1100のいくつかの動作は組み合わされてもよく、且つ/あるいはいくつかの動作の順序は変更されてもよい。
【0253】
以下に説明するように、方法1100は、一般に電子デバイス上の物理的コントロール(例えば、ミュートスイッチ、ロックスイッチ、音量ボタン)の起動を介して、あるいは加速度計により検出された動作(例えば、デバイスの振動又はデバイスの回転)に応じて実行される動作を選択及びエミュレートするために、適応入力デバイスからの入力と共に仮想デバイス動作のメニューを使用する。これにより、ユーザは、全体として電子デバイス又はデバイスの物理的コントロールとの対話を別の方法で必要とする動作を実行できる。
【0254】
デバイスは、仮想デバイスアイコン(例えば、第1のメニューの)を表示し(1102)、仮想デバイスアイコンの選択を検出し(1104)、仮想デバイスアイコンの選択を検出することに応じて、仮想デバイス動作のメニュー(例えば、
図5P及び
図5Qに示すような)を表示する(1106)。仮想デバイス動作のメニューは、仮想デバイス動作の種類を示す複数のアイコンを含む。例示的な仮想デバイス動作は、一般に電子デバイス上の物理的コントロールを介して実行される動作、例えば、一般にミュートスイッチを介して実行されるデバイス上で呼び出し音及び音響の効果をミュート及びミュート解除することと、一般にロック/ロック解除スイッチを介して開始されるデバイスをロックすることと、一般に音量アップボタンを介して実行される音量を上げることと、一般に音量ダウンボタンを介して実行される音量を下げることとを含んでもよい。例示的な仮想デバイス動作は、電子デバイスを振動させて所定の動作(例えば、取り消し動作)を実行することと、電子デバイスを回転させて表示の向きを回転させることとを更に含んでもよい。振動及び回転等の動作は、一般に、電子デバイスの加速度計を介して検出される。
【0255】
デバイスは、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出し(1108)(例えば、視覚標識が仮想ミュート/ミュート解除アイコン526−1の上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は仮想ミュート/ミュート解除アイコンにわたり移動する視覚標識を検出すること等により、仮想ミュート/ミュート解除アイコン526−1の選択を検出すること)、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて、それぞれの仮想デバイス動作に対応する動作を実行する(1110)。例えば、
図5Qの仮想ミュート/ミュート解除アイコン526−1の選択に応じて、デバイスは、デバイス上で呼び出し音及び音響の効果をミュート又はミュート解除する。従って、ユーザは、電子デバイス上の物理的コントロールを実際にはタッチしないが、適応入力デバイスを使用してデバイス上の物理的コントロールを操作することもできる。
【0256】
図12は、いくつかの実施形態に係る仮想デバイスの向きのメニューを使用する方法1200を示すフローチャートである。方法1200は、ディスプレイ及びタッチセンシティブ面を有する電子デバイス(例えば、
図3のデバイス300又は
図1のポータブル多機能デバイス100)において実行される。いくつかの実施形態において、ディスプレイはタッチスクリーンディスプレイであり、タッチセンシティブ面はディスプレイにある。いくつかの実施形態において、ディスプレイはタッチセンシティブ面とは異なる。方法1200のいくつかの動作は組み合わされてもよく、且つ/あるいはいくつかの動作の順序は変更されてもよい。
【0257】
以下に説明するように、方法1200は、ディスプレイの向きを制御するために、適応入力デバイスからの入力と共に仮想デバイスの向きのメニューを使用する。これにより、ユーザは、電子デバイスを物理的に回転させずに電子デバイスの表示を配向させることができる。
【0258】
デバイスは、仮想デバイス回転アイコン(例えば、仮想デバイスメニューの)を表示し(1202)、仮想デバイス回転アイコンの選択を検出し(1204)、仮想デバイス回転アイコンの選択を検出することに応じて、仮想デバイスの向きのメニュー(例えば、
図5Q及び
図5Rに示すような)を表示する(1206)。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコン(例えば、
図5Rの仮想縦向きアイコン530−1、仮想左横向きアイコン530−2、仮想右横向きアイコン530−3及び仮想上下反対縦向きアイコン530−4)を含む。
【0259】
デバイスは、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出する(1208)(例えば、視覚標識が仮想左横向きアイコン530−2の上に配置される時に適応入力デバイス上のボタンの起動を検出すること又は仮想左横向きアイコンにわたり移動する視覚標識を検出すること等により、
図5Rの仮想左横向きアイコン530−2の選択を検出すること)。仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて、デバイスは、それぞれの仮想デバイスの向きに従って表示を配向させる(1210)。例えば、
図5Rの仮想左横向きアイコン530−2の選択に応じて、デバイスは、ディスプレイ上のユーザインタフェースを
図5Sに示すユーザインタフェースに配向させる。
【0260】
図13は、いくつかの実施形態に係るユーザ規定の仮想ジェスチャを作成する方法1300を示すフローチャートである。方法1300は、ディスプレイ及びタッチセンシティブ面を有する電子デバイス(例えば、
図3のデバイス300又は
図1のポータブル多機能デバイス100)において実行される。いくつかの実施形態において、ディスプレイはタッチスクリーンディスプレイであり、タッチセンシティブ面はディスプレイにある。いくつかの実施形態において、ディスプレイはタッチセンシティブ面とは異なる。方法1300のいくつかの動作は組み合わされてもよく、且つ/あるいはいくつかの動作の順序は変更されてもよい。
【0261】
以下に説明するように、方法1300は、ユーザ規定のカスタム仮想ジェスチャを作成するために、適応入力デバイスからの入力を使用する。これにより、ユーザは、複数の指を使用してタッチセンシティブ面との対話を別の方法で必要とする仮想マルチタッチジェスチャを記録及び検索できる。
【0262】
デバイスは、仮想ジェスチャ記録モードの間(1302)、複数の視覚標識(例えば、1本指のそれぞれの仮想接触に対応するアイコン)をディスプレイに表示する(1304)。例えば
図5AAにおいて、視覚標識540−1及び540−2が表示される。
【0263】
複数の視覚標識の視覚標識毎に(1306)、デバイスは、それぞれの視覚標識に対するそれぞれのユーザ入力を適応入力デバイスから受信し(1308)、それぞれのユーザ入力に従ってそれぞれの視覚標識を移動し(1310)、それぞれの視覚標識の移動に対応するそれぞれの軌跡をそれぞれの視覚標識(例えば、
図5Yの視覚標識540−1及び軌跡542−1)と同時に表示する(1312)。
【0264】
いくつかの実施形態において、仮想ジェスチャ記録モードの間、デバイスは、複数のそれぞれの視覚標識及び対応する複数のそれぞれの軌跡を同時に表示する(1314)。例えば、視覚標識540−1及び540−2は、
図5AAの軌跡542−1及び542−2と同時に表示される。
【0265】
デバイスは、複数の視覚標識及び複数の視覚標識の移動に対応するユーザ規定の仮想ジェスチャを作成する(1316)。ユーザ規定のジェスチャは、複数の視覚標識の絶対位置又は相対位置及び複数の視覚標識の相対移動又は絶対移動を含んでもよい。
【0266】
デバイスは、ユーザ規定の仮想ジェスチャを電子デバイスの所定の動作と関連付け(1318)、ユーザ規定の仮想ジェスチャを格納する(1320)。従って、ユーザは、タッチユーザインタフェースを有する電子デバイス上のタッチセンシティブ面を実際にはタッチしないが、適応入力デバイスを使用してデバイスに対するカスタム仮想マルチタッチジェスチャを作成できる。
【0267】
いくつかの実施形態において、ユーザ規定の仮想ジェスチャを作成して電子デバイスの所定の動作と関連付けた後、デバイスは、適応入力デバイスから入力(例えば、視覚標識が
図5ABのアイコン518−4等のユーザ規定の仮想ジェスチャに対応するアイコンの上に配置される時に適応入力デバイス上のボタンの起動を検出すること又はユーザ規定の仮想ジェスチャに対応するアイコンにわたり移動する視覚標識を検出すること)を受信し(1322)、適応入力デバイスから入力を受信することに応じて、ユーザ規定の仮想ジェスチャと関連付けられた所定の動作を実行する。
【0268】
いくつかの実施形態において、適応入力デバイスから入力を受信することに応じて、デバイスは、ユーザ規定の仮想ジェスチャの複数のそれぞれの視覚標識のアニメーション化された移動をそれぞれの軌跡に沿って表示する(1324)。例えば
図5ACにおいて、視覚標識540−1及び540−2のアニメーション化された移動は、それぞれの軌跡542−1及び542−2と共に表示される。いくつかの実施形態において、ユーザ規定の仮想ジェスチャが高速且つ低速に再作成されることで仮想ジェスチャ記録モードで作成された厳密なユーザ規定の仮想ジェスチャを模倣できるように、格納されたユーザ規定の仮想ジェスチャは、ユーザ規定の仮想ジェスチャの各視覚標識の位置及び時間を含む。いくつかの実施形態において、ユーザ規定の仮想ジェスチャは、仮想ジェスチャ記録モードで作成された速度ではなく一定の速度で示されうる(「再生されうる」)。一定の速度は、ユーザが「自然なペース」で事象を生成するのが困難な場合に有用である。一定の速度の仮想ジェスチャの場合、ジェスチャの事象は、デバイスが事象に対処できるより速くそれらを生成するのを回避するために、実際の指がタッチセンシティブ面にわたり移動する際に事象が受信される平均的な速度で生成されてもよい。
【0269】
いくつかの実施形によると、
図14は、上述したような本発明の原理に従って構成された電子デバイス1400を示す機能ブロック図である。デバイスの機能ブロックは、本発明の原理を実行するためにハードウェア、ソフトウェア又はハードウェアとソフトウェアとの組合せで実現されてもよい。
図14に説明する機能ブロックは、上述の本発明の原理を実現するために組み合わされてもよく、あるいはサブブロックに分けられてもよいことが当業者により理解される。従って、本明細書の説明は、本明細書で説明する機能ブロックの考えられるあらゆる組合せ又は分割、あるいは更なる定義をサポートしてもよい。
【0270】
図14に示すように、電子デバイス1400は、仮想タッチに対応する第1の視覚標識を表示するように構成された表示ユニット1402と、指の接触を入力するように構成されたタッチセンシティブ面ユニット1404と、表示ユニット1402及びタッチセンシティブ面ユニット1404に結合された処理ユニット1406とを備える。いくつかの実施形態において、処理ユニット1406は、受信ユニット1408と、表示有効化ユニット1410と、検出ユニット1412と、移動ユニット1414と、実行ユニット1416と、待機ユニット1418と、配向ユニット1420と、制限ユニット1422とを備える。
【0271】
処理ユニット1406は、適応入力デバイスから第1の入力を受信し(例えば、受信ユニット1408を用いて)、且つ適応入力デバイスから第1の入力を受信することに応じて、表示ユニットでの第1のメニューの表示を有効にする(例えば、表示有効化ユニット1410を用いて)ように構成される。第1のメニューは、仮想タッチ選択アイコンを含む。仮想タッチ選択アイコンの選択を検出することに応じて、仮想マルチタッチ接触のメニューが表示される(例えば、表示有効化ユニット1410を用いて表示ユニット1402に)。
【0272】
いくつかの実施形態において、第1の視覚標識は、環状、ドーナツ形、円形、楕円形、長円形、矢印、十字形、Iビーム、星形又は仮想指のうちの1つを含む。
【0273】
いくつかの実施形態において、第1の入力は、第1の視覚標識を表示ユニットの所定の領域に移動する。
【0274】
いくつかの実施形態において、第1の入力は、適応入力デバイス上のコントロールの起動に対応する。
【0275】
いくつかの実施形態において、第1の入力は、適応入力デバイス上のコントロールを左右に移動することに対応する。
【0276】
いくつかの実施形態において、適応入力デバイスはジョイスティックを含み、第1の入力はジョイスティックを左右に移動することに対応する。
【0277】
いくつかの実施形態において、第1のメニューは、第1のメニューの中心の周りに放射状に表示されたアイコンを含む。
【0278】
いくつかの実施形態において、第1のユーザインタフェースは、適応入力デバイスから第1の入力を受信する直前に表示ユニット1402に表示され、第1のメニューは、第1のユーザインタフェースの上に表示される(例えば、表示ユニット1402に)。
【0279】
いくつかの実施形態において、処理ユニット1406は、適応入力デバイスから第1の入力を受信することに応じて、第1のメニューの中央領域での第1の視覚標識の表示を有効にする(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)ように構成される。
【0280】
いくつかの実施形態において、処理ユニット1406は、仮想タッチ選択アイコンの選択を検出し(例えば、検出ユニット1412を用いて)、且つ仮想タッチ選択アイコンの選択を検出することに応じて、仮想マルチタッチ接触のメニューの表示を有効にする(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)ように構成される。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコンを含む。処理ユニット1406は、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出し(例えば、検出ユニット1412を用いて)、且つ仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、それぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の視覚標識の表示を有効にする(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)ように構成される。
【0281】
いくつかの実施形態において、第2の視覚標識の表示を有効にすることは、それぞれの仮想マルチタッチ接触アイコンに対応する複数の視覚標識の表示を有効にする(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)ことを含む。
【0282】
いくつかの実施形態において、処理ユニット1406は、適応入力デバイスから第2の入力を受信し(例えば、受信ユニット1408を用いて)、且つ適応入力デバイスから第2の入力を受信することに応じて、1つ以上の第2の視覚標識を移動し(例えば、移動ユニット1414を用いて)且つ1つ以上の第2の視覚標識の移動に従って動作を実行する(例えば、実行ユニット1416を用いて)ように構成される。
【0283】
いくつかの実施形態において、処理ユニット1406は、1つ以上の第2の視覚標識の表示を有効にしている間、所定の期間を超える期間にわたり適応入力デバイスから入力を受信するのを待機し(例えば、待機ユニット1418を用いて)、且つ所定の期間を超える期間にわたり適応入力デバイスからの入力の受信を待機したことに応じて、1つ以上の第2の視覚標識の表示を第1の視覚標識の表示に置換する(例えば、表示有効化ユニット1410を用いて)ように構成される。
【0284】
いくつかの実施形態において、処理ユニット1406は、仮想ジェスチャアイコンの表示を有効にし(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)、仮想ジェスチャアイコンの選択を検出し(例えば、検出ユニット1412を用いて)、且つ仮想ジェスチャアイコンの選択を検出することに応じて、仮想ジェスチャのメニューの表示を有効にする(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)ように構成される。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。処理ユニット1406は、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し(例えば、検出ユニット1412を用いて)、且つ仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャに対応する動作を実行する(例えば、実行ユニット1416を用いて)ように構成される。
【0285】
いくつかの実施形態において、処理ユニット1406は、仮想ジェスチャアイコンの表示を有効にし(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)、仮想ジェスチャアイコンの選択を検出し(例えば、検出ユニット1412を用いて)、且つ仮想ジェスチャアイコンの選択を検出することに応じて、仮想ジェスチャのメニューの表示を有効にする(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)ように構成される。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。処理ユニット1406は、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し(例えば、検出ユニット1412を用いて)、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャアイコンに対応する複数の視覚標識の表示を有効にし(例えば、表示有効化ユニット1410を用いて)、適応入力デバイスから第2の入力を受信し(例えば、受信ユニット1408を用いて)、且つ適応入力デバイスから第2の入力を受信することに応じて、それぞれの仮想ジェスチャに従って動作を実行する(例えば、実行ユニット1416を用いて)ように構成される。
【0286】
いくつかの実施形態において、処理ユニット1406は、適応入力デバイスから第2の入力を受信することに応じて、それぞれの仮想ジェスチャに対応する表示された視覚標識を移動して、タッチセンシティブ面ユニットに対する実際の接触の移動をシミュレートする(例えば、移動ユニット1414を用いて)ように構成される。
【0287】
いくつかの実施形態において、処理ユニット1406は、仮想ピンチイン/ピンチアウトジェスチャアイコンの表示を有効にし(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出し(例えば、検出ユニット1412を用いて)、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて、仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識の表示を有効にし(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)、適応入力デバイスから第2の入力を受信し(例えば、受信ユニット1408を用いて)、且つ適応入力デバイスから第2の入力を受信することに応じて、仮想ピンチイン/ピンチアウトジェスチャに従って動作を実行する(例えば、実行ユニット1416を用いて)ように構成される。
【0288】
いくつかの実施形態において、ズーム動作は、仮想ピンチイン/ピンチアウトジェスチャに従って実行される。
【0289】
いくつかの実施形態において、処理ユニット1406は、仮想デバイスアイコンの表示を有効にし(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)、仮想デバイスアイコンの選択を検出し(例えば、検出ユニット1412を用いて)、仮想デバイスアイコンの選択を検出することに応じて、仮想デバイス動作の種類を示す複数のアイコンを含む仮想デバイス動作のメニューの表示を有効にし(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出し(例えば、検出ユニット1412を用いて)、且つ仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて、それぞれの仮想デバイス動作に対応する動作を実行する(例えば、実行ユニット1416を用いて)ように構成される。
【0290】
いくつかの実施形態において、処理ユニット1406は、仮想デバイス回転アイコンの表示を有効にし(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)、仮想デバイス回転アイコンの選択を検出し(例えば、検出ユニット1412を用いて)、且つ仮想デバイス回転アイコンの選択を検出することに応じて、仮想デバイスの向きのメニューの表示を有効にする(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)ように構成される。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコンを含む。処理ユニット1406は、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出し(例えば、検出ユニット1412を用いて)、且つ仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて、それぞれの仮想デバイスの向きに従って表示を配向させる(例えば、配向ユニット1420を用いて)ように構成される。
【0291】
いくつかの実施形態において、電子デバイス1400はホームボタンを含む。処理ユニット1406は、ホームボタンアイコンの表示を有効にし(例えば、表示ユニット1402で表示有効化ユニット1410を用いて)、ホームボタンアイコンの選択を検出し(例えば、検出ユニット1412を用いて)、且つホームボタンアイコンの選択を検出することに応じて、ホームボタンの起動に対応する動作を実行する(例えば、実行ユニット1416を用いて)ように構成される。
【0292】
いくつかの実施形態において、処理ユニット1406は、表示ユニットでのメニューの表示を有効にしている間、第1の視覚標識がメニューに残るように第1の視覚標識の移動を制限する(例えば、制限ユニット1422を用いて)ように構成される。
【0293】
いくつかの実施形態において、処理ユニット1406は、表示ユニットでの第1のメニューの表示を有効にしている間、第1の視覚標識が第1のメニューに表示されない場合に適応入力デバイスから第2の入力を受信し(例えば、受信ユニット1408を用いて)、且つ第2の入力に応じて第1のメニューの表示を中止する(例えば、表示有効化ユニット1410を用いて)ように構成される。
【0294】
いくつかの実施形態において、処理ユニット1406は、表示ユニットでの第1のメニューの表示を有効にしている間、所定の期間を超える期間にわたり適応入力デバイスから入力を受信するのを待機し(例えば、待機ユニット1418を用いて)、且つ所定の期間を超える期間にわたり適応入力デバイスからの入力の受信を待機したことに応じて、第1のメニューの表示を中止する(例えば、表示有効化ユニット1410を用いて)ように構成される。
【0295】
いくつかの実施形態によると、
図15は、上述したような本発明の原理に従って構成された電子デバイス1500を示す機能ブロック図である。デバイスの機能ブロックは、本発明の原理を実行するハードウェア、ソフトウェア又はハードウェアとソフトウェアとの組合せで実現されてもよい。
図15に説明する機能ブロックは、上述の本発明の原理を実現するために組み合わされてもよく、あるいはサブブロックに分けられてもよいことが当業者により理解される。従って、本明細書の説明は、本明細書で説明する機能ブロックの考えられるあらゆる組合せ又は分割、あるいは更なる定義をサポートしてもよい。
【0296】
図15に示すように、電子デバイス1500は、仮想タッチに対応する第1の視覚標識を表示するように構成された表示ユニット1502と、指の接触を入力するように構成されたタッチセンシティブ面ユニット1504と、表示ユニット1502及びタッチセンシティブ面ユニット1504に結合された処理ユニット1506とを備える。いくつかの実施形態において、処理ユニット1506は、受信ユニット1508と、表示有効化ユニット1510と、検出ユニット1512とを備える。
【0297】
処理ユニット1506は、適応入力デバイスから第1の入力を受信し(例えば、受信ユニット1508を用いて)、且つ適応入力デバイスから第1の入力を受信することに応じて、仮想マルチタッチ接触のメニューの表示を有効にする(例えば、表示ユニット1502で表示有効化ユニット1510を用いて)ように構成される。仮想マルチタッチ接触のメニューは、仮想マルチタッチ接触の種類を示す複数のアイコンを含む。処理ユニット1506は、仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出し(例えば、検出ユニット1512を用いて)、且つ仮想マルチタッチ接触のメニューのそれぞれの仮想マルチタッチ接触アイコンの選択を検出することに応じて、それぞれの仮想マルチタッチ接触アイコンに対応する1つ以上の第2の視覚標識の表示を有効にする(例えば、表示ユニット1502で表示有効化ユニット1510を用いて)ように構成される。
【0298】
いくつかの実施形態によると、
図16は、上述したような本発明の原理に従って構成された電子デバイス1600を示す機能ブロック図である。デバイスの機能ブロックは、本発明の原理を実行するハードウェア、ソフトウェア又はハードウェアとソフトウェアとの組合せで実現されてもよい。
図16に説明する機能ブロックは、上述の本発明の原理を実現するために組み合わされてもよく、あるいはサブブロックに分けられてもよいことが当業者により理解される。従って、本明細書の説明は、本明細書で説明する機能ブロックの考えられるあらゆる組合せ又は分割、あるいは更なる定義をサポートしてもよい。
【0299】
図16に示すように、電子デバイス1600は、ユーザインタフェースオブジェクト(例えば、1つ以上のアイコン及び/又は標識)を表示するように構成された表示ユニット1602と、指の接触を入力するように構成されたタッチセンシティブ面ユニット1604と、表示ユニット1602及びタッチセンシティブ面ユニット1604に結合された処理ユニット1606とを備える。いくつかの実施形態において、処理ユニット1606は、受信ユニット1608と、表示有効化ユニット1610と、検出ユニット1612と、実行ユニット1614とを備える。
【0300】
いくつかの実施形態において、処理ユニット1606は、仮想タッチに対応する第1の視覚標識の表示を有効にし(例えば、表示ユニット1602で表示有効化ユニット1610を用いて)、適応入力デバイスから第1の入力を受信し(例えば、受信ユニット1608を用いて)、且つ適応入力デバイスから第1の入力を受信することに応じて、仮想ジェスチャのメニューの表示を有効にする(例えば、表示ユニット1602で表示有効化ユニット1610を用いて)ように構成される。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。処理ユニット1606は、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し(例えば、検出ユニット1612を用いて)、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャアイコンに対応する複数の視覚標識の表示を有効にし(例えば、表示ユニット1602で表示有効化ユニット1612を用いて)、適応入力デバイスから第2の入力を受信し(例えば、受信ユニット1608を用いて)、且つ適応入力デバイスから第2の入力を受信することに応じて、それぞれの仮想ジェスチャに従って動作を実行する(例えば、実行ユニット1614を用いて)ように構成される。
【0301】
いくつかの実施形態において、処理ユニット1606は、ピンチイン/ピンチアウトジェスチャアイコンの表示を有効にし(例えば、表示ユニット1602で表示有効化ユニット1610を用いて)、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出し(例えば、検出ユニット1612を用いて)、仮想ピンチイン/ピンチアウトジェスチャアイコンの選択を検出することに応じて、仮想ピンチイン/ピンチアウトジェスチャの接触に対応する2つの視覚標識の表示を有効にし(例えば、表示ユニット1602で表示有効化ユニット1612を用いて)、適応入力デバイスから入力を受信し(例えば、受信ユニット1608を用いて)、且つ適応入力デバイスから入力を受信することに応じて、それぞれの仮想ピンチイン/ピンチアウトジェスチャに従ってズーム動作を実行する(例えば、実行ユニット1614を用いて)ように構成される。
【0302】
いくつかの実施形態において、処理ユニット1606は、仮想ジェスチャアイコンの表示を有効にし(例えば、表示ユニット1602で表示有効化ユニット1610を用いて)、仮想ジェスチャアイコンの選択を検出し(例えば、検出ユニット1612を用いて)、且つ仮想ジェスチャアイコンの選択を検出することに応じて、仮想ジェスチャのメニューの表示を有効にする(例えば、表示ユニット1602で表示有効化ユニット1610を用いて)ように構成される。仮想ジェスチャのメニューは、仮想ジェスチャの種類を示す複数のアイコンを含む。処理ユニット1606は、仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出し(例えば、検出ユニット1612を用いて)、且つ仮想ジェスチャのメニューのそれぞれの仮想ジェスチャアイコンの選択を検出することに応じて、それぞれの仮想ジェスチャに対応する動作を実行する(例えば、実行ユニット1614を用いて)ように構成される。
【0303】
いくつかの実施形態によると、
図17は、上述したような本発明の原理に従って構成された電子デバイス1700を示す機能ブロック図である。デバイスの機能ブロックは、本発明の原理を実行するハードウェア、ソフトウェア又はハードウェアとソフトウェアとの組合せで実現されてもよい。
図17に説明する機能ブロックは、上述の本発明の原理を実現するために組み合わされてもよく、あるいはサブブロックに分けられてもよいことが当業者により理解される。従って、本明細書の説明は、本明細書で説明する機能ブロックの考えられるあらゆる組合せ又は分割、あるいは更なる定義をサポートしてもよい。
【0304】
図17に示すように、電子デバイス1700は、仮想デバイスアイコンを表示するように構成された表示ユニット1702と、指の接触を入力するように構成されたタッチセンシティブ面ユニット1704と、表示ユニット1702及びタッチセンシティブ面ユニット1704に結合された処理ユニット1706とを備える。いくつかの実施形態において、処理ユニット1706は、検出ユニット1708と、表示有効化ユニット1710と、実行ユニット1712とを備える。
【0305】
処理ユニット1706は、仮想デバイスアイコンの選択を検出し(例えば、検出ユニット1708を用いて)、且つ仮想デバイスアイコンの選択を検出することに応じて、仮想デバイス動作のメニューの表示を有効にする(例えば、表示ユニット1702で表示有効化ユニット1710を用いて)ように構成される。仮想デバイス動作のメニューは、仮想デバイス動作の種類を示す複数のアイコンを含む。処理ユニット1706は、仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出し(例えば、検出ユニット1710を用いて)、且つ仮想デバイス動作のメニューのそれぞれの仮想デバイス動作アイコンの選択を検出することに応じて、それぞれの仮想デバイス動作に対応する動作を実行する(例えば、実行ユニット1712を用いて)ように構成される。
【0306】
いくつかの実施形態によると、
図18は、上述したような本発明の原理に従って構成された電子デバイス1800を示す機能ブロック図である。デバイスの機能ブロックは、本発明の原理を実行するハードウェア、ソフトウェア又はハードウェアとソフトウェアとの組合せで実現されてもよい。
図18に説明する機能ブロックは、上述の本発明の原理を実現するために組み合わされてもよく、あるいはサブブロックに分けられてもよいことが当業者により理解される。従って、本明細書の説明は、本明細書で説明する機能ブロックの考えられるあらゆる組合せ又は分割、あるいは更なる定義をサポートしてもよい。
【0307】
図18に示すように、電子デバイス1800は、仮想デバイス回転アイコンを表示するように構成された表示ユニット1802と、指の接触を入力するように構成されたタッチセンシティブ面ユニット1804と、表示ユニット1802及びタッチセンシティブ面ユニット1804に結合された処理ユニット1806とを備える。いくつかの実施形態において、処理ユニット1806は、検出ユニット1808と、表示有効化ユニット1810と、配向ユニット1812とを備える。
【0308】
処理ユニット1806は、仮想デバイス回転アイコンの選択を検出し(例えば、検出ユニット1808を用いて)、且つ仮想デバイス回転アイコンの選択を検出することに応じて、仮想デバイスの向きのメニューの表示を有効にする(例えば、表示ユニット1802で表示有効化ユニット1810を用いて)ように構成される。仮想デバイスの向きのメニューは、仮想デバイスの向きの種類を示す複数のアイコンを含む。処理ユニット1806は、仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出し(例えば、検出ユニット1808を用いて)、且つ仮想デバイスの向きのメニューのそれぞれの仮想デバイスの向きのアイコンの選択を検出することに応じて、それぞれの仮想デバイスの向きに従って表示を配向させる(例えば、配向ユニット1812を用いて)ように構成される。
【0309】
いくつかの実施形態によると、
図19は、上述したような本発明の原理に従って構成された電子デバイス1900を示す機能ブロック図である。デバイスの機能ブロックは、本発明の原理を実行するハードウェア、ソフトウェア又はハードウェアとソフトウェアとの組合せで実現されてもよい。
図19に説明する機能ブロックは、上述の本発明の原理を実現するために組み合わされてもよく、あるいはサブブロックに分けられてもよいことが当業者により理解される。従って、本明細書の説明は、本明細書で説明する機能ブロックの考えられるあらゆる組合せ又は分割、あるいは更なる定義をサポートしてもよい。
【0310】
図19に示すように、電子デバイス1900は、視覚標識を表示するように構成された表示ユニット1902と、指の接触を入力するように構成されたタッチセンシティブ面ユニット1904と、表示ユニット1902及びタッチセンシティブ面ユニット1904に結合された処理ユニット1906とを備える。いくつかの実施形態において、処理ユニット1906は、表示有効化ユニット1908と、受信ユニット1910と、移動ユニット1912と、作成ユニット1914と、関連付けユニット1916と、格納ユニット1918と、実行ユニット1920とを備える。
【0311】
処理ユニット1906は、仮想ジェスチャ記録モードの間に表示ユニットでの複数の視覚標識の表示を有効にし(例えば、表示ユニット1902で表示有効化ユニット1908を用いて)、且つ複数の視覚標識の視覚標識毎に、それぞれの視覚標識に対するそれぞれのユーザ入力を適応入力デバイスから受信し(例えば、受信ユニット1910を用いて)、それぞれのユーザ入力に従ってそれぞれの視覚標識を移動し(例えば、移動ユニット1912及び/又は表示有効化ユニット1910を用いて)且つそれぞれの視覚標識及びそれぞれの視覚標識の移動に対応するそれぞれの軌跡の同時表示を有効にする(例えば、表示ユニット1902で表示有効化ユニット1908を用いて)ように構成される。処理ユニット1906は、複数の視覚標識及び複数の視覚標識の移動に対応するユーザ規定の仮想ジェスチャを作成し(例えば、作成ユニット1914を用いて)、ユーザ規定の仮想ジェスチャを電子デバイスの所定の動作と関連付け(例えば、関連付けユニット1916を用いて)、且つユーザ規定の仮想ジェスチャを格納する(例えば、格納ユニット1918を用いて)ように構成される。
【0312】
いくつかの実施形態において、処理ユニット1906は、仮想ジェスチャ記録モードの間に複数のそれぞれの視覚標識及び対応する複数のそれぞれの軌跡の同時表示を有効にする(例えば、表示ユニット1902で表示有効化ユニット1908を用いて)ように構成される。
【0313】
いくつかの実施形態において、処理ユニット1906は、ユーザ規定の仮想ジェスチャを作成して電子デバイスの所定の動作と関連付けた後、適応入力デバイスから入力を受信し(例えば、受信ユニット1910を用いて)、且つ適応入力デバイスから入力を受信することに応じて、ユーザ規定の仮想ジェスチャと関連付けられた所定の動作を実行する(例えば、実行ユニット1920を用いて)ように構成される。
【0314】
いくつかの実施形態において、処理ユニット1906は、適応入力デバイスから入力を受信することに応じて、ユーザ規定の仮想ジェスチャの複数のそれぞれの視覚標識のアニメーション化された移動の表示をそれぞれの軌跡に沿って有効にする(例えば、表示ユニット1902で表示有効化ユニット1908を用いて)ように構成される。
【0315】
上述した情報処理方法における動作は、汎用プロセッサ又は特定用途向けチップ等の情報処理装置における1つ以上の機能モジュールを実行することにより実現されてもよい。これらのモジュール、これらのモジュールの組み合わせ及び/又は汎用ハードウェアとのそれらの組み合わせ(例えば、
図1A及び
図3に関して上述したような)は全て、本発明の保護の範囲内に含まれる。
【0316】
図6A〜
図6E、
図7、
図8、
図9、
図10、
図11、
図12及び
図13を参照して上述した動作は、
図1A及び
図1Bに示した構成要素により実現されてもよい。例えば、受信動作606、表示動作616及び制限動作624は、事象ソータ170、事象レコグナイザ180及び事象ハンドラ190により実現されてもよい。事象ソータ170の事象モニタ171はタッチセンシティブディスプレイ112に対する接触を検出し、事象ディスパッチャモジュール174は事象情報をアプリケーション136−1に配信する。アプリケーション136−1の各事象レコグナイザ180は、事象情報を各事象定義186と比較し、適応入力デバイスから受信された入力がユーザインタフェース上のオブジェクトの選択又はある向きから別の向きへのデバイスの回転等の所定の事象又はサブ事象に対応するかを判定する。所定の各事象又はサブ事象が検出された場合、事象レコグナイザ180は、事象又はサブ事象の検出と関連付けられた事象ハンドラ190を起動する。事象ハンドラ190は、アプリケーション内部状態192を更新するためにデータ更新部176又はオブジェクト更新部177を利用してもよくあるいは呼び出してもよい。いくつかの実施形態において、事象ハンドラ190は、各GUI更新部178にアクセスし、アプリケーションにより表示されているものを更新する。同様に、
図1A及び
図1Bに示す構成要素に基づいて他の処理を実現できる方法は、当業者には明らかとなるだろう。
【0317】
説明の目的で、特定の実施形態を参照して上記説明を行った。しかし、上記の例示的な説明は、本発明を網羅すること又は開示された厳密な形式に限定することを意図しない。多くの変更及び変形が上記教示に鑑みて可能である。本発明の原理及びその実際的な応用例を最適に説明するために実施形態を選択して説明した。これにより、当業者は、考えられる特定の用途に適するような本発明及び種々の変更を含む種々の実施形態を最適に利用できる。