(58)【調査した分野】(Int.Cl.,DB名)
第1のディスプレイを備える第1の電子デバイスであって、前記第1の電子デバイスは、第2のディスプレイを備え、かつ前記第1の電子デバイスから離れた第2の電子デバイスとペアリングされた関係にある、第1の電子デバイスにおいて、
前記第1の電子デバイスの通知設定を前記第2の電子デバイスにミラーリングするオプションを含み、複数のリモート通知パラメータの状態を設定する複数のオプションを含む、ユーザインタフェースを表示することと、
前記第1の電子デバイスの通知設定を前記第2の電子デバイスにミラーリングする前記オプションの選択を表すユーザ入力を検出することと、
前記第1の電子デバイスの通知設定を前記第2の電子デバイスにミラーリングする前記オプションの選択を表すユーザ入力を検出したことに応じて、
前記第2の電子デバイスを前記第1の電子デバイスの通知設定に設定させることと、
前記ユーザインタフェースにおいて前記複数の通知パラメータの状態を設定する前記複数のオプションを無効化することと、
情報を含む複数のアラートを受信することと、
前記複数のアラートを受信したことに応じて、
前記第1のディスプレイ上に前記複数のアラートのうちの第1のセットのアラートに対応するローカル通知を表示することと、
前記複数のアラートの少なくとも一部を表すデータを前記第2の電子デバイスへ送信することと、
を含み、
前記データは、前記第2の電子デバイスに、前記第1の電子デバイスと前記第2の電子デバイスとの間でミラーリングされた通知設定に基づいて、前記第2のディスプレイ上に前記複数のアラートの前記少なくとも一部のうちの第2のセットのアラートに対応するリモート通知を表示させる命令を含む、方法。
リモート通知パラメータの状態を設定するオプションを含むユーザインタフェースを表示することであって、前記リモート通知は、前記リモート通知パラメータに従って前記第2のディスプレイ上に表示されることとなる、ことと、
前記リモート通知パラメータの選択された状態を表すユーザ入力を検出することと、
前記第2の電子デバイスに、前記第2の電子デバイス上の前記リモート通知パラメータを前記リモート通知パラメータの前記選択された状態に設定させる命令を、含むデータを、送信することと、
を更に含む、請求項1〜4のいずれか一項に記載の方法。
1つ以上のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記1つ以上のプログラムが命令を含み、前記命令は、ディスプレイを含む電子デバイスの、1つ以上のプロセッサによって実行されると、前記デバイスに、
前記電子デバイスの通知設定を第2の電子デバイスにミラーリングするオプションを含み、複数のリモート通知パラメータの状態を設定する複数のオプションを含む、ユーザインタフェースを表示させ、
前記電子デバイスの通知設定を前記第2の電子デバイスにミラーリングする前記オプションの選択を表すユーザ入力を検出させ、
前記電子デバイスの通知設定を前記第2の電子デバイスにミラーリングする前記オプションの選択を表すユーザ入力を検出したことに応じて、
前記第2の電子デバイスを前記電子デバイスの通知設定に設定させるようにさせ、
前記ユーザインタフェースにおいて前記複数の通知パラメータの状態を設定する前記複数のオプションを無効化させ、
情報を含む複数のアラートを受信させ、
前記複数のアラートを受信したことに応じて、
前記ディスプレイ上に前記複数のアラートのうちの第1のセットのアラートに対応するローカル通知を表示させ、
前記複数のアラートの少なくとも一部を表すデータを前記第2の電子デバイスへ送信させ、
前記データは、第2のディスプレイを備える前記第2の電子デバイスに、前記電子デバイスと前記第2の電子デバイスとの間でミラーリングされた通知設定に基づいて、前記第2のディスプレイ上に前記複数のアラートの前記少なくとも一部のうちの第2のセットのアラートに対応するリモート通知を表示させる命令を含み、
前記第2の電子デバイスは、前記電子デバイスから離れており、かつ前記電子デバイスとペアリングされた関係にある、非一時的コンピュータ可読記憶媒体。
【発明を実施するための形態】
【0042】
以下の説明では、例示的な方法、パラメータなどが記載される。ただし、そのような説明の目的は、本開示の範囲を制限することではなく、例示的な実施形態の説明を提供することであることを理解されたい。
【0043】
電子デバイスを構成する効率的な方法とインタフェースとを提供する電子デバイスが必要とされている。例えば、デバイスは別のデバイスに関する設定を構成するために使用されてもよい。一部の実施形態においては、前者のデバイスは、後者のデバイスよりも大きなディスプレイを有している場合があり、これにより、ユーザにとって設定を操作、選択しやすくなる。そのような技術は、イベント通知にアクセスするユーザの認識的負担を軽減し、それによって生産性を高め得る。更には、そのような技術は、通常であれば冗長なユーザ入力に対して浪費される、プロセッサ及びバッテリの電力を削減することができる。
【0045】
以下の説明では、様々な要素を説明するために「第1」、「第2」などの用語を使用するが、これらの要素はこれらの用語によって限定されるべきではない。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。例えば、説明されている様々な実施形態の範囲から逸脱することなく、第1のタッチは第2のタッチと称することができ、同様に、第2のタッチは第1のタッチと称し得る。第1のタッチと第2のタッチは共にタッチであるが、同じタッチではない。
【0046】
本明細書で説明される様々な実施形態の説明で使用される用語は、特定の実施形態を説明することのみを目的とするものであって、限定することを意図するものではない。様々な記載の実施形態、及び添付の特許請求の範囲で使用される時に、単数形「a」、「an」、及び「the」は、文脈が別途明確に示さない限り、複数形も同様に含むことが意図されている。本明細書で使用される時に、用語「及び/又は」が、関連する列挙された項目のうちの1つ以上の全ての可能な任意の組み合わせを指し、かつこれを含むことをもまた理解されたい。用語「includes(含む)、「including(含む)」、「comprises(含む、備える)」及び/又は「comprising(含む、備える)」は、本明細書で使用される時、述べられた特徴、整数、ステップ、動作、要素、及び/又は構成要素の存在を指定するが、1つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、及び/又はそれらの群、の存在又は追加を除外しないことが更に理解されるであろう。
【0047】
用語「if(〜場合に)」は、文脈に応じて「when(〜時に)」、「upon(〜すると)」、「in response to determining(〜と判定したことに応じて)」、又は「in response to detecting(〜を検出したことに応じて)」を意味すると解釈することができる。同様に、句「if it is determined(〜と判定される場合に)」又は「if[a stated condition or event]is detected([述べられる条件又はイベント]が検出される場合に)」は、文脈に応じて「upon determining(〜と判定される時に)」、又は「in response to determining(〜との判定に応じて)」、又は「upon detecting[the stated condition or event]([述べられる条件又はイベント]の検出時に)」、又は「in response to detecting[the stated condition or event]([述べられる条件又はイベント]を検出したことに応じて)」を意味すると解釈することができる。
【0048】
電子デバイス、かかるデバイス用のユーザインタフェース、及びかかるデバイスを使用するための関連処理、の実施形態を説明する。一部の実施形態において、このデバイスは、PDA機能及び/又は音楽再生機能などの、他の機能も含む、モバイル電話機などのポータブル通信デバイスである。ポータブル多機能デバイスの例示的な実施形態としては、限定を伴わずに、California州CupertinoのApple Inc.のiPhone(登録商標)、iPod Touch(登録商標)、及びiPad(登録商標)デバイスが挙げられる。タッチ感知面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を備えたラップトップ又はタブレットコンピュータなどの他のポータブル電子デバイスも、任意選択的に、使用される。また、一部の実施形態において、このデバイスはポータブル通信デバイスではなく、タッチ感知面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を備えるデスクトップコンピュータであることを理解されたい。
【0049】
以下の検討では、ディスプレイ及びタッチ感知面を備えた電子デバイスについて説明する。しかし、この電子デバイスが、物理キーボード、マウス、及び/又はジョイスティックなどの1つ以上の他の物理ユーザインタフェースデバイスを任意選択的に含むことを理解されたい。
【0050】
このデバイスは、描画アプリケーション、プレゼンテーションアプリケーション、ワードプロセッシングアプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、スプレッドシートアプリケーション、ゲームアプリケーション、電話アプリケーション、テレビ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、トレーニングサポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、ウェブブラウジングアプリケーション、デジタル音楽再生アプリケーション、及び/又はデジタルビデオ再生アプリケーションのうちの1つ以上などの、様々なアプリケーションをサポートすることができる。
【0051】
このデバイス上で実行される様々なアプリケーションは、タッチ感知面などの、少なくとも1つの共通の物理ユーザインタフェースデバイスを、任意選択的に使用する。タッチ感知面の1つ以上の機能、並びにデバイス上に表示される対応する情報は、アプリケーションごとに、及び/又は対応するアプリケーション内で、任意選択的に、調節及び/又は変更される。このように、デバイスの共通の(タッチ感知面などの)物理アーキテクチャは、ユーザにとって直観的かつ透過的なユーザインタフェースを有する様々なアプリケーションを、任意選択的にサポートする。
【0052】
次に、タッチ感知ディスプレイを備えるポータブルデバイスの実施形態に注意を向ける。
図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を任意選択的に含む。デバイス100は、デバイス100(例えば、デバイス100のタッチ感知ディスプレイシステム112などのタッチ感知面)上の接触の強度を検出するための、1つ以上の接触強度センサ165を任意選択的に含む。デバイス100は、デバイス100上に触知出力を生成する(例えば、デバイス100のタッチ感知ディスプレイシステム112又はデバイス300のタッチパッド355などの、タッチ感知面上に触知出力を生成する)ための、1つ以上の触知出力生成器167を任意選択的に含む。これらの構成要素は、1つ以上の通信バス又は信号ライン103を介して任意選択的に通信する。
【0053】
本明細書及び特許請求の範囲で使用される時、タッチ感知面上の接触の「強度」という用語は、タッチ感知面上の接触(例えば、指接触)の力又は圧力(単位面積当りの力)、あるいはタッチ感知面上の接触の力又は圧力の代替物(代用物)を指す。接触の強度は、少なくとも4つの別個の数値を含み、より典型的には、何百もの異なる数値(例えば、少なくとも256)を含む、数値の範囲を有する。接触の強度は、様々な方法及び様々なセンサ、又はセンサの組み合わせを使用して、任意選択的に、判定(又は、測定)される。例えば、タッチ感知面の下に又は隣接して配置された1つ以上の力センサは、タッチ感知面上の様々な点における力を測定するために、任意選択的に使用される。いくつかの実装において、複数の力センサの力測定値を組み合わせて(例えば、加重平均)、接触力の推定値を判定する。同様に、スタイラスの感圧性先端部を任意選択的に使用して、タッチ感知面上のスタイラスの圧力を判定する。あるいは、タッチ感知面上で検出される接触領域のサイズ及び/若しくはその変化、接触に近接するタッチ感知面の電気容量及び/若しくはその変化、並びに/又は、接触に近接するタッチ感知面の抵抗及び/若しくはその変化が、タッチ感知面上の接触の力又は圧力の代替物として、任意選択的に用いられる。いくつかの実装では、接触の力又は圧力の代替的測定値は、強度閾値を超えているか否かを判定するために直接に用いられる(例えば、強度閾値は、代替的測定値に対応する単位で記述される)。いくつかの実装では、接触の力又は圧力の代替的測定値は、推定される力又は圧力に変換され、この推定される力又は圧力を用いて、強度閾値を超えているか否かを判定する(例えば、強度閾値は、圧力の単位で測定された圧力閾値である)。接触の強度をユーザ入力の属性として使用することにより、アフォーダンスを(例えば、タッチ感知ディスプレイ上に)表示するための、及び/又は、ユーザ入力を(例えば、タッチ感知ディスプレイ、タッチ感知面、又はノブ若しくはボタンなどの物理的/機械的制御部を介して)受けるための、面積が制限されている、低減されたサイズのデバイス上で、他の場合であればユーザによってアクセスすることが不可能であり得る、追加的なデバイス機能への、ユーザのアクセスが可能となる。
【0054】
本明細書及び特許請求の範囲で使用される時、用語「触知出力」は、ユーザの触覚でユーザによって検出されることになる、デバイスの従前の位置に対するデバイスの物理的変位、デバイスの構成要素(例えば、タッチ感知面)の、デバイスの別の構成要素(例えば、筐体)に対する物理的変位、又はデバイスの質量中心に対する構成要素の変位を指す。例えば、デバイス又はデバイスの構成要素が、タッチに敏感なユーザの表面(例えば、ユーザの手の指、手のひら、又は他の部分)に接触している状況において、物理的変位によって生成された触知出力は、デバイス又はデバイスの構成要素の物理的特性の認識された変化に相当する触感として、ユーザによって解釈される。例えば、タッチ感知面(例えば、タッチ感知ディスプレイ又はトラックパッド)の移動は、ユーザによって、物理アクチュエータボタンの「ダウンクリック」又は「アップクリック」として任意選択的に解釈される。いくつかの場合、ユーザの動作により物理的に押された(例えば、変位された)タッチ感知面に関連付けられた物理アクチュエータボタンの移動がない時でさえ、ユーザは「ダウンクリック」又は「アップクリック」などの触感を感じるであろう。別の実施例として、タッチ感知面の移動は、タッチ感知面の平滑度に変化がない場合であっても、ユーザによって、そのタッチ感知面の「粗さ」として、任意選択的に解釈又は感知される。そのようなユーザによるタッチの解釈は、ユーザの個人的な感覚認知に左右されるものではあるが、大多数のユーザに共通する、多くのタッチの感覚認知が存在する。したがって、触知出力が、ユーザの特定の感覚認知(例えば、「アップクリック」「ダウンクリック」、「粗さ」)に対応するものと記述される場合、別途記載のない限り、生成された触知出力は、典型的な(又は、平均的な)ユーザの記述された感覚認知を生成するデバイス、又はデバイスの構成要素の物理的変位に対応する。
【0055】
デバイス100は、ポータブル多機能デバイスの一実施例に過ぎず、デバイス100は、示されるものよりも多いか又は少ない構成要素を任意選択的に有するか、2つ以上の構成要素を任意選択的に組み合わせるか、又は構成要素の異なる構成若しくは配置を任意選択的に有することを理解されたい。
図1Aに示される様々な構成要素は、1つ以上の信号処理回路及び/又は特定用途向け集積回路を含む、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの双方の組み合わせの形態で実装される。
【0056】
メモリ102は、1つ以上のコンピュータ可読記憶媒体を含んでもよい。このコンピュータ可読記憶媒体は、有形かつ非一時的であってよい。メモリ102は、高速ランダムアクセスメモリを含んでよく、1つ以上の磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性ソリッドステートメモリデバイスなどの、不揮発性メモリもまた含んでよい。メモリコントローラ122は、デバイス100の他の構成要素によるメモリ102へのアクセスを制御してよい。
【0057】
周辺機器インタフェース118を使用して、このデバイスの入力及び出力周辺機器を、CPU120及びメモリ102に連結することができる。1つ以上のプロセッサ120は、デバイス100のための様々な機能を実行するため並びにデータ処理を実行するために、メモリ102に記憶された様々なソフトウェアプログラム及び/若しくは命令セットを動作させたり、又は実行したりする。一部の実施形態において、周辺機器インタフェース118、CPU120、及びメモリコントローラ122は、チップ104などのシングルチップ上に実装してもよい。いくつかの他の実施形態では、それらは、別個のチップ上に実装してもよい。
【0058】
RF(無線周波数)回路108は、電磁信号とも呼ばれるRF信号を送受信する。RF回路108は、電気信号を電磁信号に、又は電磁信号を電気信号に変換し、電磁信号を介して通信ネットワーク及び他の通信デバイスと通信する。RF回路108は、アンテナシステム、RF送受信機、1つ以上の増幅器、同調器、1つ以上の発振器、デジタル信号プロセッサ、CODECチップセット、加入者識別モジュール(SIM)カード、メモリなどを含むがこれらに限定されない、これらの機能を実行するための周知の回路を、任意選択的に含む。RF回路108は、ワールドワイドウェブ(WWW)とも呼ばれるインターネット、イントラネット、並びに/又は、セルラー電話ネットワーク、無線ローカルエリアネットワーク(LAN)及び/若しくは、メトロポリタンエリアネットワーク(MAN)、などの無線ネットワーク、及び他のデバイスと無線通信によって、任意選択的に通信する。RF回路108は、近距離通信無線などによる近距離無線通信(NFC)フィールドを検出するための周知の回路を任意選択的に含む。無線通信は、複数の通信規格、通信プロトコル、及び通信技術のうちのいずれかを、任意選択的に使用し、それらの通信規格、通信プロトコル、及び通信技術としては、移動通信用のグローバルシステム(Global System for Mobile Communications、GSM(登録商標))、拡張データGSM環境(Enhanced Data GSM Environment、EDGE)、高速ダウンリンクパケット接続(high-speed downlink packet access、HSDPA)、高速アップリンクパケット接続(high-speed uplink packet access、HSUPA)、Evolution,Data−Only(EV−DO)、HSPA、HSPA+、2重セルHSPA(Dual-Cell HSPA、DC−HSPDA)、ロングタームエボリューション(long term evolution、LTE)、近距離無線通信(near field communication、NFC)、広帯域符号分割多元接続(wideband code division multiple access、W−CDMA)、符号分割多元接続(code division multiple access、CDMA)、時分割多元接続(time division multiple access、TDMA)、Bluetooth(登録商標)、Bluetooth Low Energy(BTLE)、Wireless Fidelity(Wi−Fi)(登録商標)(例えば、IEEE 802.11a、IEEE 802.11b、IEEE 802.11g、IEEE 802.11n、及び/又はIEEE 802.11ac)、ボイスオーバーインターネットプロトコル(voice over Internet Protocol、VoIP)、Wi−MAX、電子メール用のプロトコル(例えば、インターネットメッセージアクセスプロトコル(Internet message access protocol、IMAP)及び/又はポストオフィスプロトコル(post office protocol、POP))、インスタントメッセージング(例えば、拡張可能メッセージング及びプレゼンスプロトコル(extensible messaging and presence protocol、XMPP)、インスタントメッセージング及びプレゼンス利用拡張向けセッション開始プロトコル(Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions、SIMPLE)、インスタントメッセージング及びプレゼンスサービス(Instant Messaging and Presence Service、IMPS))、及び/又はショートメッセージサービス(Short Message Service、SMS)、あるいは本文書の出願日現在までに未だ開発されていない通信プロトコルを含めた任意の他の好適な通信プロトコルが挙げられるが、これらに限定されない。
【0059】
オーディオ回路110、スピーカ111、及びマイクロフォン113は、ユーザとデバイス100との間のオーディオインタフェースを提供する。オーディオ回路110は、周辺機器インタフェース118からオーディオデータを受信し、このオーディオデータを電気信号に変換し、この電気信号をスピーカ111に送信する。スピーカ111は、電気信号を人間の可聴音波に変換する。オーディオ回路110は、マイクロフォン113により音波から変換された電気信号もまた受信する。オーディオ回路110は、電気信号をオーディオデータに変換し、処理するためにオーディオデータを周辺機器インタフェース118に送信する。オーディオデータは、周辺機器インタフェース118によって、メモリ102及び/又はRF回路108から取得され、及び/又は、それらに送信されてもよい。一部の実施形態において、オーディオ回路110はヘッドセットジャック(例えば、
図2の212)を更に備える。ヘッドセットジャックは、オーディオ回路110と、出力専用ヘッドホン又は出力(例えば、片耳又は両耳用のヘッドホン)及び入力(例えば、マイクロフォン)の双方を有するヘッドセットなどの、取り外し可能なオーディオ入出力周辺機器と、の間のインタフェースを提供する。
【0060】
I/Oサブシステム106は、周辺機器インタフェース118に、タッチスクリーン112及び他の入力制御デバイス116などのデバイス100の入出力周辺機器を連結する。I/Oサブシステム106は、任意選択的に、ディスプレイコントローラ156、光センサコントローラ158、強度センサコントローラ159、触覚フィードバックコントローラ161、及び他の入力若しくは制御デバイスのための1つ以上の入力コントローラ160を含む。1つ以上の入力コントローラ160は、他の入力制御デバイス116との間で、電気信号を受信/送信する。他の入力制御デバイス116は、任意選択的に、物理ボタン(例えば、プッシュボタン、ロッカボタンなど)、ダイヤル、スライダスイッチ、ジョイスティック、クリックホイールなどを含む。いくつかの代替的実施形態では、入力コントローラ(単数又は複数)160は、任意選択的に、キーボード、赤外線ポート、USBポート、及びマウスなどのポインタデバイスのうちのいずれかに連結される(又は、いずれにも連結されない)。1つ以上のボタン(例えば、
図2の208)は、任意選択的に、スピーカ111及び/又はマイクロフォン113の音量調節のための、アップ/ダウンボタンを含む。1つ以上のボタンは、任意選択的に、プッシュボタン(例えば、
図2の206)を含む。
【0061】
2005年12月23日に出願された、米国特許第7,657,849号である米国特許出願第11/322,549号、「Unlocking a Device by Performing Gestures on an Unlock Image」に記載されているように、プッシュボタンの素早い押し下げにより、タッチスクリーン112のロックを解除するか、又はデバイスのロック解除にタッチスクリーン上のジェスチャを用いる処理を開始してもよい。この特許は、その全体が本明細書において参照により組み込まれている。プッシュボタン(例えば、206)をより長く押し下げることにより、デバイス100の電源をオンオフすることができる。ユーザは、1つ以上のボタンの機能をカスタマイズすることができる。タッチスクリーン112は、仮想又はソフトボタン、及び1つ以上のソフトキーボードを実現するために用いられる。
【0062】
タッチ感知ディスプレイ112は、デバイスとユーザとの間の入力インタフェース及び出力インタフェースを提供する。ディスプレイコントローラ156は、タッチスクリーン112から電気信号を受信し、それへ電気信号を送信する。タッチスクリーン112は、ユーザに視覚出力を表示する。この視覚出力としては、グラフィック、テキスト、アイコン、ビデオ、及びそれらの任意の組み合わせ(「グラフィック」と総称される)を挙げることができる。一部の実施形態において、視覚出力の一部又は全てはユーザインタフェースオブジェクトに対応してもよい。
【0063】
タッチスクリーン112は、触覚及び/若しくは触感の接触に基づくユーザからの入力を受け付けるタッチ感知面、センサ、又はセンサのセットを有している。タッチスクリーン112及びディスプレイコントローラ156は(メモリ102内の任意の関連モジュール及び/又は命令セットと共に)、タッチスクリーン112上で接触(及び任意の接触の移動又は中断)を検出し、検出された接触をタッチスクリーン112上に表示されたユーザインタフェースオブジェクト(例えば、1つ以上のソフトキー、アイコン、ウェブページ、又は画像)との対話に変換する。例示的な実施形態では、タッチスクリーン112とユーザとの間の接触点は、ユーザの指に対応する。
【0064】
タッチスクリーン112は、LCD(liquid crystal display、液晶ディスプレイ)技術、LPD(light emitting polymer display、発光ポリマーディスプレイ)技術、又はLED(light emitting diode、発光ダイオード)技術を用いてもよいが、他の実施形態では、その他のディスプレイ技術を使用してもよい。タッチスクリーン112及びディスプレイコントローラ156は、現在既知の、又は今後開発される複数のタッチ感知技術のうちのいずれかを使用して、接触、及びその接触のあらゆる移動若しくは中断を検出することができ、これらの技術としては、静電容量技術、抵抗性技術、赤外線技術、及び表面弾性波技術、並びにタッチスクリーン112との1つ以上の接触点を判定するための、他の近接センサアレイ又は他の要素、が挙げられるが、これらに限定されない。例示的な実施形態では、California州CupertinoのApple Inc.によるiPhone(登録商標)及びiPod Touch(登録商標)において見られるような、投影型相互静電容量感知技術が使用されている。
【0065】
タッチスクリーン112の一部の実施形態におけるタッチ感知ディスプレイは、以下の米国特許、第6,323,846号(Westermanら)、第6,570,557号(Westermanら)、及び/又は第6,677,932号(Westerman)、及び/又は米国特許出願公開第2002/0015024(A1)号に記載されているマルチタッチ感知タッチパッドに類似し得る。これらの文献は、それぞれその全体が本明細書において参照により組み込まれている。ただし、タッチスクリーン112はデバイス100からの視覚出力を表示するのに対して、タッチ感知タッチパッドは視覚出力を提供しない。
【0066】
タッチスクリーン112の一部の実施形態におけるタッチ感知ディスプレイは、以下の出願で説明されているとおりにすることができる。(1)2006年5月2日出願の米国特許出願第11/381,313号、「Multipoint Touch Surface Controller」、(2)2004年5月6日出願の同第10/840,862号、「Multipoint Touchscreen」、(3)2004年7月30日出願の同第10/903,964号、「Gestures For Touch Sensitive Input Devices」、(4)2005年1月31日出願の同第11/048,264号、「Gestures For Touch Sensitive Input Devices」、(5)2005年1月18日出願の同第11/038,590号、「Mode−Based Graphical User Interfaces For Touch Sensitive Input Devices」、(6)2005年9月16日出願の同第11/228,758号、「Virtual Input Device Placement On A Touch Screen User Interface」、(7)2005年9月16日出願の同第11/228,700号、「Operation Of A Computer With A Touch Screen Interface」、(8)2005年9月16日出願の同第11/228,737号、「Activating Virtual Keys Of A Touch−Screen Virtual Keyboard」、及び(9)2006年3月3日出願の同第11/367,749号、「Multi−Functional Hand−Held Device」。これらの出願の全ては、全体が参照により本明細書に組み込まれる。
【0067】
タッチスクリーン112は、100dpiを超えるビデオ解像度を有し得る。一部の実施形態において、タッチスクリーンは約160dpiのビデオ解像度を有する。ユーザは、スタイラス、指などの、任意の好適な物体又は付属物を使用して、タッチスクリーン112と接触することができる。一部の実施形態において、ユーザインタフェースは、主として指に基づく接触及びジェスチャによって機能するように設計され、タッチスクリーン上の指の接触面積が広いことにより、スタイラスに基づく入力よりも精度が低いことがある。一部の実施形態において、デバイスは、粗い指に基づく入力を正確なポインタ/カーソル位置又はユーザの望むアクションを実行するためのコマンドに変換する。
【0068】
一部の実施形態において、タッチスクリーンに加えて、デバイス100は、特定の機能をアクティブ化又は非アクティブ化させるためのタッチパッド(図示せず)を含んでもよい。一部の実施形態において、タッチパッドは、タッチスクリーンとは異なり、視覚出力を表示しない、デバイスのタッチ感知領域である。タッチパッドは、タッチスクリーン112とは別個のタッチ感知面、又はタッチスクリーンによって形成されるタッチ感知面の拡張部とすることができる。
【0069】
デバイス100はまた、様々な構成要素に電力を供給するための電力システム162をも含む。電力システム162は、電力管理システム、1つ以上の電源(例えば、バッテリ、交流(AC))、再充電システム、停電検出回路、電力コンバータ又はインバータ、電力状態インジケータ(例えば、発光ダイオード(LED))、並びにポータブルデバイスにおける電力の生成、管理、及び分配に関連する任意の他の構成要素を含んでもよい。
【0070】
デバイス100はまた、1つ以上の光センサ164を含んでもよい。
図1Aは、I/Oサブシステム106内の光センサコントローラ158に連結された光センサを示す。光センサ164は、電荷結合デバイス(CCD)又は相補的金属酸化物半導体(CMOS)フォトトランジスタを含んでもよい。光センサ164は、1つ以上のレンズを通して投影された、環境からの光を受光し、その光を、画像を表すデータに変換する。撮像モジュール143(カメラモジュールとも呼ばれる)と連携して、光センサ164は静止画像又はビデオをキャプチャすることができる。一部の実施形態において、タッチスクリーンディスプレイを静止画像及び/又はビデオ画像取得のためのビューファインダとして使用することができるように、デバイスの前面のタッチスクリーンディスプレイ112の反対側である、デバイス100の背面に光センサが配置されている。一部の実施形態において、ユーザが他のテレビ会議参加者をタッチスクリーンディスプレイ上で見る間に、そのユーザの画像をテレビ会議のために得ることができるように、デバイスの前面に光センサが配置されている。一部の実施形態において、光センサ164の位置は、ユーザによって(例えば、デバイス筐体内のレンズ及びセンサを回転させることによって)変更することができ、それにより、テレビ会議並びに静止画像及び/又はビデオ画像の取得の双方のために、単一の光センサ164を、タッチスクリーンディスプレイと共に使用することができる。
【0071】
デバイス100はまた、1つ以上の接触強度センサ165も任意選択的に含む。
図1Aは、I/Oサブシステム106内の強度センサコントローラ159に連結された接触強度センサを示す。接触強度センサ165は、1つ以上のピエゾ抵抗ひずみゲージ、電気容量式力センサ、電気力センサ、圧電力センサ、光学力センサ、容量式タッチ感知面、又は他の強度センサ(例えば、タッチ感知面上の接触の力(又は圧力)を測定するために使用するセンサ)を、任意選択的に含む。接触強度センサ165は、環境から接触強度情報(例えば、圧力情報又は圧力情報の代用物)を受信する。一部の実施形態において、少なくとも1つの接触強度センサが、タッチ感知面(例えば、タッチ感知ディスプレイシステム112)に配置されているか、又は、それに近接している。一部の実施形態において、少なくとも1つの接触強度センサが、デバイス100の前面に配置されたタッチスクリーンディスプレイ112の反対側である、デバイス100の背面に配置されている。
【0072】
デバイス100は1つ以上の近接センサ166を含んでもよい。
図1Aは、周辺機器インタフェース118と連結された近接センサ166を示す。あるいは、近接センサ166は、I/Oサブシステム106内の入力コントローラ160に連結されてもよい。近接センサ166は、米国特許出願第11/241,839号、「Proximity Detector In Handheld Device」、同第11/240,788号、「Proximity Detector In Handheld Device」、同第11/620,702号、「Using Ambient Light Sensor To Augment Proximity Sensor Output」、同第11/586,862号、「Automated Response To And Sensing Of User Activity In Portable Devices」、及び、同第11/638,251号、「Methods And Systems For Automatic Configuration Of Peripherals」で説明されるように機能し得るものであり、これらの出願は、全体が参照により本明細書に組み込まれる。一部の実施形態において、多機能デバイスがユーザの耳の近くに配置される場合(例えば、ユーザが電話で通話している場合)、近接センサは、タッチスクリーン112をオフにして無効化する。
【0073】
デバイス100はまた、1つ以上の触知出力生成器167も任意選択的に含む。
図1Aは、I/Oサブシステム106内の触覚フィードバックコントローラ161に結合された触知出力生成器を示す。触知出力生成器167は、スピーカ又は他のオーディオ構成要素などの1つ以上の電気音響デバイス、及び/又はモータ、ソレノイド、電気活性ポリマー、圧電アクチュエータ、静電アクチュエータ、若しくは他の触知出力生成構成要素(例えば、デバイス上で電気信号を触知出力に変換する構成要素)などの、エネルギーを直線運動に変換する電気機械デバイスを、任意選択的に含む。接触強度センサ165は、触覚フィードバックモジュール133から触覚フィードバック生成命令を受信し、デバイス100のユーザが感知できる触知出力をデバイス100上で生成する。一部の実施形態において、少なくとも1つの触知出力生成器は、タッチ感知面(例えば、タッチ感知ディスプレイシステム112)に配置されているか、又はそれに近接しており、任意選択的に、タッチ感知面を垂直方向(例えば、デバイス100の表面の内/外)に、又は横方向(例えば、デバイス100の表面と同じ平面内の前後)に動かすことによって、触知出力を生成する。一部の実施形態において、少なくとも1つの触知出力生成器センサが、デバイス100の前面に配置されたタッチスクリーンディスプレイ112の反対側である、デバイス100の背面に配置されている。
【0074】
デバイス100はまた、1つ以上の加速度計168も含み得る。
図1Aは、周辺機器インタフェース118に連結された加速度計168を示す。あるいは、加速度計168は、I/Oサブシステム106内の入力コントローラ160に連結されてもよい。加速度計168は、米国特許出願公開第20050190059号、「Acceleration−based Theft Detection System for Portable Electronic Devices」、及び同第20060017692号、「Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer」で説明されるように機能し得るものであり、これらの文献の双方は、全体が参照により本明細書に組み込まれる。一部の実施形態において、情報は、1つ以上の加速度計から受信したデータの分析に基づいて、縦長表示又は横長表示でタッチスクリーンディスプレイ上に表示される。デバイス100は、加速度計(単数又は複数)168に加えて、磁気計(図示せず)並びにデバイス100の位置及び向き(例えば、縦長又は横長)に関する情報を取得するためのGPS(又はGLONASS又は他のグローバルナビゲーションシステム)受信部(図示せず)を、任意選択的に含む。
【0075】
一部の実施形態において、メモリ102に記憶されたソフトウェア構成要素は、オペレーティングシステム126、通信モジュール(又は命令セット)128、接触/動きモジュール(又は命令セット)130、グラフィックモジュール(又は命令セット)132、テキスト入力モジュール(又は命令セット)134、全地球測位システム(GPS)モジュール(又は命令セット)135、及びアプリケーション(又は命令セット)136を含む。更に、一部の実施形態において、
図1A及び
図3に示すように、メモリ102(
図1A)又はメモリ370(
図3)は、デバイス/グローバル内部状態157を記憶する。デバイス/グローバル内部状態157は、以下の1つ以上を含む:現在アクティブ状態のアプリケーションがある場合、どのアプリケーションがアクティブかを示す、アクティブアプリケーション状態、どのアプリケーション、ビュー、又は他の情報がタッチスクリーンディスプレイ112の様々な領域を占領しているかを示す、表示状態、デバイスの様々なセンサ及び入力制御デバイス116から得られる情報を含む、センサ状態、及び、デバイスの場所及び/又は姿勢に関する場所情報。
【0076】
オペレーティングシステム126(例えば、Darwin、RTXC、LINUX、UNIX、OS X、iOS、WINDOWS、又はVxWorksなどの組み込みオペレーティングシステム)は、一般的なシステムタスク(例えば、メモリ管理、記憶デバイス制御、電力管理など)を制御及び管理するための様々なソフトウェア構成要素及び/又はドライバを含み、様々なハードウェア構成要素とソフトウェア構成要素との間の通信を容易にする。
【0077】
通信モジュール128は、1つ以上の外部ポート124を介して他のデバイスとの通信を容易にし、RF回路108及び/又は外部ポート124が受信したデータを処理するための様々なソフトウェア構成要素を含む。外部ポート124(例えば、ユニバーサルシリアルバス(USB)、FIREWIREなど)は、直接的に、又はネットワーク(例えば、インターネット、無線LANなど)を通して間接的に、他のデバイスに連結するように適応している。一部の実施形態において、外部ポートは、iPod(登録商標)(Apple Inc.の商標)デバイス上で使用される30ピンコネクタと同じか、若しくは同様のマルチピン(例えば、30ピン)コネクタ、及び/又は互換性のあるマルチピン(例えば、30ピン)コネクタである。
【0078】
接触/動きモジュール130は、任意選択的に、(ディスプレイコントローラ156と連携して)タッチスクリーン112及び他のタッチ感知デバイス(例えば、タッチパッド又は物理クリックホイール)との接触を検出する。接触/動きモジュール130は、接触が生じたか否かを判定すること(例えば、指を下ろすイベントを検出すること)、接触の強度(例えば、接触の力若しくは圧力、又は、接触の力若しくは圧力の代替物)を判定すること、接触の移動が存在するか否かを判定し、タッチ感知面を横断する移動を追跡すること(例えば、指をドラッグする1つ以上のイベントを検出すること)、及び接触が停止したか否かを判定すること(例えば、指を上げるイベント又は接触の中断を検出すること)などの、接触の検出に関する様々な動作を実行するための、様々なソフトウェア構成要素を含む。接触/動きモジュール130は、タッチ感知面から接触データを受信する。一連の接触データにより表される接触点の移動を判定することは、接触点の速さ(大きさ)、速度(大きさ及び方向)、及び/又は加速度(大きさ及び/又は方向の変化)を判定することを任意選択的に含む。これらの動作は、任意選択的に、単一の接触(例えば、1本の指の接触)又は複数の同時接触(例えば、「マルチタッチ」/複数の指の接触)に適用される。一部の実施形態において、接触/動きモジュール130及びディスプレイコントローラ156は、タッチパッド上の接触を検出する。
【0079】
一部の実施形態において、接触/動きモジュール130は、ユーザによって動作が実行されたか否かを判定するための(例えば、ユーザがアイコン上で「クリック」したか否かを判定するための)、1つ以上の強度閾値のセットを使用する。一部の実施形態において、少なくとも強度閾値のサブセットが、ソフトウェアパラメータに従って判定される(例えば、強度閾値は、特定の物理アクチュエータのアクティブ化閾値によって判定されず、デバイス100の物理ハードウェアを変更することなく調整し得る)。例えば、トラックパッド又はタッチスクリーンディスプレイのマウス「クリック」閾値は、トラックパッド又はタッチスクリーンディスプレイのハードウェアを変更することなく広範囲の既定の閾値のうちのいずれかに設定することができる。更に、いくつかの実装では、デバイスのユーザには、(例えば、個々の強度閾値を調整することにより、及び/又は、システムレベルのクリック「強度」パラメータにより、一度に複数の強度閾値を調整することによって)強度閾値のセットのうちの1つ以上を調整するためのソフトウェア設定が提供される。
【0080】
接触/動きモジュール130は任意選択的に、ユーザによるジェスチャ入力を検出する。タッチ感知面上の異なるジェスチャは、異なる接触パターン(例えば、異なる動き、タイミング、及び/又は検出される接触の強度)を有する。したがって、ジェスチャは、特定の接触パターンを検出することによって、任意選択的に検出される。例えば、指のタップジェスチャを検出することは、(例えば、アイコンの位置での)指を下ろすイベントを検出し、続いてその指を下ろすイベントと同じ位置(又は、実質的に同じ位置)で指を上げる(リフトオフ)イベントを検出することを含む。別の実施例として、タッチ感知面上での指のスワイプジェスチャを検出することは、指を下ろすイベントを検出し、続いて、1つ以上の、指をドラッグするイベントを検出し、その後、続いて指を上げる(リフトオフ)イベントを検出することを含む。
【0081】
グラフィックモジュール132は、表示されるグラフィックの視覚的効果(例えば、輝度、透明度、彩度、コントラスト、又は他の視覚特性)を変更するための構成要素を含めた、タッチスクリーン112又は他のディスプレイ上にグラフィックをレンダリングして表示するための、様々な既知のソフトウェア構成要素を含む。本明細書にて使用される時、用語「グラフィック」は、ユーザに対して表示することができる任意のオブジェクトを含み、これらのオブジェクトとしては、テキスト、ウェブページ、アイコン(ソフトキーを含むユーザインタフェースオブジェクトなど)、デジタル画像、ビデオ、アニメーションなどが挙げられるが、これらに限定されない。
【0082】
一部の実施形態において、グラフィックモジュール132は、使用されるグラフィックを表すデータを記憶する。各グラフィックには、対応するコードが、任意選択的に割り当てられる。グラフィックモジュール132は、アプリケーションなどから、必要に応じて、座標データ及び他のグラフィック特性データと共に、表示されることとなるグラフィックを指定する1つ以上のコードを受信し、次にディスプレイコントローラ156に出力する画面の画像データを生成する。
【0083】
触覚フィードバックモジュール133は、デバイス100とのユーザ対話に応じて、デバイス100上の1つ以上の場所で触知出力を生成するために、触知出力生成器(単数又は複数)167によって使用される命令を生成するための、様々なソフトウェア構成要素を含む。
【0084】
テキスト入力モジュール134は、グラフィックモジュール132の構成要素であってもよく、様々なアプリケーション(例えば、連絡先137、電子メール140、IM141、ブラウザ147、及び、テキスト入力を必要とする任意の他のアプリケーション)でテキストを入力するための、ソフトキーボードを提供する。
【0085】
GPSモジュール135は、デバイスの位置を判定し、この情報を、様々なアプリケーションでの使用のために提供する(例えば、位置に基づいての電話での使用のために電話138へ、写真/ビデオメタデータとしてカメラ143へ、及び、気象ウィジェット、ローカルイエローページウィジェット、及び地図/ナビゲーションウィジェットなどの、位置に基づくサービスを提供するアプリケーションへ)。
【0086】
アプリケーション136は、以下のモジュール(又は、命令セット)、又はそれらのサブセット若しくはスーパーセットを含み得る。
●連絡先モジュール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。
【0087】
メモリ102内に記憶することができる他のアプリケーション136の例としては、他のワードプロセッシングアプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、JAVA(登録商標)対応アプリケーション、暗号化、デジタル著作権管理、音声認識、及び音声複製が挙げられる。
【0088】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、連絡先モジュール137は、(例えば、メモリ102又はメモリ370内の連絡先モジュール137のアプリケーション内部状態192に記憶される)アドレス帳又は連絡先リストを管理するために用いられる。この管理することとしては、アドレス帳に名前(単数又は複数)を加えること、アドレス帳から名前(単数又は複数)を削除すること、電話番号(単数又は複数)、メールアドレス(単数又は複数)、住所(単数又は複数)、又は他の情報を名前と関連付けること、画像を名前と関連付けること、名前を分類して並べ替えること、電話番号又は電子メールアドレスを提供して、電話138、テレビ会議モジュール139、電子メール140、若しくはIM141による通信を開始する及び/又は容易にすること、などが含まれる。
【0089】
RF回路108、オーディオ回路110、スピーカ111、マイクロフォン113、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、電話モジュール138は、電話番号に対応する一連の文字を入力し、連絡先モジュール137内の1つ以上の電話番号にアクセスし、入力された電話番号を修正し、対応する電話番号をダイヤルし、会話を行い、そして、会話が完了した際に接続を切るか又は電話を切るために、使用することができる。上述のように、無線通信は、複数の通信規格、通信プロトコル、及び通信技術のうちのいずれかを使用することができる。
【0090】
RF回路108、オーディオ回路110、スピーカ111、マイクロフォン113、タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、連絡先モジュール137、及び電話モジュール138と連携して、テレビ会議モジュール139は、ユーザの指示に従って、ユーザと1人以上の他の参加者との間のテレビ会議を開始し、実行し、終了する、実行可能な命令を含む。
【0091】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、電子メールクライアントモジュール140は、ユーザの指示に応答して、電子メールを作成し、送信し、受信し、管理する、実行可能な命令を含む。画像管理モジュール144と連携した電子メールクライアントモジュール140により、カメラモジュール143で撮影した静止画像又はビデオ画像を添付した電子メールを作成して送信することが非常に容易になる。
【0092】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、インスタントメッセージングモジュール141は、インスタントメッセージに対応する文字列を入力したり、入力済みの文字を修正したり、(例えば、電話ベースのインスタントメッセージのためのショートメッセージサービス(SMS)若しくはマルチメディアメッセージサービス(MMS)プロトコルを使用して、又はインターネットベースのインスタントメッセージのためのXMPP、SIMPLE、若しくはIMPSを使用して)対応するインスタントメッセージを送信したり、インスタントメッセージを受信したり、及び受信したインスタントメッセージを閲覧したりする、実行可能な命令を含む。一部の実施形態において、送信及び/又は受信されるインスタントメッセージは、MMS及び/又は拡張メッセージングサービス(Enhanced Messaging Service、EMS)でサポートされるような、グラフィック、写真、オーディオファイル、ビデオファイル、及び/又は他の添付ファイルを含んでもよい。本明細書で使用する時、「インスタントメッセージング」とは、電話ベースのメッセージ(例えば、SMS又はMMSを使用して送信されるメッセージ)及びインターネットベースのメッセージ(例えば、XMPP、SIMPLE、又はIMPSを使用して送信されるメッセージ)の双方を示す。
【0093】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、GPSモジュール135、マップモジュール154、及びミュージックプレーヤモジュールと連携して、トレーニングサポートモジュール142は、次の実行可能な命令を含む:(例えば、時間、距離、及び/又はカロリー消費目標を有する)トレーニングを作成することと、トレーニングセンサ(スポーツデバイス)と通信することと、トレーニングセンサデータを受信することと、トレーニングをモニタするために使用されるセンサを較正することと、トレーニングのための音楽を選択し、再生することと、トレーニングデータを表示し、記憶し、送信すること。
【0094】
タッチスクリーン112、ディスプレイコントローラ156、光センサ(単数又は複数)164、光センサコントローラ158、接触/動きモジュール130、グラフィックモジュール132、及び画像管理モジュール144と連携して、カメラモジュール143は、静止画像又は(ビデオストリームを含む)ビデオをキャプチャしてメモリ102にそれらを記憶する、静止画像又はビデオの特性を変更する、又はメモリ102から静止画像若しくはビデオを削除する、実行可能な命令を含む。
【0095】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びカメラモジュール143と連携して、画像管理モジュール144は、静止画像及び/又はビデオ画像を配置する、修正し(例えば、編集し)又は別の方法で操作する、ラベルを付け、削除する、(例えば、デジタルスライドショー又はアルバムにおいて)提示する、及び記憶したりする、実行可能な命令を含む。
【0096】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及び、テキスト入力モジュール134と連携して、ブラウザモジュール147は、ウェブページ又はそれらの一部、並びにウェブページにリンクされた添付及び他のファイルを検索し、リンク付けし、受信し、表示することを含むユーザの指示に従い、インターネットを閲覧するための実行可能な命令を含む。
【0097】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と連携して、カレンダモジュール148は、ユーザの指示に従い、カレンダ及びカレンダに関連付けられたデータ(例えば、カレンダ項目、to doリストなど)を作成し、表示し、変更し、記憶する実行可能な命令を含む。
【0098】
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!(登録商標)ウィジェット)を含む。
【0099】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、及びブラウザモジュール147と連携して、ウィジェット作成モジュール150は、ウィジェットを作成する(例えば、ウェブページのユーザ指定箇所をウィジェットに変える)ために、ユーザによって使用することができる。
【0100】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、検索モジュール151は、ユーザの指示に従い、1つ以上の検索基準(例えば、1つ以上のユーザ指定の検索語句)と一致する、メモリ102内のテキスト、音楽、音、画像、ビデオ、及び/又は他のファイルを検索する、実行可能な命令を含む。
【0101】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、オーディオ回路110、スピーカ111、RF回路108、及びブラウザモジュール147と連携して、ビデオ及び音楽再生モジュール152は、MP3又はAACファイルなどの1つ以上のファイル形式で記憶された録音済みの音楽及び他のサウンドファイルをユーザがダウンロード及び再生できるようにする実行可能な命令、並びにビデオを(タッチスクリーン112上又は外部ポート124を介して接続された外部のディスプレイ上に)表示、提示、又は別の方法で再生する実行可能な命令を含む。一部の実施形態において、デバイス100は、任意選択的に、iPod(Apple Inc.の商標)などのMP3プレーヤの機能を備える。
【0102】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、及びテキスト入力モジュール134と連携して、メモモジュール153は、ユーザの指示に従って、メモ、to doリストなどを作成及び管理する実行可能な命令を含む。
【0103】
RF回路108、タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、テキスト入力モジュール134、GPSモジュール135、及びブラウザモジュール147と連携して、マップモジュール154は、ユーザの指示に従い、地図及び地図に関連付けられたデータ(例えば、運転方向、特定の位置又はその近くの店舗及びその他の見所のデータ、並びに他の位置ベースのデータ)を受信し、表示し、変更し、及び記憶するために、使用することができる。
【0104】
タッチスクリーン112、ディスプレイコントローラ156、接触/動きモジュール130、グラフィックモジュール132、オーディオ回路110、スピーカ111、RF回路108、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と連携して、オンラインビデオモジュール155は、ユーザがH.264などの1つ以上のファイル形式のオンラインビデオにアクセスし、閲覧し、(例えば、ストリーミング及び/又はダウンロードにより)受信し、(例えば、タッチスクリーン上で又は外部ポート124を介して接続された外部のディスプレイ上で)再生し、特定のオンラインビデオへのリンクを含む電子メールを送信し、別の方法で管理することが可能となる命令を含む。一部の実施形態において、特定のオンラインビデオへのリンクを送信するために、電子メールクライアントモジュール140ではなく、インスタントメッセージングモジュール141が使用される。オンラインビデオアプリケーションの追加の説明は、2007年6月20日に出願された米国特許仮出願第60/936,562号、「Portable Multifunction Device,Method,and Graphical User Interface for Playing Online Videos」、及び2007年12月31日に出願された米国特許出願第11/968,067号、「Portable Multifunction Device,Method,and Graphical User Interface for Playing Online Videos」に見出すことができ、これらの出願の内容はその全体が本明細書において参照により組み込まれている。
【0105】
上記で特定されたモジュール及びアプリケーションのそれぞれは、1つ以上の上記の機能を実行する実行可能な命令セット及び本出願に記載の方法(例えば、コンピュータにより実行される方法及び本明細書に記載の他の情報処理方法)に対応する。これらのモジュール(例えば、命令のセット)は、別個のソフトウェアプログラム、手順、又はモジュールとして実現される必要はなく、それゆえ、様々な実施形態では、これらのモジュールの様々なサブセットを組み合わせるか、又は他の方式で再編成することができる。例えば、ビデオ再生モジュールは、音楽再生モジュールと組み合わせて、単一のモジュール(例えば、
図1Aのビデオ及び音楽再生モジュール152)としてもよい。一部の実施形態において、メモリ102は、上記で特定されたモジュール及びデータ構造のサブセットを記憶することができる。更に、メモリ102は、上述されていない追加のモジュール及びデータ構造を記憶してもよい。
【0106】
一部の実施形態では、デバイス100は、デバイス上の機能の既定のセットの動作が排他的にタッチスクリーン及び/又はタッチパッドを介して実行されるデバイスである。デバイス100の動作に関する主要な入力制御デバイスとしてタッチスクリーン及び/又はタッチパッドを使用することによって、デバイス100上の(プッシュボタン、ダイヤルなどの)物理入力制御デバイスの数を低減することができる。
【0107】
排他的にタッチスクリーン及び/又はタッチパッドを介して実行される、既定の機能のセットは、任意選択的に、ユーザインタフェース間のナビゲーションを含む。一部の実施形態において、タッチパッドは、ユーザによってタッチされると、デバイス100上に表示される任意のユーザインタフェースから、メインメニュー、ホームメニュー、又はルートメニューへデバイス100をナビゲートする。そのような実施形態では、「メニューボタン」はタッチパッドを使って実現される。いくつかの他の実施形態では、メニューボタンは、タッチパッドの代わりに、物理プッシュボタン又は他の物理入力制御デバイスである。
【0108】
図1Bは、一部の実施形態に係る、イベント処理のための例示的な構成要素を示すブロック図である。一部の実施形態において、メモリ102(
図1A)又はメモリ370(
図3)は、イベントソート部170(例えば、オペレーティングシステム126内)及び対応するアプリケーション136−1(例えば、上述のアプリケーション137〜151、155、380〜390のうちのいずれか)を含む。
【0109】
イベントソート部170は、イベント情報を受信し、イベント情報を配信するアプリケーション136−1及びアプリケーション136−1のアプリケーションビュー191を決定する。イベントソート部170は、イベントモニタ171及びイベントディスパッチャモジュール174を含む。一部の実施形態において、アプリケーション136−1は、アプリケーションがアクティブ又は実行中の時、タッチ感知ディスプレイ112上に表示される現在のアプリケーションビュー(単数又は複数)を示す、アプリケーション内部状態192を含む。一部の実施形態において、デバイス/グローバル内部状態157は、いずれのアプリケーション(単数又は複数)が現在アクティブであるかを判定するために、イベントソート部170によって使用され、アプリケーション内部状態192は、イベント情報の配信先となるアプリケーションビュー191を決定するために、イベントソート部170によって使用される。
【0110】
一部の実施形態において、アプリケーション内部状態192は、アプリケーション136−1が実行を再開する際に使用される再開情報、アプリケーション136−1によって情報が表示されているか又は表示の準備が整っていることを示すユーザインタフェース状態情報、ユーザがアプリケーション136−1の以前の状態又はビューに戻ることを可能にするための状態待ち行列、及びユーザが以前に行ったアクションのリドゥ/アンドゥ待ち行列、のうちの1つ以上などの追加情報を含む。
【0111】
イベントモニタ171は、周辺機器インタフェース118からイベント情報を受信する。イベント情報は、サブイベント(例えば、マルチタッチジェスチャの一部としての、タッチ感知ディスプレイ112上でのユーザのタッチ)についての情報を含む。周辺機器インタフェース118は、I/Oサブシステム106、又は近接センサ166、加速度計(単数又は複数)168、及び/若しくは(オーディオ回路110を介する)マイクロフォン113などのセンサから受信する情報を送信する。周辺機器インタフェース118がI/Oサブシステム106から受信する情報は、タッチ感知ディスプレイ112又はタッチ感知面からの情報を含む。
【0112】
一部の実施形態では、イベントモニタ171は、所定の間隔で周辺機器インタフェース118に要求を送信する。これに応じて、周辺機器インタフェース118はイベント情報を送信する。他の実施形態では、周辺機器インタフェース118は、重要なイベント(例えば、所定のノイズ閾値を上回り、かつ/又は所定の持続時間を超えた入力を受けること)が存在する場合にのみ、イベント情報を送信する。
【0113】
一部の実施形態において、イベントソート部170はまた、ヒットビュー判定モジュール172及び/又はアクティブイベント認識部判定モジュール173も含む。
【0114】
ヒットビュー判定モジュール172は、タッチ感知ディスプレイ112が2つ以上のビューを表示する場合に、サブイベントが1つ以上のビュー内のいずれの場所で発生したかを判定するための、ソフトウェア手順を提供する。ビューは、制御部及びユーザがディスプレイ上で見ることが可能な他の要素で構成される。
【0115】
アプリケーションに関連付けられたユーザインタフェースの別の態様は、本明細書では、アプリケーションビュー又はユーザインタフェースウィンドウと呼ばれる場合がある、ビューのセットであり、それらの中で情報が表示され、タッチに基づくジェスチャが生じる。タッチが検出される(対応するアプリケーションの)アプリケーションビューは、そのアプリケーションのプログラム階層又はビュー階層内のプログラムレベルに対応し得る。例えば、タッチが検出される最下位レベルのビューを、ヒットビューと呼ぶことができ、適切な入力として認識されるイベントのセットは、少なくとも部分的には、タッチに基づくジェスチャを開始する最初のタッチのヒットビューに基づいて、判定することができる。
【0116】
ヒットビュー判定モジュール172は、タッチベースのジェスチャのサブイベントと関連する情報を受信する。アプリケーションが、階層として編成された複数のビューを有する場合、ヒットビュー判定モジュール172は、そのサブイベントを処理すべき階層内の最下位のビューとしての、ヒットビューを特定する。ほとんどの状況では、ヒットビューは、最初のサブイベント(例えば、イベント又は潜在的なイベントを形成するサブイベントのシーケンスにおける最初のサブイベント)が発生する最下位レベルのビューである。ヒットビューがヒットビュー判定モジュール172によって特定されると、ヒットビューは、典型的には、それがヒットビューとして特定された、同じタッチ又は入力ソースに関連する全てのサブイベントを受信する。
【0117】
アクティブイベント認識部判定モジュール173は、ビュー階層内のどのビュー(単数又は複数)がサブイベントの特定のシーケンスを受信すべきかを判定する。一部の実施形態では、アクティブイベント認識部判定モジュール173は、ヒットビューのみがサブイベントの特定のシーケンスを受信すべきであると判定する。他の実施形態では、アクティブイベント認識部判定モジュール173は、サブイベントの物理位置を含む全てのビューはアクティブに関わっているビューであると判定し、したがって、アクティブに関わっている全てのビューは、サブイベントの特定のシーケンスを受信すべきであると判定する。他の実施形態では、タッチサブイベントがある特定のビューに関連付けられた領域に完全に限定されたとしても、階層の上位のビューは、依然としてアクティブに関わっているビューであり続ける。
【0118】
イベントディスパッチャモジュール174は、イベント情報をイベント認識部(例えば、イベント認識部180)に送信する。アクティブイベント認識部判定モジュール173を含む実施形態において、イベントディスパッチャモジュール174は、アクティブイベント認識部判定モジュール173により判定されたイベント認識部にイベント情報を配信する。一部の実施形態では、イベントディスパッチャモジュール174は、対応するイベント受信部182により取得されるイベント情報をイベント待ち行列に記憶する。
【0119】
一部の実施形態において、オペレーティングシステム126は、イベントソート部170を含む。あるいは、アプリケーション136−1が、イベントソート部170を含む。更に他の実施形態では、イベントソート部170は、スタンドアロンモジュール、又は接触/動きモジュール130などの、メモリ102に記憶された別のモジュールの一部である。
【0120】
一部の実施形態において、アプリケーション136−1は、それぞれがアプリケーションのユーザインタフェースのそれぞれのビュー内で発生するタッチイベントを処理する命令を含む、複数のイベント処理部190及び1つ以上のアプリケーションビュー191を含む。アプリケーション136−1の各アプリケーションビュー191は、1つ以上のイベント認識部180を含む。通常、それぞれのアプリケーションビュー191は、複数のイベント認識部180を含む。他の実施形態では、イベント認識部180のうちの1つ以上は、ユーザインタフェースキット(図示せず)又はアプリケーション136−1が方法及び他の特性を継承する上位レベルのオブジェクトなどの、別個のモジュールの一部である。一部の実施形態において、それぞれのイベント処理部190は、データ更新部176、オブジェクト更新部177、GUI更新部178、及び/又はイベントソート部170から受信したイベントデータ179、のうちの1つ以上を含む。イベント処理部190は、アプリケーション内部状態192を更新するために、データ更新部176、オブジェクト更新部177、又はGUI更新部178を利用するか又は呼び出してもよい。あるいは、アプリケーションビュー191のうちの1つ以上は、1つ以上のそれぞれのイベント処理部190を含む。また、一部の実施形態において、データ更新部176、オブジェクト更新部177、及びGUI更新部178のうちの1つ以上も、それぞれのアプリケーションビュー191に含まれる。
【0121】
各イベント認識部180は、イベントソート部170からイベント情報(例えば、イベントデータ179)を受信して、そのイベント情報からイベントを識別する。イベント認識部180は、イベント受信部182及びイベント比較部184を含む。一部の実施形態において、イベント認識部180は更に、メタデータ183及びイベント配信命令188(サブイベント配信命令を含んでいてもよい)の少なくとも部分集合を含む。
【0122】
イベント受信部182は、イベントソート部170からイベント情報を受信する。このイベント情報は、サブイベントについての情報、例えば、タッチ又はタッチの移動についての情報を含む。サブイベントによっては、イベント情報はまた、サブイベントの場所などの追加情報も含む。サブイベントが、タッチの動きに関係する場合、イベント情報はまた、そのサブイベントの速度及び方向も含み得る。一部の実施形態において、イベントは、1つの向きから別の向きへの(例えば、縦向きから横向きへの、又はその逆の)デバイスの回転を含み、そのイベント情報は、デバイスの現在の向き(デバイスの姿勢とも呼ばれる)についての対応する情報を含む。
【0123】
イベント比較部184は、イベント情報を既定のイベント又はサブイベントの定義と比較し、その比較に基づいて、イベント又はサブイベントを判定する、あるいはイベント又はサブイベントの状態を判定若しくは更新する。一部の実施形態において、イベント比較部184は、イベント定義186を含む。イベント定義186は、例えば、イベント1(187−1)、イベント2(187−2)などの、イベントの定義(例えば、サブイベントの既定のシーケンス)を含む。一部の実施形態において、イベント(187)内のサブイベントは、例えば、タッチ開始、タッチ終了、タッチの移動、タッチの中止、及び複数のタッチを含む。ある実施例では、イベント1(187−1)の定義は、表示されたオブジェクト上のダブルタップである。このダブルタップは、例えば、所定の段階に関する表示オブジェクト上での第1のタッチ(タッチの開始)、所定の段階に関する第1のリフトオフ(タッチの終了)、所定の段階に関する表示オブジェクト上での第2のタッチ(タッチの開始)、及び所定の段階に関する第2のリフトオフ(タッチの終了)を含む。別の実施例では、イベント2(187−2)の定義は、表示されたオブジェクト上のドラッグ操作である。このドラッグ操作は、例えば、所定の段階に関する表示オブジェクト上でのタッチ(又は、接触)、タッチ感知ディスプレイ112を横断するタッチの移動、及びタッチのリフトオフ(タッチの終了)を含む。一部の実施形態において、イベントはまた、1つ以上の関連付けられたイベント処理部190に関する情報も含む。
【0124】
一部の実施形態において、イベント定義187は、それぞれのユーザインタフェースオブジェクトに関するイベントの定義を含む。一部の実施形態において、イベント比較部184は、サブイベントに関連付けられたユーザインタフェースオブジェクトを判定するヒットテストを実行する。例えば、3つのユーザインタフェースオブジェクトがタッチ感知ディスプレイ112に表示されるアプリケーションビューにおいて、タッチ感知ディスプレイ112上でタッチが検出されると、イベント比較部184は、3つのユーザインタフェースオブジェクトのうちのどれがタッチ(サブイベント)に関連付けられているかを判定するためのヒットテストを行う。表示された各オブジェクトが、対応するイベント処理部190に関連付けられている場合、イベント比較部は、ヒットテストの結果を用いて、どのイベント処理部190をアクティブ化すべきかを判定する。例えば、イベント比較部184は、サブイベント及びヒットテストのトリガとなるオブジェクトに関連付けられたイベント処理部を選択する。
【0125】
一部の実施形態において、それぞれのイベント187の定義は、サブイベントのシーケンスが、イベント認識部のイベントタイプに対応するか対応しないかが判定されるまで、イベント情報の配信を遅延させる、遅延作用も含む。
【0126】
それぞれのイベント認識部180が、一連のサブイベントがイベント定義186のイベントのいずれとも一致しないと判断した場合、それぞれのイベント認識部180は、イベント不可能、イベント失敗、又はイベント終了の状態に入り、その後は、タッチに基づくジェスチャの次のサブイベントを無視する。この状況では、ヒットビューに関してアクティブのまま維持される他のイベント認識部があれば、進行中のタッチに基づくジェスチャのサブイベントを、引き続き追跡及び処理する。
【0127】
一部の実施形態において、それぞれのイベント認識部180は、構成変更可能なプロパティと、フラグと、及び/又はイベント配信システムがアクティブに関わっているイベント認識部にどのようにサブイベント配信を実行するかについて示すリストと、を有するメタデータ183を含む。一部の実施形態において、メタデータ183は、構成変更可能なプロパティと、フラグと、及び/又はイベント認識部が互いにどのように対話し得るか、あるいは、対話が可能になるかについて示すリストと、を含む。一部の実施形態において、メタデータ183は、構成変更可能なプロパティと、フラグと、及び/又はサブイベントがビュー階層又はプログラム階層内の様々なレベルに配信されるか否かを示すリストと、を含む。
【0128】
一部の実施形態において、それぞれのイベント認識部180は、イベントの1つ以上の特定のサブイベントが認識された時に、イベントに関連付けられたイベント処理部190をアクティブ化する。一部の実施形態において、それぞれのイベント認識部180は、イベントに関連付けられたイベント情報をイベント処理部190に配信する。イベント処理部190をアクティブ化することは、対応するヒットビューにサブイベントを送信(及び送信を延期する)することとは異なる。一部の実施形態において、イベント認識部180は、認識されたイベントに関連付けられたフラグをスローし、フラグに関連付けられたイベント処理部190は、フラグをキャッチし、既定の処理を実行する。
【0129】
一部の実施形態において、イベント配信命令188は、イベント処理部をアクティブ化せずに、サブイベントに関するイベント情報を配信するサブイベント配信命令を含む。その代わりに、サブイベント配信命令は、一連のサブイベントに関連付けられたイベント処理部又はアクティブに関わっているビューにイベント情報を送信する。一連のサブイベント又はアクティブに関わっているビューに関連付けられたイベント処理部は、イベント情報を受信し、所定の処理を実行する。
【0130】
一部の実施形態において、データ更新部176は、アプリケーション136−1で使用されるデータを作成及び更新する。例えば、データ更新部176は、連絡先モジュール137で使用される電話番号を更新したり、ビデオ再生モジュールで使用されるビデオファイルを記憶したりする。一部の実施形態において、オブジェクト更新部177は、アプリケーション136−1で使用されるオブジェクトを作成及び更新する。例えば、オブジェクト更新部177は、新たなユーザインタフェースオブジェクトを作成するか、又はユーザインタフェースオブジェクトの位置を更新する。GUI更新部178は、GUIを更新する。例えば、GUI更新部178は、表示情報を準備し、タッチ感知ディスプレイ上に表示するため、表示情報をグラフィックモジュール132に送信する。
【0131】
一部の実施形態において、イベント処理部(単数又は複数)190は、データ更新部176、オブジェクト更新部177、及びGUI更新部178を含むか、若しくはそれらにアクセスすることができる。一部の実施形態において、データ更新部176、オブジェクト更新部177、及びGUI更新部178は、それぞれのアプリケーション136−1又はアプリケーションビュー191の単一モジュールに含まれる。他の実施形態では、それらは、2つ以上のソフトウェアモジュールに含まれる。
【0132】
タッチ感知ディスプレイ上のユーザのタッチのイベント処理に関する前述の論考はまた、入力デバイスを使用して多機能デバイス100を動作させるための他の形態のユーザ入力にも適用されるが、その全てがタッチスクリーン上で開始されるわけではないことが理解されよう。例えば、単一又は複数のキーボードの押下又は保持に任意選択的に合わせたマウスの移動及びマウスボタンの押下、タッチパッド上でのタップ、ドラッグ、スクロールなどの接触移動、ペンスタイラス入力、デバイスの移動、口頭による指示検出された眼球運動、バイオメトリック入力、及び/又はこれらの任意の組み合わせが、認識対象のイベントを定義するサブイベントに対応する入力として任意選択的に利用される。
【0133】
図2は、一部の実施形態に係る、タッチスクリーン112を有するポータブル多機能デバイス100を示す。タッチスクリーンは、ユーザインタフェース(UI)200内に1つ以上のグラフィックを、任意選択的に表示する。本実施形態、並びに後述する実施形態において、ユーザは、例えば、1本以上の指202(図には、正確な縮尺率では描かれていない)又は1つ以上のスタイラス203(図には、正確な縮尺率では描かれていない)を用いて、グラフィック上でジェスチャを行うことにより、グラフィックのうちの1つ以上を選択することができる。一部の実施形態において、ユーザが1つ以上のグラフィックとの接触を断った際に、その1つ以上のグラフィックの選択が生じる。一部の実施形態では、ジェスチャは、1回以上のタップ、1回以上のスワイプ(左から右へ、右から左へ、上方向へ及び/又は下方向へ)、及び/又は、デバイス100と接触した指のローリング(右から左へ、左から右へ、上方向へ及び/又は下方向へ)を、任意選択的に含む。いくつかの実装又は状況では、グラフィックとの不測の接触は、そのグラフィックを選択するものではない。例えば、選択に対応するジェスチャがタップである場合、アプリケーションアイコンの上をスイープするスワイプジェスチャは、対応するアプリケーションを任意選択的に選択しない。
【0134】
デバイス100はまた、「ホーム」又はメニューボタン204などの、1つ以上の物理ボタンも含み得る。上述したように、メニューボタン204を使用して、デバイス100上で実行することができるアプリケーションセット内の任意のアプリケーション136へ、ナビゲートすることができる。あるいは、一部の実施形態では、メニューボタンは、タッチスクリーン112に表示されたGUIにおけるソフトキーとして実装されている。
【0135】
一実施形態では、デバイス100は、タッチスクリーン112、メニューボタン204、デバイスの電源をオン/オフし、デバイスをロックするためのプッシュボタン206、音量調節ボタン(単数又は複数)208、加入者識別モジュール(SIM)カードスロット210、ヘッドセットジャック212、及びドッキング/充電用外部ポート124を含む。プッシュボタン206は、ボタンを押し下げて、既定の時間にわたってボタンを押し下げた状態で保持することによってデバイス上の電源をオン/オフし、ボタンを押し下げて、既定時間が経過する前にボタンを解放することによってデバイスをロックし、及び/又は、デバイスのロックを解除する、若しくは、ロック解除処理を開始する。別の実施形態では、デバイス100はまた、マイクロフォン113を通して、一部の機能をアクティブ化又は非アクティブ化するための口頭入力を受信する。デバイス100はまた、タッチスクリーン112上の接触の強度を検出するための1つ以上の接触強度センサ165、及び/又は、デバイス100のユーザに対する触知出力を生成するための1つ以上の触知出力生成器167も、任意選択的に含む。
【0136】
図3は、一部の実施形態に係る、ディスプレイ及びタッチ感知面を備える例示的な多機能デバイスのブロック図である。デバイス300は、ポータブル型である必要はない。一部の実施形態において、デバイス300は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディア再生デバイス、ナビゲーションデバイス、教育的デバイス(子供の学習玩具など)、ゲームシステム、又は制御デバイス(例えば、家庭用又は業務用コントローラ)である。デバイス300は、典型的には、1つ以上の処理ユニット(CPU)310、1つ以上のネットワーク若しくは他の通信インタフェース360、メモリ370、及びこれらの構成要素を相互接続するための1つ以上の通信バス320を含む。通信バス320は、システム構成要素間の通信を相互接続及び制御する回路(チップセットと呼ばれることがある)を、任意選択的に含む。デバイス300は、典型的にはタッチスクリーンディスプレイであるディスプレイ340を備える入出力(I/O)インタフェース330を含む。I/Oインタフェース330はまた、キーボード及び/又はマウス(又は他のポインティングデバイス)350並びにタッチパッド355、デバイス300上に触知出力を生成するための(例えば、
図1Aを参照して上述した触知出力生成器167(単数又は複数)と同様の)触知出力生成器357、センサ359(例えば、光センサ、加速度センサ、近接センサ、タッチ感知センサ、及び/又は
図1Aを参照して上述した接触強度センサ(単数又は複数)165と同様の接触強度センサ)も、任意選択的に含む。メモリ370は、DRAM、SRAM、DDR RAM、又は他のランダムアクセスソリッドステートメモリデバイスなどの、高速ランダムアクセスメモリを含み、また任意選択的に、1つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性半導体記憶デバイスなどの、不揮発性メモリを含む。メモリ370は、CPU(単数又は複数)310から離れて位置する1つ以上の記憶デバイスを任意選択的に含む。一部の実施形態では、メモリ370は、ポータブル多機能デバイス100(
図1A)のメモリ102に記憶されたプログラム、モジュール、及びデータ構造、又はそれらの部分集合に類似する、プログラム、モジュール、及びデータ構造を記憶する。更に、メモリ370は、ポータブル多機能デバイス100のメモリ102に存在しない追加のプログラム、モジュール、及びデータ構造を、任意選択的に記憶する。例えば、デバイス300のメモリ370は、描画モジュール380、プレゼンテーションモジュール382、ワードプロセッシングモジュール384、ウェブサイト作成モジュール386、ディスクオーサリングモジュール388、及び/又はスプレッドシートモジュール390を任意選択的に記憶するが、ポータブル多機能デバイス100(
図1A)のメモリ102はこれらのモジュールを任意選択的に記憶しない。
【0137】
図3における上記で特定された要素のそれぞれは、前述のメモリデバイスのうちの1つ以上に記憶されてもよい。上記で特定されたモジュールのうちのそれぞれは、上述した機能を実行する命令セットに対応する。上記で特定されたモジュール又はプログラム(例えば、命令セット)は、別個のソフトウェアプログラム、手順、又はモジュールとして実装される必要はなく、それゆえ、様々な実施形態では、これらのモジュールの様々なサブセットを組み合わせるか、又は他の方式で再編成することができる。一部の実施形態において、メモリ370は、上記で特定されたモジュール及びデータ構造のサブセットを記憶することができる。更に、メモリ370は、上述されていない追加のモジュール及びデータ構造を記憶してもよい。
【0138】
次に、例えば、ポータブル多機能デバイス100上に実施することができるユーザインタフェースの実施形態に注意を向ける。
【0139】
図4Aは、一部の実施形態に係る、ポータブル多機能デバイス100上のアプリケーションのメニューに関する例示的なユーザインタフェースを示す。同様のユーザインタフェースを、デバイス300上に実施してもよい。一部の実施形態において、ユーザインタフェース400は、以下の要素、又はそれらの部分集合若しくは上位集合を含む。
●セルラー及びWi−Fi信号などの無線通信(単数又は複数)のための信号強度インジケータ(単数又は複数)402、
●時刻404、
●Bluetoothインジケータ405、
●バッテリ状態インジケータ406、
●下記などの、頻繁に利用されるアプリケーション用のアイコンを含むトレー408、
○不在着信又は音声メールメッセージの数のインジケータ414を任意選択的に含む、「電話」とラベル付けされる、電話モジュール138用のアイコン416、
○未読電子メールの数のインジケータ410を任意選択的に含む、「メール」とラベル付けされた、電子メールクライアントモジュール140用のアイコン418、
○「ブラウザ」とラベル付けされた、ブラウザモジュール147用のアイコン420、及び
○「iPod」とラベル付けされた、iPod(Apple Inc.の商標)モジュール152とも称されるビデオ及び音楽再生モジュール152用のアイコン422、及び
●下記などの、その他のアプリケーション用のアイコン、
○「メッセージ」とラベル付けされた、IMモジュール141用のアイコン424、
○「カレンダ」とラベル付けされた、カレンダモジュール148用のアイコン426、
○「写真」とラベル付けされた、画像管理モジュール144用のアイコン428、
○「カメラ」とラベル付けされた、カメラモジュール143用のアイコン430、
○「オンラインビデオ」とラベル付けされた、オンラインビデオモジュール155用のアイコン432、
○「株価」とラベル付けされた、株価ウィジェット149−2用のアイコン434、
○「マップ」とラベル付けされた、マップモジュール154用のアイコン436、
○「天気」とラベル付けされた、天気ウィジェット149−1用のアイコン438、
○「時計」とラベル付けされた、アラーム時計ウィジェット149−4用のアイコン440、
○「トレーニングサポート」とラベル付けされた、トレーニングサポートモジュール142用のアイコン442、
○「メモ」とラベル付けされた、メモモジュール153用のアイコン444、及び
○デバイス100及びその様々なアプリケーション136に関する設定へのアクセスを提供する、「設定」とラベル付けされた、設定アプリケーション若しくはモジュール用のアイコン446。
【0140】
図4Aに示されるアイコンのラベルは、単なる例示であることに留意されたい。例えば、ビデオ及び音楽再生モジュール152用のアイコン422は、任意選択的に、「ミュージック」又は「ミュージックプレーヤ」とラベル付けされてもよい。他のラベルが、様々なアプリケーションアイコンのために、任意選択的に使用される。一部の実施形態では、それぞれのアプリケーションアイコンに関するラベルは、それぞれのアプリケーションアイコンに対応するアプリケーションの名前を含む。一部の実施形態では、特定のアプリケーションアイコンのラベルは、特定のアプリケーションアイコンに対応するアプリケーションの名前とは異なる。
【0141】
図4Bは、ディスプレイ450(例えば、タッチスクリーンディスプレイ112)とは別個のタッチ感知面451(例えば、
図3のタブレット又はタッチパッド355)を備えるデバイス(例えば、
図3のデバイス300)上の、例示的なユーザインタフェースを示す。デバイス300はまた、タッチ感知面451上の接触の強度を検出するための1つ以上の接触強度センサ(例えば、センサ357のうちの1つ以上)、及び/又はデバイス300のユーザに対する触知出力を生成するための1つ以上の触知出力生成器359を任意選択的に含む。
【0142】
以下の実施例のうちのいくつかは、タッチスクリーンディスプレイ112上の入力(タッチ感知面とディスプレイとが組み合わされている場合)を参照して説明されるが、一部の実施形態において、デバイスは、
図4Bに示すように、ディスプレイとは別個のタッチ感知面上で入力を検出する。一部の実施形態において、このタッチ感知面(例えば、
図4Bの451)は、ディスプレイ(例えば、450)上の主軸(例えば、
図4Bの453)に対応する主軸(例えば、
図4Bの452)を有する。これらの実施形態によれば、デバイスは、タッチ感知面451との接触(例えば、
図4Bの460及び462)を、ディスプレイ上のそれぞれの場所に対応する場所(例えば、
図4Bでは、460は468に対応し、462は470に対応する)にて検出する。このように、タッチ感知面がディスプレイとは別個のものである場合、タッチ感知面(例えば、
図4Bの451)上でデバイスによって検出されたユーザ入力(例えば、接触460及び462、並びにそれらの移動)が、多機能デバイスのディスプレイ(例えば、
図4Bでの450)上のユーザインタフェースを操作するために、デバイスによって使用される。同様の方法が、本明細書に記載の他のユーザインタフェースに任意選択的に使用されることを理解されたい。
【0143】
更に加えて、以下の説明は、主に指入力(例えば、指の接触、指のタップジェスチャ、指のスワイプジェスチャ)を参照して説明されるが、一部の実施形態では、それらの指入力のうちの1つ以上は、別の入力デバイスからの入力(例えば、マウスに基づく入力又はスタイラス入力)で置き換えられることを理解されたい。例えば、スワイプジェスチャは、任意選択的に、(例えば、接触の代わりに)マウスクリックと置換され、その後、(例えば、接触の移動の代わりに)スワイプの経路に沿ってカーソルの移動が行われる。別の実施例として、タップジェスチャは、(例えば、接触の検出に続いて接触の検出を停止する代わりに)カーソルがタップジェスチャの位置上に配置されている間、任意選択的に、マウスクリックと置換される。同様に、複数のユーザ入力が同時に検出される時、複数のコンピュータマウスが同時に、任意選択的に用いられているか、又はマウスと指接触が同時に用いられていることが理解されよう。
【0144】
図5Aは、例示的なパーソナル電子デバイス500を示す。デバイス500は、本体502を含む。一部の実施形態において、デバイス500は、デバイス100及び300(例えば、
図1A〜
図4B)に関して記載した特徴のいくつか又は全てを含み得る。一部の実施形態では、デバイス500は、タッチ感知ディスプレイ画面504、以後、タッチスクリーン504を有する。タッチスクリーン504の代わりに、又はそれに追加して、デバイス500は、ディスプレイ及びタッチ感知面を有する。デバイス100及びデバイス300と同様に、一部の実施形態において、タッチスクリーン504(又はタッチ感知面)は、加えられている接触(例えば、タッチ)の強度を検出するための1つ以上の強度センサを有してもよい。タッチスクリーン504(又は、タッチ感知面)の1つ以上の強度センサは、タッチの強度を表す出力データを提供することができる。デバイス500のユーザインタフェースは、タッチの強度に基づきタッチに応じてもよく、これは、異なる強度のタッチは、デバイス500上で異なるユーザインタフェース動作を呼び出し得ることを意味する。
【0145】
タッチ強度を検出して処理するための技術は、例えば、関連出願である、2013年5月8日出願の「Device,Method,and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application」と題された国際出願PCT/US2013/040061号、及び2013年11月11日出願の「Device,Method,and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships」と題された同PCT/US2013/069483号に見出すことができ、これらの文献のそれぞれは、全体が参照により本明細書に組み込まれる。
【0146】
一部の実施形態において、デバイス500は、1つ以上の入力機構506及び入力機構508を有する。入力機構506及び入力機構508は、含まれる場合には、物理的なものとすることができる。物理入力機構の例としては、プッシュボタン及び回転可能機構が挙げられる。一部の実施形態において、デバイス500は、1つ以上のアタッチメント機構を有する。そのようなアタッチメント機構は、含まれる場合には、例えば、帽子、アイウェア、イヤリング、ネックレス、シャツ、ジャケット、ブレスレット、腕時計バンド、チェーン、ズボン、ベルト、靴、財布、バックパックなどに、デバイス500を取り付けることを可能にし得る。これらのアタッチメント機構は、ユーザによってデバイス500が着用されることを可能にし得る。
【0147】
図5Bは、例示的なパーソナル電子デバイス500を示す。一部の実施形態では、デバイス500は、
図1A、
図1B及び
図3に関して記載した構成要素のいくつか又は全てを含み得る。デバイス500は、I/O部514を1つ以上のコンピュータプロセッサ516及びメモリ518に動作可能に連結するバス512を有する。I/O部514は、タッチ感知構成要素522、及び、任意選択的に、タッチ強度感知構成要素524を有し得るディスプレイ504に接続することができる。更に、I/O部514は、Wi−Fi、Bluetooth、近距離通信(NFC)、セルラー及び/又は他の無線通信技術を使用して、アプリケーション及びオペレーティングシステムのデータを受信するための通信ユニット530に接続し得る。デバイス500は、入力機構506及び/又は入力機構508を含むことができる。入力機構506は、例えば、回転可能入力デバイスであってもよい。入力機構508は、一部の実施例では、ボタンであってもよい。
【0148】
入力機構508は、一部の実施例では、マイクロフォンであってもよい。パーソナル電子デバイス500は、GPSセンサ532、加速度計534、方向センサ540(例えば、コンパス)、ジャイロスコープ536、動きセンサ538、及び/又はこれらの組み合わせなどの、様々なセンサを含み得るものであり、それらの全ては、I/O部514に動作可能に接続することができる。
【0149】
パーソナル電子デバイス500のメモリ518は、コンピュータ実行可能命令を記憶するための、非一時的コンピュータ可読記憶媒体とすることができ、それらの命令は、1つ以上のコンピュータプロセッサ516によって実行されると、例えば、コンピュータプロセッサに、処理1100、処理1400、及び処理1800(
図11、
図14、及び
図18)を含めた、上述の技術を実行させることができる。コンピュータ実行可能な命令はまた、コンピュータベースのシステム、プロセッサを含むシステム、又は、命令実行システム、装置、若しくはデバイスから命令をフェッチし、その命令を実行し得る他のシステムなどの、命令実行システム、装置、又はデバイス、によって、若しくはそれらに関連して、使用される任意の非一時的コンピュータ可読記憶媒体に記憶及び/又は伝送されてもよい。本文書の目的上、「非一時的コンピュータ可読記憶媒体」は、命令実行システム、装置、又はデバイスによって、若しくはそれらに関連して、使用されるコンピュータ実行可能命令を有形的に収容又は記憶することが可能な任意の媒体とすることができる。非一時的コンピュータ可読記憶媒体は、磁気的、光学的、及び/又は半導体記憶装置を含み得るが、これらに限定されない。かかる記憶装置の例としては、磁気ディスク、CD、DVD、又はBlu−ray技術に基づく光ディスク、及び、フラッシュ、ソリッドステートドライブなどの永続的ソリッドステートメモリが挙げられる。パーソナル電子デバイス500は、
図5Bの構成要素及び構成に限定されるものではなく、他の構成要素又は追加的構成要素を、複数の構成で含み得る。
【0150】
本明細書で使用する時、用語「アフォーダンス」は、デバイス100、300、及び/又は500(
図1、
図3、及び
図5)のディスプレイ画面上に表示され得るユーザ対話式のグラフィックユーザインタフェースオブジェクトを指す。例えば、画像(例えば、アイコン)、ボタン、及びテキスト(例えば、ハイパーリンク)はそれぞれ、アフォーダンスを構成することができる。
【0151】
本明細書にて使用される時、用語「フォーカスセレクタ」とは、ユーザが対話しているユーザインタフェースの現在の部分を示す入力要素を指す。カーソル又は他の位置マーカを含むいくつかの実装において、タッチ感知面(例えば、
図3のタッチパッド355、又は
図4Bのタッチ感知面451)上で入力(例えば、押圧入力)が検出された時に、カーソルが特定のユーザインタフェース要素(例えば、ボタン、ウィンドウ、スライダ、又は他のユーザインタフェース要素)の上にある時、カーソルは「フォーカスセレクタ」として機能し、特定のユーザインタフェース要素が、検出された入力に従って調整される。タッチスクリーンディスプレイ上のユーザインタフェース要素との直接的な対話を可能にする、タッチスクリーンディスプレイ(例えば、
図1Aでのタッチ感知ディスプレイシステム112、又は
図4Aでのタッチスクリーン112)を含む一部の実装では、タッチスクリーン上で検出される接触が「フォーカスセレクタ」としての役割を果たすことにより、入力(例えば、接触による押圧入力)が、タッチスクリーンディスプレイ上の特定のユーザインタフェース要素(例えば、ボタン、ウィンドウ、スライダ、又は他のユーザインタフェース要素)の場所で検出されると、その特定のユーザインタフェース要素が、検出された入力に従って調節される。いくつかの実装では、(例えば、タブキー又は矢印キーを使ってフォーカスを1つのボタンから別のボタンに移動させることにより)タッチスクリーンディスプレイ上の対応するカーソルの移動又は接触の移動なしに、フォーカスが、ユーザインタフェースの1つの領域からユーザインタフェースの別の領域に移動される。これらの実装において、フォーカスセレクタは、ユーザインタフェースの異なる領域間でのフォーカスの移動に従って移動する。フォーカスセレクタが採用する具体的な形態とは関わりなく、フォーカスセレクタは、全般的に、ユーザが意図するユーザインタフェースとの対話を(例えば、ユーザが対話することを意図しているユーザインタフェースの要素をデバイスに示すことによって)伝達するために、ユーザによって制御されるユーザインタフェース要素(又は、タッチスクリーンディスプレイ上での接触)である。例えば、タッチ感知面(例えば、タッチパッド又はタッチスクリーン)上で押圧入力が検出される間の、対応のボタンの上のフォーカスセレクタ(例えば、カーソル、接触、又は選択ボックス)の場所は、その対応のボタンを(そのデバイスのディスプレイ上に示される他のユーザインタフェース要素ではなく)アクティブ化することをユーザが意図していることを示すものである。
【0152】
本明細書及び特許請求の範囲で使用する時、接触の「特性強度」という用語は、接触の1つ以上の強度に基づく、その接触の特性を指す。一部の実施形態では、特性強度は複数の強度サンプルに基づく。特性強度は、任意選択的に、既定の数の強度サンプル、又は既定のイベント(例えば、接触を検出した後、接触のリフトオフを検出する前、接触の移動の開始を検出する前若しくは後、接触の終了を検出する前、接触の強度の増加を検出する前若しくは後、及び/又は接触の強度の減少を検出する前若しくは後)に対して所定の時間期間(例えば、0.05、0.1、0.2、0.5、1、2、5、10秒)内に収集された強度サンプルのセットに基づく。接触の特性強度は、任意選択的に、接触の強度の最大値、接触の強度の平均値(mean value)、接触の強度の平均値(average value)、接触の強度の上位10%値、接触の強度の最大値の半分の値、接触の強度の最大値の90%の値など、のうちの1つ以上に基づく。一部の実施形態では、特性強度を判定するために、接触の期間が使用される(例えば、特性強度が経時的な接触の強度の平均である時)。一部の実施形態では、動作がユーザによって実行されたか否かを判定するために、特性強度を1つ以上の強度閾値のセットと比較する。例えば、1つ以上の強度閾値のセットは、第1の強度閾値及び第2の強度閾値を含むことができる。この実施例では、第1の閾値を越えない特性強度を有する接触の結果として第1の動作が実行され、第1の強度閾値を越え、第2の強度閾値を越えない特性強度を有する接触の結果として第2の動作が実行され、第2の閾値を越える特性強度を有する接触の結果として第3の動作が実行される。一部の実施形態では、特性強度と1つ以上の閾値との間の比較が、第1の動作又は第2の動作のいずれを実行するかを判定するために使用されるのではなく、1つ以上の動作を実行するかどうか(例えば、それぞれの動作を実行するのか、又はそれぞれの動作の実行を省略するのか)を判定するために使用される。
【0153】
一部の実施形態では、特性強度を判定する目的で、ジェスチャの一部分が特定される。例えば、タッチ感知面は、接触の強度が増加する、開始位置から遷移して終了位置まで達する連続的なスワイプ接触を受け取ってもよい。この実施例では、終了位置における接触の特性強度は、連続的なスワイプ接触全体ではなく、そのスワイプ接触の一部分のみ(例えば、終了位置におけるスワイプ接触の部分のみ)に基づいてもよい。一部の実施形態では、接触の特性強度を判定する前に、平滑化アルゴリズムをそのスワイプ接触の強度に適用してもよい。例えば、平滑化アルゴリズムは、任意選択的に、非荷重移動平均平滑化アルゴリズム、三角平滑化アルゴリズム、中央値フィルタ平滑化アルゴリズム、及び/又は指数平滑化アルゴリズム、のうちの1つ以上を含む。いくつかの状況では、これらの平滑化アルゴリズムは、特性強度を判定する目的で、スワイプ接触の強度の小幅な上昇又は低下を除外する。
【0154】
タッチ感知面上の接触の強度は、接触検出強度閾値、軽い押圧強度閾値、深い押圧強度閾値、及び/又は1つ以上の他の強度閾値などの1つ以上の強度閾値に対して特徴付けしてもよい。一部の実施形態では、軽い押圧強度閾値は、物理マウスのボタン又はトラックパッドのクリックに典型的に関連付けられた動作を、デバイスが実行することになる強度に相当する。一部の実施形態では、深い押圧強度閾値は、物理マウスのボタン又はトラックパッドのクリックに典型的に関連付けられた動作とは異なる動作を、デバイスが実行することになる強度に相当する。一部の実施形態では、軽い押圧強度閾値を下回る(例えば、かつ、それを下回ると接触がもはや検出されないわずかな接触検出強度閾値を上回る)特性強度で接触が検出される場合、デバイスは、軽い押圧強度閾値又は深い押圧強度閾値に関連付けられた動作を実行することなく、タッチ感知面上の接触の移動に従って、フォーカスセレクタを移動させる。全般的には、特に明記しない限り、これらの強度閾値は、ユーザインタフェース図の異なるセット間でも一貫している。
【0155】
軽い押圧強度閾値を下回る強度から、軽い押圧強度閾値と深い押圧強度閾値との間の強度への接触の特性強度の増大は、「軽い押圧」入力と称される場合がある。深い押圧強度閾値を下回る強度から、深い押圧強度閾値を上回る強度への接触の特性強度の増大は、「深い押圧」入力と称される場合がある。接触検出強度閾値を下回る強度から、接触検出強度閾値と軽い押圧強度閾値との間の強度への接触の特性強度の増大は、タッチ面上の接触の検出と称される場合がある。接触検出強度閾値を上回る強度から、接触検出強度閾値を下回る強度への接触の特性強度の減少は、タッチ面からの接触のリフトオフの検出と称される場合がある。一部の実施形態では、接触検出強度閾値はゼロである。一部の実施形態では、接触検出強度閾値はゼロを上回る。
【0156】
本明細書で説明される一部の実施形態では、1つ以上の動作は、それぞれの押圧入力を含むジェスチャを検出したことに応じて、又はそれぞれの接触(又は、複数の接触)で実行されるそれぞれの押圧入力を検出したことに応じて実行され、それぞれの押圧入力は、少なくとも部分的に、押圧入力強度閾値を上回る接触(又は、複数の接触)の強度の増大の検出に基づいて検出される。一部の実施形態では、それぞれの動作は、押圧入力強度閾値を上回る、対応する接触の強度の増大(例えば、対応する押圧入力の「ダウンストローク」)を検出したことに応じて実行される。一部の実施形態では、押圧入力は、押圧入力強度閾値を上回る、対応する接触の強度の増大、及び後続の、押圧入力強度閾値を下回る接触の強度の減少を含み、対応する動作は、その後続の押圧入力閾値を下回る対応する接触の強度の減少(例えば、対応する押圧入力の「アップストローク」)を検出したことに応じて、実行される。
【0157】
一部の実施形態では、デバイスは、「ジッタ」と呼ばれる場合がある不測の入力を回避するために強度ヒステリシスを採用し、デバイスは、押圧入力強度閾値との既定の関連性を有するヒステリシス強度閾値を定義又は選択する(例えば、ヒステリシス強度閾値は、押圧入力強度閾値よりもX強度単位低いか、又は、ヒステリシス強度閾値は、押圧入力強度閾値の75%、90%、若しくは何らかの妥当な比率である)。したがって、一部の実施形態では、押圧入力は、押圧入力強度閾値を上回る対応する接触の強度の増大、及び後続の、押圧入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少を含み、対応する動作は、そのヒステリシス強度閾値を下回る、後続の対応する接触の強度の減少(例えば、対応する押圧入力の「アップストローク」)を検出したことに応じて、実行される。同様に、一部の実施形態では、押圧入力は、デバイスが、ヒステリシス強度閾値以下の強度から押圧入力強度閾値以上の強度への接触の強度の増大、及び任意選択的に、ヒステリシス強度以下の強度への、後続の接触の強度の減少を検出する場合にのみ検出され、対応する動作は、その押圧入力の検出(例えば、状況に応じて、接触の強度の増大、又は接触の強度の減少)に応じて、実行される。
【0158】
説明を容易にするために、押圧入力強度閾値に関連付けられた押圧入力に応じて、又はその押圧入力を含むジェスチャに応じて実行される動作の説明は、押圧入力強度閾値を上回る接触の強度の増大、ヒステリシス強度閾値を下回る強度から押圧入力強度閾値を上回る強度への接触の強度の増大、押圧入力強度閾値を下回る接触の強度の減少、及び/又は押圧入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少のいずれかを検出したことに応じて、任意選択的にトリガされる。更に加えて、押圧入力強度閾値を下回る接触の強度の減少を検出したことに応じて動作が実行されるとして説明される実施例では、その動作は、押圧入力強度閾値に対応し、かつそれよりも低いヒステリシス強度閾値を下回る、接触の強度の減少を検出したことに応じて任意選択的に実行される。
【0159】
本明細書で使用する時、「インストール済みアプリケーション」とは、電子デバイス(例えば、デバイス100、300、及び/又は500)にダウンロードされており、かつ、そのデバイス上で起動される(例えば、開かれた状態になる)準備が整っているソフトウェアアプリケーションを指す。一部の実施形態では、ダウンロードされたアプリケーションは、ダウンロードされたパッケージからプログラム部分を抽出して、その抽出部分をコンピュータシステムのオペレーティングシステムと統合するインストールプログラムによって、インストール済みアプリケーションになる。
【0160】
ここで、デバイ100、デバイス300、又はデバイス500などの電子デバイスで実施することができるユーザインタフェース(「UI」)及び関連処理の実施形態に注目する。
1.カスタマイズされた通知パラメータ
【0161】
一部の実施形態による通知パラメータを構成する技術及びユーザインタフェースの例を、
図6〜
図10Cを参照しながら以下に説明する。これらの図のユーザインタフェースは、
図11の処理を含めた、以下で説明される処理を例示するために使用される。
【0162】
図6は、例示的な電子デバイス600及びデバイス600から離れている例示的な外部電子デバイス700を示す。一部の実施形態において、デバイス600は、デバイス100(
図1)、デバイス300(
図3)、及び/又はデバイス500(
図5)のうちの1つ以上であってもよい。説明のため、デバイス600は、タッチ感知ディスプレイ602を有する、
図4に示すようなポータブル多機能デバイス100と同様の、パーソナル電子デバイスである。一部の実施形態において、外部デバイス700は、デバイス100(
図1)、デバイス300(
図3)、及び/又はデバイス500(
図5)のうちの1つ以上であってもよい。説明のため、デバイス700は、タッチ感知ディスプレイ702及び回転可能入力機構704を有する、
図5Aに示すようなデバイス500と同様の、パーソナル電子デバイスである。
【0163】
図6に示すように、デバイス600は、無線ネットワークを介して情報を受信することができる。
図6はまた、デバイス600が、外部デバイス700とペアリングされた関係として動作し、これら2つのデバイス間でデータを交換可能であることを示している。ペアリングされた関係において、デバイス600と外部デバイス700は、それぞれを登録しており、双方向の無線通信を実行可能である。一部の実施形態では、ペアリングされた関係を目的とする無線通信は、Bluetooth及び/又はBluetooth Low Energy(BTLE)などのピアツーピア無線通信プロトコルを介して実施される。一部の実施形態では、無線通信は、2つ以上の無線通信プロトコルを使用する。例えば、BTLEに加えて、WiFiを使用することができる。これらの実施形態では、2つのデバイス間の初期の通信は、そのプロトコルが、より低速のデータ転送速度をもたらす場合であっても、BTLEなどの、より低電力のプロトコルを介して実施することができる。後続の通信は、WiFiなどの、比較的高速の二次ネットワークを介して実施することができる。ペアリングされた関係を開始及び動作させる更なる例示的な技術は、以下の発明者Lawrence Y.Yangらの同時係属出願にて説明されている。「Companion Application for Activity Cooperation」と題する2014年5月30日に出願された米国特許仮出願第62/005,793号、「Predefined Wireless Pairing」と題する2014年5月30日出願の米国特許仮出願第62/005,751号、「Reduced−size Configuration Interface」と題する2014年9月2日出願の米国特許仮出願第62/044,956号、及び、「Reduced−size Configuration Interface」と題する2015年3月8日出願の米国特許仮出願。
【0164】
一部の実施形態では、デバイス600は、アラートを受信することができる。デバイス600は、デバイス600上で動作するインストールされたアプリケーションからのアラートを受信することができる、又は、例えばデバイス600と通信している外部デバイス上で動作するインストールされたアプリケーションからのアラートを受信することができる。一部の実施形態では、デバイス600は、アプリケーションから又は外部デバイスからのアラートを受信することでアラートを受信する。
【0165】
一部の実施形態では、アラートは、例えば、テキストメッセージ、カレンダーアラート、ボイスメール、時計のアラーム、システムアラート、天気アラート、又はフィットネスアラートであってもよい。アラートは、「日付−時刻」と称される日付及び時刻に関連付けられてもよく、「日付−時刻」はアラートが送信又は受信された日付及び時刻、又は、例えば、予定されているアラートイベントの日付及び時刻を特徴付けている。アラート日付−時刻は、現在の日付と時刻に対して、未来の(例えば、予定されている)日付−時刻、又は、過去の日付−時刻であってもよい。アラート日付−時刻は、デバイス600によって又は外部デバイスによってアラートに割り当てられたタイムスタンプ、又は、アプリケーション(例えば、カレンダーリマインダー又は時計アラームに関連付けられている日付と時刻)内にて割り当てられている日付と時刻であってもよい。アラートは、タイムレスアラートであってもよい。すなわち、タスクリマインダー、又は、デバイス600が特定の場所にいる時又は所定のジオフェンス内にいる時にトリガされる位置ベースのアラートなどの、特定の日付−時刻に関連付けられていないアラートである。
【0166】
受信したアラートは、アラートのソース(例えばデバイス又はユーザ)、そのアラートに対応するアプリケーション、日付−時刻、及びアラートコンテンツなどの、情報を含んでもよい。アラートコンテンツは、例えば、テキストメッセージの本文、電子メールの件名及び/又は本文、ボイスメールメッセージ、画像、音声録音、又は、カレンダーリマインダーに関連付けられているテキストを含んでもよい。
【0167】
一部の実施形態において、アラートを受信したことに応じて、デバイス600は、ディスプレイ602上において、受信したアラートの1つ以上を表す1つ以上の通知を表示する。すなわち、デバイス600は、受信したアラートの1組に対応する通知を表示する。アラートを表す通知は、アラート情報の少なくとも一部を含んでもよい。
図7Aは、デバイス600のディスプレイ602上に表示され、デバイス600によって受信したアラートを表す例示的な通知610及び通知620を示す。通知610及び通知620は、デバイス600によって受信された一部の又は全てのアラートを表してもよい。
【0168】
図7Aに示すように、通知610及び通知620は、対応するアラートに関連付けられたアプリケーションを示すアプリケーションアフォーダンス612、アプリケーションアフォーダンス622をそれぞれ含んでもよい。この例において、通知610及び通知620で表されるアラートは、それぞれテキストメッセージアプリケーション及び電子メールアプリケーションに関連付けられている。一部の実施形態において、アプリケーションアフォーダンス612又はアプリケーションアフォーダンス622の選択を検出したことに応じて、デバイス600は、対応するアラートに関連付けられているアプリケーションを起動することができる。一部の実施形態において、アプリケーションの起動は、タッチスクリーン602上においてアプリケーションを表示すること、及び、アプリケーション内において閲覧、編集、又は応答するためにアラートを開くことを含む。
【0169】
通知610及び通知620はまた、それぞれのアラートのソース614及びソース624(Jason Jones及びJulia Smith)、及び、それぞれのアラートのコンテンツの一部616及びコンテンツの一部626を含む。コンテンツの一部616は、通知610に関連付けられているテキストメッセージの本文の始まりを含む。コンテンツの一部626は、通知620に関連付けられている電子メールの件名の始まりを含む。一部の実施形態において、デバイス600は、(例えば、
図7Aに示されるように)同時に2つを以上の通知を表示する。一部の実施形態において、通知610及び通知620は、それぞれのアラートを受信した順番に基づいて、順番に表示される。
【0170】
例えば、アラートの管理、通知の表示、及び通知の対話などの、アラート及び通知に関する例示的な技術は、以下の発明者Lawrence Y.Yangらの同時係属出願において、説明されている。「Reduced−size Interfaces for Managing Alerts」と題する2014年9月2日出願の米国特許仮出願第62/044,894号号、「Reduced−size Interfaces for Managing Alerts」と題する2014年3月7日出願の米国特許仮出願第62/044,894号号、2014年9月2日出願の米国特許仮出願第62/044,953号号の名称「Reduced−size Notification Interface」、及び、発明者Jonathan R.Dascolaらの2015年3月8日出願の米国特許仮出願の名称「Reduced−size Notification Interface」。これらは、参照によりその内容全体が本明細書に組み入れられる。
【0171】
一部の実施形態では、デバイス600は、受信したアラートの少なくとも一部を表すデータを送信する。一部の実施形態において、デバイス600は、アラートを受信したことに応じて、データを送信する。
図7A〜
図7Bに示される例において、デバイス600は、通知610及び通知620で表されるアラートを表すデータを送信する。データは、デバイス600と外部デバイス700との間の通信リンクを介して外部デバイス700へ送信されてもよい。一部の実施形態において、通信リンクは、デバイス600とデバイス700とのペアリングされた関係による動作の結果、存在する。
【0172】
一部の実施形態において、受信したアラート(例えば、アラートの第1のセット)の少なくとも一部を表すデータは、外部デバイス700、デバイス600によって送信されたデータで表されるアラート(例えば、アラートの第2のセット)の少なくとも一部に対応する通知を表示させる命令を含む。
図7A〜
図7Bに示される例においては、デバイス600は、通知610及び通知620に関連付けられている2つのアラートを表すデータを送信する。データは、外部デバイス700に、両方のアラートに関する通知を表示させる命令を含む。外部デバイス700はデータを受信し、そのデータを受信したことに応じて、命令に従って、例示的な通知710及び例示的な通知720を表示する。
【0173】
通知710及び通知720は、デバイス600によって送信されたデータによって表されたアラートを表す。また、通知710は、デバイス600上に表示された通知610によって表される同じアラートを表し、通知720は、通知620によって表される同じアラートを表す。本開示の目的のために、デバイス600のディスプレイ602上に表示される通知(例えば、610、620)は、「ローカル通知」と称され、外部デバイス700のディスプレイ702上に表示される通知(例えば、710、720)は、「リモート通知」と称される。
【0174】
図7Bに示されるように、通知710及び通知720は、それぞれ通知610及び通知620と同じスタイル及びフォーマットを有する。それぞれは、対応するアラートに関連付けられたアプリケーションを示すアプリケーションアフォーダンス712及びアプリケーションアフォーダンス722(例えば、それぞれ、テキストメッセージアプリケーション及び電子メールアプリケーション)を含む。一部の実施形態において、アプリケーションアフォーダンス712又はアプリケーションアフォーダンス722の選択を検出したことに応じて、デバイス700は、対応するアラートに関連付けられているアプリケーションを起動することができる。一部の実施形態において、アプリケーションの起動は、タッチスクリーン702上においてアプリケーションを表示すること、及び、アプリケーション内において閲覧、編集、又は応答するためにアラートを開くことを含む。
【0175】
通知710及び通知720はまた、それぞれのアラートのソース714及びソース724(Jason Jones及びJulia Smith)、及び、それぞれのアラートのコンテンツの一部716及びコンテンツの一部726を含み、これらは、それぞれ通知610及び通知620と同じスタイル及びフォーマットにて表示される。一部の実施形態において、外部デバイス700は、(例えば、
図7Bに示されるように)同時に2つ以上の通知を表示する。一部の実施形態において、通知710及び通知720は、それぞれのアラートを受信した順番に基づいて順次表示される、又は、それぞれのアラートを表すデバイス600によって送信されたデータを受信した順番に基づいて順次表示される。
【0176】
一部の実施形態において、デバイス600は、ユーザに対して外部デバイス700上における通知の表示に関連付けられたパラメータを設定することを可能にするユーザインタフェースを提供する。外部デバイス700上における通知の表示に関連付けられたパラメータは、リモート通知パラメータと称される。リモート通知パラメータは、リモート通知を表示するかどうか、及び/又は、リモート通知を表示する方法を決定してもよい。リモート通知パラメータの設定を変更する能力によって、ユーザはデバイス700上における通知のカスタマイズが可能になる。
【0177】
一部の実施形態において、デバイス600は、リモート通知パラメータの状態を設定するオプションを含むユーザインタフェースを表示する。
図8Aは、アプリケーションに関連付けられたリモート通知パラメータの状態を設定するオプションを含む、例示的なユーザインタフェース800を示す。表現810は、メールアプリケーションに関連付けられており、表現820は、テキストメッセージアプリケーションに関連付けられている。表現810は、グラフィックトグルスイッチ812を含み、これにより、ユーザ入力に応じてON位置とOFF位置との間を切り替えることができる。一部の実施形態において、スイッチ812の位置は、ディスプレイ602上の接触を検出したことに応じて変わる。接触は、スイッチ812上又はスイッチ812の近傍における、タップ、ドラッグ、スワイプ、又はフリックなどのタッチジェスチャによって実行されてもよい。一部の実施形態において、スイッチ812の位置は、電子メールアプリケーションに関連付けられたアラートを外部デバイス700上に表示することになるかどうかを決定するリモート通知パラメータの状態を設定する。表現820は、また、グラフィックトグルスイッチ822も含み、その位置は、テキストメッセージアプリケーションに関連付けられたアラートを外部デバイス700上に表示することになるかどうかを決定するリモート通知パラメータの状態を表示する。
【0178】
リモート通知は、表現810及び表現820に関連付けられたリモート通知パラメータの状態に従って、外部デバイス700のディスプレイ702上に表示されてもよい。一部の実施形態において、デバイス600は、表現810及び表現820に関連付けられたリモート通知パラメータの状態に従って、受信したアラートの少なくとも一部を表すデータを送信する。例えば、
図8Aにおいて、電子メールアプリケーション及びテキストメッセージアプリケーションに関連付けられたリモート通知パラメータは、両方ともON状態に設定されている。この構成に従って、デバイス600は、電子メールアプリケーション及びテキストメッセージアプリケーションの受信アラートを表すデータを送信する。データはまた、これらのアプリケーションのアラートを表す通知を表示する命令を含む。この構成に従って、外部デバイス700は、電子メールアプリケーション及びテキストメッセージアプリケーションのアラートを表す通知を表示してもよい。
図7Bは、外部デバイス700が、それぞれ電子メールアプリケーション及びテキストメッセージアプリケーションに関連付けられているアラートを表す通知710及び通知720を表示する例を示す。
【0179】
一部の実施形態において、ユーザインタフェース800を表示している間に、デバイス600は、ユーザ入力を検出し、このユーザ検出は、リモート通知パラメータの状態の選択を表す。例えば、デバイス600は、表現820に関連付けられているタッチ感知ディスプレイ602上の接触を検出してもよい。
図8Aにおいて、タッチ850は、スイッチ822における、又は、スイッチ822の近傍の接触を引き起こす。この接触に応じて、デバイス600は、
図8Bに示すように、スイッチ822をON位置からOFF位置へと変更する。この接触に応じて、デバイス600は、テキストメッセージアプリケーションからのアラートの通知を外部デバイス700上に表示しないように、表現820に関連付けられているリモートテキスト通知パラメータを設定する。
図8Cは、外部デバイス700が、テキストメッセージアプリケーションに関連付けられている通知710を表示せず、電子メールアプリケーションに関連付けられている通知720を表示する例を示す。一部の実施形態において、リモートテキスト通知パラメータの構成に従って、デバイス600は、テキストメッセージアプリケーションに関連付けられているアラートの表現を含むデータを送信しない。一部の実施形態において、外部デバイス700は、デバイス600からテキストメッセージアプリケーションに関連付けられている受信したアラートの通知を表示しない。
【0180】
一部の実施形態において、リモート通知パラメータは、デバイス600上に記憶されており、この場合、デバイス600は、ユーザ入力に応じて、デバイス600内において選択された状態にリモート通知パラメータを設定する。一部の実施形態において、リモート通知パラメータは、デバイス700上に記憶される。一部の実施形態において、ユーザ入力に応じて、デバイス600はデータを送信し、このデータは、デバイス700に、選択された状態にデバイス700上のリモート通知パラメータを設定させる命令を含む。命令を受信したことに応じて、デバイス700は、選択された状態にデバイス700上のリモート通知パラメータを設定してもよい。
【0181】
通知は、アラートに関連付けられたアプリケーションを除く他の様々な要因に基づいて表示されもよい。例えば、リモート通知パラメータは、特定の連絡先からのリモート通知を表示しないように状態を設定してもよい。
【0182】
一部の実施形態において、アラートのコンテンツに関するリモート通知パラメータに従って、通知を表示する。
図9Aに示すユーザインタフェース900によって、例えば、ユーザは、電子メールアプリケーションに関連付けられたリモート通知パラメータを調整することができる。表現910は、電子メールアプリケーションのアラートに関連付けられた通知を外部デバイス700上に表示するかどうかを決定するパラメータを表す。表現920、表現930、及び、表現940は、電子メールアプリケーションのアラートに関連付けられた通知の表示フォーマットを決定するアラートコンテンツに関連付けられたパラメータを表す。より詳細には、表現920、表現930、及び、表現940は、アラートのどのコンテンツが、通知に含まれるかに影響を与える。表現920は、アラートの件名が含まれるかどうかを決定するパラメータを表し、表現930は、アラートの本文のプレビューが含まれるかどうかを決定するパラメータを表し、及び、表現940は、デバイス600によってアラートが受信された時刻が含まれるかどうかを決定するパラメータを表す。
【0183】
図9Bは、ユーザインタフェース900上において選択されたリモート通知パラメータの構成に従って外部デバイス700上に表示される通知950を示す。通知950は、通知620及び通知720によって表されるJulia Smithからの同じメールのアラートを表す。表現920、表現930、及び、表現940に対応するパラメータに従って、通知950は、電子メールの件名及びプレビューを含むが、時刻は含まない。この場合、リモート通知(例えば、950)は、同じアラートのローカル通知(例えば、620)内に含まれる部分とは異なる、アラートの情報の部分を含む。
【0184】
図9C及び
図9Dは、ユーザインタフェース900上に表されるリモート通知パラメータの別の例示的な構成、及び、通知950に関連付けられている同じ電子メールに対して外部デバイス700上に表示される対応する通知960を示す。
図9Cにおけるパラメータの設定に従って、通知960は、電子メールの件名及び時刻を含むが、本体のプレビューは含まない。
【0185】
通知960はまた、通知は、デバイス600とは異なるスタイルで外部デバイス700上に表示され得ることを示す。通知のスタイルは、形状、色、フォント、又は位置などの、通知の視覚的な側面を含んでもよく、並びに、アラート情報のうちのどの部分が通知に含まれるかを含んでもよい。一部の実施形態において、デバイス600は、デバイス700上に表示する通知のスタイルをカスタマイズするオプションを提供する、ユーザインタフェースを表示する。例えば、デバイス600は、リモート通知の表示スタイルに関連付けられたリモート通知スタイルパラメータの状態を調整するオプションを、提供してもよい。一部の実施形態において、デバイス700は、リモート通知スタイルパラメータの状態に従って、デバイス600とは異なるスタイルにおいて通知を表示するように命令される。
【0186】
図9Eは、ユーザインタフェース900上で表されるリモート通知パラメータの更に別の例示的な構成を示す。スイッチ912の位置によって示されるように、リモート通知は、電子メールアプリケーションのアラートに対してオフになっている。すなわち、外部デバイス700が電子メールアプリケーションのアラートに対する通知を表示するかどうかを決定するリモート通知パラメータは、OFFの状態に設定されている。一部の実施形態において、アプリケーションのアラートに関連付けられた通知を表示するかどうかを判定するパラメータを、オフ状態にすることよって、そのアプリケーションに関連付けられた他のパラメータを設定するオプションを非アクティブ化又は無効にすることができる。
図9Eに示される例において、表現920、表現930、及び、表現940は、強調されておらず、それらが表すパラメータを変更できないことが示されている。
【0187】
一部の実施形態において、デバイス600は、デバイス600が外部デバイス700の通信範囲外にある場合、又は、外部デバイス700と通信していない場合は、リモート通知パラメータを設定するオプションを非アクティブ化又は無効化する。すなわち、デバイス600が外部デバイス700と通信していないこととの判定に従って、リモート通知パラメータの状態を設定するオプションは、非アクティブ化される。
図9Fは、デバイス600が外部デバイス700と通信していない場合のユーザインタフェース900の例を示す。
図9Fにおいて、ユーザインタフェース900は、デバイス600が外部デバイス700と通信していないインジケーション970を含み、表現910、表現920、表現930、及び、表現940が非アクティブ化されている。
【0188】
一部の実施形態において、デバイス600は、デバイス600上における通知の表示に影響を与えるパラメータの状態を設定するオプションを含むユーザインタフェースを示す。そのようなパラメータは、本開示においては、ローカル通知に影響を与えるので、ローカル通知パラメータと記載される。一部の実施形態において、ローカル通知は、ローカル通知パラメータに従ってデバイス600上に表示されることとなる。
図10Aは、ローカル通知パラメータの状態を設定するオプションを含む例示的なユーザインタフェース1000を示す。ユーザインタフェース1000は、電子メールアプリケーションの表現1010及びテキストメッセージアプリケーションの表現1020を含む。表現1010及び表現1020は、ローカル通知パラメータに関連付けられており、リモート通知パラメータに関して述べた表現810及び表現820に類似する。スイッチ1012及びスイッチ1022の位置は、それぞれ電子メールアプリケーション及びテキストメッセージアプリケーションのアラートがデバイス600上において表示されことになるかどうかを決定するローカル通知パラメータの状態を示す。一部の実施形態において、表現1010は、表現810に関連付けられた電子メールアプリケーションの1つ以上と関連付けられており、表現1020は、表現820に関連付けられているテキストメッセージアプリケーションの1つ以上と関連付けられている。
【0189】
ユーザインタフェース1000を表示している間に、デバイス600は、1つ以上の表されたローカル通知パラメータの状態の選択を表すユーザ入力を検出することができる。一部の実施形態において、ユーザ入力は、タッチ感知ディスプレイ602上のローカル通知パラメータに関連付けられた場所(例えば、表現1010のスイッチ1012の場所)における接触である。一部の実施形態において、接触は、
図8Aを参照して上述されたタッチ850などのタッチジェスチャによって引き起こされる。ユーザ入力を検出したことに応じて、デバイス600は、選択された状態にローカル通知パラメータを設定することができる。
【0190】
ローカル通知は、表現1010及び表現1020に関連付けられたローカル通知パラメータの状態に従って、デバイス600のディスプレイ602上に表示されてもよい。例えば、
図10Aにおいて、電子メールアプリケーションに関連付けられたローカル通知パラメータはオンであり、テキストメッセージアプリケーションに関連付けられたローカル通知パラメータは、オフである。この構成に従って、デバイス600は、電子メールアプリケーションのアラートを表す通知を表示するが、テキストメッセージアプリケーションのアラートは表示しない。
図10Bに示すように、この構成に従って、デバイス600は、電子メールアプリケーションのアラートに関連付けられた通知620を表示するが、
図7Aに示す通知610は表示しない。
【0191】
図10Aに戻り、ユーザインタフェース1000はまた、表現1010及び表現1020に関連付けられた電子メールアプリケーション及びテキストメッセージアプリケーションのリモート通知パラメータに関して上述された表現810及び表現820を含む。表現810に関連付けられたリモート通知パラメータ及び表現1010に関連付けられたローカル通知パラメータは、同じ通知設定に関連付けられている。通知設定は、例えば、両方のデバイスにインストールされた特定のアプリケーションに関する通知を表示するかどうかなどの、デバイス600又は外部デバイス700のどちらかに固有ではない設定を含む。
【0192】
一部の実施形態において、設定、機能、及び/又は、アプリケーションに関連付けられたリモート通知パラメータは、同じ設定、機能、及び/又は、アプリケーションに関して、対応するローカル通知パラメータとは独立して設定することができる。例えば、ユーザインタフェース1000は、電子メールアプリケーション及びテキストメッセージアプリケーションに関連付けられたローカル通知パラメータが、同じアプリケーションに関連付けられた対応するリモート通知パラメータとは異なる状態に設定される構成を示している。
図10Cは、ユーザインタフェース1000上において設定されたパラメータの構成に従う外部デバイス700上での表示を示す。図示するように、外部デバイス700は、デバイス600とは異なるアラートの通知を表示する。
【0193】
表現810、表現820、及び、表現1010、表現1020に関連付けられたパラメータの状態の任意の組み合わせが可能であることは、認識すべきである。一部の実施形態において、デバイス600は、外部デバイス700と同じセットのアラートの通知を表示している。一部の実施形態において、デバイス600は、外部デバイス700が表示する通知に関するサブセットのアラートの通知を表示している。一部の実施形態において、外部デバイス700は、デバイス600が表示する通知に関するサブセットのアラートの通知を表示している。一部の実施形態において、デバイス600は、外部デバイス700が表示しない通知に関する1つ以上のアラートの通知を表示している。一部の実施形態において、外部デバイス700は、デバイス600が表示しない通知に関する1つ以上のアラートの1つ以上の通知を表示している。一部の実施形態において、デバイス600及び外部デバイス700は、同じアラートの通知は表示しない。
【0194】
調整可能な(ローカル及びリモートの両方の)通知パラメータに関連付けられる特徴は、上述したものに限られず、上述した技術は、他の様々な通知の特徴に適用することができることは、認識すべきである。一部の実施形態において、通知設定の状態に従って、デバイス600又は外部デバイス700は、アラートのソース、アラートのコンテンツ、アラートに関連付けられたアプリケーション、アラートの優先順位、アラートに関連付けられたイベント、アラートに関連付けられた時刻、アラートに関連付けられた場所、アラートに関連付けられた人物など、アラートの情報の少なくとも一部に基づく通知を表示する。例えば、通知パラメータを使用して、特定のソース(例えば、デバイス又はユーザ)に関連付けられたアラートの通知を表示するかどうかを決定してもよい。
【0195】
構成できる通知機能の更なる例としては、サイズ、形状、色、又は、通知の場所、通知のアニメーション、通知との相互作用能力、通知表示の持続時間、通知のアクセシビリティ又は利用可能性、インジケーションを伴う音声又は触覚インジケーションなどが挙げられる。こうした例示的な特徴は、これらの特徴に関連付けられる通知パラメータの状態に少なくとも部分的に基づいてもよい。
【0196】
上述した技術は、デバイス600又は外部デバイス700の通知以外の他の様々な特徴に適用可能なこともまた、認識すべきである。例えば、他の動作可能な様々な機能及び/又は特徴は、調整可能なパラメータの設定に従って実行される。
【0197】
図11は、一部の実施形態に係る、電子デバイスを使用した1100のための方法を示すフロー図である。方法1100は、ディスプレイを備えたデバイス(例えば、100、300、500、600)にて実行される。方法1100のいくつかの動作は組み合わせてもよく、いくつかの動作は順序を変更してもよく、いくつかの動作は省略してもよい。
【0198】
以下において説明されるように、方法1100は、電子デバイスを構成するための直感的な仕方を提供する。この方法は、電子デバイスを構成するユーザの認識的負担を軽減し、それによって、より効率的なヒューマン−マシンインタフェースを作り出す。バッテリ動作式のコンピューティングデバイスの場合には、ユーザが電子デバイスをより高速かつより効率的に構成することを可能にすることにより、電力が節約され、バッテリ充電の間隔が増す。
【0199】
ブロック1102において、デバイス(例えば600)は、情報を含む複数のアラートを受信する。
【0200】
ブロック1104において、複数のアラートを受信したことに応じて、デバイス(例えば、600)は、第1のディスプレイ(例えば、602)上に複数のアラートうちの第1のセットのアラートに対応するローカル通知(例えば、610、620)を表示する。
【0201】
ブロック1106において、更に複数のアラートを受信したことに応じて、デバイス(例えば、600)は、複数のアラートの少なくとも一部を表すデータを送信する。このデータは、第2のデバイス(例えば、700)に、第2のディスプレイ上に複数のアラートの少なくとも一部のうちの第2のセットのアラートに対応するリモート通知(例えば、710、720)を表示させる命令を含む。任意選択的に、第2のデバイス(例えば、700)は、デバイス(例えば、600)から離れており、かつこのデバイス(例えば、600)とペアリングされた関係にある。
【0202】
なお、方法1100に関して上述された処理(例えば、
図11)の詳細はまた、以下で説明される方法にも、類似の方式で適用可能であることに留意されたい。例えば、方法1400及び方法1800は、方法1100を参照して上述された、様々な方法の特性のうちの1つ以上を含み得る。
【0203】
一部の実施形態によれば、
図12は、説明される様々な実施形態の原理に従って構成された電子デバイス1200の、例示的な機能ブロック図を示す。一部の実施形態によれば、電子デバイス1200の機能ブロックは、上述の技術を実行するように構成されている。デバイス1200の機能ブロックは、任意選択的に、説明される様々な実施例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実行される。
図12で説明する機能ブロックが、説明される様々な実施例の原理を実施するために、任意選択的に、組み合わされ、又はサブブロックに分離されることが当業者に理解されよう。したがって、本明細書における説明は、本明細書で説明されている機能ブロックの任意の可能な組み合わせ若しくは分離、又は更なる定義を任意選択的にサポートする。
【0204】
図12に示すように、電子デバイス1200は、グラフィックユーザインタフェースを表示するように構成された表示ユニット1202、任意選択的に、接触を受けるように構成されたタッチ感知面ユニット1204、並びに表示ユニット1202及び任意選択的にタッチ感知面ユニット1204に連結された処理ユニット1206を含む。一部の実施形態において、処理ユニット1206は、受信ユニット1208と、表示可能化ユニット1210と、送信ユニット1212と、検出ユニット1214と、を含む。
【0205】
処理ユニット1206は、情報を含む複数のアラートを(例えば、受信ユニット1208により)受信するように構成されている。処理ユニット1206は、この複数のアラートを受信したことに応じて、表示ユニット上にこの複数のアラートのうちの第1のセットのアラートに対応するローカル通知を(例えば、表示可能化ユニット1210により)表示し、少なくともこの複数のアラートの一部を表すデータを(例えば、送信ユニット1212により)送信することができるように更に構成されている。このデータは、第2の表示ユニットを備える第2の電子デバイスに、第2の表示ユニット上に複数のアラートのうちの少なくとも一部のうちの第2のセットのアラートに対応するリモート通知を表示させる命令を含む。第2の電子デバイスは、電子デバイスから離れており、かつこの電子デバイスとペアリングされた関係である。
【0206】
一部の実施形態において、第1のセットのアラートは、第2のセットのアラートとは異なる。一部の実施形態において、第2のセットのアラートは、第1のセットのアラートのサブセットである。
【0207】
一部の実施形態において、ローカル通知は、第1のアラートの情報の第1の部分を含む第1のローカル通知を含み、リモート通知は、第1の部分とは異なる第1のアラートの情報の第2の部分を含む第1のリモート通知を含む。
【0208】
一部の実施形態において、処理ユニット1206は、リモート通知パラメータの状態を設定するオプションを含むユーザインタフェースの(例えば、表示可能化ユニット1210により)表示を可能化するように更に構成されており、リモート通知は、リモート通知パラメータに従って、第2のディスプレイ上に表示されることとなる。
【0209】
一部の実施形態において、処理ユニット1206は、リモート通知パラメータの選択された状態を表すユーザ入力を(例えば、検出ユニット1214によって)検出し、第2の電子デバイスに、第2の電子デバイス上のリモート通知パラメータをリモート通知パラメータの選択された状態に設定する命令を含むデータを(例えば、送信ユニット1212により)送信するように更に構成されている。一部の実施形態において、リモート通知パラメータは、第1の通知設定に関連付けられている。一部の実施形態において、処理ユニット1206は、第1の通知設定に関連付けられたローカル通知パラメータの状態を設定するオプションを含むユーザインタフェースの(例えば、表示可能化ユニット1210により)表示を可能にし、ローカル通知パラメータの選択された状態を表すユーザ入力を(例えば、検出ユニット1214により)検出するように更に構成されている。一部の実施形態において、ローカル通知は、ローカル通知パラメータに従って第1のディスプレイ上に表示されることとなる。一部の実施形態において、ローカル通知パラメータの選択された状態は、リモート通知パラメータの選択された状態とは異なる。
【0210】
一部の実施形態において、通知設定の状態に従って、通知は、アラートの情報の少なくとも一部に基づいて表示される。一部の実施形態において、通知のフォーマットは、通知設定の状態に少なくとも部分的に基づいている。一部の実施形態において、第1の電子デバイスが第2の電子デバイスと通信していないとの判定に従って、リモート通知パラメータの状態を設定するオプションは、非アクティブ化される。
【0211】
図11を参照して上述された動作は、
図1A〜
図1B又は
図12に示される構成要素によって、任意選択的に実施される。例えば、受信動作1102、表示動作1104、及び送信動作1106は、イベントソート部170、イベント認識部180、及びイベント処理部190によって実施することができる。イベントソート部170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136−1に配信する。アプリケーション136−1のそれぞれのイベント認識部180は、そのイベント情報を、それぞれのイベント定義186と比較して、タッチ感知面上の第1の場所での第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するか否かを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、そのイベント又はサブイベントの検出に関連付けられた、イベント処理部190をアクティブ化させる。イベント処理部190は、アプリケーション内部状態192を更新するために、データ更新部176若しくはオブジェクト更新部177を利用するか、又は呼び出すことができる。一部の実施形態では、イベント処理部190は、アプリケーションによって表示されるものを更新するために、それぞれのGUI更新部178にアクセスする。同様に、
図1A、
図1Bに示される構成要素に基づいて、どのように他の処理を実施することができるかは、当業者には明らかであろう。
2.構成ミラーリング
【0212】
図13Aから
図13Bは、一部の実施形態に係る、1つのデバイスの構成を別のデバイスに対してミラーリングするための例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、
図14の処理を含めた、以下で説明される処理を例示するために使用される。
【0213】
一部の実施形態において、デバイス600は、デバイス600の構成(例えば、設定、作業パラメータ、など)をデバイス700に対してミラーリングするオプションを含むユーザインタフェースを示す。本開示の目的では、「ミラーリング」は、外部デバイス700が、外部デバイス700とデバイス600との両デバイスにて実行することができる少なくとも一部の動作に関して、デバイス600と同じ方式で動作するように構成されていることを意味する。ミラーリングには、デバイス600及び外部デバイス700の両方に対して、作業パラメータ(例えば、通知パラメータ)について同じ設定を使用することを含む。
【0214】
一部の実施形態において、デバイス600は、デバイス600を特定の構成で動作するように設定するユーザ入力を検出する。例えば、600は、
図10Aに関して上述した表現1010又は表現1020に関連付けられた1つのローカル通知パラメータの状態に関する選択を検出してもよい。一部の実施形態において、デバイス600の構成は、通知パラメータ以外の、デバイス600の1つ以上の作業パラメータを含む。例示的な作業パラメータとしては、アプリケーション設定、オペレーティングシステム設定、機内モード、Bluetooth設定、おやすみ設定、通知設定(例えば、表現1010又は表現1020に関連付けられたローカル通知パラメータ)、などが挙げられるが、これに限定されない。作業パラメータは、デバイス600及びデバイス700の両方によって実行される機能に関連付けられてもよい。すなわち、このパラメータは、両方のデバイスに共通する特徴、機能、動作などに関する。一部の実施形態において、デバイス600及びデバイス700の両方によって実行される機能は、機内モード、Bluetooth機能、アプリケーション機能、又は、オペレーティングシステム機能を含む。
【0215】
図13Aは、デバイス600の設定を外部デバイス700に対してミラーリングするオプションを含む、デバイス600上に表示されるユーザインタフェース1300を示す。すなわち、ユーザインタフェース1300は、外部デバイス700上の作業パラメータの構成をデバイス600の構成に設定するオプションを含む。ユーザインタフェース1300は、
図8Aを参照して上述した表現810及び表現820を含む。また、ユーザインタフェース1300は、表現1310を含み、この表現1310は、デバイス600の設定を外部デバイス700にミラーリングするかどうかを判定するミラーデバイスパラメータの状態を示す。ユーザは、表現1320と対話してミラーデバイスパラメータの状態をオンかオフに設定する。この状態は、例えば、上述したパラメータ表現(例えば、810、820)に関して説明した入力などの様々なタイプの入力に応じて、設定されてもよい。一部の実施形態において、ミラーデバイスパラメータの状態は、タッチ感知ディスプレイ602上の表現1310に対応する位置において検出される接触(例えば、スイッチ1312のタップ、スワイプ、ドラッグ、又はフリックによって引き起こされる接触)に応じて、設定される。
【0216】
図13Aに示されるように、デバイス600は、デバイス600の設定をデバイス700にミラーリングするオプションの選択を表す、ユーザ入力である、タッチ1320を検出する。ユーザ入力を検出したことに応じて、デバイス600は、デバイス700をデバイス600の構成に設定する命令を備えるデータを送信する。デバイス700は、このデータを受信し、命令に従って、デバイス700の構成をデバイス600にミラーリングするように設定してもよい。
【0217】
ユーザ入力を検出したことに応じて、デバイス600はまた、スイッチ1312を更新し、ミラーリングデバイスパラメータの状態を反映してもよい。一部の実施形態において、ミラーリングデバイスパラメータがオン状態に設定されたことに応じて、デバイス600は、外部デバイス700の他のパラメータを調整する能力を無効にする。一部の実施形態において、デバイス600は、他の外部デバイスパラメータは調整不可であることのインジケーションを表示する。例えば、
図13Bに示すように、デバイス600は、表現810及び表現820を強調しないようにすることができる。
【0218】
図14は、一部の実施形態に係る、別の電子デバイスを使用して電子デバイスを構成するための方法を示すフロー図である。方法1400は、ディスプレイを備えたデバイス(例えば、100、300、500、600)にて実行される。方法1400のいくつかの動作は組み合わせてもよく、いくつかの動作は順序を変更してもよく、いくつかの動作は省略してもよい。
【0219】
以下において説明されるように、方法1400は、電子デバイスを構成するための直感的な仕方を提供する。この方法は、電子デバイスを構成するユーザの認識的負担を軽減し、それによって、より効率的なヒューマン−マシンインタフェースを作り出す。バッテリ動作式のコンピューティングデバイスの場合には、ユーザが電子デバイスをより高速かつより効率的に構成することを可能にすることにより、電力が節約され、バッテリ充電の間隔が増す。
【0220】
ブロック1402において、デバイス(例えば、600)は、複数の作業パラメータに関連付けられた第1の構成で動作するようにデバイスを設定する、第1のユーザ入力を検出する。作業パラメータは、デバイス(例えば、600)及び第2のデバイス(例えば、700)の両方によって実行される機能に関連付けられる。任意選択的に、第2の電子デバイス(例えば、700)は、電子デバイスから離れており、かつ第1の電子デバイスとペアリングされた関係である。
【0221】
ブロック1404において、デバイス(例えば、600)は、第2のデバイス(例えば、700)上の複数の作業パラメータの構成をデバイス(例えば、600)の第1の構成に設定するオプション(例えば、1310)を含むユーザインタフェース(例えば、1300)を表示する。
【0222】
ブロック1406において、デバイス(例えば、600)は、オプションの選択を表す第2のユーザ入力を検出する。
【0223】
ブロック1408において、第2のユーザ入力を検出したことに応じて、デバイス(例えば、600)は、第2のデバイス(例えば、700)を第1の構成に設定する命令を含むデータを送信する。
【0224】
なお、方法1400(例えば、
図14)に関して上述した処理の詳細もまた、本明細書中で説明した他の方法にも、類似の方式で適用可能であることに留意されたい。例えば、方法1100及び方法1800は、方法1400を参照して上述された、様々な方法の特性のうちの1つ以上を含み得る。
【0225】
一部の実施形態によれば、
図15は、説明される様々な実施形態の原理に従って構成された電子デバイス1500の、例示的な機能ブロック図を示す。一部の実施形態によれば、電子デバイス1500の機能ブロックは、上述の技術を実行するように構成されている。デバイス1500の機能ブロックは、説明される様々な実施例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせによって、任意選択的に実施される。当業者であれば、
図15に記載された機能ブロックは、説明された様々な実施例の原理を実現するために、任意選択的にサブブロックに組み合わされるか、又は分離されることが理解される。したがって、本明細書における説明は、本明細書で説明されている機能ブロックの任意の可能な組み合わせ若しくは分離、又は更なる定義を任意選択的にサポートする。
【0226】
図15に示すように、電子デバイス1500は、グラフィックユーザインタフェースを表示するように構成された表示ユニット1502、任意選択的に、接触を受けるように構成されたタッチ感知面ユニット1504、並びに表示ユニット1502及び任意選択的にタッチ感知面ユニット1504に連結された処理ユニット1506を含む。一部の実施形態において、処理ユニット1506は、検出ユニット1508、表示可能化ユニット1510、及び送信ユニット1512を含む。
【0227】
処理ユニット1506は、複数の作業パラメータに関連付けられた第1の構成で動作するようにデバイスを設定する第1のユーザ入力を、(例えば、検出ユニット1508により)検出するように構成されている。作業パラメータは、電子デバイス及びこの電子デバイスから離れており、かつこの電子デバイスとペアリングされた関係にある第2の電子デバイスによって実行される機能に関連付けられている。処理ユニット1506は、第2の電子デバイスにおける複数の作業パラメータの構成を電子デバイスの第1の構成に設定するオプションを含むユーザインタフェースの(表示可能化ユニット1510により)表示を可能化するように更に構成されている。処理ユニット1506は、オプションの選択を表す第2のユーザ入力を(検出ユニット1508により)検出するように更に構成されている。処理ユニット1506は、第2のユーザ入力を検出したことに応じて、第2の電子デバイスを第1の構成に設定する命令を含むデータを、(送信ユニット1512により)送信するように更に構成されている。
【0228】
一部の実施形態において、電子デバイスと第2の電子デバイスとの両方により実行される機能は、機内モードを含む。請求項10〜請求項11のいずれか一項に記載の電子デバイスにおいて、電子デバイスと第2の電子デバイスの両方によって実行される機能は、Bluetooth機能を含む。一部の実施形態において、電子デバイスと第2の電子デバイスとの両方により実行される機能は、アプリケーション機能を含む。一部の実施形態において、電子デバイスと第2の電子デバイスとの両方により実行される機能は、オペレーティングシステム機能を含む。
【0229】
図14を参照して上述された動作は、
図1A〜
図1B又は
図15に示される構成要素によって、任意選択的に実施される。例えば、検出動作1402及び検出動作1406、表示動作1404、及び送信動作1408は、イベントソート部170、イベント認識部180、及びイベント処理部190によって実施することができる。イベントソート部170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136−1に配信する。アプリケーション136−1のそれぞれのイベント認識部180は、そのイベント情報を、それぞれのイベント定義186と比較して、タッチ感知面上の第1の場所での第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するか否かを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、そのイベント又はサブイベントの検出に関連付けられた、イベント処理部190をアクティブ化させる。イベント処理部190は、アプリケーション内部状態192を更新するために、データ更新部176若しくはオブジェクト更新部177を利用するか、又は呼び出すことができる。一部の実施形態では、イベント処理部190は、アプリケーションによって表示されるものを更新するために、それぞれのGUI更新部178にアクセスする。同様に、
図1A、
図1Bに示される構成要素に基づいて、どのように他の処理を実施することができるかは、当業者には明らかであろう。
3.グラフィックオブジェクトの配列の構成
【0230】
図16から
図17Bは、一部の実施形態に係る、外部デバイス上に表示されるグラフィックオブジェクトの配列を構成する例示的なユーザインタフェースを示す。これらの図のユーザインタフェースは、
図18の処理を含めた、以下で説明される処理を例示するために使用される。
【0231】
図16は、外部デバイス700上に表示される例示的なユーザインタフェース1600を示す。ユーザインタフェース1600は、ディスプレイ702上の場所1601〜1612の例示的な配列を含む。一部の実施形態において、グラフィックオブジェクトは、1つ以上の場所において表示される。一部の実施形態において、場所1601〜1612は、所定のパターンに配置される。
図16は、中心点を中心に等しく一定距離を隔てた場所のパターン(例えば、円状パターン)を示す。ユーザインタフェース1600はまた、より大きな中央場所1620を含む。一部の実施形態において、他の場所1601〜1612の1つに関連付けられたより大きい又はより詳細なグラフィックオブジェクトが、場所1620において表示されている。例えば、場所1601〜1612の1つに関連付けられた連絡先の画像が、場所1601〜1612の1つに対するユーザの選択に応じて、場所1620において表示されてもよい。
【0232】
ユーザインタフェース1600は、場所についての1つの例示的な配置を提供するに過ぎず、これ以外の様々な配置、場所、大きさなどを有する異なる数の場所を取りうることを、認識すべきである。また、場所において表示されるグラフィックオブジェクトは、様々な大きさ、色、フォーマット、スタイルなどを取り得る。場所の配置を含む例示的なユーザインタフェースはまた、発明者Freddy Allen Anzuresらの2015年3月8日出願の米国特許仮出願号の名称「Electronic Touch Communication」においても説明されている。
【0233】
一部の実施形態において、デバイス600は、オブジェクトを外部デバイス700上に表示される場所1601〜1612のうちの1つ以上に関連付けることで、ユーザがユーザインタフェース1600を構成できるユーザインタフェースを表示する。一部の実施形態において、オブジェクトは、連絡先、人、場所、ビジネス、アイテム、活動などを表す。以下に説明する例においては、人の連絡先が場所1601〜1612のうちの1つ以上に関連付けられている。一部の実施形態において、オブジェクトを場所と関連付けることで、対応する場所において、オブジェクトのグラフィックオブジェクト表示を表示させる。一部の実施形態において、連絡先のイニシャルを含むグラフィックオブジェクトが、関連する場所において表示される。
【0234】
図17Aは例示的なユーザインタフェース1700を示し、このユーザインタフェース1700は、外部デバイス700のディスプレイ702上の場所1601〜1612の表現1701〜1712を含む。例示的な表現1701〜1712は、場所1601〜1607に対応する。一部の実施形態において、場所1608〜1612に対応する表現1708〜1712は、ユーザインタフェース1700を上にスクロールすることで表示することが可能である。
【0235】
図17Aは、表現1701〜1712は、外部デバイス700のディスプレイ702上の場所に対応する位置のグラフィックインジケーションを含む。例えば、表現1701は、円状パターン1722及びドット1724を含むグラフィックインジケーション1720を含む。円状パターン1722は、場所1601〜1612のパターンのインジケーションを提供する。円状パターン1722はまた、それぞれディスプレイ702上の場所1601〜1612のうちの1つの位置に対応する12個のダッシュを含む。ドット1724は、表現1701に関連付けられた場所1601の位置を示す。一部の実施形態において、ドット1724又はインジケーション1720の他のいくつかの部分は、場所1601に関連付けられた色に一致する色を備える。一部の実施形態において、場所1601に関連付けられた色は、場所1601に表示されるグラフィックオブジェクトの色を含む。
【0236】
表現は、連絡先を表すアフォーダンスに関連付けられてもよい。
図17Aにおいて、表現1701は、Alexという連絡先に関連付けられたアフォーダンス1730を含む。任意選択的に、アクティブになった時に、アフォーダンス1730は、連絡先の情報及び様々なオプション(例えば、電子メール、メッセージ、コールなど)を表示する。アフォーダンス1730は、連絡先に関連付けられた画像1732及びこの連絡先のテキストインジケーション1734及びテキストインジケーション1736を含む。
図17Aに示すように、画像1732は、連絡先の画像であってもよく、テキストインジケータは、連絡先の名前1734及び連絡先の名前に関連付けられたイニシャル1736であってもよい。
【0237】
一部の実施形態において、デバイス600は、タッチ感知ディスプレイ602上のユーザ入力を検出することができる。
図17Aに示すように、例えば、デバイス600は、表現1701におけるアフォーダンス1730に対応する場所において接触(例えば、タッチ1750)を検出する。デバイス600は、ディスプレイ602上のユーザ入力を検出し続けることができ、更に、ユーザ入力が表現1701からディスプレイ702上の位置の異なる位置1604の表現1704への移動を検出することができる。ユーザ入力が表現1701から表現1704への移動を検出したことに応じて、連絡先のアフォーダンスは、ディスプレイ702上の場所1604に関連付けられる。
図17Bに示すように、ユーザ入力が表現1701から表現1704へ移動を検出したことに応じて、デバイス600は、表現1701における連絡先のアフォーダンスを表示することを停止し、それをディスプレイ602上の表現1704にて表示する。
【0238】
一部の実施形態において、デバイス600は、ユーザインタフェース1700からのアフォーダンスを除去する、又は、連絡先をディスプレイ702上の場所と関係ないものとするオプションを提供する。例えば、デバイス600は、ユーザインタフェース1700上に表示された連絡先のアフォーダンスに関連付けられたユーザ入力を検出してもよい。ユーザ入力を検出したことに応じて、デバイス600は、連絡先に関連付けられたアフォーダンスの表示を停止してもよい。一部の実施形態において、ユーザ入力を検出したことに応じて、デバイス600は、連絡先をディスプレイ702上の対応する場所に関連付けることを停止する。一部の実施形態において、ユーザ入力を検出したことに応じて、デバイス600は、命令を含むデータを送信し、それらの命令が実行されると、外部デバイス700は、連絡先を位置601の任意に関連付けることを停止し、その連絡先に関連付けられたグラフィックオブジェクトの表示を停止する。
【0239】
一部の実施形態において、デバイス600は、追加のアフォーダンスをディスプレイ702上の場所に関連付けるオプションを提供する。一部の実施形態において、デバイス600は、現在連絡先と関連付けられていないディスプレイ702上の場所の選択を表すタッチ感知ディスプレイ602上のユーザ入力を検出する。例えば、デバイス600は、
図17Bにおける表現1702におけるタッチを検出してもよい。ユーザ入力を検出したことに応じて、デバイス600は、1つ以上の連絡先の表現(例えば、メニュー又はリスト)を表示してもよい。そして、デバイス600は、連絡先の選択を表すユーザ入力を検出してもよい。連絡先の選択を検出するのに応じて、デバイス600は、選択された場所に関連付けられた表現において選択された連絡先のアフォーダンスを表示してもよい。
【0240】
図18は、一部の実施形態に係る、別の電子デバイスを使用して電子デバイスのディスプレイを構成するための方法を示すフロー図である。方法1800は、タッチ感知ディスプレイを備えたデバイス(例えば、100、300、500、600)にて実行される。方法1800のいくつかの動作は組み合わせてもよく、いくつかの動作は順序を変更してもよく、いくつかの動作は省略してもよい。
【0241】
以下において説明されるように、方法1800は、電子デバイスのディスプレイを構成するための直感的な仕方を提供する。この方法は、電子デバイスのディスプレイを構成するユーザの認識的負担を軽減し、それによって、より効率的なヒューマン−マシンインタフェースを作り出す。バッテリ動作式のコンピューティングデバイスの場合には、ユーザが電子デバイスのディスプレイをより高速かつより効率的に構成することを可能にすることにより、電力が節約され、バッテリ充電の間隔が増す。
【0242】
ブロック1802において、デバイス(例えば、600)は、タッチ感知ディスプレイ(例えば、602)上にユーザインタフェース(例えば、1700)を表示する。ユーザインタフェースは、第2のデバイス(例えば、700)の第2のディスプレイ(例えば、702)上の1つ以上の場所(例えば、1601〜1612)の1つ以上の表現(例えば、1701〜1712)を含む。第2のデバイス(例えば、700)は、デバイス(例えば、600)とペアリングされた関係にある。第2のデバイス(例えば、700)は、デバイス(例えば、600)とは離れている。
【0243】
ブロック1804において、デバイス(例えば、600)は、第2のディスプレイ(例えば、702)上の1つ以上の場所のうちの第1の場所(例えば、1601)の表現(例えば、1701)におけるタッチ感知ディスプレイ(例えば、602)上のユーザ入力を検出する。第1の場所の表現は、アフォーダンス(例えば、1730)を含む。
【0244】
ブロック1806において、タッチ感知ディスプレイ上のユーザ入力を検出し続ける間に、デバイス(例えば、600)は、ユーザ入力の、第2のディスプレイ上における1つ以上の場所のうちの第1の場所(例えば、1701)の表現から第2のディスプレイ上における1つ以上の場所のうちの第2の場所(例えば、1704)の表現への移動を検出する。
【0245】
ブロック1808において、第1の場所の表現から第2の場所の表現へとユーザ入力の移動を検出したことに応じて、デバイス(例えば、600)は、アフォーダンス(例えば、1730)を第2のディスプレイ(例えば、1604)上における第2の場所と関連付ける。
【0246】
なお、方法1800に関して上述された処理(例えば、
図18)の詳細はまた、以下で説明される方法にも、類似の方式で適用可能であることに留意されたい。例えば、方法1100及び方法1400は、方法1800を参照して上述された、様々な方法の特性のうちの1つ以上を含み得る。
【0247】
一部の実施形態によれば、
図19は、説明される様々な実施形態の原理に従って構成された電子デバイス1900の、例示的な機能ブロック図を示す。一部の実施形態によれば、電子デバイス1900の機能ブロックは、上述の技術を実行するように構成されている。デバイス1900の機能ブロックは、説明される様々な実施例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせによって、任意選択的に実装される。当業者であれば、
図19に記載された機能ブロックは、説明された様々な実施例の原理を実現するために、任意選択的にサブブロックに組み合わされるか、又は分離されることが理解される。したがって、本明細書における説明は、本明細書で説明されている機能ブロックの任意の可能な組み合わせ若しくは分離、又は更なる定義を任意選択的にサポートする。
【0248】
図19に示されるように、電子デバイス1900は、グラフィックユーザインタフェースを表示して接触を受けるように構成されたタッチ感知ディスプレイユニット1902と、ディスプレイユニット1902に結合された処理ユニット1904と、を含む。一部の実施形態において、処理ユニット1904は、検出ユニット1906、表示可能化ユニット1908、及び関連付けユニット1910を含む。
【0249】
処理ユニット1904は、タッチ感知ディスプレイ上にユーザインタフェースの(例えば、表示可能化ユニット1908により)表示を可能化するように構成されており、ユーザインタフェースは、第2の電子デバイスの第2のディスプレイ上における1つ以上の場所の1つ以上の表現を含む。第2の電子デバイスは、電子デバイス1900から離れており、かつこの電子デバイス1900とペアリングされた関係である。処理ユニット1904は、第2のディスプレイ上の1つ以上の場所のうちの第1の場所の表現においてタッチ感知ディスプレイユニット1902上のユーザ入力を(例えば、検出ユニット1906により)検出するように更に構成されており、この第1の場所の表現は、アフォーダンスを含む。処理ユニット1904は、第1のタッチ感知ディスプレイ上のユーザ入力を検出し続ける間に、ユーザ入力が、第2のディスプレイ上における1つ以上の場所のうちの第1の場所の表現から第2のディスプレイ上における1つ以上の場所のうちの第2の場所の表現への移動を(例えば、検出ユニット1906)検出するように更に構成されている。処理ユニット1904は、第1の場所の表現から第2の場所の表現へとユーザ入力の移動を検出したことに応じて、アフォーダンスを第2のディスプレイ上における第2の場所と(例えば、関連付けユニット1910により)関連付けるように更に構成されている。
【0250】
一部の実施形態において、第1の場所の表現は、第1の場所の第2のディスプレイ上における位置のグラフィックインジケーションを含む。一部の実施形態において、インジケーションの色は、第2のディスプレイ上の第1の場所に関連付けられた色と一致する。
【0251】
一部の実施形態において、アフォーダンスは連絡先に関連付けられる。一部の実施形態において、アフォーダンスは連絡先に関連付けられた画像を含む。一部の実施形態において、アフォーダンスは連絡先の1つ以上のテキストインジケーションを含む。一部の実施形態において、1つ以上のテキストインジケーションは連絡先の名前を含む。一部の実施形態において、1つ以上のテキストインジケーションは連絡先の名前に関連付けられたイニシャルを含む。
【0252】
一部の実施形態において、ユーザインタフェースは、第2のディスプレイ上の1つ以上の場所のうちの第3の場所の表現を含み、第3の場所の表現は、第2の連絡先に関連付けられた第2のアフォーダンスを含む。一部の実施形態において、処理ユニット1904は、第2のユーザ入力を(例えば、検出ユニット1906により)検出し、第2のユーザ入力を検出したことに応じて、第2の連絡先に関連付けられた第2のアフォーダンスの表示を停止することができるように更に構成されている。
【0253】
一部の実施形態において、処理ユニット1904は、第1のユーザ入力を検出する前に、第2のディスプレイ上の1つ以上の場所のうちの第4の場所の表現における第1のタッチ感知ディスプレイ上の第3のユーザ入力を(例えば、検出ユニット1906により)検出し、第3のユーザ入力を検出したことに応じて、1つ以上の連絡先の表現の(例えば、表示可能化ユニット1908により)表示を可能化するように更に構成されている。処理ユニット1904は、1つ以上の連絡先のうちの第3の連絡先の選択を表す第1のタッチ感知ディスプレイ上の第4のユーザ入力を(例えば、検出ユニット1906により)検出し、第3の連絡先の選択を検出したことに応じて、第2のディスプレイ上の1つ以上の場所のうちの第4の場所の表現において第3の連絡先を表す第3のアフォーダンスの(例えば、表示可能化ユニット1908により)表示を可能化するように更に構成されている。
【0254】
一部の実施形態において、第2のディスプレイ上の1つ以上の場所は、所定のパターンに配置された複数の場所を含む。一部の実施形態において、第2のディスプレイ上の1つ以上場所の1つ以上の表現は、所定のパターンのインジケーションを含む。一部の実施形態において、第2のディスプレイ上の複数の場所は、中心点を中心に一定の距離に等しく離れている。
【0255】
図18を参照して上述された動作は、
図1A〜
図1B又は
図19に示される構成要素によって、任意選択的に実施される。例えば、表示動作1802、検出動作1804、検出動作1806、及び関連付け動作1808は、イベントソート部170、イベント認識部180、及びイベント処理部190によって、実施され得る。イベントソート部170のイベントモニタ171は、タッチ感知ディスプレイ112上の接触を検出し、イベントディスパッチャモジュール174は、イベント情報をアプリケーション136−1に配信する。アプリケーション136−1のそれぞれのイベント認識部180は、そのイベント情報を、それぞれのイベント定義186と比較して、タッチ感知面上の第1の場所での第1の接触が、ユーザインタフェース上のアフォーダンスのアクティブ化などの、既定のイベント又はサブイベントに対応するか否かを判定する。それぞれの既定のイベント又はサブイベントが検出されると、イベント認識部180は、そのイベント又はサブイベントの検出に関連付けられた、イベント処理部190をアクティブ化させる。イベント処理部190は、アプリケーション内部状態192を更新するために、データ更新部176若しくはオブジェクト更新部177を利用するか、又は呼び出すことができる。一部の実施形態では、イベント処理部190は、アプリケーションによって表示されるものを更新するために、それぞれのGUI更新部178にアクセスする。同様に、
図1A、
図1Bに示される構成要素に基づいて、どのように他の処理を実施することができるかは、当業者には明らかであろう。
【0256】
前述の説明は、説明の目的上、特定の実施形態を参照して説明されている。しかしながら、上記の例示的な論考は、網羅的であること、又は本発明を、開示される厳密な形態に限定することを意図するものではない。上記の教示を鑑みて、多くの修正及び変形が可能である。これらの実施形態は、本技術の原理、及びその実際の適用を最も良好に説明するために、選択及び説明されたものである。当業者は、これにより、意図される特定の使用に適合する様々な修正を施して、本技術及び様々な実施形態を最も良好に利用することが可能になる。
【0257】
添付図面を参照して、本開示及び実施例を十分に説明してきたが、様々な変更及び修正が、当業者には明らかとなるであろうことに留意されたい。そのような変更及び修正は、特許請求の範囲によって定義されるような、本開示及び実施例の範囲内に含まれるものとして理解されたい。