(58)【調査した分野】(Int.Cl.,DB名)
前記それぞれのビューに沿った前記サイドバーの表示を維持しながら、前記サイドバーにおけるタッチジェスチャを検出し及び該タッチジェスチャに応答する命令をさらに含むことを特徴とする、請求項1に記載のデバイス。
前記デバイスに、前記それぞれのビューに沿った前記サイドバーの表示を維持しながら、前記サイドバーにおけるタッチジェスチャを検出させ及び該タッチジェスチャに応答させる命令をさらに含むことを特徴とする、請求項6に記載のコンピュータ読み取り可能な記憶媒体。
前記それぞれのビューに沿った前記サイドバーの表示を維持しながら、前記サイドバーにおけるタッチジェスチャを検出し及び該タッチジェスチャに応答する工程をさらに含むことを特徴とする、請求項11に記載の方法。
前記ポップアップビューは、前記第2の多機能デバイスの横方向解像度に等しい横方向解像度を有することを特徴とする、請求項17に記載のコンピュータ読み取り可能な記憶媒体。
前記ポップアップビューは、前記第2の多機能デバイス上の前記対応する第1のアプリケーションにおける前記全画面幅ビューを実装する実行可能な命令と、実質的に同一の実行可能な命令によって実装されることを特徴とする、請求項17に記載のコンピュータ読み取り可能な記憶媒体。
【発明を実施するための形態】
【0014】
次に、実施形態について詳細に説明し、それらの例を添付の図面に示す。以下の詳細記述では、本発明の十分な理解を提供するために、多くの特定の詳細が記述されている。しかし、当業者には明らかであろうが、本発明は、これらの特定の詳細がなくても実施されうる。その他の事例では、周知の方法、手順、構成要素、回路およびネットワークは、実施形態の態様を不要にあいまいにしないように、詳細には記述していない。
【0015】
また理解されるであろうが、第1、第2などの用語は、本明細書では、各種の要素(エレメント)を記述するために使用されうるけれども、これらの要素はこれらの用語によって限定されるべきでない。これらの用語は、要素と要素とを区別するためだけに用いられている。例えば、本発明の範囲から逸脱することなく、第1の接触は第2の接触と呼ばれてもよいだろうし、同様に、第2の接触が第1の接触と呼ばれてもよいだろう。第1の接触と第2の接触とは、どちらも接触であるが、同じ接触ではない。
【0016】
本明細書で本発明の記述の中で用いられる用語は、特定の実施形態を記述することを目的としており、本発明を限定することを意図していない。本発明の記述および添付の請求項で用いられる場合、単数形「a」、「an」、「the」は、文脈が別に明示しない限り、複数形も同様に含むことを意図する。さらに理解されるであろうが、「および/または(and/or)」という用語は、本明細書で用いられる場合、関連するリストされた項目のうちの1つ以上のいずれかの、または、すべての起こりうる組み合わせを言及し、それを包含する。さらに理解されるであろうが、「含む(include)」、「含んでいる(including)」、「備える(comprise)」および/または「備えている(comprising)」という用語は、本明細書で用いられる場合、述べられた特徴、整数、ステップ、動作、要素および/または構成要素の存在を明記するが、1つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、および/またはそれらのグループの存在もしくは追加を排除しない。
【0017】
本明細書では、「もしも(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])」を意味すると解釈されてもよい。
【0018】
本明細書では、ディスプレイの「解像度(resolution)」という用語は、ディスプレイの個々の軸に沿った、または個々の次元における、ピクセルの数(「ピクセルカウント(pixel count)」または「ピクセル解像度(pixel resolution)」とも呼ばれる)のことを言う。例えば、ディスプレイが、320×480ピクセルの解像度を持っていてもよい。さらに、本明細書では、多機能デバイスの「解像度(resolution)」は、多機能デバイスの中のディスプレイの解像度を言う。「解像度(resolution)」という用語は、個々のピクセルのサイズまたはピクセルの間隔に関する何らかの制限を意味しない。例えば、1024×768ピクセルの解像度を持つ第1のディスプレイと比べて、320×480ピクセルの解像度を持つ第2のディスプレイは、解像度が低い。しかし、留意されるべきだが、ディスプレイの物理的大きさは、ピクセル解像度だけに依存するのではなく、ピクセルのサイズおよびピクセルの間隔を含めた多くの他の因子にも依存する。従って、第1のディスプレイは、第2のディスプレイと比べて、大きさが同じ、小さい、または大きいことがある。
【0019】
本明細書では、ディスプレイの「ビデオ解像度(video resolution)」という用語は、ディスプレイの個々の軸に沿った、または個々の次元における、ピクセルの密度のことを言う。ビデオ解像度は、DPI(dots−per−inch)の単位で測られることが多く、これは、ディスプレイのそれぞれの次元に沿った1インチの範囲の中に一列に入れることのできるピクセルの数を数えるものである。
【0020】
コンピューティングデバイス、そのようなデバイスのためのユーザインタフェース、およびそのようなデバイスを使用するための関連プロセスの実施形態について記述する。一部の実施形態では、コンピューティングデバイスは、携帯用通信デバイス、例えば移動電話であり、その他の機能、例えばPDAおよび/または音楽プレーヤ機能も有している。携帯用多機能デバイスの例示的な実施形態には、限定することなく、カリフォルニア州CupertinoのApple Inc.のiPhone(登録商標)およびiPod Touch(登録商標)デバイスが含まれる。また、その他の携帯用デバイス、例えばタッチセンシティブ表面(例えばタッチスクリーンディスプレイおよび/またはタッチパッド)を持つラップトップコンピュータまたはタブレットコンピュータが用いられてもよい。また、理解されるべきだが、一部の実施形態では、デバイスは、携帯用通信デバイスではなく、タッチセンシティブ表面(例えばタッチスクリーンディスプレイおよび/またはタッチパッド)を持つデスクトップコンピュータである。
【0021】
下記の議論では、ディスプレイおよびタッチセンシティブ表面を含むコンピューティングデバイスについて記述する。しかし、理解されるべきだが、コンピューティングデバイスは、1つ以上の他の物理的ユーザインタフェースデバイス、例えば物理的キーボード、マウス、および/またはジョイスティックを含んでいてもよい。
【0022】
デバイスは多様なアプリケーション、例えば、描画アプリケーション、プレゼンテーションアプリケーション、文章処理アプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、表計算アプリケーション、ゲームアプリケーション、電話アプリケーション、テレビ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、エクササイズ(workout)サポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、インターネット閲覧アプリケーション、デジタル音楽プレーヤアプリケーション、および/またはデジタルビデオプレーヤアプリケーションのうちの1つ以上をサポートする。
【0023】
デバイス上で実行されうる各種のアプリケーションは、少なくとも1つの共通の物理的ユーザインタフェースデバイス、例えばタッチセンシティブ表面を使用してもよい。タッチセンシティブ表面の1つ以上の機能、およびデバイス上に表示される対応する情報は、アプリケーション毎に、および/または、それぞれのアプリケーションの中で、調整されたり、および/または、変更されたりしてもよい。このようにして、デバイスの共通の物理的アーキテクチャ(例えばタッチセンシティブ表面)は、ユーザにとって直感的かつ透過的なユーザインタフェースを使って多様なアプリケーションをサポートしうる。
【0024】
ユーザインタフェースは、1つ以上のソフトキーボードの実施形態を含んでいてもよい。ソフトキーボードの実施形態は、表示されたキーボードのアイコン上に標準の(QWERTY)および/または標準でない構成のシンボルを含んでいてもよく、それらは例えば、2006年7月24日に出願された米国特許出願第11/459,606号「Keyboards for Portable Electronic Devices」および2006年7月24日に出願された米国特許出願第11/459,615号「Touch Screen Keyboards For Portable Electronic Devices」に記述されており、その内容を全部、参照により本願に援用する。キーボードの実施形態の中には、既存の物理的キーボード、例えばタイプライタのキーボードにあるキーの数と比べてアイコン(またはソフトキー)の数が少ない実施形態があってもよい。これによって、ユーザは、キーボードの中の1つ以上のアイコン、それゆえ、1つ以上の対応するシンボルを選択するのがより容易になる。キーボードの実施形態は、適応的であってよい。例えば、表示されたアイコンが、例えば1つ以上のアイコンおよび/または1つ以上の対応するシンボルを選択するようなユーザの動作に従って修正されてもよい。デバイス上の1つ以上のアプリケーションが、共通の、および/または異なるキーボード実施形態を利用してもよい。それゆえ、使用されるキーボードの実施形態は、少なくとも一部のアプリケーションに合わせてカスタマイズされてもよい。一部の実施形態では、1つ以上のキーボードの実施形態が、それぞれのユーザに合わせてカスタマイズされてもよい。例えば、1つ以上のキーボードの実施形態が、それぞれのユーザの言葉の利用履歴(辞書編集法、スラング、個別の用途)に基づいてそれぞれのユーザに合わせてカスタマイズされてもよい。一部のキーボードの実施形態は、ソフトキーボードの実施形態を用いる時に、1つ以上のアイコンを、それゆえ1つ以上のシンボルを、選択する場合にユーザエラーの確率を減らすように調整されてもよい。
【0025】
次に、タッチセンシティブディスプレイを備えた携帯用デバイスの実施形態に注意を向けよう。
図1Aおよび
図1Bは、一部の実施形態による、タッチセンシティブディスプレイ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を経て通信してもよい。
【0026】
理解されるべきだが、デバイス100は、携帯用多機能デバイスの一例にすぎず、デバイス100は、図示するより構成要素が多いことも少ないこともあり、2つ以上の構成要素を組み合わせることもあり、あるいは、構成要素の別の構成または配置を有することもある。
図1Aおよび
図1Bに示す各種の構成要素は、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアの両方の組み合わせとして、1つ以上の信号処理回路および/または特定用途向け集積回路を含めて実装されてもよい。
【0027】
メモリ102は、高速ランダムアクセスメモリを含んでいてもよく、また、不揮発性メモリ、例えば1つ以上の磁気ディスクストレージデバイス、フラッシュメモリデバイス、またはその他の不揮発性ソリッドステートメモリデバイスを含んでいてもよい。メモリ102へのデバイス100の他のコンポーネント、例えばCPU120および周辺インタフェース118によるアクセスは、メモリコントローラ122によって制御されてもよい。
【0028】
周辺装置インタフェース118を用いて、デバイスの入出力周辺装置をCPU120およびメモリ102に接続することができる。1つ以上のプロセッサ120は、各種のソフトウェアプログラムおよび/またはメモリ102の中に記憶された命令の集合を動作させるかまたは実行して、デバイス100についての各種の機能を行い、データを処理する。
【0029】
一部の実施形態では、周辺装置インタフェース118と、CPU120と、メモリコントローラ122とは、例えばチップ104のような単一のチップ上に実装されてもよい。一部の実施形態では、それらは別個のチップ上に実装されてもよい。
【0030】
RF(radio frequency)回路部108は、電磁信号とも呼ばれるRF信号を送受信する。RF回路部108は、電気信号を電磁信号に、電磁信号を電気信号に変換し、電磁信号を介して通信ネットワークおよびその他の通信デバイスと通信する。RF回路部108は、アンテナシステムと、RFトランシーバと、1つ以上の増幅器と、チューナと、1つ以上のオシレータと、デジタル信号プロセッサと、CODECチップセットと、SIM(subscriber identity module)カードと、メモリと、等々を含めて、これらの機能を行うための周知の回路部を含んでいてもよいが、それらに限定されない。RF回路部108は、WWW(World Wide Web)とも呼ばれるインターネット、イントラネット、および/または、セルラー電話ネットワーク、ワイヤレスローカルエリアネットワーク(LAN)、および/またはメトロポリタンエリアネットワーク(MAN)のようなワイヤレスネットワーク、のようなネットワークとワイヤレス通信によって通信してもよいし、その他のデバイスとワイヤレス通信によって通信してもよい。ワイヤレス通信は、GSM(登録商標)(Global System for Mobile Communications)、EDGE(Enhanced Data GSM(登録商標) Environment)、HSDPA(high−speed downlink packet access)、W−CDMA(wideband code division multiple access)、CDMA(code division multiple access)、TDMA(time division multiple access)、Bluetooth(登録商標)、Wi−Fi(Wireless Fidelity)(例えばIEEE802.11a、IEEE802.11b、IEEE802.11gおよび/またはIEEE802.11n)、VoIP(voice over Internet Protocol)、Wi−MAX、電子メール用のプロトコル(例えばIMAP(Internet message access protocol)および/またはPOP(post office protocol))、インスタントメッセージング(例えばXMPP(extensible messaging and presence protocol)、SIMPLE(Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions)、IMPS(Instant Messaging and Presence Service))、および/または、SMS(Short Message Service)、あるいはいずれかの他の適切な通信プロトコル(本明細書の提出日の時点ではまだ開発されていない通信プロトコルを含む)を含めるがそれらに限定されない、複数の通信標準、プロトコル、および技術のいずれを使用してもよい。
【0031】
音声回路部110と、スピーカ111と、マイク113とは、ユーザとデバイス100との間の音声インタフェースを提供する。音声回路部110は、周辺装置インタフェース118から音声データを受信し、音声データを電気信号に変換し、電気信号をスピーカ111に送信する。スピーカ11は、電気信号を人間に聞こえる音波に変換する。また、音声回路部110は、音波からマイク113によって変換された電気信号を受信する。音声回路部110は、電気信号を音声データに変換し、音声データを処理するために周辺装置インタフェース118へ送信する。音声データは、周辺装置インタフェース118によって、メモリ102および/またはRF回路部108から取得されるか、および/または、メモリ102および/またはRF回路部108へ送信されてもよい。また、一部の実施形態では、音声回路部110は、ヘッドフォンジャック(例えば
図2の212)を含んでいる。ヘッドフォンジャックは、音声回路部110と、例えば出力のみのヘッドフォンや出力(例えば片耳または両耳用のヘッドフォン)と入力(例えばマイク)とを備えたヘッドフォンのような、着脱式音声入力/出力周辺装置との間のインタフェースを提供する。
【0032】
I/Oサブシステム106は、デバイス100の入力/出力周辺装置、例えばタッチスクリーン112およびその他の入力制御デバイス116を、周辺装置インタフェース118に接続する。I/Oサブシステム106は、ディスプレイコントローラ156と、その他の入力または制御デバイス用の1つ以上の入力コントローラ160とを含んでいてもよい。1つ以上の入力コントローラ160は、その他の入力または制御デバイス116との間で電気信号の送受信を行う。その他の入力または制御デバイス116には、物理的ボタン(例えばプッシュボタン、ロッカーボタン等)、ダイヤル、スライド式スイッチ、ジョイスティック、クリックホイール等が含まれてもよい。一部の代替的実施形態では、入力コントローラ160は、キーボード、赤外線ポート、USBポート、および例えばマウスのようなポインタデバイスのうちのいずれかに接続されても(あるいは、まったくされなくても)よい。1つ以上のボタン(例えば
図2の208)は、スピーカ111および/またはマイク113の音量調節のための上/下ボタンを含んでいてもよい。1つ以上のボタンは、プッシュボタン(例えば
図2の206)を含んでいてもよい。すばやくプッシュボタンを押すことにより、タッチスクリーン112のロックをはずすかまたは、デバイスのロックを解除するためにタッチスクリーン上でジェスチャを用いるプロセスを開始してもよく、それについては、2005年12月23日に出願した米国特許出願第11/322,549号「Unlocking a Device by Performing Gestures on an Unlock Image」に記述されており、それをそのまま全部、参照により本願に援用する。プッシュボタン(例えば206)を長めに押すことにより、デバイス100の電源をオンまたはオフにしてもよい。ユーザが、1つ以上のボタンの機能性をカスタマイズすることができてもよい。バーチャルボタンもしくはソフトボタンおよび1つ以上のソフトキーボードを実装するのに、タッチスクリーン112が用いられる。
【0033】
タッチセンシティブディスプレイ112は、デバイスとユーザとの間の入力インタフェースおよび出力インタフェースを提供する。ディスプレイコントローラ156は、タッチスクリーン112との間で電気信号を送受信する。タッチスクリーン112は、視覚的出力をユーザに表示する。視覚的出力は、グラフィックスと、テキストと、アイコンと、ビデオと、それらのいずれかの組み合わせと(集合的に「グラフィックス」と称する)を含んでいてもよい。一部の実施形態では、視覚的出力の一部または全部が、ユーザインタフェースのオブジェクトに対応していてもよい。
【0034】
タッチスクリーン112は、タッチセンシティブ表面と、触覚および/または触感による接触に基づいてユーザからの入力を受け入れるセンサまたはセンサの集合とを有する。タッチスクリーン112およびディスプレイコントローラ156は(メモリ102の中のいずれかの関連のモジュールおよび/または命令の集合と共に)、タッチスクリーン112上の接触(および接触の移動または中断)を検出し、検出した接触を、タッチスクリーン112上に表示されるユーザインタフェースオブジェクト(例えば1つ以上のソフトキー、アイコン、ウェブページ、または画像)との対話に変換する。例示的な一実施形態では、タッチスクリーン112とユーザとの間の接点は、ユーザの指に対応する。
【0035】
タッチスクリーン112は、LCD(liquid crystal display)技術、LPD(light emitting polymer display)技術、またはLED(light emitting diode)技術を用いてもよいが、他の実施形態では他のディスプレイ技術が用いられてもよい。タッチスクリーン112およびディスプレイコントローラ156は、接触またはいずれかの動作またはその中断を、静電容量、抵抗、赤外線、表面音波だけでなく、タッチスクリーン112との1つ以上の接点を判定するための他の近接センサアレーまたは他の要素も含むけれどもそれらに限定されることなく、現在既知であるか今後開発される複数のタッチセンシング技術のいずれを用いて検出してもよい。例示的な一実施形態では、カリフォルニア州CupertinoのApple Inc.製のiPhone(登録商標)およびiPod Touch(登録商標)にみられるような、投影型相互静電容量センシング技術が用いられている。
【0036】
タッチスクリーン112の一部の実施形態におけるタッチセンシティブディスプレイは、米国特許第6,323,846号(Westerman他)、第6,570,557号(Westerman他)、および/または第6,677,932号(Westerman)、および/または米国特許公開第2002/0015024A1のなかに記述されたマルチタッチ・センシティブ・タッチパッドに類似していてもよく、その各々をそのまま全部、参照により本願に援用する。しかし、タッチスクリーン112は、携帯用デバイス100からの視覚的な出力を表示するが、タッチセンシティブタッチパッドは、視覚的な出力を提供しない。
【0037】
タッチスクリーン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」である。これらの出願のすべてを、そのまま全部、参照により本願に援用する。
【0038】
タッチスクリーン112は、100dpiを超えるビデオ解像度を有してもよい。一部の実施形態では、タッチスクリーンは、およそ160dpiのビデオ解像度を有する。ユーザは、いずれかの適切なオブジェクトまたは付属物、例えばスタイラス、指等を用いて、タッチスクリーン112に接触してもよい。一部の実施形態では、ユーザインタフェースは、主に指に基づく接触およびジェスチャにより機能するように設計されるが、その場合、指がタッチスクリーン上で接触する面積が広いため、スタイラスに基づく入力ほど正確でないことがありうる。一部の実施形態では、デバイスは、指に基づくおおまかな入力を、正確なポインタ/カーソル位置またはユーザが望んだ動作を行うためのコマンドへと変換する。
【0039】
一部の実施形態では、タッチスクリーンに加えて、デバイス100は、個別の機能を起動または停止させるための(図示しない)タッチパッドを含んでいてもよい。一部の実施形態では、タッチパッドは、タッチスクリーンとは異なり、視覚的出力を表示しない、デバイスのタッチセンシティブエリアである。タッチパッドは、タッチスクリーン112とは別のタッチセンシティブ表面であるかまたは、タッチスクリーンによって形成されるタッチセンシティブ表面の延長であってもよい。
【0040】
一部の実施形態では、デバイス100は、物理的またはバーチャルなホイール(例えばクリックホイール)を入力制御デバイス116として含んでいてもよい。ユーザは、クリックホイールを回転させることによってかまたはクリックホイールを使って接点を移動させることによって(例えば、接点の移動量が、クリックホイールの中心点に対するその角変位によって測定される)、タッチスクリーン112の中に表示される1つ以上のグラフィカルオブジェクト(例えばアイコン)の間をナビゲートし、およびそれらと対話してもよい。また、クリックホイールは、1つ以上の表示されたアイコンを選択するのに用いられてもよい。例えば、ユーザがクリックホイールの少なくとも一部分または関連のボタンを押し下げてもよい。クリックホイールを介してユーザによって提供されたユーザコマンドおよびナビゲーションコマンドが、入力コントローラ160だけでなく、メモリ102の中の1つ以上のモジュールおよび/または命令の集合によって処理されてもよい。バーチャルなクリックホイールの場合、クリックホイールとクリックホイールコントローラとはそれぞれ、タッチスクリーン112およびディスプレイコントローラ156の一部であってもよい。バーチャルなクリックホイールの場合、クリックホイールは、デバイスとユーザとの対話に応じてタッチスクリーンディスプレイに現れたり消えたりする不透明または半透明のオブジェクトであってもよい。一部の実施形態では、バーチャルなクリックホイールは、携帯用多機能デバイスのタッチスクリーン上に表示され、ユーザがタッチスクリーンに接触することによって操作される。
【0041】
また、デバイス100は、各種の構成要素に電力を供給するための電力系統162を含んでいる。電力系統162は、電力管理システムと、1つ以上の電源(例えばバッテリ、交流電流(AC))と、再充電システムと、電源障害検出回路と、電力コンバータまたは電力インバータと、電力ステータスインジケータ(例えばLED(light−emitting diode))と、携帯用デバイスの中の電力の生成、管理、分配に関連するその他のいずれかの構成要素とを含んでいてもよい。
【0042】
また、デバイス100は、1つ以上の光センサ164を含んでいてもよい。
図1Aおよび
図1Bは、I/Oサブシステム106の中の光センサコントローラ158に接続された光センサを示す。光センサ164は、CCD(charge−coupled device)またはCMOS(complementary metal−oxide semiconductor)フォトトランジスタを含んでいてもよい。光センサ164は、1つ以上のレンズを通して投影された、環境からの光を受信して、その光を、画像を表すデータに変換する。イメージングモジュール(カメラモジュールとも呼ばれる)143と連動して、光センサ164は、静止画像またはビデオをキャプチャしてもよい。一部の実施形態では、タッチスクリーンディスプレイが静止画像またはビデオ画像を取得するためのビューファインダとして用いられうるように、光センサが、デバイスの前面にあるタッチスクリーンディスプレイ112の反対側の、デバイス100の背面に位置している。一部の実施形態では、ユーザがテレビ会議の他の参加者をタッチスクリーンディスプレイ上で見ながらユーザの画像がテレビ会議用に取得されうるように、光センサが、デバイスの前面に位置している。一部の実施形態では、単一の光センサ164が、テレビ会議だけでなく静止画像および/またはビデオ画像の取得のためにもタッチスクリーンディスプレイと共に用いられうるように、光センサ164の位置は、ユーザによって(例えば、デバイスのハウジングの中でレンズとセンサとを回転させることによって)変更されうる。
【0043】
また、デバイス100は、1つ以上の近接センサ166を含んでいてもよい。
図1Aおよび
図1Bは、周辺装置インタフェース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をオフにして使用不能にする。
【0044】
また、デバイス100は、1つ以上の加速度計168を含んでいてもよい。
図1Aおよび
図1Bは、周辺装置インタフェース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またはその他の全地球的航法システム)受信器(図示せず)とを含んでいる。
【0045】
一部の実施形態では、メモリ102の中に記憶されるソフトウェアコンポーネントには、オペレーティングシステム126と、通信モジュール(または命令の集合)128と、接触/動きモジュール(または命令の集合)130と、グラフィックスモジュール(または命令の集合)132と、テキスト入力モジュール(または命令の集合)134と、GPS(Global Positioning System)モジュール(または命令の集合)135と、アプリケーション136(または命令の集合)とが含まれる。さらに、一部の実施形態では、メモリ102は、
図1A、
図1B、および
図3に示すように、デバイス/グローバル内部状態157を記憶する。デバイス/グローバル内部状態157は、もしあれば、どのアプリケーションが現在アクティブであるのかを示す、アクティブアプリケーション状態と、どのアプリケーション、ビュー、またはその他の情報が、タッチスクリーンディスプレイ112の各種の領域を占有しているのかを示す表示状態と、デバイスの各種のセンサおよび入力制御デバイス116から取得された情報を含む、センサ状態と、デバイスの位置および/または姿勢に関する位置情報とのうち、1つ以上を含んでいる。
【0046】
オペレーティングシステム126(例えば、Darwin、RTXC、LINUX(登録商標)、UNIX(登録商標)、OS X、WINDOWS(登録商標)、または例えばVx Worksのように内蔵されたオペレーティングシステム)は、一般的なシステムタスクを制御および管理(例えばメモリ管理、ストレージデバイス制御、電力管理等)するための各種のソフトウェアコンポーネントおよび/またはドライバを含んでおり、各種のハードウェアおよびソフトウェアコンポーネント間の通信を円滑化する。
【0047】
通信モジュール128は、1つ以上の外部ポート124を経た他のデバイスとの通信を円滑化し、また、RF回路部108および/または外部ポート124によって受信されたデータを処理するための各種のソフトウェアコンポーネントを含んでいる。外部ポート124(例えばUSB(Universal Serial Bus)、FIREWIRE等)は、直接またはネットワーク経由(例えばインターネット、ワイヤレスLAN等)で間接的に、他のデバイスに接続するように構成される。一部の実施形態では、外部ポートは、iPod(Apple Inc.の登録商標)で用いられている30ピンコネクタと同じ、または類似した、および/または互換性のある、マルチピン(例えば30ピン)コネクタである。
【0048】
接触/動きモジュール130は、(ディスプレイコントローラ156と連動して)タッチスクリーン112とその他のタッチセンシティブデバイス(例えばタッチパッドまたは物理的クリックホイール)との接触を検出してもよい。接触/動きモジュール130は、例えば接触が行われたかどうかを(例えば指が下がるイベントを検出して)判定することと、接触の移動があるかどうかを(例えば1つ以上の指がドラッグするイベントを検出して)判定してその移動をタッチスクリーン表面全体にわたって追跡することと、接触が中止されたかどうかを(例えば指が上がるイベントまたは接触の中断を検出して)判定することとのような、接触の検出に関連する各種の操作を行うための各種のソフトウェアコンポーネントを含んでいる。接触/動きモジュール130は、タッチセンシティブ表面から接触データを受信する。接点の移動を判定することは、一連の接触データによって表されるのだが、接点の速さ(大小)と、速度(大小および向き)と、および/または加速度(大小および/または向きの変化)とを判定することを含んでもよい。これらの操作は、単一の接触(例えば1本の指の接触)または複数の同時接触(例えば「マルチタッチ」/複数の指の接触)に適用されうる。一部の実施形態では、接触/動きモジュール130およびディスプレイコントローラ156は、タッチパッド上の接触を検出する。一部の実施形態では、接触/動きモジュール130およびコントローラ160は、クリックホイール上の接触を検出する。
【0049】
接触/動きモジュール130は、ユーザによるジェスチャ入力を検出してもよい。タッチセンシティブ表面上の多様なジェスチャは、多様な接触パタンを有する。それゆえ、ジェスチャは、個別の接触パタンを検出することによって検出されうる。例えば、指をタップするジェスチャを検出することは、指が下がるイベントを検出し、その後、指が上がる(リフトオフ)イベントを指が下がるイベントと同じ位置(アイコンの位置)で(または実質的に同じ位置で)検出することを含んでいる。別の例として、タッチセンシティブ表面を指でスワイプするジェスチャを検出することは、指が下がるイベントを検出した後に1つ以上の指をドラッグするイベントを検出し、その後、指が上がる(リフトオフ)イベントを検出することを含んでいる。
【0050】
グラフィックスモジュール132は、表示されるグラフィックスの輝度を変更するためのコンポーネントを含めて、タッチスクリーン112またはその他のディスプレイ上にグラフィックスをレンダリングして表示するための各種の既知のソフトウェアコンポーネントを含んでいる。本明細書では、「グラフィックス」という用語は、テキストと、ウェブページと、(例えば、ソフトキーを含むユーザインタフェースオブジェクトのような)アイコンと、デジタル画像と、ビデオと、アニメーションとそれに類似したものとを限定することなく含めて、ユーザに表示されうるいかなるオブジェクトをも含んでいる。
【0051】
一部の実施形態では、グラフィックスモジュール132は、用いられることになるグラフィックスを表すデータを記憶している。個々の図形は、対応するコードを割り当てられてもよい。グラフィックスモジュール132は、アプリケーション等から、必要に応じて、コーディネートされたデータおよびその他のグラフィックプロパティデータと共に表示されることになるグラフィックスを指定する1つ以上のコードを受信し、次いで、ディスプレイコントローラ156に出力するためのスクリーン画像データを生成する。
【0052】
テキスト入力モジュール134は、グラフィックスモジュール132の構成要素であってもよいが、各種のアプリケーション(例えば、連絡先137、電子メール140、IM141、ブラウザ147、そしてテキスト入力を必要とするいずれかの他のアプリケーション)にテキストを入力するためのソフトキーボードを提供する。
【0053】
GPSモジュール135は、デバイスの位置を判定し、この情報を各種のアプリケーションで使用するために(例えば位置特定に基づくダイヤル操作で使用するために電話138に、ピクチャ/ビデオメタデータとしてカメラ143に、例えば天気ウィジェット、ローカル・イエローページ・ウィジェット、地図/航法用ウィジェットのような、位置特定に基づくサービスを提供するアプリケーションに)提供する。
【0054】
アプリケーション136は、以下のモジュール(または命令の集合)またはそれらの下位集合または上位集合を含んでいてもよい。
・連絡先モジュール137(アドレス帳またはコンタクトリストと呼ばれることもある)、
・電話モジュール138、
・テレビ会議モジュール139、
・電子メールクライアントモジュール140、
・インスタントメッセージング(IM)モジュール141、
・エクササイズサポートモジュール142、
・静止画像および/またはビデオ画像用のカメラモジュール143
・画像管理モジュール144、
・ビデオプレーヤモジュール145、
・音楽プレーヤモジュール146、
・ブラウザモジュール147、
・カレンダモジュール148、
・天気ウィジェット149−1、株式ウィジェット149−2、電卓ウィジェット149−3、アラームクロックウィジェット149−4、辞書ウィジェット149−5、およびユーザによって取得されるその他のウィジェットならびにユーザが作成したウィジェット149−6のうち1つ以上を含みうるウィジェットモジュール149、
・ユーザが作成したウィジェット149−6を作成するためのウィジェットクリエータモジュール150、
・検索モジュール151、
・ビデオプレーヤモジュール145と音楽プレーヤモジュール146とを結合するビデオおよび音楽プレーヤモジュール152、
・メモモジュール153、
・地図モジュール154、および/または、
・オンラインビデオモジュール155。
【0055】
メモリ102の中に記憶されうるその他のアプリケーション136の例には、他の文章作成アプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、JAVA(登録商標)対応アプリケーション、暗号化、デジタル権利管理、音声認識、および音声複製等が含まれる。
【0056】
タッチスクリーン112、ディスプレイコントローラ156、コンタクトモジュール120、グラフィックスモジュール132およびテキスト入力モジュール134と連動して、連絡先モジュール137は、名前をアドレス帳に追加することと、名前をアドレス帳から削除することと、名前に電話番号、電子メールアドレス、物理的アドレスまたはその他の情報を関連付けることと、名前に画像を関連付けることと、名前をカテゴリ化したりソートしたりすることと、電話138、テレビ会議139、電子メール140、またはIM141等によって通信を開始および/または円滑化するため、電話番号または電子メールアドレスを提供すること等を含めて、(例えば、メモリ102またはメモリ370の中の連絡先モジュール137のアプリケーション内部状態192の中に記憶された)アドレス帳またはコンタクトリストを管理するのに用いられてもよい。
【0057】
RF回路部108、音声回路部110、スピーカ111、マイク113、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132およびテキスト入力モジュール134と連動して、電話番号に対応する文字のシーケンスを入力し、アドレス帳137の中の1つ以上の電話番号にアクセスし、入力された電話番号を修正し、それぞれの電話番号をダイヤルし、会話を行い、そして、会話が完了した時に接続を切るかまたは電話を切るのに電話モジュール138を用いてもよい。上記のように、ワイヤレス通信が、複数の通信標準、プロトコルおよび技術のいずれを用いてもよい。
【0058】
RF回路部108、音声回路部110、スピーカ111、マイク113、タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134、連絡先リスト137および電話モジュール138と連動して、テレビ会議モジュール139は、ユーザと1人以上の他の参加者との間でユーザの命令に従ってテレビ会議を開始し、実行し、終了するための実行可能な命令を含んでいる。
【0059】
RF回路部108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132およびテキスト入力モジュール134と連動して、電子メールクライアントモジュール140は、ユーザの命令に応じて電子メールを作成し、送信し、受信し、管理するための実行可能な命令を含んでいる。画像管理モジュール144と連動して、電子メールクライアントモジュール140は、カメラモジュール143で撮影された静止画像またはビデオ画像を添えて電子メールを作成して送信することを非常に容易にする。
【0060】
RF回路部108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132およびテキスト入力モジュール134と連動して、インスタントメッセージングモジュール141は、インスタントメッセージに対応する文字のシーケンスを入力し、以前に入力した文字を修正し、それぞれのインスタントメッセージを(例えば、電話に基づくインスタントメッセージについてのSMS(Short Message ServiceまたはMMS(Multimedia Message Service)プロトコルを用いてかまたは、インターネットに基づくインスタントメッセージについてのXMPP、SIMPLE、IMPSを用いて)送信し、インスタントメッセージを受信し、そして受信されたインスタントメッセージを見るための実行可能な命令を含んでいる。一部の実施形態では、送信された、および/または、受信されたインスタントメッセージには、MMSおよび/またはEMS(Enhanced Messaging Service)でサポートされるように、グラフィックス、写真、音声ファイル、ビデオファイル、および/または、その他の添付物が含まれてもよい。本明細書では、「インスタントメッセージング」とは、電話に基づくメッセージ(例えばSMSまたはMMSを用いて送信されるメッセージ)とインターネットに基づくメッセージ(例えばXMPP、SIMPLE,またはIMPSを用いて送信されるメッセージ)との両方のことを言う。
【0061】
RF回路部108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134、GPSモジュール135、地図モジュール154および音楽プレーヤモジュールと連動して、エクササイズサポートモジュール142は、エクササイズを(例えば、時間、距離、および/またはカロリー燃焼目標を添えて)作成し、エクササイズセンサ(スポーツデバイス)と通信し、エクササイズセンサデータを受信し、エクササイズを監視するのに用いられるセンサを較正し、エクササイズ用の音楽を選択して演奏し、そして、エクササイズデータを表示・記憶・送信するための実行可能な命令を含んでいる。
【0062】
タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触モジュール130、グラフィックスモジュール132および画像管理モジュール144と連動して、カメラモジュール143は、静止画像またはビデオ(ビデオストリームを含めて)をキャプチャしてそれらをメモリ102の中に記憶し、静止画像またはビデオの特性を修正し、あるいは、静止画像またはビデオをメモリ102から削除するための実行可能な命令を含んでいる。
【0063】
タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134およびカメラモジュール143と連動して、画像管理モジュール144は、静止画像および/またはビデオ画像を校正し、修正(例えば編集)し、または他の要領で操作し、ラベルを付け、削除し、(例えばデジタルスライドショーまたはアルバムとして)提示し、そして、記憶するための実行可能な命令を含んでいる。
【0064】
タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132、音声回路部110およびスピーカ111と連動して、ビデオプレーヤモジュール145は、ビデオを表示し、提示し、またはその他の要領で(例えばタッチスクリーン112上に、または外部ポート124を介して外部の接続されたディスプレイ上に)再生するための実行可能な命令を含んでいる。
【0065】
タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックスモジュール132、音声回路部110、スピーカ111、RF回路部108、およびブラウザモジュール147と連動して、音楽プレーヤモジュール146は、例えばMP3またはAACファイルのような1つ以上のファイル形式で記憶された、録音された音楽およびその他の音声ファイルをユーザがダウンロードして再生することを可能にする実行可能な命令を含んでいる。一部の実施形態では、デバイス100は、例えばiPod(Apple Inc.の登録商標)のようなMP3プレーヤの機能性を含んでいてもよい。
【0066】
RF回路部108、タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックスモジュール132およびテキスト入力モジュール134と連動して、ブラウザモジュール147は、ウェブページまたはその部分だけでなくウェブページにリンクされた添付ファイルおよびその他のファイルをも、検索し、それにリンクし、受信し、そして表示することを含めて、ユーザ命令に従ってインターネットを閲覧するための実行可能な命令を含んでいる。
【0067】
RF回路部108、タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134、電子メールクライアントモジュール140およびブラウザモジュール147と連動して、カレンダモジュール148は、ユーザ命令に従って、カレンダおよびカレンダに関連するデータ(例えばカレンダのエントリ、やることリスト等)を作成し、表示し、修正し、記憶するための実行可能な命令を含んでいる。
【0068】
RF回路部108、タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134およびブラウザモジュール147と連動して、ウィジェットモジュール149は、ユーザによってダウンロードされ、使用されうる(例えば、天気ウィジェット149−1、株式ウィジェット149−2、電卓ウィジェット149−3、アラームクロックウィジェット149−4、および辞書ウィジェット149−5)かまたはユーザによって作成されうる(例えばユーザが作成したウィジェット149−6)ミニアプリケーションである。一部の実施形態では、ウィジェットは、HTML(Hypertext Markup Language)ファイルと、CSS(Cascading Style Sheets)ファイルと、JavaScript(登録商標)ファイルとを含んでいる。一部の実施形態では、ウィジェットは、XML(Extensible Markup Language)ファイルと、JavaScript(登録商標)ファイル(例えばYahoo!Widgets)とを含んでいる。
【0069】
RF回路部108、タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134およびブラウザモジュール147と連動して、ウィジェットクリエータモジュール150が、(例えば、ウェブページのユーザ指定部分をウィジェットに変えて)ウィジェットを作成するためにユーザによって使用されてもよい。
【0070】
タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックスモジュール132およびテキスト入力モジュール134と連動して、検索モジュール151は、ユーザの命令による1つ以上の検索基準(例えば1つ以上のユーザ指定の検索語)に合致するテキスト、音楽、音声、画像、ビデオ、および/またはメモリ102の中のその他のファイルを検索するための実行可能な命令を含んでいる。
【0071】
タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックスモジュール132およびテキスト入力モジュール134と連動して、メモモジュール153は、ユーザ命令に従って、メモ、やることリスト等を作成して管理するための実行可能な命令を含んでいる。
【0072】
RF回路部108、タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックスモジュール132、テキスト入力モジュール134、GPSモジュール135およびブラウザモジュール147と連動して、地図モジュール154は、ユーザ命令に従って、地図および地図に関連するデータ(例えば、ドライブの指示、店に関するデータ、および個別の位置またはその近くにおけるその他の観光スポット、およびその他の位置特定に基づくデータ)を受信し、表示し、修正し、そして記憶するために用いられうる。
【0073】
タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックスモジュール132、音声回路部110、スピーカ111、RF回路部108、テキスト入力モジュール134、電子メールクライアントモジュール140およびブラウザモジュール147と連動して、オンラインビデオモジュール155は、ユーザがアクセスし、閲覧し、(例えばストリーミングおよび/またはダウンロードによって)受信し、(例えばタッチスクリーン上で、または、外部ポート124を介して接続された外部のディスプレイ上で)再生し、個別のオンラインビデオへのリンクを持つ電子メールを送信し、そして、例えばH.264のような1つ以上のファイル形式のオンラインビデオをその他の要領で管理することを可能にする命令を含んでいる。一部の実施形態では、電子メールクライアントモジュール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」に記載されており、その内容を全部、参照により本願に援用する。
【0074】
上記の識別されたモジュールおよびアプリケーションの各々は、上記の1つ以上の機能と本願に記述する方法(例えば、本明細書で記述したコンピュータに実装された方法と、その他の情報処理方法)とを行うための実行可能な命令の集合に対応する。これらのモジュール(すなわち命令の集合)は、別個のソフトウェア、手順またはモジュールとして実装される必要はなく、それゆえ、各種のこれらのモジュールの部分集合が、各種の実施形態の中で組み合わされたり、その他の要領で再構成されたりしてもよい。例えば、ビデオプレーヤモジュール145は、音楽プレーヤモジュール146と組み合わされて、単一のモジュール(例えば、
図1Bのビデオおよび音楽プレーヤモジュール152)にされてもよい。一部の実施形態では、メモリ102は、上記で識別したモジュールおよびデータ構造の部分集合を記憶してもよい。さらに、メモリ102は、上記で記述されていない追加のモジュールおよびデータ構造を記憶してもよい。
【0075】
一部の実施形態では、デバイス100は、デバイス上の機能の事前設定された集合の操作が、タッチスクリーンおよび/またはタッチパッドだけを通して行われるようなデバイスである。タッチスクリーンおよび/またはタッチパッドをデバイス100の操作用の主要な入力制御デバイスとして用いることによって、デバイス100上の物理的入力制御デバイス(例えばプッシュボタン、ダイヤル等)の数が削減されうる。
【0076】
タッチスクリーンおよび/またはタッチパッドだけを通して行われうる事前設定された機能の集合には、ユーザインタフェース間のナビゲーションが含まれる。一部の実施形態では、ユーザがタッチすると、タッチパッドがデバイス100を、デバイス100上に表示されうるいかなるユーザインタフェースからもメイン、ホーム、またはルートメニューへとナビゲートする。そのような実施形態では、タッチパッドは、「メニューボタン」と呼ばれてもよい。一部のその他の実施形態では、メニューボタンは、タッチパッドの代わりに、物理的なプッシュボタンまたはその他の物理的な入力制御デバイスであってもよい。
【0077】
図1Cは、一部の実施形態による、イベント処理のための例示的な構成要素を示すブロック図である。一部の実施形態では、(
図1Aおよび
図1Bの)メモリ102または(
図3の)メモリ370は、(例えばオペレーティングシステム126の中に)イベントソータ170と、それぞれのアプリケーション136−1(例えば前述のアプリケーション137乃至151、155、380乃至390のうちのいずれか)とを含んでいる。
【0078】
イベントソータ170は、イベント情報を受信して、アプリケーション136−1と、イベント情報の配信先であるアプリケーション136−1のアプリケーションビュー191とを判定する。イベントソータ170は、イベントモニタ171とイベント発送モジュール174とを含んでいる。一部の実施形態では、アプリケーション136−1は、アプリケーションがアクティブであるか実行中である場合にタッチセンシティブディスプレイ112上に表示される現在のアプリケーションビューを示す、アプリケーション内部状態192を含んでいる。一部の実施形態では、イベントソータ170は、デバイス/グローバル内部状態157を用いて、どのアプリケーションが現在アクティブであるのかを判定し、そして、アプリケーション内部状態192を用いて、イベント情報の配信先であるアプリケーションビュー191を判定する。
【0079】
一部の実施形態では、アプリケーション内部状態192は、追加情報として、例えば、アプリケーション136−1が実行を再開する時に用いられることになる再開情報と、アプリケーション136−1によって表示されているかまたは表示される準備ができている情報を示すユーザインタフェース状態情報と、アプリケーション136−1の以前の状態またはビューにユーザが戻ることを可能にするための状態の待ち行列と、ユーザが行った以前の動作のやり直しまたは取り消しの待ち行列とのうちの1つ以上を含んでいる。
【0080】
イベントモニタ171は、周辺装置インタフェース118からイベント情報を受信する。イベント情報には、サブイベント(例えば、マルチタッチジェスチャの一部として、タッチセンシティブディスプレイ112上のユーザのタッチ)についての情報が含まれる。周辺装置インタフェース118は、I/Oサブシステム106、または、例えば近接センサ166のようなセンサ、加速度計168、および/または(音声回路部110を通して)マイク113から受信する情報を送信する。周辺装置インタフェース118がI/Oサブシステム106から受信する情報は、タッチセンシティブディスプレイ112またはタッチセンシティブ表面からの情報を含んでいる。
【0081】
一部の実施形態では、イベントモニタ171は、所定の間隔で周辺装置インタフェース118に要求を送信する。それに応じて、周辺装置インタフェース118は、イベント情報を送信する。その他の実施形態では、周辺装置インタフェース118は、重大なイベント(例えば、所定の雑音閾値を超える、および/または、所定の持続時間を超える入力を受信すること)がある場合に限って、イベント情報を送信する。
【0082】
また、一部の実施形態では、イベントソータ170は、ヒットビュー判定モジュール172および/またはアクティブイベント・レコグナイザ判定モジュール173を含んでいる。
【0083】
ヒットビュー判定モジュール172は、タッチセンシティブディスプレイ112が2つ以上のビューを表示した時、サブイベントが1つ以上のビューの中のどこで発生したかを判定するためのソフトウェア手順を提供する。ビューは、ユーザがディスプレイ上で見ることのできる制御部およびその他の要素で構成されている。
【0084】
アプリケーションに関連するユーザインタフェースのもう1つの態様は、本明細書ではアプリケーションビューまたはユーザインタフェースウィンドウと呼ばれることもあるビューの集合であり、その中で情報が表示され、タッチに基づくジェスチャが行われる。その中でタッチが検出される(それぞれのアプリケーションの)アプリケーションビューは、アプリケーションのプログラマチック階層またはビュー階層の中のプログラマチックレベルに対応してもよい。例えば、タッチが検出される最低のレベルのビューは、ヒットビューと呼ばれてもよく、適切な入力として認められるイベントの集合は、タッチに基づくジェスチャを開始する最初のタッチのヒットビューに、少なくとも部分的に、基づいて判定されてもよい。
【0085】
ヒットビュー判定モジュール172は、タッチに基づくジェスチャのサブイベントに関する情報を受信する。アプリケーションが、階層として編成された複数のビューを有する場合、ヒットビュー判定モジュール172は、ヒットビューを、サブイベントを処理すべき階層の中の最低のビューとして識別する。ほとんどの状況では、ヒットビューは、最初のサブイベント(すなわち、イベントまたは潜在的イベントを形成するサブイベントのシーケンスの中の最初のサブイベント)が生じる最低レベルのビューである。一旦ヒットビューがヒットビュー判定モジュールによって識別されると、ヒットビューは典型的には、ヒットビューとして識別された同じタッチすなわち入力源に関するすべてのサブイベントを受信する。
【0086】
アクティブイベント・レコグナイザ判定モジュール173は、ビューの階層の中でどのビューがサブイベントの個別のシーケンスを受信すべきかを判定する。一部の実施形態では、アクティブイベント・レコグナイザ判定モジュール173は、ヒットビューだけが、サブイベントの個別のシーケンスを受信するべきだと判定する。その他の実施形態では、アクティブイベント・レコグナイザ判定モジュール173は、サブイベントの物理的位置を含むすべてのビューが、アクティブに関わっているビューであると判定し、従って、すべてのアクティブに関わっているビューが、サブイベントの個別のシーケンスを受信すべきだと判定する。その他の実施形態では、たとえタッチサブイベントが、1つの個別のビューに関連するエリアに完全に限定されたとしても、階層の中のより上位のビューは、やはり、アクティブに関わっているビューのままであり続けるだろう。
【0087】
イベント発送モジュール174は、イベント情報をイベントレコグナイザ(例えばイベントレコグナイザ180)へ発送する。アクティブイベント・レコグナイザ判定モジュール173を含む実施形態では、イベント発送モジュール174は、アクティブイベント・レコグナイザ判定モジュール173によって判定されたイベントレコグナイザへイベント情報を配信する。一部の実施形態では、イベント発送モジュール174は、それぞれのイベント受信器モジュール182によって取得されたイベント情報を、イベント待ち行列に記憶する。
【0088】
一部の実施形態では、オペレーティングシステム126はイベントソータ170を含んでいる。あるいは、アプリケーション136−1がイベントソータ170を含んでいる。別の実施形態では、イベントソータ170は、スタンドアロンモジュールであるかまたは、例えば接触/動きモジュール130のような、メモリ102の中に記憶された別のモジュールの一部である。
【0089】
一部の実施形態では、アプリケーション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を更新してもよい。あるいは、アプリケーションビュー191のうちの1つ以上は、1つ以上のそれぞれのイベントハンドラ190を含んでいる。また、一部の実施形態では、データ更新器176と、オブジェクト更新器177と、GUI更新器178とのうち1つ以上が、それぞれのアプリケーションビュー191の中に含まれている。
【0090】
それぞれのイベントレコグナイザ180は、イベント情報(例えばイベントデータ179)をイベントソータ170から受信し、そして、イベント情報からイベントを識別する。イベントレコグナイザ180は、イベント受信器182と、イベント比較器184とを含んでいる。また、一部の実施形態では、イベントレコグナイザ180は、メタデータ183と、(サブイベント配信命令を含みうる)イベント配信命令188との少なくとも部分集合を含んでいる。
【0091】
イベント受信器182は、イベント情報をイベントソータ170から受信する。イベント情報は、サブイベントについての情報、例えば、タッチまたはタッチの移動を含んでいる。また、サブイベントに依存して、イベント情報は、例えばサブイベントの位置のような、追加情報を含んでいる。また、サブイベントが、タッチの動きに関わる場合、イベント情報は、サブイベントの速度および向きを含んでもよい。一部の実施形態では、イベントは、1つの向きから別の向きへの(例えば縦方向の向きからランドスケープの向きへの、またはその逆の)デバイスの回転を含んでおり、イベント情報は、デバイスの現在の向き(デバイスの姿勢とも呼ばれる)についての対応する情報を含んでいる。
【0092】
イベント比較器184は、イベント情報を事前設定されたイベントまたはサブイベント定義と比較し、そして、比較に基づいて、イベントもしくはサブイベントを判定するかまたは、イベントもしくはサブイベントの状態を判定または更新する。一部の実施形態では、イベント比較器184は、イベント定義186を含んでいる。イベント定義186は、イベントの定義(例えば、事前設定されたサブイベントのシーケンス)、例えば、イベント1(187−1)、イベント2(187−2)等を含んでいる。一部の実施形態では、イベント187のサブイベントは、例えば、タッチ開始、タッチ終了、タッチ動作、タッチ中止、および複数のタッチを含んでいる。一例では、イベント1(187−1)についての定義は、表示されたオブジェクト上の2回のタップである。2回のタップは、例えば、所定の段階についての表示されたオブジェクト上の第1のタッチ(タッチ開始)と、所定の段階についての第1のリフトオフ(タッチ終了)と、所定の段階についての表示されたオブジェクト上の第2のタッチ(タッチ開始)と、所定の段階についての第2のリフトオフ(タッチ終了)とを含んでいる。別の例では、イベント2(187−2)についての定義は、表示されたオブジェクト上のドラッギングである。ドラッギングは、例えば、所定の段階についての表示されたオブジェクト上のタッチ(または接触)と、タッチセンシティブディスプレイ112を横断するタッチの移動と、タッチのリフトオフ(タッチ終了)とを含んでいる。また、一部の実施形態では、イベントは、1つ以上の関連するイベントハンドラ190についての情報を含んでいる。
【0093】
一部の実施形態では、イベント定義187は、それぞれのユーザインタフェースオブジェクトについてのイベントの定義を含んでいる。一部の実施形態では、イベント比較器184は、どのユーザインタフェースオブジェクトがサブイベントに関連しているかを判定するため、ヒットテストを行う。例えば、3つのユーザインタフェースオブジェクトがタッチセンシティブディスプレイ112上に表示されているアプリケーションウィンドウにおいて、タッチセンシティブディスプレイ112上でタッチが検出された時、イベント比較器184は、3つのユーザインタフェースオブジェクトのうちのどれがタッチ(サブイベント)に関連しているかを判定するため、ヒットテストを行う。個々の表示されたオブジェクトがそれぞれのイベントハンドラ190に関連付けられると、イベント比較器は、ヒットテストの結果を用いて、どのイベントハンドラ190が起動されるべきかを判定する。例えば、イベント比較器184は、ヒットテストをトリガするサブイベントおよびオブジェクトに関連するイベントハンドラを選択する。
【0094】
また、一部の実施形態では、それぞれのイベント187についての定義は、サブイベントのシーケンスがイベントレコグナイザのイベントタイプに対応しているか否かが判定されるまでイベント情報の配信を遅らせる遅延作用を含んでいる。
【0095】
それぞれのイベントレコグナイザ180が、一連のサブイベントはイベント定義186の中のいずれのイベントにも合致しないと判定した場合、それぞれのイベントレコグナイザ180は、イベント不可能、イベント失敗、またはイベント終了状態を入力し、その後は、タッチに基づくジェスチャのその後のサブイベントを無視する。この状況では、もしあれば、ヒットビューについてアクティブであり続けるその他のイベントレコグナイザは、進行中のタッチに基づくジェスチャのサブイベントの追跡と処理とを続ける。
【0096】
一部の実施形態では、それぞれのイベントレコグナイザ183は、構成可能なプロパティと、フラグと、および/または、イベント配信システムがどのようにしてアクティブに関わっているイベントレコグナイザへのサブイベント配信を行うかを示すリストとを備えたメタデータ183を含んでいる。一部の実施形態では、メタデータ183は、構成可能なプロパティと、フラグと、および/または、イベントレコグナイザがどのようにして相互に対話しうるかを示すリストとを含んでいる。一部の実施形態では、メタデータ183は、構成可能なプロパティと、フラグと、および/または、サブイベントがビュー階層またはプログラマチック階層の中の多様なレベルへ配信されるかどうかを示すリストとを含んでいる。
【0097】
一部の実施形態では、それぞれのイベントレコグナイザ180は、イベントのうちの1つ以上の個別のサブイベントが認識された場合にイベントに関連するイベントハンドラ190を起動する。一部の実施形態では、それぞれのイベントレコグナイザ180は、イベントに関連するイベント情報をイベントハンドラ190に配信する。イベントハンドラ190を起動することは、サブイベントをそれぞれのヒットビューに送信すること(および送信を延期すること)とは区別される。一部の実施形態では、イベントレコグナイザ180は、認識されたイベントに関連するフラグをスロー(throw)し、そして、フラグに関連するイベントハンドラ190は、フラグをキャッチ(catch)して事前設定されたプロセスを行う。
【0098】
一部の実施形態では、イベント配信命令188は、イベントハンドラを起動することなくサブイベントについてのイベント情報を配信するサブイベント配信命令を含んでいる。代わりに、サブイベント配信命令は、イベント情報を、一連のイベントハンドラに関連するイベントハンドラに、またはアクティブに関わっているビューに配信する。一連のイベントハンドラにかまたはアクティブに関わっているビューに関連するイベントハンドラは、イベント情報を受信して、所定のプロセスを行う。
【0099】
一部の実施形態では、データ更新器176は、アプリケーション136−1で用いられるデータを作成して更新する。例えば、データ更新器176は、連絡先モジュール137の中で用いられる電話番号を更新し、またはビデオプレーヤモジュール145の中で用いられるビデオファイルを記憶する。一部の実施形態では、オブジェクト更新器177は、アプリケーション136−1で用いられるオブジェクトを作成して更新する。例えば、オブジェクト更新器177は、新たなユーザインタフェースオブジェクトを作成するかまたは、ユーザインタフェースオブジェクトの位置を更新する。GUI更新器178は、GUIを更新する。例えば、GUI更新器178は、ディスプレイ情報を準備して、それをグラフィックスモジュール132へ送信してタッチセンシティブディスプレイ上に表示させる。
【0100】
一部の実施形態では、イベントハンドラ190は、データ更新器176と、オブジェクト更新器177と、GUI更新器178とを含んでいるかまたはそれらにアクセスする。一部の実施形態では、データ更新器176と、オブジェクト更新器177と、GUI更新器178とは、それぞれのアプリケーション136−1またはアプリケーションビュー191の単一のモジュールの中に含まれている。その他の実施形態では、それらは、2つ以上のソフトウェアモジュールの中に含まれている。
【0101】
理解されるべきだが、タッチセンシティブディスプレイ上のユーザのタッチについてのイベント処理に関する前述の議論は、入力デバイスを使って多機能デバイス100を操作するための他の形のユーザ入力にも適用されるのであるが、そのすべてがタッチスクリーン上で開始されるのではなく、例えば、マウスの移動やマウスボタンの押し下げを、1つまたは複数のキーボードの押し下げや保持、タッチパッド上のユーザの移動のタップ、ドラッグ、スクロール等、ペンスタイラス入力、デバイスの動き、口頭の命令、検出された目の動き、バイオメトリック入力、および/またはいずれかのそれらの組み合わせと組み合わせるかまたは組み合わせることなく統合し、それらが、認識されることになるイベントを定義するサブイベントに対応する入力として利用されてもよい。
【0102】
図2は、一部の実施形態による、タッチスクリーン112を有する携帯用多機能デバイス100を示す図である。タッチスクリーンは、ユーザインタフェース(UI)200の中に1つ以上のグラフィックスを表示してもよい。本実施形態および以下に記述するその他の実施形態では、ユーザは、例えば1つ以上の指202(図では原寸に比例して描かれてはいない)または1つ以上のスタイラス203(図では原寸に比例して描かれてはいない)を使ってグラフィックスに接触するかまたはタッチすることによって、1つ以上のグラフィックスを選択してもよい。一部の実施形態では、1つ以上のグラフィックスの選択は、ユーザが1つ以上のグラフィックスとの接触を中断する時に行われる。一部の実施形態では、接触には、デバイス100と接触していた指のジェスチャ、例えば1つ以上のタップ、1つ以上のスワイプ(左から右へ、右から左へ、上へおよび/または下へ)および/またはローリング(左から右へ、右から左へ、上へおよび/または下へ)が含まれうる。一部の実施形態では、グラフィックとの不注意な接触は、グラフィックを選択しなくてもよい。例えば、選択に対応するジェスチャがタップである場合、アプリケーションのアイコンをスワイプするジェスチャは、対応するアプリケーションを選択しなくてもよい。
【0103】
また、デバイス100は、例えば「ホーム」またはメニューボタン204のような、1つ以上の物理的ボタンを含んでいてもよい。前述したように、メニューボタン204を用いて、デバイス100上で実行されうるアプリケーションの集合の中のいずれかのアプリケーション136へのナビゲートが行われてもよい。あるいは、一部の実施形態では、メニューボタンは、タッチスクリーン112上に表示されるGUIの中のソフトキーとして実装される。
【0104】
一実施形態では、デバイス100は、タッチスクリーン112と、メニューボタン204と、デバイスの電源をオン/オフにしてデバイスをロックするためのプッシュボタン206と、音声調整ボタン208と、SIM(Subscriber Identity Module)カードスロット210と、ヘッドフォンジャック212と、ドッキング/充電用外部ポート124とを含んでいる。プッシュボタン206を用いて、ボタンを押して事前設定された時間間隔の間ボタンを押された状態に保持することによってデバイスの電源をオン/オフにし、ボタンを押して事前設定された時間間隔が経過する前にボタンを解放することによってデバイスをロックし、および/または、デバイスのロックを解除して、ロック解除プロセスを開始してもよい。また、代替的実施形態では、デバイス100は、マイク113を通して一部の機能の起動または停止のための口頭入力を受け入れてもよい。
【0105】
図3は、一部の実施形態による、ディスプレイとタッチセンシティブ表面とを備えた例示的な多機能デバイスのブロック図である。デバイス300は携帯用である必要はない。一部の実施形態では、デバイス300は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディアプレーヤデバイス、ナビゲーションデバイス、(例えば子供の学習玩具のような)教育デバイス、ゲーミングシステム、または制御デバイス(例えばホームまたは業務用コントローラ)である。デバイス300は、典型的には、1つ以上の処理ユニット(CPU)310と、1つ以上のネットワーク通信インタフェースまたはその他の通信インタフェース360と、メモリ370と、これらの構成要素を相互接続するための1つ以上の通信バス320とを含んでいる。通信バス320は、システムの構成要素間の通信を相互接続して制御する回路部(チップセットと呼ばれることもある)を含んでいてもよい。デバイス300は、典型的にはタッチスクリーンディスプレイであるディスプレイ340を含むI/O(input/output)インタフェース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は、これらのモジュールを記憶しなくてもよい。
【0106】
上記で識別した
図3の個々の要素は、前述した1つ以上のメモリデバイスの中に記憶されてもよい。上記で識別した個々のモジュールは、上記の機能を行うための命令の集合に対応する。上記で識別したモジュールまたはプログラム(すなわち、命令の集合)は、別個のソフトウェアプログラム、手順またはモジュールとして実装される必要はなく、それゆえ、これらのモジュールの各種の部分集合が、各種の実施形態の中で組み合わされてもよいし、その他の要領で再構成されてもよい。一部の実施形態では、メモリ370は、上記で識別したモジュールおよびデータ構造の部分集合を記憶してもよい。さらに、メモリ370は、上述していない追加のモジュールおよびデータ構造を記憶してもよい。
【0107】
次に、携帯用多機能デバイス100に実装されうるユーザインタフェース(「UI」)の実施形態に注意を向けよう。
【0108】
図4Aおよび
図4Bは、一部の実施形態による、携帯用多機能デバイス100上のアプリケーションのメニューのための例示的なユーザインタフェースを示す図である。同様のユーザインタフェースがデバイス300上に実装されてもよい。一部の実施形態では、ユーザインタフェース400Aは、以下の要素、またはその部分集合または上位集合を含んでいる。
・例えばセルラーおよびWiFi信号のようなワイヤレス通信用の信号強度指標402、
・時刻404、
・Bluetooth(登録商標)指標405、
・電池状態指標406、
・以下のような頻繁に使用するアプリケーション用のアイコンを備えたトレイ408
・電話138、これは、不在着信もしくはボイスメールメッセージの数の指標414を含んでいてもよい
・電子メールクライアント140、これは未読の電子メールの数の指標410を含んでいてもよい
・ブラウザ147、
・音楽プレーヤ146、および
・その他のアプリケーション用のアイコン、例えば、
・IM141、
・画像管理144、
・カメラ143、
・ビデオプレーヤ145、
・天気149−1、
・株式149−2、
・エクササイズサポート142、
・カレンダ148、
・電卓149−3、
・アラームクロック149−4、
・辞書149−5、および
・ユーザ作成によるウィジェット149−6。
【0109】
一部の実施形態では、ユーザインタフェース400Bは、以下の要素、またはそれらの部分集合もしくは上位集合を含んでいる。
・上記の402、404、405、406、141、148、144、143、149−3、149−2、149−1、149−4、410、414、138、140、および147、
・地
図154、
・メモ153、
・設定412、これは、以下にさらに述べるように、デバイス100およびその各種のアプリケーション136の設定へのアクセスを提供する
・ビデオおよび音楽プレーヤモジュール152、これは、iPod(Apple Inc.の登録商標)モジュール152とも呼ばれる
・オンラインビデオモジュール155、YouTube(Google Inc.の登録商標)モジュール155とも呼ばれる。
【0110】
図4Cは、ディスプレイ450(例えばタッチスクリーンディスプレイ112)とは別のタッチセンシティブ表面451(例えば
図3のタブレットまたはタッチパッド355)を備えたデバイス(例えば
図3のデバイス300)上の例示的なユーザインタフェースを示す図である。以下に記す例の多くは、(タッチセンシティブ表面とディスプレイとが組み合わされた)タッチスクリーンディスプレイ112上の入力に言及しながら与えられるであろうが、一部の実施形態では、デバイスは、
図4Cに示すように、ディスプレイとは別のタッチセンシティブ表面上の入力を検出する。一部の実施形態では、タッチセンシティブ表面(例えば
図4Cの451)は、ディスプレイ(例えば450)上の主軸(例えば
図4Cの453)に対応する主軸(例えば
図4Cの452)を有する。これらの実施形態によれば、デバイスは、タッチセンシティブ表面451との接触(例えば
図4Cの460および462)を、ディスプレイ上のそれぞれの位置に対応する位置で検出する(例えば
図4Cでは460は468に対応し、462は470に対応する)。このようにして、タッチセンシティブ表面がディスプレイとは別である場合に、タッチセンシティブ表面(例えば
図4Cの451)上でデバイスによって検出されたユーザの入力(例えば接触460および462、並びにその動き)が、多機能デバイスのディスプレイ上のユーザインタフェースを操作するためにデバイスによって用いられる。理解されるべきだが、同様の方法が、本明細書で記述されたその他のユーザインタフェースについて用いられてもよい。
【0111】
加えて、以下に記す例は、主に指入力(例えば指の接触、指のタップジェスチャ、指のスワイプジェスチャ)に言及しながら与えられるであろうが、理解されるべきだが、一部の実施形態では、1つ以上の指入力が、別の入力デバイスからの入力(例えば、スタイラス入力)に置換される。
【0112】
以下に与えられる説明において、「接触」(コンタクトリストまたはアドレス帳などのエントリを説明するために用いられる場合を除く)は、「タッチジェスチャ」の簡略な用語として用いられ、それゆえ以下で述べられまたは説明されるそれぞれの接触は、タッチセンシティブディスプレイ又は他のタッチセンシティブ表面のセンサ(またはセンサのセット)によって検出される任意の適切なタッチジェスチャでありうる。同様に、以下で述べられまたは説明される「指のタップ」の各々は、任意の適切なタッチジェスチャでありうる。加えて、一部の実施形態では、「タッチジェスチャ」は、タッチセンシティブスクリーン112またはその他のタッチセンシティブ表面に物理的接触を行う、1つ以上の指または1つ以上のスタイラスによって行われるジェスチャだけではなく、タッチセンシティブスクリーン112またはその他のタッチセンシティブ表面の1つ以上のセンサがこれらのジェスチャを検出することができるほどタッチセンシティブスクリーン112またはその他のタッチセンシティブ表面に、全体としてまたは部分的に、十分近い状態で行われるジェスチャも含んでいる。
【0113】
次に、例えばデバイス300または携帯用多機能デバイス100のような、ディスプレイとタッチセンシティブ表面とを持つ多機能デバイスに実装されうるユーザインタフェース(「UI」)および関連のプロセスの実施形態に注意を向けよう。
【0114】
図5A乃至5LLLは、一部の実施形態による対話型ポップアップビューを備えた例示的なユーザインタフェースを示す図である。これらの図におけるユーザインタフェースは、
図6A乃至6Bおよび7A乃至7Bにおけるプロセスを含めて、以下に記すプロセスを示すのに用いられる。
【0115】
留意すべきだが、
図5A乃至5LLLにおいて、対応するジェスチャは類似の名前で呼ばれている。例えば、
図5Bで、第1の多機能デバイス100−1上の接触が505−Aと呼ばれるのに対して、第2の多機能デバイス100−2上の対応する接触は505−A’と呼ばれる。対応するジェスチャのそれ以外の例は、少なくとも
図5D、5J乃至5L、5O乃至5R、5V、5Y、5AA、5EE、5MMの中に見ることができる。
【0116】
図5A乃至5Tに、第1の多機能デバイス100−1のタッチスクリーン112−1上の地図アプリケーション(例えば、
図1の地図モジュール154)における対話型ポップアップビューを備えた例示的なユーザインタフェースを示す。また、比較のため、第2の多機能デバイス100−2のタッチスクリーン112−2上の対応する地図アプリケーションにおける対応する全画面幅ビューのためのユーザインタフェースも示す。第2の多機能デバイス100−2のタッチスクリーン112−2は、第1の多機能デバイス100−1のタッチスクリーン112−1より解像度が低い。一例では、タッチスクリーン112−1は、タッチスクリーン112−2の解像度の2倍の解像度を有する(すなわち、横すなわち水平の次元に2倍のピクセル、垂直の次元に2倍のピクセル、全体としてタッチスクリーン112−2の4倍のピクセル)。別の例では、タッチスクリーン112−1は、水平の次元にタッチスクリーン112−2の少なくとも2倍のピクセル、そして、垂直の次元に少なくとも2倍のピクセルを持つ、タッチスクリーン112−2の解像度の2倍を超える解像度を有する。
【0117】
本明細書では、ディスプレイ上のアプリケーションにおける「全画面幅ビュー」という用語は、ディスプレイの幅のすべてまたは実質的にすべて(例えば、少なくとも80%、85%、90%、95%)を占めるビューのことを言う。留意すべきだが、全画面幅ビューは、高さの点では必ずしもディスプレイの全画面を占めない。例えば、全画面幅ビューには、ディスプレイの画面全体を占める第1のビュー(すなわち、全画面幅および全画面高のビュー)だけでなく、幅はディスプレイの全画面を占めるけれども高さは画面の半分のエリアを占める第2のビューが含まれる。
【0118】
図5Aは、第1の多機能デバイス100−1上の地図アプリケーションにおいて地
図520−1を表示する例示的なユーザインタフェースを描いた図である。地図アプリケーションは、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい。
・検索モードアイコン508−1であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、検索モードで地図の表示を開始するようになっていて、検索モードでは、地図は、検索結果を重畳するように構成されており、この例では、検索モードアイコンが起動され、その結果、検索モードアイコンが太字の輪郭線で強調表示される。
・道順モードアイコン510−1であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、道順モードで地図の表示を開始するようになっていて、道順モードでは、地図アプリケーションは、道順を重畳するように構成される。
・ビュー位置アイコン512−1であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、地図アプリケーションの各種のモードを開始するようになっていて、例えば、ビュー位置アイコン512−1が最初に起動された場合、デバイスの現在位置が地
図520−1上に表示される。
・最近入力アイコン514−1であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、ブックマーク位置、連絡先、および/または最近の入力(例えば最近の検索用語の入力)の表示を開始する。
・検索用語入力エリア516−1であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、検索用語(例えば、位置検索であれば、検索用語は、住所の全部または一部であってもよいし、企業名または人名であってもよい)の受け取りを開始する。
【0119】
また、第1の多機能デバイス100−1上の例示的なユーザインタフェースは、(例えばWiFi、EDGE、および3Gのような無線通信信号の強度を示す)信号強度指標502−1と、現在時刻指標504−1と、電池残量指標506−1とを含んでいる。
【0120】
また、
図5Aは、2つの位置を表す2つのピン(522−1および522−2)を示す。位置は、検索(例えば検索結果)から、アドレス帳(例えばアドレス帳に記憶されている位置)から、地図(例えば観光スポット、または、例えばガソリンスタンドのような、よく知られている位置)から、および/またはユーザの入力(例えば、以下に記すように、ピンを落とした位置)から取得されてもよい。
【0121】
加えて、
図5Aは、第2の多機能デバイス100−2上の地図アプリケーションに対応する地
図520−2を表示する、例示的なユーザインタフェースを描いている。第2の多機能デバイス100−2上の地図アプリケーションは、上記の類似要素と同様である要素508−2、510−2、512−2、516−2および522−1’、あるいはそれらの下位集合または上位集合を含んでいてもよい。第2の多機能デバイス100−2上のユーザインタフェースは、上記の類似要素と同様である要素502−2、504−2、506−2、あるいはそれらの下位集合または上位集合を含んでいてもよい。
【0122】
図5Bでは、接触505−A(またはその他のタッチジェスチャ)が、ピン522−1に対応するタッチスクリーン112−1上の位置で検出され、それによって、ピン522−1が選択される。同様に、接触505−A’が、タッチスクリーン112−2上のピン522−1’に対応する位置で検出される。
【0123】
図5Cは、第1の多機能デバイス100−1上でピン522−1に隣接するコールアウト524−1の表示を示す図である。コールアウト524−1は、ピン522−1を指し示すポインタを有する。コールアウト524−1は、住所、位置(または建物)のタイプ、および/または、その位置にいる人物の名前に対応するテキストを含んでいてもよい。この例では、コールアウト524−1は、位置/建物のタイプを示すテキストである「図書館」を含んでいる。コールアウト524−1は、加えて、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい。
・ストリートビューアイコン528−1であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、地
図520−1上のピン522−1の位置に対応する位置からのストリートビューの表示を開始する。
・情報アイコン526−1であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、地
図520−1上のピン522−1の位置に対応する位置についての情報を含むポップアップビューの表示を開始する。
【0124】
同様に、第2の多機能デバイス100−2上で、コールアウト524−2が表示される。コールアウト524−2は、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい:526−2および528−2、それらは、上記の同様の要素に類似している。
【0125】
図5Dでは、接触507−Aが、情報アイコン526−1に対応するタッチスクリーン112−1上の位置で検出される。同様に、接触507−A’が、情報アイコン526−2に対応するタッチスクリーン112−2上の位置で検出される。
【0126】
図5E乃至5Gは、第1の多機能デバイス100−1上のポップアップビュー530−1を示すアニメーションを示す。また、
図5E乃至5Gでは、第2の多機能デバイス100−2上の対応する全画面幅ビュー上でのアニメーションも示す。
【0127】
図5E乃至5Gでは、ポップアップビュー530−1は、第2の多機能デバイス100−2のタッチスクリーン112−2の横方向解像度に対応する横方向解像度を有する。例えば、第2の多機能デバイス100−2のタッチスクリーン112−2が、320ピクセルの横方向解像度を有する場合、ポップアップビュー530−1の横方向解像度は320ピクセルである。
【0128】
図5Gは、アニメーションの完了を示す。第1の多機能デバイス100−1上で、ポップアップビュー530−1は、地
図520−1を部分的に覆う。それと比べて、第2の多機能デバイス100−2上の対応する全画面幅ビューは、地
図520−2を完全に覆う。
【0129】
図5Gでは、ポップアップビュー530−1はポインタを含んでおり、ポインタはピン522−1を指し示す。
【0130】
また、
図5Gは、ポップアップビュー530−1が、以下の要素またはそれらの下位集合または上位集合を含んでいてもよいことを示す。
・道順アイコン532−4および532−5であって、(例えばアイコン上の指のタップによって)起動された場合、道順モードを開始し、ピンの位置をそれぞれ、終点または出発点として提供する。
・地
図520−1上のピン522−1の位置に対応する位置に関連する電話番号、ホームページ、および住所をそれぞれ含むメニューアイコン538−1、538−2、および538−3であって、それぞれのメニューアイコンは、(例えばアイコン上の指のタップによって)起動された場合、それぞれのメニューアイコン538に関連するそれぞれのコンテンツ(例えば電話番号、ホームページ、住所)についての編集プロセスを開始する。
・地
図520上のピン522−1の位置に対応する位置についてのストリートビューを含んでいるストリートビューアイコン538−4であって、ストリートビューアイコン538−4は、(例えばアイコン上の指のタップによって)起動された場合、ストリートビューの表示を開始する。
・「連絡先追加」アイコン532−1であって、(例えばアイコン上の指のタップによって)起動された場合、ユーザのアドレス帳(ユーザの連絡先またはコンタクトリストと呼ばれることもある)の中にピン522−1に関連する位置情報を記憶することを開始する。
・共有アイコン532−2であって、(例えばアイコン上の指のタップによって)起動された場合、ピン522−1に関連する位置情報を選択された人物またはグループと共有することを開始する。
・ブックマークアイコン−3であって、(例えばアイコン上の指のタップによって)起動された場合、ピン522−1に関連する位置情報をブックマークに記憶することを開始する。
【0131】
図5Gでは、第2の多機能デバイス100−2上の対応する全画面幅ビューが、上記の同様の要素(例えば電話、ホームページ、住所等)またはそれらの下位集合または上位集合を含んでいてもよい。
【0132】
ポップアップビュー530−1と対応する全画面幅ビューとは、
図5Gでは同一ではない。具体的には、要素の配置が異なる。例えば、ポップアップビュー530−1では、道順アイコン532−4および532−5は、メニューアイコン538−1、538−2、538−3の上にあり、他方、第2の多機能デバイス100−2に表示される対応する全画面幅ビューでは、道順アイコンはメニューアイコンの下に現れる。
【0133】
さらに、ポップアップビュー530−1の高さは、対応する全画面幅ビューの高さと合致する必要はない。この例では、ポップアップビュー530−1は、第2の多機能デバイス100−2上の対応する全画面幅ビューの高さより高い。また、この例のポップアップビュー530−1は、第2の多機能デバイス上の対応する全画面幅ビュー上に現れないアイコン532−1、532−2、532−3も表示する。
【0134】
図5H乃至5Iは、対応する全画面幅ビュー上のスクロール操作を示す。
図5Hは、接触509の、タッチスクリーン112−2上の509−A’に対応する位置での検出を示す。
図5Iでは、接触509は、タッチスクリーン112−2上で509−B’に対応する位置へと移動している。対応する全画面幅ビューは、接触509の移動に従ってスクロールし、上記の同様の要素に類似したアイコン532−1’、532−2’、532−3’を表示する。
【0135】
図5Jでは、接触511−Aが、タッチスクリーン112−1上の「連絡先追加」アイコン532−1に対応する位置で検出される。同様に、接触511−A’が、タッチスクリーン112−2上で「連絡先追加」アイコン532−1に対応する位置で検出される。
【0136】
図5Kおよび5Lは、第2のポップアップビューを表示する2つの実施形態を示す図である。
図5Kは、ポップアップビュー530−1の中の第2のポップアップビュー534−1の表示を示す図である。第2のポップアップビュー534−1は、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい。
・「連絡先新規作成」アイコン538−4であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、ピン522−1に関連する位置情報を添えてユーザのアドレス帳に新規連絡先を作成することを開始する。
・「既存連絡先への追加」アイコン538−5であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、ピン522−1に関連する位置情報を既存の連絡先に追加することを開始する。
・キャンセルアイコン538−6であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、第2のポップアップビュー534−1を表示するのを中止する。
【0137】
同様に、第2の多機能デバイス100−2は、スライドインメニュー536−1を表示する。スライドインメニュー536−1は、上記の要素またはそれらの下位集合または上位集合を含んでいてもよい。この例では、スライドインメニュー535−1は、(ユーザのアドレス帳に新規連絡先を作成するための)「新規連絡先作成」アイコン538−4’を含んでいてもよい。
【0138】
また、
図5Kは、デバイス100−1のタッチスクリーン112−1上の「新規連絡先作成」アイコン538−4に対応する位置で接触513−Aが検出されることを示す図である。同様に、デバイス100−2のタッチスクリーン112−2上の「新規連絡先作成」アイコン538−4’に対応する位置で接触513−A’が検出される。
【0139】
図5Lは、ポップアップビュー530−1の次の第2のポップアップビュー534−2の表示を示す図である。この例では、第2のポップアップビュー534−2は、ポップアップビュー530−1の下に表示される。
図5Lでは、第2のポップアップビュー534−2は、第1のポップアップビュー530−1を覆わない。第2のポップアップビュー534−2は、「連絡先追加」アイコン532−1を指し示すポインタを有する。ポップアップビュー530−1と地
図520−1の残りの部分の表示は、維持される。第2のポップアップビュー534−2は、上記の要素またはそれらの下位集合または上位集合を含んでいてもよい。
【0140】
また、
図5Lは、第1の多機能デバイス100−1のタッチスクリーン112−1上で、第2のポップアップビュー534−2の中の「連絡先新規作成」アイコン538−4に対応する位置で接触513−AAが検出されることを示す。
図5Lでは、第2の多機能デバイス100−2は、
図5Kに関して上述したように示される。
【0141】
図5M乃至5Nは、(
図5Mに示す)ポップアップビュー530−1上にスライドして入る第3のポップアップビュー530−2(
図5Nに示す)のアニメーションを示す図である。
図5Nに示すように、第3のポップアップビュー530−2は、複数の要素、例えばファーストネーム、ラストネーム、連絡先タイプ、写真、電話番号、電子メールアドレス、およびホームページを含んでいる。
【0142】
また、
図5Nでは、第3のポップアップビュー530−2は、下記の要素またはそれらの下位集合または上位集合を含んでいる。
・キャンセルアイコン532−4であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、多機能デバイス100−1が第3のポップアップビュー530−2を表示するのを中止することを開始する。
・完了アイコン532−5であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、ピン522−1に関連する位置情報を、第1の多機能デバイス100−1のメモリ(例えば
図1Aのメモリ102または
図3のメモリ370)の中の(ユーザの連絡先またはコンタクトリストとも呼ばれる)ユーザのアドレス帳に記憶する。
【0143】
上記の第1のポップアップビュー530−1と同様に、第1の多機能デバイス100−1上で、第2のポップアップビュー530−2は、地
図520−1を部分的に覆う。それと比べて、第2の多機能デバイス100−2上の対応する全画面幅ビューは、第2の多機能デバイス100−2上の地
図520−2を完全に覆う。
【0144】
図5O乃至5Qは、第3のポップアップビュー530−2の中のスクローリング操作を示す図である。
図5Oでは、接触515−Aが、第3のポップアップビュー530−2上で検出される。同様に、接触515−A’が、第2の多機能デバイス100−2のユーザインタフェース112−2上で検出される。
【0145】
図5Pは、第1の多機能デバイス100−1のタッチスクリーン112−1上で接触515が別の位置515−Bへ移動することを示す図である。移動の間、接触515は、タッチスクリーン112−1との接触を続ける。第3のポップアップビュー530−2は、接触515の移動に従って第3のポップアップビュー530−2の一部分をスクロールする。同様に、第2の多機能デバイス100−2上の接触515は、タッチスクリーン112−2上で別の位置515−B’へ移動し、第2の多機能デバイス100−2上のビューは、ビューの一部分をスクロールする。
【0146】
図5Qは、第1の多機能デバイス100−1のタッチスクリーン112−1上で接触515が別の位置515−Cへ移動することを示す図である。この例では、接触515は、位置515−Aに近い位置に戻る。第3のポップアップビュー530−2は、接触515の移動に従ってポップアップビュー530−2の一部分をスクロールする。同様に、第2の多機能デバイス100−2上で、対応する接触515が、別の位置515−C’へ移動する。
【0147】
図5Rでは、第1の多機能デバイス100−1のタッチスクリーン112−1上で、接触517−Aが、キャンセルアイコン532−4に対応する位置で検出される。同様に、第2の多機能デバイス100−2のタッチスクリーン112−2上で、接触517−A’が、キャンセルアイコン532−4’に対応する位置で検出される。
【0148】
図5S乃至5Tは、第3のポップアップビュー530−2の表示を中止するアニメーションを示す図である。
図5Sでは、第3のポップアップビュー530−2が、底からスライドして出てくる。
図5Tは、アニメーションの完了を示す図である。
図5Tでは、ポップアップビュー530−1の表示は、第1の多機能デバイス100−1上で維持される。
【0149】
図5U乃至5JJは、タッチスクリーン112−1上のブラウザアプリケーションにおける対話型ポップアップビューを伴う例示的なユーザインタフェースを示す図である。比較のため、第2の多機能デバイス100−2のタッチスクリーン112−2上の対応する地図アプリケーションにおける対応する全画面幅ビューのためのユーザインタフェースも示す。
【0150】
図5U乃至5JJでは、ポップアップビュー530は、上記のように、第2の多機能デバイス100−2のタッチスクリーン112−2の横方向解像度に対応する横方向解像度を有する。
【0151】
図5Uは、第1の多機能デバイス100−1上のブラウザアプリケーションにおいてウェブコンテンツ541−1を表示する例示的なユーザインタフェースを描いた図である。ブラウザアプリケーションは、下記の要素またはそれらの下位集合または上位集合を含んでいてもよい。
・戻るアイコン544−1であって、(例えばアイコン上の指のタップによって)起動された場合、ブラウザアプリケーションの中で閲覧した以前のページの表示を開始する。
・次へアイコン546−1であって、(例えばアイコン上の指のタップによって)起動された場合、ブラウザアプリケーションの中で閲覧した次のページの表示を開始する。
・ページアイコン548−1であって、(例えばアイコン上の指のタップによって)起動された場合、複数のウェブページの表示を開始する。
・ブックマークアイコン550−1であって、(例えばアイコン上の指のタップによって)起動された場合、ブックマークの表示を開始する。
・追加アイコン552−1であって、(例えばアイコン上の指のタップによって)起動された場合、現行のウェブページアドレスをブックマークに追加することを開始する。
・表示されたウェブページのウェブアドレスを表示するアドレスバーであって、起動された場合、アドレスバーは、閲覧のためのウェブページアドレスを受信することを開始する。
・上記のような検索用語入力エリア516−1(ブラウザにとって、検索用語入力は、インターネット検索エンジン用のクエリ用語である。)
【0152】
加えて、タッチスクリーン112−1は、上記のように、信号強度指標502−1、現在時刻指標504−1、および電池残量指標506−1を含んでいる。
【0153】
また、
図5Uは、第2の多機能デバイス100−2上の対応するブラウザアプリケーションにおいてウェブコンテンツ542−2を表示する例示的なユーザインタフェースも示す。第2の多機能デバイス100−2上のブラウザは、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい:516−2、544−2、546−2、548−2、550−2、552−2、それらは上記の516−1、544−1、546−1、548−1、550−1、552−1に類似している。また、第2の多機能デバイス100−2上のユーザインタフェースは、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい:502−2、504−2、506−2、それらは上記の502−1、504−1、506−1に類似している。
【0154】
図5Vでは、接触519−Aまたはその他のタッチジェスチャが、第1の多機能デバイス100−1上の追加アイコン552−1に対応するタッチスクリーン112−1上の位置で検出される。同様に、接触519−A’またはその他のタッチジェスチャが、第2の多機能デバイス100−2上の追加アイコン552−2に対応するタッチスクリーン112−2上の位置で検出される。
【0155】
図5Wは、第1の多機能デバイス100−1上に表示されたポップアップビュー530−3を示す図である。ポップアップビュー530−3は、538−8、538−9、538−10を含んでおり、それらは、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、それぞれのアイコン538によって示されたそれぞれの動作(このページへのリンクをメールする、ホームスクリーンに追加する、ブックマークを追加する)の実行を開始する。ポップアップビュー530−3は、第2の多機能デバイス100−2上の全画面幅ビューに対応する。第2の多機能デバイス100−2上の全画面幅ビューは、追加メニュービュー536−2を含んでいる。追加メニュービュー536−2は、アイコン538−8’、538−9’、538−10’を含んでおり、それらは、起動された場合、アイコン538−8、538−9、538−10と同じかまたは類似する動作の実行を開始する。加えて、追加メニュービュー536−2は、第2のデバイスを、追加メニュービュー536−2の前に表示されていたビューに戻すためのキャンセルアイコン538−7’を含んでいる。ポップアップビュー530−3は、追加メニュービュー536−2によって覆われないビュー542−1の中の位置での、タッピングまたはその他のタッチジェスチャによってキャンセルされる。
【0156】
図5Wでは、メニューアイコン(例えば戻るアイコン544−1、次へアイコン546−1、ページアイコン548−1、ブックマークアイコン550−1、追加アイコン552−1)は、タッチスクリーン112−1上に維持される。それと比べて、タッチスクリーン112−2上の対応するメニューアイコンは、追加メニュービュー536−2によって覆われている。
【0157】
図5Xでは、接触521−Aまたはその他のタッチジェスチャが、ポップアップビュー530−3の外側のタッチスクリーン112−1上の位置で検出される。それと比べて、接触521−A’またはその他のタッチジェスチャは、第2の多機能デバイス100−2上のキャンセルアイコン538−7’に対応するタッチスクリーン112−2上の位置で検出される。
【0158】
図5Yは、ポップアップビュー530−3の外側のタッチスクリーン112−1上の位置での接触521−Aまたはその他のタッチジェスチャに応じて、第1の多機能デバイス100−1がポップアップビュー530−3の表示を中止することを示す。同様に、追加メニュービュー536−2は、キャンセルアイコン538−7’に対応するタッチスクリーン112−2上の位置での接触521−A’またはその他のタッチジェスチャに応じて、第2の多機能デバイス100−2上で表示されることを中止する。
【0159】
また、
図5Yは、ブックマークアイコン550−1に対応するタッチスクリーン112−1上の位置での接触523−Aまたはその他のタッチジェスチャの検出を示す図である。同様に、ブックマークアイコン550−2に対応するタッチスクリーン112−2上の位置で、接触523−A’またはその他のタッチジェスチャが検出される。
【0160】
図5Zでは、第1の多機能デバイス100−1上にブックマークポップアップビュー530−4を表示する。ポップアップビュー530−4はブックマークを表示し、この例では、ブックマークは、フォルダ554−1、554−2、554−3および/またはウェブページ556−1、556−2、556−3を含んでいる。同様に、第2の多機能デバイス100−2は、フォルダ554−1’、554−2’、554−3’および/またはウェブページブックマーク556−1’、556−2’、556−3’を含めて、対応するブックマークを表示する。加えて、第2の多機能デバイス100−2は、完了アイコン532−7’を表示しており、これは、(例えば完了アイコン532−7’上の指のタップまたはその他のタッチジェスチャによって)起動された場合、第2の多機能デバイス100−2に、ブックマークの表示を中止させる。
【0161】
図5AAでは、フォルダの1つに対応するタッチスクリーン112−1上の位置で、接触525−Aまたはその他のタッチジェスチャが検出される。同様に、第2の多機能デバイス100−2上に表示されるフォルダの1つに対応するタッチスクリーン112−2上の位置で、接触525−A’が検出される。
【0162】
図5BB乃至5DDは、フォルダコンテンツを表示するアニメーションを示す図である。
図5DDは、アニメーションの完了を示す。ポップアップビュー530−4は、「ブックマークへ」アイコン532−6を含んでいてもよく、これは、起動された場合、トップレベルでブックマークの表示を開始する(例えば、
図5Zを参照)。同様に、第2の多機能デバイス100−2上の対応する全画面幅ビューは、「ブックマークへ」アイコン532−6’を含んでいてもよい。
【0163】
図5EEでは、第1の多機能デバイス100−1上の「ブックマークへ」アイコン532−6に対応する位置で、接触527−Aまたはその他のタッチジェスチャが検出され、それが、トップレベルでブックマークの表示を開始する(例えば
図5Zを参照)。同様に、第2の多機能デバイス100−2上の「ブックマークへ」アイコン532−6’に対応するタッチスクリーン112−2上の位置で、接触527−A’またはその他のタッチジェスチャが検出される。
【0164】
図5FF乃至5HHは、フォルダコンテンツの表示を中止して、代わりに、トップレベルでブックマークを表示するアニメーションを示す図である。
図5HHは、アニメーションの完了を示す図である。
【0165】
図5IIでは、第1の多機能デバイス100−1上のポップアップビュー530−4の外側の位置で、接触529−Aまたはその他のタッチジェスチャが検出される。この例では、接触529−Aまたはその他のタッチジェスチャは、ウェブコンテンツ542−1の残った部分に対応する位置で検出される。それと比べて、第2の多機能デバイス100−2上の完了アイコン532−7’に対応するタッチスクリーン112−2上の位置で、接触529−A’またはその他のタッチジェスチャが検出される。
【0166】
図5JJは、ブックマークポップアップビュー530−4の表示を、ポップアップビュー530−4の外側の位置での接触529−Aまたはその他のタッチジェスチャに応じて、中止することを示す図である。また、
図5JJは、完了アイコン532−7’に対応するタッチスクリーン112−2上の位置での接触529−A’またはその他のタッチジェスチャに応じて、第2の多機能デバイス100−2による表示を中止することを示す。
【0167】
図5KK乃至5QQは、タッチスクリーン112−1上のメモアプリケーションにおける対話型ポップアップビューを備えた例示的なユーザインタフェースを示す図である。また、比較のため、第2の多機能デバイス100−2のタッチスクリーン112−2上の対応するメモアプリケーションにおける対応する全画面幅ビューについてのユーザインタフェースも描いている。
【0168】
図5KK乃至5QQでは、ポップアップビュー530は、上記のように、第2の多機能デバイス100−2のタッチスクリーン112−2の横方向解像度に対応する横方向解像度を有する。
【0169】
図5KKは、横方向の向きにおける第1の多機能デバイス100−1上のメモアプリケーションの中のメモ558−1とサイドバー560−1とを示す例示的なユーザインタフェースを描いている。メモ558−1は、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい。
・戻るアイコンであって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、メモアプリケーションの中で前のメモの表示を開始する。
・次へアイコンであって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、メモアプリケーションの中の次のメモの表示を開始する。
・電子メールアイコンであって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、表示されたメモの電子メール作成を開始する。
・削除アイコンであって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、表示されたメモの削除を開始する。
・メモが作成されたかまたは最後に修正された日付を表示する日付アイコン。
・メモが作成されたかまたは最後に修正された時刻を表示するタイムスタンプ。
・新規メモアイコンであって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、新規メモの原稿作成を開始する。
【0170】
本明細書では、サイドバーは、アプリケーションのユーザインタフェースの中のメインビューに沿って表示される補助的なビューである。サイドバーは、典型的には、メインビューの左端部または右端部のいずれかに沿って表示される。サイドバーは、アプリケーションの中のメインビューと対話するように構成された情報、入力フィールド、制御部、アイコンおよびその他の選択可能なオブジェクトを含んでいてもよい。
【0171】
例えば、サイドバー560−1は、メモアプリケーションの中のメモビュー(例えばメモ558−1を持つ)に沿って表示されるビューである。サイドバー560−1は、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい。
・メモアプリケーションの中に記憶されたメモの数(例えば、「メモ4件」)
・検索入力エリアであって、例えばエリア上の指のタップまたはその他のタッチジェスチャによって)起動された場合、検索で用いられることになる検索用語の受信を開始する。
・メモアプリケーションの中に記憶されたメモのタイトルを含むメモのリスト。
【0172】
加えて、タッチスクリーン112−1は、上記のように、信号強度指標502−1、現在時刻指標504−1、および、電池残量指標506−1を含んでいる。
【0173】
また、
図5KKは、第2の多機能デバイス100−2上の対応するメモアプリケーションの中に対応するメモ558−2を表示する例示的なユーザインタフェースを描いている。第2の多機能デバイス100−2上のメモアプリケーションは、上記の要素またはそれらの下位集合または上位集合を含んでいてもよい。また、第2の多機能デバイス100−2のユーザインタフェースは、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい:502−2、504−2、506−2、それらは上記の502−1、504−1、506−1に類似している。
【0174】
図5KKおよび5LLは、第1の多機能デバイス100−1が横方向の向き(
図5KKに示す)から縦方向の向き(
図5LLに示す)に反時計回りに回転された場合にタッチスクリーン112−1に表示されるユーザインタフェースで生じる変化を示す図である。
図5LLに示すメモ558−1は、上記の要素またはそれらの下位集合または上位集合を含んでいる。サイドバー560−1は、デバイスが縦方向の向きに回転された後、第1の多機能デバイス100−1上での表示を中止される。また、
図5LLは、第2の多機能デバイス100−2上の対応する例示的なユーザインタフェースを示す。
【0175】
図5MMでは、第1の多機能デバイス100−1上のメモアイコン532−8に対応するタッチスクリーン112−1上の位置で、接触531−Aまたはその他のタッチジェスチャが検出される。同様に、第2の多機能デバイス100−2上のメモアイコン532−8’に対応するタッチスクリーン112−2上の位置で、接触531−A’またはその他のタッチジェスチャが検出される。
【0176】
図5NNは、メモアイコン532−8に対応するタッチスクリーン112−1上の位置での接触531−Aまたはその他のタッチジェスチャに応じて第1の多機能デバイス上で表示されるポップアップビュー530−5を示す図である。ポップアップビュー530−5は、サイドバー560−1に関して上述した要素を含んでいる。
【0177】
図5NNでは、ポップアップビュー530−5は、第1の多機能デバイス100−1上のメモアプリケーションの中のメモ558−1を部分的に覆う。それと比べて、第2の多機能デバイス100−2は、メモのリストを表示し、そして、メモのリストは、メモ558−2を完全に覆う。また、留意すべきだが、この例では、ポップアップビュー530−5は、第2の多機能デバイス100−2上の対応する全画面幅ビューの高さ(または垂直解像度)より高い。加えて、ポップアップビュー530−5は、第2の多機能デバイス100−2上の全画面幅ビューより多くのメモをリストするように構成されている。この例では、ポップアップビュー530−5は、10個のメモをリストするように構成されている(すなわち、デバイス内に10個以上のメモが記憶されている場合、ポップアップビュー530−5には10個がリストされる)のに対して、第2の多機能デバイス100−2上の対応する全画面幅ビューは、5個のメモをリストするように構成されている(すなわち、第2の多機能デバイス100−2に5個を超えるメモが記憶されている場合、第2の多機能デバイス100−2のディスプレイ112−2には5個だけがリストされる)。
【0178】
図5OOは、ポップアップビュー530−5の外側のタッチスクリーン112−1上の位置での接触533−Aまたはその他のタッチジェスチャの検出を示す図である。同様に、リストされたメモの1つに対応するタッチスクリーン112−2上の位置で接触533−A’が検出され、それによって、それぞれのメモが選択される。この例では、接触533−A’またはその他のタッチジェスチャが、「ハロー」と題されたメモに対応する位置で検出され、それによって、「ハロー」と題されたメモが選択される。
【0179】
図5PPでは、
図5OOに関して上述した接触533−Aまたはその他のタッチジェスチャに応じて、ポップアップビュー530−5が、第1の多機能デバイス100−1上での表示を中止される一方で、第2の多機能デバイス100−2上の対応する全画面幅ビューは、選択されたメモを表示する。また、
図5PPおよび5QQは、第1の多機能デバイス100−1が縦方向の向きから横方向の向きへ時計回りに回転された場合、第1の多機能デバイス100−1のユーザインタフェースが、以前に選択されていたもの(もしあれば)を表示することを加えてタッチスクリーン112−1上でサイドバー560−1を表示することを示す。それと比べて、第2の多機能デバイス100−2は、メモのリストを表示しない。
【0180】
図5RR乃至5KKKは、タッチスクリーン112−1上の電子メールアプリケーションにおける対話型ポップアップビューを備えた例示的なユーザインタフェースを示す図である。第2の多機能デバイス100−2のタッチスクリーン112−2は、略して描かれていない。しかし、
図5RR乃至5KKKでは、ポップアップビュー530は、上記のように、第2の多機能デバイス100−2のタッチスクリーン112−2の横方向解像度を有する。
【0181】
図5RRは、縦方向の向きの第1の多機能デバイス100−1上の電子メールアプリケーションにおいて電子メールメッセージを表示する例示的なユーザインタフェース570−1を描いている。電子メールアプリケーションのユーザインタフェース570−1は、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい。
・現行フォルダアイコン532−9であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、現行フォルダに記憶された電子メールメッセージの表示を開始し、この例では、表示された電子メールメッセージについてのフォルダは、受信箱である(すなわち、表示された電子メールメッセージは、受信箱フォルダに記憶されている)。
・送信者アイコン532−10であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、送信者についての詳細情報の表示を開始する。
・前の電子メールアイコン532−11であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、電子メールアプリケーションの中に記憶された前の電子メールメッセージの表示を開始する。
・次の電子メールアイコン532−12であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、電子メールアプリケーションの中に記憶された次の電子メールメッセージの表示を開始する。
・電子メールアプリケーションの中に記憶された電子メールメッセージの数と、表示された電子メールメッセージの位置とを示す、電子メール数指標532−13であって、この例では、電子メールアプリケーションは、4つの電子メールメッセージを有しており、表示された電子メールは、4つの電子メールメッセージの中の2番目の電子メールメッセージであり、一部の実施形態では、電子メール数指標532−13は、電子メールアプリケーションの中に記憶されたすべての電子メールメッセージの数の代わりに、現行フォルダの中に記憶された電子メールメッセージの数を示してもよい。
・フォルダアイコン532−14であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、表示された電子メールメッセージがその中へ移動されうる電子メールフォルダの表示を開始する。
・削除アイコン532−15であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、表示された電子メールメッセージの削除を開始する。
・動作アイコン532−16であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、表示された電子メールメッセージを使って行われうる動作の表示を開始する。
・新規電子メールアイコン532−18であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、新規電子メールメッセージの作文を開始する。
・詳細アイコン532−17であって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、表示された電子メールメッセージに関連する詳細情報(例えば、受信者、表示された電子メールメッセージを使って行われる動作、添付物等)の表示を開始する。
【0182】
加えて、タッチスクリーン112−1は、上記のように、信号強度指標502−1と、現在時刻指標504−1と、電池残量指標506−1とを含んでいる。
【0183】
図5SSでは、現行フォルダアイコン532−9に対応するタッチスクリーン112−1上の位置で、接触535−Aまたはその他のタッチジェスチャが検出される。この接触またはその他のタッチジェスチャに応じて、デバイス100−1が、
図5TTに示す、フォルダポップアップビュー530−6を表示する。フォルダポップアップビュー530−6は、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい。
・現行フォルダの中に記憶された電子メールメッセージのリストであって、リストは、電子メールメッセージのためのそれぞれのアイコンを含んでおり、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)それが起動された場合、電子メールアプリケーションのユーザインタフェース570−1の中に対応する電子メールメッセージの表示を開始するもので、この例では、現行フォルダは受信箱である。
・検索入力エリアであって、起動された場合、電子メールの検索のための検索用語を受信する。
・フォルダポップアップビュー530−6の更新の最終更新日と時刻とを表示するリフレッシュアイコンであって、リフレッシュアイコンは、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、フォルダポップアップビュー530−6の更新を開始する。
・メールボックスアイコンであって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、メールボックスのリスト(例えば、ユーザのメールアカウントにおけるメールボックスまたはフォルダ)の表示を開始する。
・編集アイコンであって、(例えばアイコン上の指のタップまたはその他のタッチジェスチャによって)起動された場合、(例えば、リストの編集は、電子メールメッセージのリストの中のメッセージの削除を可能とする)電子メールメッセージのリストの編集を開始する。
【0184】
また、
図5TTは、リストされた電子メールメッセージの1つに対応するタッチスクリーン112−1上の位置で接触537−Aまたはその他のタッチジェスチャが検出され、それによって、それぞれの電子メールメッセージが選択されることを示す。
図5TTに示す接触537−Aまたはその他のタッチジェスチャに応じて、
図5UUに示すように、選択された電子メールメッセージが電子メールアプリケーションのユーザインタフェース570−1に表示される。また、
図5UUは、現行フォルダアイコン532−9に対応するタッチスクリーン112−1上の位置での接触539−Aまたはその他のタッチジェスチャの検出を示す。
【0185】
図5VVは、上述したフォルダポップアップビュー530−6の表示を示す図である。また、
図5VVおよび
図5WWは、第1の多機能デバイス100−1が、縦方向の向き(
図5VV)から横方向の向き(
図5WW)へと時計回りに回転されうることを示す。横方向の向きでは、ポップアップビュー530−6は、サイドバー560−2に変換される。
【0186】
図5WWでは、リストされた電子メールメッセージの1つに対応するタッチスクリーン上の位置での接触541−Aが検出され、それによって、それぞれの電子メールメッセージが選択される。
図5XXは、選択された電子メールメッセージが電子メールアプリケーションのユーザインタフェース570−1に表示されることを示す図である。また、
図5XX、5YYおよび5ZZ乃至5AAAは、第1の多機能デバイス100−1が横方向の向き(
図5XX)から縦方向の向き(
図5YY)に時計回りに回転される場合のユーザインタフェース内の変化を示す図である。詳細には、
図5YY乃至5AAAは、縦方向の向きへの回転に応じた第1の多機能デバイス100−1の2つの実施形態を示す図である。一実施形態では、
図5YYに描いているように、(
図5XXに示す)サイドバーが、ポップアップビュー530−6に変換される。それと比べて、
図5ZZに描いている別の実施形態では、サイドバーは表示されるのを中止され、フォルダポップアップビュー530−6は、自動的には表示されない。また、
図5ZZは、現行フォルダアイコン532−9での接触543−Aの検出を示す図である。
図5AAAでは、(
図5ZZに示す)現行フォルダアイコン532−9での接触543−Aまたはその他のタッチジェスチャに応じて、ポップアップビュー530−6が表示される。
【0187】
図5BBBは、
図5AAAに示すように、フォルダポップアップビュー530−6の外側のタッチスクリーン112−1上の位置で接触545−Aまたはその他のタッチジェスチャを検出した後に、電子メールアプリケーションのユーザインタフェース570−1の中にフォルダポップアップビュー530−6が表示されるのを中止することを示す図である。
【0188】
図5CCCは、フォルダアイコン532−14(
図5BBB)に対応するタッチスクリーン112−1上の位置での接触547−Aまたはその他のタッチジェスチャの検出に応じて、それぞれの電子メールメッセージ(例えば、
図5BBBに示す現在表示されている電子メールメッセージ)を移動させるためのポップアップビュー530−7の表示を示す図である。ポップアップビュー530−7(
図5CCC)は、現在表示されているそれぞれの電子メールメッセージが移動されうるメールボックスのリスト、例えばメールボックス554−7、554−8、554−9、554−10、554−11、554−12、を含んでいる。ユーザがそれぞれのメールボックス554を(例えば、それぞれのメールボックスについてのアイコン上の指のタップまたはその他のタッチジェスチャによって)選択すると、それぞれの電子メールメッセージが、ユーザが選択したメールボックスへ移動される。
【0189】
また、
図5CCCでは、ポップアップビュー530−7を表示する際に、電子メールアプリケーションのユーザインタフェース570−1の中のそれぞれのビューも、接触547−Aに応じて修正される。具体的には、表示された電子メールメッセージのサイズが縮小され、テキストバーが表示され、それぞれのユーザに命令を提供する。テキストバーは、メッセージ移動操作をキャンセルするためのキャンセルアイコン532−19を含んでいる。
図5CCCでは、接触549−Aまたはその他のタッチジェスチャが、キャンセルアイコン532−19に対応するタッチスクリーン112−1上の位置で検出され、それに応じて、
図5DDDに示すように、ポップアップビュー530−7およびテキストバーの表示が中止される。
【0190】
図5DDDでは、接触551−Aまたはその他のタッチジェスチャが、タッチスクリーン112−1の動作アイコン532−16に対応する位置で検出される。それに応じて、電子メールアプリケーションのユーザインタフェース570−1が、
図5EEEに示すように、動作ポップアップビュー530−8を表示する。動作ポップアップビュー530−8は、表示された電子メールメッセージを使って行われうるかまたはそれに関して行われうる動作のリストを含んでいる。この例では、動作ポップアップビュー530−8は、表示された電子メールメッセージを使って行われうる動作として、返信(すなわち、メッセージ送信者への返信)、全員に返信(すなわち、メッセージの参加者全員への返信)、および転送(すなわち、表示された電子メールメッセージをユーザによって選択された連絡先または電子メールアドレスに転送する)をリストしている。
【0191】
図5EEEでは、接触553−Aまたはその他のタッチジェスチャが、タッチスクリーン112−1上のポップアップビュー530−8の外側の位置で検出される。それに応じて、動作ポップアップビュー530−8が、
図5FFFに示すように、タッチスクリーン112−1上での表示を中止する。
【0192】
図5FFFでは、接触555−Aまたはその他のタッチジェスチャが、現在表示されている電子メールメッセージの送信者を識別する、タッチスクリーン112−1上の送信者アイコン532−10に対応する位置で検出される。それに応じて、電子メールアプリケーションは、
図5GGGに示すように、ユーザインタフェース570−1の中にポップアップビュー530−9を表示する。ポップアップビュー530−9は、表示された電子メールメッセージの送信者についての情報を含んでいる。
【0193】
図5GGGでは、接触557−Aまたはその他のタッチジェスチャが、タッチスクリーン112−1上のポップアップビュー530−9の外側の位置で検出される。それに応じて、電子メールアプリケーションは、
図5HHHに示すように、ユーザインタフェース570−1の中にポップアップビュー530−9を表示するのを中止する。
【0194】
図5HHHおよび5IIIは、第1の多機能デバイス100−1が縦方向の向き(
図5HHH)から横方向の向き(
図5III)に反時計回りに回転された場合の電子メールアプリケーションのユーザインタフェース570−1における変化を示す図である。横方向の向きでは、第1の多機能デバイス100−1が、電子メールアプリケーションのユーザインタフェース570−1の中に表示された電子メールメッセージに加えて、サイドバー560−2を表示する。
【0195】
図5IIIおよび5JJJは、第1の多機能デバイス100−1が横方向の向き(
図5III)から縦方向の向き(
図5JJJ)に時計回りに回転された場合の電子メールアプリケーションのユーザインタフェース570−1における変化を示す図である。
図5JJJは、
図5IIIのサイドバー560−2と置き換わるポップアップビュー530−6の表示を示す図である。
【0196】
また、
図5JJJは、動作アイコン532−16に対応する位置での接触559−Aまたはその他のタッチジェスチャの検出を示す図である。それに応じて、電子メールアプリケーションのユーザインタフェース570−1は、
図5KKKに示すように、動作ポップアップビュー530−8を表示する。
【0197】
図5LLLは、第1の多機能デバイス100−1の設定モードにおけるタッチスクリーン112−1上の対話型ポップアップビュー530−9を備えた例示的なユーザインタフェースを示す図である。第2の多機能デバイス100−2のタッチスクリーン112−2は、略して描かれていない。しかし、
図5LLLでは、ポップアップビュー530−9は、上記のように、第2の多機能デバイス100−2のタッチスクリーン112−2の横方向解像度に対応する横方向解像度を有する。
【0198】
図5LLLでは、ポップアップビュー530−9は、以下の要素またはそれらの下位集合または上位集合を含んでいてもよい。
・現在の日付を表示する日付要素であって、起動された場合、日付要素は、現在の日付についての時刻ホイールの表示を開始する。
・現在の時間を表示する時間要素であって、起動された場合、時間要素は、現在の時刻を設定するための「時刻ホイール」オブジェクトの表示を開始する。
・現在の時刻または日付を表示する時刻ホイールオブジェクトであって、起動された場合、時刻ホイールオブジェクトは、ユーザが現在の時刻または現在の日付を編集できるようにし、
図5LLLに示す例では、時刻ホイールオブジェクトは、現在の時刻を編集することができるように構成されている。
【0199】
図6A乃至6Bは、一部の実施形態による対話型ポップアップビューを用いる方法600を示すフロー図である。また、
図6A乃至6Bは、各種の実施形態における限定(616)を含んでいる。方法600は、ディスプレイとタッチセンシティブ表面とを有する第1の多機能デバイス(例えば、
図3のデバイス300、あるいは、
図1Aまたは
図1Bの携帯用多機能デバイス100)において行われる。一部の実施形態では、ディスプレイはタッチスクリーンディスプレイ(602)であり、タッチセンシティブ表面は、ディスプレイ(例えば、
図5A乃至5LLLにおけるタッチスクリーンディスプレイ112)上にある。一部の実施形態では、ディスプレイは、タッチセンシティブ表面とは別である。以下でより詳しく述べるように、方法600の一部の操作が組み合わされてもよく、および/または、一部の操作の順序が変更されてもよい。
【0200】
以下に記すように、方法600は、第1の解像度を持つタッチスクリーンを有する第1の多機能デバイス上でポップアップビューを用いるための直感的なやり方を提供する。ユーザが、第1の多機能デバイスのタッチスクリーンの第1の解像度より低い第2の解像度を持つタッチスクリーンディスプレイを有する第2の多機能デバイスの中のアプリケーションに精通している場合、方法は、精通しているグラフィカルユーザインタフェースを提供し、それによってより効率的なヒューマン・マシン・インタフェースを実現することによって、第1の多機能デバイスの中の対応するアプリケーションを使って作業する場合、ユーザにかかる認知上の負担を軽減する。また、開発者は、第2の多機能デバイス用に開発したアプリケーションを第1の多機能デバイスに移植する場合、グラフィカルユーザインタフェースを変更する必要がないか、または、グラフィカルユーザインタフェースを実装する命令の大部分を変えないままにするかのいずれかができ、それによって、開発時間およびコストを削減する。電池で動作するコンピューティングデバイスにとっては、ユーザがアプリケーションを使ってより迅速かつより効率よく作業できるようにすることは、電力を節約し、次回の電池充電までの時間を増加させる。
【0201】
デバイスは、タッチスクリーンディスプレイ上に第1のアプリケーションのそれぞれのビューを表示する(604)。例えば、それぞれのビューとは、地図アプリケーション(例えば
図5A)、ブラウザアプリケーション(例えば
図5U)、メモアプリケーション(例えば
図5KK)、および/または電子メールアプリケーション(例えば
図5RR)のビューであってもよい。
【0202】
デバイスは、それぞれのビューの中で第1のタッチジェスチャを検出する(606)。タッチジェスチャは、タッチスクリーンディスプレイのセンサによって検出されたいずれかのジェスチャである(例えば、検出されたジェスチャは、接触507−A、519−A、523−A、531−A、535−A、539−A、543−A、547−A、551−A、555−Aのいずれかであってもよい)。
図2に関して述べたように、検出された第1のタッチジェスチャは、1つ以上の指または1つ以上のスタイラス203によって行われた、タッチスクリーン112上のまたはタッチスクリーン112の至近距離でのジェスチャである。
【0203】
第1のタッチジェスチャを検出するのに応じて、デバイスは、第1のアプリケーションのそれぞれのビューを部分的に覆う第1のアプリケーションのポップアップビューを表示する(608)。ポップアップビューは、第1の多機能デバイスのタッチスクリーンディスプレイより解像度の低いタッチスクリーンディスプレイを有する第2の多機能デバイス上の対応する第1のアプリケーションにおける全画面幅ビューに対応する。
【0204】
一部の実施形態では、ポップアップビューと対応する全画面幅ビューとは、同一である(例えば、同一の要素が同一のレイアウトで現れる)。例えば、
図5Nでは、ポップアップビュー530−2と、第2の多機能デバイス100−2上の対応する全画面幅ビューとは、同一である。
【0205】
一部の実施形態では、ポップアップビューと対応する全画面幅ビューとは、一部の要素を共通して含んでいるが、一方のビューのすべての要素が他方のビューに現れるわけではない。例えば、
図5Gでは、ポップアップビュー530−1は、道順アイコン532−4、道順アイコン532−5、電話アイコン538−1、ホームページアイコン538−2、住所アイコン538−3を含んでいる。また、第2の多機能デバイス100−2の全画面幅ビューも、対応するアイコンを含んでいる。しかし、ポップアップビュー530−1は、1つ以上の追加要素、例えば、第2の多機能デバイス100−2上の全画面幅ビューには含まれていないストリートビューアイコン538−4を含んでいる。もう1つの例として、
図5Wでは、ポップアップビュー530−3は、アイコン538−8、538−9、538−10を含んでいる。対応する全画面幅ビューは、対応するアイコン(例えばアイコン538−8’、538−9’、538−10’)だけでなく、ポップアップビュー530−3には表れない追加要素(例えばキャンセルアイコン538−7’、アドレスバー、および検索入力エリア)も含んでいる。
【0206】
一部の実施形態では、ポップアップビューと対応する全画面幅ビューとは、機能的に同一の要素を含んでいるが、機能的に同一の要素は、異なる要領でレイアウトまたは構成されている。例えば、
図5Zでは、ポップアップビュー530−4と対応する全画面幅ビューとは、(完了アイコン532−7’を除いて)同一の要素を有するが、編集アイコンは、それぞれのビューの中で異なる位置にレイアウトされている。
【0207】
一部の実施形態では、ポップアップビューは、不透明である。一部の実施形態では、ポップアップビューは透明である。その他の一部の実施形態では、ポップアップビューは半透明である。別の実施形態では、ポップアップビューの少なくとも一部は、透明または半透明である。
【0208】
一部の実施形態では、第1のタッチジェスチャを検出するのに応じて、デバイスは、ポップアップビューを表示する前に、それぞれのビューを更新する(例えば、
図5CCCに関して上述したように、タッチジェスチャに応じて、表示される電子メールメッセージの大きさが削減されて、テキストバーが表示され、それぞれのユーザに命令が提供される)。
【0209】
一部の実施形態では、第2の多機能デバイスは、1乃至4インチ(例えば2.5インチ)のスクリーン幅と、200乃至500ピクセル(例えば320ピクセル)の横方向解像度を有するポケットサイズの携帯用デバイスである。
【0210】
一部の実施形態では、ポップアップビューは、第2の多機能デバイスの横方向解像度と等しい横方向解像度を有する(624)。例えば、第2の多機能デバイスの横方向解像度が320ピクセルである場合、ポップアップビューは320ピクセルの横方向解像度を有する。一部の実施形態では、ポップアップビューは、第2の多機能デバイスの横方向解像度と実質的に等しい横方向解像度を有する(例えば、ポップアップビューの横方向解像度は、第2の多機能デバイスの横方向解像度の5%、10%、15%、または20%以内である)。
【0211】
一部の実施形態では、ポップアップビューは、第2の多機能デバイスの横方向解像度の整数の倍数である横方向解像度を有する(例えば、第2の多機能デバイスの横方向解像度が320ピクセルで、ポップアップビューの横方向解像度が640ピクセル(2倍の乗数)または960ピクセル(3倍の乗数)である)。そのような整数の倍数によって、解像度が低い方のデバイスにおけるユーザインタフェースを解像度が高い方のデバイスにおける表示に変換する効率的な方法が可能になる。一部の実施形態では、ポップアップビューは、第2の多機能デバイスの垂直解像度の整数の倍数である垂直解像度を有する(例えば、第2の多機能デバイスの垂直解像度が480ピクセルで、ポップアップビューの垂直解像度は960ピクセル(2倍の乗数)または1440ピクセル(3倍の乗数)である)。一部の実施形態では、横方向解像度のための整数の倍数と縦方向解像度のための整数の倍数とは同一である。
【0212】
一部の実施形態では、ポップアップビューは、第2の多機能デバイスのスクリーン幅と等しい幅を有する(626)。例えば、第2の多機能デバイスのスクリーン幅が2インチである場合、第1の多機能デバイスのポップアップビューは、いずれのデバイスの解像度にも関わらず、2インチの幅を有する。しかし、他の実施形態では、ポップアップビューは、第2の多機能デバイスの横方向解像度と等しい横方向解像度を有しているが(624)、第1の多機能デバイスによって表示されるポップアップビューの幅は、第2の多機能デバイスのスクリーン幅より大きい。一部の実施形態では、ポップアップビューは、第2の多機能デバイスのスクリーン幅と実質的に等しい幅を有する(例えば、ポップアップビューの幅は、第2の多機能デバイスのスクリーン幅の5%、10%、15%、または20%以内である)。
【0213】
一部の実施形態では、第2の多機能デバイスは、例えばオーディオ、ビデオ、および/または画像のようなメディアを処理することができる携帯用コンピューティングデバイスである。例えば、第2の多機能デバイスは、音楽プレーヤ、ゲームプレーヤ、ビデオプレーヤ、ビデオレコーダ、カメラ、および/または画像ビューアを含んでいてもよい。一部の実施形態では、第2の多機能デバイスには、移動電話が含まれる。第2の多機能デバイスは、典型的には電池で動作し、携帯性が高い。一部の実施形態では、第2の多機能デバイスは、例えば、ユーザのポケットに入れられるサイズのハンドヘルドデバイスである。ポケットサイズであることにより、ユーザは第2の多機能デバイスを直接持ち歩く必要がなく、従って、デバイスは、ユーザが移動するところにはほとんどどこへでも携行されうる。さらに、ユーザの手が、デスクトップのような参照表面を必要とせず、第2の多機能デバイスを操作してもよい。
【0214】
一部の実施形態では、第2の多機能デバイスは、多機能移動電話である(628)。
【0215】
また、ポップアップビューを表示した後、デバイスは、1つ以上の第2のタッチジェスチャをポップアップビューの中で検出する(610)。1つ以上の第2のタッチジェスチャをポップアップビューの中で検出するのに応じて、デバイスは、第1のアプリケーションの状態(例えば、
図1Cのアプリケーション内部状態192)を更新する第1のアプリケーションにおける動作を実行する(612)。例えば、
図5J乃至5Kでは、接触511−Aが検出され、それに応じて、第2のポップアップビュー534−1が表示される。
図5K乃至5Nでは、接触513−Aまたは513−AAが検出され、それに応じて、第3のポップアップビュー530−2が表示される。加えて、ユーザが入力した情報と、完了アイコン532−5(
図5N)をユーザが選択することとに応じて、地図アプリケーションは、ユーザのアドレス帳または連絡先リストの中に新たな連絡先についてのエントリを作成し、それがメモリの中に(例えば、メモリ102またはメモリ370の中の連絡先モジュール137のアプリケーション内部状態192の中に)記憶される。
【0216】
一部の実施形態では、第1のアプリケーションにおける動作を実行すると、第1のアプリケーションのそれぞれのビューが更新される(620)。例えば、
図5TT乃至5UUでは、接触537−Aがポップアップビュー530−6内で検出され、それに応じて、デバイス100−1が、選択された電子メールメッセージを電子メールアプリケーションのそれぞれのビューの中に表示し、ポップアップビュー530−6の表示を中止する。また、この例では、電子メールアプリケーションは、選択された電子メールメッセージを表示用の電子メールメッセージとして表すために、(例えばメモリ102またはメモリ370の中の)そのアプリケーション内部状態192を更新する。
【0217】
一部の実施形態では、第1のアプリケーションにおける動作を実行すると、第1のアプリケーションのそれぞれのビューが更新され、ポップアップビューの表示が中止される(622)。例えば、
図5TT乃至5UUでは、デバイス100−1が、上記のように、電子メールアプリケーションのそれぞれのビューを更新する。加えて、電子メールアプリケーションは、ポップアップビュー530−6の表示を中止する。
【0218】
上述のように、所定のユーザ動作に応じて、デバイスはポップアップビューの表示を中止する(614)。例えば、
図5X乃至5Yでは、接触521−Aを検出するのに応じて、デバイス100−1は、ポップアップビュー530−3の表示を中止する。さらなる例は、
図5II乃至5JJ、5OO乃至5PP、5AAA乃至5BBB、5EEE乃至5FFF、5GGG乃至5HHHで見られる。
【0219】
一部の実施形態では、第2の多機能デバイス上の対応する第1のアプリケーションの中の対応する全画面幅ビューを実装する実行可能な命令と実質的に同じ、第1の多機能デバイスのための実行可能な命令によって、ポップアップビューが実装される(618)。例えば、
図5A乃至5LLLでは、第1の多機能デバイス100−1上の地図アプリケーション(例えば
図5A)、ブラウザアプリケーション(例えば
図5U),メモアプリケーション(例えば
図5KK)、および/または電子メールアプリケーション(例えば
図5RR)が、第2の多機能デバイス100−2上の対応するアプリケーションにおける対応する全画面幅ビューを実装する命令と、実質的に同じ実行可能な命令を有してもよい。実質的に同じ実行可能な命令を有していると、開発者が第1の多機能デバイスについてのアプリケーションと第2の多機能デバイスについての対応するアプリケーションとを書くのがより迅速かつより容易になる。例えば、ポケットサイズの多機能デバイス(例えばスマートフォン)上で実行されることになるアプリケーションを書いた開発者なら、より大きい多機能デバイス(例えばタブレットコンピュータ)上で実行されることになる対応するアプリケーションを容易に書くことができる。加えて、第1および第2の多機能デバイス上のそれぞれのアプリケーションのユーザインタフェースは、同様に振る舞うであろうし、それによって、ユーザが第1および第2の多機能デバイス上でそれぞれのアプリケーションを用いる際に学習して熟練するのに必要な時間は減少するであろう。例えば、ポケットサイズの多機能デバイス(例えばスマートフォン)上のアプリケーションの使い方を知っているユーザは、より大きい多機能デバイス(例えばタブレットコンピュータ)上の対応するアプリケーションを、少しの訓練を追加するかまたはまったく訓練を追加せずに使用することができるであろう。
【0220】
一部の実施形態では、第1の多機能デバイスについての(以下にさらに定義するように)実行可能な命令と、第2の多機能デバイスについての実行可能な命令とは、実行可能な命令の少なくとも実質的な部分(例えば、実行可能な命令の50、75、もしくは90%)が同一である場合、実質的に同じである。第1の多機能デバイスについての前述の実行可能な命令が、ポップアップビューを表示する必要があるアプリケーション内の第1の多機能デバイスについての命令の集合を参照し、ポップアップビューの中で1つ以上のジェスチャを検出し、そして、ジェスチャに応じて1つ以上の動作を行う。
【0221】
一部の実施形態では、ポップアップビューを表示している間に、デバイスは、第1の多機能デバイスの縦方向の向きから横方向の向きへの回転を検出し、そして、回転を検出した時点で、ポップアップビューを、それぞれのビューに沿ったサイドバーに変換する(630)。例えば、
図5VV乃至5WWでは、デバイス100−1は、縦方向の向きから横方向の向きへの回転を検出し、回転を検出した時点で、ポップアップビュー530−6をそれぞれのビューに沿ったサイドバー560−2に変換する。
【0222】
図7A乃至7Bは、一部の実施形態によるポップアップビューをサイドバーに変換する方法700を示すフロー図である。方法700は、ディスプレイとタッチセンシティブ表面と1つ以上の加速度計とを備えた第1の多機能デバイス(例えば
図3のデバイス300または
図1の携帯用多機能デバイス100)において行われる(702)。一部の実施形態では、ディスプレイはタッチスクリーンディスプレイであり、タッチセンシティブ表面は、ディスプレイ(例えば、
図5A乃至5LLLにおけるタッチスクリーンディスプレイ112)上にある。一部の実施形態では、ディスプレイは、タッチセンシティブ表面とは別である。方法700の一部の操作は組み合わされてもよく、および/または、一部の操作の順序は変更されてもよい。
【0223】
また、留意すべきだが、上記の方法600(例えば
図6A乃至6B)の詳細は、同様の要領で、以下に記す方法にも適用可能である。これらの詳細は、略して、以下では繰り返さない。
【0224】
以下に記すように、方法700は、多機能デバイスの表示エリア全体を利用する改善策を提供する。デバイスが特定の向きをしている場合、デバイスは、アプリケーションをより効率的に使用させる関連情報も同時に表示することができる。この方法は、関連情報を検索する余分なステップをなくし、また、アプリケーションを使って作業する場合、関連情報を同時表示の中に見つけやすくし、それによって、より効率的なヒューマン・マシン・インタフェースを実現することによって、ユーザにかかる認知上の負担を軽減する。電池で動作するコンピューティングデバイスにとっては、ユーザがアプリケーションを使ってより迅速かつより効率よく作業できるようにすることは、電力を節約し、次回の電池充電までの時間を増加させる。
【0225】
デバイスは、縦方向の向きのタッチスクリーンディスプレイ上に第1のアプリケーションのそれぞれのビューを表示する(704)。デバイスは、それぞれのビューの中で第1のタッチジェスチャを検出する(706)。第1のタッチジェスチャの検出に応じて、デバイスは、第1のアプリケーションのそれぞれのビューを部分的に覆う第1のアプリケーションのポップアップビューを表示する(708)。ポップアップビューを表示した後、デバイスは、ポップアップビュー内の1つ以上の第2のタッチジェスチャを検出する(710)。ポップアップビュー内の1つ以上の第2のタッチジェスチャを検出するのに応じて、デバイスは、第1のアプリケーションの中で、第1のアプリケーションの状態(例えば、
図1Cのアプリケーション内部状態192)を更新する動作を行う(712)。
【0226】
ポップアップビューを表示している間に、デバイスは、縦方向の向きから横方向の向きへの多機能デバイスの回転を1つ以上の加速度計を用いて検出する(714)。回転を検出するのに応じて、デバイスは、それぞれのビューを横方向の向きに変換し、ポップアップビューを横方向の向きにおけるそれぞれのビューに沿ったサイドバーに変換する(716)。例えば、
図5VV乃至5WWでは、デバイス100−1は、縦方向の向きから横方向の向きへの回転を1つ以上の加速度計を用いて検出する。それに応じて、デバイス100−1は、それぞれのビューを横方向の向きに変換し、ポップアップビュー530−6を横方向の向きのそれぞれのビューに沿ったサイドバー560−2に変換する。
【0227】
方法700は、任意で、各種の実施形態における1つ以上のさらなる限定(718)を含んでいる。また、一部の実施形態では、デバイスは、それぞれのビューに沿ったサイドバーの表示を維持しながら、サイドバーの中のタッチジェスチャを検出してそれらに応答する(720)。例えば、
図5WWでは、デバイス100−1は、それぞれの電子メールメッセージを選択する、サイドバー560−2の中の接触541−Aを検出して、選択された電子メールメッセージをタッチスクリーン112−1に表示することによって応答する。
【0228】
また、一部の実施形態では、デバイスは、横方向の向きから縦方向の向きへの多機能デバイスの回転を1つ以上の加速度計を用いて検出する(722)。横方向の向きから縦方向の向きへの多機能デバイスの回転を検出するのに応じて、デバイスは、サイドバーの表示を中止し、それぞれのビューを縦方向の向きに変換する(722)。例えば、
図5XXおよび5ZZでは、デバイス100−1は、横方向の向きから縦方向の向きへの回転を検出する。それに応じて、デバイス100−1は、サイドバー560−2の表示を中止し、それぞれのビューを縦方向の向きに変換する。
【0229】
一部の実施形態では、サイドバーの表示を中止した後、デバイスは、それぞれのビューの中で第3のタッチジェスチャを検出する(724)。第3のタッチジェスチャを検出するのに応じて、デバイスは、それぞれのビューを部分的に覆うポップアップビューを表示する。例えば、
図5ZZ乃至5AAAでは、デバイス100−1は、接触543−Aを検出して、ポップアップビュー530−6を表示する。
【0230】
一部の実施形態では、デバイスは、横方向の向きから縦方向の向きへの多機能デバイスの回転を1つ以上の加速度計を用いて検出する(726)。横方向の向きから縦方向の向きへの多機能デバイスの回転を検出するのに応じて、デバイスは、それぞれのビューを縦方向の向きに変換し、それぞれのサイドバーを、縦方向の向きにおけるそれぞれのビューの中の対応するポップアップビューに変換する。例えば、
図5XX乃至5YYでは、デバイス100−1は、横方向の向きから縦方向の向きへの回転を検出する。それに応じて、デバイス100−1は、それぞれのビューを縦方向の向きに変換し、サイドバー560−2をポップアップビュー530−6に変換する。別の例を、
図III乃至5JJJに描いている。
【0231】
一部の実施形態によると、
図8は、上記の本発明の原理に従って構成された多機能デバイス800の機能ブロック図である。デバイスの機能ブロックは、本発明の原理を実行するため、ハードウェア、ソフトウェア、あるいは、ハードウェアとソフトウェアとの組み合わせによって実装されてもよい。当業者であれば理解することだが、
図8に述べる機能ブロックは、上記の本発明の原理を実装するため、組み合わされても、あるいはサブブロックに分けられてもよい。従って、本明細書の記述は、本明細書に述べられた機能ブロックのいずれかの起こりうる組み合わせ、分離、またはさらなる定義をサポートしうる。
【0232】
図8に示すように、第1の多機能デバイス800は、第1のアプリケーション804のそれぞれのビューを表示するタッチスクリーンディスプレイユニット802を含んでいる。タッチスクリーンディスプレイユニット802には、処理ユニット808が接続される。一部の実施形態では、処理ユニット802は、ジェスチャ検出ユニット810と、表示可能化ユニット811と、実行ユニット812と、中止ユニット814と、回転検出ユニット816と、変換ユニット818とを含んでいる。
【0233】
処理ユニット802は、タッチスクリーンディスプレイユニット802上のそれぞれのビュー804の中で第1のタッチジェスチャを(例えば、ジェスチャ検出ユニット810を使って)検出し、第1のタッチジェスチャを検出するのに応じて、第1のアプリケーション804のそれぞれのビューを部分的に覆う第1のアプリケーション806のポップアップビューのタッチスクリーンディスプレイユニット802上の表示を(例えば表示可能化ユニット811を使って)可能にするように構成されており、ここで、ポップアップビュー806は、第1の多機能デバイスのタッチスクリーンディスプレイユニットより解像度の低いタッチスクリーンディスプレイを有する第2の多機能デバイス上の対応する第1のアプリケーションの全画面幅ビューに対応し、かつ、処理ユニット802は、タッチスクリーンディスプレイユニット802上のポップアップビュー806の中の1つ以上の第2のタッチジェスチャを(例えば、ジェスチャ検出ユニット810を使って)検出し、ポップアップビュー806の中の1つ以上の第2のタッチジェスチャを検出するのに応じて、第1のアプリケーションの状態を更新する第1のアプリケーションにおける動作を(例えば、実行ユニット812を使って)実行し、そして、タッチスクリーンディスプレイユニット802上にポップアップビュー806を表示するのを(例えば中止ユニット818を使って)中止するように構成されている。
【0234】
一部の実施形態では、ポップアップビュー806は、第2の多機能デバイス上の対応する第1のアプリケーションの中の全画面幅ビューを実装する実行可能な命令と実質的に同じ実行可能な命令によって実装される。
【0235】
一部の実施形態では、第1のアプリケーションにおける動作を実行すると、タッチスクリーンディスプレイユニット802上で第1のアプリケーション804のそれぞれのビューが更新される。
【0236】
一部の実施形態では、第1のアプリケーションにおける動作を実行すると、第1のアプリケーション804のそれぞれのビューが更新され、タッチスクリーンディスプレイユニット802上のポップアップビュー806の表示が中止される。
【0237】
一部の実施形態では、タッチスクリーンディスプレイユニット802上のポップアップビュー806は、第2の多機能デバイスの横方向解像度に等しい横方向解像度を有する。
【0238】
一部の実施形態では、タッチスクリーンディスプレイユニット802上のポップアップビュー806は、第2の多機能デバイスのスクリーン幅に等しい幅を有する。
【0239】
一部の実施形態では、第2の多機能デバイスは、多機能移動電話である。
【0240】
一部の実施形態では、処理ユニット802は、さらに、タッチスクリーンディスプレイユニット802上のポップアップビューを表示している間、縦方向の向きから横方向の向きへの第1の多機能デバイスの回転を(例えば回転検出ユニット816を使って)検出し、それから、回転の検出に応じて、
図5VV乃至5WWに示すように、ポップアップビュー806を、タッチスクリーンディスプレイユニット802上のそれぞれのビュー804に沿ったサイドバービューに(例えば変換ユニット818を使って)変換するように構成される。
【0241】
一部の実施形態に従って、
図9は、上記の本発明の原理に従って構成された多機能デバイス900の機能ブロック図を示す。デバイスの機能ブロックは、本発明の原理を実行するため、ハードウェア、ソフトウェア、あるいは、ハードウェアとソフトウェアとの組み合わせによって実装されてもよい。当業者であれば理解することだが、
図9に述べる機能ブロックは、上記の本発明の原理を実装するため、組み合わされても、あるいはサブブロックに分けられてもよい。従って、本明細書の記述は、本明細書に述べられた機能ブロックのいずれかの起こりうる組み合わせ、分離、またはさらなる定義をサポートしうる。
【0242】
図9に示すように、多機能デバイスは、第1のアプリケーション904のそれぞれのビューを縦方向の向きに表示するタッチスクリーンディスプレイユニット902と、向きの検出のためのデータを提供するように構成された1つ以上の加速度計908と、タッチスクリーンディスプレイユニット902および1つ以上の加速度計908に接続された処理ユニット910とを含んでいる。一部の実施形態では、処理ユニット910は、ジェスチャ検出ユニット912と、表示可能化ユニット913と、実行ユニット914と、回転検出ユニット915と、変換ユニット916と、中止ユニット918とを含んでいる。
【0243】
処理ユニット910は、タッチスクリーンディスプレイユニット902上のそれぞれのビューの中で第1のタッチジェスチャを(例えば、ジェスチャ検出ユニット912を使って)検出し、第1のタッチジェスチャを検出するのに応じて、タッチスクリーンディスプレイユニット902上の第1のアプリケーション904のそれぞれのビューを部分的に覆う第1のアプリケーションのポップアップビュー906の表示を(例えば表示可能化ユニット913を使って)可能にし、タッチスクリーンディスプレイユニット902上のポップアップビュー906の中の1つ以上の第2のタッチジェスチャを(例えばジェスチャ検出ユニット912を使って)検出し、ポップアップビュー906の中の1つ以上の第2のタッチジェスチャを検出するのに応じて、第1のアプリケーションの状態を更新する第1のアプリケーションの中の動作を(例えば実行ユニット914を使って)実行し、タッチスクリーンディスプレイユニット902上にポップアップビュー906を表示している間に、1つ以上の加速度計908を用いて縦方向の向きから横方向の向きへの多機能デバイスの回転を(例えば回転検出ユニット915を使って)検出し、そして、回転を検出するのに応じて、タッチスクリーンディスプレイユニット902上のそれぞれのビューを(例えば変換ユニット916を使って)横方向の向きに変換し、ポップアップビュー906を、タッチスクリーンディスプレイユニット902上の横方向の向きにおけるそれぞれのビューに沿ったサイドバービューに(例えば変換ユニット916を使って)変換するように構成される。
【0244】
一部の実施形態では、処理ユニット910は、さらに、タッチスクリーンディスプレイユニット902上のそれぞれのビューに沿ったサイドバーの表示を維持しながら、サイドバーにおけるタッチジェスチャを(例えばジェスチャ検出ユニット912を使って)検出してそれに応じるように構成される。
【0245】
一部の実施形態では、処理ユニット910は、さらに、横方向の向きから縦方向の向きへの多機能デバイスの回転を1つ以上の加速度計を用いて(例えば回転検出ユニット915を使って)検出し、そして、横方向の向きから縦方向の向きへの多機能デバイスの回転を検出するのに応じて、サイドバーを表示するのを(例えば中止ユニット918を使って)中止し、タッチスクリーンディスプレイユニット902上のそれぞれのビューを縦方向の向きに(例えば変換ユニット916を使って)変換するように構成される。
【0246】
一部の実施形態では、処理ユニット910は、さらに、サイドバーの表示を中止した後に、タッチスクリーンディスプレイユニット上のそれぞれのビューの中で第3のタッチジェスチャを(例えばジェスチャ検出ユニット912を使って)検出し、そして、第3のタッチジェスチャを検出するのに応じて、タッチスクリーンディスプレイユニット902上のそれぞれのビューを部分的に覆うポップアップビュー906の表示を(例えば表示可能化ユニット913を使って)可能にするように構成される。
【0247】
一部の実施形態では、処理ユニットは、さらに、横方向の向きから縦方向の向きへの多機能デバイスの回転を1つ以上の加速度計を用いて(例えば回転検出ユニット915を使って)検出し、そして、横方向の向きから縦方向の向きへの多機能デバイスの回転を検出するのに応じて、それぞれのビューを縦方向の向きに(例えば変換ユニット916を使って)変換し、サイドバーを、タッチスクリーンディスプレイユニット902上の縦方向の向きにおけるそれぞれのビューの中のポップアップビューに(例えば変換ユニット916を使って)変換するように構成される。
【0248】
上記の情報処理方法における操作は、1つ以上の機能モジュールを、例えば汎用プロセッサまたは特定用途チップのような情報処理装置の中で実行することによって実装されてもよい。これらのモジュールと、これらのモジュールの組み合わせと、および/または(例えば、
図1A、1Bおよび3に関して上述したように)一般的ハードウェアとそれらの組み合わせとが、本発明の保護の範囲内にすべて含まれている。
【0249】
図6A、6B、7A、7Bに関して上述した操作は、
図1A乃至1Cに描いた構成要素によって実装されてもよい。例えば、検出動作610、動作実行操作612、および、回転検出および応答操作630は、イベントソータ170、イベントレコグナイザ180、およびイベントハンドラ190によって実装されてもよい。イベントソータ170の中のイベントモニタ171は、タッチセンシティブディスプレイ112上の接触を検出し、イベント発送モジュール174は、イベント情報をアプリケーション136−1に配信する。アプリケーション136−1のそれぞれのイベントレコグナイザ180は、イベント情報をそれぞれのイベント定義186と比較して、タッチセンシティブ表面上の第1の位置での第1の接触(または、デバイスの回転)が、例えばユーザインタフェース上のオブジェクトの選択、または、1つの向きから別の向きへのデバイスの回転のような、事前設定されたイベントもしくはサブイベントに対応するかどうかを判定する。それぞれの事前設定されたイベントもしくはサブイベントが検出された場合、イベントレコグナイザ180は、イベントもしくはサブイベントの検出に関連するイベントハンドラ180を起動する。イベントハンドラ180は、データ更新器176またはオブジェクト更新器177を利用するかまたは呼び出して、アプリケーション136−1データの内部状態を更新してもよい。一部の実施形態では、イベントハンドラ180は、アプリケーションによって表示されているものを更新するため、それぞれのGUI更新器178にアクセスする。同様に、その他のプロセスが、
図1A乃至1Cに描かれた構成要素に基づいてどのように実装されうるかは、当業者には明らかであろう。
【0250】
説明のための前述の記述は、特定の実施形態に関して記述してきた。しかし、上記の例示的議論は、網羅的であることも、開示されたのと違わぬ形態に本発明を限定することも、意図されていない。上記の教示内容に照らして、多くの修正形態および変形形態が可能である。実施形態は、本発明の原理を最も良く説明し、それによって当業者が本発明と、意図された個別の用途に適した各種の修正を伴う各種の実施形態とを最も良く利用できるようにすることを目的として選ばれ、記述されてきた。