(57)【特許請求の範囲】
【請求項１】
ウィンドウの表示を管理するためにコンピュータによって実施される、ウィンドウのサイズ設定及び制御方法であって、
表示領域に、制御アイコンを備えたウィンドウを提示することと、
前記制御アイコンの選択を示す第１の入力を受信することと、
前記第１の入力に応答して、前記制御アイコンに関連付けられた複数の選択可能なオプションを提示し、第１および第２の選択可能なオプションの各々を、前記制御アイコンのすぐ隣に位置付けられたオプションアイコンに対応させることと、
前記第１および第２の選択可能なオプションの中の１つの選択を示す第２の入力を受信することと、
前記第２の入力に応答して、前記ウィンドウのサイズを調整することと、を備え、
前記ウィンドウのサイズを調整することは、
選択された選択可能なオプションに関連付けられた方向に基づいて前記ウィンドウの２つ以上の辺のサイズを変化させることと、
前記ウィンドウをグリッドに位置合わせするために、前記ウィンドウの辺を移動させることとを含む、ウィンドウのサイズ設定及び制御方法。
【請求項２】
第１および第２のオプションアイコンはそれぞれ、前記制御アイコンのすぐ左隣および右隣に位置付けられる、請求項１に記載のウィンドウのサイズ設定及び制御方法。
【請求項３】
前記選択された選択可能なオプションが左方向に関連付けられ、
前記ウィンドウのサイズを調整することが、前記ウィンドウの上辺及び下辺を調整して前記ウィンドウのサイズを前記左方向に拡大することを更に含む、請求項１に記載のウィンドウのサイズ設定及び制御方法。
【請求項４】
前記選択された選択可能なオプションが右方向に関連付けられ、
前記ウィンドウのサイズを調整することが、前記ウィンドウの上辺及び下辺を調整して前記ウィンドウのサイズを前記右方向に拡大することを更に含む、請求項１に記載のウィンドウのサイズ設定及び制御方法。
【請求項５】
前記選択された選択可能なオプションが左方向に関連付けられ、
前記ウィンドウのサイズを調整することが、前記ウィンドウの左辺及び下辺を調整して、前記ウィンドウに関連付けられたアスペクト比に基づいて前記ウィンドウのサイズを変更することを更に含む、請求項１に記載のウィンドウのサイズ設定及び制御方法。
【請求項６】
前記オプションアイコンの各々が、左向きの矢印、又は右向きの矢印の１つを含む、請求項１に記載のウィンドウのサイズ設定及び制御方法。
【請求項７】
前記グリッド上の第１の所定位置を通過して前記ウィンドウの辺を移動させることは、入力のレベルが、前記グリッド上の前記第１の所定位置に関連付けられた抵抗に打ち勝つことを必要とする、請求項１に記載のウィンドウのサイズ設定及び制御方法。
【請求項８】
前記グリッド上の第２の所定位置を通過して前記ウィンドウの辺を移動させることは、入力の増加したレベルが、前記グリッド上の前記第２の所定位置に関連付けられた抵抗に打ち勝つことを必要とする、請求項７に記載のウィンドウのサイズ設定及び制御方法。
【請求項９】
ウィンドウの表示を管理するためにコンピュータによって実施される、ウィンドウのサイズ設定及び制御方法であって、
表示領域に、制御アイコンを備えたウィンドウを提示することと、
前記制御アイコンの選択を示す第１の入力を受信することと、
前記第１の入力に応答して、前記制御アイコンに関連付けられた複数の選択可能なオプションを提示し、第１および第２の選択可能なオプションの各々を、前記制御アイコンのすぐ隣に位置付けられたオプションアイコンに対応させることと、
前記第１および第２の選択可能なオプションの中の１つの選択を示す第２の入力を受信することと、
前記第２の入力に応答して、前記ウィンドウのサイズを調整することと、を備え、前記ウィンドウのサイズを調整することが、選択された選択可能なオプションに関連付けられた方向および前記ウィンドウに関連付けられたアスペクト比に基づいて前記ウィンドウの２つ以上の辺のサイズを変化させることを含む、ウィンドウのサイズ設定及び制御方法。
【請求項１０】
ウィンドウの表示を管理するためのシステムであって、
１つ以上のプロセッサと、
前記１つ以上のプロセッサに結合されたディスプレイと、
前記１つ以上のプロセッサに結合されたコンピュータ読み取り可能媒体と、を備え、
前記コンピュータ読み取り可能媒体は、記憶された命令を含み、前記１つ以上のプロセッサによって前記命令が実行された場合、
表示領域に、制御アイコンを備えたウィンドウを提示することと、
ユーザから、前記制御アイコンの選択を示す第１の入力を受信することと、
前記第１の入力に応答して、前記制御アイコンに関連付けられた複数の選択可能なオプションを提示し、第１および第２の選択可能なオプションの各々を、左方向及び右方向の１つに対応させ、前記第１および第２の選択可能なオプションの各々を、前記制御アイコンのすぐ隣に位置付けられたオプションアイコンに対応させることと、
前記ユーザから、前記第１および第２の選択可能なオプションの中の１つの選択を示す第２の入力を受信することと、
前記第２の入力に応答して、前記ウィンドウのサイズを調整することと、を備える動作を前記１つ以上のプロセッサに実行させ、
前記ウィンドウのサイズを調整することは、
選択された選択可能なオプションに関連付けられた方向に基づいて前記ウィンドウの２つ以上の辺のサイズを変化させることと、
前記ウィンドウをグリッドに位置合わせするために、前記ウィンドウの辺を移動させることとを含む、システム。
【請求項１１】
第１および第２のオプションアイコンはそれぞれ、前記制御アイコンのすぐ左隣および右隣に位置付けられる、請求項１０に記載のシステム。
【請求項１２】
前記第１の選択可能なオプションが前記左方向に関連付けられ、
前記ウィンドウのサイズを調整することが、前記ウィンドウの上辺及び下辺を調整して前記ウィンドウのサイズを前記左方向に拡大することを更に含む、請求項１０に記載のシステム。
【請求項１３】
前記第２の選択可能なオプションが前記右方向に関連付けられ、
前記ウィンドウのサイズを調整することが、前記ウィンドウの上辺及び下辺を調整して前記ウィンドウのサイズを前記右方向に拡大することを更に含む、請求項１０に記載のシステム。
【請求項１４】
前記第１の選択可能なオプションが前記左方向に関連付けられ、
前記ウィンドウのサイズを調整することが、前記ウィンドウの左辺及び下辺を調整して、前記ウィンドウに関連付けられたアスペクト比に基づいて前記ウィンドウのサイズを変更することを更に含む、請求項１０に記載のシステム。
【請求項１５】
第１および第２のオプションアイコンはそれぞれ、左向きの矢印及び右向きの矢印を含む、請求項１０に記載のシステム。
【請求項１６】
ウィンドウの表示を管理するためのシステムであって、
１つ以上のプロセッサと、
前記１つ以上のプロセッサに結合されたディスプレイと、
前記１つ以上のプロセッサに結合されたコンピュータ読み取り可能媒体と、を備え、
前記コンピュータ読み取り可能媒体は、記憶された命令を含み、前記１つ以上のプロセッサによって前記命令が実行された場合、
表示領域に、制御アイコンを備えたウィンドウを提示することと、
ユーザから、前記制御アイコンの選択を示す第１の入力を受信することと、
前記第１の入力に応答して、前記制御アイコンに関連付けられた複数の選択可能なオプションを提示し、第１および第２の選択可能なオプションの各々を、左方向及び右方向の１つに対応させ、前記第１および第２の選択可能なオプションの各々を、前記制御アイコンのすぐ隣に位置付けられたオプションアイコンに対応させることと、
前記ユーザから、前記第１および第２の選択可能なオプションの中の１つの選択を示す第２の入力を受信することと、
前記第２の入力に応答して、前記ウィンドウのサイズを調整することと、を備える動作を前記１つ以上のプロセッサに実行させ、前記ウィンドウのサイズを調整することが、選択された選択可能なオプションに関連付けられた方向および前記ウィンドウに関連付けられたアスペクト比に基づいて前記ウィンドウの２つ以上の辺のサイズを変化させることを含む、システム。
【請求項１７】
請求項１〜９のいずれかに記載の方法をコンピュータに実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
主題の技術は、ウィンドウを管理するためのユーザインタフェース及び方法に関し、具体的には、１つ以上のウィンドウの表示を実行し、且つ管理するためのウィンドウマネージャに関する。
【発明の概要】
【課題を解決するための手段】
【０００２】
開示する主題は、ウィンドウの表示を管理するための方法に関する。いくつかの態様において、本方法は、表示領域に、制御アイコンを備えたウィンドウを提示することと、制御アイコンの選択を示す第１の入力を受信することと、第１の入力に応答して、制御アイコンに関連付けられた複数の選択可能なオプションを提示し、複数の選択可能なオプションの各々を、上方向、下方向、左方向、又は右方向の１つに対応させることと、を含む。
いくつかの態様では、本方法は、更に、複数の選択可能なオプションの中で第１のものの選択を示す第２の入力を受信することと、第２の入力に応答してウィンドウのサイズを調整することが、複数の選択可能なオプションの中で第１のものに関連付けられた方向に基づいてウィンドウの２つ以上の辺のサイズを変化させることと、を含む。
【０００３】
別の態様において、主題の技術は、ウィンドウの表示を管理するためのシステムに関する。いくつかの実施において、本システムは、１つ以上のプロセッサと、１つ以上のプロセッサに結合されたディスプレイと、１つ以上のプロセッサに結合されたコンピュータ読み取り可能媒体と、を備える。
コンピュータ読み取り可能媒体は、記憶された命令を含み、１つ以上のプロセッサによって、この命令が実行された場合、表示領域に、制御アイコンを備えたウィンドウを提示することと、ユーザから、制御アイコンの選択を示す第１の入力を受信することと、第１の入力に応答して、制御アイコンに関連付けられた複数の選択可能なオプションを提示し、複数の選択可能なオプションの各々を、上方向、下方向、左方向、又は右方向の１つに対応させることと、を含む。
いくつかの実施において、プロセッサは、ユーザから、複数の選択可能なオプションの中で第１のものの選択を示す第２の入力を受信することと、第２の入力に応答して、ウィンドウのサイズを調整することが、複数の選択可能なオプションの中で第１のものに関連付けられた方向に基づいてウィンドウの２つ以上の辺のサイズを変化させることと、を含む動作を実行させるように更に構成することができる。
【０００４】
更に別の態様では、開示する主題は、記憶された命令を含むコンピュータ読み取り可能媒体に関する。１つ以上のプロセッサによって、この命令が実行された場合、表示領域に、制御アイコンを備えたウィンドウを提示することと、ユーザから、制御アイコンの選択を示す第１の入力を受信することと、第１の入力に応答して、制御アイコンに関連付けられた複数の選択可能なオプションを提示し、複数の選択可能なオプションの各々を、上方向、下方向、左方向、又は右方向の１つに対応させることと、を含む動作をプロセッサに実行させる。いくつかの実施において、プロセッサは、ユーザから、複数の選択可能なオプションの中で第１のものの選択を示す第２の入力を受信することと、第２の入力に応答してウィンドウのサイズを調整することが、複数の選択可能なオプションの中で第１のものに関連付けられた方向に基づいてウィンドウの２つ以上の辺のサイズを変化させることを含むための動作を更に実行させることができる。
【０００５】
主題の技術の様々な構成を例示として図示し記載する以下の詳細な説明から、主題の技術の他の構成は、当業者に容易に明らかになることは理解されよう。認められるように、主題の技術では、他の構成及び異なる構成も可能であり、そのいくつかの詳細事項は、全て主題の技術の範囲から逸脱することなく、様々な他の点において変更することができる。したがって、図面及び詳細な説明は本質的に限定でなく例示と見なすものとする。
【図面の簡単な説明】
【０００６】
主題の技術のいくつかの特徴は、添付の特許請求の範囲に述べられている。しかしながら、更なる理解を与えるために含まれる添付図面は、開示する態様を例示するものであり、記載と共に、開示する態様の原理を説明するように機能する。
【０００７】
【図１Ａ】主題の開示のいくつかの態様を実施するために使用可能なウィンドウ制御アイコンを含むグラフィカルユーザインタフェース（ＧＵＩ）の一例を示す。
【図１Ｂ】開示のいくつかの態様を実施するために使用可能なウィンドウ制御アイコンを含むＧＵＩの一例を示す。
【図１Ｃ】開示のいくつかの態様を実施するために使用可能なウィンドウ制御アイコンを含むＧＵＩの一例を示す。
【図１Ｄ】開示のいくつかの態様を実施するために使用可能なウィンドウ制御アイコンを含むＧＵＩの一例を示す。
【図２】開示のいくつかの態様に従った、１つ以上のウィンドウのサイズを調整するための例示的な方法のステップを示す。
【図３】主題の開示のいくつかの態様を実施するために使用可能な電子システムの一例を示す。
【発明を実施するための形態】
【０００８】
以下に述べる詳細な説明は、主題の技術の様々な構成の説明として意図しており、主題の技術を実施可能である構成のみを表すことは意図していない。添付図面は、本明細書に組み込まれて、詳細な説明の一部を構成する。詳細な説明は、主題の技術の更に完全な理解を与える目的で、具体的な詳細事項を含む。しかしながら、主題の技術が、本明細書に述べられる具体的な詳細事項に限定されず、これらの具体的な詳細事項がなくても実施可能であることは、当業者には明白であり認められるであろう。いくつかの例では、主題の技術の概念を不明瞭にすることを避けるため、周知の構造及び構成要素はブロック図の形態で示す。
【０００９】
主題の開示の態様は、グラフィカルユーザインタフェースにおいて１つ以上のウィンドウを提示し、その外観を制御するためのシステムソフトウェア及び方法を提供する。いくつかの態様では、主題の開示の方法を用いることで、例えばグラフィカルユーザインタフェース（ＧＵＩ）における表示領域内で、１つ以上のウィンドウのサイズ設定（ｓｉｚｉｎｇ）及び配置に変化を与えることができる。
【００１０】
いくつかの態様において、主題の技術は、例えばＧＵＩの表示領域に表示された１つ以上のウィンドウに「ウィンドウ制御」アイコンを表示するように構成することができるウィンドウマネージャを提供する。ウィンドウ制御アイコンは、表示領域上の（又は表示領域内の）どこにでも位置決めすることができるが、いくつかの実施では、表示領域に提示されたウィンドウ内に表示される「ウィンドウを閉じる」アイコンの隣に位置付けられる。
ウィンドウ制御アイコンを（例えばユーザによって）選択すると、対応するウィンドウのサイズ変更（ｒｅｓｉｚｅ）のために使用可能である複数の選択可能なオプションが提示される。いくつかの態様では、選択可能なオプションはアイコンとして表示され、これは、例えば、表示の異なる方向を指し示す矢印アイコンである（例えば上向きの矢印、下向きの矢印、左向きの矢印、及び右向きの矢印）。ユーザは、選択可能なオプションの１つを選択することにより、関連付けられたウィンドウのサイズ設定を調整することができる。
【００１１】
選択可能なオプションのユーザ選択は、実施に応じて様々なものであり得る。例えば、カーソル又はタッチに基づく入力を用いて選択を実行可能である。いくつかの実施では、ユーザのジェスチャ（例えば、カーソル又はポインティングデバイスを用いて行われるジェスチャ）をウィンドウマネージャによって解釈して、選択可能なオプションの１つを選択する際に使用することができる。一例として、ユーザは、ウィンドウ制御アイコンを選択した後、カーソルを上方向に動かすことで、対応した選択可能なオプションの選択を示すことができる。これにより、関連付けられたウィンドウの表示を最大化させることができる。
【００１２】
本明細書に示すいくつかの例では、単一の制御アイコンを有する単一のウィンドウを用いるが、ＧＵＩの表示領域内に多数のウィンドウを同時に提示することも可能である。図１Ａは、ウィンドウ制御アイコン（以降、「制御アイコン」という。）を含むＧＵＩの一例を示す。具体的には、ＧＵＩ１００は、表示領域１０２、ウィンドウ１０４Ａ及び制御アイコン１０６を含む。上述のように、ウィンドウ１０４Ａは、例えば制御アイコン１０６に対して受信された入力に基づいてサイズ設定／サイズ変更され得る。
【００１３】
いくつかの実施では、制御アイコン１０６を選択すると、複数の選択可能なオプションがユーザに提示される。実施によるが、選択可能なオプションは、ユーザに（例えばディスプレイデバイス上で）視覚的に表示される場合がある。しかしながら、いくつかの実施では、選択可能なオプションを視覚的に表示することなく、（例えばジェスチャを介して）ユーザに利用可能とすることもある。
【００１４】
制御アイコン１０６のユーザ選択によって、図１Ｂに示すように選択可能なオプションを表示させることができる。具体的には、図１Ｂは、ウィンドウ１０４Ｂ、制御アイコン１０６及び複数の選択可能なオプション（例えば、１０８、１１０、１１２、及び１１４）を有する表示領域１０２を示す。選択可能なオプション（例えば、１０８、１１０、１１２及び１１４）は、制御アイコン１０６の選択に応答して提示される。図１Ｂの例において、選択可能なオプション（例えば、１０８、１１０、１１２及び１１４）は、特定の方向に関連付けられたアイコンとして示されている。しかしながら、上述のように、選択可能なオプション（例えば、１０８、１１０、１１２及び１１４）は、ユーザに視覚的に表示されないことがあり、特定のジェスチャ又は入力シーケンスを介して選択可能となる場合もある。これについては、以下で詳述する。
【００１５】
選択可能なオプションを提示させた（例えば選択のために利用できるようにした）後、選択可能なオプション（例えば、１０８、１１０、１１２及び１１４）の１つを選択すると、ウィンドウ１０４Ｂのサイズ変更、最小化、又は最大化を実行することができる。
【００１６】
図１Ｂに示す２点鎖線で例示するように、ウィンドウ１０４Ｂの境界は、ウィンドウ１０４Ａよりもサイズが拡大している。一例として、選択可能なオプション１１２を選択すると、選択可能なオプション１１２に関連付けられた方向にウィンドウ１０４Ａをサイズ変更することができる（例えば、２点鎖線で示すように左側の境界と平行に）。同様に、ウィンドウ１０４Ｂは、選択可能なオプション１１４のユーザ選択によって、例えば表示領域１０２に対して右方向にサイズが拡大されることも可能である。
【００１７】
他の態様では、選択可能なオプション（例えば、１０８、１１０、１１２及び１１４）を選択すると、表示領域１０２内でウィンドウ１０４Ｂを最大化又は最小化させることができる。
図１Ｃに、選択可能なオプション１０８を用いてウィンドウ１０４Ｂのサイズを最大化させる例を示す。具体的には、図１Ｃは、ウィンドウ１０４Ｃ（例えば、図１Ｂに示すようなウィンドウ１０４Ｂの拡大版）の表示に用いられる表示領域１０２を示す。選択可能なオプション１０８のユーザ選択が示されると、ウィンドウ１０４Ｃの新しい境界を示す２点鎖線によって示されるように、ウィンドウ１０４Ｃは最大化される。
【００１８】
更に別の態様では、選択可能なオプション（例えば、１０８、１１０、１１２及び１１４）を選択するとウィンドウを最小化させることができる。例えば、図１Ｄの例に示すように、選択可能なオプション１１０を選択すると、ウィンドウ１０４Ｃを最小化させることができる。具体的には、図１Ｄは、ウィンドウ１０４Ｄが最小化されている表示領域１０２を示す（例えばウィンドウ１０４Ｄは、上述のウィンドウ１０４Ｃの最小化版を表す）。
【００１９】
図２は、１つ以上のウィンドウのサイズを調整するための例示的な方法２００のステップを示す。方法２００は、表示領域１０２にウィンドウを提示するステップ２０２から開始する。ウィンドウは、制御アイコンを備えている。上述のように、制御アイコン（例えば制御アイコン１０６）は、ウィンドウ（例えばウィンドウ１０４Ａ）上の（又はウィンドウ内の）どこにでも配置することができる。他の態様では、制御アイコンを、ウィンドウから離れた表示領域（例えば表示領域１０２）の位置に配置することができる。
【００２０】
ステップ２０４において、制御アイコンの選択を示す第１の入力を受信する。一例として、第１の入力は、ポインタ又はタッチに基づいた表示等の選択手段を介してユーザから受信され得る。しかしながら、ユーザ入力の受信は、多種多様な手段を用いて達成可能であり、それらは限定されず、ジェスチャ及び／又は音声コマンド等を含む。
【００２１】
第１の入力を受信した後、方法２００は、ステップ２０６に進み、制御アイコンに関連付けられた複数の選択可能なオプションを提示する。上述した通り、選択可能なオプションは、表示領域１０２において視覚的に提示することができ（例えば、アイコン等のグラフィカルな指示を用いて）、又は、ジェスチャ若しくはユーザから受信した他の入力を介してアクセス可能とすることができればよい。
【００２２】
ステップ２０８において、複数の選択可能なオプションの中で第１のものの選択を示す第２の入力を受信する。第２の入力に応答して、方法２００はステップ２１０に進み、複数の選択可能なオプションの中で第１のものに関連付けられた方向に基づいて、表示領域１０２内のウィンドウのサイズを調整する。
【００２３】
上述の例に関して、第２の入力で、（例えば表示領域に対して）左方向に関連付けられた選択可能なオプションをユーザが選択したことが示される場合、図１Ｂに示すように、ウィンドウの領域を左方向に拡大することによってウィンドウのサイズを大きくすることができる。同様に、第２の入力が、右方向に関連付けられた選択可能なオプションの選択を示す場合、ウィンドウの領域を右方向に拡大することによってウィンドウを大きくすることができる。
実施に応じて、ウィンドウのサイズ変更（例えば、ウィンドウの表示領域の拡大又は縮小）は、異なる方法で実行可能である。例えば、ウィンドウの当初のアスペクト比を考慮せずに、ウィンドウの２つ以上の辺（例えば上辺及び下辺）を長くすることによって、（表示領域内のウィンドウ配置に対して）左方向にウィンドウを拡大することができる。
更に、ウィンドウのサイズ変更は、ウィンドウの当初のアスペクト比を維持するように、又はサイズ変更の実行後に最適なアスペクト比を達成するように実行され得る。
別の例として、ウィンドウ内に表示されているコンテンツに基づいてアスペクト比を調整しながら、ウィンドウの全ての辺をサイズ変更して、（例えば第２の入力に関連付けられた方向に一致する）特定の方向に沿ってウィンドウの表示領域を拡大することができる。
【００２４】
更に、ウィンドウは、図１Ｃ及び図１Ｄに関してそれぞれ例示したように最大化又は最小化させることができる。例えば第２の入力で、下向きの方向に関連付けられた選択可能なオプションをユーザが選択したことが示される場合、ウィンドウを最小化することができる。あるいは、第２の入力で、上向きの方向に関連付けられた選択可能なオプションをユーザが選択したことが示される場合、ウィンドウを最大化することができる。
【００２５】
いくつかの実施において、ウィンドウのサイズ設定（又はサイズ変更）は、表示領域内のグリッド（図示せず）の配置に基づいて行われる。グリッドは、例えばウィンドウのサイズ、配置、及び／又は挙動等、１つ以上の表示されたウィンドウに対する調整を容易にするために使用可能である。ユーザにより移動又はサイズ変更されるウィンドウを、グリッドの個々の輪郭に一致させることができる。例えば、サイズ変更したウィンドウの辺を、ユーザに見える（又は見えない場合もある）グリッドの輪郭と位置合わせすることができる。グリッド輪郭のサイズ及び間隔に応じて、ユーザが利用できるサイズ変更オプションの数が増減する。いくつかの実施では、ユーザがウィンドウを移動（又はサイズ変更）すると、ウィンドウの辺は、最も近い対応グリッド位置に素早く移動（ｓｎａｐ）する。
【００２６】
いくつかの実施では、ウィンドウを最適なグリッド位置に素早く移動させることができる。ウィンドウをグリッド上の特定の位置に（例えば特定のグリッド輪郭に）素早く移動させるという決定は、いくつかのファクタを考慮に入れて行うことができる。例えば、最適なウィンドウのサイズ／位置は、スクリーン全体のサイズ、表示されるウィンドウの数、ウィンドウの寸法、ウィンドウ立ち上げ順序等に基づいて決定することができる。
【００２７】
他の実施においては、様々な条件に応じて、特定のグリッド位置でウィンドウに抵抗（ｒｅｓｉｓｔａｎｃｅ）を与えることができる（例えば、ウィンドウは、特定の位置のグリッドに「貼り付く（ｓｔｉｃｋ）」ことができる）。一例として、ウィンドウは、スクリーンの縁に相当する位置のグリッドに貼り付いて、ウィンドウのコンテンツ領域がスクリーンからはみ出して配置されるのを防止することができる。同様に、ウィンドウは、正しい位置又は最適な位置にあると判定されたグリッド位置に貼り付くことができる。この位置は、例えば、１つ以上の他のウィンドウの辺に位置合わせされたグリッド位置（例えば、ウィンドウが重なり合うことを防止するため）、又は空いている空間に位置付けられたグリッド位置（例えば、移動中のウィンドウを他のウィンドウから離れた空き領域に誘導するため）である。
【００２８】
いくつかの態様では、グリッドのいくつかの領域を横切るようにウィンドウ（例えばウィンドウ１０４Ａ）の１つ以上の辺を移動させると、必然的に様々な量の抵抗を受けることがある。例えばユーザは、グリッド上の複数の所定位置を通過してウィンドウの辺を移動させたいという追加の（より強い）指示を与える必要があり得る。
【００２９】
図３は、主題の開示のステップを実行するために使用可能な電子システムの一例を示す。いくつかの例において、電子システム３００は、サーバ等の単一のコンピューティングデバイスとすることができる。更に、いくつかの実施において、電子システム３００は、単体で動作するか、又は、例えばコンピュータのクラスタ若しくはネットワークの一部として１つ以上の他の電子システムと共に動作することができる。
【００３０】
図示のように、電子システム３００は、記憶装置３０２、システムメモリ３０４、出力デバイスインタフェース３０６、バス３０８、ＲＯＭ３１０、１つ以上のプロセッサ３１２、入力デバイスインタフェース３１４及びネットワークインタフェース３１６を含む。いくつかの態様では、バス３０８は、電子システム３００の多数の内部デバイスを通信可能に接続する全てのシステムバス、周辺機器用バス、及びチップセットバスを集合的に表す。例えばバス３０８は、１つ以上のプロセッサ３１２を、ＲＯＭ３１０、システムメモリ３０４、出力デバイスインタフェース３０６、及び記憶装置３０２に通信可能に接続する。
【００３１】
いくつかの実施において、様々なメモリユニット、１つ以上のプロセッサ３１２は、主題の技術のステップを実行するために、実行する命令（及び処理するデータ）を検索する。１つ以上のプロセッサ３１２は、異なる実施において、シングルプロセッサ又はマルチコアプロセッサとすることができる。更に、１つ以上のプロセッサ３１２は、実施に応じて、１つ以上のグラフィックプロセッシングユニット（ＧＰＵ）及び／又は１つ以上のデコーダを含むことができる。
【００３２】
ＲＯＭ３１０は、１つ以上のプロセッサ３１２及び電子システム３００の他のモジュールにより必要とされる静的データ及び命令を記憶する。同様に、１つ以上のプロセッサ３１２は、ＣＰＵキャッシュ又はＰＩＭ（ｐｒｏｃｅｓｓｏｒ  ｉｎ  ｍｅｍｏｒｙ）のような１つ以上のメモリ位置を含むことができる。記憶装置３０２は、リード／ライトメモリデバイスである。いくつかの態様では、記憶装置３０２は、電子システム３００に電力供給がない場合でも命令及びデータを記憶する不揮発性メモリユニットとすることができる。主題の開示のいくつかの実施では、例えば記憶装置３０２等の大容量記憶装置（固体記憶装置、磁気記憶装置、又は光記憶装置等）を使用可能である。
【００３３】
他の実施では、記憶装置３０２等の１つ以上の着脱可能記憶デバイス（例えば磁気ドライブ又は固体ドライブ）を使用可能である。システムメモリは、揮発性又は不揮発性のいずれであってもよいが、いくつかの例のシステムメモリ３０４は、ランダムアクセスメモリ等の揮発性リード／ライトメモリである。システムメモリ３０４は、プロセッサ３１２が実行時に必要とする命令及びデータの一部を記憶することができる。
【００３４】
いくつかの実施において、主題の開示のプロセスは、システムメモリ３０４、記憶装置３０２、ＲＯＭ３１０、及び／又は１つ以上のプロセッサ３１２に埋め込まれた１つ以上のメモリ位置に記憶されている。これらの様々なメモリユニットから、１つ以上のプロセッサ３１２は、本開示のいくつかの実施のプロセス／方法を実行するために、実行する命令及び処理するデータを検索する。
【００３５】
いくつかの態様において、バス３０８は、入力デバイスインタフェース３１４及び出力デバイスインタフェース３０６にも接続する。入力デバイスインタフェース３１４によって、ユーザは、電子システム３００に対する情報の通信及びコマンドの選択を行うことができる。入力デバイスインタフェース３１４と共に用いられる入力デバイスは、例えば、英数字キーボード及びポインティングデバイス（「カーソル制御デバイス」とも呼ぶ）、及び／又は無線キーボードや無線ポインティングデバイス等の無線デバイスを含み得る。
【００３６】
最後に、図３に示すように、バス３０８は、ネットワークインタフェース３１６を介して電子システム３００をネットワーク（図示せず）に通信可能に結合する。ネットワークインタフェース３１６は、有線、光学式、又は無線のいずれかとすることができ、１つ以上のアンテナ及び送受信器を備え得ることは理解されよう。このように、電子システム３００は、ローカルエリアネットワーク（「ＬＡＮ」）、ワイドエリアネットワーク（「ＷＡＮ」）、又はインターネット等のネットワークのネットワーク等、コンピュータのネットワークの一部とすることができる。
【００３７】
主題の技術の方法は、電子システム３００によって実行することができる。いくつかの態様では、本開示の方法のステップの１つ以上を実行するための命令は、記憶装置３０２及び／又はシステムメモリ３０４等の１つ以上のメモリデバイスに記憶されている。例えば、電子システム３００を用いて、電子システム３００のユーザにグラフィカルユーザインタフェース（ＧＵＩ）を提供するための命令を記憶及び／又は実行することができる。
いくつかの実施では、ＧＵＩの挙動は、ウィンドウマネージャを備えるソフトウェアによって制御される。ウィンドウマネージャは、表示領域にウィンドウを提示するように構成され、ウィンドウは、制御アイコンを備えている。ウィンドウマネージャは、更に、制御アイコンのユーザ選択を示す第１の入力を受信するように、また、この第１の入力に応答して制御アイコンに関連付けられた複数の選択可能なオプションを提示するように構成することができる。
いくつかの態様では、ウィンドウマネージャは、更に、複数の選択可能なオプションの中で第１のものの選択を示す第２の入力を受信するように、また、複数の選択可能なオプションの中で第１のものに関連付けられた方向に基づいて表示領域内のウィンドウのサイズを調整するように構成することができる。
【００３８】
本明細書において、「ソフトウェア」という言葉は、読み出し専用メモリに常駐するファームウェア又は磁気記憶装置に記憶されたアプリケーションを含むことが意図され、これは、プロセッサによる処理のためにメモリに読み出すことができる。また、いくつかの実施では、主題の開示の別個のソフトウェアの態様を維持しながら、主題の開示の多数のソフトウェアの態様をもっと大きいプログラムの副部分（ｓｕｂ−ｐａｒｔｓ）として実施することができる。いくつかの実施では、多数のソフトウェアの態様は別々のプログラムとして実施することも可能である。
最後に、ここに記載したソフトウェアの態様を共同で実施する別々のプログラムのいかなる組み合わせも主題の開示の範囲内である。いくつかの実施では、ソフトウェアプログラムは、インストールされて１つ以上の電子システム上で動作する場合、ソフトウェアプログラムの動作を実行する１つ以上の固有のマシンの実施を規定する。
【００３９】
コンピュータプログラム（プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、又はコードとしても知られる）は、コンパイラ型又はインタプリタ型言語、宣言型又は手続き型言語を含むいずれかの形態のプログラミング言語で書くことができ、更に、スタンドアロンプログラムとして、又はモジュール、コンポーネント、サブルーチン、オブジェクト、若しくはコンピューティング環境での使用に適した他のユニットとしての形態を含むいずれかの形態で導入することができる。
コンピュータプログラムは、ファイルシステム内のファイルに対応することができるが、これは必須ではない。プログラムは、他のプログラム又はデータ（例えばマークアップ言語ドキュメントに記憶された１つ以上のスクリプト）を保持するファイルの一部、対象プログラムに専用の単一ファイル、又は多数の連携させたファイル（例えば、１つ以上のモジュール、サブプログラム、又はコードの部分を記憶する複数のファイル）に記憶することができる。コンピュータプログラムは、１台のコンピュータ又は多数のコンピュータ上で実行するように導入することができ、この多数のコンピュータは、１つの場所に配置するか、又は多数の場所に分散させて通信ネットワークで相互接続することができる。
【００４０】
本明細書及び本出願の特許請求の範囲において用いる場合、「コンピュータ」、「サーバ」、「プロセッサ」、及び「メモリ」という言葉は全て、電子デバイス又は他の技術のデバイスを指す。これらの言葉は、人又は人のグループを除外する。明確化の目的のため、表示又は表示するという言葉は電子デバイス上に表示することを意味する。本明細書及び本出願の特許請求の範囲において用いる場合、「コンピュータ読み取り可能媒体」及び「複数のコンピュータ読み取り可能媒体」という言葉は、全体として、コンピュータによって読み取り可能な形態で情報を記憶する有形の（ｔａｎｇｉｂｌｅ）物理的な物体に限定される。これらの言葉は、無線信号、有線ダウンロード信号、及び他のいずれかの一時的な（ｅｐｈｅｍｅｒａｌ）信号を除外する。
【００４１】
本明細書に記載した主題（ｓｕｂｊｅｃｔ  ｍａｔｔｅｒ）の実施形態を実行することができるコンピューティングシステムは、例えば、データサーバのようなバックエンドコンポーネントを含むか、又は、例えば、アプリケーションサーバのようなミドルウェアコンポーネントを含むか、又は、例えば、ユーザが本明細書に記載した主題の実施と相互作用することが可能なグラフィカルユーザインタフェース又はウェブブラウザを有するクライアントコンピュータのようなフロントエンドコンポーネントを含むか、又は１つ以上のそのようなバックエンド、ミドルウェア、又はフロントエンドのコンポーネントのいずれかの組み合わせを含む。
システムのコンポーネントは、例えば通信ネットワーク等のデジタルデータ通信のいずれかの形態又は媒体によって相互接続することができる。通信ネットワークの例には、ローカルエリアネットワーク（「ＬＡＮ」）、ワイドエリアネットワーク（「ＷＡＮ」）、インターネットワーク（例えばインターネット）、及びピアツーピアネットワーク（例えばアドホックのピアツーピアネットワーク）が含まれる。
【００４２】
コンピューティングシステムは、クライアント及びサーバを含むことができる。クライアント及びサーバは、一般的に相互にリモートであり、通常は通信ネットワークを介して相互作用する。クライアント及びサーバの関係は、コンピュータプログラムが各コンピュータ上で実行し、相互に対してクライアント−サーバの関係を有することによって発生する。いくつかの実施形態では、サーバは、クライアントデバイスにデータ（例えばＨＴＭＬページ）を送信する（例えば、クライアントデバイスと相互作用しているユーザにデータを表示すると共にユーザからユーザ入力を受信する目的のため）。クライアントデバイスで生成されたデータ（例えばユーザ相互作用の結果）は、クライアントデバイスからサーバに受信することができる。
【００４３】
開示するプロセスにおけるステップの特定の順序又は階層が例示的な手法の一例であることは理解されよう。設計の好みに応じて、プロセスにおけるステップの特定の順序又は階層を並べ替えることも可能であり、又は全ての例示するステップを実行することも可能であることは理解されよう。ステップの一部は同時に実行してもよい。例えばいくつかの状況では、マルチタスク及び並列処理が有利である場合がある。
更に、上述の実施形態における様々なシステムコンポーネントの分離は、あらゆる実施形態においてそのような分離が必要であると理解されるべきではない。記載したプログラムコンポーネント及びシステムは一般に、単一のソフトウェア製品に統合するか、又は多数のソフトウェア製品にパッケージ化することが可能であることは理解されよう。
【００４４】
これまでの記載は、当業者が本明細書に記載された様々な態様を実施できるように与えられている。当業者には、これらの態様の様々な変更が容易に明らかとなろう。本明細書に規定した包括的な原理は他の態様に適用され得る。
したがって、特許請求の範囲は、本明細書に示した態様に限定されることは意図せず、言語クレーム（ｌａｎｇｕａｇｅ  ｃｌａｉｍｓ）に一致する全範囲が与えられる。単数の要素に対する言及は、特に指定のない限り、「１つのみ」を意味するのではなく、「１つ以上」を意味することが意図される。特に明記しない限り、「いくつかの」という言葉は１つ以上のことを指す。男性の代名詞（例えば彼の（ｈｉｓ））は、女性及び中性の性を含み（例えば彼女の（ｈｅｒ））及びその（ｉｔｓ）、その逆もまた同様である。見出し及び小見出しがある場合、これは便宜上用いられるだけであり、主題の開示を限定するものではない。
【００４５】
「態様」等の語句は、そのような態様が主題の技術に不可欠であることも、そのような態様が主題の技術の全ての構成に該当することも暗示しない。１つの態様に関する開示は、全ての構成又は１つ以上の構成に該当する可能性がある。態様等の語句は、１つ以上の態様を指す場合があり、その逆もまた同様である。「構成」等の語句は、そのような構成が主題の技術に不可欠であることも、そのような構成が主題の技術の全ての構成に該当することも暗示しない。１つの構成に関する開示は、全ての構成又は１つ以上の構成に該当する可能性がある。
【００４６】
当業者に既知であるか又は後に既知となる、本開示全体を通して記載した様々な態様の要素に対する全ての構造的な均等物及び機能的な均等物は、引用により明示的に本明細書に組み込まれ、特許請求の範囲によって包含されることが意図される。
【図１Ａ】
0006302938.tif 000002
【図１Ｂ】
0006302938.tif 000003
【図１Ｃ】
0006302938.tif 000004
【図１Ｄ】
0006302938.tif 000005
【図２】
0006302938.tif 000006
【図３】
0006302938.tif 000007