JP2017533501A - ユーザアクションに応答して直接操作の有効化を決定するためのヒットテスト - Google Patents

ユーザアクションに応答して直接操作の有効化を決定するためのヒットテスト Download PDF

Info

Publication number
JP2017533501A
JP2017533501A JP2017515912A JP2017515912A JP2017533501A JP 2017533501 A JP2017533501 A JP 2017533501A JP 2017515912 A JP2017515912 A JP 2017515912A JP 2017515912 A JP2017515912 A JP 2017515912A JP 2017533501 A JP2017533501 A JP 2017533501A
Authority
JP
Japan
Prior art keywords
application
scl
direct manipulation
user
response
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.)
Granted
Application number
JP2017515912A
Other languages
English (en)
Other versions
JP6662861B2 (ja
JP2017533501A5 (ja
Inventor
ホーフセツ,クリスチャン
エデン,ヘザー
カロルーウィックス,スティーブン
クランツ,ジェームズ
ダルトン,マイケル
スン,スーウェン
ヤング,ケリー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2017533501A publication Critical patent/JP2017533501A/ja
Publication of JP2017533501A5 publication Critical patent/JP2017533501A5/ja
Application granted granted Critical
Publication of JP6662861B2 publication Critical patent/JP6662861B2/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/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/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/0485Scrolling or panning
    • 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
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Investigating Strength Of Materials By Application Of Mechanical Stress (AREA)

Abstract

ヒットテストは、アプリケーションに関連付けられたユーザインターフェースを経て検出されたユーザアクションが、アプリケーションの所与のオブジェクトと交点しているかどうかを決定するために実行され得る。アプリケーションは、1つまたは複数の特別コンテンツレイヤ(SCL)を含んでもよい。ユーザアクションに応答して、アプリケーションを通じたオブジェクトの直接操作の有効化に関する判断が、各SCLにおいて行われてもよい。アプリケーションのSCL処理モジュールは、SCLの前後処理中に、ユーザアクションと少なくとも1つのSCLの1つまたは複数の非透過画素との交点を検出することに応答してヒットを識別してもよく、そこで、画素は、オブジェクトに対応する。アプリケーションは、次いで、アプリケーションを通じたオブジェクトの直接操作がSCLによって有効化されているか、または有効化されていないか、およびしたがって、直接操作が自動的に開始されるべきか、または無効化されるべきかを、それぞれ決定してもよい。

Description

[0001] ヒット検出、ピッキング、および/またはピック相関としても知られるヒットテストは、アプリケーションに関連付けられたユーザインターフェース上のマウスカーソル、またはタッチポイントなどのユーザ制御カーソルが、ユーザインターフェース上に表示されたアプリケーションの、形状、直線、または曲線などの所与のオブジェクトと交点しているかどうかを決定するために使用されるプロセスである。さらに、ヒットテストは、アプリケーション内のメニュー項目またはターゲットの選択などのユーザアクションに対し、ユーザインターフェース上でのその視覚的な位置に基づいて、応答するために使用される。
[0002] 現在、ユーザからのタッチ入力、ジェスチャ入力、および/または従来型の入力のいずれかを通じてアプリケーション内のコンテンツにヒットしたかどうかを決定するための、高速で効率的な技術が存在していない。ヒットテストは、非常にコストがかかることがあり、また、ヒットテストを計算するのにかかる時間がコンテンツの複雑さに結びついているために、グラフィカルオブジェクトなどの、アプリケーションに関連付けられたある種類のコンテンツは、解を求めるのに非常に長くかかることがある。
[0003] 本概要は、詳細な説明でさらに後述する概念の抜粋を、簡潔な形式で導入するために提供されている。本概要は、特許請求される主題の重要な特徴または本質的特徴を専ら特定することを意図するものではなく、特許請求される主題の範囲を決定する際の補助として意図するものでもない。
[0004] 実施形態は、ユーザアクションに応答して、直接操作の有効化を決定するためにヒットテストを実行することを目的とする。コンピュータデバイスのプロセッサは、1つまたは複数の特別コンテンツレイヤ(SCL)を含むアプリケーションを実行し、アプリケーションを実行すると、アプリケーションに関連付けられたユーザインターフェースを、クライアントデバイスを通じてユーザに提示させるように構成されてもよい。アプリケーションは、ユーザインターフェースを通じてユーザアクションを検出してもよく、ユーザアクションとアプリケーションの少なくとも1つのSCLの1つまたは複数の画素との交点を検出することに応答して、ヒットが識別されてもよい。アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されているかどうかが、ヒットに応答してアプリケーションによって決定されてもよく、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されている場合、アプリケーションを通じたオブジェクトの直接操作が、自動的に開始されてもよい。
[0005] これらのおよび他の特徴および利点は、以下の詳細な説明を読み、関連する図面を検討することによって明らかとなるであろう。前述の概略説明および以下の詳細な説明は、共に例示的なものであり、特許請求される態様に限定するものではないと理解されたい。
[0006]ヒットテストが実行され得る、例示的なネットワーク環境を含む。 [0007]ヒットテストを実行するように構成されるアプリケーションに関連付けられた、例示的なユーザインターフェースを示す。 [0008]ユーザアクションに応答して、1つまたは複数の直接操作の有効化を決定するためにヒットテストを実行するための、例示的なプロセスを示す。 [0009]ユーザアクションに応答して、1つまたは複数の直接操作の有効化を決定するためのヒットテストを実行するために使用され得る、例示的な汎用コンピューティングデバイスのブロック図である。 [0010]実施形態に従って、ユーザアクションに応答して、1つまたは複数の直接操作の有効化を決定するためにヒットテストを実行する方法の論理フロー図を示す。
[0001] 上記で簡潔に述べたように、ヒットテストは、アプリケーションに関連付けられたユーザインターフェースを経て検出されたユーザアクションが、アプリケーションの所与のオブジェクトと交点しているかどうかを決定するために実行され得る。アプリケーションは、例えば、ワードプロセッサ、スプレッドシート、および/またはプレゼンテーションアプリケーションであってもよく、1つまたは複数の特別コンテンツレイヤ(SCL)を含んでもよい。本明細書で述べるように、SCLは、アプリケーションを通じたオブジェクトの直接操作の有効化に関する即時判断が、ユーザアクションに応答して行われ得る、アプリケーションレイヤである。アプリケーションのSCL処理モジュールは、SCLの前後処理(front to back processing)中に、ユーザアクションとSCLのうちの少なくとも1つの、1つまたは複数の非透過画素との交点を検出することに応答してヒットを識別してもよい。そこでは、画素が、アプリケーションのオブジェクトに対応してもよい。次いで、アプリケーションは、アプリケーションを通じたオブジェクトの直接操作がSCLによって有効化されているかどうかを決定するように構成されてもよい。アプリケーションを通じたオブジェクトの直接操作がSCLによって有効化されている場合、直接操作は、自動的に開始されてもよい。代わりに、アプリケーションを通じたオブジェクトの直接操作がSCLによって有効化されていない場合、直接操作は、無効化されてもよい。
[0002] 以下の詳細な説明では、本明細書の一部を形成し、具体的な実施形態または例が例示として示されている添付図面が参照される。本開示の精神または範囲から逸脱することなく、これらの態様が組み合わされても、他の態様が利用されても、構造的な変更が行われてもよい。以下の詳細な説明では、したがって、限定的な意味に解釈されるべきではなく、本発明の範囲は、添付の特許請求の範囲およびそれらの均等物によって定義される。
[0003] いくつかの実施形態は、パーソナルコンピュータ上のオペレーティングシステムで動作するアプリケーションプログラムと組み合わせて実行する、プログラムモジュールの概略的な文脈において説明されているが、当業者は、態様が、他のプログラムモジュールと組み合わせて実装されてもよいことを認識するであろう。
[0004] 概して、プログラムモジュールは、ルーチン、プログラム、コンポーネント、データ構造、および、特定のタスクを実行し、または特定の抽象データ型を実装する他の種類の構造を含む。さらに、当業者は、実施形態が、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラマブル家庭用電化製品、ミニコンピュータ、メインフレームコンピュータ、および同等のコンピューティングデバイスを含む、他のコンピュータシステム構成で実施され得ると理解するであろう。実施形態はまた、通信ネットワークを通じてリンクされたリモート処理デバイスによってタスクが実行される、分散コンピューティング環境において実施されてもよい。分散コンピューティング環境では、プログラムモジュールは、ローカルメモリ記憶デバイス、およびリモートメモリ記憶デバイスの両方に位置してもよい。
[0005] いくつかの実施形態は、コンピュータ実装プロセス(方法)、コンピューティングシステムとして、またはコンピュータプログラム製品もしくはコンピュータ可読媒体などの製品として、実装されてもよい。コンピュータプログラム製品は、コンピュータシステムによって読み取り可能であり、コンピュータまたはコンピューティングシステムに例示的なプロセスを実行させるための命令を含むコンピュータプログラムを符号化する、コンピュータ記憶媒体であってもよい。コンピュータ可読記憶媒体は、コンピュータ可読メモリデバイスである。コンピュータ可読記憶媒体は、例えば、揮発性コンピュータメモリ、不揮発性メモリ、ハードドライブ、フラッシュドライブ、フロッピーディスク、またはコンパクトディスク、および同等のハードウェア媒体のうちの1つまたは複数により、実装され得る。
[0006] 本明細書全体を通して、「プラットフォーム」という用語は、ヒットテスト実行のためのソフトウェアおよびハードウェアコンポーネントの組み合わせであってもよい。プラットフォームの例は、複数のサーバ上で実行されるホスト型サービス、単一のコンピューティングデバイス上で実行されるアプリケーション、および同等のシステムを含むが、限定はされない。「サーバ」という用語は、概して、典型的にはネットワーク化された環境で、1つまたは複数のソフトウェアプログラムを実行するコンピューティングデバイスを指す。一方、サーバはまた、ネットワーク上のサーバとして見られる1つまたは複数のコンピューティングデバイス上で実行される、仮想サーバ(ソフトウェアプログラム)として実装されてもよい。これらの技術および例示的な動作についてのさらなる詳細が、以下で提供される。
[0007] 図1は、ヒットテストが実行され得る、例示的なネットワーク環境を含む。図100に示すように、1人または複数のユーザ(108、114、および120)は、クラウドベースネットワーク130を介して、ワードプロセッサ、スプレッドシート、および/またはプレゼンテーションアプリケーションなどのアプリケーション102にアクセスすることができる。いくつかの例では、アプリケーション102は、1つまたは複数のSCL104を含んでもよく、そこで、SCL104は、ユーザアクションがSCL104の1つまたは複数の画素と交点することに応答して、アプリケーション102を通じたオブジェクトの直接操作の有効化に関する判断を即時に行い得る、アプリケーションレイヤである。各SCL104について、1つまたは複数の種類の直接操作が定義されてもよく、直接操作の各種類について、直接操作がSCLによって有効化されているかどうかがさらに定義されてもよい。アプリケーション102が含むSCL104の数は、アプリケーション102の種類に依存してもよい。例えば、プレゼンテーションアプリケーションは、ワードプロセッサアプリケーションよりも少ない数のSCL104を含んでもよい。
[0008] アプリケーション102は、リモートサーバにおいてホストされてもよく、クラウドベースネットワーク130を介し、ユーザのクライアントデバイスを通じてアクセスされてもよい。例えば、サーバは、アプリケーション102を実行し、アプリケーション102に関連付けられたユーザインターフェース106をユーザのクライアントデバイスを通じて提示させるように構成されてもよい。アプリケーション102のローカル版もまた、ユーザのクライアントデバイスにおいてローカルにホストされてもよく、ローカルアプリケーション102に関連付けられたデータが、クラウドベースネットワーク130を介して取得されてもよい。いくつかの例示的なクライアントデバイスは、デスクトップコンピュータ122、ラップトップコンピュータ110、スマートフォン、カーフォン、モバイルフォン、タブレット116、および/またはホームオートメーションデバイスを含んでもよい。例えば、第1のユーザ108は、クラウドベースネットワーク130を介し、ラップトップコンピュータ110を通じてアプリケーション102にアクセスしてもよく、タッチ入力112を用いてユーザインターフェース106と対話してもよい。第2のユーザ114は、クラウドベースネットワーク130を介し、タブレット116を通じてアプリケーション102にアクセスしてもよく、スタイラス入力118を用いてユーザインターフェース106と対話してもよい。第3のユーザ120は、クラウドベースネットワーク130を介し、デスクトップコンピュータ122を通じてアプリケーション102にアクセスしてもよく、マウス124などの従来型の入力を用いてユーザインターフェース106と対話してもよい。他の入力方法は、例えば、ジェスチャ入力、および/またはキーボード入力を含んでもよい。
[0009] 例示的なアプリケーション102は、ユーザインターフェース106を通じてユーザアクションを検出するように構成されてもよい。ユーザアクションは、タッチ入力112、スタイラス入力118、マウス124入力、ならびに/または、ジャイロスコープ入力、視線追跡、および同等のものなどの他の入力を含んでもよい。例えば、第1のユーザ108のタッチ入力112は、ユーザインターフェース106上に表示されるアプリケーション102の、制御要素、テキスト要素、またはグラフィカル要素などのオブジェクトに関連付けられたタップアクション、またはスワイプアクションを含んでもよい。
[0010] アプリケーション102が少なくとも1つのSCL104を含む場合、アプリケーション102のSCL処理モジュールが、検出されたユーザアクションに応答して、SCL104の前後処理を実行するように構成されてもよい。アプリケーション102のSCL処理モジュールは、ユーザアクションの近位にある、ユーザインターフェース上の領域のテクスチャコンテンツに基づいて、前後処理を実行するかどうかを決定するように構成されてもよい。例えば、アプリケーションの1つまたは複数のオブジェクト(ユーザアクションに関連付けられたオブジェクト、および1つまたは複数の他のオブジェクトを含み得る)が、ユーザアクションの近位にある、ユーザインターフェース上の領域に表示されている場合、オブジェクトに対応するテクスチャコンテンツが、SCL処理モジュールに前後処理を実行するように指示してもよい。対照的に、ユーザアクションの近位にあるユーザインターフェース上の領域に、オブジェクトが表示されていない場合、ユーザアクションはおそらく意図したものではなく、応答は必要でないため、テクスチャコンテンツがないことによって、SCL処理モジュールに前後処理を実行しないように指示してもよい。前後処理の間に、ユーザアクションとSCL104の1つまたは複数の画素との交点を検出することに応答して、ヒットが識別されてもよい。画素は、ユーザアクションに関連付けられたオブジェクトに対応する非透過画素であってもよく、そこで、オブジェクトの少なくとも一部が、ユーザアクションの近位にあるユーザインターフェース106上の領域に位置する。
[0011] 次いで、アプリケーション102は、ヒットに応答して、アプリケーション102を通じたオブジェクトの直接操作がSCL104によって有効化されているかどうかを決定するように構成されてもよい。アプリケーション102を通じたオブジェクトの直接操作がSCL104によって有効化されている場合、アプリケーション102を通じたオブジェクトの直接操作が、自動的に開始されてもよい。アプリケーション102を通じたオブジェクトの直接操作がSCL104によって有効化されていない場合、アプリケーション102を通じたオブジェクトの直接操作は、無効化されてもよい。前述したように、SCL104は、アプリケーション102を通じたオブジェクトの直接操作の有効化に関する判断が即時に行われ得る、アプリケーション102のレイヤである。各SCL104について、1つまたは複数の種類の直接操作が定義されてもよく、直接操作の各種類について、直接操作がSCL104によって有効化されているか、または無効化されるかが、さらに定義されてもよい。直接操作の種類は、ユーザアクションに関係するオブジェクトの振る舞いに基づいて決定されてもよく、他の例もあるが、オブジェクトのパン、ズーム、および選択を含んでもよい。例えば、第1のユーザ108が、プレゼンテーションアプリケーションの文書スライドの画像上でのタッチ入力112を通じて、タップアクションを実行する場合、直接操作の種類は、ズームによって画像を拡大することを含んでもよい。
[0012] ヒットテストの実行を伴うSCL104の即時判断機能を組み込むことによって、現在のヒットテスト技術を拡張する、ユーザアクションに応答して有効化を決定するための高速で効率的な方法が供給され得る。例えば、その組み込みによって、処理工程を追加する現在の必要性をなくし、よって、直接操作の有効化を決定するためのさらなる処理ソフトウェアおよび/またはハードウェアが必要ないようにする。それによって、全体の操作時間およびコストを減少させることができる。
[0013] 図1の例示的なシステムについて、具体的なサーバ、クライアントデバイス、アプリケーション、およびインタラクションを用いて説明した。実施形態は、この例示的な構成によるシステムに限定されない。直接操作の有効化を決定するためのヒットテスト実行用のプラットフォームは、より少ないコンポーネント、または追加のコンポーネントを使用し、他のタスクを実行する構成において実装されてもよい。さらに、直接操作の有効化を決定するためのヒットテスト実行用のプラットフォームは、本明細書で述べた原理を用いて、同様に実装されてもよい。
[0014] 図2は、ヒットテストを実行するように構成されたアプリケーションに関連付けられている、例示的なユーザインターフェースを示す。図200に示すように、プレゼンテーションアプリケーションなどのアプリケーションは、タブレット202などのクライアントデバイスを通じて、ユーザによってアクセスされてもよい。アプリケーションは、1つまたは複数のSCLを含んでもよく、アプリケーションを実行すると、アプリケーションに関連付けられたユーザインターフェース204が、タブレット202を通じて提示されてもよい。
[0015] アプリケーションは、ユーザインターフェース204を通じてユーザアクションを検出してもよく、そこで、ユーザアクションは、タッチ入力206を通じて実行されてもよく、グラフ208などの、ユーザインターフェース204に表示されているアプリケーションのオブジェクトに関連付けられた、タップアクションを含んでもよい。アプリケーションのSCL処理モジュールは、ユーザアクションの検出に応答して、少なくとも1つのSCLの前後処理を実行するように構成されてもよい。SCL処理モジュールは、ユーザアクションの近位にある、ユーザインターフェース204上の領域のテクスチャコンテンツに基づいて、前後処理を実行するかどうかを決定してもよい。例えば、タップアクションの近位にあるユーザインターフェース204上の領域のテクスチャコンテンツにより、グラフ208またはテキストコンテンツ210などの、アプリケーションの1つまたは複数のオブジェクトが近位にあり、したがって、前後処理が実行されるべきであることを示してもよい。別の例では、ユーザアクションが、いかなる種類のコンテンツも表示していないユーザインターフェース204上の領域においてタッチ入力を通じて実行される、スワイプアクションである場合、ユーザアクションはおそらく意図したものではなく、よって応答は必要でないため、テクスチャコンテンツにより、オブジェクトが近位になく、したがって、前後処理が実行されるべきでないことを示してもよい。
[0016] ユーザアクションとSCLの1つまたは複数の画素との交点を検出することに応答して、ヒットが識別されてもよい。画素は、ユーザによってタップされるグラフ208に対応する非透過画素であってもよい。次いで、アプリケーションは、ヒットに応答して、アプリケーションを通じたオブジェクトの直接操作がSCLによって有効化されているかどうかを決定するように構成されてもよく、そこで、直接操作は、例えば、コピーおよびペースト機能を実行するためにグラフ208を選択することを含んでもよい。アプリケーションを通じたオブジェクトの直接操作がSCLによって有効化されている場合、アプリケーションを通じたオブジェクトの直接操作が、自動的に開始されてもよい。アプリケーションを通じたオブジェクトの直接操作がSCLによって有効化されていない場合、アプリケーションを通じたオブジェクトの直接操作は、無効化されてもよい。
[0017] 図3は、ユーザアクションに応答して、1つまたは複数の直接操作の有効化を決定するためにヒットテストを実行するための、例示的なプロセスを示す。ワードプロセッサ、スプレッドシート、および/またはプレゼンテーションアプリケーションなどのアプリケーションは、クライアントデバイスを通じてユーザによってアクセスされてもよく、アプリケーションを実行すると、アプリケーションとのユーザインタラクションを可能にするために、アプリケーションに関連付けられたユーザインターフェースが、クライアントデバイスのディスプレイを通じて提示されてもよい。いくつかの例では、アプリケーションは、1つまたは複数のSCLを含んでもよく、そこで、SCLの数は、アプリケーションの種類に依存する。各SCLは、ユーザアクションに応答して、アプリケーションを通じたオブジェクトの直接操作の有効化に関する判断が即時に行われ得る、アプリケーションレイヤである。
[0018] 図300に示すように、アプリケーションに関連付けられたユーザインターフェースを通じてユーザアクションを検出することに応答して、アプリケーションのSCL処理モジュールは、アプリケーションが少なくとも1つのSCLを含むかどうかを決定302してもよい。アプリケーションが、少なくとも1つのSCLを含まない場合304、ヒットが識別されない306可能性がある。アプリケーションが、少なくとも1つのSCLを含む場合308、アプリケーションのSCL処理モジュールが、ユーザアクションの検出に応答して、各SCLの前後処理を実行310するように構成されてもよい。SCL処理モジュールは、ユーザアクションの近位にある、ユーザインターフェース上の領域のテクスチャコンテンツに基づいて、前後処理を実行するかどうかを決定してもよい。SCL処理モジュールは、ユーザアクションと、前後処理中に検出された少なくとも1つのSCLの1つまたは複数の画素との交点があるかどうかを決定することによって、ヒットがあるかどうかを識別312してもよい。識別されるヒットがない場合314、SCL処理モジュールは、他のSCLの処理を継続してもよく(即ち、アプリケーションが1つより多くのSCLを含む場合)、一度、各SCLが処理され、ヒットが識別されなければ306、SCLの処理を完了316してもよい。
[0019] 識別されるヒットがある場合318、アプリケーションは、SCLがアプリケーションを通じたオブジェクトの直接操作を有効化するかどうかを決定320してもよい。例えば、1つまたは複数の種類の直接操作が、各SCLについて定義されてもよく、直接操作の各種類について、直接操作がSCLによって有効化されているか、または無効化されるかが、さらに定義されてもよい。SCLがアプリケーションを通じたオブジェクトの直接操作を有効化する場合322、直接操作が、自動的に開始324されてもよく、処理が終了330してもよい。SCLがアプリケーションを通じたオブジェクトの直接操作を有効化しない場合326、直接操作は、無効化328されてもよく、処理が終了330してもよい。
[0020] 図1〜3の例は、1つまたは複数の直接操作の有効化を決定するためにヒットテストを実行するための、具体的なネットワーク環境、構成、デバイス、および処理を用いて説明された。ヒットテストを実行するための実施形態は、これらの例による具体的なネットワーク環境、構成、デバイス、および処理に限定されない。
[0021] ユーザアクションに応答して、オブジェクトの直接操作の有効化または無効化に関する即時判断を行うための、アプリケーションの1つまたは複数のSCLの機能は、プロセッサの負荷を有利に減少させ、同時にユーザアクションへのより高速な応答に関して有用性を改善することができる。
[0022] 図4および関連する説明は、ユーザアクションに応答して、1つまたは複数の直接操作の有効化を決定するためのヒットテストを実行するために使用され得る汎用コンピューティングデバイスの、簡潔な概略説明を提供することを意図したものである。
[0023] 例えば、コンピューティングデバイス400は、サーバ、デスクトップコンピュータ、ポータブルコンピュータ、スマートフォン、専用コンピュータ、または類似のデバイスとして使用されてもよい。例示的な基本構成402では、コンピューティングデバイス400は、1つまたは複数のプロセッサ404、およびシステムメモリ406を含んでもよい。メモリバス408は、プロセッサ404とシステムメモリ406との間の通信用に使用されてもよい。基本構成402は、内側の破線内にあるそれらのコンポーネントによって、図4に示されている。
[0024] 所望の構成に応じて、プロセッサ404は、任意の種類のものであってもよく、マイクロプロセッサ(μP)、マイクロコントローラ(μC)、デジタル信号プロセッサ(DSP)、またはそれらの任意の組み合わせを含むが限定はされない。プロセッサ404は、レベルキャッシュメモリ412、1つまたは複数のプロセッサコア414、およびレジスタ416などの、1つまたは複数のレベルのキャッシュを含んでもよい。例示的なプロセッサコア414は(それぞれ)、演算論理ユニット(ALU)、浮動小数点ユニット(FPU)、デジタル信号処理コア(DSPコア)、またはそれらの任意の組み合わせを含んでもよい。例示的なメモリコントローラ418は、プロセッサ404とともに使用されてもよく、または、いくつかの実装では、メモリコントローラ418は、プロセッサ404の内部部品であってもよい。
所望の構成に応じて、システムメモリ406は、任意の種類のものであってもよく、揮発性メモリ(RAMなど)、不揮発性メモリ(ROM、フラッシュメモリなど)、またはそれらの任意の組み合わせを含むが限定はされない。システムメモリ406は、オペレーティングシステム420、アプリケーション422、およびプログラムデータ424を含んでもよい。アプリケーション422は、1つまたは複数のSCL、およびSCL処理モジュール426を含んでもよい。SCL処理モジュール426は、アプリケーションの不可欠な部品であってもよく、またはそれ自体が別のアプリケーションであってもよい。アプリケーション422の実行によって、関連するユーザインターフェースが提示されてもよい。ユーザインターフェースを通じてユーザアクションを検出することに応答して、アプリケーションが少なくとも1つのSCLを含むかどうかが決定されてもよい。SCL処理モジュール426は、ユーザアクションと、少なくとも1つのSCLの1つまたは複数の画素との交点を検出するために、アプリケーションの少なくとも1つのSCLの前後処理を実行してもよく、それによってヒットを識別してもよい。アプリケーションを通じたオブジェクトの直接操作が、少なくとも1つのSCLによって有効化されているかどうかが、ヒットに応答して決定されてもよく、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されている場合、アプリケーションを通じたオブジェクトの直接操作が、自動的に開始されてもよい。代わりに、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されていない場合、アプリケーションを通じたオブジェクトの直接操作は、無効化されてもよい。プログラムデータ424は、本明細書で述べるように、他のデータの中でも、SCLに基づく直接操作の有効化および直接操作の種類定義に関するプロセスデータ428を含んでもよい。
[0025] コンピューティングデバイス400は、追加の特徴または機能性、ならびに基本構成402と任意の所望のデバイスおよびインターフェースとの間の通信を容易にするための追加のインターフェースを有してもよい。例えば、バス/インターフェースコントローラ430は、ストレージインターフェースバス434を経て、基本構成402と1つまたは複数のデータ記憶デバイス432との間の通信を容易にするために使用されてもよい。データ記憶デバイス432は、1つもしくは複数の取外し式記憶デバイス436、1つもしくは複数の非取外し式記憶デバイス438、またはそれらの組み合わせであってもよい。取外し式記憶デバイスおよび非取外し式記憶デバイスの例は、いくつか名前を挙げると、フレキシブルディスクドライブおよびハードディスクドライブ(HDD)などの磁気ディスクデバイス、コンパクトディスク(CD)ドライブまたはデジタル多用途ディスク(DVD)ドライブなどの光ディスクドライブ、ソリッドステートドライブ(SSD)、ならびにテープドライブを含む。例示的なコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報の記憶のために、任意の方法または技術で実装された、揮発性および不揮発性、取外し式および非取外し式媒体を含んでもよい。
[0026] システムメモリ406、取外し式記憶デバイス436、および非取外し式記憶デバイス438は、コンピュータ記憶媒体の例である。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリもしくは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)、ソリッドステートドライブ、もしくは他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージもしくは他の磁気記憶デバイス、または、所望の情報を記憶するために使用され、コンピューティングデバイス400によってアクセスされ得る、任意の他の媒体を含むが、限定はされない。任意のそのようなコンピュータ記憶媒体は、コンピューティングデバイス400の一部であってもよい。
[0027] コンピューティングデバイス400はまた、バス/インターフェースコントローラ430を経て、様々なインターフェースデバイス(例えば、1つまたは複数の出力デバイス442、1つまたは複数の周辺インターフェース444、および1つまたは複数の通信デバイス446)から基本構成402への通信を容易にするためのインターフェースバス440を含んでもよい。例示的な出力デバイス442のうちのいくつかは、1つまたは複数のA/Vポート452を経てディスプレイまたはスピーカなどの様々な外部デバイスと通信するように構成され得る、グラフィック処理ユニット448および音声処理ユニット450を含む。1つまたは複数の例示的な周辺インターフェース444は、シリアルインターフェースコントローラ454、またはパラレルインターフェースコントローラ456を含んでもよく、それらは、1つまたは複数のI/Oポート458を経て、入力デバイス(例えば、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デバイスなど)、または他の周辺デバイス(例えば、プリンタ、スキャナなど)などの外部デバイスと通信するように構成されてもよい。例示的な通信デバイス446は、ネットワークコントローラ460を含んでもよく、ネットワークコントローラ460は、1つまたは複数の通信ポート464を経てネットワーク通信リンクを介し、1つまたは複数の他のコンピューティングデバイス462との通信を容易にするように配置されてもよい。1つまたは複数の他のコンピューティングデバイス462は、サーバ、クライアントデバイス、および同等のデバイスを含んでもよい。
[0028] ネットワーク通信リンクは、通信媒体の一例であってもよい。通信媒体は、典型的には、搬送波または他の移送機構などの変調データ信号内のコンピュータ可読命令、データ構造、プログラムモジュール、または他のデータによって実現されてもよく、任意の情報配信媒体を含んでもよい。「変調データ信号」は、信号内の情報を符号化するようにその特性のうちの1つまたは複数が設定され、または変更された信号であってもよい。限定ではなく例として、通信媒体は、有線ネットワークまたは直接配線された接続などの有線媒体、ならびに音響、無線周波数(RF)、マイクロ波、赤外線(IR)、および他の無線媒体などの無線媒体を含んでもよい。本明細書で使用されるコンピュータ可読媒体という用語は、記憶媒体および通信媒体の両方を含んでもよい。
[0029] コンピューティングデバイス400は、上記機能のうちのいずれかを含む、汎用もしくは専用サーバ、メインフレーム、または類似のコンピュータの一部として実装されてもよい。コンピューティングデバイス400は、また、ラップトップコンピュータ構成および非ラップトップコンピュータ構成の両方を含む、パーソナルコンピュータとして実装されてもよい。
[0030] 例示的な実施形態は、1つまたは複数の直接操作の有効化を決定するために、ヒットテストを実行するための方法も含み得る。これらの方法は、本明細書で述べた構造を含む、任意の数の方法で実装され得る。そのような1つの方法は、本開示において述べた種類のデバイスの機械操作によるものであってもよい。他の任意選択的な方法は、他の動作が機械によって実行され得る一方で、動作のうちのいくつかを実行する1人または複数の人間の操作者と共に実行される方法の個々の動作のうちの1つまたは複数のためのものであってもよい。これらの人間の操作者は、互いに結び付けられる必要はなく、それぞれが、プログラムの一部を実行する機械を用いるだけであってもよい。他の実施形態では、人間のインタラクションは、機械で自動化され得る、予め選択された基準などによって自動化され得る。
[0031] 図5は、実施形態に従って、ユーザアクションに応答して、1つまたは複数の直接操作の有効化を決定するためにヒットテストを実行する方法の、プロセス500のための論理フロー図を示す。プロセス500は、サーバまたは他のシステム上で実装されてもよい。
[0032] プロセス500は、動作510で開始する。動作510では、アプリケーションは、アプリケーションに関連付けられたユーザインターフェースを通じてユーザアクションを検出するように構成され得る。ユーザアクションは、例えば、タップおよびスワイプアクションを含むタッチ入力、ジェスチャ入力、ペン入力、マウス入力、ならびに/またはキーボード入力を含んでもよい。アプリケーションが少なくとも1つのSCLを含む場合、アプリケーションのSCL処理モジュールが、各SCLの前後処理を実行するように構成されてもよい。
[0033] 動作520において、前後処理の間に、ユーザアクションとSCLの1つまたは複数の画素との交点を検出することに応答して、ヒットが識別されてもよい。画素は、ユーザインターフェース上に表示されたアプリケーションの、制御要素、テキスト要素、および/またはグラフィカル要素などの、ユーザアクションに関連付けられたオブジェクトに対応する非透過画素であってもよい。オブジェクトのうちの、全てではなくとも少なくとも一部は、ユーザアクションの近位にあるユーザインターフェース上の領域内に位置してもよい。
[0034] 動作530において、アプリケーションは、次いで、ヒットに応答して、アプリケーションを通じたオブジェクトの直接操作がSCLによって有効化されているかどうかを決定するように構成されてもよい。SCLは、アプリケーションを通じたオブジェクトの直接操作の有効化に関する判断が即時に行われ得る、アプリケーションレイヤである。各SCLについて、1つまたは複数の種類の直接操作が定義されてもよく、直接操作の各種類について、直接操作がSCLによって有効化されているか、または無効化されるかが、さらに定義されてもよい。直接操作の種類は、ユーザアクションに関係するオブジェクトの振る舞いに基づいて決定されてもよく、他の例もあるが、オブジェクトのパン、ズーム、および選択を含んでもよい。
[0035] 動作540において、アプリケーションを通じたオブジェクトの直接操作がSCLによって有効化されている場合に、アプリケーションを通じたオブジェクトの直接操作が、自動的に開始されてもよい。代わりに、アプリケーションを通じたオブジェクトの直接操作がSCLによって有効化されていない場合、アプリケーションを通じたオブジェクトの直接操作は、無効化されてもよい。
[0036] プロセス500に含まれる動作は、例示のためのものである。ユーザアクションに応答して直接操作の有効化を決定するためのヒットテストの実行は、より少ない工程、または追加の工程を有する類似のプロセスによって、および本明細書で述べた原理を用いて異なる動作順序で、実装されてもよい。
[0037] いくつかの実施形態によれば、ヒットテストを実行する方法が提供される。方法は、アプリケーションに関連付けられたユーザインターフェースを通じてユーザアクションを検出する手段と、ユーザアクションとアプリケーションの少なくとも1つのSCLの1つまたは複数の画素との交点を検出することに応答して、ヒットを識別する手段と、ヒットに応答して、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されているかどうかを決定する手段と、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されている場合に、アプリケーションを通じたオブジェクトの直接操作を自動的に開始する手段と、を含んでもよい。
[0038] いくつかの例によれば、ヒットテストを実行する方法が提供される。例示的な方法は、アプリケーションに関連付けられたユーザインターフェースを通じてユーザアクションを検出することと、ユーザアクションとアプリケーションの少なくとも1つのSCLの1つまたは複数の画素との交点を検出することに応答して、ヒットを識別することと、を含んでもよい。例示的な方法は、また、ヒットに応答して、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されているかどうかを決定することと、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されている場合に、アプリケーションを通じたオブジェクトの直接操作を自動的に開始することと、を含んでもよい。
[0039] 他の例では、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されていない場合に、直接操作は無効化されてもよい。アプリケーションに関連付けられたユーザインターフェースを通じてユーザアクションを検出することに応答して、アプリケーションが少なくとも1つのSCLを含むかどうかが決定されてもよい。ユーザアクションと少なくとも1つのSCLの1つまたは複数の画素との交点を検出するために、アプリケーションの少なくとも1つのSCLの前後処理が、アプリケーションのSCL処理モジュールにおいて実行されてもよい。ユーザアクションの近位にあるユーザインターフェース上の領域のテクスチャコンテンツに基づいて、前後処理を実行するかどうかが決定されてもよい。
[0040] さらなる例では、各SCLについて、1つまたは複数の種類の直接操作が定義されてもよい。直接操作の各種類について、直接操作がヒットに応答してSCLによって有効化されているか、または無効化されるかが、定義されてもよい。ユーザアクションは、タッチ入力、ジェスチャ入力、マウス入力、ペン入力、視線追跡入力、音声コマンド入力、ジャイロスコープ入力、および/またはキーボード入力を含んでもよい。
[0041] 他の例によれば、ヒットテストを実行するコンピューティングデバイスについて、説明され得る。例示的なコンピューティングデバイスは、命令を記憶するように構成されたメモリと、メモリに連結されたプロセッサであって、1つまたは複数のSCLを含むアプリケーションを実行し、アプリケーションに関連付けられたユーザインターフェースを提示させる、プロセッサと、を含んでもよい。アプリケーションは、アプリケーションに関連付けられたユーザインターフェースを通じてユーザアクションを検出し、ユーザアクションと、SCLのうちの少なくとも1つの、1つまたは複数の画素との交点を検出することに応答して、ヒットを識別するように構成されてもよい。アプリケーションは、また、ヒットに応答して、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されているかどうかを決定し、少なくとも1つのSCLがアプリケーションを通じたオブジェクトの直接操作を有効化する場合に、アプリケーションを通じたオブジェクトの直接操作を自動的に開始するように構成されてもよい。
[0042] 他の実施形態では、少なくとも1つのSCLの1つまたは複数の画素は、非透過であってもよい。少なくとも1つのSCLの1つまたは複数の画素は、アプリケーションに関連付けられたユーザインターフェース上に表示されるオブジェクトに対応してもよい。オブジェクトのうちの少なくとも一部は、ユーザアクションの近位にあるユーザインターフェース上の領域内に位置してもよい。直接操作の種類は、ユーザアクションに関係するオブジェクトの振る舞いに基づいて決定されてもよく、そこで、直接操作の種類は、パン、ズーム、および選択を含む。
[0043] さらなる実施形態では、SCLの数は、アプリケーションの種類に依存してもよく、アプリケーションは、ワードプロセッサアプリケーション、スプレッドシートアプリケーション、プレゼンテーションアプリケーションのうちの1つまたは複数である。アプリケーションに関連付けられたユーザインターフェースは、クライアントデバイスにおいてアプリケーションを実行すると、クライアントデバイスのディスプレイを通じてユーザに提示されてもよい。
[0044] いくつかの例によれば、ヒットテストを実行するための命令が記憶されたコンピュータ可読メモリデバイスについて、説明され得る。例示的な命令は、アプリケーションのユーザインターフェースを通じてユーザアクションを検出することと、ユーザアクションと、少なくとも1つのSCLの1つまたは複数の画素との交点を検出することに応答して、ヒットを識別することと、を含んでもよい。例示的な命令は、また、ヒットに応答して、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されているかどうかを決定することと、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されている場合に、アプリケーションを通じたオブジェクトの直接操作を自動的に開始すること、または、アプリケーションを通じたオブジェクトの直接操作が少なくとも1つのSCLによって有効化されていない場合に、直接操作を無効化することと、を含んでもよい。
[0045] 他の例では、各SCLについて、1つまたは複数の種類の直接操作が定義されてもよい。直接操作の各種類について、直接操作がヒットに応答してSCLによって有効化されているか、または無効化されるかが、定義されてもよい。
[0046] 上記明細書、例、およびデータは、製品、および実施形態の構成物の使用の完全な説明を提供する。主題について、構造的特徴および/または方法論的動作に特有の言い回しで説明したが、添付の特許請求の範囲で定義される主題は、必ずしも上述した具体的な特徴または動作に限定されるものではないと理解されたい。むしろ、上述した具体的な特徴および動作は、特許請求の範囲および実施形態を実装する形式の例として開示されている。

Claims (15)

  1. ヒットテストを実行する方法であって、
    アプリケーションに関連付けられたユーザインターフェースを通じてユーザアクションを検出することと、
    前記ユーザアクションと前記アプリケーションの少なくとも1つの特別コンテンツレイヤ(SCL)の1つまたは複数の画素との交点を検出することに応答して、ヒットを識別することと、
    前記ヒットに応答して、前記アプリケーションを通じたオブジェクトの直接操作が前記少なくとも1つのSCLによって有効化されているかどうかを決定することと、
    前記アプリケーションを通じた前記オブジェクトの前記直接操作が前記少なくとも1つのSCLによって有効化されている場合に、前記アプリケーションを通じた前記オブジェクトの前記直接操作を自動的に開始することと、
    を含む方法。
  2. 前記アプリケーションを通じた前記オブジェクトの前記直接操作が前記少なくとも1つのSCLによって有効化されていない場合に、前記直接操作を無効化することをさらに含む、請求項1に記載の方法。
  3. 前記アプリケーションに関連付けられた前記ユーザインターフェースを通じて前記ユーザアクションを検出することに応答して、前記アプリケーションが前記少なくとも1つのSCLを含むかどうかを決定することをさらに含む、請求項1に記載の方法。
  4. 前記ユーザアクションと前記少なくとも1つのSCLの前記1つまたは複数の画素との前記交点を検出するために、前記アプリケーションのSCL処理モジュールにおいて前記アプリケーションの前記少なくとも1つのSCLの前後処理を実行することをさらに含む、請求項1に記載の方法。
  5. 前記ユーザアクションの近位にある前記ユーザインターフェース上の領域のテクスチャコンテンツに基づいて、前記前後処理を実行するかどうかを決定することをさらに含む、請求項4に記載の方法。
  6. 前記ユーザアクションは、タッチ入力、ジェスチャ入力、マウス入力、ペン入力、視線追跡入力、音声コマンド入力、ジャイロスコープ入力、および/またはキーボード入力のうちの1つまたは複数を含む、請求項1に記載の方法。
  7. ヒットテストを実行するコンピューティングデバイスであって、
    命令を記憶するように構成されたメモリと、
    前記メモリに連結されたプロセッサであって、1つまたは複数の特別コンテンツレイヤ(SCL)を含むアプリケーションを実行し、前記アプリケーションに関連付けられたユーザインターフェースを提示させる、プロセッサと、を備え、前記アプリケーションは、
    前記アプリケーションに関連付けられた前記ユーザインターフェースを通じてユーザアクションを検出し、
    前記ユーザアクションと前記SCLのうちの少なくとも1つの、1つまたは複数の画素との交点を検出することに応答して、ヒットを識別し、
    前記ヒットに応答して、前記アプリケーションを通じたオブジェクトの直接操作が前記少なくとも1つのSCLによって有効化されているかどうかを決定し、
    前記少なくとも1つのSCLが前記アプリケーションを通じた前記オブジェクトの前記直接操作を有効化する場合に、前記アプリケーションを通じた前記オブジェクトの前記直接操作を自動的に開始するように構成される、コンピューティングデバイス。
  8. 前記少なくとも1つのSCLの前記1つまたは複数の画素は、前記アプリケーションに関連付けられた前記ユーザインターフェース上に表示される前記オブジェクトに対応する、請求項7に記載のコンピューティングデバイス。
  9. 前記オブジェクトの少なくとも一部は、前記ユーザアクションの近位にある前記ユーザインターフェース上の領域に位置する、請求項8に記載のコンピューティングデバイス。
  10. 前記直接操作の種類は、前記ユーザアクションに関係する前記オブジェクトの振る舞いに基づいて決定され、パン、ズーム、および選択のうちの1つを含む、請求項8に記載のコンピューティングデバイス。
  11. 前記SCLの数は、前記アプリケーションの種類に依存する、請求項7に記載のコンピューティングデバイス。
  12. 前記アプリケーションに関連付けられた前記ユーザインターフェースは、クライアントデバイスにおいて前記アプリケーションを実行すると、前記クライアントデバイスのディスプレイを通じてユーザに提示される、請求項7に記載のコンピューティングデバイス。
  13. ヒットテストを実行するための命令が記憶されたコンピュータ可読メモリデバイスであって、前記命令は、
    アプリケーションのユーザインターフェースを通じてユーザアクションを検出することと、
    前記ユーザアクションと少なくとも1つの特別コンテンツレイヤ(SCL)の1つまたは複数の画素との交点を検出することに応答して、ヒットを識別することと、
    前記ヒットに応答して、前記アプリケーションを通じたオブジェクトの直接操作が前記少なくとも1つのSCLによって有効化されているかどうかを決定することと、
    前記アプリケーションを通じた前記オブジェクトの前記直接操作が前記少なくとも1つのSCLによって有効化されている場合に、前記アプリケーションを通じた前記オブジェクトの前記直接操作を自動的に開始すること、または、
    前記アプリケーションを通じた前記オブジェクトの前記直接操作が前記少なくとも1つのSCLによって有効化されていない場合に、前記直接操作を無効化することと、を含む、コンピュータ可読メモリデバイス。
  14. 前記命令は、
    各SCLについて、前記直接操作の1つまたは複数の種類を定義することをさらに含む、請求項13に記載のコンピュータ可読メモリデバイス。
  15. 前記命令は、
    前記直接操作の各種類について、前記直接操作が前記ヒットに応答して前記SCLによって有効化されているか、または無効化されるかを定義することをさらに含む、請求項14に記載のコンピュータ可読メモリデバイス。
JP2017515912A 2014-10-22 2015-10-15 ユーザアクションに応答して直接操作の有効化を決定するためのヒットテスト Active JP6662861B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/521,368 2014-10-22
US14/521,368 US20160117080A1 (en) 2014-10-22 2014-10-22 Hit-test to determine enablement of direct manipulations in response to user actions
PCT/US2015/055618 WO2016064642A1 (en) 2014-10-22 2015-10-15 Hit-test to determine enablement of direct manipulations in response to user actions

Publications (3)

Publication Number Publication Date
JP2017533501A true JP2017533501A (ja) 2017-11-09
JP2017533501A5 JP2017533501A5 (ja) 2018-10-18
JP6662861B2 JP6662861B2 (ja) 2020-03-11

Family

ID=54365383

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017515912A Active JP6662861B2 (ja) 2014-10-22 2015-10-15 ユーザアクションに応答して直接操作の有効化を決定するためのヒットテスト

Country Status (11)

Country Link
US (1) US20160117080A1 (ja)
EP (1) EP3210101B1 (ja)
JP (1) JP6662861B2 (ja)
KR (1) KR20170072281A (ja)
CN (1) CN107077272B (ja)
AU (1) AU2015336277B2 (ja)
BR (1) BR112017005798A2 (ja)
CA (1) CA2964471A1 (ja)
MX (1) MX2017005193A (ja)
RU (1) RU2705437C2 (ja)
WO (1) WO2016064642A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11262897B2 (en) * 2015-06-12 2022-03-01 Nureva Inc. Method and apparatus for managing and organizing objects in a virtual repository
US10163184B2 (en) 2016-08-17 2018-12-25 Adobe Systems Incorporated Graphics performance for complex user interfaces

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5737554A (en) * 1995-10-31 1998-04-07 Apple Computer, Inc. System and method of using object sensitivity for selecting computer-generated objects
US6049325A (en) * 1997-05-27 2000-04-11 Hewlett-Packard Company System and method for efficient hit-testing in a computer-based system
US6369830B1 (en) * 1999-05-10 2002-04-09 Apple Computer, Inc. Rendering translucent layers in a display system
US6795089B2 (en) * 2000-12-20 2004-09-21 Microsoft Corporation Dynamic, live surface and model elements for visualization and modeling
US20030002729A1 (en) * 2001-06-14 2003-01-02 Wittenbrink Craig M. System for processing overlapping data
US7137077B2 (en) * 2002-07-30 2006-11-14 Microsoft Corporation Freeform encounter selection tool
US7262785B2 (en) * 2003-08-21 2007-08-28 Microsoft Corporation Ink editing architecture
GB0502891D0 (en) * 2005-02-12 2005-03-16 Next Device Ltd User interfaces
US20080011819A1 (en) * 2006-07-11 2008-01-17 Microsoft Corporation Microsoft Patent Group Verification of hit testing
US20090100383A1 (en) * 2007-10-16 2009-04-16 Microsoft Corporation Predictive gesturing in graphical user interface
US20090327965A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Selection of items in a virtualized view
US9684521B2 (en) * 2010-01-26 2017-06-20 Apple Inc. Systems having discrete and continuous gesture recognizers
WO2011061603A1 (en) * 2009-11-20 2011-05-26 Nokia Corporation Methods and apparatuses for generating and utilizing haptic style sheets
US8589950B2 (en) * 2011-01-05 2013-11-19 Blackberry Limited Processing user input events in a web browser
US20120185787A1 (en) * 2011-01-13 2012-07-19 Microsoft Corporation User interface interaction behavior based on insertion point
US20130125066A1 (en) * 2011-11-14 2013-05-16 Microsoft Corporation Adaptive Area Cursor
CA2763328C (en) * 2012-01-06 2015-09-22 Microsoft Corporation Supporting different event models using a single input source
US9286081B2 (en) * 2012-06-12 2016-03-15 Apple Inc. Input device event processing
US9383885B2 (en) * 2012-06-13 2016-07-05 Microsoft Technology Licensing, Llc Hit testing curve-based shapes using polygons
US8874969B2 (en) * 2012-07-09 2014-10-28 Microsoft Corporation Independent hit testing
US9021437B2 (en) * 2012-07-13 2015-04-28 Microsoft Technology Licensing, Llc Declarative style rules for default touch behaviors
CN103577322B (zh) * 2012-08-08 2015-08-12 腾讯科技(深圳)有限公司 一种点击测试方法和装置
EP2904484A4 (en) * 2012-10-05 2016-06-01 Tactual Labs Co HYBRID SYSTEMS AND METHODS FOR THE PROCESSING AND FEEDBACK OF LOW-LATENCY USER ENTRY

Also Published As

Publication number Publication date
JP6662861B2 (ja) 2020-03-11
KR20170072281A (ko) 2017-06-26
CN107077272B (zh) 2020-12-01
MX2017005193A (es) 2017-07-27
EP3210101B1 (en) 2018-11-28
CA2964471A1 (en) 2016-04-28
AU2015336277A1 (en) 2017-04-13
AU2015336277B2 (en) 2020-06-18
RU2017113771A3 (ja) 2019-04-25
US20160117080A1 (en) 2016-04-28
BR112017005798A2 (pt) 2017-12-12
WO2016064642A1 (en) 2016-04-28
RU2705437C2 (ru) 2019-11-07
EP3210101A1 (en) 2017-08-30
CN107077272A (zh) 2017-08-18
RU2017113771A (ru) 2018-10-23

Similar Documents

Publication Publication Date Title
US9952761B1 (en) System and method for processing touch actions
JP6133411B2 (ja) ジェスチャまたはタッチを介してユーザインターフェースを制御するための最適化スキーム
US9152529B2 (en) Systems and methods for dynamically altering a user interface based on user interface actions
JP6037973B2 (ja) ユーザ・インターフェースのための入力モード間の自動切り替え
US10419585B2 (en) Dynamically surfacing UI controls
US10949154B2 (en) Systems and methods for using screen sampling to detect display changes
US20110199386A1 (en) Overlay feature to provide user assistance in a multi-touch interactive display environment
US20140344765A1 (en) Touch Sensitive UI Pinch and Flick Techniques for Managing Active Applications
WO2018119674A1 (zh) 一种柔性显示屏的控制方法及装置
JP2012507089A (ja) ウィンドウ固有の制御の表面化および管理
US11334237B2 (en) Software defined icon interactions with multiple and expandable layers
KR20170037957A (ko) 스프레드시트의 데이터세트를 폼 기반 뷰 내에 표현하는 기법
WO2022048513A1 (zh) 搜索展示方法、装置及电子设备
US20140215393A1 (en) Touch-based multiple selection
US20140152583A1 (en) Optimistic placement of user interface elements on a touch screen
US20180181553A1 (en) Providing insertion feature with clipboard manager application
WO2017107725A1 (zh) 一种用于控制操作界面的方法与设备
JP6662861B2 (ja) ユーザアクションに応答して直接操作の有効化を決定するためのヒットテスト
WO2018098960A1 (zh) 一种触屏设备操作方法及触屏设备
TW201913299A (zh) 終端設備的操作方法、裝置以及電子設備
JP2018508865A (ja) アプリケーションイベントの追跡
WO2017092584A1 (zh) 一种用于操控操作对象的方法与设备
US9635170B2 (en) Apparatus and method for controlling terminal to expand available display region to a virtual display space
US10082931B2 (en) Transitioning command user interface between toolbar user interface and full menu user interface based on use context
CN114356299A (zh) 页面搭建过程中的事件编排方法和装置

Legal Events

Date Code Title Description
A529 Written submission of copy of amendment under article 34 pct

Free format text: JAPANESE INTERMEDIATE CODE: A529

Effective date: 20170518

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180907

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180907

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190924

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: 20200121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200213

R150 Certificate of patent or registration of utility model

Ref document number: 6662861

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250