(57)【要約】【課題】利用者の意図に反してフォアグラウンドで動作するプログラムが切り替えられる可能性を低減する技術の提供。【解決手段】第１プログラムと第２プログラムとを実行し、バックグラウンドで動作する前記第２プログラムの機能によって利用者に対して通知を行う場合に、フォアグラウンドで動作する前記第１プログラムのユーザインタフェース上に通知内容を示す通知領域を表示させ、前記通知領域に対する操作が行われた場合に、前記第２プログラムをフォアグラウンド、前記第１プログラムをバックグラウンドで動作させる構成において、前記通知領域に対する操作が前記利用者の意図外の操作である場合、後の前記通知の発生の際に、操作に応じて前記第２プログラムをフォアグラウンド、前記第１プログラムをバックグラウンドで動作させる前記通知領域を表示させない。【選択図】図１
2020140420.tif 000002
【特許請求の範囲】
【請求項１】
第１プログラムと第２プログラムとの一方をフォアグラウンドで動作させ、他方をバックグラウンドで動作させるプログラム実行部と、
バックグラウンドで動作する前記第２プログラムの機能によって利用者に対して通知を行う場合に、フォアグラウンドで動作する前記第１プログラムのユーザインタフェース上に通知内容を示す通知領域を表示させる通知領域表示制御部と、
前記通知領域に対する操作が行われた場合に、前記第２プログラムをフォアグラウンドで動作させ、前記第１プログラムをバックグラウンドで動作させる動作制御部と、
前記通知領域に対する操作が前記利用者の意図外の操作であるか否かを判定する判定部と、を備え、
前記通知領域表示制御部は、
前記通知領域に対する操作が前記利用者の意図外の操作である場合、後の前記通知の発生の際に、操作に応じて前記第２プログラムをフォアグラウンドで動作させ、前記第１プログラムをバックグラウンドで動作させる前記通知領域を表示させない、
表示制御システム。
【請求項２】
前記判定部は、
前記第２プログラムがフォアグラウンドで動作し、前記第１プログラムがバックグラウンドで動作する状態に遷移した後、既定期間以内に前記利用者の操作によって、前記第１プログラムがフォアグラウンドで動作し、前記第２プログラムがバックグラウンドで動作する状態に戻った場合に、前記通知領域に対する操作が前記利用者の意図外の操作であると判定する、
請求項１に記載の表示制御システム。
【請求項３】
前記判定部は、
前記第２プログラムがフォアグラウンドで動作し、前記第１プログラムがバックグラウンドで動作する状態に遷移した後、前記利用者が前記第２プログラムに関する操作を行うことなく、前記第１プログラムがフォアグラウンドで動作し、前記第２プログラムがバックグラウンドで動作する状態に戻った場合に、前記通知領域に対する操作が前記利用者の意図外の操作であると判定する、
請求項１に記載の表示制御システム。
【請求項４】
前記通知領域表示制御部は、
前記通知領域に対する操作が前記利用者の意図外の操作である場合、同種の前記通知が後に発生した際に、操作に応じて前記第２プログラムをフォアグラウンドで動作させ、前記第１プログラムをバックグラウンドで動作させる前記通知領域を表示させない、
請求項１〜請求項３のいずれかに記載の表示制御システム。
【請求項５】
前記通知領域表示制御部は、
前記第１プログラムに関する操作を行うボタン上に前記通知領域を表示させる、
請求項１〜請求項４のいずれかに記載の表示制御システム。
【請求項６】
前記判定部は、
前記利用者が前記第１プログラムの前記ユーザインタフェースに対して操作を行っている場合に表示された前記通知領域に対する操作が前記利用者の意図外の操作であるか否かを判定する、
請求項１〜請求項５のいずれかに記載の表示制御システム。
【請求項７】
前記判定部は、
表示制御システムが車両内で使用されている状態で表示された前記通知領域に対する操作が前記利用者の意図外の操作であるか否かを判定する、
請求項１〜請求項６のいずれかに記載の表示制御システム。
【請求項８】
コンピュータを、
第１プログラムと第２プログラムとの一方をフォアグラウンドで動作させ、他方をバックグラウンドで動作させるプログラム実行部、
バックグラウンドで動作する前記第２プログラムの機能によって利用者に対して通知を行う場合に、フォアグラウンドで動作する前記第１プログラムのユーザインタフェース上に通知内容を示す通知領域を表示させる通知領域表示制御部、
前記通知領域に対する操作が行われた場合に、前記第２プログラムをフォアグラウンドで動作させ、前記第１プログラムをバックグラウンドで動作させる動作制御部、
前記通知領域に対する操作が前記利用者の意図外の操作であるか否かを判定する判定部、として機能させる表示制御プログラムであって、
前記通知領域表示制御部は、コンピュータを、
前記通知領域に対する操作が前記利用者の意図外の操作である場合、後の前記通知の発生の際に、操作に応じて前記第２プログラムをフォアグラウンドで動作させ、前記第１プログラムをバックグラウンドで動作させる前記通知領域を表示させないように機能させる、
表示制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示制御システムおよび表示制御プログラムに関する。
【背景技術】
【０００２】
従来、複数のプログラムを並行して実行する技術が知られている。例えば、特許文献１においては、プッシュ通知が実施され、プッシュ通知に対してアクションが実施されると、プッシュ通知を出力したアプリケーションを起動させる技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５８９９１６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来の技術においては、利用者の意図に反してプログラムを切り替えてしまう場合があった。すなわち、フォアグラウンドで動作しているプログラムのユーザインタフェースに重ねてプッシュ通知が表示される場合、利用者がフォアグラウンドで動作しているプログラムに関する操作を行う直前でプッシュ通知が表示されると、利用者の意図に反してプッシュ通知に対してタップ等のアクションを行ってしまう場合がある。
本発明は、前記課題にかんがみてなされたもので、利用者の意図に反してフォアグラウンドで動作するプログラムが切り替えられる可能性を低減することを目的とする。
【課題を解決するための手段】
【０００５】
上記の目的を達成するため、表示制御システムは、第１プログラムと第２プログラムとの一方をフォアグラウンドで動作させ、他方をバックグラウンドで動作させるプログラム実行部と、バックグラウンドで動作する第２プログラムの機能によって利用者に対して通知を行う場合に、フォアグラウンドで動作する第１プログラムのユーザインタフェース上に通知内容を示す通知領域を表示させる通知領域表示制御部と、通知領域に対する操作が行われた場合に、第２プログラムをフォアグラウンドで動作させ、第１プログラムをバックグラウンドで動作させる動作制御部と、通知領域に対する操作が利用者の意図外の操作であるか否かを判定する判定部と、を備え、通知領域表示制御部は、通知領域に対する操作が利用者の意図外の操作である場合、後の通知の発生の際に、操作に応じて第２プログラムをフォアグラウンドで動作させ、第１プログラムをバックグラウンドで動作させる通知領域を表示させないように構成される。
【０００６】
また、上記の目的を達成するため、表示制御プログラムは、コンピュータを、第１プログラムと第２プログラムとの一方をフォアグラウンドで動作させ、他方をバックグラウンドで動作させるプログラム実行部、バックグラウンドで動作する第２プログラムの機能によって利用者に対して通知を行う場合に、フォアグラウンドで動作する第１プログラムのユーザインタフェース上に通知内容を示す通知領域を表示させる通知領域表示制御部、通知領域に対する操作が行われた場合に、第２プログラムをフォアグラウンドで動作させ、第１プログラムをバックグラウンドで動作させる動作制御部、通知領域に対する操作が利用者の意図外の操作であるか否かを判定する判定部、として機能させる表示制御プログラムであって、通知領域表示制御部は、コンピュータを、通知領域に対する操作が利用者の意図外の操作である場合、後の通知の発生の際に、操作に応じて第２プログラムをフォアグラウンドで動作させ、第１プログラムをバックグラウンドで動作させる通知領域を表示させないように機能させる。
【０００７】
すなわち、表示制御システムおよび表示制御プログラムにおいては、フォアグラウンドで動作する第１プログラムのユーザインタフェース上に第２プログラムによって通知領域が表示される。この構成においては、利用者が、第１プログラムのユーザインタフェースに対する操作を意図して行動したとしても、操作直前に通知領域が現れると、利用者が通知領域に対して意図外に操作（タップ等）してしまうことがある。そこで、表示制御システムおよび表示制御プログラムにおいては、当該通知領域に対して行われた操作が利用者の意図外の操作であるか否か判定される。そして、操作が利用者の意図外の操作であった場合、後の通知の発生の際に、第２プログラムをフォアグラウンドに遷移させる通知領域を表示させない。従って、利用者の意図に反してフォアグラウンドで動作するプログラムが切り替えられる可能性を低減することができる。
【図面の簡単な説明】
【０００８】
【図１】表示制御システムを示すブロック図である。
【図２】図２Ａ，図２Ｂ，図２Ｃはユーザインタフェースの例を示す図である。
【図３】表示制御処理のフローチャートである。
【発明を実施するための形態】
【０００９】
ここでは、下記の順序に従って本発明の実施の形態について説明する。
（１）表示制御システムの構成：
（２）表示制御処理：
（３）他の実施形態：
【００１０】
（１）表示制御システムの構成：
図１は、本発明の一実施形態である表示制御システムとして機能する携帯端末１０構成を示すブロック図である。携帯端末１０は、ＣＰＵ、ＲＡＭ、ＲＯＭ等を備える制御部２０および記録媒体３０を備えており、制御部２０は、当該ＲＯＭや記録媒体３０に記録された所望のプログラムを実行することができる。本実施形態にかかる携帯端末１０は、各種のプログラムにより各種の機能を実行可能な多機能端末である。携帯端末１０は、各種の態様で実現可能であるが、本実施形態において携帯端末１０は、通話機能を含む各種の機能を実行可能なスマートフォンである。
【００１１】
さらに、携帯端末１０は、タッチパネルディスプレイ４０、ＧＮＳＳ受信部４１、通信部４２を備えている。タッチパネルディスプレイ４０は、図示しないインタフェースを介して制御部２０と接続されており、制御部２０とタッチパネルディスプレイ４０とで各種の信号を授受する。制御部２０は、タッチパネルディスプレイ４０に対して制御信号を出力することにより、任意の座標を指定し、任意の画像をタッチパネルディスプレイ４０に表示させることができる。タッチパネルディスプレイ４０は、ディスプレイに重ねられた透過型のタッチ検出面を備えた入力デバイスであり、タッチ検出面に対して検出対象物がタッチした位置を検出し、検出位置を示すタッチ座標を出力する。制御部２０は、当該タッチ座標に基づいてタッチ位置を取得することができる。
【００１２】
ＧＮＳＳ受信部４１は、Global Navigation Satellite Systemの信号を受信する装置であり、航法衛星からの電波を受信し、図示しないインタフェースを介して携帯端末１０の現在地を算出するための信号を出力する。制御部２０は、この信号を取得して携帯端末１０の現在地を取得する。
【００１３】
通信部４２は、外部の装置と無線通信を行うことが可能な装置である。本実施形態において通信部４２は、近距離無線通信規格（例えば、ＢｌｕｅＴｏｏｔｈ（登録商標）規格）によって他の装置と無線通信を行うことが可能であり、制御部２０は、近距離無線通信規格に従って、外部の装置と種々の情報を授受することができる。
【００１４】
記録媒体３０には、各種の情報を記録することができる。本実施形態においては、各種のアプリケーションプログラムを示す情報と、各アプリケーションプログラムで利用される情報とが記録媒体３０に記録される。アプリケーションプログラムは複数個であれば良く、その種類は限定されないが、本実施形態においては、音楽再生プログラム３０ａとナビゲーションプログラム３０ｂとが記録媒体３０に記録されている例が想定されている。本実施形態においては、音楽再生プログラム３０ａが第１プログラム、ナビゲーションプログラム３０ｂが第２プログラムである。
【００１５】
音楽再生プログラム３０ａは、音楽ファイル３０ａ１が示す音楽を再生するための処理を行うプログラムである。ナビゲーションプログラム３０ｂは、地図情報３０ｂ１が示す地図をタッチパネルディスプレイ４０に表示させ、また、利用者が設定した目的地までの経路案内を実行する処理を行うプログラムである。
【００１６】
本実施形態において、制御部２０は、アプリケーションプログラムによる通知に関する表示を制御する機能を実行することができる。この機能を実行するためのプログラムを本実施形態においては表示制御プログラム２１と呼ぶ。表示制御プログラム２１は、ＯＳ（オペレーティングシステム）であっても良いし、アプリケーションプログラムであっても良いし、一部がＯＳであり一部がアプリケーションプログラムであっても良い。
【００１７】
いずれにしても、表示制御プログラム２１は、プログラム実行部２１ａと通知領域表示制御部２１ｂと動作制御部２１ｃと判定部２１ｄとを備えている。プログラム実行部２１ａは、第１プログラムと第２プログラムとの一方をフォアグラウンドで動作させ、他方をバックグラウンドで動作させる機能を制御部２０に実行させる。すなわち、制御部２０は、第１プログラムである音楽再生プログラム３０ａと第２プログラムであるナビゲーションプログラム３０ｂとを並列処理によって並列的に実行することができる。
【００１８】
このように２個のプログラムが並列的に実行されている場合、制御部２０は、一方をフォアグラウンドで動作させ、他方をバックグラウンドで動作させる。フォアグラウンド、バックグラウンドでのいずれにおいて動作さするのかは、まず、起動順序によって決められる。すなわち、最後に起動されたアプリケーションプラグラムがフォアグラウンドで動作し、他のプログラムはバックグラウンドで動作する。さらに、フォアグラウンドで動作するアプリケーションプラグラムと、バックグラウンドで動作するアプリケーションプラグラムとは、利用者の指示によって切り替え可能である。
【００１９】
すなわち、利用者が既定の操作を行うと、制御部２０は、実行中のアプリケーションプラグラムの選択肢をタッチパネルディスプレイ４０に表示させる。利用者が、選択肢からアプリケーションプラグラムを選択すると、制御部２０は、選択されたアプリケーションプラグラムをフォアグラウンドで動作させ、他のアプリケーションプラグラムをバックグラウンドで動作させる。
【００２０】
本実施形態においては、音楽再生プログラム３０ａとナビゲーションプログラム３０ｂとのそれぞれにおいて、フォアグラウンドで実行される機能と、バックグラウンドで実行される機能とが区別されている。フォアグラウンドで実行される機能と、バックグラウンドで実行される機能との区別は種々の態様で行われて良いが、本実施形態においては、少なくともユーザインタフェースが区別される。すなわち、各アプリケーションプログラムにおいては、フォアグラウンドで動作している状態でタッチパネルディスプレイ４０にデフォルトのユーザインタフェースが表示される。バックグラウンド動作している場合、アプリケーションプラグラムによって定常的にタッチパネルディスプレイ４０に表示されるユーザインタフェースは存在しない。ただし、任意の通知内容を利用者に通知する必要が生じた場合、通知領域が表示されることで通知内容が利用者に伝達される。
【００２１】
さらに、アプリケーションプラグラムがフォアグラウンドで動作する場合、利用者は、タッチパネルディスプレイ４０に表示されたユーザインタフェースを利用しながら各種の機能を利用する。図２Ａは、音楽再生プログラム３０ａがフォアグラウンドで実行される状態でタッチパネルディスプレイ４０に表示されるユーザインタフェースの例を示している。図２Ａに示す例においては、音楽アルバムＡのジャケットの画像Ｉｍが画面中央に表示され、その下方に音楽アルバムＡに収録された音楽トラックの曲名（曲名１，曲名２）が表示されている。また、曲名の下方には、再生または停止を指示するためのボタンＢ1，次のトラックへの早送りを指示するボタンＢ2，前のトラックの頭出しを指示するボタンＢ3が表示されている。
【００２２】
さらに、図２Ａに示す例においては、画面の右上の隅に各種設定を行うためのメニューを表示させる指示を行うためのボタンＢ4が表示され、画面の左上の隅に前画面に戻るためのボタンＢ5が表示されている。制御部２０が、プログラム実行部２１ａの機能によって、フォアグラウンドで音楽再生プログラム３０ａを実行すると、制御部２０は、タッチパネルディスプレイ４０の出力信号に基づいて図２Ａに示す各種のボタン等に対するタップ操作を受け付け、操作に応じた処理を実行する。例えば、ボタンＢ1によって音楽トラックの再生指示が行われると、制御部２０は、再生指示が行われた音楽ファイル３０ａ１を参照し、外部の装置が再生可能な情報に変換し、通信部４２を介して出力する。外部の装置はスピーカーを備え、近距離無線通信によって当該情報を取得してスピーカーから音楽を出力する。むろん、音楽を出力するスピーカーは、携帯端末１０に備えられていても良い。
【００２３】
図２Ｂは、ナビゲーションプログラム３０ｂがフォアグラウンドで実行される状態でタッチパネルディスプレイ４０に表示されるユーザインタフェースの例を示している。図２Ｂに示す例においては、携帯端末１０が車両内で利用されることが想定されており、携帯端末１０の現在地Ｃ（車両の現在地）を含む地図がタッチパネルディスプレイ４０に表示されている。
【００２４】
また、本実施形態において、ナビゲーションプログラム３０ｂは、利用者が設定した目的地まで誘導するための案内を実行する処理を行うことが可能であり、図２Ｂにおいては、経路が破線によって道路に付記されている。制御部２０が、プログラム実行部２１ａの機能によって、フォアグラウンドでナビゲーションプログラム３０ｂを実行すると、制御部２０は、ＧＮＳＳ受信部４１の出力信号に基づいて携帯端末１０の現在地を取得し、現在地の変化に伴って、タッチパネルディスプレイ４０上での現在地Ｃが固定の位置になるように地図を再描画し、表示させる。
【００２５】
さらに、制御部２０は、経路に沿って利用者を誘導するための案内を行う。本実施形態において制御部２０は、ナビゲーションプログラム３０ｂの機能により、複数の種類の案内を実施可能である。すなわち、本実施形態においては、経路の案内と、注意喚起のための案内とが存在する。また、各案内も複数の種類に分類されている。経路の案内は、例えば、交差点での進行方向を示す案内、経路に沿って進行するために走行すべき推奨車線を示す案内、有料道路の入口および出口を示す案内等に細分化されている。注意喚起のための案内は、例えば、事故多発地点を示す案内、車線規制を示す案内、制限速度を示す案内等に細分化されている。いずれにしても、本実施形態においては、案内の種類によって案内内容が予め分類されており、大分類が小分類に細分化されるようにして分類が階層構造を形成するように定義されている。
【００２６】
これらの案内のそれぞれに対しては、案内を出力するタイミングが決められている。例えば、交差点での進行方向を示す案内においては、現在地と交差点との距離が既定距離以下になった場合に案内を出力するタイミングであるとみなされる。ナビゲーションプログラム３０ｂがフォアグラウンドで動作している場合、制御部２０は、ナビゲーションプログラム３０ｂのユーザインタフェース上に各種の案内を表示させる。例えば、交差点での進行方向を示す案内であれば、現在地が案内交差点の手前の既定距離の地点に達すると、制御部２０は、進行方向を示す画像を描画し、タッチパネルディスプレイ４０上の地図に重ねて進行方向を示す画像を表示させる。また、制御部２０は、進行方向を示す音声情報を生成し、通信部４２を介して出力する。外部の装置は、近距離無線通信によって当該情報を取得してスピーカーから進行方向を示す音声を出力する。むろん、進行方向示す音声を出力するスピーカーは、携帯端末１０に備えられていても良い。
【００２７】
以上のように、各アプリケーションプログラムがフォアグラウンドで動作している場合、制御部２０は、各アプリケーションプログラムのユーザインタフェースを利用して各アプリケーションプログラムの機能を実行する。一方、アプリケーションプラグラムがバックグラウンドで動作している状態において制御部２０は、バックグラウンドで実行されているアプリケーションプラグラムのユーザインタフェースをタッチパネルディスプレイ４０に表示させることなく主な機能を実行する。
【００２８】
例えば、音楽再生プログラム３０ａがバックグラウンドで動作し、ナビゲーションプログラム３０ｂがフォアグラウンドで動作している場合、制御部２０は、図２Ｂに示すナビゲーションプログラム３０ｂのユーザインタフェースを表示した状態で、音楽再生プログラム３０ａの機能を実行する。この場合、制御部２０は、例えば、再生中の音楽アルバムＡに収録された曲を収録順に再生するなどの、既定の処理を実行する。
【００２９】
ナビゲーションプログラム３０ｂがバックグラウンドで動作し、音楽再生プログラム３０ａがフォアグラウンドで動作している場合、制御部２０は、図２Ａに示す音楽再生プログラム３０ａのユーザインタフェースを表示した状態で、ナビゲーションプログラム３０ｂの機能を実行する。この状態において利用者に案内を行う場合、制御部２０は、音楽再生プログラム３０ａのユーザインタフェース上に通知領域を表示させ、一定期間経過後に当該通知領域を消去する。
【００３０】
当該通知領域の制御は、通知領域表示制御部２１ｂの機能によって、実施される。すなわち、通知領域表示制御部２１ｂは、バックグラウンドで動作する第２プログラムの機能によって利用者に対して通知を行う場合に、フォアグラウンドで動作する第１プログラムのユーザインタフェース上に通知内容を示す通知領域を表示させる機能を制御部２０に実行させるプログラムモジュールである。具体的には、第２プログラムであるナビゲーションプログラム３０ｂがバックグラウンドで動作している場合、制御部２０は、ナビゲーションプログラム３０ｂによる案内タイミングになったか否か判定する。
【００３１】
案内タイミングである場合、制御部２０は、案内内容を示す情報（画像や文字等）を表示するための既定の大きさの通知領域を描画する。そして、制御部２０は、タッチパネルディスプレイ４０を制御し、フォアグラウンドで動作している第１プログラムである音楽再生プログラム３０ａのユーザインタフェース上に通知領域を表示させる。なお、本実施形態において、通知領域はタッチパネルディスプレイ４０の画面の上端から下方に向けて出現するような動画によって表示され、動画の表示が終了すると、通知領域が表示されたままの状態で一定期間維持され、一定期間が経過すると通知領域が消去される。
【００３２】
図２Ｃは、図２Ａに示す音楽再生プログラム３０ａのユーザインタフェース上に通知領域Ｚが表示された状態を示している。すなわち、案内タイミングになると、タッチパネルディスプレイ４０上では図２Ａ示すユーザインタフェースの上端から徐々に通知領域Ｚが下方に移動していき、図２Ｃに示す状態で動画の表示が完了することで通知領域Ｚの全体が表示される。その後、一定期間後に通知領域Ｚが消去される。
【００３３】
本実施形態において通知領域は、案内内容を利用者に通知する機能を有するとともに、バックグラウンドでの動作によって通知領域を表示させたプログラム（本例ではナビゲーションプログラム３０ｂ）をフォアグラウンドに遷移させる指示を受け付ける機能を有している。この機能を実現するため、動作制御部２１ｃは、制御部２０に、通知領域に対する操作が行われた場合に、第２プログラムをフォアグラウンドで動作させ、第１プログラムをバックグラウンドで動作させる。
【００３４】
すなわち、制御部２０は、動作制御部２１ｃの機能により、タッチパネルディスプレイ４０の出力信号に基づいて、通知領域に対する操作（タップ）が行われたか否かを判定する。通知領域に対する操作が行われた場合、制御部２０は、プログラム実行部２１ａに対して指示を行い、バックグラウンドで動作中の通知を行ったアプリケーションプラグラムをフォアグラウンドで動作させ、フォアグラウンドで動作中のアプリケーションプラグラムをバックグラウンドで動作させる。
【００３５】
例えば、図２Ｃに示す例において、通知領域Ｚに対する操作が行われると、バックグラウンドで動作していたナビゲーションプログラム３０ｂがフォアグラウンドでの動作に切り替えら得る。従って、タッチパネルディスプレイ４０上の表示内容は、図２Ｃに示す状態から、図２Ｂに示す状態に切り替わる。
【００３６】
本実施形態においては、以上のように、音楽再生プログラム３０ａとナビゲーションプログラム３０ｂとの動作がフォアグラウンド、バックグラウンドに切り替え可能である。そして、バックグラウンドで動作しているナビゲーションプログラム３０ｂによって案内が行われる場合、制御部２０は、フォアグラウンドで動作している音楽再生プログラム３０ａのユーザインタフェース上に通知領域を表示させる。
【００３７】
しかし、この通知領域には、ナビゲーションプログラム３０ｂをフォアグラウンドに遷移させる機能も備えられており、この機能が利用者の意図外に実行される場合がある。具体的には、本実施形態においては、第１プログラムである音楽再生プログラム３０ａに関する操作を行うボタン上に通知領域が表示される。図２Ａに示す例であれば、音楽再生プログラム３０ａのユーザインタフェース上には、音楽再生プログラム３０ａの機能を利用するための複数のボタンが設けられている。そして、本実施形態において、複数のボタンの一部においては、ボタンの表示位置と通知領域の表示位置とが重なっている。すなわち、メニューを表示させる指示を行うためのボタンＢ4と、前画面に戻るためのボタンＢ5とは図２Ａに示すように画面の上部に表示されており、通知領域Ｚは図２Ｃに示すように、これらのボタンと重なる位置に表示される。
【００３８】
従って、利用者がフォアグラウンドで動作している音楽再生プログラム３０ａのユーザインタフェース上で、ボタンＢ4またはボタンＢ5に対する操作を意図して操作を開始し、とボタンに対する操作の直前に通知領域Ｚが表示されると、利用者がそのまま通知領域に対して操作してしまうことがある。このような操作は、ボタンＢ4またはボタンＢ5に対する操作を意図していた利用者の意図に反する操作である。
【００３９】
そこで、本実施形態においては、このような利用者の意図外の操作が発生する可能性を低減するための構成が備えられている。判定部２１ｄは、通知領域に対する操作が利用者の意図外の操作であるか否かを判定する機能を制御部２０に実行させる。本実施形態において制御部２０は、判定部２１ｄの機能により、第２プログラムがフォアグラウンドで動作し、第１プログラムがバックグラウンドで動作する状態に遷移した後、既定期間以内に利用者の操作によって、第１プログラムがフォアグラウンドで動作し、第２プログラムがバックグラウンドで動作する状態に戻った場合に、通知領域に対する操作が利用者の意図外の操作であると判定する。
【００４０】
具体的には、制御部２０は、タッチパネルディスプレイ４０の出力信号に基づいて、通知領域に対する操作が行われ、当該操作に応じて第２プログラムであるナビゲーションプログラム３０ｂがフォアグラウンドで動作する状態（第１プログラムである音楽再生プログラム３０ａがバックグラウンドで動作する状態）に遷移したか否かを判定する。第２プログラムであるナビゲーションプログラム３０ｂがフォアグラウンドで動作する状態に遷移した場合、制御部２０は、遷移が行われた時刻を図示しないメモリに記録する。
【００４１】
さらに、制御部２０は、利用者がタッチパネルディスプレイ４０に対して操作を行った場合、タッチパネルディスプレイ４０の出力信号に基づいて、利用者が行った操作を特定する。そして、当該操作により、第１プログラムである音楽再生プログラム３０ａがフォアグラウンドで動作する状態（第２プログラムがバックグラウンドで動作する状態）に戻ったか否かを判定する。
【００４２】
第１プログラムである音楽再生プログラム３０ａがフォアグラウンドで動作する状態に戻った場合、制御部２０は、当該時刻を取得し、第１プログラムである音楽再生プログラム３０ａがバックグラウンドに遷移してからフォアグラウンドに戻るまでの期間を取得する。そして、当該期間が予め決められた既定期間（例えば、１秒、１．５秒、２秒等）以下である場合、制御部２０は、通知領域に対する操作が利用者の意図外の操作であると判定する。
【００４３】
通知領域に対する操作が利用者の意図外の操作である場合、制御部２０は、通知領域表示制御部２１ｂの機能により、後の通知の発生の際に、操作に応じて第２プログラムをフォアグラウンドで動作させ、第１プログラムをバックグラウンドで動作させる通知領域を表示させない。本実施形態においては、後の通知の発生の際に、通知案内を示す通知領域の表示を行わない。すなわち、通知領域の表示自体を行わないことにより、第１プログラムである音楽再生プログラム３０ａのユーザインタフェースに対する操作を意図した利用者が意図外に通知領域を操作することがないように構成されている。
【００４４】
なお、本実施形態において、ナビゲーションプログラム３０ｂの機能によって制御部２０が出力する案内は、階層構造を形成するようにして複数の種類に分類されている。そこで、本実施形態においては、通知領域に対する操作が利用者の意図外の操作である場合、同種の通知が後に発生した際に、同種の通知を行うための通知領域を表示しないように構成されている。本実施形態においては、小分類が同一である案内を同種の案内とみなす。
【００４５】
このため、通知領域に対する操作が利用者の意図外の操作である場合、制御部２０は、通知領域による通知内容を特定し、小分類の中のいずれの分類に該当するのかを特定する。そして、制御部２０は、以後、同一の小分類に属する案内内容の通知領域を表示させない。すなわち、同一の小分類に属する案内内容の案内が生じたとしても、制御部２０は、当該案内内容を通知するための通知領域を表示させない。
【００４６】
この構成によれば、例えば、図２Ｃに示す通知領域Ｚが表示された後、既定期間以内に図２Ａに示す音楽再生プログラム３０ａのユーザインタフェースに戻る操作が行われた場合、次に、同種の案内内容の案内タイミングになっても通知領域Ｚは表示されない。図２Ｃに示す通知領域Ｚにおいては、交差点での進行方向を示す案内が表示されている。従って、この場合であれば、以後、交差点での進行方向を示す他の案内、例えば、交差点での左折等の案内タイミングに達しても、通知領域Ｚは表示されない。従って、利用者は、図２Ａに示す音楽再生プログラム３０ａのユーザインタフェースを継続して使用することができる。
なお、この場合であっても、異なる種類の案内、例えば、経路に沿って進行するために走行すべき推奨車線を示す案内を行うべき案内タイミングにおいては、当該案内を行うための通知領域が表示される。この構成によれば、利用者が煩わしいと感じている可能性が高い通知は表示させないようにすることができ、煩わしいと感じているか否か不明である通知は表示させることができる。以上のような本実施形態によれば、利用者の意図に反してフォアグラウンドで動作するプログラムが切り替えられる可能性を低減することができる。
【００４７】
（２）表示制御処理： 
次に、上述の構成における表示制御処理を詳細に説明する。図３は、表示制御処理を示すフローチャートである。制御部２０は、プログラム実行部２１ａの機能により、利用者が実行指示したプログラムを起動する。利用者が、第１プログラムと第２プログラムとの双方について実行指示し、両プログラムの並列処理が行われると、制御部２０は、表示制御処理を開始する。ここでは、上述の例と同様に第１プログラムが音楽再生プログラム３０ａ、第２プログラムがナビゲーションプログラム３０ｂである場合を例にして説明する。
【００４８】
表示制御処理が開始されると、制御部２０は、ナビゲーションプログラム３０ｂがバックグラウンドで動作しているか否かを判定する（ステップＳ１００）。すなわち、制御部２０は、並列的に実行している各プログラムの中の１個をフォアグラウンドで動作させ、他のプログラムをバックグラウンドで動作させる。制御部２０は、このようにして動作を区別している各プログラムについて、フォアグラウンド、バックグラウンドのいずれで動作しているのか特定することができる。そこで、制御部２０は、ナビゲーションプログラム３０ｂがバックグラウンドで動作しているか否か判定する。
【００４９】
ステップＳ１００において、ナビゲーションプログラム３０ｂがバックグラウンドで動作していると判定されない場合、制御部２０は、ステップＳ１００の処理を繰り返す。一方、ステップＳ１００において、ナビゲーションプログラム３０ｂがバックグラウンドで動作していると判定された場合、制御部２０は、通知領域表示制御部２１ｂの機能により、案内タイミングであるか否かを判定する（ステップＳ１０５）。すなわち、制御部２０は、ナビゲーションプログラム３０ｂによる案内タイミングになったか否か判定する。ステップＳ１０５において、案内タイミングになったと判定されない場合、制御部２０は、ステップＳ１００以降の処理を繰り返す。以上の処理により、制御部２０は、例えば、図２Ａに示すような音楽再生プログラム３０ａのユーザインタフェースを表示させた状態で、案内タイミングになるまで待機する状態になる。
【００５０】
一方、ステップＳ１０５において、案内タイミングになったと判定された場合、制御部２０は、通知領域表示制御部２１ｂの機能により、通知領域を表示させる（ステップＳ１１０）。制御部２０は、案内内容を示す情報（画像や文字等）を表示するための既定の大きさの通知領域を描画する。そして、制御部２０は、タッチパネルディスプレイ４０を制御し、フォアグラウンドで動作している第１プログラムである音楽再生プログラム３０ａのユーザインタフェース上に通知領域を表示させる。この結果、図２Ｃに示す通知領域Ｚが表示される。
【００５１】
次に、制御部２０は、動作制御部２１ｃの機能により、通知領域に対して操作されたか否かを判定する（ステップＳ１１５）。すなわち、制御部２０は、通知領域を一定期間表示し続け、一定期間が経過した後に消去する処理を実行しながら、タッチパネルディスプレイ４０から通知領域に対する操作を示す出力信号が出力されたか否かを判定する。一定期間経過するまで通知領域に対する操作が行われない場合、制御部２０は、ステップＳ１００以降の処理を繰り返す。
【００５２】
一方、ステップＳ１１５において、通知領域に対して操作されたと判定された場合、制御部２０は、動作制御部２１ｃの機能により、ナビゲーションプログラムをフォアグラウンドへ遷移させる（ステップＳ１２０）。すなわち、制御部２０は、第１プログラムである音楽再生プログラム３０ａをバックグラウンドで動作させ、第２プログラムであるナビゲーションプログラム３０ｂをフォアグラウンドで動作させる。この結果、例えば、図２Ｃに示すような画面は、図２Ｂに示す画面に遷移する。
【００５３】
次に、制御部２０は、判定部２１ｄの機能により、既定期間以内に第１プログラムがフォアグラウンドへ遷移したか否か判定する（ステップＳ１２５）。すなわち、制御部２０は、利用者がタッチパネルディスプレイ４０に対して操作し、第１プログラムである音楽再生プログラム３０ａがフォアグラウンドで動作する状態（第２プログラムがバックグラウンドで動作する状態）に戻ったか否かを判定する。
【００５４】
ステップＳ１２５において、既定期間以内に第１プログラムがフォアグラウンドへ遷移したと判定されない場合、制御部２０は、ステップＳ１００以降の処理を繰り返す。一方、ステップＳ１２５において、既定期間以内に第１プログラムがフォアグラウンドへ遷移したと判定された場合、制御部２０は、通知領域表示制御部２１ｂの機能により、同種の通知内容を通知する通知領域を表示しないように設定する（ステップＳ１３０）。すなわち、制御部２０は、通知領域による通知内容を特定し、小分類の中のいずれの分類に該当するのかを特定する。そして、制御部２０は、以後、同一の小分類に属する案内内容の通知領域を表示させないように設定する。この結果、利用者が通知領域に対して操作することによってナビゲーションプログラム３０ｂがフォアグラウンドに遷移したが、すぐに音楽再生プログラム３０ａがフォアグラウンドに遷移した場合には、以後、利用者が操作した通知領域の通知内容と同種の内容の通知は行われなくなる。なお、この場合であっても、利用者が、設定を変更するなどして、再度同種の案内内容を通知する通知領域を表示可能にすることは可能である。
【００５５】
（３）他の実施形態：
以上の実施形態は本発明を実施するための一例であり、通知領域に対する操作が利用者の意図外の操作であった場合、後の通知の発生の際に、通知領域の操作に伴うプログラムのフォアグラウンドへの切り替えを発生させない限りにおいて、他にも種々の実施形態を採用可能である。例えば、表示制御システムは、各種のシステム、汎用コンピュータシステム、ナビゲーションシステム等に適用されていても良い。また、表示制御システムは、複数の装置（例えば、クライアントとサーバ）によって実現されるシステムであっても良い。
【００５６】
さらに、表示制御システムを構成するプログラム実行部２１ａ、通知領域表示制御部２１ｂ、動作制御部２１ｃ、判定部２１ｄの少なくとも一部が複数の装置に分かれて存在していても良い。例えば、通知領域表示制御部２１ｂ、動作制御部２１ｃ、判定部２１ｄの少なくとも一部がタッチパネルディスプレイ４０内の制御部で実現されても良い。むろん、上述の実施形態の一部が省略された構成や、処理の順序が変動または省略された構成が実現される場合もある。
【００５７】
プログラム実行部は、第１プログラムと第２プログラムとの一方をフォアグラウンドで動作させ、他方をバックグラウンドで動作させることができればよい。すなわち、プログラム実行部は、複数のプログラムを並列処理によって実行可能である。フォアグラウンドでの動作は、例えば、プログラムによる通常のユーザインタフェースがディスプレイ上に表示されている（または、画面オフからオンへの復帰の際に最初に表示される）状態である。バックグラウンドでの動作は、プログラムによる通常のユーザインタフェースがディスプレイ上に表示されていない状態である。
【００５８】
むろん、バックグラウンドで動作しているプログラムの簡易的なユーザインタフェースがディスプレイ上に表示されても良い。すなわち、フォアグラウンドで動作するプログラムのユーザインタフェースが画面内の主要な部分に表示され、バックグラウンドで動作するプログラムのユーザインタフェースが画面の一部分に表示される構成等であってもよい。また、フォアグラウンドでの動作とバックグラウンドでの動作においては、表示内容以外にも種々の要素が変化して良い。例えば、フォアグラウンドでの動作とバックグラウンドでの動作とでは、プログラムを並列処理で実行する際の優先度が変わっても良いし、バックグラウンドにおいてはフォアグラウンドで動作している際に実行される機能の一部を停止させても良い。
【００５９】
第１プログラムと第２プログラムは、種々のプログラムであって良く、上述の実施形態のように、第１プログラムが音楽再生プログラム、第２プログラムがナビゲーションプログラムである構成に限定されない。例えば、第１プログラムおよび第２プログラムは、音楽再生プログラム、ナビゲーションプログラム、ウェブサイト閲覧プログラム、地図表示プログラム、ソーシャルネットワーキングサービスプログラムなど、任意のプログラムの一つであってよい。
【００６０】
通知領域表示制御部は、バックグラウンドで動作する第２プログラムの機能によって利用者に対して通知を行う場合に、フォアグラウンドで動作する第１プログラムのユーザインタフェース上に通知内容を示す通知領域を表示させる機能を有する。すなわち、第２プログラムがバックグラウンドで動作している場合、ディスプレイ上にはフォアグラウンドで動作している第１プログラムのユーザインタフェースが主に表示される。従って、第２プログラムの機能によって利用者に対して通知を行うために、第２プログラムがフォアグラウンドで動作している状態と同じユーザインタフェースをディスプレイに表示して利用者に通知することはできない。
【００６１】
そこで、通知領域表示制御部は、第２プログラムの機能によって利用者に対して通知を行う場合、第１プログラムのユーザインタフェース上に通知領域を表示させる。通知領域の表示態様は種々の態様であって良く、上述の実施形態ように、画面の上端から下方に向けてスライドしながら現れる通知領域に限定されない。例えば、通知領域は、画面の任意の位置にポップアップ表示されても良いし、第１プログラムのユーザインタフェースの一部が通知領域に変化しても良く、種々の構成を採用可能である。むろん、通知領域は、一定期間経過後などの、既定のトリガに応じて表示が消去されて良い。
【００６２】
動作制御部は、通知領域に対する操作が行われた場合に、第２プログラムをフォアグラウンドで動作させ、第１プログラムをバックグラウンドで動作させる機能を有していればよい。すなわち、通知領域表示制御部による制限が行われる前においては、通知領域に対する操作が第２プログラムをフォアグラウンドに遷移させる指示とみなされる。従って、利用者は、通知領域に表示された通知内容に基づいて、第２プログラムの機能を利用したいか否か判断し、利用する際には通知領域への操作で第２プログラムをフォアグラウンドに遷移させることができる。むろん、フォアグラウンドとバックグラウンドとの切り替えは、他のユーザインタフェース、例えば、ディスプレイ上に固定的に表示されたボタン等によって切り替え可能であって良い。
【００６３】
通知領域に対する操作は、上述の実施形態のように通知領域に対するタップ操作である構成に限定されない。例えば、ポインタやカーソル等の指示オブジェクトが通知領域を指示している状態でのキーボードでの決定操作やマウスでのクリック操作が行われた場合に、通知領域に対する操作が行われたとみなされる構成等であっても良い。
【００６４】
判定部は、通知領域に対する操作が利用者の意図外の操作であるか否かを判定することができればよい。すなわち、通知領域は、第１プログラムのユーザインタフェース上に表示されるため、利用者が第１プログラムのユーザインタフェースに対する操作を行おうとしている場面で通知領域が表示されると、利用者の意図外の操作が発生し得る。意図外の操作であるか否かは、種々の手法で判定されて良く、例えば、通知領域に対する操作に応じてフォアグラウンドに遷移した第２プログラムの機能が利用者によって利用されなかった場合に意図外の操作が行われたとみなす構成を採用可能である。
【００６５】
従って、上述の実施形態のように、第２プログラムがフォアグラウンドに遷移した後、既定期間内に再度第１プログラムがフォアグラウンドに遷移した場合に意図外とみなす構成以外にも種々の構成を採用可能である。例えば、第２プログラムがフォアグラウンドで動作し、第１プログラムがバックグラウンドで動作する状態に遷移した後、利用者が第２プログラムに関する操作を行うことなく、第１プログラムがフォアグラウンドで動作し、第２プログラムがバックグラウンドで動作する状態に戻った場合に、判定部が、通知領域に対する操作が利用者の意図外の操作であると判定する構成であっても良い。
【００６６】
すなわち、上述の図１に示す構成において、第２プログラムがフォアグラウンドで動作する状態において、利用者が第２プログラムに関する操作を行うことなく、第１プログラムがフォアグラウンドで動作する状態に遷移した場合、通知領域に対する操作が利用者の意図外の操作であると、制御部２０が判定しても良い。この構成によれば、意図外であったが、利用者がすぐに元に戻るための操作を行わなかった場合や操作を行えなかった場合であっても、利用者の意図を判定することができる。
【００６７】
さらに、利用者の意図外の操作が発生し得る場面を限定しても良い。例えば、判定部は、利用者が第１プログラムのユーザインタフェースに対して操作を行っている場合に表示された通知領域に対する操作が利用者の意図外の操作であるか否かを判定してもよい。すなわち、第１プログラムのユーザインタフェースに対して操作を行っている場合、多くの利用者は第１プログラムの機能を使用している。従って、通知領域への操作に応じて第２プログラムに遷移した場合、利用者が第１プログラムの機能を使用していない場合よりも、利用者の意図外の操作が発生している可能性が高い。そこで、第１プログラムのユーザインタフェースに対して操作を行っている場合に表示された通知領域に対する操作が利用者の意図外の操作であるか否か判定する構成とすれば、意図外の操作が発生した可能性が高い場面で当該操作が意図外であるか否かを判定することができる。
【００６８】
さらに、判定部は、表示制御システムが車両内で使用されている状態で表示された通知領域に対する操作が利用者の意図外の操作であるか否かを判定する構成であっても良い。すなわち、車両内で表示制御システム等の端末を操作する場合、車両の振動や利用者の視線方向が車両前方であること等の原因により、利用者が通知領域に対して正確に操作できない場合がある。このため、車両内で使用される場合、利用者の意図外の操作が発生しやすい。そこで、表示制御システムが車両内で使用されている状態で表示された通知領域に対する操作が利用者の意図外の操作であるか否かを判定する構成とすれば、意図外の操作が発生した可能性が高い場面で当該操作が意図外であるか否かを判定することができる。
【００６９】
さらに、通知領域に対する操作が利用者の意図外の操作である場合、通知領域表示制御部は、後の通知の発生の際に、操作に応じて第２プログラムをフォアグラウンドで動作させ、第１プログラムをバックグラウンドで動作させる通知領域を表示させないように制御できれば良い。このような制御は、上述の実施形態のように、利用者の意図外の操作が行われた通知領域での通知内容と同種の通知内容を通知する表示領域を表示しないように設定する構成以外にも種々の構成を採用可能である。例えば、通知内容を示す通知領域を表示するが通知領域に対する操作は受け付けられず、操作が行われても第２プログラムをフォアグラウンドに遷移させないような構成であっても良いし、表示領域を表示する案内を行わず音声による案内を行う構成であっても良く、種々の構成を採用可能である。
【００７０】
さらに、通知領域に対する操作が利用者の意図外の操作であった場合、後の通知の発生の際に、通知領域の操作に伴うプログラムのフォアグラウンドへの切り替えを発生させない手法は、プログラムや方法としても適用可能である。また、以上のようなシステム、プログラム、方法は、単独の装置として実現される場合もあれば、車両に備えられる各部と共有の部品を利用して実現される場合もあり、各種の態様を含むものである。また、一部がソフトウェアであり一部がハードウェアであったりするなど、適宜、変更可能である。さらに、装置を制御するプログラムの記録媒体としても発明は成立する。むろん、そのソフトウェアの記録媒体は、磁気記録媒体であってもよいし半導体メモリであってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。
【符号の説明】
【００７１】
１０…携帯端末、２０…制御部、２１…表示制御プログラム、２１ａ…プログラム実行部、２１ｂ…通知領域表示制御部、２１ｃ…動作制御部、２１ｄ…判定部、３０…記録媒体、３０ａ…音楽再生プログラム、３０ａ１…音楽ファイル、３０ｂ…ナビゲーションプログラム、３０ｂ１…地図情報、４０…タッチパネルディスプレイ、４１…ＧＮＳＳ受信部、４２…通信部
【図１】
2020140420.tif 000003
【図２】
2020140420.tif 000004
【図３】
2020140420.tif 000005