(57)【要約】【課題】ウィンドウの表示をユーザの利用状況に応じて切り替え可能にする。【解決手段】本発明に係る情報処理装置は、ユーザの属性を示すユーザ属性情報と、実行する各アプリケーションの属性を示すアプリケーション属性情報とを記憶している。情報処理装置は、ユーザ属性情報を取得するとともに（Ｓａ１）、実行中のアプリケーションのアプリケーション属性情報を取得し（Ｓａ３）、ユーザ属性情報と一致するアプリケーション属性情報があるか否かを判断する（Ｓａ５）。ユーザ属性情報と一致するアプリケーション属性情報がある場合、これに対応するウィンドウ（注目ウィンドウ）を特定し（Ｓａ６）、注目ウィンドウの優先度が他の重なるウィンドウよりも高くなるように優先度を決定し（Ｓａ８）、決定した優先度に応じてウィンドウの表示順序を切り替える（Ｓａ９）。【選択図】図３
2008299637.tif 000002
【特許請求の範囲】
【請求項１】
実行中のアプリケーションについて記憶された第１の属性情報を取得する第１の取得手段と、
記憶された第２の属性情報を取得する第２の取得手段と、
前記実行中のアプリケーションに対応して表示手段に表示されるウィンドウを特定する第１の特定手段と、
前記表示手段が行う表示において前記第１の特定手段により特定されたウィンドウと重なるウィンドウを特定する第２の特定手段と、
複数のウィンドウについて表示の優先度を決定する決定手段であって、前記第１の属性情報と前記第２の属性情報とが一致する場合に、前記第１の特定手段により特定されたウィンドウの優先度が前記第２の特定手段により特定されたウィンドウの優先度より高くなるように複数のウィンドウの優先度を決定する決定手段と、
前記決定手段により決定された優先度が高いウィンドウを当該優先度が低いウィンドウより前面に表示させる表示制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記第２の取得手段は、
実行中のアプリケーションであって、前記第１のアプリケーションと異なる第２のアプリケーションについて記憶された属性情報を前記第２の属性情報として取得し、
前記第１の特定手段は、前記第１のアプリケーションに対応して前記表示手段に表示されるウィンドウと、前記第２のアプリケーションに対応して前記表示手段に表示されるウィンドウとをそれぞれ特定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
ウィンドウを選択する選択手段を備え、
前記第１の取得手段は、
前記選択手段により選択されたウィンドウに対応するアプリケーションに係る前記第１の属性情報を取得する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記表示制御手段は、
前記第１のアプリケーションに対応するウィンドウと前記第２のアプリケーションに対応するウィンドウとが重なる場合に、これらのウィンドウが重ならないように少なくとも一方のウィンドウの位置を変更して表示させる
ことを特徴とする請求項２に記載の情報処理装置。
【請求項５】
前記第１の取得手段は、
実行中のアプリケーションが出力する情報の属性を前記第１の属性情報として取得する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記第１の取得手段は、
前記実行中のアプリケーションが出力する情報の変化に応じて新たな第１の属性情報を取得し、
前記決定手段は、
前記第１の取得手段が前記第１の属性情報を取得する毎に優先度を決定する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記第１の属性情報と前記第２の属性情報との関連付けを記憶する記憶手段を備え、
前記決定手段は、
前記取得された第１の属性情報と第２の属性情報とが前記記憶手段に記憶された関連付けを有する場合に、前記第１の特定手段により特定されたウィンドウの優先度が前記第２の特定手段により特定されたウィンドウの優先度より高くなるように複数のウィンドウの優先度を決定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項８】
ウィンドウを指定する指定手段を備え、
前記表示制御手段は、
前記指定手段により指定されたウィンドウが前記第２の特定手段により特定されたウィンドウに含まれる場合に、当該ウィンドウを最前面に表示させる
ことを特徴とする請求項１に記載の情報処理装置。
【請求項９】
コンピュータに、
実行中のアプリケーションについて記憶された第１の属性情報を取得する機能と、
記憶された第２の属性情報を取得する機能と、
前記実行中のアプリケーションに対応して表示手段に表示される第１のウィンドウを特定する機能と、
前記表示手段が行う表示において前記第１のウィンドウと重なる第２のウィンドウを特定する機能と、
複数のウィンドウについて表示の優先度を決定する機能であって、前記第１の属性情報と前記第２の属性情報とが一致する場合に、前記第１のウィンドウの優先度が前記第２のウィンドウの優先度より高くなるように複数のウィンドウの優先度を決定する機能と、
前記決定された優先度が高いウィンドウを当該優先度が低いウィンドウより前面に表示させる機能と
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＧＵＩ（Graphical User Interface）に関する。
【背景技術】
【０００２】
複数のウィンドウが重なる場合の表示制御として、特許文献１に記載された技術が知られている。特許文献１には、表示画面に少なくとも２つのウィンドウを互いに重なる部分をもつ状態で表示しているときに、前面に表示されているウィンドウと、後面に表示されているウィンドウとを所定時間毎に入れ替えることや、それぞれのウィンドウの使用時間に応じて前面に表示する時間の長さを定めることが記載されている。
【特許文献１】特開平８−１６１１３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、前面に表示すべきウィンドウとは、その表示時にユーザが利用する状況にあるウィンドウであるといえる。それゆえ、ユーザの利用の仕方によっては、前面に表示するウィンドウを所定時間毎に入れ替えるだけでは、ユーザが必要としていないウィンドウが前面に表示されることもある。
そこで、本発明は、ウィンドウの表示をユーザの利用状況に応じて切り替え可能にすることを目的としている。
【課題を解決するための手段】
【０００４】
本発明に係る情報処理装置は、実行中のアプリケーションについて記憶された第１の属性情報を取得する第１の取得手段と、記憶された第２の属性情報を取得する第２の取得手段と、前記実行中のアプリケーションに対応して表示手段に表示されるウィンドウを特定する第１の特定手段と、前記表示手段が行う表示において前記第１の特定手段により特定されたウィンドウと重なるウィンドウを特定する第２の特定手段と、複数のウィンドウについて表示の優先度を決定する決定手段であって、前記第１の属性情報と前記第２の属性情報とが一致する場合に、前記第１の特定手段により特定されたウィンドウの優先度が前記第２の特定手段により特定されたウィンドウの優先度より高くなるように複数のウィンドウの優先度を決定する決定手段と、前記決定手段により決定された優先度が高いウィンドウを当該優先度が低いウィンドウより前面に表示させる表示制御手段とを備えることを特徴とする。
【０００５】
本発明に係る情報処理装置において、前記第２の取得手段は、実行中のアプリケーションであって、前記第１のアプリケーションと異なる第２のアプリケーションについて記憶された属性情報を前記第２の属性情報として取得し、前記第１の特定手段は、前記第１のアプリケーションに対応して前記表示手段に表示されるウィンドウと、前記第２のアプリケーションに対応して前記表示手段に表示されるウィンドウとをそれぞれ特定する構成を採用してもよい。
また、この構成において、ウィンドウを選択する選択手段をさらに備え、前記第１の取得手段は、前記選択手段により選択されたウィンドウに対応するアプリケーションに係る前記第１の属性情報を取得する構成としてもよい。
あるいは、この構成において、前記表示制御手段は、前記第１のアプリケーションに対応するウィンドウと前記第２のアプリケーションに対応するウィンドウとが重なる場合に、これらのウィンドウが重ならないように少なくとも一方のウィンドウの位置を変更して表示させる構成としてもよい。
【０００６】
本発明に係る情報処理装置において、前記第１の取得手段は、実行中のアプリケーションが出力する情報の属性を前記第１の属性情報として取得する構成を採用してもよい。
また、この構成において、前記第１の取得手段は、前記実行中のアプリケーションが出力する情報の変化に応じて新たな第１の属性情報を取得し、前記決定手段は、前記第１の取得手段が前記第１の属性情報を取得する毎に優先度を決定する構成としてもよい。
【０００７】
本発明に係る情報処理装置において、前記第１の属性情報と前記第２の属性情報との関連付けを記憶する記憶手段を備え、前記決定手段は、前記取得された第１の属性情報と第２の属性情報とが前記記憶手段に記憶された関連付けを有する場合に、前記第１の特定手段により特定されたウィンドウの優先度が前記第２の特定手段により特定されたウィンドウの優先度より高くなるように複数のウィンドウの優先度を決定する構成を採用してもよい。
【０００８】
本発明に係る情報処理装置において、ウィンドウを指定する指定手段を備え、前記表示制御手段は、前記指定手段により指定されたウィンドウが前記第２の特定手段により特定されたウィンドウに含まれる場合に、当該ウィンドウを最前面に表示させる構成を採用してもよい。
【０００９】
本発明に係るプログラムは、コンピュータに、実行中のアプリケーションについて記憶された第１の属性情報を取得する機能と、記憶された第２の属性情報を取得する機能と、前記実行中のアプリケーションに対応して表示手段に表示される第１のウィンドウを特定する機能と、前記表示手段が行う表示において前記第１のウィンドウと重なる第２のウィンドウを特定する機能と、複数のウィンドウについて表示の優先度を決定する機能であって、前記第１の属性情報と前記第２の属性情報とが一致する場合に、前記第１のウィンドウの優先度が前記第２のウィンドウの優先度より高くなるように複数のウィンドウの優先度を決定する機能と、前記決定された優先度が高いウィンドウを当該優先度が低いウィンドウより前面に表示させる機能とを実現させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ウィンドウの表示をユーザの利用状況に応じて切り替えることが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照し、本発明の実施の形態を説明する。
［第１実施形態］
図１は、本発明の第１の実施形態である情報処理装置の全体構成を示すブロック図である。同図に示すように、情報処理装置１００は、制御部１１と、無線通信部１２と、操作部１３と、表示部１４とを備える。情報処理装置１００は、本実施形態においては、携帯電話機であるとする。
【００１２】
制御部１１は、ＣＰＵ（Central Processing Unit）１１ａ、ＲＯＭ（Read Only Memory）１１ｂ、ＲＡＭ（Random Access Memory）１１ｃ及びＥＥＰＲＯＭ（Electronically Erasable and Programmable ROM）１１ｄを備え、ＣＰＵ１１ａがＲＡＭ１１ｃをワークエリアとして用いてＲＯＭ１１ｂやＥＥＰＲＯＭ１１ｄに記憶されたプログラムを実行し、これにより情報処理装置１００の各部の動作を制御する。無線通信部１２は、アンテナ１２ａを備え、所定のネットワークとのデータ通信を無線で行う。操作部１３は、ボタン等の操作子を備え、ユーザの操作に応じた操作信号を制御部１１に供給する。表示部１４は、液晶ディスプレイや液晶駆動回路を備え、制御部１１から供給される表示データに応じた画像を表示する。
【００１３】
ＲＯＭ１１ｂは、あらかじめいくつかのプログラムを記憶している。以下ではこれを「プリインストールプログラム」という。具体的には、プリインストールプログラムは、マルチタスクオペレーティングシステム（以下「マルチタスクＯＳ」という。）、Ｊａｖａ（登録商標）プラットフォーム及びネイティブアプリケーションの各プログラムである。マルチタスクＯＳは、ＴＳＳ（Time-Sharing System）による複数タスクの擬似的な並列実行を実現するために必要な仮想メモリ空間の割り当てなどの各種機能をサポートしたオペレーティングシステムである。Ｊａｖａプラットフォームは、マルチタスクＯＳを搭載した情報処理装置１００において後述するＪａｖａ実行環境１１４を実現するためのコンフィギュレーションであるＣＤＣ（Connected Device Configuration）にしたがって記述されたプログラム群である。ネイティブアプリケーションは、通話などの情報処理装置１００における基本的なサービスを実現するプログラムである。
【００１４】
ＥＥＰＲＯＭ１１ｄは、Ｊａｖａアプリケーションが記憶されるＪａｖａアプリケーション格納領域を有する。Ｊａｖａアプリケーションは、Ｊａｖａ実行環境下における処理の手順自体を記述した実体プログラムとその実体プログラムの実行に伴って利用される画像ファイルや音声ファイルとを結合したＪＡＲ(Java Archive)ファイルと、そのＪＡＲファイルのインストールや起動、各種の属性を記述したＡＤＦ（Application Descriptor File）とを有している。このＪａｖａアプリケーションは、データ通信サービスを提供する通信事業者やコンテンツプロバイダにより作成されて外部のサーバ装置などに格納され、情報処理装置１００からの要求に応じてそれらのサーバ装置から適宜ダウンロードされるようになっている。
【００１５】
図２は、ＲＯＭ１１ｂ及びＥＥＰＲＯＭ１１ｄに記憶された各種プログラムの実行により情報処理装置１００の制御部１１に実現される各部の論理的構成を示す図である。同図に示すように、各種プログラムを実行する情報処理装置１００には、ネイティブアプリケーション１１２及びＪａｖａ実行環境１１３がＯＳ１１１上に実現され、また、ＥＥＰＲＯＭ１１ｄには第１ストレージ１１４と第２ストレージ１１５とが確保される。
【００１６】
Ｊａｖａ実行環境１１３は、ＲＯＭ１１ｂのＪａｖａプラットフォームにより実現される。Ｊａｖａ実行環境１１３は、クラスライブラリ１１６、ＪＶＭ（Java Virtual Machine）１１７及びＪＡＭ（Java Application Manager）１１８からなる。クラスライブラリ１１６は、特定の機能を有するプログラムモジュール（クラス）群を１つのファイルに結合したものである。ＪＶＭ１１７は、上述のＣＤＣのために最適化されたＪａｖａ実行環境であり、Ｊａｖａアプリケーションとして提供されるバイトコードを解釈して実行する機能を有する。ＪＡＭ１１８は、Ｊａｖａアプリケーションのダウンロードやインストール、起動・終了などを管理する機能を有する。
【００１７】
第１ストレージ１１４は、ＪＡＭ１１８の管理の下にダウンロードされるＪａｖａアプリケーション（ＪａｒファイルとＡＤＦ）を格納する領域である。第２ストレージ１１５は、Ｊａｖａアプリケーションの実行の際に生成されたデータをその終了後に格納しておくための領域であり、インストールされたＪａｖａアプリケーション毎に個別の格納領域が割り当てられるようになっている。そして、あるＪａｖａアプリケーションに割り当てられた格納領域のデータは、そのＪａｖａアプリケーションが実行されている間のみ書き換え可能となっており、別のＪａｖａアプリケーションが書き換えを行い得ないようになっている。
【００１８】
ＲＯＭ１１ｂ又はＥＥＰＲＯＭ１１ｄは、記憶されているアプリケーション（ネイティブアプリケーション又はＪａｖａアプリケーション）のそれぞれについて、アプリケーションの属性を示す情報を記憶している。この情報のことを、以下では「アプリケーション属性情報」という。本実施形態において、アプリケーション属性情報は、あらかじめ決められた複数の項目から選択されるいずれかの項目を含む。かかる項目としては、例えば、「ビジネス」、「スポーツ」、「エンタテインメント」などが挙げられる。
アプリケーション属性情報は、例えば、アプリケーションの作成者により、当該アプリケーションを実現するプログラム中に記述される情報である。あるいは、アプリケーション属性情報は、ユーザが各プログラムについて任意に設定する情報であってもよい。この場合において、アプリケーション属性情報は、プログラムが記憶された記憶領域と異なる記憶領域に記述されていてもよい。
【００１９】
また、ＥＥＰＲＯＭ１１ｄは、情報処理装置１００のユーザの属性を示す情報を記憶している。この情報のことを、以下では「ユーザ属性情報」という。本実施形態において、ユーザ属性情報は、アプリケーション属性情報と同様の項目を含む。ユーザ属性情報は、ユーザにより登録される情報であり、必要に応じて書き換えられるようにしてもよい。
【００２０】
情報処理装置１００の構成は、以上のとおりである。この構成のもと、情報処理装置１００は、ユーザの要求に応じて複数のアプリケーションを実行する。このとき、ユーザは、操作部１３を介して所定の操作を行い、情報処理装置１００にアプリケーションの実行を要求する。情報処理装置１００は、複数のアプリケーションを実行する場合、それぞれのアプリケーションに対応した複数のウィンドウを表示することができる。
【００２１】
なお、本実施形態において、「ウィンドウ」とは、アプリケーションが所定の機能を実現するときに当該アプリケーションに対して割り当てられる表示領域のことをいう。ここにおいて、その表示領域は、いかなる形状や外観を有していてもよく、窓型（矩形状）である必要はないが、以下に示す図においては、説明の便宜上、いずれも長方形とする。また、ウィンドウは、他のウィンドウが前面に重ねて表示されたとき、重なった部分については、前面の他のウィンドウのみが表示され、当該他のウィンドウが重なった表示領域は表示されないようになっている。以下においては、このように前面のウィンドウによって一部が非表示となったウィンドウの位置のことを、前面に対して「後面」という。
【００２２】
情報処理装置１００は、いわゆるオーバーラップウィンドウ方式によりウィンドウを表示する。すなわち、情報処理装置１００は、ユーザからの指示に応じてウィンドウを選択し、その表示位置を移動させたり、複数のウィンドウを重ねて表示したりことが可能である。そのため、情報処理装置１００の制御部１１は、複数のウィンドウの表示位置及び表示順序に関する情報（以下「ウィンドウ情報」という。）を記憶し、ウィンドウの移動がある毎にこれを更新する。なお、ここにおいて、ウィンドウの表示順序とは、最前面のウィンドウから順にウィンドウの数を数えた場合の順番をいう。また、複数のウィンドウが重なる場合、情報処理装置１００は、フォーカス（入力フォーカス）が与えられた状態、すなわち選択された状態となった時間が新しいウィンドウをより前面に表示する。以下においては、フォーカスが与えられているウィンドウの状態のことを「アクティブ」という。つまり、ある時点においてアクティブであるウィンドウは、最前面に表示されている。
【００２３】
情報処理装置１００は、重ねて表示しているウィンドウがある場合に、それぞれのウィンドウに対応するアプリケーションのアプリケーション属性情報とユーザ属性情報とに基づいてこれらのウィンドウの表示の優先度を決定し、決定して優先度に基づいてウィンドウの表示順序を制御する。この動作を行うときに情報処理装置１００が実行する処理は、以下のとおりである。
【００２４】
図３は、情報処理装置１００の制御部１１が実行する動作を示すフローチャートである。なお、この動作は、マルチタスクＯＳの一機能として実現される動作であり、所定のイベント（動作）を契機に実行されるものである。そのイベントとは、例えば、ユーザが操作を行い、新たなウィンドウが表示されたり、ウィンドウの表示位置が変更される動作などである。また、この動作は、このようなイベントによらず、所定の時間間隔で定期的に実行されるものであってもよい。
【００２５】
同図に示すように、まず、制御部１１は、ＥＥＰＲＯＭ１１ｄに記憶されたユーザ属性情報を取得する（ステップＳａ１）。次に、制御部１１は、実行中のアプリケーションを特定する（ステップＳａ２）。実行中のアプリケーションを特定したら、制御部１１は、特定したアプリケーションのアプリケーション属性情報を取得する（ステップＳａ３）。その後、制御部１１は、特定したアプリケーションに対応するウィンドウの表示位置及び表示順序を特定する（ステップＳａ４）。なお、この特定は、制御部１１がウィンドウ情報を参照することにより行われる。
【００２６】
続いて、制御部１１は、ステップＳａ３において取得したアプリケーション属性情報にステップＳａ１において取得したユーザ属性情報と一致するものが含まれるか否かを判断する（ステップＳａ５）。ユーザ属性情報と一致するアプリケーション属性情報がある場合（ステップＳａ５：ＹＥＳ）、制御部１１は、そのアプリケーション属性情報に対応するアプリケーションを特定するとともに、当該アプリケーションに対応するウィンドウ（以下「注目ウィンドウ」という。）を特定し（ステップＳａ６）、注目ウィンドウより前面に注目ウィンドウと重なる他のウィンドウがあるか否かを判断する（ステップＳａ７）。
【００２７】
注目ウィンドウより前面に他のウィンドウがある場合（ステップＳａ７：ＹＥＳ）、制御部１１は、注目ウィンドウの表示に関する優先度を変更する。具体的には、制御部１１は、注目ウィンドウの優先度が注目ウィンドウに重なる他のウィンドウの優先度よりも高くなるように、それぞれのウィンドウの優先度を決定する（ステップＳａ８）。なお、ここにおいて、制御部１１は、注目ウィンドウと重ならないウィンドウについては、従前の表示順序を維持する。
【００２８】
優先度を決定したら、制御部１１は、決定した優先度に従ってウィンドウの表示順序を切り替える（ステップＳａ９）。このとき、制御部１１は、優先度が高いウィンドウがより前面に表示されるように各ウィンドウの表示順序を決定し、これに応じた表示データを出力する。また、このとき制御部１１は、決定した表示順序を反映させるべく、ウィンドウ情報を更新する。
【００２９】
なお、ステップＳａ５又はＳａ７における判断が否定的（ＮＯ）である場合、すなわち、ユーザ属性情報と一致するアプリケーション属性情報が取得されなかった場合か、又は、注目ウィンドウより前面に他のウィンドウが存在しない場合には、制御部１１は、ウィンドウの表示順序を切り替えることなく処理を終了する。かかる場合は、最前面に表示すべきウィンドウ（注目ウィンドウ）が既に最前面に表示されており、その表示を妨げるウィンドウが存在しないからである。
【００３０】
以上に説明した動作について、ウィンドウの具体的な表示例を挙げて説明する。なお、この説明においては、ウィンドウを表示するアプリケーションとして、所定のゲームを実行するアプリケーションａと、表計算を行うアプリケーションｂ（いわゆるスプレッドシート）とがあるものとする。また、アプリケーションａのアプリケーション属性情報は「エンタテインメント」であり、アプリケーションｂのアプリケーション属性情報は「ビジネス」であるとする。なお、これらのアプリケーションは、Ｊａｖａアプリケーションであってもよいし、ネイティブアプリケーションであってもよい。
【００３１】
いま、アプリケーションａ及びｂのそれぞれに対応するウィンドウが、図４（ａ）に示す状態で表示されている場合を想定する。なお、同図において、アプリケーションａに対応するウィンドウがＷａ、アプリケーションｂに対応するウィンドウがＷｂであり、ハッチングで示した領域が表示領域全体である。ここにおいて、アプリケーションｂに対応するウィンドウＷｂは、アプリケーションａに対応するウィンドウＷａよりも前面に表示されている。
【００３２】
この場合において、ユーザが登録したユーザ属性情報が「エンタテインメント」であれば、制御部１１は、属性が一致するアプリケーションａのウィンドウＷａを前面に表示させる。すなわち、表示部１４の表示状態は、図４（ａ）から図４（ｂ）に変化する。一方、ユーザが登録したユーザ属性情報が「ビジネス」であれば、表示部１４の表示状態は、図４（ａ）から変化しない。これは、アプリケーション属性情報が「ビジネス」であるアプリケーションｂに対応するウィンドウＷｂが、もともと前面に表示されていたからである。
【００３３】
このように、本実施形態の情報処理装置１００によれば、ユーザが登録した属性に一致する属性を有するアプリケーションのウィンドウを優先的に表示させることができる。これにより、ユーザにおいては、複数のウィンドウが重ねて表示される場合に、自身が所望するウィンドウをより少ない操作でアクティブにし、これを閲覧することが容易となる。このような動作は、携帯電話機のような操作子や画面サイズが制限される小型機器において、マルチタスクで処理を実行する場合に、特に顕著な効果を奏する。
【００３４】
［第２実施形態］
本実施形態は、上述した第１実施形態の一部を変形したものである。本実施形態と第１実施形態との主たる相違点は、第１実施形態においては、ユーザの属性とアプリケーションの属性とを比較し、これらが一致するアプリケーションのウィンドウを優先的に表示するのに対して、本実施形態においては、アプリケーションの属性どうしを比較し、共通の属性を有する複数のアプリケーションに対応する複数のウィンドウを優先的に表示する点にある。
【００３５】
本実施形態の情報処理装置と第１実施形態の情報処理装置１００との構成上の相違点は、本実施形態の情報処理装置がユーザ属性情報を記憶する必要がない点にある。そのため、本実施形態の説明においては、便宜上、図１に示した構成及び符号をそのまま用いる。また、本実施形態の情報処理装置の動作に関しても、特段の説明をしない部分については、第１実施形態と同様である。
【００３６】
本実施形態の情報処理装置１００が実行するアプリケーションには、表示するコンテンツ（情報）が時間に応じて変化するアプリケーションが含まれる。以下においては、説明の便宜上、かかるアプリケーションを「可変アプリケーション」という。可変アプリケーションは、例えば、無線通信部１２を介してネットワークからコンテンツを取得してＲＡＭ１１ｃに記憶させ、記憶させたコンテンツに応じた表示を行う機能を有する。そして、可変アプリケーションは、ネットワークから新たなコンテンツを取得すると、新たに取得したコンテンツに応じて表示を書き換える。このようなアプリケーションの一例としては、そのときどきの最新のニュースを表示するアプリケーションなどが挙げられる。
【００３７】
本実施形態において、可変アプリケーションは、表示するコンテンツに属性が割り当てられており、表示するコンテンツの変化に応じて属性が変化する構成である。かかる構成の一例としては、コンテンツの属性を表す属性情報がコンテンツに付帯してネットワークから送信される構成が挙げられる。可変アプリケーションにおいては、コンテンツに割り当てられた属性情報をアプリケーション属性情報とする。
【００３８】
図５は、情報処理装置１００の制御部１１が実行する動作を示すフローチャートである。なお、この動作は、所定の終了条件を満たすまで繰り返し処理を実行するものである。ここにおいて、終了条件とは、例えば、あるウィンドウが最大化されて表示領域の全体を占める状態となったり、全てのウィンドウが非表示となる場合のことをいう。あるいは、他のウィンドウと重なるウィンドウが存在しなくなった場合を終了条件を満たす場合としてもよい。これらの動作は、例えば、ユーザの操作に起因する割り込み処理に基づいて行われる。
【００３９】
同図に示すように、まず、制御部１１は、実行中のアプリケーションを特定する（ステップＳｂ１）。実行中のアプリケーションを特定したら、制御部１１は、特定したアプリケーションのアプリケーション属性情報を取得する（ステップＳｂ２）。その後、制御部１１は、特定したアプリケーションに対応するウィンドウの表示位置及び表示順序を特定する（ステップＳｂ３）。なお、この特定は、制御部１１がウィンドウ情報を参照することにより行われる。
【００４０】
続いて、制御部１１は、特定したウィンドウのうちアクティブであるウィンドウを特定するとともに、このウィンドウに対応するアプリケーションと、そのアプリケーションのアプリケーション属性情報とを併せて特定する（ステップＳｂ４）。すなわち、制御部１１は、最前面に表示されているウィンドウと、これに対応するアプリケーション及びアプリケーション属性情報とを特定する。
【００４１】
アクティブなウィンドウとこれに対応するアプリケーション及びアプリケーション属性情報を特定したら、制御部１１は、特定したアプリケーション属性情報に一致するアプリケーション属性情報を有するアプリケーションが他に存在するか否かを判断する（ステップＳｂ５）。すなわち、制御部１１は、ステップＳｂ１において特定したアプリケーションにステップＳｂ４において特定したアプリケーション属性情報を有するものがあるか否かを判断する。このとき、制御部１１は、ステップＳｂ１において特定したアプリケーションからアクティブなウィンドウに対応するアプリケーションを除外し、この判断を行う。
【００４２】
かかるアプリケーションが存在する場合（ステップＳｂ５：ＹＥＳ）、制御部１１は、当該アプリケーションに対応するウィンドウを特定する（ステップＳｂ６）。本実施形態においては、ここで特定されるウィンドウのことを「注目ウィンドウ」という。そして、制御部１１は、注目ウィンドウより前面に注目ウィンドウと重なる他のウィンドウがあるか否かを判断する（ステップＳｂ７）。
【００４３】
注目ウィンドウより前面に他のウィンドウがある場合（ステップＳｂ７：ＹＥＳ）、制御部１１は、注目ウィンドウの表示に関する優先度を変更する。具体的には、制御部１１は、注目ウィンドウの優先度が注目ウィンドウに重なる他のウィンドウの優先度よりも高くなるように、それぞれのウィンドウの優先度を決定する（ステップＳｂ８）。ただし、制御部１１は、当該他のウィンドウがアクティブである場合には、アクティブなウィンドウの優先度を注目ウィンドウの優先度より高くしてもよい。
【００４４】
優先度を決定したら、制御部１１は、決定した優先度に従ってウィンドウの表示順序を切り替える（ステップＳｂ９）。このとき、制御部１１は、優先度が高いウィンドウがより前面に表示されるように各ウィンドウの表示順序を決定し、これに応じた表示データを出力する。また、このとき制御部１１は、決定した表示順序を反映させるべく、ウィンドウ情報を更新する。なお、ステップＳｂ５又はＳｂ７における判断が否定的（ＮＯ）である場合には、制御部１１は、ウィンドウの表示順序の切り替えを行わない。
【００４５】
表示順序の切り替えが終了し、又は、ステップＳｂ５若しくはＳｂ７における判断が否定的であった場合、制御部１１は、上述した終了条件が満たされるか否かを判断する（ステップＳｂ１０）。終了条件を満たす場合（ステップＳｂ１０：ＹＥＳ）、制御部１１は、この処理を終了する。
【００４６】
一方、終了条件を満たさない場合（ステップＳｂ１０：ＮＯ）、制御部１１は、実行中のアプリケーションに属性の変更があるか否かを判断する（ステップＳｂ１１）。例えば、上述した可変アプリケーションにおいて、表示する情報が更新された場合、アプリケーション属性情報が変更されている場合があり得る。かかる場合には、このステップにおける判断が肯定的（ＹＥＳ）となる。
【００４７】
実行中のアプリケーションの属性に変更があった場合（ステップＳｂ１１：ＹＥＳ）、制御部１１は、ステップＳｂ１からの処理を再び実行し、必要があればウィンドウの表示順序を切り替える。一方、実行中のアプリケーションの属性がステップＳｂ２において特定したものと全て同一である場合（ステップＳｂ１１：ＮＯ）、制御部１１は、終了条件を満たすか否かの判断（ステップＳｂ１０）を再び行う。すなわち、ステップＳｂ１０及びＳｂ１１の処理は、実行中のアプリケーションの属性に変更があるか、終了条件を満たすまで繰り返し実行される。
【００４８】
以上に説明した動作について、ウィンドウの具体的な表示例を挙げて説明する。なお、この説明においては、ウィンドウを表示するアプリケーションとして、上述したゲームのアプリケーションａ及び表計算のアプリケーションｂに加え、電卓の機能を有するアプリケーションｃと、ニュース情報を表示するアプリケーションｄ（いわゆるティッカ）とがあるものとする。また、アプリケーションａのアプリケーション属性情報は「エンタテインメント」であり、アプリケーションｂ及びｃのアプリケーション属性情報は「ビジネス」であるとする。さらに、アプリケーションｄは可変アプリケーションであり、アプリケーション属性情報が表示するニュース情報に応じて変化するものであるとする。
【００４９】
なお、ここにおいて、ティッカとは、無線通信部１２を介してニュース情報をコンテンツとして順次取得し、これを順次表示するアプリケーションをいう。また、ニュース情報には、表示される内容（ニュース）に応じて、「ビジネス」や「エンタテインメント」といった属性情報が割り当てられている。
【００５０】
いま、アプリケーションａ、ｂ、ｃ及びｄのそれぞれに対応するウィンドウが、図６（ａ）に示す状態で表示されている場合を想定する。なお、同図において、アプリケーションａに対応するウィンドウがＷａであり、以下同様に、アプリケーションｂ、ｃ及びｄに対応するウィンドウがそれぞれ、Ｗｂ、Ｗｃ及びＷｄである。また、このとき、アプリケーションｂのウィンドウＷｂがアクティブであり、アプリケーションｄは「ビジネス」以外の属性情報を有するニュースを表示中であるとする。
【００５１】
この場合において、情報処理装置１００が図５に示した処理を実行すると、アプリケーション属性情報がアプリケーションｂと共通する電卓のアプリケーションｃのウィンドウＷｃが優先的に表示される。すなわち、表示部１４の表示状態は、図６（ａ）から図６（ｂ）に変化する。
また、この後、ティッカのアプリケーションｄが表示するニュースが切り替わり、属性情報が「ビジネス」であるニュースが表示されたとすると、アプリケーションｄのウィンドウＷｄも優先的に表示される。すなわち、表示部１４の表示状態は、図６（ｂ）から図６（ｃ）に変化する。
【００５２】
なお、ここで、可変アプリケーションであるアプリケーションｄのウィンドウＷｄをユーザが選択し、アクティブにすると、その後は表示するニュースの内容に応じてウィンドウ表示が切り替えられ、表示するニュースに応じた属性に対応したウィンドウが前面に表示されるようになる。
【００５３】
このように、本実施形態の情報処理装置１００によれば、属性が一致するアプリケーションのウィンドウどうしを優先的に表示させることができる。これにより、ユーザにおいては、例えば、仕事（ビジネス）に関連するアプリケーションを操作しているときに、同様に仕事に関連する他のアプリケーションのウィンドウを容易に参照することができるなど、自身の利用状況に応じたウィンドウを同時に閲覧することが可能となる。
【００５４】
また、本実施形態の情報処理装置１００によれば、属性情報の変更があるか否かを判断し、属性情報に変化があった場合に再び表示の優先度を決定するため、可変アプリケーションのような属性が可変のアプリケーションを用いた場合に、属性の変化に応じて優先的に表示するウィンドウを変化させることができる。
【００５５】
［変形例］
本発明は、上述した実施形態と異なる形態で実施することが可能である。本発明は、例えば、以下のような形態で実施することも可能である。また、以下に示す変形例は、各々を適宜に組み合わせてもよい。
【００５６】
（１）変形例１
ウィンドウの表示の優先度を変更する場合、優先度に加えて表示位置を変更するようにしてもよい。例えば、第２実施形態においては、アクティブなウィンドウと、アクティブなウィンドウに対応するアプリケーションと属性が一致するアプリケーションのウィンドウとを優先的に表示させる場合において、これら２つのウィンドウが部分的に重なることがあり得る。このような場合には、一方のウィンドウが他方のウィンドウの表示を妨げることがあるので、情報処理装置は、これらが重ならないように表示位置を制御し、双方のウィンドウの全体が閲覧できるようにするとよい。なお、このとき、表示位置を変更するウィンドウは、一方のみであってもよいし、双方であってもよい。
【００５７】
また、第１実施形態においても、ウィンドウの表示位置を変更することができる。例えば、あるウィンドウを最前面に表示するよう優先度を決定した場合において、当該ウィンドウが表示部１４の表示領域の端などの閲覧しにくい領域にあるときには、当該ウィンドウをより閲覧しやすい領域（中央など）に表示させてもよい。さらには、より閲覧しやすくするために、ウィンドウを従前よりも拡大して表示させてもよい。
【００５８】
（２）変形例２
上述した第２実施形態においては、「可変アプリケーション」の一例として、表示するコンテンツが時間に応じて変化するアプリケーションを示したが、ここでいう「可変アプリケーション」は、表示と異なる態様でコンテンツを出力するものであってもよい。例えば、コンテンツが音声データであり、このコンテンツを音声として出力、すなわち再生するアプリケーションであってもよい。かかるアプリケーションの一例としては、ニュースを音声で再生するものや、音楽を再生するものなどが挙げられる。
【００５９】
なお、音楽を再生するアプリケーションの場合などには、属性情報として音楽のジャンルや歌手（又は演奏者など）を登録するようにしてもよい。このようにすれば、ユーザ属性情報として自身の好きなジャンルや歌手を登録することによって、自身の好きなジャンルや歌手の音楽が再生された場合に音楽を再生するアプリケーションのウィンドウを前面に表示することができる。
【００６０】
（３）変形例３
属性情報（ユーザ属性情報及びアプリケーション属性情報）は、複数の異なる属性を含むものであってもよい。例えば、属性情報は、大まかな分類を示す基本的な属性（基本属性）と、この基本的な属性に従属する属性（詳細属性）とを含んでいてもよい。
図７は、このような属性情報の一例を示す図である。同図は、基本属性として「ビジネス」又は「エンタテインメント」のいずれかを含む属性情報について、その詳細属性をツリー状に示したものである。同図において、「ビジネス」に従属する詳細属性としては、「政治」、「経済」、「社会」、「テクノロジ」があり、「エンタテインメント」に従属する詳細属性としては、「スポーツ」、「芸能」、「音楽」、「ゲーム」がある。
【００６１】
このようにすれば、ユーザの利用により適したウィンドウ表示を行うことが可能となる。例えば、ユーザが、「ビジネス」のうち、特に「テクノロジ」についての情報を取得したい場合であれば、これを「ビジネス」の他の詳細属性の情報よりも優先的に前面に表示させる、というようなことが可能となる。
【００６２】
（４）変形例４
変形例３で説明したように、複数の異なる属性を属性情報に含めた場合、表示の優先度を段階的に決定してもよい。例えば、ユーザ属性情報が含む属性として「基本属性」と「詳細属性」とがある場合において、アプリケーション属性情報のうち「基本属性」と「詳細属性」とが一致するアプリケーションに対応するウィンドウの優先度を最も高くし、次いで、アプリケーション属性情報のうち「基本属性」が一致するものの「詳細属性」が一致しないウィンドウの優先度をその次に高くし、アプリケーション属性情報のうち「基本属性」も「詳細属性」も一致しないアプリケーションに対応するウィンドウの優先度を最も低くする、というようにしてもよい。
【００６３】
（５）変形例５
上述した実施形態においては、表示の優先度を決定する際に属性情報が一致するか否かを判断したが、属性情報が完全に一致するものがない場合には、類似するものや所定の対応関係を有するものがあるか否かを判断するようにしてもよい。このような場合には、ある属性情報と類似する（又は所定の対応関係を有する）属性情報との関連付けをＲＯＭ１１ｂ又はＥＥＰＲＯＭ１１ｄに記憶させてもよい。
【００６４】
（６）変形例６
ユーザ属性情報は、情報処理装置の置かれた状況に応じて変化するものであってもよい。例えば、ユーザ属性情報が時間に応じて切り替わる構成を採用してもよい。このようにすれば、例えば、業務時間内は属性情報が「ビジネス」であるアプリケーションのウィンドウを優先的に表示させる一方で、業務時間外は属性情報が「エンタテインメント」であるアプリケーションのウィンドウを優先的に表示させる、といったことが可能となる。
【００６５】
また、例えば、情報処理装置に位置を特定する手段を設け、特定した位置に応じてユーザ属性情報を切り替える構成としてもよいし、もちろん、ユーザ自身が任意にユーザ属性情報を切り替えられる構成としてもよい。
【００６６】
（７）変形例７
上述した第２実施形態においては、アクティブなアプリケーションのアプリケーション属性情報を取得し、これと一致するアプリケーション属性情報を有するアプリケーションのウィンドウを優先的に前面に表示させるとした。しかし、本発明は、アプリケーション属性情報が共通するアプリケーションを特定し、これらに対応するウィンドウをそれぞれ優先的に前面に表示させる、というように、アクティブであるか否かによらない表示制御を行う態様であってもよい。
【００６７】
（８）変形例８
特定のアプリケーションのウィンドウについては、属性情報によらず常に決められた優先度を有するとしてもよい。これを実現するためには、例えば、このようなウィンドウを指定する情報を制御部があらかじめ記憶しており、かかるウィンドウが他のウィンドウと重なっている場合には、属性情報によらず決められた優先度に応じた表示が行われるようにすればよい。なお、この特定のアプリケーションのウィンドウを最前面に表示させたい場合であれば、優先度をあらかじめ最高とするように決めておけばよい。
このようにすれば、自装置の動作に係る極めて重要な通知などの、後面に表示されることにより弊害が生じるおそれがあるウィンドウが存在する場合に、当該ウィンドウの表示が他のウィンドウにより妨げられないようにすることが可能となる。
【００６８】
また、この変形例は、換言すれば、指定された特定のアプリケーションのウィンドウを優先度の決定対象から除外するものであるともいえる。このとき、制御部は、指定されたウィンドウを含む複数のウィンドウが重なっている場合に、指定されたウィンドウを除いたウィンドウについて表示の優先度を決定し、指定されたウィンドウについては、あらかじめ決められた優先度で表示し、その他のウィンドウについては、指定情報に基づいて決定された優先度で表示する。
なお、ウィンドウの指定は、ユーザが行えるようにしてもよい。
【００６９】
（９）変形例９
上述した実施形態は、本発明を携帯電話機に適用したものであるが、本発明は、その他の情報処理装置に適用することも可能である。本発明は、ＰＤＡ（Personal Digital Assistance）等の通信端末や、パーソナルコンピュータなど、ウィンドウを表示する種々の情報処理装置に適用することができる。
【００７０】
（１０）変形例１０
上述した実施形態においては、本発明をＯＳの一機能として説明したが、本発明は、独立したアプリケーションとしても実現可能である。また、例えば、いわゆるプラグインとして本発明の機能を既存のＯＳ等のアプリケーションに付加することもできる。このような構成とした場合、本発明は、コンピュータ（情報処理装置）に上述のような機能を実現させるためのプログラムとして提供することも可能である。かかるプログラムは、例えば、光ディスク等の記録媒体に記憶させた形態で提供したり、あるいは、所定のサーバ装置からインターネット等のネットワークを介して提供することも可能である。
【図面の簡単な説明】
【００７１】
【図１】本発明に係る情報処理装置の全体構成を示すブロック図である。
【図２】情報処理装置の論理的構成を示す図である。
【図３】情報処理装置が実行する動作を示すフローチャートである。
【図４】ウィンドウ表示を例示する図である。
【図５】情報処理装置が実行する動作を示すフローチャートである。
【図６】ウィンドウ表示を例示する図である。
【図７】属性情報の一例を示す図である。
【符号の説明】
【００７２】
１００…情報処理装置、１１…制御部、１１ａ…ＣＰＵ、１１ｂ…ＲＯＭ、１１ｃ…ＲＡＭ、１１ｄ…ＥＥＰＲＯＭ、１２…無線通信部、１３…操作部、１４…表示部
【図１】
2008299637.tif 000003
【図２】
2008299637.tif 000004
【図３】
2008299637.tif 000005
【図４】
2008299637.tif 000006
【図５】
2008299637.tif 000007
【図６】
2008299637.tif 000008
【図７】
2008299637.tif 000009