[1.実施形態]
以下に、本発明の一実施形態にかかる端末装置1を説明する。端末装置1は、自機が表示可能な視覚コンテンツのうちまだ表示されていない部分に関し、ユーザがその存在に気付いていない可能性を示す所定の条件が満たされた場合、その非表示の視覚コンテンツの存在を通知する案内機能を備えている。
[1.1.構成]
以下に、端末装置1の構成を説明する。本実施形態において、端末装置1はタッチパネルを内蔵した一般的なコンピュータに、本実施形態にかかるプログラムに従った処理を実行させることにより実現される。従って、端末装置1のハードウェア構成はタッチパネルを内蔵した一般的なコンピュータの構成である。
すなわち、端末装置1はハードウェア構成として、図1に示すように、各種データを記憶するメモリ101と、メモリ101に記憶されたプログラムに従うデータ処理を行うことにより端末装置1の他の構成部を制御するCPU102と、CPU102の制御下で画像を表示するディスプレイ103と、ユーザの指等のポインタの接触を検出し当該検出の位置を示す信号を生成するタッチパネル104と、他の装置との間で各種データの送受信を行うインタフェースである通信IF105とを備えている。また、これらの構成部はバス109を介して互いに接続されている。なお、ディスプレイ103とタッチパネル104はタッチディスプレイを構成するように積層配置されている。
図2は、端末装置1の機能構成を示した図である。すなわち、図1に示したハードウェア構成を備えるコンピュータは、CPU102がメモリ101に記憶されている本実施形態にかかるプログラムに従った処理を実行することにより、図2に示した機能構成部を備える装置として機能する。
端末装置1は、その機能構成部として、ユーザの操作に応じて各種データ処理を行うことでユーザに対し各種機能を提供するデータ処理装置11と、データ処理装置11の制御下で視覚コンテンツの表示を行う表示装置12と、ユーザの操作に応じた信号である操作信号を生成しデータ処理装置11に出力する操作装置13とを備える。なお、データ処理装置11は、主としてメモリ101、CPU102および通信IF105により実現される。また、表示装置12は主としてディスプレイ103により、操作装置13は主としてタッチパネル104により実現される。
データ処理装置11は、その機能構成部として、視覚コンテンツを表すコンテンツデータを取得するコンテンツデータ取得手段111と、表示装置12を制御してコンテンツデータが表す視覚コンテンツの少なくとも一部を表示装置12に表示させる表示制御手段112と、表示装置12により視覚コンテンツの表示が行われている際に操作装置13に対しユーザにより操作が行われた場合に当該操作を示す操作信号を操作装置13から取得する操作信号取得手段113とを備えている。
なお、コンテンツデータ取得手段111は、例えばメモリ101に記憶されているコンテンツデータを読み出したり、通信IF105を介して外部の装置からコンテンツデータを受信したりすることで、コンテンツデータを取得する。また、表示制御手段112は、例えば、コンテンツデータが表す視覚コンテンツのうち表示装置12に表示させる領域をディスプレイ103の画面サイズを基にして決定し、決定した領域に対応する画像データ(ラスターデータ)を生成し、生成した画像データを表示装置12に出力する処理を所定の時間間隔で繰り返すことにより、表示装置12の表示を制御する。
[1.2.動作]
続いて、端末装置1の動作を説明する。図3は、ユーザの操作装置13に対する操作に応じて、データ処理装置11の表示制御手段112の制御下で、表示装置12により案内が表示される様子の一例を示した図である。表示装置12により表示される案内は、現在表示装置に表示されている視覚コンテンツの他にも表示可能な視覚コンテンツがあることをユーザに通知する案内である。通知対象となる表示されていない視覚コンテンツはユーザによりその存在が気付かれにくいと思われる非表示の視覚コンテンツであり、具体的には、表示されている視覚コンテンツの右側または左側に隣接している部分や、異なるページの同じ位置にある部分など、表示されている視覚コンテンツと所定の位置関係を満たす視覚コンテンツが通知対象の視覚コンテンツとして特定される。なお、この所定の位置関係は、視覚コンテンツの内容や画面の構成等に基づき適宜決定される。
図3の例では、視覚コンテンツの一部が表示され始めた後、表示されている視覚コンテンツの右側に隣接して位置する非表示の視覚コンテンツを表示させるための操作である左方向のスワイプ(指等のポインタをタッチパネル104に接触させた後に接触位置をスライドさせる操作)がユーザにより1度も行われることなく所定時間が経過した場合(図3(a))に、現在表示されている視覚コンテンツの右側にも閲覧可能な視覚コンテンツがある旨の案内が表示される(図3(b))。その後、例えばユーザが左方向のスワイプを行い、案内対象の非表示の視覚コンテンツの表示が行われると、案内の表示が終了する(図3(c))。図4Aおよび図4B(以下、これらの図を総称して図4という)は、図3に例示の案内機能の提供のために端末装置1が行う処理フローを例示した図である。以下に図4を参照しつつ、端末装置1の動作を説明する。なお、図4に示す処理フローは、端末装置1が行う処理のうち、表示領域の右側に隣接する非表示の視覚コンテンツに関する案内を行う際の処理を抜き出して示したフローである。端末装置1は、表示領域の右側のみでなく、例えば左側、上側、下側、他のページの同じ位置など、表示されている視覚コンテンツに対する様々な位置関係の非表示の視覚コンテンツを通知対象とすることができる。従って、端末装置1は、実際にはそれらの様々な位置関係の各々に関し、図4に示すような処理を平行して行う。
まず、コンテンツデータ取得手段111は、例えばユーザによる操作装置13に対する操作に応じて、視覚コンテンツを表すコンテンツデータを、例えばメモリ101から読み出す、もしくは通信IF105を介して外部のサーバ装置等から受信することにより取得する処理を開始する(ステップS001)。
なお、コンテンツデータとしては、例えばOSやアプリケーションプログラムのメニュー画面等を表すデータのようにそれらのプログラムに内包された形で保持されているデータと、アプリケーションプログラムに従い読み込まれて使用されるデータがあり、端末装置1は通常、それらの異なる種別のコンテンツデータを同時に用いて1つの画面(視覚コンテンツ)を表示する。従って、本願におけるコンテンツデータは、プログラムに内包されるデータであるか、プログラムが外部から読み込むデータであるかの区別なく、表示される画面を表すデータの集まりをいう。また、コンテンツデータの形式としては、画像データ、HTML等の記述言語で書かれたテキストデータおよび当該テキストデータにより参照される画像データ等のデータ群で構成されるページ表示を指示するデータ等、データ処理装置11により表示用の画像データに変換可能であり、表示装置12により表示されるべき視覚コンテンツを表すデータであれば、どのような形式のデータであってもよい。
また、コンテンツデータは、例えば表示画面において複数の領域に分割されて表示される複数の視覚コンテンツを各々表す複数のコンテンツデータの集まりであってもよい。また、コンテンツデータは、例えば複数のページを含むWebサイトを表す場合のように、順次切り替えて表示される互いに関連付けられた複数の視覚コンテンツを各々表す複数のコンテンツデータの集まりであってもよい。この場合、ステップS001においてコンテンツデータ取得手段111は1度にこれら複数のコンテンツデータの全てを取得する必要はなく、例えばユーザの操作に応じたページの切り替え時に切り替え後のページの視覚コンテンツを表すコンテンツデータを取得する、という具合に、複数回に分けて必要なコンテンツデータが取得されてもよい。その場合、通常、ステップS001において開始されたコンテンツデータの取得の処理は、ステップS002以降の処理が行われる間、必要に応じて継続的に、もしくは断続的に、平行して行われることになる。
なお、一連の視覚コンテンツのどの範囲を表すコンテンツデータをステップS001において取得されるコンテンツデータとするかは任意に決定される。例えば、端末装置1の起動から終了までに端末装置1が表示する視覚コンテンツを表すコンテンツデータをステップS001において取得されるコンテンツデータとしてもよいし、1つのアプリケーションプログラムの起動から終了までに端末装置1が表示する視覚コンテンツを表すコンテンツデータをステップS001において取得されるコンテンツデータとしてもよいし、例えば、同じWebサイトに含まれる複数のWebページのように、1つのアプリケーションプログラム(Webブラウザ等)に従い端末装置1が表示する視覚コンテンツの一纏まりを表すコンテンツデータをステップS001において取得されるコンテンツデータとしてもよい。
続いて、表示制御手段112は、コンテンツデータ取得手段111により取得されたコンテンツデータに従い、視覚コンテンツの一部を表示装置12に表示させる。具体的には、例えば表示領域の視覚コンテンツを示すラスターデータを生成し、表示装置12に出力する。その結果、表示装置12により視覚コンテンツの一部の表示が行われる(ステップS002)。以下の説明においては例として、表示装置12が表示する視覚コンテンツは2次元の視覚コンテンツであり、ステップS002において新たな視覚コンテンツが表示される際、表示装置12には視覚コンテンツ全体の左上に位置する一部領域のみが表示され、その右や下に位置する領域は表示されないものとする。
続いて、表示制御手段112はタイマtの値を「0」で初期化する(ステップS003)。タイマtはステップS002において視覚コンテンツの表示が開始されたタイミング、左スクロールが最後に開始されたタイミング、もしくは右側の非表示領域に表示可能な視覚コンテンツがある旨の案内の表示が最後に開始されたタイミングからの経過時間を示す値を格納する変数である。なお、タイマtは時間の経過に伴い継続的に更新される。
視覚コンテンツの表示が開始された後、ユーザは操作装置13に対し、様々な操作を行うことができる。ユーザが操作を開始すると、操作装置13はその操作を示す操作信号を順次生成し、データ処理装置11の表示制御手段112へと引き渡す処理(操作信号の入力)を開始する(ステップS011)。表示制御手段112は、操作装置13から順次引き渡される一連の操作信号に基づき、ユーザにより行われている操作が左スクロールを指示する左方向のスワイプか、それ以外の操作か、を判定する(ステップS012)。
ユーザにより行われている操作が左方向のスワイプであると判定した場合(ステップS012:「Yes」)、表示制御手段112はタイマtの値を「0」で初期化する。この初期化により、左方向のスワイプ(右側の非表示領域の視覚コンテンツを表示させるための操作)が行われると、その後、所定の閾値として定められた時間Tが経過するまでは、案内の表示(後述のステップS023)が行われなくなる。続いて、表示制御手段112は左方向のスワイプに応じて表示装置12に表示される視覚コンテンツの領域が左方向にスライド移動するように表示装置12を制御する。表示装置12は表示制御手段112の制御に従い、視覚コンテンツの左方向のスクロール表示を行う(ステップS014)。ステップS014における左方向のスクロール表示は、左方向のスワイプを示す一連の操作信号の入力が終了するまでの間(ステップS015:「No」)、継続して行われる。
その後、左方向のスワイプを示す一連の操作信号の入力が終了すると(ステップS015:「Yes」)、表示制御手段112はその時点で表示されている視覚コンテンツの一部領域の表示を継続するように表示装置12を制御する。表示装置12は表示制御手段112の制御に従い、視覚コンテンツの左方向のスクロール表示を終了し、その時点で表示している視覚コンテンツの一部領域の表示を継続しつつ(ステップS016)、新たな操作信号の入力が開始されるまで待機する。
ステップS012の判定において、ユーザにより行われている操作が左方向のスワイプ以外の操作であると判定した場合(ステップS012:「No」)、表示制御手段112は操作信号が示す操作に応じた所定の処理を行う(ステップS017)。例えば、ユーザにより行われている操作が上方向のスワイプである場合、表示制御手段112は表示装置12に表示される視覚コンテンツの領域が上方向にスライド移動するように表示装置12を制御し、表示装置12により上方向のスクロール表示が行われることになる。左方向のスワイプ以外の操作(例えば、上方向のスワイプ)を示す一連の操作信号の入力が終了すると(ステップS018:「Yes」)、その時点で表示されている視覚コンテンツの一部領域の表示が継続される(ステップS019)。
ステップS003においてタイマtの初期化を行った後、表示制御手段112は上記のように、ユーザにより操作が行われた場合は、その操作に応じた処理(ステップS011〜S019)を行う。それらの処理と平行して、表示制御手段112は、タイマtは閾値として定められる時間T以上であるか否かの判定を、所定時間間隔で繰り返す(ステップS020)。
なお、ステップS020における判定の条件は、視覚コンテンツの表示が開始された後、左スクロールが行われることなく時間Tが経過すると満たされる条件である。この条件が満たされた場合、ユーザは表示されている視覚コンテンツの右側に非表示の視覚コンテンツがあったとしてもそれに気付いていない可能性があると推測される。
従って、ステップS020における判定において、タイマtは閾値T以上であると判定した場合(ステップS020:「Yes」)、表示制御手段112は、現在の表示領域の右側に隣接する非表示領域に、表示可能な視覚コンテンツがあるか否かを判定する(ステップS021)。現在の表示領域の右側に隣接する非表示領域に表示可能な視覚コンテンツがない場合(ステップS021:「No」)、表示制御手段112はステップS020に処理を戻す。その結果、例えば左スクロールは行われることなく、縦スクロール等により表示領域が変更され、表示領域の右側に隣接する非表示領域に表示可能な視覚コンテンツが生じると、ステップS020およびS021の判定が共に「Yes」となり、次に説明する案内の表示が速やかに開始されることになる(ステップS023)。
ステップS021の判定において、現在の表示領域の右側に隣接する非表示領域に表示可能な視覚コンテンツがあると判定された場合(ステップS021:「Yes」)、表示制御手段112はまず、タイマtを「0」で初期化する(ステップS022)。この初期化により、案内の表示が行われると、その後、時間Tが経過するまでは再び案内の表示が行われなくなる。
続いて、表示制御手段112は、例えば「右側にも情報があります。」のような、現在表示されている視覚コンテンツの右側に閲覧可能な視覚コンテンツがあることを通知する案内の表示を開始するように表示装置12を制御する。表示装置12は表示制御手段112の制御に従い、案内の表示を開始する(ステップS023)(図3(b))。
表示制御手段112は、ステップS023において表示装置12に案内の表示を開始させた後、タイマtsを時間「0」で初期化する(ステップS024)。タイマtsは、ステップS023における案内の表示が開始されたタイミングからの経過時間を示す値を格納する変数である。タイマtsは時間の経過に伴い常時更新される。その後、表示制御手段112は所定時間間隔で、タイマtsにより示される経過時間が、予め定められた閾値である時間τに達したか否かの判定を所定時間間隔で繰り返す(ステップS025)。表示装置12に案内の表示を開始させた後、時間τが経過すると、ステップS025:「Yes」)、表示制御手段112は案内の表示を終了するように表示装置12を制御する。表示装置12は表示制御手段112の制御に従い、案内の表示を終了する(ステップS026)。その後、端末装置1は次の新たな操作信号の入力が開始されるまで、視覚コンテンツの表示を維持しつつ待機する。
ステップS023において表示制御手段112が表示装置12に案内の表示を開始させた後、時間τが経過する前に、ユーザにより操作装置13に対する新たな操作が開始される場合がある。ユーザにより操作が開始されると、操作装置13はその操作を示す操作信号を順次生成し、表示制御手段112へと引き渡す処理(操作信号の入力)を開始する(ステップS027)。表示制御手段112は、操作装置13から順次引き渡される一連の操作信号に基づき、ユーザにより行われている操作が、左方向のスワイプ(左スクロールを指示する操作)、案内の表示内に配置された「閉じる」ボタンに対するタップ(指等のポインタを短時間接触させた後、離す操作)、その他の操作、のいずれであるかを判定する(ステップS028)。
ステップS028の判定において、ユーザにより行われている操作が左スクロールを指示する左方向のスワイプであると判定された場合(ステップS028:「1」)、表示制御手段112は案内の表示を終了するように表示装置12を制御する(図3(c))。表示装置12は表示制御手段112の制御に従い、案内の表示を終了する(ステップS029)。その後、端末装置1はステップS013に処理を移し、タイマtを「0」で初期化した後(ステップS013)、ユーザの操作に応じて左スクロール表示を行う(ステップS014)。
ステップS028の判定において、ユーザにより行われている操作が「閉じる」ボタンに対するタップであると判定された場合(ステップS028:「2」)、表示制御手段112は案内の表示を終了するように表示装置12を制御する。表示装置12は表示制御手段112の制御に従い案内の表示を終了し(ステップS028)、その後、次の新たな操作信号の入力が開始されるまで待機する。
ステップS028の判定において、ユーザにより行われている操作が左方向のスワイプとも「閉じる」ボタンに対するタップとも異なる操作(その他の操作)であると判定された場合(ステップS028:「3」)、端末装置1はステップS017に処理を移し、ユーザの操作に応じた処理(例えば、下スクロール表示等)を行う。
以上のように、端末装置1によれば、視覚コンテンツの表示が開始された後、ユーザにより表示されている視覚コンテンツの右側の非表示部分を表示させるための操作(左方向のスワイプ)が行われることなく閾値の時間Tが経過すると、右側に非表示部分がある旨の通知が行われる。
ユーザにより左方向のスワイプが行われることなく長時間が経過した場合、ユーザが、現在表示されている視覚コンテンツの右側に表示可能な部分があることに単に気付いていない可能性がある。端末装置1によれば、そのような場合、自動的に右側に表示可能な部分がある旨の通知が行われるため、非表示部分の存在に単に気付いていないために端末装置1の利便性が低下する、という不都合が回避される。
[2.変形例]
上述した実施形態は本発明の一実施形態であり、様々に変形可能である。以下にそれらの変形例を示す。
[2.1.第1変形例]
上述した実施形態において、右側に非表示部分がある旨の案内は、非表示部分を表示させるための操作が行われることなく、所定の時間が経過したときに表示される。
本変形例では、案内の表示の条件が上述した実施形態における場合と異なっている。具体的には、視覚コンテンツの表示が開始された後、左方向のスワイプが行われることなく、縦方向のスワイプ(上方向のスワイプおよび下方向のスワイプ)が所定の回数行われたときに案内が表示される。
図5は、本変形例において端末装置1の表示装置12に案内が表示される様子を示した図である。ユーザにより左方向のスワイプが行われることなくN回の縦方向のスワイプが行われると(図5(a))、端末装置1は右側に非表示の視覚コンテンツがある旨の案内の表示を開始し(図5(b))、例えばユーザが左方向のスワイプを行うと案内の表示を終了する(図5(c))。
図6Aおよび図6B(以下、これらの図を総称して図6という)は、本変形例において端末装置1が行う処理フローを示した図である。本変形例において端末装置1が行う処理の一部は上述した実施形態において端末装置1が行う処理と同じであるため、図6においては、本変形例において行われる処理のうち上述した実施形態において行われる処理と同じステップには同じ符号を付している(後続の他の変形例に関しても同様)。また、以下の説明においては、処理フローのうち、本変形例が上述した実施形態と異なる部分を中心に説明する。
本変形例においては、上述した実施形態において用いられたタイマtに代えて、左方向のスワイプが行われることなく連続して縦方向のスワイプが行われた回数をカウントするためのカウンタiが用いられる。ステップS002において視覚コンテンツの表示が開始されると、表示制御手段112はカウンタiの値を「0」で初期化する(ステップS101)。
その後、ユーザが操作装置13に対し何らかの操作を開始すると(ステップS011)、表示制御手段112は、操作装置13から順次引き渡される一連の操作信号に基づき、ユーザにより行われている操作がいずれの操作であるかを判定する(ステップS102)。ただし、以下の説明においては、ユーザが行う操作のうち、本変形例の動作の特徴に関与する縦方向のスワイプ(縦スクロールを指示する操作)および左方向のスワイプ(左スクロールを指示する操作)のみに注目し、その他の操作が行われた際の端末装置1の動作についてはその説明を省略する。
ユーザにより行われている操作が縦スクロールを指示する縦方向のスワイプであると判定した場合(ステップS102:「1」)、表示制御手段112はその操作に応じて表示装置12に視覚コンテンツの縦スクロール表示を行わせる(ステップS111)。縦方向のスワイプを示す一連の操作信号の入力が終了すると(ステップS112:「Yes」)、表示制御手段112は表示装置12に、その時点で表示されている視覚コンテンツの表示を継続させつつ(ステップS113)、待機する。その後、新たな操作信号の入力が開始されると、端末装置1はステップS011以降の処理を繰り返す。
また、ステップS102の判定において、ユーザにより行われている操作が縦方向のスワイプであると判定した場合(ステップS102:「1」)、表示制御手段112はステップS111〜S113の処理と平行して、カウンタiの値を1だけ増加させる(ステップS114)。
続いて、表示制御手段112はカウンタiの値が予め閾値として定められた回数N以上であるか否かを判定する(ステップS115)。ステップS115の判定において、カウンタiの値がNに達していないと判定した場合(ステップS115:「No」)、端末装置1は次の新たな操作信号の入力が開始されるまで、視覚コンテンツの表示を維持しつつ(ステップS113)、待機する。その後、新たな操作信号の入力が開始されると、端末装置1はステップS011以降の処理を繰り返す。
ユーザにより、左方向のスワイプが行われることなく連続して縦方向のスワイプがN回行われた場合、ステップS011、S102、S114、S115がN回繰り返され、N回目のステップS115の判定において、カウンタiの値がNに達していると判定される(ステップS115:「Yes」)。その場合、表示制御手段112は、現在の表示領域の右側に隣接する非表示領域に、表示可能な視覚コンテンツがあるか否かを判定する(ステップS021)。現在の表示領域の右側に隣接する非表示領域に表示可能な視覚コンテンツがない場合(ステップS021:「No」)、表示制御手段112は新たな操作信号の入力が開始されるまで待機する。従って、その後、左スクロールが行われることなく縦スクロールが行われ、表示領域の右側に隣接する非表示領域に表示可能な視覚コンテンツが生じると、ステップS115およびS021の判定が共に「Yes」となり、案内の表示が速やかに開始されることになる(ステップS023)。
ステップS021の判定において、現在の表示領域の右側に隣接する非表示領域に表示可能な視覚コンテンツがあると判定された場合(ステップS021:「Yes」)、表示制御手段112はまず、カウンタiを「0」で初期化する(ステップS120)。続いて、表示制御手段112は表示装置12に、右側に表示可能な視覚コンテンツがある旨の案内の表示を開始させる(ステップS023)。なお、ステップS120の処理により、その後、再び左方向のスワイプが行われることなく縦方向のスワイプがN回繰り返されるまでの間は、案内の表示が再度行われることはない。
上述した実施形態と同様に、案内の表示が開始された後、時間τが経過すると、端末装置1は案内の表示を終了する(ステップS024〜S026)。案内の表示が開始された後、時間τが経過する前にユーザにより操作が行われた場合(ステップS027)、表示制御手段112は操作装置13から引き渡される操作信号に基づき、ユーザにより行われている操作が、新たな縦方向のスワイプ、左方向のスワイプ、「閉じる」ボタンに対するタップのいずれであるかを判定する(ステップS121)。
ステップS121の判定において、ユーザにより行われている操作が縦スクロールを指示する縦方向のスワイプであると判定された場合(ステップS121:「1」)、端末装置1はステップS111以降およびS114以降の処理を行う。これにより、新たに開始された縦方向のスワイプに応じた縦スクロール表示が行われるとともに、その操作がカウンタiによりカウントされる。
ステップS121の判定において、ユーザにより行われている操作が左スクロールを指示する左方向のスワイプであると判定された場合(ステップS121:「2」)、端末装置1は案内の表示を終了する(ステップS029)。その後、端末装置1は後述のステップS103およびステップS014〜S016の処理、すなわち、左スクロール表示とカウンタiの初期化の処理を行う。
ステップS121の判定において、ユーザにより行われている操作が「閉じる」ボタンに対するタップであると判定された場合(ステップS121:「3」)、端末装置1は案内の表示を終了する(ステップS030)。その後、端末装置1は次の新たな操作信号の入力が開始(ステップS011)されるまで、視覚コンテンツの表示を維持しつつ待機する。
ステップS102の判定において、ユーザにより行われている操作が左スクロールを指示する左方向のスワイプであると判定した場合(ステップS102:「2」)、表示制御手段112はまず、カウンタiを「0」で初期化する(ステップS103)。この初期化により、左スクロールが行われると、再び左スクロールが行われることなく連続して縦スクロールがN回繰り返されるまでは再度、案内の表示(ステップS023)が行われることはない。
続いて、表示制御手段112は、左方向のスワイプに応じて表示装置12に視覚コンテンツの左スクロール表示を行わせる(ステップS014)。左方向のスワイプを示す一連の操作信号の入力が終了すると(ステップS015:「Yes」)、表示制御手段112は表示装置12に、その時点で表示されている視覚コンテンツの表示を継続させつつ(ステップS016)、待機する。その後、新たな操作信号の入力が開始されると、端末装置1はステップS011以降の処理を繰り返す。
以上のように、本変形例の端末装置1によれば、視覚コンテンツの表示が開始された後、ユーザにより表示されている視覚コンテンツの右側の非表示部分を表示させるための操作(左方向のスワイプ)が行われることなく、当該操作と関連のある特定の種類の操作(縦方向のスワイプ)が所定回数、繰り返し行われると、右側に表示可能な視覚コンテンツがある旨の通知が行われる。
ユーザにより左方向のスワイプが行われることなく縦方向のスワイプが繰り返し行われた場合、ユーザが、現在表示されている視覚コンテンツの右側に非表示部分があることに単に気付いていない可能性がある。本変形例の端末装置1によれば、そのような場合、自動的に右側に非表示部分がある旨の通知が行われるため、非表示部分の存在に単に気付いていないために端末装置1の利便性が低下する、という不都合が回避される。
[2.2.第2変形例]
上述した第1変形例において、右側に非表示部分がある旨の案内の表示は、表示のトリガとなるN回目の縦方向のスワイプの終了後も維持され、所定の時間τが経過した時、左方向のスワイプが開始された時、もしくは「閉じる」ボタンに対するタップ操作が行われた時に終了する構成が採用されている。
本変形例では、案内の表示の期間が上述した実施形態における場合と異なっている。具体的には、案内の表示は、トリガとなるN回目の縦方向のスワイプが行われている間、継続され、当該操作の終了(スワイプを行っていた指等のポインタがタッチパネル104から離された時)に伴い、案内の表示も終了する構成が採用される。
図7は、本変形例において端末装置1の表示装置12に案内が表示される様子を示した図である。図7に示されるように、例えばユーザにより連続したN回の縦方向のスワイプが行われる場合、N回目の縦方向のスワイプが開始されると(図7(a))、右側に非表示部分がある旨の案内の表示が開始され(図7(b))、ユーザがスワイプを終了すると同時に、案内の表示が終了する(図7(c))。
本変形例における端末装置1は、上述した第1変形例において端末装置1が行う処理のうち図6Aに示した部分に関しては同じ処理を行い、図6Bに示した部分に関しては一部異なる処理を行う。図8は、本変形例の端末装置1が、第1変形例の端末装置1が行う図6Bの処理に代えて行う処理のフローを示した図である。従って、本変形例の端末装置1は、図6Aおよび図8に示される処理フローに従い処理を行う。以下に、本変形例の端末装置1が行う処理のうち、第1変形例の端末装置1が行う処理と異なる処理を中心に説明する。後述する他の変形例に関しても同様である。
本変形例において、ユーザによるN回目の縦方向のスワイプの開始に伴い、端末装置1は右側に非表示部分がある旨の案内の表示を開始し(ステップS023)、当該スワイプを示す一連の操作信号の入力が終了するまでの間(ステップS201:「No」)、案内の表示を継続する。その後、当該スワイプを示す一連の操作信号の入力が終了すると(ステップS201:「Yes」)、端末装置1は案内の表示を終了する(ステップS202)。
本変形例によれば、案内の表示が、当該表示のトリガとなった操作の終了に伴い自動的に終了するため、ユーザは別途、案内の表示を終了させるための操作を行う必要がない。
[2.3.第3変形例]
上述した第1変形例において、例えば右側に非表示部分がある旨の案内の表示が行われた後、ユーザにより再び連続してN回、縦方向のスワイプが行われると、同じ案内の表示が行われる構成が採用されている。
本変形例では、一度表示された案内は、仮に再度、連続してN回、縦方向のスワイプが行われても、所定の時間Tが経過するまでは表示されない構成が採用される。すなわち、案内の表示の要否を判定するための条件として、最初の案内の表示前においては考慮されなかった時間Tの経過という要素が、最初の案内の表示後においては考慮される構成が採用される。
本変形例における端末装置1は、上述した第1変形例において端末装置1が行う処理のうち図6Bに示した部分に関しては同じ処理を行い、図6Aに示した部分に関しては一部異なる処理を行う。図9は、本変形例の端末装置1が、第1変形例の端末装置1が行う図6Aの処理に代えて行う処理のフローを示した図である。従って、本変形例の端末装置1は、図9および図6Bに示される処理フローに従い処理を行う。
本変形例において、表示制御手段112はコンテンツデータ取得手段111により取得されたコンテンツデータに従い表示装置12に視覚コンテンツの表示を開始させると(ステップS002)、カウンタiの値を「0」で初期化するとともに、タイマtの値を所定の時間「T」で初期化する(ステップS301)。
タイマtは、最後に、右側に非表示部分がある旨の案内の表示が開始されたタイミングからの経過時間を示す値を格納する変数である。なお、タイマtは時間の経過に伴い常時更新される。
その後、ユーザにより縦方向のスワイプが行われると(ステップS102:「1」)、表示制御手段112はステップS111以降の処理およびステップS114以降の処理を行う。本変形例において、表示制御手段112はステップS114に続いて行う判定の処理において、カウンタiの値がN以上であり、かつ、タイマtの値が所定の閾値として与えられる時間T以上であるか否かを判定する(ステップS302)。
右側に非表示部分がある旨の案内の表示がまだ1度も行われていない間は、タイマtはステップS301において初期値として代入されたT以下とはならないので、ステップS302の判定において、タイマtの値は常にT以上となる。従って、ステップS302の判定においては、実質的にはカウンタiの値がN以上であるか否かという点のみが考慮され、タイマtの値は考慮されない。すなわち、左方向のスワイプが行われることなく縦方向のスワイプが連続してN回行われると、経過時間の多少に関わらずステップS302の判定が「Yes」となる。その場合、表示制御手段112は右側に表示可能な視覚コンテンツがあるか否かの判定を行い(ステップS021)、表示可能な視覚コンテンツがある場合には(ステップS021:「Yes」)、カウンタiならびにタイマtの値を「0」で初期化する(ステップS303)。その後、端末装置1は右側に非表示部分がある旨の案内の表示を開始する(ステップS023)。
その後、再び、ユーザにより縦方向のスワイプが連続してN回行われると、ステップS302の判定において、カウンタiがN以上である、という条件が満たされることになる。この時点で、案内の表示が最後に行われた後、既に時間Tが経過していれば、タイマtがT以上である、という条件も満たされ、ステップS302の判定結果は全体として「Yes」となる。従って、その時点で右側に表示可能な視覚コンテンツがある場合(ステップS021:「Yes」)、右側に非表示部分がある旨の案内が再び表示される(ステップS023)。
一方、再び、ユーザにより縦方向のスワイプが連続してN回行われた際、案内の表示が最後に行われた後、まだタイマtが時間Tに達していない場合、タイマtがT以上である、という条件が満たされず、ステップS302の判定結果は全体として「No」となる。その場合、案内の表示は行われない。その後、右側に非表示部分がある旨の案内の表示が最後に行われた後の経過時間が時間Tに達した後、さらに連続して縦方向のスワイプが行われた際、ステップS302の判定結果が全体として「Yes」となり、その時点で右側に表示可能な視覚コンテンツがある場合(ステップS021:「Yes」)、右側に非表示部分がある旨の案内が再び表示される(ステップS023)。
本変形例によれば、一度表示された案内が所定の時間Tが経過するまでは再度、表示されることがないため、例えばユーザが、右側に非表示部分があることに気付いているが、その非表示部分の閲覧に興味がないために縦スクロールのみを利用しているような場合に、不要な案内の表示が頻繁に繰り返される不都合が回避される。なお、閾値として時間Tに無限大(∞)または1か月間のように非常に大きな値を設定することにより、端末装置1の再起動やプログラムの再起動等の図9の処理フローの開始のトリガとなるイベントが再度発生するまでの間、実質的に一度表示された案内は再度表示されることがないようにすることもできる。
[2.4.第4変形例]
本変形例では、同じ視覚コンテンツ、もしくは一群の視覚コンテンツが継続して表示されている時間の変化に応じて、案内の表示の要否を判定するための条件が変化する構成が採用される。より具体的には、同じページを長時間継続して表示している場合と短時間しか継続して表示していない場合とでは、例えば縦スクロールを行った回数が同じであっても、前者(同じページを長時間継続して表示している場合)の場合の方が、右側に非表示部分があることにユーザが気付いていない可能性が高いと推論されるかも知れない。その場合、同じページを継続して表示している時間(以下、「滞在時間」という)が長い程、連続して行われた操作の回数が少なくても案内の表示を行うことが望ましい。もしくは、縦スクロールを行った回数が同じであっても、滞在時間が長い方が、ユーザは視覚コンテンツの閲覧に集中しているため案内の表示に邪魔をされなくないかも知れない。その場合、滞在時間が長い程、連続して行われた縦スクロールの回数が多くなければ案内の表示を行わないことが望ましい。第4変形例においては、滞在時間に応じて案内表示の要否判定に用いられる条件が変化するため、これらのニーズを満たす望ましいタイミングで案内表示が行われる。
滞在時間に応じて変化する、案内表示の要否判定に用いられる条件としては様々なものが考えられる。例えば、滞在時間が長い程、連続して行われた操作の回数が少なくても案内の表示を行わせたい場合、滞在時間が長くなる程、案内の表示の要否を判定するために用いる回数の閾値Nを小さくする方法がまず考えられる。また、閾値Nは変更せずに、カウンタiに対し滞在時間が長い程大きなウェイトw(ただし、w>1)を乗じ、ウェイトwを乗じた後のカウンタiを閾値Nとの比較に用いる方法も考えられる。
本変形例における端末装置1は、上述した第1変形例において端末装置1が行う処理のうち図6Bに示した部分に関しては同じ処理を行い、図6Aに示した部分に関しては一部異なる処理を行う。図10は、本変形例において端末装置1が、第1変形例の端末装置1が行う図6Aの処理に代えて行う処理のフローを示した図である。従って、本変形例の端末装置1は、図10および図6Bに示される処理フローに従い処理を行う。なお、図10の処理フローにおいては、滞在時間が長くなる程、案内の表示の要否を判定するために用いる回数の閾値Nを小さくする方法が採用されている。
本変形例において、表示制御手段112はコンテンツデータ取得手段111により取得されたコンテンツデータに従い表示装置12に視覚コンテンツの表示を開始させると(ステップS002)、カウンタiおよびタイマtの値を「0」で初期化する(ステップS401)。
タイマtは、コンテンツデータ取得手段111により取得されたコンテンツデータにより表される視覚コンテンツが継続的に表示されている時間、すなわち当該視覚コンテンツにおけるユーザの滞在時間を示す値を格納する変数である。なお、タイマtは時間の経過に伴い常時更新される。
その後、ユーザにより縦方向のスワイプが行われると(ステップS102:「1」)、表示制御手段112はステップS111以降の処理およびステップS114以降の処理を行う。本変形例において、表示制御手段112はステップS114に続いて行う判定の処理において、カウンタiの値が(N−t/k)以上であるか否かを判定する(ステップS402)。ここで、kは1以上の定数である。
例えば、滞在時間t(秒)、値N=10(回)、k=100とすると、滞在時間t=0(秒)の時の閾値(N−t/k)は10(回)、滞在時間t=300(秒)の時の閾値(N−t/k)は7(回)、滞在時間t=600(秒)の時の閾値(N−t/k)は5(回)、のように、滞在時間が長くなる程、カウンタiと比較される回数の閾値は小さくなる。
従って、滞在時間が長い程、縦方向のスワイプが繰り返し行われた回数が少なくても、ステップS402の判定結果が「Yes」となり易く、右側に非表示部分がある旨の案内の表示が行なわれ易くなる。
このように、本変形例によれば、滞在時間に応じて案内の表示の要否を判定する際の条件が変更される結果、ユーザのニーズに適したタイミングで案内の表示が行なわれる。なお、上記に例示した本変形例の端末装置1によれば、ユーザが視覚コンテンツを斜め読みしている場合には案内の表示があまり頻繁には行われず邪魔になりにくい。一方、ユーザが視覚コンテンツを熟読している場合には、スクロール操作の回数が少なくても、ある程度の時間が経過した時点で案内が表示され、ユーザは表示可能な別の視覚コンテンツがあることに気付くことができる。
[2.5.第5変形例]
本変形例では、上記の第1変形例における連続して同じ種類の操作(縦方向のスワイプ)が繰り返された回数に代えて、データ処理装置11が、当該操作を示す一連の操作信号を操作装置13から取得するために要した時間(連続して同じ種類の操作が繰り返された場合の当該操作が行なわれた時間)の累計が所定の閾値に達した時点で、案内の表示が行なわれる構成が採用される。
本変形例における端末装置1は、上述した第1変形例において端末装置1が行う処理のうち図6Bに示した部分に関しては同じ処理を行い、図6Aに示した部分に関しては一部異なる処理を行う。図11は、本変形例の端末装置1が、第1変形例の端末装置1が行う図6Aの処理に代えて行う処理のフローを示した図である。従って、本変形例の端末装置1は、図11および図6Bに示される処理フローに従い処理を行う。
本変形例において、表示制御手段112はコンテンツデータ取得手段111により取得されたコンテンツデータに従い表示装置12に視覚コンテンツの表示を開始させると(ステップS002)、タイマtの値を「0」で初期化する(ステップS501)。本変形例におけるタイマtは連続して行なわれた縦方向のスワイプの操作に要した時間の累計を示す値を格納する変数である。従って、タイマtはデータ処理装置11が操作装置13から縦方向のスワイプを示す一連の操作信号の取得の開始から完了までの間のみ、時間の経過に伴い更新される。
ユーザにより縦方向のスワイプが行われると(ステップS102:「1」)、表示制御手段112はステップS111以降の処理を行なうとともに、ステップS114およびS115の処理に代わる処理として、タイマtの値が所定の閾値として与えられる時間T以上であるか否かを判定する(ステップS502)。
ステップS502の判定において、連続して行なわれた縦方向のスワイプの操作に要した時間の累計が時間T未満であれば(ステップS502:「No」)、端末装置1は案内の表示は行なわず、次の新たな操作信号の入力まで待機する。
一方、ステップS502の判定において、連続して行なわれた縦方向のスワイプの操作に要した時間の累計が時間T以上であれば(ステップS502:「Yes」)、表示制御手段112は右側に表示可能な視覚コンテンツがあるか否かの判定を行い(ステップS021)、表示可能な視覚コンテンツがある場合には(ステップS021:「Yes」)、タイマtの値を「0」で初期化した後(ステップS503)、右側に非表示部分がある旨の案内を表示する(ステップS023)。なお、ステップS503におけるタイマtの初期化により、右側に非表示部分がある旨の案内が表示された後、再び、縦方向のスワイプの操作に要した時間の累計が時間T以上となるまで、同じ案内の表示は行なわれない。
また、ユーザにより左方向のスワイプが行われると(ステップS102:「2」)、表示制御手段112はタイマtを「0」で初期化した後(ステップS504)、ステップS014以降の処理、すなわち左スクロール表示の処理を行う(ステップS014〜S016)。ステップS504の初期化により、左スクロールが行われると、その後、縦方向のスワイプの操作に要した時間の累計が時間T以上となるまで、同じ案内の表示は行われない。
本変形例によっても、ユーザにより左方向のスワイプが行われることなく縦方向のスワイプが繰り返し行われた場合、自動的に右側に非表示部分がある旨の通知が行われるため、ユーザが非表示部分の存在に単に気付いていないために端末装置1の利便性が低下する、という不都合が回避される。
[2.6.第6変形例]
本変形例では、ユーザが気付いていないと推定される非表示部分の存在をユーザに通知するとともに、当該非表示部分の内容や、当該非表示部分と現在表示されている部分との関連性を通知する案内が表示される。
図12は、本変形例において端末装置1の表示装置12に案内が表示される様子を示した図である。本変形例によれば、例えばユーザにより連続したN回の縦方向のスワイプが行われる場合、N回目の縦方向のスワイプが終了すると(図12(a))、図12(b)に例示のような案内が表示される。図12(b)に例示の案内は、現在表示されている視覚コンテンツの右側に関連する、表示装置12上に表示されていないかまたは一部しか表示されていない視覚コンテンツがあり、左方向のスワイプにより、その非表示部分の視覚コンテンツを表示することができることをユーザに通知する案内である。
本変形例においては、端末装置1が視覚コンテンツ間の関連性を特定可能とするために、視覚コンテンツ間の関連性を示すデータを予めコンテンツデータに含ませておく構成が採用される。図13は、本変形例において利用されるコンテンツデータの一例であるHTMLデータにおいて、視覚コンテンツ間の関連性を示すデータがコメント文として挿入されている様子を例示した図である。図13(a)において、領域Aは視覚コンテンツの全体を示し、領域a1は現在の表示領域を示し、領域a2は現在の表示領域の右側に隣接する非表示領域(表示領域と同じサイズ)を示している。
領域a1に含まれる「豆料理.jpg」というファイル名の画像は、図13(b)に例示のタグ付きテキストに従い表示される。図13(b)に例示のタグ付きテキストは、「<img src="豆料理.jpg">」により、「豆料理.jpg」というファイル名の画像の表示を指示するとともに、そのタグ内に挿入された第1の属性「ref="1025"」により、この視覚コンテンツの参照番号が「1025」であり、第2の属性「relation="1026"」により、この視覚コンテンツに関連する視覚コンテンツの参照番号(または参照文字列)が「1026」であることを示している。
領域a2に含まれる「豆料理のレシピ」という見出しの記事は、図13(c)に例示のタグ付きテキストに従い表示される。図13(c)に例示のタグ付きテキストは、「<h5 ・・・>豆料理のレシピ</h5>」により、「豆料理のレシピ」という見出しを指示するとともに、そのタグ内に挿入された第1の属性「ref="1026"」により、この視覚コンテンツの参照番号(または参照文字列)が「1026」であり、第2の属性「relation="1025"」により、この視覚コンテンツに関連する視覚コンテンツの参照番号(または参照文字列)が「1025」であることを示している。
本変形例における端末装置1は、上述した第1変形例において端末装置1が行う処理のうち図6Bに示した部分に関しては同じ処理を行い、図6Aに示した部分に関しては一部異なる処理を行う。図14は、本変形例の端末装置1が、第1変形例の端末装置1が行う図6Aの処理に代えて行う処理のフローを示した図である。従って、本変形例の端末装置1は、図14および図6Bに示される処理フローに従い処理を行う。
上記の第1変形例において、案内の表示は、連続して行われたN回目の縦方向のスワイプの開始をトリガに開始される。これに対し、本変形例においては、案内の表示は、連続して行われたN回目の縦方向のスワイプの終了をトリガに開始される。そのため、図14に示されるように、案内の表示の要否を判定するためのステップS114およびS115は、ステップS112において一連の操作信号の入力が終了したと判定された後に実行される。
連続して縦方向のスワイプがN回行われ、N回目のスワイプが終了すると(ステップS115:「Yes」)、表示制御手段112は現在の表示領域の右側に隣接する非表示領域に表示可能な視覚コンテンツが存在するか否かを判定し(ステップS021)、表示可能な視覚コンテンツが存在する場合(ステップS021:「Yes」)、カウンタiの初期化を行う(ステップS120)。続いて、表示制御手段112は、現在の表示領域の右側に隣接する非表示領域の視覚コンテンツ中に、現在表示されている視覚コンテンツに関連するものが含まれるか否かを判定する(ステップS601)。
ステップS601において、表示制御手段112はまず、コンテンツデータ(HTMLデータ)のうち、現在の表示領域(領域a1)の表示を指示する部分から、関連する視覚コンテンツを指定する属性「relation="####"」(ただし、「####」は任意の整数または文字列)を検索する。この検索において、属性「relation="####"」が1以上検索された場合、コンテンツデータのうち、表示領域の右側に隣接する非表示領域(領域a2)の表示を指示する部分から、検索された属性の各々に指定された参照番号(または参照文字列)を示す属性「ref="####"」(ただし、「####」は検索された参照番号または参照文字列)を検索する。この検索において、属性「ref="####"」が設定された視覚コンテンツが1つ以上発見された場合、表示制御手段112は、表示領域に表示されている視覚コンテンツに関連する視覚コンテンツが右側に隣接する非表示領域にある、と判定する(ステップS601:「Yes」)。この場合、表示制御手段112は、図12(b)に例示のように、表示領域に含まれるいずれの視覚コンテンツ(この例の場合、画像「豆料理.jpg」)が、右側に隣接する非表示領域に含まれるいずれの視覚コンテンツ(この例の場合、記事「豆料理のレシピ」)と関連するか、という情報を含む案内を表示装置12に表示させる(ステップS602)。その際、右側の非表示領域を表示させるための操作として、左方向のスワイプを行えばよい点も左方向の矢印をなぞる指の画像により案内される。
一方、表示領域に関する属性「relation="####"」が設定された視覚コンテンツが1つも検索されなかった場合、もしくは表示領域において検索された属性「relation="####"」に指定された参照番号(または参照文字列)に関する属性「ref="####"」が設定された視覚コンテンツが右側に隣接する非表示領域において検索されなかった場合、表示制御手段112は、表示領域に表示されている視覚コンテンツに関連する視覚コンテンツが右側に隣接する非表示領域にはない、と判定する(ステップS601:「No」)。この場合、表示制御手段112は、例えば図12(b’)に例示のような、右側に非表示領域があることと、その非表示領域を表示させるための操作として左方向のスワイプを行えばよい点をユーザに通知する案内を表示装置12に表示させる(ステップS603)。
本変形例によれば、ユーザが非表示部分の存在に気付いていないと推定される場合、その非表示部分の存在をユーザに通知するとともに、非表示部分を表示するための操作方法がユーザに通知される。さらに、非表示部分に表示部分と関連する内容の視覚コンテンツが含まれる場合、その旨の通知も合せて行われる。そのため、ユーザは非表示部分を表示させるための操作を知ることができるとともに、その操作を行なう価値があるか否かを判断することができる。
なお、上記の説明においては、表示領域内の視覚コンテンツと非表示領域の視覚コンテンツとが互いに関連する場合に、表示領域内のいずれの視覚コンテンツと、非表示領域内のいずれの視覚コンテンツが関連しているか、という情報を案内する構成としている。すなわち、案内には、表示領域内の視覚コンテンツの情報と、非表示領域内の視覚コンテンツの情報が含まれる。これに代えて、「右側に「豆料理のレシピ」があります。」のように、単に非表示領域内の視覚コンテンツの情報をユーザへ通知する案内が表示される構成としてもよい。その場合、図13に例示したような視覚コンテンツ間の関連付けは不要であり、表示制御手段112はステップS601の判定を行う必要はない。そして、表示制御手段112はステップ602において、表示領域内の視覚コンテンツとは無関係に、非表示領域内の視覚コンテンツの概要(例えば、見出し等)を含む案内を表示する構成としてもよい。また、コンテンツデータのうち非表示領域(非表示部分)を表す部分は、案内表示に先だって予め生成されている必要はなく、表示領域(表示部分)の情報を基にして、関連する視覚コンテンツの案内表示が行われるタイミングや、表示された案内に従ったユーザの操作が行われたタイミングで、動的に生成されてもよい。
[2.7.その他の変形例]
上記の実施形態およびその変形例の説明においては、非表示部分は現在表示されている部分の右側に隣接しており、案内はその右側に隣接している部分の存在をユーザに通知する場合を例として説明とした。既述のように、案内の対象とする未表示部分は、表示されている部分の右側に隣接している部分に限定されない。
例えば、視覚コンテンツが上記の実施形態およびその変形例で例示のように二次元の視覚コンテンツである場合、最初に表示される部分の右側だけでなく左側にも非表示部分がある場合がある。この場合、右側に隣接している部分に加えて、もしくはそれに代えて、左側に隣接している部分の存在をユーザに通知する案内が表示される構成としてもよい。
また、視覚コンテンツが三次元等の多次元の視覚コンテンツである場合や、積層された複数のレイヤを含む視覚コンテンツである場合などには、仮想空間内において、それらの視覚コンテンツのうち表示されている部分と非表示部分との位置関係は様々なものがあり得るため、そのような配置や位置関係を対象とする構成であってもよい。
図15は、仮想空間内に並べて配置された複数の立方体の表面上に配置された視覚コンテンツが端末装置1の表示装置12に表示されている状態において、非表示部分がある旨の案内が表示される様子を示した図である。図15の例では、ユーザが縦方向のスワイプを所定回数繰り返した場合(図15(a))、案内が表示される(図15(b))。その際、表示される案内は、各々の立方体の裏側に非表示の視覚コンテンツがあることをユーザに通知するとともに、下側に弧を描くようなフリック(タッチした指等を素早くスライドした後に離す操作)を行うことでその非表示の視覚コンテンツを表示させることができる旨を通知する案内である。ユーザが、例えば左下角に配置されている立方体に対し、案内されたフリックを行うと、その立方体が上下方向の軸周りに180度回転し、裏側に配置されていた非表示部分の視覚コンテンツが表示される(図15(c))。なお、図15の例では三次元の視覚コンテンツの例として、その形状が立方体のものを示したが、これらの視覚コンテンツの形状は、例えば球形、直方体、正四面体など、様々な形状のものが採用し得る。
また、図16は、仮想空間内に積層された複数のレイヤの上に配置された視覚コンテンツが端末装置1の表示装置12に表示されている状態において、非表示部分がある旨の案内が表示される様子を示した図である。図16の例では、ユーザが横方向のスワイプを所定回数繰り返した場合(図16(a))、案内が表示される(図16(b))。その際、表示される案内は、現在表示されている視覚コンテンツが配置されているレイヤの下に、他の視覚コンテンツが配置されているレイヤがあることをユーザに通知するとともに、右上から左下に向かう斜め方向のフリックを行うことでその非表示のレイヤの視覚コンテンツを表示させることができる旨を通知する案内である。ユーザが案内されたフリックを行うと、最上層の視覚コンテンツP1が捲り取られて非表示となり、その下のレイヤに配置されていた第2層の視覚コンテンツP2が表示される(図16(c))。
このように、仮想空間内における視覚コンテンツの位置関係は様々である。従って、端末装置1が案内の対象とする非表示部分は、仮想空間内における視覚コンテンツの位置関係に応じて様々に変わり得る。すなわち、表示されている部分と案内の対象の非表示の部分の仮想空間内における位置関係は限定されず、例えば表示されている部分の側面に配置されている非表示部分、裏面に配置されている非表示部分、一つ下の層に配置されている非表示部分、などのように、現在表示されている部分と所定の位置関係を満たす非表示部分であれば、いずれの非表示部分が案内の対象として選択されてもよい。
また、上記の変形例の説明においては、左方向のスワイプが行われることなく連続して縦方向のスワイプが行われた場合に、案内が行われる構成が採用されている。案内の要否を判定するための条件に用いる特定の種類の操作は、縦方向のスワイプに限定されず、他の様々な種類の操作(単体または複数の組み合わせ)を、案内の要否を判定するための条件として用いることができる。例えば図16に示した変形例においては、横方向のスワイプが繰り返し行われた回数(または、横方向のスワイプに要した累計時間等)が、案内の要否を判定するための条件に用いられている。その他、例えば、拡大表示のための操作として行われるピンチアウトが繰り返し行われた回数(または、ピンチアウトに要した累計時間等)を、案内の要否を判定するための条件に用いることも考えられる。この場合、端末装置1は、例えば最初に表示されていた視覚コンテンツの外側に非表示部分があったことをユーザに通知することができる。また、複数の種類の操作の組み合わせを判定の条件として用いる具体例として、例えば図15に示した変形例において、スワイプ(縦方向および横方向)が行われた回数(または操作に要した累計時間等)とピンチアウトおよびピンチインが行われた回数(または操作に要した累計時間等)の合計値を、判定の条件に用いることが考えられる。
また、上記の実施形態およびその変形例においては、データ処理装置11、表示装置12および操作装置13は一体として構成される。これに代えて、例えばデータ処理装置11、表示装置12および操作装置13の少なくとも1つが、他の装置と別体として構成されてもよい。例えば、データ処理装置11に対し、外付けの表示装置12(ディスプレイ等)および外付けの操作装置13(マウス、タッチパネル等)が各々接続されて端末装置1が構成されてもよい。また、データ処理装置11に対し、一体として構成された外付けの表示装置12と操作装置13(タッチディスプレイ等)が接続されて端末装置1が構成されてもよい。
また、上記の実施形態およびその変形例においては、案内は表示装置12による表示によりユーザに対し通知される。これに加えて、もしくは代えて、端末装置1が音波形データに従い音を発する発音装置を備え、例えば既知の音声合成技術により生成された音波形データに従い音声を発音することにより、ユーザに対する通知を行なう構成が採用されてもよい。
また、上記の変形例においては、縦方向のスワイプ(上方向および下方向のスワイプ)を同じ種類の操作としている。ユーザにより行なわれる様々な操作のうち、どの範囲の操作を同じ種類の操作とするかは任意に変更可能である。例えば、上方向のスワイプと下方向のスワイプを異なる種類の操作としてもよい。
また、上記の実施形態およびその変形例において採用されている案内の表示の要否を判定する際の条件は例示であって、他の様々な条件が採用され得る。
また、上記の実施形態においては、端末装置1は、タッチパネルを内蔵した一般的なコンピュータに、当該実施形態にかかるプログラムに従った処理を実行させることにより実現される構成とした。これに代えて、端末装置1が、例えば図2に示す機能構成部の各々を実現するハードウェアを組み合わせて構成されたいわゆる専用機として実現される構成が採用されてもよい。
また、上記の実施形態においては、端末装置1は、案内の表示の開始(図4のステップS023)を判断するための判定(図4のステップS020)において、視覚コンテンツの表示の開始(図4のステップS002)より後に経過した時間(タイマtの値)が所定の条件を満たすか否かが判定される。また、上記の変形例においては、端末装置1は、案内の表示の開始(例えば、図6のステップS023)を判断するための判定(例えば、図6のステップS115)において、視覚コンテンツの表示の開始(図6のステップS002)より後にユーザにより行われた操作の操作量(操作の回数や累計時間等)が所定の条件を満たすか否かが判定される。案内の表示の開始を判断するための判定において考慮対象とする操作は、視覚コンテンツの表示の開始以降の期間のものに限られず、例えば、視覚コンテンツの表示に用いられるアプリケーションプログラムが起動したタイミング以降の期間(コンテンツデータの取得前の期間を含む)に行われた操作を考慮対象としたり、端末装置1が起動したタイミング以降の期間(視覚コンテンツの表示に用いられるアプリケーションプログラムの起動前の期間を含む)に行われた操作を考慮対象としてもよい。
また、上記の実施形態およびその変形例の説明において示した端末装置1が行う処理はあくまで具体例であって、端末装置1が行う処理としては他の様々なものが採用され得る。例えば、図6に例示の処理フローにおいては、ユーザにより左スクロールが行われると(ステップS102:「2」)、縦スクロールが行われた回数をカウントするカウンタiが「0」で初期化される(ステップS103)。そのため、一度でも左スクロールが行われると、その時点から縦スクロールがN回、連続して行われるまでは右側の非表示領域に視覚コンテンツがある旨の案内が行われない。
このような処理の代替例として、例えば、左スクロールがN2回(例えば、2回)以下の状態で縦スクロールがN1回(例えば50回)に達した場合に案内を行う、という処理を端末装置1が行う構成とすることが考えられる。この場合、図6のステップS101において左スクロールの回数をカウントするカウンタi2を準備し(「0」で初期化)、ステップS103におけるカウンタiの初期化は行わず、ステップS115の判定においてi2≦N2、かつ、i≧N1を判定条件として用い、さらにステップS120においてカウンタiとカウンタi2を共に「0」で初期化する構成とすればよい。
また、上記の実施形態およびその変形例の説明において示した端末装置1が行う判定処理において用いられる閾値(例えば、図4のステップS020の判定に用いられる時間T、図6及び図14のステップS115の判定において用いられる回数N、図9のステップS302の判定において用いられる回数Nおよび時間T、図11のステップS502の判定において用いられる時間T等)を定数とせず、例えばカウンタiやタイマtの値等を引数とする関数値としてもよい。例えば、第4変形例において端末装置1が行う判定処理(図10のステップS402)においては、カウンタiと比較される閾値が(N−t/k)という関数値となっている。このように、端末装置1が判定処理に用いる閾値を関数値とすることにより、より柔軟なタイミングで端末装置1に案内の表示を行わせることができる。さらに、図10のステップS402の判定処理において用いられるkを定数でなく関数値としてもよい。
なお、本発明は、上述したデータ処理装置、上述したデータ処理装置が行なう処理の方法、コンピュータを上述したデータ処理装置として機能させるためのプログラム、そのプログラムをコンピュータ読取可能に記録した不揮発性の記録媒体、といった形態で把握される。なお、本発明にかかるプログラムは、記録媒体を介する他、インターネットなどのネットワークを介してコンピュータに提供されてもよい。