(57)【要約】【課題】複数のディスプレイを一つの仮想画面として使用する環境における操作性の向上を図る。【解決手段】情報処理装置は、第１の筐体と、前記第１の筐体に移動可能に取り付けられた第２の筐体と、前記第１の筐体上に配置され、仮想画面内の第１画面領域が割り当てられる第１のディスプレイと、前記第２の筐体上に配置され、前記仮想画面内の第２画面領域が割り当てられる第２のディスプレイと、移動制御手段とを含む。移動制御手段は、前記仮想画面上のフォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されている場合、前記フォーカスされた入力オブジェクトを前記第１のディスプレイと前記第２のディスプレイとの間の境界に重ならない位置に移動させる。【選択図】図７
2011248465.tif 000002
【特許請求の範囲】
【請求項１】
第１の筐体と、
前記第１の筐体に移動可能に取り付けられた第２の筐体と、
前記第１の筐体上に配置され、仮想画面内の第１画面領域が割り当てられる第１のディスプレイと、
前記第２の筐体上に配置され、前記仮想画面内の第２画面領域が割り当てられる第２のディスプレイと、
前記第１画面領域と前記第２画面領域との間の境界位置を示す画面境界位置情報に基づいて、前記仮想画面上のフォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されているか否かを判定し、前記フォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されている場合、前記フォーカスされた入力オブジェクトを前記第１のディスプレイと前記第２のディスプレイとの間の境界に重ならない位置に移動させる移動制御手段とを具備する情報処理装置。
【請求項２】
前記移動制御手段は、アクティブウィンドウ内の入力オブジェクトを前記フォーカスされた入力オブジェクトとして検出する請求項１記載の情報処理装置。
【請求項３】
前記第１のディスプレイおよび前記第２のディスプレイはそれぞれタッチスクリーンディスプレイである請求項１記載の情報処理装置。
【請求項４】
重力センサをさらに具備し、
前記移動制御手段は、前記重力センサによって前記情報処理装置の傾きが検出された場合、前記フォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されているか否かを判定し、前記フォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されている場合、前記フォーカスされた入力オブジェクトを前記情報処理装置の傾きの方向に向けて移動させる請求項１記載の情報処理装置。
【請求項５】
仮想画面内の第１および第２の画面領域がそれぞれ割り当てられる第１および第２の隔てられたディスプレイを含む情報処理装置のための表示制御方法であって、
前記第１画面領域と前記第２画面領域との間の境界位置を示す画面境界位置情報に基づいて、前記仮想画面上のフォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されているか否かを判定し、
前記フォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されている場合、前記フォーカスされた入力オブジェクトを前記第１のディスプレイと前記第２のディスプレイとの間の境界に重ならない位置に移動させる表示制御方法。
【請求項６】
さらに、アクティブウィンドウ内の入力オブジェクトを前記フォーカスされた入力オブジェクトとして検出する請求項５記載の表示制御方法。
【請求項７】
仮想画面内の第１および第２の画面領域がそれぞれ割り当てられる第１および第２の隔てられたディスプレイを含むコンピュータに入力オブジェクトの位置を移動させるためのプログラムであって、
前記第１画面領域と前記第２画面領域との間の境界位置を示す画面境界位置情報に基づいて、前記仮想画面上のフォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されているか否かを判定する手順と、
前記フォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されている場合、前記フォーカスされた入力オブジェクトを前記第１のディスプレイと前記第２のディスプレイとの間の境界に重ならない位置に移動させる手順とを前記コンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、複数のディスプレイを含む情報処理装置に関する。
【背景技術】
【０００２】
近年、パーソナルコンピュータ、ＰＤＡといった様々な情報処理装置が開発されている。情報処理装置の多くは、単一の物理画面上に、ドキュメント、イメージ等を表示する。例えば、物理画面上に表示されるドキュメント内の位置は、スクロール動作によって移動することができる。ユーザは、物理画面上のスクロールバーを、マウスを用いて操作すること、またはキーボードの矢印キーを押すことによって、スクロール動作を制御することができる。また、ドキュメントのスクロール時に、ドキュメント内の表示部品の物理画面上の位置を適切にするためにそのドキュメントの移動量を自動調整する表示制御技術も知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−２８０００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、従来の表示制御技術は、単一の物理画面を使用することを前提としており、複数のディスプレイ（複数の物理画面）を一つの仮想画面として使用する環境における操作性については考慮されていない。
【０００５】
本発明の目的は、複数のディスプレイを一つの仮想画面として使用する環境における操作性の向上を図ることができる情報処理装置および表示制御方法を提供することである。
【課題を解決するための手段】
【０００６】
実施形態によれば、情報処理装置は、第１の筐体と、前記第１の筐体に移動可能に取り付けられた第２の筐体と、前記第１の筐体上に配置され、仮想画面内の第１画面領域が割り当てられる第１のディスプレイと、前記第２の筐体上に配置され、前記仮想画面内の第２画面領域が割り当てられる第２のディスプレイと、移動制御手段とを具備する。前記移動制御手段は、前記第１画面領域と前記第２画面領域との間の境界位置を示す画面境界位置情報に基づいて、前記仮想画面上のフォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されているか否かを判定し、前記フォーカスされた入力オブジェクトが前記第１のディスプレイと前記第２のディスプレイに跨って表示されている場合、前記フォーカスされた入力オブジェクトを前記第１のディスプレイと前記第２のディスプレイとの間の境界に重ならない位置に移動させる。
【図面の簡単な説明】
【０００７】
【図１】実施形態に係る情報処理装置の外観を示す斜視図。
【図２】同実施形態の情報処理装置の使用形態の例を示す図。
【図３】同実施形態の情報処理装置の使用形態の他の例を示す図。
【図４】同実施形態の情報処理装置のシステム構成を示すブロック図。
【図５】同実施形態の情報処理装置における仮想画面と２つの物理画面との関係を示す図。
【図６】同実施形態の情報処理装置で用いられるウィンドウ制御プログラムの構成例を示すブロック図。
【図７】同実施形態の情報処理装置によって実行される入力オブジェクト移動処理の例を示す図。
【図８】同実施形態の情報処理装置によって実行される入力オブジェクト移動処理の別の例を示す図。
【図９】同実施形態の情報処理装置によって実行される入力オブジェクト移動処理の手順の例を示すフローチャート。
【発明を実施するための形態】
【０００８】
以下、図面を参照して、実施形態を説明する。  
まず、図１を参照して、一実施形態に係る情報処理装置の構成を説明する。この情報処理装置は、例えば、バッテリ駆動可能な携帯型パーソナルコンピュータ１０として実現されている。
【０００９】
図１は、コンピュータ１０のディスプレイユニットを開いた状態における斜視図である。本コンピュータ１０は、第１の筐体１１と、第２の筐体１２とを含む。第２の筐体１２は、連結部（ヒンジ）１４を介して第１の筐体１１に移動可能に取り付けられている。第２の筐体１２上には液晶表示装置（ＬＣＤ）１３から構成されるディスプレイが配置されている。同様に、第１の筐体１１上にも、液晶表示装置（ＬＣＤ）１５から構成されるディスプレイが配置されている。第１の筐体１１は、例えば、コンピュータ本体として機能するベースユニットであってもよい。第２の筐体１２は、ベースユニットに取り付けられた蓋部であってもよい。
【００１０】
ＬＣＤ１３は、例えば、タッチスクリーンディスプレイとして実現してもよい。タッチスクリーンディスプレイは、ペン又は指によってタッチされたＬＣＤ１３の画面上の位置（タッチ位置）を検知するように構成されている。タッチスクリーンディスプレイはタッチ検知可能ディスプレイとも称される。例えば、ＬＣＤ１３の上面には透明のタッチパネルを配置してもよい。ＬＣＤ１３と透明のタッチパネルとによって上述のタッチスクリーンディスプレイが実現される。ユーザは、ＬＣＤ１３の表示画面上に表示された各種入力オブジェクト（例えば、ボタン、フォルダやファイルを表すアイコン、入力フィールド、等）を指先やペンなどを用いて選択することができる。表示画面上のタッチ位置を示す座標データはタッチスクリーンディスプレイからコンピュータ１０内のＣＰＵに入力される。
【００１１】
第２の筐体１２の下端部は、第１の筐体１１の後端部にヒンジ部１４によって支持されている。第２の筐体１２は、第１の筐体１１に対して第１の筐体１１の上面が露出される開放位置と第１の筐体１１の上面が第２の筐体１２によって覆われる閉塞位置との間を回動自在に取り付けられている。また、第２の筐体１２の上面上の所定位置、例えば、ＬＣＤ１３の右側には、本コンピュータ１０をパワーオンまたはパワーオフするためのパワーボタン１６が設けられている。
【００１２】
第１の筐体１１上のＬＣＤ１５も、タッチスクリーンディスプレイ（すなわち、タッチ検知可能ディスプレイ）として実現してもよい。このタッチスクリーンディスプレイは、ペン又は指によってタッチされたＬＣＤ１５の画面上の位置（タッチ位置）を検知するように構成されている。例えば、ＬＣＤ１５の上面には透明のタッチパネルを配置してもよい。ＬＣＤ１５と透明のタッチパネルとによって上述のタッチスクリーンディスプレイが実現される。
【００１３】
第１の筐体１１上のＬＣＤ１５は、第２の筐体１２のＬＣＤ１３とは独立したディスプレイである。これらＬＣＤ１３，１５は仮想画面環境を実現するためのマルチディスプレイとして使用することができる。この場合、コンピュータ１０のオペレーティングシステムによって管理される一つの仮想画面がＬＣＤ１３，１５に割り当てられる。一つの仮想画面は、ＬＣＤ１３に表示される第１画面領域とＬＣＤ１５に表示される第２画面領域とを含む。仮想画面においては第１画面領域と第２画面領域は連続している。第１画面領域および第２画面領域はＬＣＤ１３，１５にそれぞれ割り当てられる。第１画面領域および第２画面領域の各々には、任意のアプリケーションウィンドウ、任意のオブジェクト等を表示することができる。
【００１４】
２つのＬＣＤ１３，１５間はヒンジ部１４によって物理的に隔てられている。換言すれば、２つのタッチスクリーンディスプレイ、つまり２つの物理画面、の表面は不連続であり、これら不連続の２つのタッチスクリーンディスプレイが一つの仮想画面を構成する。
【００１５】
本実施形態では、コンピュータ１０は、図２に示す横位置（ランドスケープモード）、図３に示す縦位置（ポートレートモード）のいずれの状態でも使用することができる。ランドスケープモードでは、一つの仮想画面内の２つのタッチスクリーンディスプレイは上下方向に並べられた状態で使用される。一方、ポートレートモードでは、一つの仮想画面内の２つのタッチスクリーンディスプレイは左右方向に並べられた状態で使用される。さらに、各タッチスクリーンディスプレイに表示される画面イメージの向きは、使用されるモード（ランドスケープモード、ポートレートモード）に応じて自動的に変更される。換言すれば、画面イメージの向きは、重力の向きに整合するように変更される。
【００１６】
図１に示すように、第１の筐体１１の上面上の所定位置、例えば、ＬＣＤ１５の両側には２つのボタンスイッチ１７，１８が設けられている。これらボタンスイッチ１７，１８の各々には任意の機能を割り当てることが出来る。例えば、ボタンスイッチ１７は、仮想キーボードをＬＣＤ１３またはＬＣＤ１５に表示するためのボタンスイッチ等として利用し得る。
【００１７】
なお、以上の説明では、コンピュータ１０が、互いに隔てられた不連続の２つのタッチスクリーンディスプレイを含む場合を想定したが、コンピュータ１０が互いに隔てられた不連続の３つまたは４つのタッチスクリーンディスプレイを含んでもよい。
【００１８】
次に、図４を参照して、本コンピュータ１０のシステム構成を説明する。ここでは、コンピュータ１０が２つのタッチスクリーンディスプレイを含む場合を想定する。  
本コンピュータ１０は、ＣＰＵ１１１、ノースブリッジ１１２、主メモリ１１３、グラフィクスコントローラ１１４、サウスブリッジ１１５、ＢＩＯＳ−ＲＯＭ１１６、ハードディスクドライブ（ＨＤＤ）１１７、エンベデッドコントローラ１１８、重力センサ１１９等を備えている。
【００１９】
ＣＰＵ１１１は、コンピュータ１０の動作を制御するために設けられたプロセッサであり、ＨＤＤ１１７から主メモリ１１３にロードされる、オペレーティングシステム（ＯＳ）および各種アプリケーションプログラム等を実行する。
【００２０】
アプリケーションプログラムには、ウィンドウ制御プログラム２０１が含まれている。このウィンドウ制御プログラム２０１は、フォーカスされた入力オブジェクトの位置を変更するための処理を実行する。入力オブジェクトは、入力用の表示オブジェクト、例えば、ボタン、入力フィールド、アイコン等を意味する。この技術分野では、入力オブジェクトは、入力コントロール、または入力コントロールオブジェクトと称されることもある。フォーカスされた入力オブジェクトとは、操作対象となるアクティブな入力オブジェクトを意味する。例えば、現在アクティブなウィンドウ内の入力オブジェクト（ボタン、入力フィールド、等）は、フォーカスされた入力オブジェクトであるとして扱ってもよい。なお、デスクトップ画面もウィンドウの一つである。アクティブウィンドウは最前面に位置するウィンドウである。
【００２１】
ウィンドウ制御プログラム２０１は、仮想画面上のフォーカスされた入力オブジェクトが第１画面領域と第２画面領域との間の境界に重なっているか否か、つまりフォーカスされた入力オブジェクトが２つのＬＣＤ１３，１５に跨って表示されているか否かを判定する。２つのＬＣＤ１３，１５は不連続であるので、もしフォーカスされた入力オブジェクトが２つのＬＣＤ１３，１５に跨って表示されているならば、入力オブジェクトが２つの部分に分割され、一方がＬＣＤ１３に表示され、他方がＬＣＤ１５に表示される。このような状況は、入力オブジェクトの視認性を低下させると共に、入力オブジェクトをタッチしにくくする。
【００２２】
ウィンドウ制御プログラム２０１は、フォーカスされた入力オブジェクトが２つのＬＣＤ１３，１５に跨って表示されていること、つまり第１画面領域と第２画面領域との間の境界に重なっていることを検出した場合、そのフォーカスされた入力オブジェクトを境界に重ならない位置に移動させる。このような入力オブジェクトの移動制御機能により、ソフトウェア開発者は、仮想画面が２つの物理画面に分割されていることを意識することなくソフトウェアを開発することができる。
【００２３】
ウィンドウ制御プログラム２０１は、上述の入力オブジェクト移動制御処理を実現するために、例えば、以下の機能を含んでいる。  
（１）入力オブジェクトがフォーカスされた時、この入力オブジェクトが２つの物理画面の境界に跨っているか否かをチェックする機能
（２）入力オブジェクトが２つの物理画面間の境界に跨っている場合、入力オブジェクトを例えば画面スクロールによって物理画面間の境界に重ならない位置に移動させる機能
（３）入力オブジェクトへの入力が完了した時、入力オブジェクトを元の位置に戻す機能
また、ＣＰＵ１１１は、ＢＩＯＳ−ＲＯＭ１１６に格納されたシステムＢＩＯＳ（Basic Input Output System）も実行する。システムＢＩＯＳはハードウェア制御のためのプログラムである。ノースブリッジ１１２はＣＰＵ１１１のローカルバスとサウスブリッジ１１５との間を接続するブリッジデバイスである。ノースブリッジ１１２には、主メモリ１１５をアクセス制御するメモリコントローラも内蔵されている。グラフィクスコントローラ１１４は、コンピュータ１０のディスプレイモニタとしてそれぞれ使用される２つのＬＣＤ１３，１５を制御する表示コントローラである。グラフィクスコントローラ１１４は、ノースブリッジ１１２を介してＣＰＵ１１１から受信される描画要求に基づいてビデオメモリ（ＶＲＡＭ）に表示データを描画するための表示処理（グラフィクス演算処理）を実行する。ビデオメモリには、ＬＣＤ１３に表示される画面イメージに対応する表示データを格納する記憶領域と、ＬＣＤ１５に表示される画面イメージに対応する表示データを格納する記憶領域とが割り当てられている。グラフィクスコントローラ１１４は、ＬＣＤ１３，１５上に表示される画面イメージの向きを変更する画面回転機能も有している。グラフィクスコントローラ１１４の画面回転機能は、例えば、ＯＳに含まれる表示ドライバ、または専用のユーティリティプログラムによって制御してもよい。
【００２４】
ＬＣＤ１３上には透明のタッチパネル１３Ａが配置されている。ＬＣＤ１３とタッチパネル１３Ａとによって第１のタッチスクリーンディスプレイが実現される。同様に、ＬＣＤ１５上にも透明のタッチパネル１５Ａが配置されている。ＬＣＤ１５とタッチパネル１５Ａとによって第２のタッチスクリーンディスプレイが実現される。タッチパネル１３Ａ，１５Ａの各々は、例えば、抵抗膜方式または静電容量方式等を用いて、タッチパネル（タッチスクリーンディスプレイ）上のタッチ位置を検出するように構成されている。また、タッチパネル１３Ａ，１５Ａの各々としては、複数のタッチ位置を同時に検知可能なマルチタッチパネルを使用してもよい。
【００２５】
サウスブリッジ１１５は、ＨＤＤ１２１を制御するためのＩＤＥ（Integrated Drive Electronics）コントローラやSerial ATAコントローラを内蔵している。エンベデッドコントローラ（ＥＣ）１１８は、ユーザによるパワーボタンスイッチ１６の操作に応じてコンピュータ１０をパワーオン／パワーオフする機能を有している。また、エンベデッドコントローラ（ＥＣ）１１８は、タッチパネル１３Ａ，１５Ａの各々を制御するタッチパネルコントローラ３０１を含んでいる。
【００２６】
重力センサは、重力の向きに対する本コンピュータ１０の傾きを検出する。上述の表示ドライバまたはユーティリティプログラムは、重力センサからの出力信号に基づいて、本コンピュータが横位置（ランドスケープモード）または縦位置（ポートレートモード）のいずれの状態であるかを判定し、その判定結果に応じて、ＬＣＤ１３，１５上に表示される画面イメージの向きを変更することができる。さらに、重力センサによってコンピュータ１０が傾けられたことが検出されたことをトリガに、フォーカスされた入力オブジェクトが２つの物理画面間の境界に跨っているか否かを判定してもよい。またさらに、重力センサによって検出されるコンピュータ１０の傾けられた方向は、入力オブジェクトの移動方向の決定のために使用することもできる。この場合、ウィンドウ制御プログラム２０１は、重力センサによってコンピュータ１０の傾きが検出された場合、フォーカスされた入力オブジェクトが２つの物理画面間の境界に跨っているか否かを判定する。フォーカスされた入力オブジェクトが２つの物理画面間の境界に跨っているならば、ウィンドウ制御プログラム２０１は、その入力オブジェクトを、コンピュータ１０が傾けられた方向に向けて、例えば、コンピュータ１０の２つの筐体１１，１２の内で、重力の向きに対してより下方側に位置する筐体に向けて、移動させる。２つの物理画面間の境界に重ならないように入力オブジェクトを移動させてもよいが、入力オブジェクトを、コンピュータ１０を傾けた方向に向けて所定量だけ移動させてもよい。ユーザは、コンピュータ１０を傾かせる操作を何度か行うことで、入力オブジェクトを希望の位置に移動させることができる。
【００２７】
次に、図５を参照して、仮想画面と２つの物理画面との関係について説明する。  
図５の右下は横位置モードにおける画面割り当てを示している。「画面Ａ」はＬＣＤ１３の物理画面を表し、「画面Ｂ」はＬＣＤ１５の物理画面を表している。「画面Ａ」、「画面Ｂ」それぞれの解像度（横方向画素数×縦方向画素数）は例えば８００×５１２である。横位置モードでは、仮想画面は縦長（例えば、８００×１０２４）に設定される。仮想画面内の上側画面領域はＬＣＤ１３の物理画面に割り当てられ、仮想画面内の下側画面領域はＬＣＤ１５の物理画面に割り当てられる。１００は、仮想画面内の２つの画面領域間の境界を表している。
【００２８】
図５の左下は縦位置モードにおける画面割り当てを示している。「画面Ａ」はＬＣＤ１３の物理画面を表し、「画面Ｂ」はＬＣＤ１５の物理画面を表している。「画面Ａ」、「画面Ｂ」それぞれの解像度は例えば５１２×８００である。縦位置モードでは、仮想画面は横長（例えば、１０２４×８００）に設定される。仮想画面内の左側画面領域はＬＣＤ１５の物理画面に割り当てられ、仮想画面内の右側画面領域はＬＣＤ１３の物理画面に割り当てられる。１００は、仮想画面内の２つの画面領域間の境界を表している。
【００２９】
このように、仮想画面内の画面領域間の境界位置は、縦位置モードと横位置モードとの間で異なる。ウィンドウ制御プログラム２０１は、現在の使用形態（縦位置モードまたは横位置モード）に関連づけられた画面境界位置情報に基づいて、フォーカスされた入力オブジェクトが２つのＬＣＤ１３，１５に跨って表示されているか否か、つまり２つの画面領域間の境界に重なっているか否かを判定する。
【００３０】
次に、図６を参照して、ウィンドウ制御プログラム２０１の構成について説明する。  
ウィンドウ制御プログラム２０１は、入力コントロールオブジェクト検出部２１１、重なり判定部２１２、および入力コントロールオブジェクト移動部２１３を含む。入力コントロールオブジェクト検出部２１１は、フォーカスされた入力オブジェクトを検出する。例えば、あるウィンドウがアクティブになった時、入力コントロールオブジェクト検出部２１１は、そのアクティブウィンドウ内の入力オブジェクトを、フォーカスされた入力オブジェクトとして検出する。重なり判定部２１２は、仮想画面上の２つの画面領域間の境界位置を示す画面境界位置情報に基づいて、フォーカスされた入力オブジェクトが２つのＬＣＤ１３，１５に跨って表示されているか否か、つまりフォーカスされた入力オブジェクトが２つの画面領域間の境界に重なっているか否かを判定する。この場合、重なり判定部２１２は、例えば、物理画面上のフォーカスされた入力オブジェクトの位置を示すオブジェクト位置情報と、上述の画面境界位置情報とから、フォーカスされた入力オブジェクトと画面境界との間の位置関係を調べ、フォーカスされた入力オブジェクトが２つのＬＣＤ１３，１５に跨って表示されているか否か、つまりフォーカスされた入力オブジェクトが２つの画面領域間の境界に重なっているか否かを判定する。なお、入力オブジェクトのサイズは入力オブジェクト毎に異なるかもいれない。したがって、重なり判定部２１２は、画面境界位置情報とオブジェクト位置情報のみならず、フォーカスされた入力オブジェクトのサイズを用いて、重なりの有無を判定してもよい。これにより、重なり判定部２１２は、フォーカスされた入力オブジェクトが２つの画面領域間の境界に重なっているか否かをより精度よく判定することができる。
【００３１】
重なり判定部２１２がフォーカスされた入力オブジェクトが２つの画面領域間の境界に重なっていると判定した場合、入力コントロールオブジェクト移動部２１３は、フォーカスされた入力オブジェクトを境界に重ならない位置に移動させる。コンピュータ１０の現在の使用形態が横位置モードであれば、入力コントロールオブジェクト移動部２１３は、入力オブジェクトを左方向または右方向のいずれかに向けて移動させる。より少ない移動量で入力オブジェクトが物理画面間の境界に重ならなくなるように、左方向または右方向の一方が移動方向として決定される。コンピュータ１０の現在の使用形態が縦位置モードであれば、入力コントロールオブジェクト移動部２１３は、入力オブジェクトを上方向または下方向のいずれかに向けて移動させる。より少ない移動量で入力オブジェクトが境界に重ならなくなるように、上方向または下方向の一方が移動方向として決定される。
【００３２】
入力オブジェクトの移動は、例えば、ウィンドウ内のスクロールまたは画面全体のスクロールによって実行してもよい。
【００３３】
図７は、入力オブジェクトの移動制御の例を示している。図７の上部は、フォーカスされた入力オブジェクト２００が２つの画面領域間の境界に重なっている状態、換言すれば、２つのＬＣＤ１３，１５に跨って表示されている状態を示している。この場合、図７の下部に示されるように、フォーカスされた入力オブジェクト２００は、ＬＣＤ１３，１５間の境界に重ならないように、例えば左方向（ここではＬＣＤ１５側）に向けて移動される。
【００３４】
図８は、入力オブジェクトの移動制御の他の例を示している。図８の左部は、アクティブウィンドウ３００内の入力フィールド３０１が２つの画面領域間の境界に重なっている状態、換言すれば、入力フィールド３０１が２つのＬＣＤ１３，１５に跨って表示されている状態を示している。この場合、もしウィンドウ３００のウィンドウ内スクロールが許可されているならば、ウィンドウ制御プログラム２０１は、図８の右上に示すように、ウィンドウ３００内の画面イメージを例えば右方向にスクロールする。
【００３５】
一方、もしウィンドウ３００のウィンドウ内スクロールが禁止されているならば、ウィンドウ制御プログラム２０１は、図８の右下に示すように、ウィンドウ３００全体を例えば右方向に移動する。この場合、ウィンドウ３００のみを右方向に移動させてもよいが、画面イメージ全体を右方向にスクロールしてもよい。
【００３６】
次に、図９を参照して、ウィンドウ制御プログラム２０１によって実行される入力オブジェクト移動処理の手順を説明する。
【００３７】
ウィンドウ制御プログラム２０１は、まず、アクティブウィンドウを検出する（ステップＳ１０１）。次いで、ドラッグ制御プログラム２０１は、アクティブウィンドウ内の入力オブジェクト（入力コントロールオブジェクト）のリストを生成する（ステップＳ１０２）。ドラッグ制御プログラム２０１は、アクティブウィンドウ内の入力オブジェクトの中に、仮想画面内の２つの画面領域間の境界、つまり２つの物理画面の境界、に重なっている入力オブジェクトが存在するか否かを判定する（ステップＳ１０３）。仮想画面内の２つの画面領域間の境界に重なっている入力オブジェクトが存在するならば（ステップＳ１０３のＹＥＳ）、ウィンドウ制御プログラム２０１は、アクティブウィンドウがウィンドウ内スクロールが許可されたスクロール可能ウィンドウであるか否かを判定する（ステップＳ１０４）。
【００３８】
アクティブウィンドウがスクロール可能ウィンドウであるならば（ステップＳ１０４のＹＥＳ）、ウィンドウ制御プログラム２０１は、ウィンドウ内スクロールによって、２つの画面領域間の境界に重なっている入力オブジェクトを、その境界に重ならない位置に移動させる（ステップＳ１０５）。
【００３９】
アクティブウィンドウがスクロール可能ウィンドウでないならば（ステップＳ１０４のＮＯ）、ウィンドウ制御プログラム２０１は、ウィンドウの位置を移動（ウィンドウスクロール）することによって、２つの画面領域間の境界に重なっている入力オブジェクトを、その境界に重ならない位置に移動させる（ステップＳ１０６）。
【００４０】
なお、以上の説明では、ウィンドウ制御プログラム２０１が、仮想画面内の２つのディスプレイに跨って表示されているフォーカスされた入力オブジェクトを自動的に検出し、その入力オブジェクトを２つのディスプレイ間の境界に重ならない位置に移動させる例を説明したが、ユーザによって本コンピュータ１０が傾けられたことをトリガに、入力オブジェクトを移動させる処理を開始するようにしてもよい。この場合、重力センサ１１９によって本コンピュータ１０が傾けられたことが検出された時に、ウィンドウ制御プログラム２０１は図９の処理を開始する。そして、ウィンドウ制御プログラム２０１は、２つの画面領域間の境界に重なっているフォーカスされた入力オブジェクトを、本コンピュータ１０の傾きに対応する方向に移動させる。例えば、横位置モードにおいて、重力の向きに対してＬＣＤ１３の位置がＬＣＤ１５よりも下方側に位置するように本コンピュータ１０がユーザによって傾けられた場合には、ウィンドウ制御プログラム２０１は、２つの画面領域間の境界に重なっているフォーカスされた入力オブジェクトを、ＬＣＤ１３側に向けて移動させる。一方、横位置モードにおいて、重力の向きに対してＬＣＤ１５の位置がＬＣＤ１３よりも下方側に位置するように本コンピュータ１０がユーザによって傾けられた場合には、ウィンドウ制御プログラム２０１は、２つの画面領域間の境界に重なっているフォーカスされた入力オブジェクトを、ＬＣＤ１５側に向けて移動させる。
【００４１】
以上説明したように、本実施形態によれば、２つの画面領域間の境界位置を示す画面境界位置情報に基づいて、フォーカスされた入力オブジェクトの位置が２つのディスプレイに跨って表示されているか否かが判定され、その判定結果に応じて、フォーカスされた入力オブジェクトの位置が移動される。
【００４２】
よって、ヒンジ等によって隔てられた２つのディスプレイを一つの仮想画面として使用する環境における操作性の向上を図ることができる。もし、フォーカスされた入力オブジェクトが隔てられた２つのタッチスクリーンディスプレイに跨って表示されると、その入力オブジェクトに対するタッチ操作の操作性が著しく低下される。本実施形態の入力オブジェクト移動処理は、このようなタッチ操作の操作性の低下を防止することができる。
【００４３】
なお、本実施形態のコンピュータ１０は第１の筐体１１と第２の筐体１２とを有しているが、コンピュータ１０のシステムを構成するコンポーネントのほとんど全てを必ずしも第１の筐体１１内に設ける必要はなく、例えば、コンポーネントの一部またはほとんど全てを第２の筐体１２内に設けても良い。この意味で、第１の筐体１１と第２の筐体１２はほぼ対等の関係のユニット同士であってもよいと云える。
【００４４】
また、本実施形態では、２つのディスプレイがそれぞれタッチスクリーンディスプレイである場合を例示したが、２つのディスプレイは必ずしもタッチスクリーンディスプレイである必要はない。
【００４５】
また、本実施形態の入力オブジェクト移動処理はコンピュータプログラムによって実現されているので、このコンピュータプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じて、このコンピュータプログラムを複数のディスプレイを有するコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に得ることが出来る。
【００４６】
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
【符号の説明】
【００４７】
１０…コンピュータ、１１…第１の筐体、１２…第２の筐体、１３，１５…ＬＣＤ、１３Ａ，１５Ａ…タッチパネル、１１１…ＣＰＵ、２０１…ウィンドウ制御プログラム、２１１…入力コントロールオブジェクト検出部、２１２…重なり判定部、２１３…入力コントロールオブジェクト移動部。
【図１】
2011248465.tif 000003
【図２】
2011248465.tif 000004
【図３】
2011248465.tif 000005
【図４】
2011248465.tif 000006
【図５】
2011248465.tif 000007
【図６】
2011248465.tif 000008
【図７】
2011248465.tif 000009
【図８】
2011248465.tif 000010
【図９】
2011248465.tif 000011