JP2016518658A - ウィンドウレイアウト管理のためのアプリケーションウィンドウデバイダコントロール - Google Patents

ウィンドウレイアウト管理のためのアプリケーションウィンドウデバイダコントロール Download PDF

Info

Publication number
JP2016518658A
JP2016518658A JP2016507531A JP2016507531A JP2016518658A JP 2016518658 A JP2016518658 A JP 2016518658A JP 2016507531 A JP2016507531 A JP 2016507531A JP 2016507531 A JP2016507531 A JP 2016507531A JP 2016518658 A JP2016518658 A JP 2016518658A
Authority
JP
Japan
Prior art keywords
application window
application
user interface
divider control
window
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
JP2016507531A
Other languages
English (en)
Other versions
JP2016518658A5 (ja
JP6216440B2 (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 JP2016518658A publication Critical patent/JP2016518658A/ja
Publication of JP2016518658A5 publication Critical patent/JP2016518658A5/ja
Application granted granted Critical
Publication of JP6216440B2 publication Critical patent/JP6216440B2/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
    • 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]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Window Of Vehicle (AREA)

Abstract

アプリケーションウィンドウデバイダコントロールが、ユーザインターフェースにおいて第1のアプリケーションウィンドウおよび第2のアプリケーションウィンドウによって共有される。アプリケーションウィンドウデバイダコントロールをユーザインターフェースの軸に沿って移動させる受け取られた方向指示に基づいて、ユーザインターフェースの軸に沿った一貫した間隔を置いた一連のポイントにわたって第1のアプリケーションウィンドウおよび第2のアプリケーションウィンドウの配置を行うことができる。配置調整は、ユーザインターフェースにおけるその他のアプリケーションウィンドウに影響を与えることもできる。アプリケーションウィンドウデバイダコントロールは、特定の条件が満たされた場合に、軸に沿った「マグネティック」ポイントを提供するようにスナップすることもできる。

Description

[0001] コンピュータオペレーティングシステム(それに対応するユーザインターフェースを含む)は、ユーザが、ユーザインターフェースを通じてそのユーザへの提示用のアプリケーションウィンドウを調整することを可能にする。しかしながら、そのようなユーザ指向の調整は、特にユーザインターフェースがより現代的かつフレキシブルになるにつれて、不便な制限を伴うようになっている。
[0002] 本明細書において説明され主張されている実施態様は、ユーザインターフェースにおいて第1のアプリケーションウィンドウおよび第2のアプリケーションウィンドウによって共有されるアプリケーションウィンドウデバイダコントロールを提供することによって、前述の問題に対処する。アプリケーションウィンドウデバイダコントロールをユーザインターフェースの軸に沿って移動させる受け取られた方向指示に基づいて、ユーザインターフェースの軸に沿った一貫した間隔を置いた一連のポイントにわたって第1のアプリケーションウィンドウおよび第2のアプリケーションウィンドウの配置を行うことができる。配置調整は、ユーザインターフェースにおけるその他のアプリケーションウィンドウに影響を与え得る。アプリケーションウィンドウデバイダコントロールは、特定の条件が満たされた場合に、軸に沿った「マグネティック」ポイントを提供するようにスナップすることもできる。
[0003] この「発明の概要」は、コンセプトのうちの選択されたものを、簡略化された形式で紹介するために提供されており、それらのコンセプトは、以降の「発明を実施するための形態」においてさらに説明されている。この「発明の概要」は、特許請求される主題の鍵となる特徴または必要不可欠な特徴を識別することを意図されておらず、特許請求される主題の範囲を限定するために使用されることも意図されていない。
[0004] その他の実施態様も、本明細書において説明され列挙されている。
[0005]例示的なユーザインターフェーススクリーンにおいてアプリケーションウィンドウデバイダコントロールを共有している2つのアプリケーションウィンドウを示す図である。 [0006]例示的なユーザインターフェースにおいてアプリケーションウィンドウデバイダコントロールを共有している2つのアプリケーションウィンドウを示す概略図である。 [0007]例示的なユーザインターフェースにおいてアプリケーションウィンドウデバイダコントロールおよび第3のアプリケーションウィンドウを共有している2つのアプリケーションウィンドウを示す概略図である。 [0008]アプリケーションウィンドウデバイダコントロールを実施するユーザインターフェースオペレーションの例示的なシーケンスを示す図である。 [0009]例示的なユーザインターフェースにおいてマグネティックポイントでアプリケーションウィンドウデバイダコントロールを共有している2つのアプリケーションウィンドウを示す概略図である。 [0010]アプリケーションウィンドウデバイダコントロールを使用して2つのアプリケーションウィンドウの配置を調整するための例示的なオペレーションを示す図である。 [0011]例示的なユーザインターフェースにおいてマグネティックポイントに関連してアプリケーションウィンドウデバイダコントロールを操作するための例示的なオペレーションを示す図である。 [0012]説明されているテクノロジーを実施する際に役立つことができる例示的なシステムを示す図である。
[0013] アプリケーションウィンドウを起動することは、アプリケーションを初めて実行すること、および、既に実行されているアプリケーションの新たなまたは隠されているアプリケーションウィンドウに切り替えることを含む(これらには限定されない)。加えて、アプリケーションウィンドウは、オペレーティングシステムコンポーネント、オペレーティングシステムユーティリティー、および専用アプリケーションプログラム(たとえば、ウェブブラウザプログラム、ワープロプログラム、スプレッドシートプログラム)のウィンドウを含み得る(これらには限定されない)。
[0014] 図1は、例示的なユーザインターフェーススクリーン104においてアプリケーションウィンドウデバイダコントロール110を共有している2つのアプリケーションウィンドウ100および102を示している。ウィンドウ管理システム106は、典型的には、オペレーティングシステムまたはユーザインターフェース環境のコンポーネントであるが、独立したアプリケーションとすることもできる。ウィンドウ管理システム106は、アプリケーションウィンドウ100および102の表示、配置、レイアウト、外観、およびその他の側面、ならびにその他のウィンドウおよびユーザインターフェース特徴およびオペレーションを管理する。
[0015] アプリケーションウィンドウ100は、ウェブ検索エンジンからの検索結果を表示する検索結果ウィンドウを提示する。個々の検索結果(検索結果108など)は、代表的なテキストおよび/または1つもしくは複数のイメージを、ブラウザナビゲート可能なリンクとともに含み、そのブラウザナビゲート可能なリンクは、そのブラウザナビゲート可能なリンクによって識別されるウェブサイトへのナビゲーションのためにユーザによって選択することができる。アプリケーションウィンドウ102は、コロラド州デンバーにおける4日間の天気予報を含む、天気アプリケーションまたはウェブサイトからの結果を提示している。ウィンドウ境界コントロール110は、アプリケーションウィンドウ100の表示されているエリアと、アプリケーションウィンドウ102の表示されているエリアとを区分し、示されているケースにおいては、アプリケーションウィンドウどうしを隔てている。いくつかの実施態様においては、ウィンドウ境界コントロール110は、一方または両方のウィンドウのサイズおよび/またはロケーションを変更するためにユーザによって操作することができる。
[0016] アプリケーションウィンドウ100および102は、図1においては、重ならないウィンドウであるものとして示されている。しかしながら、説明されているテクノロジーは、重ならないウィンドウ環境には限定されない。たとえば、そのような環境においては、重なるウィンドウ環境におけるそれぞれのアプリケーションウィンドウは、ウィンドウ境界コントロールによって境界設定することができ、そのウィンドウ境界コントロールは、潜在的に重なるウィンドウのロケーション、サイズ、および前から後ろへの順序付け(まとめて、「配置」)(たとえば、ウィンドウのz順序付け)を変更するためにユーザによって操作することができる。ウィンドウ管理システム106は、アプリケーションウィンドウ100および102を通じて、ならびにその他のユーザインターフェースコンポーネント(たとえば、キーボードインターフェース、タッチスクリーンインターフェース、音声インターフェース、およびポインティングデバイス)を通じて入力を受け取り、そのユーザインターフェースを通じてアプリケーションウィンドウ100および102、ウィンドウ境界コントロール110、ならびにその他のアプリケーションウィンドウおよびコントロールを表示する。
[0017] ウィンドウ境界コントロール110は、2つの別個のアプリケーションウィンドウ100と102との間における、またはアプリケーションウィンドウと、ユーザインターフェース内の空きスペースとの間におけるデバイダに相当し、したがって、「アプリケーションウィンドウデバイダコントロール」と呼ぶこともできる。アプリケーションウィンドウデバイダコントロールは、(空きスペースに対する)アプリケーションウィンドウのサイズにおける変更、またはアプリケーションウィンドウ100および102の相対的なサイズにおける変更をウィンドウ管理システム106に伝達するためにユーザインターフェースを通じて操作することができる。したがって、アプリケーションウィンドウデバイダコントロールの機能は、1つのアプリケーションウィンドウまたは別のアプリケーションウィンドウのコンポーネントであるよりもむしろ1つまたは複数のアプリケーションウィンドウの外部境界を提供するウィンドウ管理システムコントロールに相当し、何らかの構成においては、ユーザインターフェースおよびウィンドウ管理システム106の一部として複数のアプリケーションウィンドウによって共有することができる。
[0018] 一実施態様においては、複数のアプリケーションウィンドウデバイダコントロールが、ともにマージして、単一のアプリケーションウィンドウデバイダコントロールを形成することができる。たとえば、2つのアプリケーションウィンドウを、ユーザインターフェースの横軸に沿って、空きスペースによって隔てられた状態で提示することができる。このシナリオにおいては、それぞれのアプリケーションは、アプリケーションウィンドウデバイダコントロールがアプリケーションウィンドウと空きスペースとの間にある状態で表示される。アプリケーションウィンドウデバイダコントロールのうちの一方が、他方のアプリケーションウィンドウデバイダコントロールへドラッグされた場合には、空きスペースは、拡大されたアプリケーションウィンドウで満たされ、2つのアプリケーションウィンドウデバイダコントロールは、マージして、ユーザインターフェース内の単一のアプリケーションウィンドウデバイダコントロールになる。加えて、それらの2つのアプリケーションウィンドウデバイダコントロールは、それらの間における空きスペースが最小の空きスペース幅に狭まったときに、単一のアプリケーションウィンドウデバイダコントロールへと「スナップする」ことができる。
[0019] 図1は、重ならないウィンドウ環境を示しているが、重なるウィンドウ環境も、1つのアプリケーションウィンドウを別のアプリケーションウィンドウから区分するウィンドウ管理システムコントロールとしてか、または、アプリケーションウィンドウをユーザインターフェース内の空きスペース、もしくはそのアプリケーションウィンドウによって部分的にふさがれている別のアプリケーションウィンドウに関連して区分/境界設定するウィンドウ管理システムコントロールとしてかを問わず、アプリケーションウィンドウデバイダを採用することができる。
[0020] ユーザは、(たとえば、タッチスクリーン、ポインティングデバイス、キーボード入力を介して)アプリケーションウィンドウデバイダコントロールを選択して、それを、ユーザインターフェースの横の広がりに沿った広範囲の相対的に連続した複数のロケーションに沿って左右にドラッグすることができる。たとえば、ユーザは、アプリケーションウィンドウデバイダコントロールフォーカスを(たとえば、それを選択することによって)与えることができ、次いでユーザは、キーボード入力(たとえば、矢印キー)を押下することまたはその他の形でアクティブ化することによって、アプリケーションウィンドウデバイダコントロールを、そのアプリケーションウィンドウデバイダコントロールが軸に沿った所望のロケーションに来るまで移動させることができる。一実施態様においては、相対的に連続した複数のロケーションは、横軸に沿った緊密な一貫した間隔を置いた複数のポイントを含む(たとえば、それぞれのポイントは、少数のピクセルまたはその他の何らかの視覚的に連続した間隔によって隣のポイントから隔てられている)。代替の実施態様は、相対的に連続したウィンドウデバイダコントロールを、ユーザインターフェースの縦の広がりに沿って、またはその他の何らかの軸に沿って提供することができるということを理解されたい。ユーザインターフェースは、複数のアプリケーションウィンドウデバイダコントロールを含むこともでき、それらのうちのいくつかは、別々の軸上で交わることができる。
[0021] 一実施態様においては、ユーザによって誘発されたアプリケーションウィンドウデバイダコントロールの横方向の移動に応答して、ユーザインターフェースは、アプリケーションウィンドウ100および102の連続した相対的なサイズ設定を提案する視覚的な合図を提供する。たとえば、アプリケーションウィンドウデバイダコントロールそのものが移動するか、動的にサイズ変更を行うためにアプリケーションウィンドウのうちの少なくとも1つが現れるか、またはサイズ変更のその他の何らかのユーザフレンドリーな提案がユーザインターフェースにおいてアニメーション表示される。一実施態様においては、アプリケーションウィンドウは、サイズ変更中には、方向指示の開始において、またはその付近で取り込まれたそれぞれのウィンドウのスナップショットとして表すことができる。別の実施態様においては、アプリケーションウィンドウは、サイズ変更中には、ライブアプリケーションウィンドウまたはその他のウィンドウプレースホルダ表示として表すことができる。
[0022] ユーザがサイズ変更にコミットした場合(たとえば、自分のタッチを除去した場合、ポインティングデバイスボタンを選択解除した場合など)には、両方のアプリケーションウィンドウは、アプリケーションウィンドウデバイダコントロールの最後のロケーションによって指定された相対的なサイズで所定の位置にスナップする。別の実施態様においては、ユーザによって誘発されたアプリケーションウィンドウデバイダコントロールの横方向の移動に応答して、アプリケーションウィンドウ100および102の隣り合う辺どうしは、アプリケーションウィンドウデバイダコントロールとの視覚的な調和を保って移動する。たとえば、アプリケーションウィンドウデバイダは、継続的に移動し、両方のアプリケーションウィンドウ100および102は、動的にサイズ変更する。ユーザがサイズ変更にコミットした場合(たとえば、自分のタッチを除去した場合、ポインティングデバイスボタンを選択解除した場合など)には、両方のアプリケーションウィンドウは、アプリケーションウィンドウデバイダコントロールの最後のロケーションによって指定された相対的なサイズにとどまる。
[0023] 図2は、例示的なユーザインターフェース206においてアプリケーションウィンドウデバイダコントロール204を共有している2つのアプリケーションウィンドウ(たとえば、アプリA用のアプリケーションウィンドウ200、およびアプリB用のアプリケーションウィンドウ202)の概略図を示している。アプリケーションウィンドウデバイダコントロール204は、アプリケーションウィンドウ200および202によって共有されているが、いずれのアプリケーションウィンドウのコンポーネントでもない。アプリケーションウィンドウデバイダコントロール204は、アプリケーションウィンドウ200および202の表示、配置、レイアウト、外観、およびその他の側面、ならびにその他のウィンドウおよびユーザインターフェース特徴およびオペレーションを管理するウィンドウ管理システム208のコントロールである。ウィンドウ管理システム208は、ユーザ入力(たとえば、ドラッグなどの方向指示)の受け取り、アプリケーションウィンドウ200および202の相互のサイズ変更、ならびに、ユーザインターフェース206内でのアプリケーションウィンドウ200および202の提示を含む、アプリケーションウィンドウデバイダコントロール204のユーザ操作を管理する。
[0024] 図2において示されているように、アプリケーションウィンドウデバイダコントロール204は、ユーザによって提供された方向指示に応答してユーザインターフェース206の横軸に沿って移動することができる。方向指示が完了したとき(たとえば、ユーザが、タッチスクリーンから指を上げることによって、アプリケーションウィンドウデバイダコントロールをドラッグすることにコミットしたとき)に、アプリケーションウィンドウ200および202は、方向指示の終点(たとえば、方向指示が完了した時点での軸に沿ったアプリケーションウィンドウデバイダコントロール204のロケーション)に従って自分の配置を調整する。図2において、この配置調整は、アプリケーションウィンドウデバイダコントロール204の最終ロケーションに基づくアプリケーションウィンドウ200および202の相補的なサイズ変更をもたらすことになる。
[0025] 図3は、例示的なユーザインターフェース306においてアプリケーションウィンドウデバイダコントロール304および第3のアプリケーションウィンドウ(たとえば、アプリA用のアプリケーションウィンドウ310)を共有している2つのアプリケーションウィンドウ(たとえば、アプリB用のアプリケーションウィンドウ300、およびアプリC用のアプリケーションウィンドウ302)の概略図を示している。アプリケーションウィンドウデバイダコントロール304は、アプリケーションウィンドウ300および302によって共有されているが、いずれのアプリケーションウィンドウのコンポーネントでもない。もう一つのアプリケーションウィンドウデバイダコントロール305も、ユーザインターフェース306において提示されており、アプリケーションウィンドウ310および300によって共有されている。アプリケーションウィンドウデバイダコントロール304および305は、アプリケーションウィンドウ300、302、および310の表示、配置、レイアウト、外観、およびその他の側面、ならびにその他のウィンドウおよびユーザインターフェース特徴およびオペレーションを管理するウィンドウ管理システム308のコントロールである。ウィンドウ管理システム308は、ユーザ入力(たとえば、ドラッグなどの方向指示)の受け取り、アプリケーションウィンドウデバイダコントロール304に基づくアプリケーションウィンドウ300および302の相互のサイズ変更、アプリケーションウィンドウデバイダコントロール305に基づくアプリケーションウィンドウ300および310の相互のサイズ変更、ならびに、ユーザインターフェース306内でのアプリケーションウィンドウ300、302、および310の提示を含む、アプリケーションウィンドウデバイダコントロール304および305のユーザ操作を管理する。
[0026] 図3において示されているように、アプリケーションウィンドウデバイダコントロール304および305は、ユーザによって提供された方向指示に応答してユーザインターフェース306の横軸に沿って移動することができる。アプリケーションウィンドウデバイダコントロール304に関連している方向指示が完了したとき(たとえば、ユーザが、タッチスクリーンから指を上げることによって、アプリケーションウィンドウデバイダコントロールをドラッグすることにコミットしたとき)に、ウィンドウ管理システム308は、方向指示の終点(たとえば、方向指示が完了した時点での軸に沿ったアプリケーションウィンドウデバイダコントロール304のロケーション)に従って、アプリケーションウィンドウ300および302の配置を調整する。図3において、この配置調整は、アプリケーションウィンドウデバイダコントロール304の最終ロケーションに基づくアプリケーションウィンドウ300および302の相補的なサイズ変更をもたらすことになる。アプリケーションウィンドウデバイダコントロール305に提供された方向指示に応答して、アプリケーションウィンドウ300および310に関して同様の動作が生じることになる。加えて、それぞれのアプリケーションウィンドウデバイダコントロール304および305は、自分が共有(たとえば、区分)していないアプリケーションウィンドウの配置に影響を与えることもできる。たとえば、いくつかの状況においては、アプリケーションウィンドウデバイダコントロール304への方向指示は、以降で説明されているように、アプリケーションウィンドウ310に対する配置調整をもたらすことができる。
[0027] 図4は、アプリケーションウィンドウデバイダコントロール400を実施するユーザインターフェースオペレーションの例示的なシーケンスを示している。402において、ユーザインターフェースが、アプリA用のアプリケーションウィンドウ、アプリB用のアプリケーションウィンドウ、およびアプリC用のアプリケーションウィンドウを提示する。方向指示がアプリケーションウィンドウデバイダコントロール400に提供されて、このアプリケーションウィンドウデバイダコントロール400は、アプリBおよびアプリAのある左方向に移動され、アプリB用のアプリケーションウィンドウの配置(たとえば、サイズ設定)が調整され(たとえば、その幅が減少し)、アプリC用のアプリケーションウィンドウの配置(たとえば、サイズ設定)が調整される(たとえば、その幅が増大する)。404において、アプリB用のアプリケーションウィンドウの配置は、最小サイズ条件412を満たし、アプリB用のアプリケーションウィンドウの幅は、所与の幅しきい値(静的にまたは動的に定められる)まで減少すると、それ以上は減少を続けない。
[0028] その代わりに、406において示されているように、方向指示を続けると、アプリA用のアプリケーションウィンドウが、自分の配置を調整し(たとえば、自分の幅を減少させ)、その一方で、アプリB用のアプリケーションウィンドウの幅は、自分の最小サイズ条件412にとどまる。アプリA用のアプリケーションウィンドウの配置が、自分の最小サイズ条件414を満たした場合には、アプリA用のアプリケーションウィンドウの幅もまた、減少を停止する。
[0029] したがって、方向指示を続けることによって、アプリA用のアプリケーションウィンドウの幅、およびアプリB用のアプリケーションウィンドウの幅は、それぞれ自分の最小サイズ条件414および412まで減少した。したがって、408において方向指示を続けると、アプリA用のアプリケーションウィンドウは、ユーザインターフェースから除去される。一実施態様においては、アプリA用のアプリケーションウィンドウは、ユーザインターフェースの左縁から外へ(たとえば、方向指示の方向に)押し出されるように見えるようにアニメーション表示される。
[0030] 416において、方向指示が続いて、アプリB用のアプリケーションウィンドウが、ユーザインターフェースから除去される。一実施態様においては、アプリB用のアプリケーションウィンドウは、ユーザインターフェースの左縁から外へ(たとえば、方向指示の方向に)押し出されるように見えるようにアニメーション表示される。
[0031] 図4のオペレーショナルフローにおけるそれぞれのステージにおいて、(たとえば、ユーザが指を上げてタッチスクリーンから離すことによって、ユーザがポインティングデバイスの押下されているボタンから指を除去することによって、方向指示を完了するための適切なキーボード入力をユーザが提供することによって)方向指示を完了することができる。方向指示が完了した時点でアプリケーションウィンドウデバイダコントロールが位置しているユーザインターフェース内の軸に沿った任意のポイントにおいて、ウィンドウ管理システムは、アプリケーションウィンドウの配置を、対応するアプリケーションウィンドウデバイダコントロールの配置に従って提示する。
[0032] 一実施態様においては、ウィンドウ管理システムは、以前のウィンドウのサイズおよび配置を記録して、ユーザが1つまたは複数のサイズ変更オペレーションを元に戻すことを可能にする。
[0033] 図5は、例示的なユーザインターフェース508においてマグネティックポイント506でアプリケーションウィンドウデバイダコントロール504を共有している2つのアプリケーションウィンドウ500および502の概略図を示している。アプリケーションウィンドウデバイダコントロール504は、アプリケーションウィンドウ500および502によって共有されているが、いずれのアプリケーションウィンドウのコンポーネントでもない。アプリケーションウィンドウデバイダコントロール504は、アプリケーションウィンドウ500および502の表示、配置、レイアウト、外観、およびその他の側面、ならびにその他のウィンドウおよびユーザインターフェース特徴およびオペレーションを管理するウィンドウ管理システム512のコントロールである。ウィンドウ管理システム512は、ユーザ入力(たとえば、ドラッグなどの方向指示)の受け取り、アプリケーションウィンドウ500および502の相互のサイズ変更、ならびに、ユーザインターフェース508内でのアプリケーションウィンドウ500および502の提示を含む、アプリケーションウィンドウデバイダコントロール504のユーザ操作を管理する。
[0034] 図5において示されているように、アプリケーションウィンドウデバイダコントロール504は、ユーザによって提供された方向指示に応答してユーザインターフェース508の横軸に沿って移動することができる。方向指示が完了したこと(たとえば、ユーザが、タッチスクリーンから指を上げることによって、アプリケーションウィンドウデバイダコントロールをドラッグすることにコミットしたこと)に基づいて、アプリケーションウィンドウ500および502は、方向指示の終点(たとえば、方向指示が完了した時点での軸に沿ったアプリケーションウィンドウデバイダコントロール504のロケーション)に従って自分の配置を調整する。図5において、この配置調整は、アプリケーションウィンドウデバイダコントロール504の最終ロケーションに基づくアプリケーションウィンドウ500および502の相補的なサイズ変更をもたらすことになる。
[0035] 加えて、図5は、ユーザインターフェース508の横軸に沿った3つの「マグネティック」ポイントを示しているが、任意の数のマグネティックポイントが考えられる。それぞれのマグネティックポイントは、ユーザインターフェース508の横軸上のある位置に相当し、方向指示中に、アプリケーションウィンドウデバイダコントロール504の移動が、スピード条件を満たした場合(たとえば、移動が、スピードしきい値よりも遅くなった場合)、および/または距離条件を満たした場合(たとえば、移動によって、アプリケーションウィンドウデバイダ504が、そのマグネティックポイントから所与の距離しきい値510内に来た場合)には、アプリケーションウィンドウデバイダコントロール504は、そのマグネティックポイントに引き寄せられる。たとえば、アプリケーションウィンドウデバイダコントロール504が、ユーザインターフェース508の横軸にわたって左から右へ移動される際に、ユーザは、マグネティックポイント506の付近で移動を遅くすることができ、マグネティックポイント506は、アプリケーションウィンドウデバイダコントロール504が、504’として示されているそのロケーションにスナップするようにすることができる。
[0036] マグネティックポイントのロケーションは、見えるアプリケーションウィンドウのセットに関して静的に、または方向指示中に動的に特定することができる。たとえば、2つのアプリケーションウィンドウが見える場合には、静的に特定されたマグネティックポイントを横軸の真ん中に配置することができ、または3つのアプリケーションウィンドウが見える場合には、横軸に沿った1/3の箇所および2/3の箇所にマグネティックポイントを置くことができる。対照的に、いくつかのマグネティックポイントのロケーションは、方向指示中に動的に特定することができる。たとえば、方向指示の開始に応答して、ウィンドウ管理システムは、軸に沿ったすべてのマグネティックポイントのロケーションを計算することができ、いくつかの実施態様においては、それらのロケーションは、方向指示が引き続き実行されるにつれて、アプリケーションウィンドウの配置の好みおよびその他の制約に従って動的に更新することができる。最終的に、方向指示がコミットされたときに、アプリケーションウィンドウデバイダコントロールは、マグネティックポイントの動的に計算されたロケーションにスナップすることになる。
[0037] 「スナップする」という用語は、アプリケーションウィンドウデバイダコントロール504が、はじめはマグネティックポイント506と位置合わせされていないが、アプリケーションウィンドウデバイダコントロール504の移動が、マグネティックポイント506に関連したスピード条件および距離条件を満たした場合に、アプリケーションウィンドウデバイダコントロール504を、軸に沿ったマグネティックポイント506と位置合わせするように移動させることを表している。視覚的には、一実施態様においては、このスナッピングオペレーションは、マグネティックポイント506と位置合わせするためのアプリケーションウィンドウデバイダコントロール504による相対的に迅速な移動またはジャンプのように見える。しかし、代替実施態様においては、スナッピングオペレーションは、ユーザインターフェース508を通じてその他の方法(たとえば、ウィンドウ境界のスナッピング、アプリケーションウィンドウのゴーストイメージの迅速な移動など)で提示することができる。
[0038] さまざまなタイプのマグネティックポイントを採用できることを理解されたい。一例においては、マグネティックポイントは、アプリケーションウィンドウの一貫した横のサイズ設定を保持するように(たとえば、3つのウィンドウのそれぞれが、同じ幅を有するように)配置することができる。別の例においては、最小ウィンドウサイズおよび最大ウィンドウサイズ、ユーザによって定義されたサイズの好み、ならびに、システムによって定義されたウィンドウの好みも、ユーザインターフェース内の軸に沿ったマグネティックポイントの配置において考慮することができる。
[0039] 一実施態様においては、1つまたは複数のアプリケーションウィンドウデバイダコントロールは、それらのアプリケーションウィンドウデバイダコントロールのうちの1つに関連して、ダブルクリック、ダブルタップ、またはキーの組合せを介して、適切なマグネティックポイントに自動的にスナップすることができる。そのようなユーザ入力は、アプリケーションウィンドウの配置の好みおよびその他の制約に従って、最も近いマグネティックポイントにスナップするために、適切な方向に移動するよう1つまたは複数のアプリケーションウィンドウデバイダコントロールに指示することができる。一実施態様においては、同じアプリケーションウィンドウデバイダコントロール上でユーザ入力を繰り返すと、ユーザインターフェース内の見えるアプリケーションウィンドウのアプリケーションウィンドウデバイダコントロールは、アプリケーションウィンドウの配置の好みおよびその他の制約に従って、最も近いマグネティックポイントにスナップするために、適切な方向に移動する。
[0040] 図6は、アプリケーションウィンドウデバイダコントロールを使用して2つのアプリケーションウィンドウの配置を調整するための例示的なオペレーション600を示している。提示オペレーション602が、ユーザインターフェースにおいて2つのアプリケーションウィンドウによって共有されるアプリケーションウィンドウデバイダコントロールを提示する。一実施態様においては、アプリケーションウィンドウデバイダコントロールは、2つのアプリケーションウィンドウを隔てるか、またはそれらの間における境界として機能する。指示オペレーション604が、アプリケーションウィンドウデバイダコントロールに関連付けられている方向指示(たとえば、ドラッグジェスチャー)を受け取る。調整オペレーション606が、アプリケーションウィンドウデバイダコントロールに適用された方向指示に基づいて2つのアプリケーションウィンドウの相対的な配置を調整する。たとえば、アプリケーションウィンドウデバイダコントロールが移動するにつれて、またはその移動が完了した後に、ユーザインターフェース内で、一方のアプリケーションウィンドウはより狭くなり、他方のアプリケーションウィンドウはより広くなる。
[0041] アプリケーションウィンドウのうちの1つが、最小サイズ条件を満たすようにサイズ設定されているかどうかを決定オペレーション608が特定する(注:別々のアプリケーションウィンドウは、別々の最小サイズ条件を有することができる)。そうでない場合には、調整オペレーション606は、方向指示の処理を続ける。アプリケーションウィンドウのうちの1つが最小サイズ条件を満たしているかどうかを決定オペレーション608が特定した場合には、そのアプリケーションウィンドウは、より狭くなることを停止し、別の決定オペレーション610が、ユーザインターフェース内でその方向指示の方向に別のアプリケーションウィンドウが配置されているかどうかを特定する。そうでない場合には、最小サイズ条件を満たしているアプリケーションウィンドウが、除去オペレーション612においてユーザインターフェースから除去される。さもなければ、別の調整オペレーション610が、その方向指示に基づいて他方のアプリケーションウィンドウの配置を調整する。一実施態様においては、調整オペレーション610の視覚効果は、第1の最小のウィンドウがその最小の幅で凍結して、次のウィンドウの辺を押し始め、それによって次のウィンドウがより狭くなるといった具合である。
[0042] 次のウィンドウが、自分の最小幅条件を満たす幅に達する場合もあるということを理解されたい。したがって、方向指示が同じ方向で続いた場合には、除去オペレーション612に関して論じたのと同様の様式で次の最小のウィンドウをユーザインターフェースから除去することができる。さらに、次の最小のウィンドウの除去に従って、および同じ方向で続いた方向指示に従って、除去オペレーション612に関して論じたのと同様の様式で第1の最小のウィンドウを除去することができる。
[0043] 図7は、例示的なユーザインターフェースにおいてマグネティックポイントに関連してアプリケーションウィンドウデバイダコントロールを操作するための例示的なオペレーション700を示している。提示オペレーション702が、ユーザインターフェースにおいて2つのアプリケーションウィンドウによって共有されるアプリケーションウィンドウデバイダコントロールを提示する。一実施態様においては、アプリケーションウィンドウデバイダコントロールは、2つのアプリケーションウィンドウを隔てるか、またはそれらの間における境界として機能する。指示オペレーション704が、アプリケーションウィンドウデバイダコントロールに関連付けられている方向指示(たとえば、ドラッグジェスチャー)を受け取る。調整オペレーション706が、アプリケーションウィンドウデバイダコントロールに適用された方向指示に基づいて2つのアプリケーションウィンドウの相対的な配置を調整する。
[0044] アプリケーションウィンドウデバイダコントロールの移動が、ユーザインターフェースの軸に沿って配置されているマグネティックポイントに関連したスピード条件および/または距離条件を満たしているかどうかを決定オペレーション708が特定する。たとえば、決定オペレーション708は、アプリケーションウィンドウデバイダコントロールの移動のスピードが、所与のスピードしきい値を下回っているということを特定することができる。別の例においては、決定オペレーション708は、アプリケーションウィンドウデバイダコントロールとマグネティックポイントとの間における距離が、所与の距離しきい値を下回っているということを特定することができる。さらに別の例においては、決定オペレーション708は、スナップオペレーション710へ進むためにスピード条件および距離条件の両方をテストする。適切な条件が決定オペレーション708において満たされていない場合には、調整オペレーション706は、2つのアプリケーションウィンドウの相対的な配置を調整することを続ける。
[0045] 適切な1つまたは複数の条件が決定オペレーション708において満たされている場合には、スナップオペレーション710は、アプリケーションウィンドウデバイダコントロールをユーザインターフェース内のマグネティックポイントにスナップさせる。一実施態様においては、スナップオペレーション710は、マグネティックポイントと位置合わせされていないロケーションから、マグネティックポイントと位置合わせされているロケーションへの、軸に沿ったアプリケーションウィンドウデバイダコントロールによる迅速な移動を提示する。
[0046] そのような方向指示、マグネティックポイント、およびアプリケーションウィンドウデバイダコントロールは、横軸または縦軸を含むがそれらには限定されないユーザインターフェースの任意の軸に沿って実行すること、操作すること、または配置することが可能であるということを理解されたい。
[0047] 図8は、説明されているテクノロジーを実施する際に役立つことができる例示的なシステムを示している。説明されているテクノロジーを実施するための図8の例示的なハードウェアおよびオペレーティング環境は、コンピューティングデバイス、たとえば、ゲーミングコンソールもしくはコンピュータ20の形態の汎用コンピューティングデバイス、モバイル電話、携帯情報端末(PDA)、セットトップボックス、またはその他のタイプのコンピューティングデバイスを含む。図8の実施態様においては、たとえばコンピュータ20は、処理ユニット21と、システムメモリ22と、そのシステムメモリを含むさまざまなシステムコンポーネントを処理ユニット21に動作可能に結合するシステムバス23とを含む。1つだけの処理ユニット21が存在することが可能であり、または複数の処理ユニット21が存在することも可能であり、それによって、コンピュータ20のプロセッサは、単一の中央処理装置(CPU)、または複数の処理ユニット(一般に、並列処理環境と呼ばれる)を含む。コンピュータ20は、従来型コンピュータ、分散型コンピュータ、またはその他の任意のタイプのコンピュータであることが可能であるが、実施態様は、それらには限定されない。
[0048] システムバス23は、メモリバスまたはメモリコントローラと、ペリフェラルバスと、スイッチドファブリックと、ポイントツーポイント接続と、さまざまなバスアーキテクチャーのうちのいずれかを使用するローカルバスとを含むいくつかのタイプのバス構造のうちのいずれかであることが可能である。システムメモリは、単にメモリと呼ばれる場合もあり、読み取り専用メモリ(ROM)24およびランダムアクセスメモリ(RAM)25を含む。基本入出力システム(BIOS)26は、起動中などにコンピュータ20内の要素どうしの間において情報を伝達することを補助する基本ルーチンを含み、ROM24内に格納されている。コンピュータ20は、ハードディスク(図示せず)との間で読み取りおよび書き込みを行うためのハードディスクドライブ27と、取り外し可能な磁気ディスク29との間で読み取りまたは書き込みを行うための磁気ディスクドライブ28と、CD ROM、DVD、またはその他の光メディアなどの取り外し可能な光ディスク31との間で読み取りまたは書き込みを行うための光ディスクドライブ30とをさらに含む。
[0049] ハードディスクドライブ27、磁気ディスクドライブ28、および光ディスクドライブ30は、それぞれハードディスクドライブインターフェース32、磁気ディスクドライブインターフェース33、および光ディスクドライブインターフェース34によってシステムバス23に接続されている。それらのドライブ、およびそれらの関連付けられている有形のコンピュータ可読メディアは、コンピュータ20のためのコンピュータ可読命令、データ構造、プログラムモジュール、およびその他のデータの不揮発性の格納を提供する。コンピュータによってアクセス可能であるデータを格納することができる任意のタイプの有形のコンピュータ可読メディア、たとえば、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)などをこの例示的なオペレーティング環境において使用することができるということを当業者なら理解するはずである。
[0050] オペレーティングシステム35、1つまたは複数のアプリケーションプログラム36、その他のプログラムモジュール37、およびプログラムデータ38を含む複数のプログラムモジュールを、ハードディスク、磁気ディスク29、光ディスク31、ROM24、またはRAM25上に格納することができる。ユーザは、キーボード40およびポインティングデバイス42などの入力デバイスを通じてコマンドおよび情報をパーソナルコンピュータ20へと入力することができる。その他の入力デバイス(図示せず)は、マイクロフォン(たとえば、音声入力用の)、カメラ(たとえば、ナチュラルユーザインターフェース(NUI)用の)、ジョイスティック、ゲームパッド、衛星放送受信用アンテナ、スキャナなどを含むことができる。これらおよびその他の入力デバイスは、システムバスに結合されているシリアルポートインターフェース46を通じて処理ユニット21に接続されている場合が多いが、その他のインターフェース、たとえば、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)によって接続することもできる。モニタ47またはその他のタイプのディスプレイデバイスも、ビデオアダプタ48などのインターフェースを介してシステムバス23に接続されている。コンピュータは、典型的には、モニタに加えて、スピーカーおよびプリンタなどのその他の周辺出力デバイス(図示せず)を含む。
[0051] コンピュータ20は、リモートコンピュータ49などの1つまたは複数のリモートコンピュータへの論理接続を使用して、ネットワーク化された環境において機能することができる。これらの論理接続は、コンピュータ20に結合されている通信デバイス、またはコンピュータ20の一部である通信デバイスによって達成することができるが、実施態様は、特定のタイプの通信デバイスには限定されない。リモートコンピュータ49は、別のコンピュータ、サーバ、ルータ、ネットワークPC、クライアント、ピアデバイス、またはその他の一般的なネットワークノードであることが可能であり、典型的には、コンピュータ20に関連して上述されている要素のうちの多くまたはすべてを含むが、図8においてはメモリストレージデバイス50しか示されていない。図8において示されている論理接続は、ローカルエリアネットワーク(LAN)51、およびワイドエリアネットワーク(WAN)52を含む。そのようなネットワーキング環境は、オフィスネットワーク、企業規模のコンピュータネットワーク、イントラネット、およびインターネット、すなわち、すべてのタイプのネットワークにおいてよく見受けられる。
[0052] LANネットワーキング環境において使用される場合には、コンピュータ20は、通信デバイスの一種であるネットワークインターフェースまたはアダプタ53を通じてローカルネットワーク51に接続される。WANネットワーキング環境において使用される場合には、コンピュータ20は、典型的には、ワイドエリアネットワーク52上で通信を確立するためのモデム54、ネットワークアダプタ、通信デバイスの一種、またはその他の任意のタイプの通信デバイスを含む。モデム54は、内蔵型または外付け型であることが可能であり、シリアルポートインターフェース46を介してシステムバス23に接続される。ネットワーク化された環境においては、パーソナルコンピュータ20に関連して示されているプログラムエンジン、またはそれらの一部をリモートメモリストレージデバイス内に格納することができる。示されているネットワーク接続は例であり、コンピュータどうしの間において通信リンクを確立するためのその他の手段および通信デバイスを使用することもできるということがわかる。
[0053] 例示的な一実施態様においては、ウィンドウ管理システム、マグネティックポイント、アプリケーションウィンドウデバイダコントロールを提供するためのソフトウェアまたはファームウェア命令およびデータ、ならびにその他の命令およびデータを、メモリ22および/またはストレージデバイス29もしくは31内に格納して、処理ユニット21によって処理することができる。ユーザインターフェースデータ、スピードしきい値、距離しきい値、およびその他のデータを、永続データストアとしてのメモリ22および/またはストレージデバイス29もしくは31内に格納することができる。
[0054] いくつかの実施形態は、製品を含むことができる。製品は、ロジックを格納するための有形のストレージメディアを含むことができる。ストレージメディアの例は、揮発性メモリまたは不揮発性メモリ、取り外し可能なメモリまたは取り外し不能なメモリ、消去可能なメモリまたは消去不能なメモリ、書き込み可能なメモリまたは再書き込み可能なメモリなどを含む、電子データを格納することができる1つまたは複数のタイプのコンピュータ可読ストレージメディアを含むことができる。ロジックの例としては、さまざまなソフトウェア要素、たとえば、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャー、ソフトウェアインターフェース、アプリケーションプログラムインターフェース(API)、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボル、またはそれらの任意の組合せを含むことができる。一実施形態においては、たとえば、製品は、コンピュータによって実行されたときに、説明されている実施形態による方法および/またはオペレーションをそのコンピュータに実行させる実行可能なコンピュータプログラム命令を格納することができる。実行可能なコンピュータプログラム命令は、任意の適切なタイプのコード、たとえば、ソースコード、コンパイルされたコード、インタープリットされたコード、実行可能コード、静的なコード、動的なコードなどを含むことができる。実行可能なコンピュータプログラム命令は、特定の機能を実行するようコンピュータに指示するための事前に定義されたコンピュータ言語、様式、またはシンタックスに従って実施することができる。それらの命令は、任意の適切なハイレベルな、ローレベルな、オブジェクト指向の、ビジュアルな、コンパイルされた、および/またはインタープリットされたプログラミング言語を使用して実施することができる。
[0055] 本明細書において説明されている実施態様は、1つまたは複数のコンピュータシステムにおいて論理的なステップとして実施される。それらの論理演算は、(1)1つまたは複数のコンピュータシステムにおいて実行されるプロセッサによって実施されるステップのシーケンスとして、および(2)1つまたは複数のコンピュータシステム内の相互接続されたマシンモジュールまたは回路モジュールとして実施することができる。その実施は、利用されているコンピュータシステムのパフォーマンス要件に応じた選択の問題である。したがって、本明細書において説明されている実施態様を構成している論理演算は、オペレーション、ステップ、オブジェクト、またはモジュールなど、さまざまに呼ばれる。さらに、論理演算は、任意の順序で実行することができる(ただし、そうではないことが明示的に特許請求されている場合、または請求項の文言によって特定の順序が本質的に必要とされている場合は除く)ということを理解されたい。
[0056] 上述の明細、例、およびデータは、例示的な実施態様の構造および使用の完全な説明を提供している。特許請求されている本発明の趣旨および範囲から逸脱することなく、多くの実施態様を作成することができるため、添付の特許請求の範囲が、本発明を定義する。さらに、別々の例の構造的な特徴どうしを、列挙されている特許請求の範囲から逸脱することなく、さらに別の実施態様において組み合わせることができる。

Claims (10)

  1. ユーザインターフェースにおいて第1のアプリケーションウィンドウおよび第2のアプリケーションウィンドウによって共有されるアプリケーションウィンドウデバイダコントロールを提示するステップと、
    前記ユーザインターフェースの軸に沿った一貫した間隔を置いた一連のポイントにわたって前記第1のアプリケーションウィンドウおよび前記第2のアプリケーションウィンドウの配置を、前記アプリケーションウィンドウデバイダコントロールを前記軸に沿って移動させる受け取られた方向指示に応答して調整するステップと
    を含む方法。
  2. 最小サイズ条件が、前記第1のアプリケーションウィンドウに関連付けられており、前記方法が、
    前記調整のオペレーションが、前記最小サイズ条件を満たすように前記第1のアプリケーションウィンドウの前記配置を減少させた場合に、前記ユーザインターフェースから前記第1のアプリケーションウィンドウを除去するステップをさらに含む、請求項1に記載の方法。
  3. 前記第1のアプリケーションウィンドウが、前記第1のアプリケーションウィンドウを前記ユーザインターフェースから外へ前記方向指示の方向に押し出すアニメーションを伴って前記ユーザインターフェースから除去される、請求項2に記載の方法。
  4. 前記提示のオペレーションが、前記アプリケーションウィンドウデバイダコントロールを共有していない第3のアプリケーションウィンドウをさらに提示し、前記第3のアプリケーションウィンドウが、前記第1のウィンドウと、前記方向指示の前記方向にある前記ユーザインターフェースの縁との間に配置されており、
    前記調整のオペレーションが、
    前記方向指示に応答して、前記第1のアプリケーションウィンドウの最小サイズ条件を満たすように前記第1のアプリケーションウィンドウの前記配置を調整するステップと、
    前記方向指示に応答して、前記第1のアプリケーションウィンドウの前記配置が、前記第1のアプリケーションウィンドウの前記最小サイズ条件を満たした後に、前記第3のアプリケーションウィンドウの配置を調整するステップとをさらに含む、請求項1に記載の方法。
  5. 最小サイズ条件が、前記第3のアプリケーションウィンドウに関連付けられており、前記方法が、
    前記第3のアプリケーションウィンドウを調整する前記オペレーションが、前記第3のアプリケーションウィンドウの前記最小サイズ条件を満たすように前記第3のアプリケーションウィンドウの前記配置を減少させた場合に、前記ユーザインターフェースから前記第3のアプリケーションウィンドウを除去するステップをさらに含む、請求項4に記載の方法。
  6. 前記第3のアプリケーションウィンドウが、前記第3のアプリケーションウィンドウを前記ユーザインターフェースから外へ前記方向指示の前記方向に押し出すアニメーションを伴って前記ユーザインターフェースから除去される、請求項5に記載の方法。
  7. 前記アプリケーションウィンドウデバイダコントロールの移動が、前記ユーザインターフェースの前記軸に沿ったあるポイントに関連したスピード条件または距離条件を満たした場合に、前記アプリケーションウィンドウデバイダコントロールを前記ポイントにスナップするステップを
    さらに含む、請求項1に記載の方法。
  8. 前記スナッピングのオペレーションが、
    前記アプリケーションウィンドウデバイダコントロールが前記ポイントと位置合わせされていないが、前記アプリケーションウィンドウデバイダコントロールの前記移動が、前記ポイントに関連した前記スピード条件および前記距離条件を満たした場合に、前記アプリケーションウィンドウデバイダコントロールを、前記軸に沿った前記ポイントと位置合わせするように移動させるステップを含む、請求項7に記載の方法。
  9. コンピュータプロセスをコンピュータシステム上で実行するためのコンピュータ実行可能命令をエンコードしている1つまたは複数の有形のコンピュータ可読ストレージメディアであって、
    前記コンピュータプロセスが、
    ユーザインターフェースにおいて第1のアプリケーションウィンドウおよび第2のアプリケーションウィンドウによって共有されるアプリケーションウィンドウデバイダコントロールを提示するステップと、
    前記ユーザインターフェースの軸に沿った一貫した間隔を置いた一連のポイントにわたって前記第1のアプリケーションウィンドウおよび前記第2のアプリケーションウィンドウの配置を、前記アプリケーションウィンドウデバイダコントロールを前記軸に沿って移動させる受け取られた方向指示に応答して調整するステップとを含む、1つまたは複数の有形のコンピュータ可読ストレージメディア。
  10. ユーザインターフェースを提示するコンピューティングデバイスと、
    ユーザインターフェースの軸に沿った一貫した間隔を置いた一連のポイントにわたって第1のアプリケーションウィンドウおよび前記第2のアプリケーションウィンドウの配置を、前記第1のアプリケーションウィンドウおよび前記第2のアプリケーションウィンドウによって共有されている見えるアプリケーションウィンドウデバイダコントロールを前記軸に沿って移動させる受け取られた方向指示に応答して調整するように構成されているウィンドウ管理システムと
    を含むシステム。
JP2016507531A 2013-04-15 2013-09-18 ウィンドウレイアウト管理のためのアプリケーションウィンドウデバイダコントロール Active JP6216440B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/863,369 2013-04-15
US13/863,369 US11294529B2 (en) 2013-04-15 2013-04-15 Application window divider control for window layout management
PCT/US2013/060247 WO2014171963A1 (en) 2013-04-15 2013-09-18 Application window divider control for window layout management

Publications (3)

Publication Number Publication Date
JP2016518658A true JP2016518658A (ja) 2016-06-23
JP2016518658A5 JP2016518658A5 (ja) 2016-10-06
JP6216440B2 JP6216440B2 (ja) 2017-10-18

Family

ID=49484417

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016507531A Active JP6216440B2 (ja) 2013-04-15 2013-09-18 ウィンドウレイアウト管理のためのアプリケーションウィンドウデバイダコントロール

Country Status (19)

Country Link
US (3) US11294529B2 (ja)
EP (1) EP2987077B1 (ja)
JP (1) JP6216440B2 (ja)
KR (1) KR102113371B1 (ja)
CN (2) CN113821290A (ja)
AU (1) AU2013386836B2 (ja)
BR (1) BR112015025939B1 (ja)
CA (1) CA2908006C (ja)
CL (1) CL2015003057A1 (ja)
HK (1) HK1214872A1 (ja)
IL (1) IL241765B (ja)
MX (1) MX2015014579A (ja)
MY (1) MY180954A (ja)
NZ (1) NZ712845A (ja)
PH (1) PH12015502311A1 (ja)
RU (1) RU2656993C2 (ja)
SG (2) SG10201707722WA (ja)
WO (1) WO2014171963A1 (ja)
ZA (1) ZA201507206B (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US9075566B2 (en) 2012-03-02 2015-07-07 Microsoft Technoogy Licensing, LLC Flexible hinge spine
US9460029B2 (en) 2012-03-02 2016-10-04 Microsoft Technology Licensing, Llc Pressure sensitive keys
US20130300590A1 (en) 2012-05-14 2013-11-14 Paul Henry Dietz Audio Feedback
US11294529B2 (en) 2013-04-15 2022-04-05 Microsoft Technology Licensing, Llc Application window divider control for window layout management
US9594603B2 (en) 2013-04-15 2017-03-14 Microsoft Technology Licensing, Llc Application-to-application launch windowing
US10754536B2 (en) 2013-04-29 2020-08-25 Microsoft Technology Licensing, Llc Content-based directional placement application launch
US10691291B2 (en) * 2013-05-24 2020-06-23 Samsung Electronics Co., Ltd. Method and apparatus for displaying picture on portable device
KR102220085B1 (ko) * 2013-10-18 2021-02-26 삼성전자주식회사 멀티윈도우 운용 방법 및 이를 지원하는 전자 장치
JP5924554B2 (ja) * 2014-01-06 2016-05-25 コニカミノルタ株式会社 オブジェクトの停止位置制御方法、操作表示装置およびプログラム
US10437447B1 (en) 2014-03-31 2019-10-08 Amazon Technologies, Inc. Magnet based physical model user interface control
US9606710B1 (en) * 2014-03-31 2017-03-28 Amazon Technologies, Inc. Configuring movement-based user interface control
EP3108354A2 (en) * 2014-06-12 2016-12-28 Apple Inc. Systems and methods for multitasking on an electronic device with a touch-sensitive display
US9648062B2 (en) * 2014-06-12 2017-05-09 Apple Inc. Systems and methods for multitasking on an electronic device with a touch-sensitive display
US10324733B2 (en) 2014-07-30 2019-06-18 Microsoft Technology Licensing, Llc Shutdown notifications
US9787576B2 (en) 2014-07-31 2017-10-10 Microsoft Technology Licensing, Llc Propagating routing awareness for autonomous networks
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
KR102328823B1 (ko) * 2014-11-12 2021-11-19 삼성전자 주식회사 화면 내 빈 영역 활용 방법 및 장치
US10018844B2 (en) 2015-02-09 2018-07-10 Microsoft Technology Licensing, Llc Wearable image display system
US20160357358A1 (en) * 2015-06-07 2016-12-08 Apple Inc. Device, Method, and Graphical User Interface for Manipulating Application Windows
US20160364126A1 (en) * 2015-06-11 2016-12-15 Sap Se Dynamic adaptive user interface control
US10347017B2 (en) * 2016-02-12 2019-07-09 Microsoft Technology Licensing, Llc Interactive controls that are collapsible and expandable and sequences for chart visualization optimizations
US10748312B2 (en) 2016-02-12 2020-08-18 Microsoft Technology Licensing, Llc Tagging utilizations for selectively preserving chart elements during visualization optimizations
KR102328102B1 (ko) * 2017-03-08 2021-11-17 삼성전자주식회사 전자 장치 및 전자 장치의 화면 표시방법
US11966578B2 (en) 2018-06-03 2024-04-23 Apple Inc. Devices and methods for integrating video with user interface navigation
CN110046010A (zh) * 2019-02-19 2019-07-23 阿里巴巴集团控股有限公司 界面处理方法、装置及系统
CN111814087B (zh) * 2019-04-25 2023-03-14 厦门雅基软件有限公司 Web窗口的动态布局方法、装置、电子设备及可读存储介质
CN111611035B (zh) * 2020-04-29 2022-05-31 浙江大华技术股份有限公司 自定义窗口分割布局方法、装置、计算机设备和存储介质
CN113703903A (zh) * 2021-09-10 2021-11-26 广州朗国电子科技股份有限公司 一种分屏显示方法及装置
CN114595020B (zh) * 2022-02-25 2023-12-19 深圳盛显科技有限公司 基于钩子技术的分屏显示方法、装置、系统及存储介质
CN116048341B (zh) * 2022-07-28 2023-09-15 荣耀终端有限公司 一种多屏协同方法及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006189989A (ja) * 2005-01-04 2006-07-20 Internatl Business Mach Corp <Ibm> オブジェクト編集システム、オブジェクト編集方法及びオブジェクト編集プログラム
WO2008090902A1 (ja) * 2007-01-25 2008-07-31 Sharp Kabushiki Kaisha マルチウィンドウ管理装置及びプログラム、記憶媒体、並びに情報処理装置
WO2012166182A1 (en) * 2011-05-27 2012-12-06 Microsoft Corporation Multi-application environment

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5487143A (en) * 1994-04-06 1996-01-23 Altera Corporation Computer user interface having tiled and overlapped window areas
US5712995A (en) * 1995-09-20 1998-01-27 Galileo Frames, Inc. Non-overlapping tiling apparatus and method for multiple window displays
US5920315A (en) * 1996-07-17 1999-07-06 International Business Machines Corporation Multi-pane window with recoiling workspaces
US5771042A (en) * 1996-07-17 1998-06-23 International Business Machines Corporation Multi-size control for multiple adjacent workspaces
WO1999010799A1 (en) * 1997-08-22 1999-03-04 Natrificial Llc Method and apparatus for simultaneously resizing and relocating windows within a graphical display
US6008809A (en) * 1997-09-22 1999-12-28 International Business Machines Corporation Apparatus and method for viewing multiple windows within a dynamic window
US6473102B1 (en) * 1998-05-11 2002-10-29 Apple Computer, Inc. Method and system for automatically resizing and repositioning windows in response to changes in display
US6195094B1 (en) * 1998-09-29 2001-02-27 Netscape Communications Corporation Window splitter bar system
US6661436B2 (en) * 2000-12-07 2003-12-09 International Business Machines Corporation Method for providing window snap control for a split screen computer program GUI
US20020191028A1 (en) 2001-06-19 2002-12-19 Senechalle David A. Window manager user interface
US7549127B2 (en) * 2002-08-01 2009-06-16 Realnetworks, Inc. Method and apparatus for resizing video content displayed within a graphical user interface
US7480872B1 (en) 2003-04-06 2009-01-20 Apple Inc. Method and apparatus for dynamically resizing windows
US7839419B2 (en) 2003-10-23 2010-11-23 Microsoft Corporation Compositing desktop window manager
US8276095B2 (en) * 2004-02-20 2012-09-25 Advanced Intellectual Property Group, Llc System for and method of generating and navigating within a workspace of a computer application
US20060020903A1 (en) * 2004-07-26 2006-01-26 Shih-Yang Wang Window split system and method
US20060053384A1 (en) * 2004-09-07 2006-03-09 La Fetra Frank E Jr Customizable graphical user interface for utilizing local and network content
US20060248471A1 (en) 2005-04-29 2006-11-02 Microsoft Corporation System and method for providing a window management mode
US7890882B1 (en) * 2006-04-20 2011-02-15 Adobe Systems Incorporated Content and proximity based window layout optimization
US8381130B2 (en) * 2006-11-29 2013-02-19 Yahoo! Inc. Method and user interface tool for navigation through grid of scheduled items
US20080163104A1 (en) * 2006-12-30 2008-07-03 Tobias Haug Multiple window handler on display screen
TWI381304B (zh) * 2008-04-22 2013-01-01 Htc Corp 使用者介面顯示區域的調整方法、裝置及儲存媒體
US8063454B2 (en) 2008-08-13 2011-11-22 Micron Technology, Inc. Semiconductor structures including a movable switching element and systems including same
US20110119597A1 (en) 2009-05-09 2011-05-19 Vivu, Inc. Method and apparatus for capability-based multimedia interactions
US8627228B2 (en) * 2009-05-24 2014-01-07 International Business Machines Corporation Automatic sash configuration in a GUI environment
US9907603B2 (en) 2010-05-05 2018-03-06 Ablacor Medical Corporation Anchored cardiac ablation catheter
US8875047B2 (en) * 2010-08-31 2014-10-28 Blackboard Inc. Smart docking for windowing systems
US20120299968A1 (en) * 2011-05-27 2012-11-29 Tsz Yan Wong Managing an immersive interface in a multi-application immersive environment
KR101859100B1 (ko) * 2011-07-19 2018-05-17 엘지전자 주식회사 휴대 전자기기 및 이의 제어방법
KR101888457B1 (ko) * 2011-11-16 2018-08-16 삼성전자주식회사 복수 개의 어플리케이션을 실행하는 터치스크린을 가지는 장치 및 그 제어 방법
US20130254708A1 (en) * 2012-03-26 2013-09-26 Ipplex Holdings Corporation Communication Room Management Systems
KR102069014B1 (ko) * 2012-09-25 2020-02-12 삼성전자 주식회사 휴대단말기의 분리화면 제어장치 및 방법
US10152459B2 (en) * 2013-02-20 2018-12-11 Google Llc Intelligent window placement with multiple windows using high DPI screens
US11294529B2 (en) 2013-04-15 2022-04-05 Microsoft Technology Licensing, Llc Application window divider control for window layout management
US10754536B2 (en) * 2013-04-29 2020-08-25 Microsoft Technology Licensing, Llc Content-based directional placement application launch

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006189989A (ja) * 2005-01-04 2006-07-20 Internatl Business Mach Corp <Ibm> オブジェクト編集システム、オブジェクト編集方法及びオブジェクト編集プログラム
WO2008090902A1 (ja) * 2007-01-25 2008-07-31 Sharp Kabushiki Kaisha マルチウィンドウ管理装置及びプログラム、記憶媒体、並びに情報処理装置
WO2012166182A1 (en) * 2011-05-27 2012-12-06 Microsoft Corporation Multi-application environment

Also Published As

Publication number Publication date
BR112015025939B1 (pt) 2021-11-30
US20240061543A1 (en) 2024-02-22
NZ712845A (en) 2020-01-31
SG10201707722WA (en) 2017-11-29
RU2015144183A (ru) 2017-04-18
CA2908006A1 (en) 2014-10-23
MY180954A (en) 2020-12-14
JP6216440B2 (ja) 2017-10-18
US11294529B2 (en) 2022-04-05
CN105190544A (zh) 2015-12-23
HK1214872A1 (zh) 2016-08-05
ZA201507206B (en) 2017-11-29
SG11201508348WA (en) 2015-11-27
BR112015025939A8 (pt) 2020-01-14
WO2014171963A1 (en) 2014-10-23
AU2013386836A1 (en) 2015-10-22
KR102113371B1 (ko) 2020-05-20
MX2015014579A (es) 2016-03-04
US11836327B2 (en) 2023-12-05
EP2987077B1 (en) 2020-07-29
IL241765B (en) 2020-03-31
AU2013386836B2 (en) 2020-01-16
CA2908006C (en) 2022-04-12
CL2015003057A1 (es) 2016-08-19
RU2656993C2 (ru) 2018-06-07
KR20150143630A (ko) 2015-12-23
US20140310646A1 (en) 2014-10-16
PH12015502311A1 (en) 2016-02-10
BR112015025939A2 (pt) 2017-07-25
US20220214776A1 (en) 2022-07-07
CN113821290A (zh) 2021-12-21
EP2987077A1 (en) 2016-02-24

Similar Documents

Publication Publication Date Title
JP6216440B2 (ja) ウィンドウレイアウト管理のためのアプリケーションウィンドウデバイダコントロール
US8810576B2 (en) Manipulation and management of links and nodes in large graphs
US8384726B1 (en) Selective rendering of off-screen content
CN107391117B (zh) 轻应用的分屏处理方法、设备及电子设备
US10788980B2 (en) Apparatus and method for displaying application
US9953046B2 (en) Data display device, data display method, and program product
JP5932831B2 (ja) 没入型環境の管理
KR20130064458A (ko) 복수 개의 영역으로 구분된 화면을 디스플레이하는 디스플레이 장치 및 그 방법
US20140310642A1 (en) Deferred placement prompt
US20130113703A1 (en) Shared edge for a display environment
US20140096047A1 (en) Electronic apparatus, method of executing application, and computer readable recording medium
CN111832271B (zh) 数据呈现方法、装置、电子设备和存储介质
CN105593810B (zh) 应用对应用启动窗口化
US20190026286A1 (en) Hierarchical data structure
CN105320435B (zh) 识别用于变更用户输入的单词的装置和方法
US20170169005A1 (en) Spread cell value visualization
CN114518819A (zh) 图标管理方法、装置和电子设备
CN115309319B (zh) 一种图片预览方法、装置、电子设备及存储介质
US20240111406A1 (en) Processing method and apparatus, and electronic device
EP3635527B1 (en) Magnified input panels
CN113961120A (zh) 基于车载应用的复杂页面显示方法、装置、设备及介质
JP2011150505A (ja) マルチウインドウ表示装置、マルチウインドウ表示方法、及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160815

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160815

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170523

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170823

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170922

R150 Certificate of patent or registration of utility model

Ref document number: 6216440

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250