JP7100637B2 - レイヤード・コンテンツの選択 - Google Patents

レイヤード・コンテンツの選択 Download PDF

Info

Publication number
JP7100637B2
JP7100637B2 JP2019525806A JP2019525806A JP7100637B2 JP 7100637 B2 JP7100637 B2 JP 7100637B2 JP 2019525806 A JP2019525806 A JP 2019525806A JP 2019525806 A JP2019525806 A JP 2019525806A JP 7100637 B2 JP7100637 B2 JP 7100637B2
Authority
JP
Japan
Prior art keywords
content
application
selection
user interface
block portion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019525806A
Other languages
English (en)
Other versions
JP2019536156A (ja
Inventor
ウォン,ソン・ジュン
Original Assignee
マイクロソフト テクノロジー ライセンシング,エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by マイクロソフト テクノロジー ライセンシング,エルエルシー filed Critical マイクロソフト テクノロジー ライセンシング,エルエルシー
Publication of JP2019536156A publication Critical patent/JP2019536156A/ja
Application granted granted Critical
Publication of JP7100637B2 publication Critical patent/JP7100637B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04804Transparency, e.g. transparent or translucent windows

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Display Devices Of Pinball Game Machines (AREA)
  • Input From Keyboards Or The Like (AREA)

Description

[0001] 新たなアプリケーション/サービスは、多くの方法で生産性を高めてきた。ユーザーにとって共通の望みは、1つのアプリケーションからコンテンツをコピーし、そのコンテンツを他のアプリケーションにおいてペーストできることである。しかしながら、アプリケーションによっては、コンテンツを直接コピーすることを可能にするように構成されていないものがある。コンテンツをアプリケーションからコピーできる場合であっても、コンテンツを選択しコピーするプロセスは厄介である。コンテンツの選択を達成するためには、ユーザーは、コンテンツを選択するための選択ボックスの表示を要求する第1アクション(例えば、押下したまま長押しする)、ユーザーが選択したいコンテンツ上で選択ボックスをクリックおよびドラッグするための複数のアクション、ならびにコンテンツを選択するための後続のアクションというような、様々なアクションを実行しなければならない。したがって、本願の例は、コンテンツの選択に対して効率を高めることに関係する一般的な技術環境を対象とする。
[0002] 本開示の非限定的な例は、コンテンツ選択アプリケーションのための機能(functionality)について記載する。これは、実行中のアプリケーションからのコンテンツのブロック・コピー(block copying)を、その実行中のアプリケーションではコンテンツが本来選択できなくても、効率的に可能にする。アプリケーションは、例えば、コンピューティング・デバイス上で実行していてもよい。コンテンツ選択のためのユーザー・インターフェースの有効化(activation)を誘起する入力を受け取ることができる。一例として、ユーザー・インターフェースの有効化を誘起する入力は、コンピューティング・デバイスを通じて受け取られてもよい。受け取られた入力に基づいて、アプリケーションおよびユーザー・インターフェースのレイヤード・ビュー(layered view)を提示することができる。一例として、レイヤード・ビューはアプリケーション上に重ね合わされたユーザー・インターフェースを提示する。アプリケーションからのコンテンツのブロック部分を、1つのアクションに基づいて選択することができる。数ある例の中でもとりわけ、この1つのアクションは、ユーザー・インターフェースを通じて処理される不連続なデバイス・クリック、または不連続なタッチ入力であってもよい。コンテンツの選択されたブロック部分に対する追加のアクション(1つまたは複数)は、ユーザー・インターフェースを通じてアクセス可能であってもよい。
[0003] 他の非限定的な例では、コンテンツ選択のためのユーザー・インターフェースが、例示的な(exemplary)コンテンツ選択アプリケーションに組み込まれてもよい。第1アプリケーションは、例えば、コンピューティング・デバイスによって実行されてもよい。第2アプリケーションの有効化を誘起する入力を受け取ることができる。一例として、第2アプリケーションは例示的なコンテンツ選択アプリケーションである。第1アプリケーションおよび第2アプリケーションのレイヤード・ビューを、受け取った入力に基づいて提示してもよい。一例として、レイヤード・ビューは、第1アプリケーション上に重ね合わされた第2アプリケーションを提示する。1つのアクションに基づいて、第1アプリケーションからのコンテンツのブロック部分を選択することができる。一例として、この1つのアクションは第2アプリケーションによって処理されてもよい。コンテンツの選択されたブロック部分に対する追加のアクション(1つまたは複数)が、例示的なコンテンツ選択アプリケーションを通じてアクセス可能であってもよい。
[0004] この摘要は、詳細な説明において以下で更に説明する概念から選択したものを、簡略化した形態で紹介するために設けられている。この摘要は、特許請求する主題の主要な特徴や必須の特徴を特定することを意図するのではなく、特許請求する主題の範囲を限定するために使用されることを意図するのでもない。例の追加の態様、特徴、および/または利点は、以下に続く説明において部分的に明記されて、以下の説明から部分的に明らかになるか、あるいは本開示の実施によって学習することができる。
[0005] 非限定的および非網羅的な例について、以下の図を参照しながら説明する。
図1は、本開示の態様を実施することができるコンピューティング・デバイスの例を示すブロック図である。 図2Aは、本開示の態様を実施することができる移動体コンピューティング・デバイスの簡略ブロック図である。 図2Bは、本開示の態様を実施することができる移動体コンピューティング・デバイスの簡略ブロック図である。 図3は、本開示の態様を実施することができる分散型コンピューティング・システムの簡略ブロック図である。 図4は、本開示の態様を実施することができるコンテンツ選択処理に関する例示的な方法である。 図5Aは、本開示の態様を実施することができる例示的なコンテンツ選択アプリケーションに関連する処理について、例示的なユーザー・インターフェース・ビュー(view)を示す(present)。 図5Bは、本開示の態様を実施することができる例示的なコンテンツ選択アプリケーションに関連する処理について、例示的なユーザー・インターフェース・ビュー(view)を示す(present)。 図5Cは、本開示の態様を実施することができる例示的なコンテンツ選択アプリケーションに関連する処理について、例示的なユーザー・インターフェース・ビュー(view)を示す(present)。 図5Dは、本開示の態様を実施することができる例示的なコンテンツ選択アプリケーションに関連する処理について、例示的なユーザー・インターフェース・ビュー(view)を示す(present)。 図6は、本開示の態様を実施することができる1つ以上のコンピューティング・デバイス上に実装可能な例示的なシステムを示す。
[0012] 本開示の非限定的な例は、実行中のアプリケーションではコンテンツが本来(traditionally)選択できなくても、その実行中のアプリケーションからのコンテンツのブロック・コピー(block copying)を効率的に可能にする、コンテンツ選択アプリケーションのための機能(functionality)について記載する。コンテンツ選択のための例示的なユーザー・インターフェースについて記載する。このインターフェースは、他の実行中のアプリケーションとインターフェースして、コンテンツを選択しようとするときに多数のアクション(例えば、クリック/ドラッグ/選択/コピー)を実行する必要なく、コンテンツの素早く効率的な選択を可能にする。本明細書において説明する例では、1回の不連続的なアクションを使用して、コンテンツのブロック部分を選択することができる。これは、コンテンツのブロック部分をコピーしようとするときにコンピューティング・デバイスとのユーザーの対話処理を改善するだけでなく、コンテンツのブロック部分をコピーするために利用されているコンピューティング・デバイスの処理効率も改善する。一例として、コンテンツ選択のためのユーザー・インターフェースは、コンテンツ選択アプリケーションのコンポーネントであってもよい。コンテンツ選択アプリケーションは、他の実行中のアプリケーションとインターフェースし、コンテンツの一部がそのアプリケーションから直接選択できない場合であっても、コンテンツの1つ以上の部分を他の実行中のアプリケーションからコピーすることを可能にする。
[0013] 例示的なコンテンツ選択アプリケーションは、コンテンツのブロック部分を識別し、ユーザーがコンテンツの1つ以上のブロック部分を効率的に選択することを可能にするユーザー・インターフェース処理機能(feature)を提供するように構成されている。ある例では、コンテンツのブロック部分がコンテンツの1つ以上のスニペットを含んでもよい。コンテンツのスニペットは、1つ以上の単語/文字/数/アイコン等を含んでもよい。更に他の例では、コンテンツのスニペットは、画像、ビデオ、オーディオ、手書き入力等を含む他のメディアを含んでもよい。テキスト部分が選択されている例では、コンテンツのブロック部分は、コンテンツの2つ以上のスニペットを含んでもよい。あるいは、コンテンツのブロック部分は、コンテンツ・タイプ、例えば、テキスト・コンテンツのスニペットおよびメディア・コンテンツのスニペットの任意の組み合わせを含んでもよい。ある場合には、例示的なコンテンツ選択アプリケーション以外のアプリケーションを使用するときは、コンテンツのスニペットが選択できなくてもよい。少なくとも1つの例では、コンテンツのブロック部分(例示的なコンテンツ選択アプリケーションによって選択された)は、コンテンツ選択アプリケーション以外のアプリケーションでは選択できないコンテンツの少なくとも1つのスニペットを含んでもよい。
[0014] コンテンツ選択のためのユーザー・インターフェースは、レイヤード・ビューにおいて提示することもでき、この場合、ユーザー・インターフェース(例えば、コンテンツ選択アプリケーションのユーザー・インターフェース)は、コンテンツの部分を含む実行中のアプリケーションを表す他のレイヤの上に形成される(provided)レイヤ内に表示される。例示的なコンテンツ選択アプリケーションは、コンピューティング・デバイスの前景において実行中のアプリケーション(例えば、検出された前景アプリケーション)を検出するように構成されてもよい。コンテンツ選択アプリケーションが有効化されると、コンテンツ選択アプリケーションは、検出された前景アプリケーション上に重ね合わされ、コンテンツ選択アプリケーションの機能にアクセスしつつ、前景アプリケーションのコンテンツを見るおよびこれにアクセスする能力をユーザーに付与する。例示的なコンテンツ選択アプリケーションによって、選択されたコンテンツに対する追加のアクションへの素早いアクセスも提供される。更に、コンテンツ選択アプリケーションは、選択されたコンテンツに対する追加のアクションに素早くアクセスすることを可能にするユーザー・インターフェース処理機能も提供するように構成されている。追加のアクションの例には、数ある例の中でもとりわけ、コピーする、選択されたコンテンツ(selected content)をタスク・リストに追加する、選択コンテンツを電子メールで送る、選択コンテンツを他のユーザー/アプリケーションと共有する、および選択コンテンツを編集するアクションが含まれるが、これらに限定されるのではない。更に、他の例では、例示的なコンテンツ選択アプリケーションは、ユーザーに表示されるユーザー・インターフェース操作部(features)に優先順位を付けるように構成することもできる。少なくとも1つの例では、コンテンツ選択ユーザー・インターフェースに表示される1つ以上のユーザー・インターフェース操作部は、数ある例の中でもとりわけ、選択されたコンテンツ(例えば、タイプ、フォーマット、コンテキスト等)、コンテンツの関連メタデーター、コンテンツが選択されるアプリケーションのタイプ、クライアント・コンピューティング・デバイス上で実行している進行中のプロセスのタイプの内1つ以上に基づいて、動的に提示(または更新)することができる。例えば、コンテンツ選択アプリケーションは、ウェブ・ブラウザー・アプリケーションからテキスト・コンテンツのブロック部分がコピーされていることを検出し、メッセージング・アプリケーション、電子メール・アプリケーション、および/または文書処理アプリケーションにおいて、このコンテンツのブロック部分をペーストするためのユーザー・インターフェース操作部を提示するのでもよい。
[0015] したがたって、本開示は、複数の技術的利点を提供する。とりわけ、これらの技術的利点には、限定ではなく、1つの不連続的なアクションでコンテンツを選択できること、コンテンツのブロック部分を効率的に識別および選択できること、コンテンツがアプリケーションから直接選択できない場合でも、コンテンツの部分を選択可能にできること、例示的なコンテンツ選択アプリケーションにアクセスしこれを利用するための処理デバイスの動作の一層の効率化(例えば、計算サイクル/コンピューティング・リソースを節約する)を図ること、ユーザーと、例示的なコンテンツ選択アプリケーションを実行しているコンピューティング・デバイスとの間におけるユーザー対話処理を改善すること、例示的なコンテンツ選択アプリケーション内に異なるアプリケーション/サービスを統合し機能を拡張する拡張性があることが含まれる。
[0016] 図1~図3および関連する説明では、本発明の例を実施することができる種々の動作環境の論述を行う。しかしながら、図1~図3に関して例示し論述するデバイスおよびシステムは、例(example)であることおよび例示(illustration)を目的とするに限り、本明細書において説明する本発明の例を実施するために利用することができる多数のコンピューティング・デバイスの構成を限定するのではない。
[0017] 図1は、コンピューティング・デバイス102、例えば、本開示の例を実施することができる移動体処理デバイスの物理コンポーネントを示すブロック図である。数ある例の中でもとりわけ、コンピューティング・デバイス102は、例示的なコンテンツ選択アプリケーション/サービスの実行に合わせて構成された例示的なコンピューティング・デバイスとしてもよい。基本的な構成において、コンピューティング・デバイス102は少なくとも1つの処理ユニット104とシステム・メモリー106とを含むことができる。コンピューティング・デバイスの構成およびタイプに応じて、システム・メモリー106は、揮発性ストレージ(例えば、ランダム・アクセス・メモリー)、不揮発性ストレージ(例えば、リード・オンリー・メモリー)、フラッシュ・メモリー、またはこのようなメモリーの任意の組み合わせを含むことができるが、これらに限定されるのではない。システム・メモリー106は、オペレーティング・システム107と、IOマネージャ124、他のユーティリティ126、およびアプリケーション128のような、ソフトウェア・プログラム/モジュール120を実行するのに適した1つ以上のプログラム・モジュール108とを含むことができる。例として、システム・メモリー106は、実行のための命令を格納してもよい。システム・メモリー106の他の例では、アプリケーションに関連するデーターを格納してもよい。オペレーティング・システム107は、例えば、コンピューティング・デバイス102の動作を制御するのに適したものでもよい。更に、本発明の例は、グラフィクス・ライブラリー、他のオペレーティング・システム、または任意の他のアプリケーション・プログラムと併せて実施することもでき、いずれの特定のアプリケーションにもシステムにも限定されない。この基本的構成は、図1において、破線122の内側にあるコンポーネントによって例示されている。コンピューティング・デバイス102は、追加の処理機能(feature)または機能(functionality)も有することができる。例えば、コンピューティング・デバイス102は、例えば、磁気ディスク、光ディスク、またはテープのような、追加のデーター記憶デバイス(リムーバブルおよび/または非リムーバブル)も含んでもよい。このような追加のストレージは、図1では、リムーバブル記憶デバイス109および非リムーバブル記憶デバイス110によって例示されている。
[0018] 前述のように、複数のプログラム・モジュールおよびデーター・ファイルをシステム・メモリー106に格納することができる。処理ユニット104上で実行している間、プログラム・モジュール108(例えば、入力/出力(I/O)マネージャ124、他のユーティリティ126、およびアプリケーション128)は、本開示全体にわたって説明する動作の段階の1つ以上を含むがこれらに限定されないプロセスを実行することができる。本発明の例にしたがって使用することができる他のプログラム・モジュールには、電子メールおよび連絡先(contacts)アプリケーション、文書処理アプリケーション、表計算アプリケーション、データーベース・アプリケーション、スライド・プレゼンテーション・アプリケーション、描画またはコンピューター支援アプリケーション・プログラム、写真編集アプリケーション、オーサリング・アプリケーション等が含まれてもよい。
[0019] 更に、本発明の例は、電子回路においても実施することができる。電子回路には、ディスクリート電子エレメント、論理ゲートを内蔵するパッケージ型または集積電子チップ、マイクロプロセッサーを利用する回路、あるいは電子エレメントまたはマイクロプロセッサーを内蔵する単一チップが含まれる。例えば、本発明の例は、システム・オン・チップ(SOC:system-on-a-chip)によって実施することもでき、この場合、図1に示すコンポーネントの各々または多くを1つの集積回路上に集積することができる。このようなSOCデバイスは、1つ以上の処理ユニット、グラフィクス・ユニット、通信ユニット、システム仮想化ユニット、および種々のアプリケーション機能を含むことができ、これらの全てがチップ基板上に、1つの集積回路として、集積される(または「焼き付けられる」)。SOCによって動作するとき、本明細書において説明する機能は、コンピューティング・デバイス102の他のコンポーネントと共に1つの集積回路(チップ)上に集積された特定用途ロジックによって動作することもできる。また、本開示の例は、例えば、AND、OR、またはNOTのような論理演算を実行することができる他の技術を使用して実施することもでき、他の技術には 力学、光学、流体、および量子技術が含まれるがこれらに限定されるのではない。加えて、本発明の例は、汎用コンピューター内、あるいは任意の他の回路またはシステムにおいても実施することができる。
[0020] また、コンピューティング・デバイス102は、キーボード、マウス、ペン、音響入力デバイス、音声入力/認識用デバイス、タッチ入力デバイス等のような、1つ以上の入力デバイス(1つまたは複数)112も有することができる。ディスプレイ、スピーカー、プリンター等のような出力デバイス(1つまたは複数)114も含むことができる。以上のデバイスは例であり、他のものも使用してもよい。コンピューティング・デバイス104は、他のコンピューティング・デバイス118との通信を可能にする1つ以上の通信接続116を含むことができる。適した通信接続116の例には、RF送信機、受信樹、および/または送受信回路、ユニバーサル・シリアル・バス(USB)、パラレル・ポート、および/またはシリアル・ポートが含まれるが、これらに限定されるのではない。
[0021] コンピューター読み取り可能媒体という用語は、本願において使用する場合、コンピューター記憶媒体を含んでもよい。コンピューター記憶媒体は、揮発性および不揮発性、リムーバブルおよび非リムーバブル媒体を含んでもよく、コンピューター読み取り可能命令、データー構造、またはプログラム・モジュールのような情報の格納のための任意の方法または技術で実現される。システム・メモリー106、リムーバブル記憶デバイス109、および非リムーバブル記憶デバイス110は、全てコンピューター記憶媒体の例である(即ち、メモリー・ストレージ)。コンピューター記憶媒体は、RAM、ROM、電子的消去可能リード・オンリー・メモリー(EEPROM)、フラッシュ・メモリーまたは他のメモリー技術、CD-ROM、ディジタル・バーサタイル・ディスク(DVD)または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスク記憶デバイスまたは他の磁気記憶デバイス、あるいは情報を格納するために使用することができ、コンピューティング・デバイス102によってアクセスすることができる任意の他の製品を含んでもよい。任意のこのようなコンピューター記憶媒体は、コンピューティング・デバイス102の一部であってもよい。コンピューター記憶媒体は、搬送波や、他の伝搬または変調データー信号を含まない。
[0022] 通信媒体は、搬送波のような変調データー信号、または他の移送メカニズムにおいて、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、または他のデーターによって具体化することができ、任意の情報配信媒体を含む。「変調データー信号」という用語は、その信号内に情報をエンコードするような方法で1つ以上の特性が設定または変更されている信号を記述することができる。一例として、そして限定ではなく、通信媒体は、有線ネットワークまたは直接有線接続のような有線媒体と、音響、高周波(RF)、赤外線、または他のワイヤレス媒体のようなワイヤレス媒体とを含むことができる。
[0023] 図2Aおよび図2Bは、本発明の例を実施することができる移動体コンピューティング・デバイス200、例えば、移動体電話機、スマート・フォーン、パーソナル・データー・アシスタント、タブレット・パーソナル・コンピューター、ファブレット(phablet)、スレート(slate)、ラップトップ・コンピューター等を示す。移動体コンピューティング・デバイス200は、例示的なコンテンツ選択アプリケーション/サービスの実行に合わせて構成された例示的なコンピューティング・デバイスであるとして差し支えない。移動体コンピューティング・デバイス200のようなコンピューティング・デバイス上で実行するアプリケーションのために、アプリケーション・コマンド・コントロール(application command control)を設けることができる。アプリケーション・コマンド・コントロールは、ユーザー・インターフェース(UI)またはグラフィカル・ユーザー・インターフェース(GUI)を通じてアプリケーションと共に使用するためのコマンドの提示および制御に関係する。一例では、アプリケーション・コマンド・コントロールは、1つのアプリケーションに対応する(work with)ように特定的にプログラミングすることができる。他の例では、アプリケーション・コマンド・コントロールは、1つよりも多いアプリケーションにまたがって対応するようにプログラミングすることもできる。図2Aを参照すると、本例を実装するための移動体コンピューティング・デバイス200の一例が示されている。基本的な構造において、移動体コンピューティング・デバイス200は、入力エレメントおよび出力エレメントの双方を有するハンドヘルド・コンピューターである。移動体コンピューティング・デバイス200は、通例、ディスプレイ205と、ユーザーが情報を移動体コンピューティング・デバイス200に入力することを可能にする1つ以上の入力ボタン210とを含む。移動体コンピューティング・デバイス200のディスプレイ205は、入力デバイスとして機能することもできる(例えば、タッチ・スクリーン・ディスプレイ)。随意の側面入力エレメント215が含まれる場合、更に他のユーザー入力を可能にする。側面入力エレメント215は、回転スイッチ、ボタン、または任意の他のタイプの手動入力エレメントであってもよい。代替例では、移動体コンピューティング・デバイス200はもっと多くの入力エレメントまたはもっと少ない入力エレメントを組み込むこともできる。例えば、ディスプレイ205は、ある例では、タッチ・スクリーンでなくてもよい。更に他の代替例では、移動体コンピューティング・デバイス200は、セルラー・フォンのような、携帯用電話システムである。また、移動体コンピューティング・デバイス200は、随意のキーパッド235も含んでもよい。随意のキーパッド235は、物理キーパッド、あるいはタッチ・スクリーン・ディスプレイまたは任意の他のソフトウェア入力パネル(SIP)上に生成される「ソフト」キーパッドであってもよい。種々の例において、出力エレメントは、GUIを示すためのディスプレイ205、視覚指示器220(例えば、発光ダイオード)、および/または音響変換器225(例えば、スピーカー)を含む。ある例では、移動体コンピューティング・デバイス200は、ユーザーに触覚フィードバックを供給するために振動変換器を内蔵する。更に他の例では、移動体コンピューティング・デバイス200は、オーディオ入力(例えば、マイクロフォン・ジャック)、オーディオ出力(例えば、ヘッドホン・ジャック)、および信号を外部デバイスに送るためまたは信号を外部デバイスから受信するためのビデオ出力(例えば、HDMI(登録商標)ポート)のような、入力および/または出力ポートを内蔵する。
[0024] 図2Bは、移動体コンピューティング・デバイスの一例のアーキテクチャを示すブロック図である。即ち、移動体コンピューティング・デバイス200は、いくつかの例を実装するためにシステム(即ち、アーキテクチャ)202を内蔵することができる。一例では、システム202は、1つ以上のアプリケーション(例えば、ブラウザー、電子メール、カレンダー管理(calendaring)、連絡先管理(contact manager)、メッセージング・クライアント、ゲーム、およびメディア・クライアント/プレーヤー)を実行することができる「スマート・フォーン」として実装される。ある例では、システム202は、統合パーソナル・デジタル・アシスタント(PDA)、タブレット、およびワイヤレス・フォンのようなコンピューティング・デバイスとして統合される。
[0025] 1つ以上のアプリケーション・プログラム266をメモリー262にロードし、オペレーティング・システム264上でまたはオペレーティング・システム264と連携して実行することができる。アプリケーション・プログラムの例には、発呼(phone dialer)プログラム、電子メール・プログラム、個人情報管理(PIM)プログラム、文書処理プログラム、表計算プログラム、インターネット・ブラウザー・プログラム、メッセージング・プログラム等が含まれる。また、システム202は、メモリー262内部に不揮発性記憶エリア268も含む。不揮発性記憶エリア268は、システム202の電源が落ちても失われてはならない永続的情報を格納するために使用することができる。アプリケーション・プログラム266は、電子メール・アプリケーションによって使用される電子メールまたはその他のメッセージ等というような情報を使用し、不揮発性記憶エリア268に格納することができる。また、同期アプリケーション(図示せず)もシステム202に内在し(reside)、不揮発性記憶エリア268内に格納されている情報を、ホスト・コンピューターにおいて格納されている対応する情報を同期させ続けるために、ホスト・コンピューターに内在する対応する同期アプリケーションと相互作用するようにプログラミングされている。認められるであろうが、他のアプリケーションもメモリー262にロードし、本明細書において説明する移動体コンピューティング・デバイス(例えば、システム202)上で実行させることができる。
[0026] システム202は、電源270を有する。電源270は、1つ以上のバッテリとして実装されてもよい。更に、電源270は、ACアダプター、あるいはバッテリを補充または再充電する給電ドッキング・クレードル(powered docking cradle)のような、外部電源(power source)を含んでもよい。
[0027] システム202は、システム202と1つ以上の周辺デバイスとの間における接続(connectivity)をし易くする機能(function)を実行する周辺デバイス・ポート230を含んでもよい。周辺デバイス・ポート230への送信および周辺デバイス・ポート230からの送信は、オペレーティング・システム(OS)264の制御下で行われる。言い換えると、周辺デバイス・ポート230によって受信される通信は、オペレーティング・システム264を通じて、アプリケーション・プログラム266に広める(disseminate)こと、およびその逆が可能である。
[0028] また、システム202は無線インターフェース・レイヤ272も含むことができる。無線インターフェース・レイヤ272は、無線周波数通信を送信および受信する機能(function)を実行する。無線インターフェース・レイヤ272は、通信事業者またはサービス提供者を介したシステム202と「外部世界」との間におけるワイヤレス接続をし易くする。無線インターフェース・レイヤ272へおよびからの送信は、オペレーティング・システム264の制御下で行われる。言い換えると、無線インターフェース・レイヤ272によって受信された通信は、オペレーティング・システム264を通じて、アプリケーション・プログラム266に広めること、およびその逆が可能である。
[0029] 視覚指示器220は、視覚通知を供給するために使用することができ、および/または音響インターフェース274は、音響変換器225を介して可聴通知を生成する(移動体コンピューティング・デバイス200の説明において説明したように)ために使用することができる。図示する例では、視覚指示器220は発光ダイオード(LED)であり、音響変換器225はスピーカーである。これらのデバイスは、電源270に直接結合することができ、プロセッサー260および他のコンポーネントがバッテリ電源を節約するために遮断されるかもしれない場合であっても、 有効化されているときには、通知メカニズムによって指令される(dictated)期間だけ動作状態に留まるようにすることができる。LEDは、デバイスの給電ステータス(powered-on status)を示すために、ユーザーが対応策を取るまで無期限に動作状態に留まるようにプログラミングすることができる。音響インターフェース274は、可聴信号をユーザーに供給するため、および可聴信号をユーザーから受信するために使用される。例えば、音響変換器225(図2Aに示す)に結合されることに加えて、音響インターフェース274は、電話の会話を容易にするためというように、マイクロフォンに結合して可聴入力を受信することもできる。本発明の例によれば、マイクロフォンは、通知の制御を容易にするためにオーディオ・センサとしても機能することができる。これについては以下で説明する。更に、システム202は、ビデオ・インターフェース276も含むことができる。ビデオ・インターフェース276は、内蔵カメラ230の動作が、静止画像、ビデオ・ストリーム等を記録することを可能にする。
[0030] システム202を実装する移動体コンピューティング・デバイス200は、追加の処理機能(features)または機能(functionality)を有することもできる。例えば、移動体コンピューティング・デバイス200は、磁気ディスク、光ディスク、またはテープのような、追加のデーター記憶デバイス(リムーバブルおよび/または非リムーバブル)を含んでもよい。このような追加のストレージは、図2Bでは、不揮発性記憶エリア268によって例示されている。
[0031] 移動体コンピューティング・デバイス200によって生成または取り込まれシステム202を通じて格納されたデーター/情報は、前述のように、ローカルに移動体コンピューティング・デバイス200上に格納されてもよく、あるいはデーターは任意の数の記憶媒体上に格納されてもよい。これらの記憶媒体は、無線インターフェース・レイヤ272を介して、または移動体コンピューティング・デバイス200と、この移動体コンピューティング・デバイス200に関連する別のコンピューティング・デバイス、例えば、インターネットのような分散型コンピューティング・ネットワークにおけるサーバー・コンピューターとの間の有線接続を介して、デバイスによってアクセスすることができる。認められるであろうが、このようなデーター/情報には、移動体コンピューティング・デバイス200によって無線インターフェース・レイヤ272を介してアクセスすることができ、または分散型コンピューティング・ネットワークを通じてアクセスすることができる。同様に、このようなデーター/情報は、電子メールおよび連携データー/情報共有システムを含む、周知のデーター/情報転送および記憶手段による格納および使用のために、コンピューティング・デバイス間で容易に転送することができる。
[0032] 図3は、前述のように、記憶システム上のターゲット・データーに信頼性高くアクセスし、1つ以上のクライアント・デバイスに対する通信障害に対処するアプリケーションを提供するためのシステムのアーキテクチャの一例を示す。図3のシステムは、例示的なコンテンツ選択アプリケーション/サービスの実行に合わせて構成された例示的なシステムとして差し支えない。プログラミング・モジュール108および/またはアプリケーション120ならびにストレージ/メモリー(図1において説明した)によってアクセスされ、相互作用を受け、これらと関連して編集されるターゲット・データーは、異なる通信チャネルまたは他のタイプのストレージに格納されてもよい。例えば、ディレクトリー・サービス332、ウェブ・ポータル324、メールボックス・サービス326、インスタント・メッセージング・ストア328、またはソーシャル・ネットワーキング・サイト330、アプリケーション128、IOマネージャ124、他のユーティリティ126を使用して、種々の文書を格納することができ、記憶システムは、本明細書において説明するようなデーター利用を可能にするために、これらのタイプのシステム等の内任意のものを使用することができる。サーバー320は、通常のコンピューティング・デバイス102および移動体デバイス(1つまたは複数)200上で動作するクライアントによるネットワーク315を通じた使用のために、記憶システムを提供することができる。一例として、ネットワーク315は、インターネット、あるいは任意の他のタイプのローカルまたはワイド・エリア・ネットワークを構成するのでもよく、ネットワーク315に接続するために、クライアント・ノードが実装されてもよい。クライアント・ノードの例には、パーソナル・コンピューター、タブレット・コンピューティング・デバイス、および/または移動体コンピューティング・デバイス200(例えば、移動体処理デバイス)において/によって具体化されるコンピューティング・デバイス102が含まれるが、これらに限定されるのではない。一例として、クライアント・ノードは、ワイヤレス・ネットワーク接続(例えば、WiFi接続、Bluetooth(登録商標)等)を使用して、ネットワーク315に接続してもよい。しかしながら、本明細書において説明する例は、ハードワイヤ接続を介してネットワーク315に接続するように広げてもよい。クライアント・コンピューティング・デバイス102または200のこれらの例はいずれも、ストア316からコンテンツを入手することができる。
[0033] 図4は、本開示の態様を実施することができるコンテンツ選択処理に関する例示的な方法400である。一例として、方法400は、図1~図3に示したような、例示的な処理デバイスおよび/またはシステムによって実行することができる。複数の例(examples)では、方法400は、動作、プログラム、または命令を格納し実行するように構成された少なくとも1つのプロセッサーを備えるデバイス上で実行することができる。方法400において実行される動作は、数ある例の中でもとりわけ、コンピューター・プログラム、アプリケーション・プログラミング・インターフェース(API)、ニューラル・ネットワーク、あるいは機械学習処理を実行するシステムおよび/またはサービスによって実行される動作に対応することができる。一例として、方法400において実行される処理動作は、1つ以上のハードウェア・コンポーネントによって実行されてもよい。他の例では、方法400において実行される処理動作は、1つ以上のソフトウェア・コンポーネントによって実行されてもよい。ある例では、方法400において実行される処理動作は、複数のアプリケーション/サービス、デバイス、知識リソース等にアクセスすることができるウェブ・サービスに関連する1つ以上のアプリケーション/サービスによって実行されてもよい。代替例では、方法400において説明する処理動作は、分散型ネットワークを通じて接続された1つ以上のコンポーネントによって、例えば、(図6の)システム600において説明したように、実施されてもよい。方法400は、クライアント・コンピューティング・デバイスの観点から書かれているが、特許請求する発明は、クライアント・デバイス、サーバー・デバイス、および/または複数のコンピューティング・デバイスを備えるシステムの観点から書かれた実施形態に広げることができる。
[0034] 方法400は、処理動作402において開始し、ここで1つ以上のアプリケーションがコンピューティング・デバイス上で実行している。コンピューティング・デバイスの例については、図1~図3の説明において既に示した。コンピューティング・デバイスの更に他の例については、図6の説明において後に示す(例えば、処理デバイス602)。一例では、コンピューティング・デバイスは、移動体フォン、タブレット、ラップトップ、ウェアラブル・デバイス等のような、移動体デバイスである。
[0035] コンピューティング・デバイスは、1つ以上のアプリケーション/サービスを実行していてもよい(処理動作402)。コンテンツがアプリケーション/サービス・プロバイダーによって直接提供されるのか、または他のリソースからアクセスされるのかには関係なく、アプリケーション・サービスが、コンテンツを含む任意のタイプのアプリケーションであってもよいように、適用可能な例はアプリケーション/サービスのタイプを限定しない。アプリケーション/サービスの例には、オペレーティング・システム(OS)サービス、例えば、コンピューティング・デバイスのホーム画面上にOSコンテンツを提供するサービスが含まれる。ある場合には、アプリケーション/サービスのコンテンツが、そのコンテンツにアクセスするために使用されるアプリケーション/サービス内から選択可能ではないこともある。例えば、実行するアプリケーション/サービスが選択/コピー/ペースト機能を保有しない場合もある。
[0036] フローは処理動作404に進むことができ、ここで、例示のコンテンツ選択アプリケーションを有効化する入力を受け取る。例示的なコンテンツ選択アプリケーション/サービスは、他の実行中のアプリケーションとインターフェースして、コンテンツを選択/コピーしようとするときに、多数のアクション(例えば、クリック/ドラッグ/選択/コピー)を実行する必要なく、素早く効率的なコンテンツの選択を可能にするように構成されている。コンテンツ選択アプリケーションは、コンテンツのブロック部分を識別し、ユーザーがコンテンツの1つ以上のブロック部分を効率的に選択することを可能にするユーザー・インターフェース処理機能(features)を提供するように構成されている。また、コンテンツ選択アプリケーションは、コンピューティング・デバイス(コンテンツ選択アプリケーションおよび/または他のアプリケーション/サービスを実行している)とインターフェースして、コンテンツ選択アプリケーションへのアクセスのための処理効率を高めるように構成されている。例示的なコンテンツ選択アプリケーションの例は、少なくとも図5A~図5Dに示されている。
[0037] 処理動作404において、例示的なコンテンツ選択アプリケーションの有効化は、コンテンツ選択アプリケーションを起動する(launch)する 例(例えば、未だアクティブでないとき)、またはコンテンツ選択アプリケーションの表示を呼び戻す例(例えば、コンテンツ選択アプリケーションが既に実行している)を含んでもよい。コンテンツ選択アプリケーションを有効化するための入力の受け取り(処理動作404)は、コンピューティング・デバイスとの相互作用を通じて、コンテンツ選択アプリケーションにアクセスする意図を検出する動作を含む。受け取られるとコンテンツ選択アプリケーションを有効化する意図を示すとしてもよい入力の例には、以下が含まれるがこれらに限定されるのではない。タッチまたはデバイス入力によるコンテンツ選択アプリケーションのアプリケーション/サービス・アイコンの選択、コンテンツ選択アプリケーションへのアクセスを要求する話し言葉(spoken utterance)の受信、実行中のアプリケーション/サービス内に表示されるユーザー・インターフェース・アドオンの選択、およびコンピューティング・デバイスのコンポーネントとの相互作用(例えば、ジェスチャ、ホット・キー(hot key)選択、ボタンの押下)。一例では、移動体コンピューティング・デバイスのホーム・キーを押し続けるというようなアクションが、コンテンツ選択アプリケーションのユーザー・インターフェースの有効化に対する誘起であってもよい。実例をあげると、例示的なコンテンツ選択アプリケーションがOSの背景において実行していてもよく、コンピューティング・デバイスを通じて受け取られた入力が、OSの前景内においてコンテンツ選択アプリケーションのユーザー・インターフェースの表示を誘起するのでもよい。図5Aおよび付随する説明を参照すると、コンピューティング・デバイス上のボタンが、コンテンツ選択のための例示的なユーザー・インターフェースの表示を誘起する例を更に示す。コンテンツ選択アプリケーションが実行しているが表示されていない場合(例えば、OSの背景において)、例えば、あるアクションがコンテンツ選択アプリケーションの表示を誘起する場合、コンテンツ選択アプリケーションは、コンピューティング・デバイスを通じて受け取られた入力を検出するように構成されてもよい。
[0038] フローは、処理動作406に進むことができ、ここで、コンピューティング・デバイスは実行中のアプリケーションのレイヤード・ビューを表示する。レイヤード・ビューは、少なくとも1つの実行中のアプリケーションの(処理動作402)とコンテンツ選択アプリケーションの提示(presentation)を含むことができる。レイヤード・ビューの一例では、コンテンツ選択アプリケーションが、コンテンツの複数の部分(portions)を構成する実行中のアプリケーションを表す他のレイヤの上に形成されるレイヤ内に表示される。例示的なレイヤード・ビューの実例(illustrative example)については、図5Bおよび図5Cを参照のこと。
[0039] 一例では、例示的なレイヤード・ビューは、以下の処理動作に基づいて、検出された前景アプリケーションの上に、コンテンツ選択のための例示的なユーザー・インターフェースを提示する。検出された前景アプリケーションのユーザー・インターフェース(UI)ツリーにアクセスし、評価する。検出された前景アプリケーションに対するUIツリーの評価は、検出された前景アプリケーションに関連する複数のUIエレメントを識別することを含むことができる。識別されたUIエレメントから、ユーザーによって選択される可能性が最も高いUIエレメントの部分集合を識別する。ユーザーがUIエレメントを選択する可能性を検出する際、数ある例の中でもとりわけ、ユーザー・インターフェース・エレメントに関連するコンテンツのタイプを評価するモデリングおよび/または統計的分析を応用することができる。実例をあげると、ナビゲーション関連エレメント、画像ボタン等に関連するUIエレメントは除外してもよい。何故なら、このようなUIエレメントは、ユーザーによって選択される可能性は高くないからである。更に、例示的なコンテンツ選択アプリケーションは、検出された前景アプリケーションから識別されたUIエレメントの部分集合において、各UIエレメント上に、インタラクティブUIエレメントを作成するように構成することができる。これによって、ユーザーは、検出された前景アプリケーションのUIエレメントとの一貫性を維持しつつ、コンテンツ選択のためのユーザー・インターフェースを通じて、コンテンツの特定部分を選択することが可能になる。インタラクティブUIエレメントを作成するために、検出された前景アプリケーションのUIエレメントの位置および寸法を複製し、検出された前景アプリケーションのUIエレメント上に位置する(overlaying)インタラクティブUIエレメントに適用する。次いで、インタラクティブUIエレメントにインタラクティブ性(interactivity)を添付し、コンテンツ選択のためのユーザー・インターフェースを通じて、インタラクティブUIエレメントにアクセスすることが可能になる。
[0040] コンテンツ選択アプリケーションは、コンピューティング・デバイスの前景において実行しているアプリケーション(即ち、前景アプリケーション)を検出するように構成することができる。コンテンツ選択アプリケーションが有効化されると、コンテンツ選択アプリケーションは、検出された前景アプリケーション上に重ね合わされ(layered)、こうすることによって、前景アプリケーションのコンテンツを見てコンテンツにアクセスしながら、コンテンツ選択アプリケーションの機能にアクセスする能力を、ユーザーに付与する。例示的なコンテンツ選択アプリケーションは、コンピューティング・デバイスおよび/または他の実行中のアプリケーションとインターフェースして、コンピューティング・デバイスの前景において実行されるアプリケーションを検出するように構成することができる。一例として、コンテンツ選択アプリケーションは、コンピューティング・デバイスの前景において実行しているアプリケーションを検出するために、アプリケーション・プログラミング・インターフェース(API)を採用してもよい。
[0041] コンテンツ選択アプリケーションの実行中に(例えば、レイヤード・ビューにおいて提示される)、方法400のフローは判断動作408に進むことができ、ここで、検出された前景アプリケーションからコンテンツの1つ以上のブロック部分を識別するために、ユーザー・インターフェース(UI)の処理機能が選択されたか否か判定する。コンテンツ選択アプリケーションは、検出された前景アプリケーションからコンテンツのブロック部分の識別を可能にするユーザー・インターフェース処理機能を提供するように構成されている。コンテンツのブロック部分の識別のための例示的なUI処理機能の例を図5Bおよび図5Dに示し、本明細書において後に説明する。前景アプリケーションからコンテンツのブロック部分を識別するための例示的なUI処理機能 (feature) の選択は、任意の方法で行うことができ、数ある例の中でもとりわけ、タップ・ジェスチャ、コンポーネント/デバイスを通じた選択、および話し言葉の受信を含むが、これらに限定されるのではない。一例では、タップ・ジェスチャを使用して例示的なUI処理機能を選択することができ、タップ・ジェスチャは1回の不連続的なアクション(例えば、クリック)である。
[0042] コンテンツのブロック部分は、コンテンツの1つ以上のスニペットを含む(contain)ことができる。コンテンツのスニペットは、1つ以上の単語/文字/数値/アイコン等を含むことができる。更に他の例では、コンテンツのスニペットは、画像、ビデオ、オーディオ、手書き入力等を含む(include)他のメディアを含む(comprise)こともできる。テキスト部分が選択されるという実例では、コンテンツのブロック部分はコンテンツの2つ以上のスニペットを含むこともできる。あるいは、コンテンツのブロック部分は、コンテンツ・タイプの任意の組み合わせ、例えば、テキスト・コンテンツのスニペットおよびメディア・コンテンツのスニペットを含むこともできる。ある場合には、コンテンツのスニペットは、例示的なコンテンツ選択アプリケーション以外のアプリケーションを使用するときには、選択可能でなくてもよい。少なくとも1つの例では、コンテンツのブロック部分(例示的なコンテンツ選択アプリケーションを通じて選択された)が、コンテンツ選択アプリケーション以外のアプリケーションでは選択可能でない少なくとも1つのコンテンツのスニペットを含んでもよい。
[0043] 例示的なコンテンツ選択アプリケーションは、コンテンツのブロック部分を識別するための処理動作を実行するように構成されている。実例をあげると、コンテンツ選択アプリケーションは、検出された前景アプリケーションとインターフェースして、以下の内任意のものを含む動作を実行するように構成することができる。数ある例の中でもとりわけ、検出された前景アプリケーションに関連するプログラム/ソース・コードにアクセスする、前景アプリケーション内においてフォーカス(例えば、特定のコンテンツ上の)を検出する、プログラム/ソース・コードを解析してコンテンツの部分を識別する(例えば、コンテンツのタイプ、区切り文字を評価する、言語理解処理を適用する)、コンテンツのブロック部分のサイズを識別する、コンテンツのブロック部分に対する境界箱のサイズを識別する、境界箱のエレメントを識別する(例えば、コンテンツの例示的なブロック部分に複数のコンテンツのスニペットが含まれる場合)、コンテンツの例示的なブロック部分を区切るために境界箱を生成する(例えば、予め描画する)、コンテンツの例示的なブロック部分をコピーする(例えば、UI処理機能の選択に基づいて)。
[0044] 複数の例では、選択不可コンテンツ(例えば、テキスト、メディア・オブジェクト等)は、そのコンテンツを提供している供給源(source)を調べることによって識別することもできる。実例をあげると、コンテンツ提供に関連するソース・コードを解析/クローリング/評価するための処理動作を実行して、コンテンツの部分を識別することができる。コンテンツが選択可能でないと識別された場合、バック・エンド上で、コンテンツ選択のための例示的なユーザー・インターフェースを通じて、コンテンツの一部分を提供することを可能にする更に他の処理動作を実行することができる。実例をあげると、コンテンツ選択のための例示的なユーザー・インターフェース内にコンテンツのブロック部分を提示する選択/コピー/ペースト動作を自動的に実行することができる。ある例では、コンテンツ選択のためのユーザー・インターフェースを通じてコンテンツの部分を表示する前に、コンテンツのその部分を修正する処理動作を実行することもできる。実例をあげると、コンテンツがフォーマットされていなくてもよく、あるいは綴りの間違いまたは前景アプリケーションにおける表示を妨げる誤りを含んでもよく、これらを操作して、例示的なコンテンツ選択アプリケーションを使用するときにユーザーの体験を改善することができる。例示的なコンテンツ選択アプリケーションは、コンテンツ選択アプリケーションの拡張可能性に対応する(provide)ために他のアプリケーション/サービスとインターフェースして、数ある例の中でもとりわけ、検出された前景アプリケーションとインターフェースするための処理動作、および検出された前景アプリケーションから選択不可コンテンツを識別するための処理動作を含む、処理動作を実行することもできる。
[0045] コンテンツのブロック部分を識別するためのUIインターフェース処理機能が選択されないという実例では、フローはNOに分岐し、方法400の処理は、以後の処理が受け入れられるまで、不動作状態のままでいる。コンテンツのブロック部分を識別するためのUIインターフェース処理機能が選択されたという実例では、フローはYESに分岐し、処理は動作410に進む。
[0046] 処理動作410において、コンテンツの1つ以上のブロック部分を識別する。一例では、処理動作410は、レイヤード・ビュー内において、前景アプリケーション内に存在するコンテンツの1つ以上のブロック部分を識別する動作を含む。コンテンツのブロック部分は、コンテンツ選択アプリケーション内におけるUI処理機能(例えば、先に説明したインタラクティブUI操作部(feature))の選択に基づいて、識別することができる。識別(処理動作410)の視覚的な結果が、少なくとも図5Cに示されている。説明したコンテンツのブロック部分の識別のためのユーザー・インターフェース処理機能によって、例示的なコンテンツ選択アプリケーションは、ユーザーに手作業で複数の入力を入力させることなく、そしてコンピューティング・デバイスがこれら手作業の入力を処理する必要なく、コンテンツのブロック部分全体を選択する処理を自動化する。加えて、コンテンツの選択は、コンテンツのブロック部分を識別するための例示的なUI機能を選択する1回のアクションに基づいて、コンテンツの複数のブロック部分を識別するように構成されている。一例では、この1回のアクションは、不連続的なジェスチャ/入力(例えば、タップまたはクリック)である。
[0047] 開示したコンテンツのブロック部分の識別は、「全選択」処理機能(feature)のような機能(functionality)に対して、 処理効率が向上し、ユーザーの対話処理(コンテンツ選択アプリケーションとの)が改善されるという技術的な利点を提供する。実例をあげると、アプリケーションからコンテンツを選択するために「全選択」機能(function)が使用される場合、コンテンツの全てが選択されるだけで、このコンテンツをいくつかのもっと小さいブロック部分に分解する柔軟性はユーザーに提供されない。ユーザーは、前景アプリケーションから、コンテンツの個々の部分を手作業で識別し選択する試みを行うことはできる。しかしながら、既に確認したように、このプロセスは厄介であり、このようなタスクを遂行するためには多数のアクションを実行することが必要となる。
[0048] 加えて、ブロック部分コンテンツの識別についてここで説明する機能(更に、続いてコンテンツのブロック部分の選択を可能にする機能)は、前景において実行するアプリケーション/サービスが本来選択/コピー/ペースト機能を可能にしない例では有益である。例示的なコンテンツ選択アプリケーションは、検出された前景アプリケーションとインターフェースして、選択不可コンテンツの選択を可能にする。更に、例示的なコンテンツ選択アプリケーションは、検出された前景アプリケーションとインターフェースして、数ある処理機能の中でもとりわけ、他のアプリケーション/サービスでは利用することができない場合もある選択/コピー/ペースト機能を拡張する。更に、別の例では、例示的なコンテンツ選択アプリケーションは、ユーザーに表示されるユーザー・インターフェース操作部に優先順位を付けるように構成することもできる。少なくとも1つの例では、数ある例の中でもとりわけ、以下の内1つ以上に基づいて、コンテンツ選択ユーザー・インターフェースにおいて表示される1つ以上のユーザー・インターフェース操作部を動的に提示(または更新)することができる。選択されたコンテンツ(例えば、タイプ、フォーマット、コンテキスト等)、コンテンツの関連するメタデーター、コンテンツが選択されるアプリケーションのタイプ、およびクライアント・コンピューティング・デバイス上で実行している進行中のプロセスのタイプ。実例をあげると、コンテンツ選択アプリケーションが、テキスト・コンテンツのブロック部分がウェブ・ブラウザー・アプリケーションからコピーされていることを検出し、メッセージング・アプリケーション、電子メール・アプリケーション、および/または文書処理アプリケーションにおいて、そのコンテンツのブロック部分をペーストするためのユーザー・インターフェース機能を提示するのでもよい。
[0049] コンテンツの例示的なブロック部分の識別は、境界箱を使用して、そのコンテンツのブロック部分を強調する動作を含む。既に説明したように、コンテンツのブロック部分は複数のコンテンツのスニペットを含むこともある。少なくとも1つの例では、コンテンツ選択アプリケーションによって生成される例示的な境界箱は、1つ以上の個々の境界ボックスを含んでもよく(そのコンテンツのブロック部分に対するもっと大きな境界箱内に)、個々の境界箱にコンテンツのスニペットを関連付けてもよい。ある例では、ユーザーがコンテンツのブロック部分から個々の境界箱を選択/コピーすることを選択してもよく、その結果、個々の境界箱が選択されることになる。これは、例えば、コンテンツ上でクリックし、コンテンツ周囲に境界箱を描画し、次いでコンテンツを選択する必要なく、コンテンツのブロック部分の特定の一部分(part)を選択するときにユーザーを補助することができる。
[0050] フローは、判断動作412に進み、ここで、コンテンツのブロック部分の選択が行われたか否か判定する。既に説明したように、コンテンツ選択アプリケーションは、検出された前景アプリケーションからコンテンツのブロック部分を識別するように構成されている。一例では、ユーザーが、タップ・ジェスチャまたはクリック・ジェスチャのような、1回の不連続的なアクションによって、コンテンツのブロック部分を選択することもできる。実例をあげると、ユーザーが、コンテンツの識別されたブロック部分(またはブロック部分の個々の境界箱)上でタップすることによって入力を供給してもよく、その結果、コンテンツ選択アプリケーションがそのコンテンツのブロック部分を選択することになる。
[0051] 代替例では、ユーザーが、追加のアクション(例えば、コピー、タスク、電子メール共有)のためにUI機能を選択してもよく、その結果、1つ以上の識別されたコンテンツのブロック部分が自動的に選択される。
[0052] 更に他の代替例では、コンテンツのブロック部分を識別するための例示的なUI機能を選択するための1回のアクションが、連続的な1回のジェスチャ(例えば、押し続ける)であってもよい。これが行われる可能性があるのは、コンテンツ選択アプリケーションが、1回のアクションに基づいてブロック・コンテンツの部分を識別、選択、および/またはコピーするように構成される場合に、ユーザーが機能にアクセスすることを望むときである。実例をあげると、コンテンツのブロック部分の識別のための例示的なUI操作部を押し下げる時間量が短い程、ユーザーが押し続けるジェスチャを実行する時間量が長い場合よりも、少ない数のコンテンツのブロック部分を識別、選択、および/またはコピーすることができる。
[0053] コンテンツのブロック部分が選択されない場合、フローはNOに分岐し、方法400の処理は、後続の処理が受け入れられるまで、不動作のままでいる。コンテンツのブロック部分が選択された場合、フローはYESに分岐し、処理は動作414に進む。処理動作414において、コンテンツ選択アプリケーションは、例えば、受け取ったユーザー入力に基づいて、例示的なコンテンツのブロック部分を選択する。コンテンツの選択されたブロック部分に関して、後続のアクションを行うことができる。
[0054] 選択されたコンテンツに対して、フローは判断動作416に進み、ここで、選択されたコンテンツに関して追加のアクションを要求する入力が受け取られたか否か判定する。追加のアクションが要求されない場合、フローはNOに分岐し、方法400の処理は、後続の処理が受け入れられるまで不動作状態のままでいる。追加のアクションを要求する入力が受け取られた例では、フローはYESに分岐し、動作418に進む。
[0055] 処理動作418において、ユーザーから受け取った入力に基づいて、追加のアクションを実行する。コンテンツ選択アプリケーションは、選択されたコンテンツのための追加アクションへの素早いアクセスを可能にするユーザー・インターフェース機能を提供するように構成されている。追加アクションの例には、数ある例の中でもとりわけ、選択されたコンテンツをコピーする、選択されたコンテンツをタスク・リストに追加する、選択されたコンテンツを電子メールで送る、選択されたコンテンツを他のユーザー/アプリケーションと共有する、および選択されたコンテンツを編集することが含まれるが、これらに限定されるのではない。一例では、実行される追加アクションは、例えば、コンテンツの選択されたブロック部分をコピーする要求を受け取ったことに基づいて、コンテンツの選択されたブロック部分をコピーすることである。更に後続のアクションは、コンテンツのブロック部分をペーストする入力を受け取ったことに基づいて、コンテンツのブロック部分を他のアプリケーションにおいてペーストすることを含んでもよい。コンテンツ選択アプリケーションのための例示的なアプリケーション・コマンド・コントロールを示す図5A~図5Dおよび付随する説明を参照のこと。尚、本開示を理解する当業者であれば、コンテンツ選択のためのアプリケーション・コマンド・コントロールが様々に変化してもよいことは当然認められよう。実例をあげると、例示的なコンテンツ選択アプリケーションは、拡張可能な機能へのアクセスに対する処理効率を向上させつつ、コンテンツ選択アプリケーションの機能を拡張することができる追加のリソースとインターフェースするように構成することができる。
[0056] 図5A~図5Dは、本開示の態様を実施することができる例示的なコンテンツ選択アプリケーションに関連する処理について、例示的なユーザー・インターフェース・ビューを示す。図5A~図5Dに示すユーザー・インターフェース・ビューは、例示的なコンテンツ選択アプリケーション、およびコンテンツ選択アプリケーションと他のアプリケーション/サービスとの間における相互作用に関係して追加されたユーザー・インターフェース機能の例である。尚、本開示を理解する当業者であれば、本明細書において説明するユーザー・インターフェース・エレメントの提示は、本開示の趣旨を維持しつつ、様々に変化してもよいことは当然認められよう。
[0057] 図5Aは、ユーザー・インターフェース・ビュー500を示す。ユーザー・インターフェース・ビュー500は、移動体コンピューティング・デバイス(たとえば、移動体フォン)上で実行する文書処理アプリケーション502のビューである。しかしながら、ここで説明する例は、全てのタイプのコンピューティング・デバイスに適用可能である。文書処理アプリケーションは、移動体コンピューティング・デバイス上で実行していることが検出された前景アプリケーションの例である。実行中、文書処理アプリケーション502は、コンテンツの部分を含む文書(”Cooking Recipe.doc”)を提示している。ユーザーは、移動体コンピューティング・デバイスのホーム・ボタン504を利用して、例示的なコンテンツ選択アプリケーションの有効化を誘起することができる。実例をあげると、ユーザーがホーム・ボタン504を押し続けるのでもよく、こうすると、例示的なレイヤード・ビュー(既に説明した通り)の一部として、コンテンツ選択アプリケーションの例示的なユーザー・インターフェースの表示を誘起することができる。代替例では、ここで説明するユーザー・インターフェース機能は、他のタイプのアプリケーションへのアドオンであってもよく、この場合、入力の受け取りが、コンテンツ選択に関連するユーザー・インターフェース操作部の表示を誘起することができる。他の代替例では、コンテンツ選択に関連するユーザー・インターフェース操作部の表示は、ここで説明するコンテンツ選択機能(funcionality)の提示を誘起する入力を受け取ることを必要としなくてもよい。実例をあげると、ここで説明するコンテンツ選択機能は、数ある例の中でもとりわけ、ウェブ・ブラウザー・アプリケーション、またはパーソナル・インテリジェンス・アシスタント・アプリケーションのような任意のアプリケーション内部に組み込むこともできる。
[0058] 図5Bは、ユーザー・インターフェース・ビュー520を示す。ユーザー・インターフェース・ビュー520は、文書処理アプリケーション502上に重ね合わされる例示的なコンテンツ選択アプリケーションのユーザー・インターフェースを含む、例示的なレイヤード・ビューを提示する。ユーザー・インターフェース・ビュー520は、移動体コンピューティング・デバイス上に提示されるレイヤード・ビューを示す。しかしながら、ここで説明する例は全てのタイプのコンピューティング・デバイスに適用可能である。コンテンツ選択アプリケーションは、アプリケーション・コマンド・コントロールのためのユーザー・インターフェース(UI)操作部を含み、文書処理アプリケーション502上に重ね合わされている。実例をあげると、メニュー522は、ユーザーが選択したコンテンツに利用することができる追加のアクションに関連する種々のUI操作部を提示する。加えて、コンテンツ選択アプリケーションは、コンテンツのブロック部分の識別のためのUI操作部524(例えば、「T」)も含む。UI操作部524を選択した結果が、ユーザー・インターフェース・ビュー540(図5C)に示されている。
[0059] 図5Cは、ユーザー・インターフェース・ビュー540を示す。ユーザー・インターフェース・ビュー540は、文書処理アプリケーション502上に重ね合わされた例示的なコンテンツ選択アプリケーションのユーザー・インターフェースを含む、例示的なレイヤード・ビューを提示する。ユーザー・インターフェース・ビュー540は、移動体コンピューティング・デバイス上に提示されたレイヤード・ビューを示す。しかしながら、ここで説明する例は、全てのタイプのコンピューティング・デバイスに適用可能である。ユーザー・インターフェース・ビュー540は、ユーザー・インターフェース・ビュー520(図5B)に示されたUI操作部524の選択の例示的な結果を提示する。UI操作部524の選択は、文書処理アプリケーション502において提示されている文書に関連するコンテンツのブロック部分の識別を誘起する。実例をあげると、コンテンツの第1ブロック部分542が、方法400において説明した処理動作に基づいて生成された第1境界箱によって識別される。コンテンツの第2ブロック部分548は、方法400において説明した処理動作に基づいて生成された第2境界箱によって識別される。ユーザー・インターフェース・ビュー540において示すように、識別されたコンテンツのブロック部分は、コンテンツのブロック部分内においてコンテンツのスニペットを識別することができる複数の個々の境界箱を含むことができる。一例として、このような機能は、少なくとも第1個別境界箱544および第2個別境界箱546を含む、コンテンツの第1ブロック部分542に関して例示されている。尚、例示した例は、コンテンツの第1ブロック部分542内部にある追加の個別境界箱を示し、ユーザーはコンテンツのスニペットの選択のために、追加の個別境界箱を選択できることは認められてしかるべきである。例示した個別境界箱544および546は、各々、1行のテキストを含むことが示されているが、このような箱は、各々、複数のテキスト行(例えば、複数の行にわたる文章または節)を含んでもよいことは認められてしかるべきである。尚、コンテンツの第2ブロック部分548も複数の個別境界箱(番号を付けない)を含む(contain)ことは認められてしかるべきである。ユーザーは、コンテンツの1つ以上のブロック部分(または個々の境界箱)の選択を指示する入力を供給し、更に、追加のアクションのためにコンテンツ選択アプリケーションのメニュー522からUI操作部を選択することができる。一例として、ユーザーは、選択したコンテンツ部分のコピーのためのUI操作部550を選択する。以前の例において確認したように、コンテンツ選択アプリケーションは、コンテンツのそれぞれのブロックの個別性を維持しつつ、コンテンツの1つよりも多いブロック部分を同時に選択することを可能にする。更に、これは、連続的なジェスチャ選択(例えば、コンテンツのブロック部分全体を選択するために押し続ける、またはコンテンツを再度コピーするために複数のアクションを実行する)ことを必要とせずに、コンテンツの個々のブロック部分を再選択および/または再コピーすることも可能にする。UI操作部550の選択の結果を、ユーザー・インターフェース・ビュー560(図5D)に例示する。
[0060] 図5Dは、ユーザー・インターフェース・ビュー560を示す。ユーザー・インターフェース・ビュー560は、移動体コンピューティング・デバイス(例えば、移動体フォン)上で実行しているメッセージング・アプリケーション562上に重ね合わせられた例示的なコンテンツ選択アプリケーションのユーザー・インターフェースを提示する他の例示的なレイヤード・ビューである。ユーザー・インターフェース・ビュー560は、ユーザー・インターフェース・ビュー540(図5C)に示したUI操作部550の選択の例示的な結果を提示する。当業者であれば、メッセージング・アプリケーション562を起動または有効化するというような、メッセージング・アプリケーションにアクセスするためにユーザーが追加の手動アクションを行えることは、当然認められよう。他の例では、コンテンツ選択アプリケーションは、ユーザーが、選択したコンテンツに関して追加のアクションを行うときに、アプリケーション(例えば、メッセージング・アプリケーション562)を選択することを可能にするように構成することができる。ユーザー・インターフェース・ビュー560は、メッセージング・アプリケーション562においてユーザーがペースト動作を実行した結果を示す。処理デバイスのビュー560に示すように、文書処理アプリケーション502から選択されたコンテンツが、メッセージング・アプリケーション562においてペーストされている。一例では、ペースト動作は、UI操作部564の選択に基づいて行うことができる。実例をあげると、コンテンツ選択アプリケーションを含む(comprise)レイヤード・ビューは、メッセージング・アプリケーション562上に表示されたUI操作部564を含む(include)ことができる。コンテンツが選択されたとき(例えば、図5Cにおいて説明したように、文書処理アプリケーション502から)、ユーザー・インターフェース・ビュー560におけるUI操作部564の選択が、選択されたコンテンツをメッセージング・アプリケーション562にペーストする動作を誘起することができる。ある例では、コンテンツ選択アプリケーションは、コンテンツを新たなアプリケーションにペーストしたときに直ちに、コンテンツの特定のブロック部分に対して境界箱を表示するように構成することができる。他の例では、ユーザーが、コンテンツのブロック部分を再選択するジェスチャを行ってもよく(provide)、これが、コンテンツのブロック部分に対する境界箱の表示を誘起することもできる。
[0061] ある代替例では、コンテンツを他のアプリケーションにペーストすることが、コンテンツのプレビューの表示を誘起することもできる。あるいは、コンテンツ選択アプリケーションを通じて提供されたコンテンツが他のアプリケーション(例えば、メッセージング・アプリケーション562)を通じて送信されるときに、コンテンツのブロック部分のプレビューを生成し表示することもできる。実例をあげると、ユーザーが、例示的なコンテンツのブロック部分を含むメッセージを送ることを選択した場合、送られるメッセージ(例えば、テキスト・メッセージ)において、このコンテンツのブロック部分をプレビューとして表示することができる。一例では、ユーザーが、コンテンツのブロック部分の全体表現を表示するために、プレビューを選択してもよい。
[0062] 図6は、本開示の態様を実施することができる1つ以上のコンピューティング・デバイス上に実装可能な例示的なシステム600を示す。システム600は、ログ・データー評価、およびこのログ・データー評価の結果に基づく後続の処理のための例示的なシステムであってもよい。システム600のコンポーネントは、ハードウェア・コンポーネント、あるいはハードウェア・コンポーネント上に実装されるおよび/またはハードウェア・コンポーネントによって実行されるソフトウェアであってもよい。複数の例では、システム600は、ハードウェア・コンポーネント(例えば、ASIC、OSを実行する(execute/run)ために使用される他のデバイス)、およびハードウェア上で実行するソフトウェア・コンポーネント(例えば、アプリケーション、アプリケーション・プログラミング・インターフェース、モジュール、仮想機械、ランタイム・ライブラリー)の内任意のものを含むことができる。一例では、例示的なシステム600は、ソフトウェア・コンポーネントを実行するための環境を提供し、動作するために設定された制約にしたがい、システム/処理デバイスのリソースまたは設備(facilities)を利用することができ、コンポーネントは1つ以上の処理デバイス上で実行するソフトウェア(例えば、アプリケーション、プログラム、モジュール)であってもよい。実例をあげると、ソフトウェア(例えば、アプリケーション、動作命令、モジュール)は、コンピューター、移動体デバイス(例えば、スマート・フォーン/電話機、タブレット)、および/または任意の他のタイプの電子デバイスのような、処理デバイス上で実行することができる。処理デバイス動作環境の一例として、図1~図3の動作環境を参照のこと。システム600の1つ以上のコンポーネントは、図4の説明において説明した少なくとも方法400において説明し、更に図5A~図5Dの説明において説明した処理動作の内任意のものを実行するように構成することができる。他の例では、本明細書において開示したシステムのコンポーネントを複数のデバイスに跨がって拡散することもできる。例示的なシステム600は、アプリケーション・コンポーネント606を含み、アプリケーション・コンポーネント606は、更に、アプリケーション/サービス・コンポーネント608、コンテンツ選択コンポーネント610、およびプラットフォーム・リソース・コンポーネント612を含み、これら確認したコンポーネントの各々は、1つ以上の追加のコンポーネントを含んでもよい。
[0063] 1つ以上のデーター・ストア/ストレージまたは他のメモリーをシステム600と関連付けることができる。例えば、システム600のコンポーネントが、それに関連付けられた1つ以上のストレージ(1つまたは複数)614(以下で説明する)を有してもよい。システム600のコンポーネントに関連するデーターをそこに格納し、更にシステム600のコンポーネントによって実行される処理動作/命令もそこに格納することができる。更に、システム600のアプリケーション・コンポーネントが他のアプリケーション・サービスとインターフェースできることも示す。アプリケーション・サービスは、システム600の1つ以上のコンポーネントの機能を拡張することができる任意のリソースであってもよい。アプリケーション・サービスは、数ある例の中でもとりわけ、パーソナル・インテリジェント・アシスタント・サービス、生産性アプリケーション、ウェブ検索サービス、電子メール・アプリケーション、カレンダー、デバイス管理サービス、住所録サービス、情報サービス、ライン・オブ・ビジネス(LOB)管理サービス、顧客関係管理(RCM)サービス、デバッギング・サービス、アカウンティング・サービス、ペイロール・サービス、ならびにサード・パーティによってホストされるもしくは制御されるサービスおよび/またはウェブサイトを含むことができるが、これらに限定されるのではない。更に、アプリケーション・サービスは、ソーシャル・メディア・ウェブサイト、写真共有ウェブサイト、ビデオおよび音楽ストリーミング・ウェブサイト、検索エンジン・ウェブサイト、スポーツ、ニュース、または娯楽ウェブサイト等のような、サード・パーティによってホストされるその他のウェブサイトおよび/またはアプリケーションも含んでもよい。更に、アプリケーション・サービスは、分析(analytics)、データー編集、および/または記憶サービス等を、システム600のコンポーネントと関連付けて提供することができる。
[0064] システム600は、システム600の1つ以上のコンポーネントの動作に関連するデーターを格納することができる1つ以上のストレージ(1つまたは複数)614を含むことができる。複数の例では、ストレージ(1つまたは複数)614は、システム600の他のコンポーネントとインターフェースすることができる。システム600の任意のコンポーネントに関連するデーターは、ストレージ(1つまたは複数)614に格納することができ、コンポーネントは、クラウド・コンピューティング・プラットフォームを含む分散型ネットワークおよびインフラストラクチャ・サービスを通じて、ストレージ(1つまたは複数)614に接続することができる。例示的なストレージ(1つまたは複数)614は、ファースト・パーティ・ソース、セカンド・パーティ・ソース、およびサード・パーティ・ソースの内任意のものでよい。ストレージ(1つまたは複数)614は、任意の物理または仮想メモリー空間である。ストレージ(1つまたは複数)614は、数ある例の中でもとりわけ、システム600のコンポーネントによって実行される処理動作のための任意のデーター、処理動作からの保持データー(retained data)、内蔵プログラム(stored program)、コード、またはアプリケーション・プログラミング・インターフェース(API)、訓練データー、システム600の内部および外部にあるリソースへのリンク、ならびに知識データーを格納することができる。更に、複数の例では、システム600のコンポーネントはシステム600のコンポーネントによる処理において知識データーを利用することもできる。知識は、システム600の1つ以上のコンポーネントがアプリケーション・コンポーネント606の内任意のものの処理を改善するために使用することができ、知識データーは、システム600の内部または外部にあるリソースから入手することができる。複数の例では、知識データーをストレージ(1つまたは複数)614に維持することができ、またはシステム600の外部にある1つ以上のリソースから知識取り出し動作によって引き出すことができる。複数の例では(以下で説明するように)、ストレージ(1つまたは複数)614は、数ある例の中でもとりわけ以下のために、例示のデーター・プログラム/サービスおよび他の型のデーターを格納することができる。例示的なコンテンツ選択アプリケーションを含むアプリケーション/サービスの実行、アプリケーション/サービス間のインターフェース(例えば、コンテンツ選択アプリケーションと他の実行中のアプリケーションとの間の相互作用)、前景におけるアプリケーションの検出、アプリケーション/サービスに関連するコンテンツの評価、ブロック・コンテンツの識別、ブロック・コンテンツの選択、選択されたブロック・コンテンツに対する後続のアクション、例示的なコンテンツ選択アプリケーションのユーザー・インターフェース機能(feaure)を含むアプリケーション・コマンド・コントロール、コンピューティング・デバイスとの相互作用、知識データー、ユーザー特定データー、およびアプリケーション特定データーの引き出し。
[0065] 図6において、処理デバイス602は、少なくとも1つのプロセッサーと少なくとも1つのメモリー/ストレージとを備える任意のデバイスでよい。処理デバイス602の例には、デスクトップ・コンピューター、サーバー、電話機、タブレット、ファブレット、スレート、ラップトップ、ウェアラブル・コンピューティング・デバイスのような処理デバイス、ならびに1つ以上のプロセッサーまたは回路を有するデバイスというような、電気コンポーネントの任意の他の集合体を含むことができるが、これらに限定されるのではない。一例では、処理デバイス602は、アプリケーション/サービスを実行しているユーザーのデバイスであってもよい。複数の例では、処理デバイス602はネットワーク604を通じてアプリケーション・コンポーネント606と通信することができる。1つの態様では、ネットワーク404は、インターネットのような、分散型コンピューティング・ネットワークである。アプリケーション・サービスは、ネットワーク604を通じて、アプリケーション・コンポーネント606と通信することができる。処理デバイス602は、図1~図3の説明において説明したようなデバイスであってもよい。ある例では、処理デバイス602が複数の接続されたデバイスを含んでもよい。処理デバイス602はユーザー・コンピューティング・デバイスの例である。
[0066] 処理デバイス602は、ユーザー・アカウントを通じてアプリケーション/サービスにアクセスする能力を含む、処理動作を実行することができる。一例では、処理デバイス602は、認証されたユーザーを、例示的なアプリケーション/サービスの1人以上のユーザーのためにユーザー・データーを格納するアプリケーション・サービスに接続することができる。例示的なストレージ・アプリケーション/サービスは、処理デバイス602のユーザーに、例示的なデーター・センターに格納されているデーターへのアクセスを付与することができる。一例では、分散型ネットワークを通じて、処理デバイス602をストレージ(1つまたは複数)614に接続することができ、これによってユーザー・データーへのアクセスをユーザーに付与することができる。1つ以上のテナント・リソース(tenant resource)(例えば、テナント・リソースA、テナント・リソースB、テナント・リソースC等)を処理デバイス602と関連付けてもよい。テナント・リソースとは、処理デバイスおよび/または分散型ネットワーク・サービスに関連付けられたユーザー・アカウントであるとしてよい。テナント・リソースに関連するデーターは、ストレージ(1つまたは複数)614上に格納することができ、テナント・アカウントは、処理デバイス602および/または他の処理デバイスによって、格納されているデーターにアクセスするために利用することができる。
[0067] アプリケーション・コンポーネント606は、例示的なコンテンツ選択アプリケーション/サービスの処理を可能にするためにインターフェースするコンポーネントの集合体である。先に確認したように、アプリケーション・コンポーネント606は、アプリケーション/サービス・コンポーネント608、コンテンツ選択コンポーネント610、およびプラットフォーム・リソース・コンポーネント612を含むことができる。
[0068] アプリケーション/サービス・コンポーネント608は、例示的なコンテンツ選択アプリケーション以外のアプリケーションを実行および管理するように構成されたコンポーネントである。コンテンツ選択コンポーネント610は、アプリケーション/サービス・コンポーネント608とインターフェースして、前景アプリケーションを検出し、コンテンツ選択アプリケーションを含む例示的なレイヤード・ビューを提示することができる。数ある例の中でもとりわけ、アプリケーション/サービス・コンポーネント608は、アプリケーション/サービスを通じて直接選択可能でないコンテンツの部分を含むコンテンツのブロック部分を、コンテンツ選択コンポーネント610が選択することを可能にするソース・コードへのアクセスも付与することができる。
[0069] コンテンツ選択コンポーネント610は、少なくとも方法400(図4)において説明した処理動作を実行するように構成されたコンポーネントである。コンテンツ選択コンポーネント610の処理動作の他の例も、図5A~図5Dの説明において説明されている。代替例では、コンテンツ選択コンポーネント610は、他の既存のアプリケーションにおいて機能および/またはアドオンを提供するように構成することもできる。実例をあげると、コンテンツ選択アプリケーションによって提供される処理機能は、他の実行中のアプリケーションのアプリケーション・コマンド・コントロールに組み込まれてもよい。
[0070] プラットフォーム・リソース・コンポーネント612は、例示的なコンテンツ選択アプリケーションの機能を拡張するために、コンテンツ選択コンポーネント610とインターフェースするように構成されたコンポーネントである。一例として、プラットフォーム・リソース・コンポーネント612は、例示的なコンテンツ選択アプリケーションによる処理を改善する(enhance)アプリケーション・サービス(既に説明した)を提供することができる。
[0071] 本明細書全体にわたって「一例」(one example)または「例」(an example)に言及したが、これが意味するのは、特定の説明した機能(feature)、構造、または特性が少なくとも1つの例に含まれるということである。つまり、このような語句の使用は、単なる1つの例よりも多くを指す場合もある。更に、説明した機能(feature)、構造、または特性は、1つ以上の例において、任意の適した方法で組み合わされてもよい。
[0072] しかしながら、以上の例は、前述の特定的な詳細の内1つ以上がなくても、または他の方法、リソース、材料等を用いても実施できることは、当業者には認めることができよう。他方において、周知の構造、リソース、または動作については詳細に示すことも説明することもなかったのは、単に前述の例の態様を曖昧にすることに注意する(observe)ためである。
[0073] 以上、見本としての例およびアプリケーションについて例示し説明したが、本願の例は、先に説明した通りの構成およびリソースそのものに限定されるのではないことは理解されてしかるべきである。特許請求する例の範囲から逸脱することなく、本明細書において開示した方法およびシステムの構成、動作、および詳細において、当業者には明白な種々の修正、変更、および変形を行ってもよい。

Claims (15)

  1. 方法であって、
    コンピューティング・デバイスによって、コンテンツを含む第1アプリケーションを実行するステップと、
    前記コンピューティング・デバイスによって、コンテンツ選択アプリケーションのためのユーザー・インターフェースの有効化を誘起する入力を受け取るステップと、
    前記受け取った入力に基づいて、前記第1アプリケーション上に重ね合わされた前記コンテンツ選択アプリケーションの前記ユーザー・インターフェースを提示するレイヤード・ビューを表示するステップと、
    前記コンテンツ選択アプリケーションの前記ユーザー・インターフェースを通じて、前記第1アプリケーション内におけるコンテンツのブロック部分を識別するためのユーザー・インターフェース機能の選択を受け取るステップと、
    前記コンテンツ選択アプリケーションを通じて、前記第1アプリケーションにおけるコンテンツの複数のブロック部分を提示するステップと、
    前記ユーザー・インターフェースを通じて、前記コンテンツの前記複数のブロック部分のうちの1つのブロック部分を選択するための1回の不連続的なクリック・アクションを受け取るステップと、
    前記1回の不連続的なクリック・アクションの受け取りに応答して、前記コンテンツ選択アプリケーションを介して、前記第1アプリケーションから前記コンテンツの前記ブロック部分を選択するステップであって、前記コンテンツの前記ブロック部分がコンテンツの少なくとも2つのスニペットを含む、ステップと、
    を含む、方法。
  2. 請求項1記載の方法であって、前記1回の不連続的なクリック・アクションはデバイス入力である、方法。
  3. 請求項記載の方法において、前記1回の不連続的なクリック・アクションタッチ入力である、方法。
  4. 請求項1記載の方法であって、更に、前記コンテンツの前記選択されたブロック部分をコピーするためのユーザー・インターフェース機能の選択、前記コンテンツ選択アプリケーションを通じて受け取るステップと、前記コンテンツの前記選択されたブロック部分をコピーするための前記受け取られた選択に基づいて、前記コンテンツの前記選択されたブロック部分をコピーするステップとを含む、方法。
  5. 請求項4記載の方法であって、更に、前記コンテンツの前記選択されたブロック部分をペーストするためのユーザー・インターフェース選択、前記コンテンツ選択アプリケーションを通じて受け取るステップと、前記コンテンツの前記選択されたブロック部分をペーストするための前記受け取った選択に基づいて、前記コンテンツの前記ブロック部分を他のアプリケーションにおいてペーストするステップとを含む、方法。
  6. 請求項1記載の方法において、前記コンテンツの少なくとも2つのスニペットの内1つ以上が、前記第1アプリケーションにおいて選択可能でない、方法。
  7. 請求項1記載の方法であって、更に、前記コンテンツ選択アプリケーションを介して、前記第1アプリケーションにおける前記コンテンツに関連付けられたソース・コードを検出するステップを含み、前記コンテンツのブロック部分は、前記検出されたソース・コードの分析に基づいて前記第1アプリケーションから選択される、方法。
  8. システムであって、
    少なくとも1つのプロセッサーと、
    前記少なくとも1つのプロセッサーと動作的に接続され、コンピューター実行可能命令を格納するメモリーと、
    を備え、前記コンピューター実行可能命令が前記少なくとも1つのプロセッサーによって実行されると、前記少なくとも1つのプロセッサーに、
    コンテンツを含む第1アプリケーションを実行するステップと、
    コンテンツ選択アプリケーションのためのユーザー・インターフェースの有効化を誘起する入力を受け取るステップと、
    前記受け取った入力に基づいて、前記第1アプリケーション上に重ね合わされた前コンテンツ選択アプリケーションの前記ユーザー・インターフェースを提示するレイヤード・ビューを表示するステップと、
    前記コンテンツ選択アプリケーションの前記ユーザー・インターフェースを通じて、前記第1アプリケーション内におけるコンテンツのブロック部分を識別するためのユーザー・インターフェース機能の選択を受け取るステップと、
    前記コンテンツ選択アプリケーションを通じて、前記第1アプリケーションにおけるコンテンツの複数のブロック部分を提示するステップと、
    前記ユーザー・インターフェースを通じて、前記コンテンツの前記複数のブロック部分のうちの1つのブロック部分を選択するための1回の不連続的なクリック・アクションを受け取るステップと、
    前記1回の不連続的なクリック・アクションの受け取りに応答して、前記コンテンツ選択アプリケーションを介して、前記第1アプリケーションから前記コンテンツの前記ブロック部分を選択するステップであって、前記コンテンツのブロック部分がコンテンツの少なくとも2つのスニペットを含む、ステップと、
    を含む方法を実行させる、システム。
  9. 請求項8記載のシステムにおいて、前記1回の不連続的なクリック・アクションはデバイス入力である、システム。
  10. 請求項記載のシステムにおいて、前記1回の不連続的なクリック・アクションタッチ入力である、システム。
  11. 請求項8記載のシステムにおいて、前記実行される方法が、更に、前記コンテンツの前記選択されたブロック部分をコピーするためのユーザー・インターフェース機能の選択、前記コンテンツ選択アプリケーションを通じて受け取るステップと、前記コンテンツの前記選択されたブロック部分をコピーするための前記受け取られた選択に基づいて、前記コンテンツの前記選択されたブロック部分をコピーするステップとを含む、システム。
  12. 請求項11記載のシステムにおいて、前記実行される方法が、更に、前記コンテンツの前記選択されたブロック部分をペーストするためのユーザー・インターフェース選択、前記コンテンツ選択アプリケーションを通じて受け取るステップと、前記コンテンツの前記選択されたブロック部分をペーストするための前記受け取った選択に基づいて、前記コンテンツのブロック部分を第3アプリケーションにおいてペーストするステップとを含む、システム。
  13. 請求項8記載のシステムにおいて、前記コンテンツの少なくとも2つのスニペットの内1つ以上が、前記第1アプリケーションにおいて選択可能でない、システム。
  14. 請求項8記載のシステムにおいて、前記実行される方法が、更に、前記コンテンツ選択アプリケーションを介して、前記第1アプリケーションにおける前記コンテンツに関連付けられたソース・コードを検出するステップを含み、前記コンテンツのブロック部分は、前記検出されたソース・コードの分析に基づいて前記第1アプリケーションから選択される、システム。
  15. コンピューター実行可能命令を格納するコンピューター読み取り可能媒体であって、前記コンピューター実行可能命令が少なくとも1つのプロセッサーによって実行されると、前記少なくとも1つのプロセッサーに、
    前記少なくとも1つのプロセッサーによって、コンテンツを含む第1アプリケーションを実行するステップと、
    コンテンツ選択アプリケーションのためのユーザー・インターフェースの有効化を誘起する入力を受け取るステップと、
    前記受け取った入力に基づいて、前記第1アプリケーション上に重ね合わされた前コンテンツ選択アプリケーションの前記ユーザー・インターフェースを提示するレイヤード・ビューを表示するステップと、
    前記コンテンツ選択アプリケーションの前記ユーザー・インターフェースを通じて、前記第1アプリケーション内におけるコンテンツのブロック部分を識別するためのユーザー・インターフェース機能の選択を受け取るステップと、
    前記コンテンツ選択アプリケーションを通じて、前記第1アプリケーションにおけるコンテンツの複数のブロック部分を提示するステップと、
    前記ユーザー・インターフェースを通じて、前記コンテンツの前記複数のブロック部分のうちの1つのブロック部分を選択するための1回の不連続的なクリック・アクションを受け取るステップと、
    前記1回の不連続的なクリック・アクションの受け取りに応答して、前記コンテンツ選択アプリケーションを介して、前記第1アプリケーションから前記コンテンツの前記ブロック部分を選択するステップであって、前記コンテンツのブロック部分が少なくとも2つのコンテンツのスニペットを含む、ステップと、
    を含む方法を実行させる、コンピューター読み取り可能媒体。
JP2019525806A 2016-11-14 2017-11-07 レイヤード・コンテンツの選択 Active JP7100637B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/350,403 2016-11-14
US15/350,403 US10216368B2 (en) 2016-11-14 2016-11-14 Layered content selection
PCT/US2017/060262 WO2018089320A1 (en) 2016-11-14 2017-11-07 Layered content selection

Publications (2)

Publication Number Publication Date
JP2019536156A JP2019536156A (ja) 2019-12-12
JP7100637B2 true JP7100637B2 (ja) 2022-07-13

Family

ID=60452768

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019525806A Active JP7100637B2 (ja) 2016-11-14 2017-11-07 レイヤード・コンテンツの選択

Country Status (17)

Country Link
US (2) US10216368B2 (ja)
EP (1) EP3538981B1 (ja)
JP (1) JP7100637B2 (ja)
KR (1) KR102468164B1 (ja)
CN (2) CN116225282A (ja)
AU (1) AU2017356878B2 (ja)
BR (1) BR112019007342A2 (ja)
CA (1) CA3041079C (ja)
CL (1) CL2019001289A1 (ja)
CO (1) CO2019004602A2 (ja)
IL (1) IL266443A (ja)
MX (1) MX2019005357A (ja)
PH (1) PH12019550065A1 (ja)
RU (1) RU2019114199A (ja)
SG (1) SG11201903880UA (ja)
WO (1) WO2018089320A1 (ja)
ZA (1) ZA201902219B (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112947826B (zh) * 2021-01-28 2024-05-10 维沃移动通信有限公司 信息获取方法、装置及电子设备
US11892988B1 (en) * 2021-01-29 2024-02-06 Splunk Inc. Content pack management

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001273509A (ja) 2000-03-28 2001-10-05 Toshiba Corp 文書画像編集装置及び文書画像編集方法
JP2006155278A (ja) 2004-11-30 2006-06-15 Canon Software Inc 情報処理装置および情報処理方法およびプログラムおよび記録媒体
JP2014203288A (ja) 2013-04-05 2014-10-27 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7315848B2 (en) 2001-12-12 2008-01-01 Aaron Pearse Web snippets capture, storage and retrieval system and method
US8832577B2 (en) 2010-10-01 2014-09-09 Z124 Universal clipboard
US20050210401A1 (en) 2004-03-18 2005-09-22 Nokia Corporation Method and system for centralized copy/paste functionality
US7885622B2 (en) * 2004-10-27 2011-02-08 Chestnut Hill Sound Inc. Entertainment system with bandless tuning
US8375293B2 (en) * 2005-01-09 2013-02-12 Apple Inc. Method and apparatus for defining documents
US20060250360A1 (en) 2005-05-05 2006-11-09 International Business Machines Corporation Smart pointer
US7774335B1 (en) * 2005-08-23 2010-08-10 Amazon Technologies, Inc. Method and system for determining interest levels of online content navigation paths
US8386509B1 (en) * 2006-06-30 2013-02-26 Amazon Technologies, Inc. Method and system for associating search keywords with interest spaces
US20100153968A1 (en) 2008-12-11 2010-06-17 Christof Engel External rendering of clipboard data
US8745581B2 (en) 2010-06-21 2014-06-03 Touch Technologies, Inc. Method and system for selectively copying portions of a document contents in a computing system (smart copy and paste
KR101688150B1 (ko) * 2010-07-12 2017-01-02 엘지전자 주식회사 이동단말기 및 그의 멀티터치를 이용한 객체 표시 제어 방법
JP5664249B2 (ja) * 2011-01-06 2015-02-04 ソニー株式会社 情報処理装置、情報処理方法及び情報処理プログラム
US20130046935A1 (en) * 2011-08-18 2013-02-21 Microsoft Corporation Shared copy cache across networked devices
US9304662B2 (en) * 2011-08-25 2016-04-05 Vmware, Inc. User interface virtualization techniques
CN102436395A (zh) * 2011-11-22 2012-05-02 宇龙计算机通信科技(深圳)有限公司 一种内容选择复制方法和移动终端
US20130346912A1 (en) * 2012-06-20 2013-12-26 Alexander Buening Method And System To Launch And Manage An Application On A Computer System Having A Touch Panel Input Device
US8949729B2 (en) * 2012-06-13 2015-02-03 International Business Machines Corporation Enhanced copy and paste between applications
US9092121B2 (en) * 2012-11-30 2015-07-28 International Business Machines Corporation Copy and paste experience
US20140157169A1 (en) 2012-12-05 2014-06-05 Microsoft Corporation Clip board system with visual affordance
WO2014093700A1 (en) 2012-12-12 2014-06-19 Mobile Learning Networks, Inc. Systems and methods for interactive, real-time tablet-based tutoring
US9535503B2 (en) * 2013-01-29 2017-01-03 Blackberry Limited Methods and devices for simultaneous multi-touch input
US10042681B2 (en) * 2013-01-30 2018-08-07 Google Technology Holdings LLC Systems and methods for managing navigation among applications
CN103853611B (zh) * 2014-04-01 2018-03-02 上海斐讯数据通信技术有限公司 将应用程序间的文本进行快捷复制的方法及电子设备
KR102213897B1 (ko) 2014-10-31 2021-02-08 삼성전자주식회사 사용자 입력에 따라 하나 이상의 아이템들을 선택하는 방법 및 이를 위한 전자 장치
US9930162B2 (en) * 2014-12-02 2018-03-27 Facebook, Inc. Techniques for enhancing content on a mobile device
US10496275B2 (en) * 2015-10-12 2019-12-03 Microsoft Technology Licensing, Llc Multi-window keyboard

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001273509A (ja) 2000-03-28 2001-10-05 Toshiba Corp 文書画像編集装置及び文書画像編集方法
JP2006155278A (ja) 2004-11-30 2006-06-15 Canon Software Inc 情報処理装置および情報処理方法およびプログラムおよび記録媒体
JP2014203288A (ja) 2013-04-05 2014-10-27 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
CA3041079A1 (en) 2018-05-17
US10635268B2 (en) 2020-04-28
CO2019004602A2 (es) 2019-05-21
ZA201902219B (en) 2020-08-26
CN109952557A (zh) 2019-06-28
AU2017356878A1 (en) 2019-04-18
JP2019536156A (ja) 2019-12-12
RU2019114199A (ru) 2020-11-13
SG11201903880UA (en) 2019-05-30
KR102468164B1 (ko) 2022-11-16
BR112019007342A2 (pt) 2019-07-02
IL266443A (en) 2019-06-30
KR20190084051A (ko) 2019-07-15
PH12019550065A1 (en) 2020-01-20
US10216368B2 (en) 2019-02-26
CA3041079C (en) 2024-06-18
CN109952557B (zh) 2023-03-07
RU2019114199A3 (ja) 2020-12-11
WO2018089320A1 (en) 2018-05-17
EP3538981B1 (en) 2023-09-27
AU2017356878B2 (en) 2021-10-28
MX2019005357A (es) 2019-07-01
US20190146642A1 (en) 2019-05-16
CL2019001289A1 (es) 2019-09-13
US20180136795A1 (en) 2018-05-17
EP3538981A1 (en) 2019-09-18
CN116225282A (zh) 2023-06-06

Similar Documents

Publication Publication Date Title
US10666594B2 (en) Proactive intelligent personal assistant
CN106068523B (zh) 基于隐式和显式信号来发现企业内容
CN108369600B (zh) web浏览器扩展
US10169457B2 (en) Displaying and posting aggregated social activity on a piece of enterprise content
US20170024226A1 (en) Information processing method and electronic device
US9021507B2 (en) Dynamic use of data across multiple programs
US10757048B2 (en) Intelligent personal assistant as a contact
US20170090705A1 (en) Conversation and version control for objects in communications
US11822785B2 (en) Managing application focus transitions
KR20140027332A (ko) 상이한 파일 호스트를 이용한 파일 액세스 기법
US20190065517A1 (en) File preview and selective access to file content of archived file
JP7100637B2 (ja) レイヤード・コンテンツの選択
US10404765B2 (en) Re-homing embedded web content via cross-iframe signaling
US10162492B2 (en) Tap-to-open link selection areas
US11775149B2 (en) Interactive user interface controls for shared dynamic objects
US20230400969A1 (en) Interactive user interface controls for shared dynamic objects

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201106

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220104

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220603

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220701

R150 Certificate of patent or registration of utility model

Ref document number: 7100637

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150