(57)【要約】様々な実施形態は、個々のタブのリソース利用を積極的にモニタリングして効果的に管理する。少なくとも一部の実施形態において、１つ又は複数のタブが、様々な操作パラメータに従って退避され、ユーザが特定のタブを実際にアクティブにしたときに回復される。少なくとも一部の実施形態において、回復はタブごとに起こり、少なくとも一部のタブは退避されたままである。退避タブは、少なくとも一部の実施形態において、通常のアクティブタブが提示される手法で、ユーザに対して視覚的に提示される。
2014523056.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによって実装される方法であって、
ウェブブラウザの複数のタブに関連付けられた状態情報を保存するステップと、
前記ウェブブラウザを終了するステップと、
前記ウェブブラウザを開始するステップと、
前記ウェブブラウザが終了した時にアクティブであったタブを回復するステップと、
少なくとも１つの他のタブを退避状態に保持するステップと、
前記少なくとも１つの他のタブがユーザによって選択されたかどうかを確認するステップと、
前記少なくとも１つの他のタブが選択されたことに応答して、前記少なくとも１つのタブを回復するステップと
を含む、方法。
【請求項２】
前記の保存するステップが周期的に実行される、請求項１に記載のコンピュータによって実装される方法。
【請求項３】
前記の保存するステップは、前記ウェブブラウザが一時停止状態にされたことに応答して実行される、請求項１に記載のコンピュータによって実装される方法。
【請求項４】
前記状態情報は、特定のタブに関連付けられたＵＲＬと、前記複数のタブに関連付けられたトラベルログと、どのタブが現在アクティブであるかという情報と、フォームデータと、スクロール状態／位置と、ズームレベルと、メディア再生の状態とのうちの１つ又は複数を含む、請求項１に記載のコンピュータによって実装される方法。
【請求項５】
前記少なくとも１つの他のタブを、アクティブなタブを提示する手法で視覚的に提示するステップを更に含む、請求項１に記載のコンピュータによって実行される方法。
【請求項６】
前記少なくとも１つの他のタブを、アクティブなタブを提示する手法で視覚的に提示するステップを更に含み、当該視覚的に提示することは、前記少なくとも１つの他のタブに関連付けられたタイトルとサムネイルイメージとを視覚的に提示することを含む、請求項１に記載のコンピュータによって実行される方法。
【請求項７】
前記の確認するステップは、前記少なくとも１つの他のタブがタッチ入力を介して選択されたかどうかを確認することを含む、請求項１に記載のコンピュータによって実行される方法。
【請求項８】
コンピュータ読取可能命令を具現化する１つ又は複数のコンピュータ読取可能記憶媒体であって、前記コンピュータ読取可能命令は、実行されると、
ウェブブラウザを一時停止すべきとの通知を受信するステップと、
前記通知を受信したことに応答して、前記ウェブブラウザの複数のタブに関連付けられた状態情報を保存するステップと、
前記ウェブブラウザが終了状態から戻ることに応答して、１つ又は複数の退避タブに関連付けられた１つ又は複数の可視表現を表示するステップであって、前記１つ又は複数の可視表現は、アクティブなタブに関連付けられた可視表現と同じ又は同様のタイプの可視表現である、ステップと
を含む方法を実行させる、コンピュータ読取可能記憶媒体。
【請求項９】
前記状態情報は、特定のタブに関連付けられたＵＲＬと、前記複数のタブに関連付けられたトラベルログと、どのタブが現在アクティブであるかという情報と、フォームデータと、スクロール状態／位置と、ズームレベルと、メディア再生の状態とのうちの１つ又は複数を含む、請求項８に記載の１つ又は複数のコンピュータ読取可能記憶媒体。
【請求項１０】
前記方法は、前記ウェブブラウザが終了状態に入る前にアクティブであったタブを回復するステップをさらに含む、請求項８に記載の１つ又は複数のコンピュータ読取可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オンデマンドのタブ回復（ｒｅｈｙｄｒａｔｉｏｎ）に関する。
【背景技術】
【０００２】
ウェブブラウザは、大量のシステムリソースを消費することがあり、これは、ユーザのウェブブラウズエクスペリエンスに影響を与えるだけでなく、ユーザの全体的なシステムエクスペリエンスも低下させ得る。複数のタブを開く機能により、多くのタブを開きすぎること及び使用していないタブを閉じないことで、ユーザが無意識のうちにシステム性能に影響を与えることが増加しやすくなっている。さらに、ユーザが特定のタブ内でブラウズする個々のウェブページのそれぞれのリソース利用を制御することは非常に難しい。
【発明の概要】
【０００３】
この発明の概要は、以下の詳細な説明においてさらに説明される概念の選択を簡略化した形で紹介するのに提供される。この発明の概要は、特許請求される主題の主要な特徴又は本質的特徴を特定するようには意図されておらず、また特許請求される主題の範囲を決定する際の助けとして用いられるようにも意図されていない。
【０００４】
様々な実施形態は、個々のタブのリソース利用を積極的にモニタリングして効果的に管理する。少なくとも一部の実施形態において、１つ又は複数のタブが、様々な操作パラメータ（ｏｐｅｒａｔｉｏｎａｌ  ｐａｒａｍｅｔｅｒ）に従って退避（ｄｅｈｙｄｒａｔｅ）され、ユーザが特定のタブを実際にアクティブ化すると回復（ｒｅｈｙｄｒａｔｅ）される。少なくとも一部の実施形態において、回復はタブごとに起こり、少なくとも一部のタブは退避されたままである。
【０００５】
少なくとも一部の実施形態において、退避されたタブは、通常のアクティブなタブが提示されるときと同じように、ユーザに対して視覚的に提示される。したがって、ユーザエクスペリエンスの観点からは、全てのタブがアクティブに見える。少なくとも一部の実施形態において、退避されたタブは、関連付けられた状態が保存されるので、ある退避タブが回復されると、ユーザの視点から一般にシームレスな手法によりその状態を復元することができる。
【０００６】
下記の発明を実施するための形態の項において、添付の図面を参照しながら実施形態について詳細に説明する。
【図面の簡単な説明】
【０００７】
【図１】１つ又は複数の実施形態にかかる例示的実装における環境を示す図である。
【図２】図１をより詳細に示す例示的実装におけるシステムを示す図である。
【図３】１つ又は複数の実施形態にかかる方法のステップを説明するフロー図である。
【図４】１つ又は複数の実施形態にかかる例示的なコンピューティングデバイスを示す図である。
【図５】１つ又は複数の実施形態にかかる方法のステップを説明するフロー図である。
【図６】１つ又は複数の実施形態にかかる方法のステップを説明するフロー図である。
【図７】本明細書で説明される様々な実施形態を実装するのに用いることができる例示的なコンピューティングデバイスを示す図である。
【発明を実施するための形態】
【０００８】
＜概要＞
様々な実施形態は、個々のタブのリソース利用を積極的にモニタリングして効果的に管理する。少なくとも一部の実施形態において、１つ又は複数のタブが、様々な操作パラメータに従って退避され、ユーザが特定のタブを実際にアクティブ化するときに回復される。少なくとも一部の実施形態において、回復はタブごとに起こり、少なくとも一部のタブは退避されたままである。
【０００９】
少なくとも一部の実施形態において、退避タブは、通常のアクティブなタブが提示される手法でユーザに対して視覚的に提示される。したがって、ユーザエクスペリエンスの観点からは全てのタブがアクティブに見える。少なくとも一部の実施形態において、退避タブが回復されるときに、ユーザの視点から一般的にシームレスな手法で状態を復元することができるように、退避タブは、保存された関連付けられた状態を有する。
【００１０】
以下の議論では、初めに、本明細書で説明される技術を用いるのに動作可能な例示的環境を説明する。次に、「オンデマンドのタブ回復」と題したセクションでは、１つ又は複数の実施形態により、タブがオンデマンドでどのように回復されるかを説明する。この次の「退避タブの可視表現（ｖｉｓｕａｌｉｚａｔｉｏｎ）」と題したセクションでは、１つ又は複数の実施形態により、退避されたタブがどのように視覚化されるかを説明する。最後に、「例示的デバイス」と題したセクションでは、１つ又は複数の実施形態を実装するのに用いることができる例示的デバイスの態様を説明する。
【００１１】
説明される諸実施形態の概要を踏まえて、様々な実施形態が動作することができる例示的環境の検討を行う。
【００１２】
＜例示的環境＞
図１は、本明細書で説明される技術を用いるように動作可能な例示的実装の環境１００の図である。図示される環境１００は、様々な方法で構成されるコンピューティングデバイス１０２の例を含む。例えば、コンピューティングデバイス１０２は、従来型のコンピュータ（例えば、デスクトップパーソナルコンピュータ、ラップトップコンピュータなど）、モバイルステーション、娯楽用電化製品、テレビに通信可能に結合されるセットトップボックス、ワイヤレスフォン、ネットブック、ゲームコンソール、ハンドヘルドデバイス及び図２に関連してさらに説明されるような他のものなどとして構成される。１つ又は複数の実施形態において、コンピューティングデバイスは、スレート型またはタブレット型のフォームファクタデバイスとして具現化され、このようなデバイスは典型的に、ユーザにより片手で保持され、もう一方の手を使用して対話が行われる。
【００１３】
したがって、コンピューティングデバイス１０２は、相当のメモリ及びプロセッサリソースを有する完全なリソースデバイス（例えば、パーソナルコンピュータ、ゲームコンソール、スレート型又はタブレット型のフォームファクタデバイス）から、限定的なメモリ及び／又は処理リソースを有する低リソースデバイス（例えば、従来のセットトップボックス、ハンドヘルドゲームコンソール）にまで及ぶ。コンピューティングデバイス１０２は、該コンピューティングデバイス１０２に、以下で説明される１つ又は複数の動作を実行させるソフトウェアモジュールも含む。
【００１４】
コンピューティングデバイス１０２は、本明細書で説明されるウェブブラウズ機能を提供するように動作するウェブブラウザ１０４を含め、様々なアプリケーションを含む。ウェブブラザは、任意の適切なタイプのハードウェア、ソフトウェア、ファームウェア又はこれらの組み合わせとともに実装されることができる。少なくとも一部の実施形態において、ウェブブラウザは、以下で例示が提示される、何らかのタイプの有形のコンピュータ読取可能媒体に存在するソフトウェアで実装される。
【００１５】
ウェブブラウザ１０４は、この例において、ジェスチャモジュール１０６及びウェブブラウザユーザインタフェースモジュール１０８を含むか、そうでなくとも使用することができる。コンピューティングデバイスは、リソース管理ポリシーモジュール１１２を含むオペレーティングシステム１１０も含む。
【００１６】
ジェスチャモジュール１０６は、ウェブブラウジングアクティビティとともに用いられる多種多様なジェスチャを理解することができる機能を表す。ジャスチャは、モジュール１０６によって様々な異なる方法で理解され得る。例えば、ジェスチャモジュール１０６は、タッチスクリーン機能を使用するコンピューティングデバイス１０２のディスプレイデバイス１０７に近接するユーザの手１０６ａの指などの、タッチ入力を理解するように構成される。あるいはまた、コンピューティングデバイス１０２は、（例えば、ユーザの手１０６ａの１又は複数の指によって提供される）タッチ入力と、スタイラスによって提供されるスタイラス入力との間の相違を検出して区別するように構成される。この区別は、ユーザの手１０６ａの指によって接触されるディスプレイデバイス１０７の量に対する、スタイラスによって接触されるディスプレイデバイス１０７の量を検出することなど、様々な方法によって実行される。
【００１７】
したがって、ジェスチャモジュール１０６は、スタイラス入力とタッチ入力との間、並びに異なるタイプのタッチ入力の区分の認識と利用を通じて、様々な異なるジェスチャ技術をサポートすることができる。
【００１８】
ウェブブラウザユーザインタフェースモジュール１０８は、この特定の例において、ユーザがより十分に、ウェブブラウザによって表示されるウェブページコンテンツに没頭することを可能にするウェブブラウザユーザインタフェースを提供するように構成される。１つ又は複数の実施形態は、「コンテンツ・オーバー・クローム」アプローチを重視する。「コンテンツ・オーバー・クローム」アプローチは、コンテンツを効果的な手法で表示し、１つ又は複数のタブを含むタブバンドなどのブラウザ手段（ｂｒｏｗｓｅｒ  ｉｎｓｔｒｕｍｅｎｔａｌｉｔｙ）の表示を管理して、ユーザが、特定の最新のユーザタスクにより効果的に集中することができるようにする。
【００１９】
オペレーティングシステム１１０のリソース管理ポリシーモジュール１１２は、少なくとも部分的に、システムリソースの効果的な管理を監督する責任を負う。このために、リソース管理ポリシーモジュール１１２は、ウェブブラウザ１０４を含め、様々なアプリケーションの動作を監督し、アプリケーションに、例えばシステムリソースの状態に応じて、様々な状態に入らせることができる。
【００２０】
例えば、アプリケーションは、リソース管理ポリシーモジュール１１２によって、一時停止状態にされることがある。これは、例えば、アプリケーションが、バックグラウンドに置かれるなど、ユーザの現在のアクティビティの一番の関心事ではない場合などに起こりうる可能性がある。一時停止状態において、アプリケーションは依然としてメモリ内に存在し、そして開かれたままである。しかしながら、アプリケーションは、一時停止状態の間はＣＰＵサイクルを受け取らない。アプリケーションが一時停止状態をとるべきであるとき、オペレーティングシステム、又はこの場合は、リソース管理ポリシーモジュール１１２は、アプリケーションをコールして、該アプリケーションに一時停止状態をとるべきであることを知らせることができる。このコールを受信したことに応答して（又は、周期的などの他の時において）、アプリケーションは、様々な状態情報を保存するステップをとることができ、その結果、アプリケーションが閉じられる又は終了される場合において、アプリケーションが再びアクティブになったときに終了前の状態（ｐｒｅ−ｔｅｒｍｉｎａｔｅｄ  ｓｔａｔｅ）から動作を再開することが可能になる。
【００２１】
さらに、上記で示唆されるように、アプリケーションは、リソース管理ポリシーモジュール１１２によって終了状態にされることがある。１つ又は複数の実施形態において、終了状態は一時停止状態の後に続いて起こる。終了状態では、オペレーティングシステムによりアプリケーションを閉じられることとなる。終了状態は、いくつかの理由によって生じることがあり、例えば、特定のアプリケーションに関する非アクティブ化の周期、システムリソースプレッシャーなどを含むが、これらには限定されない。その後、ユーザが終了したアプリケーションに戻ると、該アプリケーションが開始され、以前に保存された状態情報が読み出されて、アプリケーションが終了前の状態に戻るのに使用される。
【００２２】
ウェブブラウザのコンテキストにおいて、ウェブブラウザが、一時停止すべきとの指示を受信すると、ウェブブラウザは、一時停止する前の最新の操作に関連付けられた、様々な状態情報を保存することができる。この状態情報をタブごとに保存することができ、この状態情報は、限定ではなく例として、特定のタブに関連付けられたＵＲＬ、タブに関連付けられたトラベルログ、どのタブを開くべきか、どのタブが現在アクティブか、フォームデータ、スクロール状態／位置、ズームレベル、メディア再生の状態などを含むことができる。このドキュメントのコンテキストにおいて、退避は、１つ又は複数の特定のタブに関連付けられた状態情報を保存する概念（ｎｏｔｉｏｎ）を指す。退避は、周期的に、又はウェブブラウザが一時停止されるか、バックグラウンドに置かれているとの通知を受信するなどの何らかのイベントに応答して起こることがある。
【００２３】
１つ又は複数の実施形態において、タブ退避の一部として、タブのタイトル、及びタブに関連付けられたサムネイルイメージをディスクに保存することができる。サムネイルイメージは、タブの内容に関連付けられたアイコン又はタブのウェブページのサムネイルイメージなど、任意のタイプのイメージを備えることができる。ウェブブラウザがその後、終了状態に置かれることによって終了すると、タブを回復することができるように、関連する状態情報が保存される。特に、ユーザが終了したウェブブラウザに戻すことを想定する。この状態情報を使用して、最初に最新のタブをアクティブ化し、次いでユーザが後続タブを選択するときに後続タブをアクティブ化することによって、ウェブブラウザを終了前の状態に置くことができる。
【００２４】
図２は、複数のデバイスが、中央コンピューティングデバイスを通じて相互接続される環境において実装されるような、ウェブブラウザ１０４を示す例示システム２００を図示している。中央コンピューティングデバイスは、複数のデバイスのローカルにしてもよく、又は複数のデバイスとはリモートに配置してもよい。一実施形態において、中央コンピューティングデバイスは、「クラウド」サーバファームとすることができる。「クラウド」サーバファームは、ネットワーク又はインターネット又は他の手段を通じて複数のデバイスに接続される１つ又は複数のサーバコンピュータを備える。
【００２５】
一実施形態において、この相互接続アーキテクチャは、機能を複数のデバイスにわたって配信し、共通のシームレスなエクスペリエンスを複数のデバイスのユーザに提供することを可能にする。複数のデバイスの各々は、異なる物理的要件及び能力を有することができ、中央コンピューティングデバイスは、デバイスに対して調整され、かつなお全てのデバイスに共通のプラットフォームを使用して、デバイスへのエクスペリエンスの配信を可能にする。一実施形態において、ターゲットデバイスの「クラス」が作成され、エクスペリエンスは、複数のデバイスの一般的なクラスに対して調整される。あるデバイスのクラスを、複数のデバイスの物理的特徴又は利用又は他の共通の特性によって提示することができる。例えば、前述したように、コンピューティングデバイス１０２は、モバイル２０２用、コンピュータ２０４用及びテレビジョン２０６で使用するためなど、様々な異なる方法で構成されることがある。これらの構成の各々は、一般に、対応するスクリーンサイズ又はフォームファクタを有し、したがって、コンピューティングデバイス１０２は、この例示システム２００内のこれらのデバイスクラスの１つとして構成することができる。例えば、コンピューティングデバイス１０２は、モバイル電話、ミュージックプレイヤ、ゲームデバイス、スレート型若しくはタブレット型のフォームファクタデバイスなどを含む、デバイスのモバイル２０２のクラスを想定することができる。コンピューティングデバイス１０２は、パーソナルコンピュータ、ラップトップコンピュータ、ネットブックなどを含むデバイスのコンピュータ２０４のクラスであることも想定することができる。テレビジョン２０６の構成は、テレビジョン、セットトップボックス、ゲームコンソールなどのカジュアルな環境における表示に関連するデバイスの構成を含む。したがって、本明細書で説明される技術は、コンピューティングデバイス１０２のこれらの様々な構成によってサポートされ、以下のセクションにおいて説明される特定の例には限定されない。
【００２６】
クラウド２０８は、ウェブサービス２１２のプラットフォーム２１０を含むように図示されている。プラットフォーム２１０は、クラウド２０８のハードウェアリソース（例えば、サーバ）及びソフトウェアリソースの基礎となる機能を抽象化し、「クラウドオペレーティングシステム」として動作することができる。例えば、プラットフォーム２１０は、リソースを抽象化して、コンピューティングデバイス１０２を他のコンピューティングデバイスと接続することができる。プラットフォーム２１０は、リソースのスケーリングを抽象化し、スケールの対応するレベルを、プラットフォーム２１０を介して実装されるウェブサービス２１２に対して行われた要求に提示するように機能することができる。様々な他の例は、サーバファーム内のサーバのロードバランシング、悪意のあるパーティ（例えば、スパム、ウィルス、及び他のマルウェア）に対する保護なども考慮される。
【００２７】
したがって、クラウド２０８は、インターネット又は他のネットワークを介してコンピューティングデバイス１０２に対して利用可能にされるソフトウェア及びハードウェアリソースに関する方針の一部として含まれる。
【００２８】
ジェスチャモジュール１０６によってサポートされるジェスチャ技術は、モバイル２０２の構成のタッチスクリーン機能、コンピュータ２０４の構成のトラックパッドの機能を使用して検出され、特定の入力デバイスとの接触を必要としないナチュラルユーザインタフェース（ＮＵＩ）のサポートの一部としてカメラによって検出される。さらに、特定のジェスチャを識別する入力を検出および認識する動作の性能を、例えばコンピューティングデバイス１０２によって、及び／又はクラウド２０８のプラットフォーム２１０によってサポートされるウェブサービス２１２などによって、システム２００の間に分散させることができる。
【００２９】
一般に、本明細書で説明される機能の全てを、ソフトウェア、ファームウェア、ハードウェア（例えば、固定の論理回路）、手動の処理又はこれらの実装の組み合わせを使用して実装することができる。本明細書で使用されるとき、用語「モジュール」、「機能」及び「ロジック」は一般に、ソフトウェア、ファームウェア、ハードウェア又はこれらの組み合わせを表す。ソフトウェアの実装の場合、モジュール、機能又はロジックは、（例えば、１つ又は複数のＣＰＵなどの）プロセッサにおいて又はプロセッサによって実行されると、指定のタスクを実行するプログラムコードを表す。プログラムコードを、１つ又は複数のコンピュータ読取可能メモリデバイスに格納することができる。以下で説明されるジェスチャ技術の特徴は、プラットフォーム独立であり、これは、ジェスチャ技術を、様々なプロセッサを有する様々な市販のコンピューティングプラットフォームにおいて実装することができることを意味する。
【００３０】
＜オンデマンドのタブ回復＞
図３は、１つ又は複数の実施形態にかかる方法のステップを説明するフロー図である。本方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア又はこれらの組み合わせとともに実行することができる。少なくとも一部の実施形態において、本方法は、上述のウェブブラウザなど、適切に構成されたウェブブラウザによって実行されることができる。
【００３１】
ステップ３００は、複数のタブに関連付けられた状態情報を保存する。このステップを任意の適切な方法で実行することができる。例えば、このステップを周期的に実行することができる。あるいはまた、ウェブブラウザが、一時停止状態に入るべきことを通知されたこと又は一時停止状態にされたことに応答して、このステップを実行することができる。ステップ３０２はウェブブラウザを終了するか、そうではなくともウェブブラウザを終了させる。ステップ３０４はウェブブラウザを開始する。このステップを任意の適切な方法で実行することができる。例えば、このステップを、ウェブブラウザに戻ろうとするユーザの試みを検出したことに応答して実行することができる。このステップを達成することの一部には、限定ではなく例として、ウェブブラウザを以前の状態に戻すのに、ステップ３０２において保存した状態情報の少なくとも一部を使用することが含まれる。したがって、ステップ３０６は、ウェブブラウザが終了した時にアクティブであったタブを回復することである。これは、限定ではなく例として、アクティブタブに関連付けられたプロセスを開始し、関連付けられたＵＲＬへのナビゲーションを実行させることを含むことができる。ステップ３０８は、他のタブを退避状態に保持する。退避状態において、特定のタブは実行すべきプロセスを有しない。しかしながら、退避されたタブは、ユーザによって選択可能な関連する可視表現を有することができる。ステップ３１０は、退避されたタブがユーザによって選択されたかどうかを確認する。退避されたタブが選択されていない場合、方法はステップ３０８に戻り、タブを退避状態に保持する。一方、退避タブが選択された場合、ステップ３１２は選択されたタブを回復する。１つ又は複数の実施形態において、タブが回復されると、関連するプロセスが開示され、回復されたタブの関連するＵＲＬへのナビゲートが起こる。１つ又は複数の実施形態において、これは１秒未満で起こり得る。したがって、タブの回復は、一般にユーザに対して透過的なシームレスな手法により起こり得る。この点において、複数の退避されたタブがある場合、方法はステップ３０８に戻る。
【００３２】
したがって、タブは、オンデマンドのやり方で回復され、これにより、システムリソースを節約し、複数のタブを同時に回復するシステムの影響を低減することができる。オンデマンドの回復を検討したので、次に退避されたタブの可視表現の概念を検討する。
【００３３】
＜退避タブの可視表現＞
上記のように、少なくとも一部の実施形態において、退避されたタブを、通常のアクティブなタブが提示される手法により、ユーザに対して視覚的に提示することができる。したがって、ユーザエクスペリエンスの観点からは、実際は全てのタブよりも少ないタブがアクティブであるときも、全てのタブがアクティブであるように見える。例として図４を検討する。
【００３４】
この例では、上記のようにウェブブラウザが一時停止され、その後終了されたと想定する。また、ユーザがウェブブラウザに戻り、これによりウェブブラウザが再開され、アクティブタブがその終了前の状態に戻されたと想定する。例えば、例示的環境４００は、１つ又は複数の実施形態にかかるコンピューティングデバイス４０２を含む。コンピューティングデバイス４０２は、ディスプレイデバイス４０７を含む。ディスプレイデバイス４０７は、該ディスプレイデバイスの下部に領域４０４を有し、起動されて視覚的に表示される様々なナビゲーション及び他の手段を有する。特に、これらの手段には、アドレスバー４０６、戻るボタン４０８及び進むボタン４０９が含まれる。
【００３５】
この例では、タブバンド４１０がディスプレイデバイス４０７の上部に現れており、このタブバンド４１０は複数のタブ４１２〜４３４を含んでいる。この具体例では、終了の前にアクティブなタブはタブ４１２であったと想定する。したがって、ウェブブラウザが再開されると、タブ４１２に関連付けられた状態情報を使用してタブを回復することができる。タブ４１４〜４３４などの他のタブは、退避されたままである。しかしながら、退避されたタブが回復されるように見せるユーザエクスペリエンスを提供するため、退避されたタブは、該タブ自身の可視表現を有することができる。例えば、一部の実施形態において、退避されたままのタブは、タブバンド４１０内に、タイトルとサムネイルイメージとを含む可視表現を有することができる。
【００３６】
ここで、ユーザの手４０６ａがタブ４１４をタップする（ｔａｐ−ｅｎｇａｇｅ）と想定する。この例ではタブ４１４を回復することができる。このために、ウェブブラウザは、タブ４１４に関連付けられたプロセスを開始し、タブの状態情報を使用して、タブ４１４がアクティブタブになるポイントの関連するＵＲＬにナビゲーションさせることができる。この具体例では、２つのタブ、すなわちタブ４１２と４１４が回復され、タブ４１６〜４３４は退避されたままである。
【００３７】
図５は、１つ又は複数の実施形態にかかる方法のステップを説明するフロー図である。本方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア又はこれらの組み合わせとともに実行することができる。少なくとも一部の実施形態において、本方法は、上述のウェブブラウザのような適切に構成されたウェブブラウザによって実行されることができる。
【００３８】
ステップ５００において、ウェブブラウザを一時停止すべきとの通知を受信する。このステップは任意の適切な方法で実行することができる。例えば、このステップは、ウェブブラウザがシステムのオペレーティングシステムから一時停止すべきとの通知を受信することによって実行され得る。この通知を受信したことに応答して、ステップ５０２は、複数のタブに関連付けられた状態情報を保存する。保存される状態情報のタイプの例は上記に提示されている。ステップ５０４はウェブブラウザを終了するか、又は終了させる。ステップ５０６はウェブブラウザを開始する。このステップは任意の適切な方法で実行することができる。例えば、このステップは、ウェブブラウザに戻ろうとするユーザの試みを検出したことに応答して実行され得る。このステップを達成することの一部には、限定ではなく例として、ステップ５０２で保存された状態情報の少なくとも一部を使用して、ウェブブラウザを以前の状態に戻すことを含めることができる。したがって、ステップ５０８は、ウェブブラウザが終了された時にアクティブであったタブを回復する。これは、限定ではなく例として、アクティブタブに関連付けられたプロセスを開始することと、関連するＵＲＬにナビゲーションさせることとを含むことができる。ステップ５１０は、アクティブタブ及び任意の退避されたタブに関連付けられた可視表現を表示する。このステップは任意の適切な方法で実行することができる。１つ又は複数の実施形態において、このステップは、任意のアクティブタブと同じ又は同様のタイプである退避タブに関連付けられた可視表現を表示することによって実行され得る。この手法において、退避タブはユーザに対して、これらのタブが完全に機能するアクティブタブであるかのように見える。任意の適切なタイプの可視表現を用いることができる。１つ又は複数の実施形態において、可視表現は、タブ内若しくはタブの少し下のいずれかに表示されるタイトル、及び／又はタブ内に現れるサムネイルイメージを含むことができる。
【００３９】
図６は、１つ又は複数の実施形態に係る方法のステップを説明するフロー図である。本方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア又はこれらの組み合わせとともに実行することができる。少なくとも一部の実施形態において、本方法は、上述のウェブブラウザのような適切に構成されたウェブブラウザによって実行されることができる。
【００４０】
ステップ６００において、複数のタブに関連付けられた状態情報を保存する。このステップは任意の適切な方法で実行することができる。例えば、このステップを周期的に又は何らかのイベントに応答して実行することができる。例えば、あるタイプのイベントは、関連するウェブブラウザを一時停止状態にさせることを目的とする通知とすることができる。保存される状態情報のタイプの例は上記に提示されている。ステップ６０２はウェブブラウザを終了するか、又は終了させる。ステップ６０４はウェブブラウザを開始する。このステップは任意の適切な方法で実行することができる。例えば、このステップは、ウェブブラウザに戻ろうとするユーザの試みを検出したことに応答して実行され得る。このステップを達成することの一部には、限定ではなく例として、ステップ６００において保存された状態情報の少なくとも一部を使用して、ウェブブラウザを以前の状態に戻すことが含めることができる。したがって、ステップ６０６において、ウェブブラウザが終了された時にアクティブであったタブを回復する。これは、限定ではなく例として、アクティブタブに関連付けられたプロセスを開始することと、関連するＵＲＬにナビゲーションさせることとを含むことができる。ステップ６０８は、アクティブタブ及び任意の退避されたタブに関連付けられた可視表現を表示する。このステップは任意の適切な方法で実行することができる。１つ又は複数の実施形態において、このステップは、任意のアクティブタブと同じ又は同様のタイプである退避タブに関連付けられた可視表現を表示することによって実行され得る。この手法において、退避タブはユーザに対して、これらのタブが完全に機能するアクティブタブであるかのように見える。任意の適切なタイプの可視表現を用いることができる。１つ又は複数の実施形態において、可視表現は、タブ内若しくはタブの少し下のいずれかに表示されるタイトル、及び／又はタブ内に現れるサムネイルイメージを含むことができる。ステップ６１０は、退避タブがユーザによって選択されたかどうかを確認する。このステップは、任意の適切な方法、例えば限定ではなく例として、ユーザが、タッチ入力又は他のタイプの入力などの入力を提供することによって特定のタブを選択したことを確認することによって行われる。退避タブが選択されなかった場合、方法は６０８に戻り、可視表現の表示を継続する。他方、退避タブが選択されると、ステップ６１２は選択されたタブを回復する。タブを回復する方法の例は上記に提示されている。方法はステップ６０８に戻る。
【００４１】
様々な例示の実施形態を説明してきたが、次に、１つ又は複数の実施形態を実装するのに用いることができる例示的デバイスの検討を行う。
【００４２】
＜例示的デバイス＞
図７は、図１、２を参照して説明したような、本明細書で説明される実施形態を実装する任意のタイプのポータブル及び／又はコンピュータデバイスとして実装することができる、例示的デバイス７００の様々なコンポーネントを図示している。デバイス７００は、デバイスデータ７０４（例えば、受信したデータ、受信しているデータ、放送用にスケジュールされたデータ、データのデータパケットなど）の有線及び／無線通信を可能にする通信デバイス７０２を含む。デバイスデータ７０４又は他のデバイスコンテンツは、デバイスの構成設定、デバイス上に格納されるメディアコンテンツ及び／又はデバイスのユーザに関連付けられた情報を含むことができる。デバイス７００上に格納されるメディアコンテンツには、任意のタイプのオーディオデータ、ビデオデータ及び／又はイメージデータが含まれる。デバイス７００は、任意のタイプのデータ、メディアコンテンツ及び／又は入力を受信することができる、１つ又は複数のデータ入力７０６を含むことができ、これらの入力は、例えば、ユーザ選択された入力、メッセージ、音楽、テレビメディアコンテンツ、録音されたビデオコンテンツ、並びに任意のコンテンツソース及び／又はデータソースから受信される任意の他のタイプのオーディオデータ、ビデオデータ及び／又はイメージデータなどである。
【００４３】
デバイス７００は、通信インタフェース７０８も含むことができる。通信インタフェース７０８は、シリアル及び／又はパラレルインタフェース、無線インタフェース、任意のタイプのネットワークインタフェース、モデム、及び任意の他のタイプの通信インタフェースのうちの１つ又は複数として実装され得る。通信インタフェース７０８は、デバイス７００と、他の電子コンピューティング通信デバイスがデバイス７００とデータを通信する通信ネットワークとの間の接続及び／又は通信リンクを提供する。
【００４４】
デバイス７００は、様々なコンピュータ実行可能又は読取可能な命令を処理してデバイス７００の動作を制御し、上述のオンデマンドのタブ回復の実施形態を実装する、１つ又は複数のプロセッサ７１０（例えば、マイクロプロセッサ、コントローラなどのいずれか）を含む。あるいはまた、デバイス７００は、ハードウェアと、ファームウェアと、全体的に７１２で特定される処理及び制御回路とともに実装される固定論理回路とのうちのいずれか１つ又はこれらの組み合わせで実装され得る。図示していないが、デバイス７００は、デバイス内の様々なコンポーネントを結合するシステムバス又はデータ転送システムを含むことができる。システムバスは、メモリバス若しくはメモリコントローラ、周辺バス、ユニバーサルシリアルバス、及び／又は様々なバスアーキテクチャを用いるプロセッサ若しくはローカルバスなど、異なるバス構造のいずれか１つ又はそれらの組み合わせを含むことができる。
【００４５】
デバイス７００は、１つまたは複数のメモリコンポーネントなどのコンピュータ読取可能媒体７１４も含む。その例には、ランダムアクセスメモリ（ＲＡＭ）、非揮発性メモリ（例えば、読み取り専用メモリ（ＲＯＭ）、フラッシュメモリ、ＥＰＲＯＭ、ＥＥＰＲＯＭなどのうちの任意の１つ又は複数）及びディスク記憶デバイスが含まれる。ディスク記憶デバイスは、ハードディスクドライブ、記録可能及び／又は書き換え可能コンパクトディスク（ＣＤ）、任意のタイプのデジタル多用途ディスク（ＤＶＤ）など、任意のタイプの磁気又は光記憶デバイスとして実装することができる。デバイス７００は、大容量記憶媒体デバイス７１６も含むことができる。
【００４６】
コンピュータ読取可能媒体７１４は、デバイスデータ７０４、並びに様々なデバイスアプリケーション７１８及びデバイス７００の動作的な態様に関連する任意の他のタイプの情報及び／又はデータを格納するデータ記憶機構を提供する。例えば、オペレーティングシステムを、コンピュータ読取可能媒体７１４を有し、かつプロセッサ７１０上で実行される、コンピュータアプリケーションとして保持することができる。デバイスアプリケーション７１８は、デバイスマネージャ（例えば、制御アプリケーション、ソフトウェアアプリケーション、信号処理及び制御モジュール、特定のデバイスにネイティブなコード、特定のデバイス用のハードウェア抽象レイヤなど）を含むことができる。デバイスアプリケーション７１８は、本明細書で説明されるオンデマンドのタブ回復技術の実施形態を実装する任意のシステムコンポーネント又はモジュールも含む。この例において、デバイスアプリケーション７１８は、ソフトウェアモジュール及び／又はコンピュータアプリケーションとして示されるインタフェースアプリケーション７２２とウェブブラウザ７２４とを含む。ウェブブラウザ７２４は、タッチスクリーン、トラックパッド、カメラなどのジェスチャをキャプチャするように構成されたデバイスとのインタフェースを含め、ウェブブラウジング機能を提供するのに使用されるソフトウェアを表す。
【００４７】
デバイス７００は、オーディオ及び／又はビデオ入出力システム７２６も含む。オーディオ及び／又はビデオ入出力システム７２６は、オーディオデータをオーディオシステム７２８に提供し、ビデオデータをディスプレイシステム７３０に提供する。オーディオシステム７２８及び／又はディスプレイシステム７３０は、オーディオデータ、ビデオデータ及びイメージデータを処理、表示、及び／又はさもなければレンダリングする任意のデバイスを含むことができる。ビデオ信号及びオーディオ信号は、デバイス７００からオーディオデバイス及び／又はディスプレイデバイスに、ＲＦ（ラジオ周波数）リンク、Ｓビデオリンク、複合ビデオリンク、構成要素ビデオリンク、ＤＶＩ（デジタルビデオインタフェース）、アナログオーディオ接続又は他の同様の通信リンクを介して通信され得る。一実施形態において、オーディオシステム７２８及び／又はディスプレイシステム７３０は、デバイス７００の外部コンポーネントとして実装される。あるいは、オーディオシステム７２８及び／又はディスプレイシステム７３０は、例示デバイス７００の統合コンポーネントとして実装される。
【００４８】
＜結論＞
様々な実施形態は、個々のタブのリソース利用を積極的にモニタリングして効果的に管理する。少なくとも一部の実施形態において、１つ又は複数のタブが、様々な操作パラメータに従って退避され、ユーザが特定のタブを実際にアクティブ化したときに回復される。回復はタブごとに起こり、少なくとも一部のタブは退避されたままである。
【００４９】
少なくとも一部の実施形態において、退避タブは、通常のアクティブなタブが提示される手法で、ユーザに対して視覚的に提示される。したがって、ユーザエクスペリエンスの観点から、全てのタブがアクティブであるように見える。少なくとも一部の実施形態において、退避タブは、関連する状態が保存されており、したがって、退避タブが回復されると、ユーザの視点から一般にシームレスな手法でその状態を復元することができる。
【００５０】
諸実施形態を構造的特徴及び／又は方法的動作に特有の言語で説明してきたが、添付の特許請求の範囲において提示される実施形態は、必ずしも特定の特徴又は説明された動作に限定されないことを理解されたい。むしろ、特定の特徴及び動作は、特許請求される実施形態を実装する例示的な形式として開示される。
【図１】
2014523056.tif 000003
【図２】
2014523056.tif 000004
【図３】
2014523056.tif 000005
【図４】
2014523056.tif 000006
【図５】
2014523056.tif 000007
【図６】
2014523056.tif 000008
【図７】
2014523056.tif 000009
【国際調査報告】
2014523056.tif 000010
2014523056.tif 000011