JP6848355B2 - 画像形成装置 - Google Patents

画像形成装置 Download PDF

Info

Publication number
JP6848355B2
JP6848355B2 JP2016216260A JP2016216260A JP6848355B2 JP 6848355 B2 JP6848355 B2 JP 6848355B2 JP 2016216260 A JP2016216260 A JP 2016216260A JP 2016216260 A JP2016216260 A JP 2016216260A JP 6848355 B2 JP6848355 B2 JP 6848355B2
Authority
JP
Japan
Prior art keywords
browser
browser application
application
image forming
cpu
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016216260A
Other languages
English (en)
Other versions
JP2018073347A (ja
Inventor
一樹 原田
一樹 原田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2016216260A priority Critical patent/JP6848355B2/ja
Publication of JP2018073347A publication Critical patent/JP2018073347A/ja
Application granted granted Critical
Publication of JP6848355B2 publication Critical patent/JP6848355B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Retry When Errors Occur (AREA)
  • Digital Computer Display Output (AREA)

Description

この開示は、画像形成装置に関し、より特定的には、画像形成装置に搭載されるブラウザアプリケーションの制御に関する。
近年の画像形成装置は、ブラウザアプリケーション(以下、「ブラウザアプリ」とも称する)を実行して、画像形成装置がクライアント端末として機能することがある。この場合、画像形成装置は、外部のサーバ装置から送信されるコンテンツを、ディスプレイに表示する。
このような画像形成装置において、ブラウザアプリがフリーズするなどの不具合が発生すると、ブラウジングのみならず、画像形成装置そのものが一時的に使用できなくなる可能性がある。
上記の問題に対し、特開2012−066453号公報(特許文献1)は、「エラー状態を検知した際に、サーバより提供されてブラウザにより表示部に表示されている操作画面1201に代えて、エラー状態に応じた画面1203を新規タブで表示し、検知手段がエラー解除を検知した際に、表示部に表示されている画面1203からRAM等に管理されている元の操作画面1201に切り替える」技術を開示している(「要約」参照)。
一方、画像形成装置に限らずブラウザを制御する技術として、特開2010−049582号公報(特許文献2)は、「導入仲介部によってマスタとなるアプリケーションに対する操作入力をスレーブ側に通知し、同期する処理が可能なアプリケーション切換実行装置」を開示している。さらに、このアプリケーション切替実行装置は、「マスタとなるアプリケーションにエラーが発生した場合に、円滑にスレーブのアプリケーションに切り換える」ように構成されている(「要約」参照)。
特開2012−066453号公報 特開2010−049582号公報
特許文献1に開示される技術は、ブラウザアプリのタグ機能を利用して、エラー状態に応じた画面を表示するものであって、ブラウザアプリそのものがエラーにより動作不能となった場合の制御に関するものではない。
また、特許文献2に開示される技術は、Webアプリケーションと同じソースコードのOSで起動するアプリケーション(ソフト)をダウンロードして、これらのアプリケーションを並行処理するものである。このような技術は、豊富なストレージ容量とメモリ機能とを有するパソコン上で実行されることを想定している。そして、画像形成装置は、製造コストの問題から、一般的に限られたストレージ容量とメモリ機能としか有しておらず、この技術をそのまま転用することは難しい。したがって、ブラウザアプリの不具合が生じた場合のユーザの負担を軽減する画像形成装置が必要とされている。
本開示は、上記のような問題を解決するためになされたものであって、ある局面における目的は、ブラウザアプリの不具合が生じた場合であっても、ユーザが継続して操作を行なうことができる画像形成装置を提供することである。他の局面における目的は、ブラウザアプリの不具合が生じた場合に、不具合が生じるまでにユーザが操作した内容を、ユーザが継続して利用できる画像形成装置を提供することである。
ある実施形態に従う画像形成装置は、画像形成のための操作画面を含む画像を表示するための表示装置と、入力装置と、第1および第2のブラウザアプリケーションプログラムを含む複数のブラウザアプリケーションを格納するための記憶装置と、複数のブラウザアプリケーションを実行可能に構成される制御装置とを備える。複数のブラウザアプリケーションの各々は、表示装置に対応するブラウザを表示した状態で、入力装置を介してユーザ操作を受け付け可能に構成される。制御装置は、記憶装置に格納された第1のブラウザアプリケーションに基づく第1ブラウザを表示装置に表示し、第1のブラウザアプリケーションに対して受け付けたユーザ操作を示す操作情報を記憶装置に記憶し、第1のブラウザアプリケーションの不具合が検知された場合に、第1ブラウザに替えて、第2のブラウザアプリケーションに基づく第2ブラウザを、記憶装置に記憶された操作情報に基づいてユーザ操作を反映した状態で表示装置に表示する。
好ましくは、制御装置は、第1のブラウザアプリケーションで利用するコンテンツのアドレス情報、第1ブラウザ上で選択された操作を示す情報、第1ブラウザ上で選択された位置を示す座標情報、および第1ブラウザ上で入力された文字情報のうち少なくともいずれかの情報を、第1のブラウザアプリケーションに対して受け付けたユーザ操作を示す操作情報として記憶装置に記憶するように構成される。
好ましくは、制御装置は、第1のブラウザアプリケーションに基づく第1ブラウザを表示装置に表示している間に、第2のブラウザアプリケーションも実行し、第1のブラウザアプリケーションに対するユーザ操作を受け付けた場合に、当該ユーザ操作を反映させた後の第1のブラウザアプリケーションが正常に動作していると判断した後に、当該ユーザ操作を第2のブラウザアプリケーションにも反映させる。
好ましくは、画像形成装置は、サーバ装置と通信するための通信インターフェイスをさらに備える。複数のブラウザアプリケーションの各々は、入力装置が受け付けたユーザ操作を示す操作情報をサーバ装置に送信し、サーバ装置から操作情報に対応するコンテンツを受信して、受信したコンテンツを表示装置に表示するように構成される。制御装置は、第1のブラウザアプリケーションに基づく第1ブラウザを表示装置に表示し、かつ、第2のブラウザアプリケーションを実行している状態において、入力装置からユーザ操作を受け付けた場合に、第1のブラウザアプリケーションによってユーザ操作を示す操作情報をサーバ装置に送信し、第2のブラウザアプリケーションによるユーザ操作を示す操作情報のサーバ装置への送信を制限する。
好ましくは、制御装置は、第1のブラウザアプリケーションの不具合が検知されたことに応じて第1ブラウザに替えて第2ブラウザを表示装置に表示した後に、第1のブラウザアプリケーションを初期化する。
好ましくは、第1のブラウザアプリケーションの種類と第2のブラウザアプリケーションの種類とは、同じである。
さらに好ましくは、制御装置は、第1のブラウザアプリケーションの不具合が検知されたことに応じて第1ブラウザに替えて第2ブラウザを表示装置に表示した後に、第2のブラウザアプリケーションに対して、第1のブラウザアプリケーションの不具合を引き起こしたユーザ操作を再び受け付けた場合に、表示装置に不具合が発生する旨を警告するメッセージを表示する。
好ましくは、制御装置は、第1のブラウザアプリケーションの不具合が検知されたことに応じて第1ブラウザに替えて第2ブラウザを表示装置に表示した後に、第2のブラウザアプリケーションに対して、第1のブラウザアプリケーションの不具合を引き起こしたユーザ操作を再び受け付けた場合に、第2ブラウザに替えて第1および第2のブラウザアプリケーションとは種類の異なる第3のブラウザアプリケーションに基づく第3ブラウザを表示装置に表示する。
さらに好ましくは、複数のブラウザアプリケーションは、第1および第2のブラウザアプリケーションの種類とは異なる種類の第3のブラウザアプリケーションをさらに含む。制御装置は、第1のブラウザアプリケーションの不具合を検知したことに応じて第1ブラウザに替えて第2ブラウザを表示装置に表示した後に、予め定められた条件を満たす前に第2のブラウザアプリケーションの不具合が検知された場合に、第2ブラウザに替えて第3のブラウザアプリケーションに基づく第3ブラウザを表示装置に表示する。
さらに好ましくは、予め定められた条件は、第2ブラウザを表示装置に表示してから予め定められた時間を経過すること、および第2ブラウザを表示装置に表示してから予め定められた回数のユーザ操作を入力装置が受け付けたこと、のうち少なくともいずれかを含む。
さらに好ましくは、複数のブラウザアプリケーションは、第1および第2のブラウザアプリケーションの種類とは異なる種類の第3のブラウザアプリケーションをさらに含む。制御装置は、同一のユーザ操作に対して第1および第2のブラウザアプリケーションの不具合が検知された回数の総和が予め定められた回数に到達した場合に、第3のブラウザアプリケーションに基づく第3ブラウザを表示装置に表示する。
好ましくは、第1のブラウザアプリケーションの種類と第2のブラウザアプリケーションの種類とは、異なる。
好ましくは、制御装置は、第1のブラウザアプリケーションの不具合が検知された場合に、ユーザから第1のブラウザアプリケーションを除く複数のブラウザアプリケーションのうち一のブラウザアプリケーションの選択を受け付け、第1ブラウザに替えて、選択された一のブラウザアプリケーションに基づくブラウザを、記憶装置に記憶された操作情報に基づいてユーザ操作を反映した状態で表示装置に表示する。
さらに好ましくは、制御装置は、第1ブラウザ上で選択された位置を示す座標情報を、第1のブラウザアプリケーションに対して入力装置が受け付けたユーザ操作を示す操作情報として記憶装置に記憶し、第1のブラウザアプリケーションの不具合を検知した場合に、第1のブラウザアプリケーションの種類と、選択された一のブラウザアプリケーションの種類とが同じであるか否かを判断し、第1のブラウザアプリケーションの種類と、選択された一のブラウザアプリケーションの種類とが異なると判断した場合に、第1ブラウザで表示されるコンテンツの配置位置と、一のブラウザアプリケーションに基づくブラウザで表示されるコンテンツの配置位置とに基づいて、第1ブラウザ上で選択された位置を示す座標情報を補正して、第1ブラウザに替えて、一のブラウザアプリケーションに基づくブラウザを、補正後の座標情報を反映した状態で表示装置に表示する。
ある実施形態に従う画像形成装置は、ブラウザアプリの不具合が生じた場合であっても、ユーザの操作を継続して受け付けることができる。そのため、この画像形成装置は、ユーザの作業が中断されることを抑制し得る。
開示された技術的特徴の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解されるこの発明に関する次の詳細な説明から明らかとなるであろう。
実施形態に従う画像形成装置の構成および制御の概要を説明する図である。 ある実施形態に従う画像形成装置の構成例について説明する図である。 実施形態に従う制御装置のハードウェア構成および記憶装置のデータ構造を説明する図である。 ある実施形態に従う、サブブラウザアプリの制御について説明する図である。 ある実施形態に従うブラウザアプリの切替制御について説明するフローチャートである。 図5のブラウザ切替処理を説明するフローチャートである。 ある局面に従うブラウザアプリの切替処理について説明する図である。 図6のサブブラウザアプリに切り替わったブラウザアプリの処理を説明するフローチャートである。 ある局面に従うブラウザアプリの切替処理について説明する図である。 図9のステップS940〜ステップS960の処理を説明する図である。 図8のサブブラウザアプリへのユーザ操作の反映処理を説明するフローチャートである。 ある実施形態に従う座標情報の補正処理について説明する図である。 ある実施形態に従うブラウザアプリの不具合の検知処理、および不具合の警告処理について説明するフローチャートである。
以下、この技術的思想の実施形態について図面を参照しながら詳細に説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
[技術思想]
図1は、実施形態に従う画像形成装置200の構成および制御の概要を説明する図である。図1の分図(A)を参照して、画像形成装置200は、主な構成要素として、制御装置210と、記憶装置230と、操作パネル260とを有する。記憶装置230は、ブラウザアプリ100Aと、ブラウザアプリ100Bとが格納される。操作パネル260は、ディスプレイ(表示装置)と、ユーザ操作を受け付けるためのタッチパネル(入力装置)とを含む。
制御装置210は、ブラウザアプリ100Aまたはブラウザアプリ100Bを実行して、操作パネル260に対応するブラウザウィンドウを表示する。また、制御装置210は、ブラウザに対するユーザ操作を示す情報(以下、「操作情報」とも称する)を外部サーバ(不図示)に送信し、当該外部サーバから受信したコンテンツをブラウザウィンドウの中に表示する。ある局面において、ユーザは、操作パネル260を用いて操作情報を制御装置210に入力する。
分図(B)は、ある局面に従う操作パネル260の表示内容および制御装置210による制御を説明する図である。分図(B)を参照して、ある局面において、制御装置210は、ブラウザアプリ100Aを実行して、ブラウザアプリ100Aに対応するブラウザウィンドウ(100A)を表示している。このブラウザウィンドウ(100A)には、文字入力フォーム110と、チェックボックス120と、ボタン130とが表示されている。分図(B)に示される例において、ユーザは、文字入力フォーム110に「あいうえお」と入力し、チェックボックス120を有効化している。制御装置210は、このような、ブラウザアプリに対して受け付けたユーザ操作を示す情報(以下、「操作情報」とも称する)を記憶装置230に格納する。
一例として、分図(B)に示される状態において、ユーザがボタン130を押下した結果、外部サーバから受信したコンテンツにブラウザアプリ100Aが対応しておらず、ブラウザアプリ100Aがエラー状態(ユーザが操作不能な状態)になったとする。
制御装置210は、ブラウザアプリ100Aの不具合(エラー状態)を検知すると、ブラウザウィンドウ(100A)に替えて、ブラウザアプリ100Bに対応するブラウザウィンドウ(100B)を操作パネル260のディスプレイに表示する。
さらに、制御装置210は、記憶装置230に格納される操作情報をブラウザアプリ100Bに反映する。その結果、ブラウザウィンドウ(100B)には、「あいうえお」の文字が入力された文字入力フォーム160と、有効化されたチェックボックス170と、ボタン180とが表示される。文字入力フォーム160、チェックボックス170、ボタン180は、文字入力フォーム110、チェックボックス120、ボタン130にそれぞれ対応する。
上記によれば、画像形成装置200は、操作パネル260に表示されるブラウザウィンドウに対応するブラウザアプリの不具合を検知した場合に、当該ブラウザアプリとは異なる他のブラウザアプリに対応するブラウザウィンドウを操作パネル260に表示する。これにより、ユーザは、継続して画像形成装置200の操作を実行できる。
また、画像形成装置200は、不具合が生じるまでにユーザが操作した内容を、切替後のブラウザウィンドウに反映する。そのため、ユーザは、不具合が生じるまでに操作した内容を、再び行なうといった手間が省ける。
また、一般的に画像形成装置の操作画面は、ファームウェアに組み込んだ構成を採用している。このような画像形成装置は、操作画面の修正や更新を行なう場合、ファームウェアをアップデートする必要があり、開発コストやユーザ負担が大きかった。このような問題に対し、実施形態に従う画像形成装置200は、操作画面をウェブコンテンツとして外部サーバから提供され得る。これにより、画像形成装置200の製造者または開発者は、操作画面の開発コストの低減、およびサービス提供のスピードを向上し得る。以下、このような画像形成装置の構成および制御の詳細について説明する。
[実施形態]
(画像形成装置200)
図2は、ある実施形態に従う画像形成装置200の構成例について説明する図である。図2を参照して、画像形成装置200は、制御装置210と、通信インターフェイス(I/F)220と、記憶装置230と、給紙カセット235と、搬送経路240と、プリントエンジン250と、排紙トレイ255と、操作パネル260と、スキャナ265と、ADF(Auto Document Feeder)270とを備える。
制御装置210は、画像形成装置200の動作を制御する。通信インターフェイス220は、外部の外部装置290と通信可能に構成される。通信インターフェイス220は、一例として、無線LAN(Local Area Network)カードであるとする。画像形成装置200は、通信インターフェイス220を介してLANまたはWAN(Wide Area Network)に接続された外部装置290と通信する。
ある局面において、制御装置210は、操作情報を外部装置290に送信し、外部装置290から操作情報に対応するコンテンツを受信する。制御装置210は、受信したコンテンツを操作パネル260に表示する。
記憶装置230は、制御装置210が実行するための各種制御プログラムなどを格納する。記憶装置230に格納されるデータの詳細は、図3を用いて後述される。
給紙カセット235は、印刷ジョブの入力に応答して、自身に積載される用紙を、1番上のものから1枚ずつ搬送経路240へと送り出す。プリントエンジン250は、画像形成装置200に入力される画像データ、およびスキャナ265で取り込んだ画像を用紙に形成した後に、排紙トレイ255に用紙を排紙する。
操作パネル260は、ユーザが画像形成装置200を操作するための入力を受け付ける。一例として、操作パネル260は、タッチパネルおよび液晶ディスプレイを有する画面と、物理ボタンとから構成される。画像形成装置200を操作するための操作画面が、操作パネル260のディスプレイに表示される。
スキャナ265は、プランテンガラス上に載置された原稿を読み取り、制御装置210に出力する。ADF270は、スキャナ265に向けて原稿を1枚ずつ自動的に搬送する。
(制御装置210のハードウェア構成)
図3は、実施形態に従う制御装置210のハードウェア構成および記憶装置230のデータ構造を説明する図である。図3を参照して、制御装置210は、CPU(Central Processor Unit)310と、RAM(Random Access Memory)320と、ROM(Read Only Memory)330と、インターフェイス(I/F)340と、第1VRAM(Video Random Access Memory)350と、第2VRAM355とを有する。
CPU310は、記憶装置230に格納される各種制御プログラムを読み出して実行することで、画像形成装置200の動作を制御する。
RAM320は、典型的には、DRAM(Dynamic Random Access Memory)などであり、CPU310がプログラムを動作するために必要なデータや画像データを一時的に記憶する。したがって、RAM320は、いわゆるワーキングメモリとして機能する。
ROM330は、典型的には、フラッシュメモリなどであり、CPU310で実行されるプログラムや、画像形成装置200の動作にかかる各種設定情報を記憶する。
I/F340は、通信I/F220と、プリントエンジン250と、操作パネル260と、記憶装置230とそれぞれ信号を送受信する。I/F340は、USB(Universal Serial Bus)、DVI(Digital Visual Interface)、HDMI(登録商標)(High-Definition Multimedia Interface)、RS−232Cその他の端子を用いて実現される。なお、I/F340は上述のものに限られない。
(記憶装置230のデータ構造)
記憶装置230には、ブラウザアプリ100A−1と、ブラウザアプリ100A−2と、ブラウザアプリ100Bと、操作記憶部360と、ブラウザ切替アプリケーション(以下、「ブラウザ切替アプリ」とも称する)370と、画面コンテンツDB(データベース)390とを有する。
ブラウザアプリ100A−1、100A−2、および100Bは、操作パネル260が受け付けた、自身のブラウザアプリに対するユーザ操作を示す操作情報を外部装置290に送信するように構成される。さらに、これらのブラウザアプリは、外部装置290から受信した操作情報に対応するコンテンツ(例えば、操作画面、動画など)を操作パネル260のブラウザウィンドウに表示するように構成される。
ブラウザアプリ100A−1の種類とブラウザアプリ100A−2の種類とは同じものとする。ここでいうブラウザアプリの種類とは、例えば、バージョン、エンジン、製品名などを表す。また、ブラウザアプリ100A−1、100A−2の種類と、ブラウザアプリ100Bの種類とは異なるものとする。また、ある局面において、ブラウザアプリ100A-1、100A−2、および100Bは、いずれも共通するOS(Operating System)上で動作するものとする。
ある局面において、制御装置210のCPU310は、上記複数のブラウザアプリのうち1のブラウザアプリを実行して、当該ブラウザアプリに対応する画面情報(ブラウザウィンドウ)を第1VRAM350に展開する。また、CPU310は、第1VRAM350に展開された画面情報を操作パネル260のディスプレイに表示する。これにより、ユーザは、当該1のブラウザアプリに対する操作を操作パネル260に入力できる。以下、ユーザが操作可能な状態にあるブラウザアプリを、「メインブラウザアプリ」とも称する。
CPU310は、メインブラウザアプリを実行するとともに、メインブラウザアプリとは異なるサブブラウザアプリも実行し得る。サブブラウザアプリとは、CPU310によって実行はされているものの、ユーザが操作可能な状態にないブラウザアプリのことをいう。CPU310は、サブブラウザアプリに対応する画面情報を第2VRAM355に展開する。
操作記憶部360は、メインブラウザアプリに対するユーザ操作を示す操作情報を記憶する。ブラウザ切替アプリ370は、メインブラウザアプリの不具合を検知した場合に、メインブラウザアプリと、他のブラウザアプリ(例えば、サブブラウザアプリ)とを切り替える。画面コンテンツDB390は、各ブラウザアプリで動作するコンテンツを保持する。
(サブブラウザアプリの制御)
図4は、ある実施形態に従う、サブブラウザアプリの制御について説明する図である。図4に示される例において、制御装置210のCPU310は、ブラウザアプリ100A−1をメインブラウザアプリとして、ブラウザアプリ100A−2をサブブラウザアプリとしてそれぞれ同時に実行している。
ブラウザアプリ100A−1に対応するブラウザウィンドウ(100A−1)、換言すれば操作パネル260には、文字入力フォーム410、チェックボックス420、およびボタン430,440が表示されている。ユーザは、文字入力フォーム410に「あいうえお」と入力し、チェックボックス420を有効化している。ボタン430,440には、URL(Uniform Resource Locator)が関連付けられている。
ある局面において、CPU310は、ユーザがボタン430,440を押下したことを検知すると、当該ボタンに関連付けられたURLを外部装置290に送信する。外部装置290は、受信したURLに対応するコンテンツを画像形成装置200に送信する。したがって、このURLは、コンテンツのアドレス情報として機能する。
CPU310は、メインブラウザアプリであるブラウザアプリ100A−1に対するユーザ操作を受け付けると、当該ユーザ操作を示す操作情報を操作記憶部360に格納する。操作情報は、例えば、コンテンツのアドレス情報(URL)、ブラウザウィンドウ(100A−1)においてユーザが選択した位置を示す座標情報、ユーザが入力した文字を示す文字情報、ユーザが押下した物理ボタンの情報などを含む。
CPU310は、メインブラウザアプリであるブラウザアプリ100A−1に対して何らかの操作を受け付けると、当該操作を実行した後に、ブラウザアプリ100A−1が正常に動作しているか否かを判断する。CPU310は、ブラウザアプリ100A−1が正常に動作していると判断すると、操作記憶部360に記憶される操作情報に基づいて、ブラウザアプリ100A−1に対して受け付けたユーザ操作を、ブラウザアプリ100A−2に反映する。
その結果、第2VRAM355に展開されるブラウザウィンドウ(100A−2)には、「あいうえお」の文字が入力された文字入力フォーム460と、有効化されたチェックボックス470と、ボタン480,490とが表示される。
ある局面において、CPU310は、操作パネル260に表示されるボタン430の押下を検知すると、当該ボタンに関連付けられたURLを外部装置290に送信する。CPU310は、このURLに対応するコンテンツを外部装置290から受信して、ブラウザウィンドウ(100A−1)にコンテンツを表示する。その後、CPU310は、ブラウザアプリ100A−1が正常に動作していると判断すると、ブラウザアプリ100A-1が受け付けた一連のユーザ操作を、ブラウザアプリ100A-2にも反映する。このとき、ボタン430に対応するボタン480が押下されることになるが、CPU310は、ボタン480に関連付けられたURLを外部装置290に送信しない。ボタン430に関連付けられたURLと、ボタン480に関連付けられたURLとは同じURLであるためである。これにより、画像形成装置200は、不必要なネットワークトラフィックを軽減し得る。次に、図5を用いて上記一連のブラウザアプリの切替制御について説明する。
(ブラウザ切替の制御フロー)
図5は、ある実施形態に従うブラウザアプリの切替制御について説明するフローチャートである。図5に示される処理は、CPU310が、記憶装置230に格納されるブラウザ切替アプリ370を実行することにより実現され得る。他の局面において、処理の一部または全部が、回路素子その他のハードウェアによって実行されてもよい。図5に示される例において、制御装置210のCPU310は、ブラウザアプリ100A−1をメインブラウザアプリとして、ブラウザアプリ100A−2をサブブラウザアプリとしてそれぞれ同時に実行しているものとする。これらの条件は、後述する図6,7,8,9,11および13に示される処理においても同様とする。
ステップS510において、CPU310(ブラウザ切替アプリ370)は、メインブラウザアプリであるブラウザアプリ100A-1に対するユーザ操作を受け付けたか否かを判断する。ある局面において、CPU310は、操作パネル260が何らかのユーザ操作を受け付けた場合に、メインブラウザアプリに対するユーザ操作を受け付けたと判断し得る。
CPU310は、メインブラウザアプリに対するユーザ操作を受け付けたと判断した場合(ステップS510においてYES)、処理をステップS520に進める。そうでない場合(ステップS510においてNO)、CPU310は、処理をステップS510に戻し、メインブラウザアプリに対するユーザ操作の入力を待機する。
ステップS520において、CPU310は、ステップS510で受け付けたユーザ操作がメインブラウザプリを終了するための操作であるか否かを判断する。CPU310は、受け付けたユーザ操作が、メインブラウザアプリを終了するための操作であると判断した場合(ステップS520においてYES)、一連の処理を終了する。CPU310は、受け付けたユーザ操作が、メインブラウザアプリを終了するための操作でないと判断した場合(ステップS520においてNO)、処理をステップS530に進める。
ステップS530において、CPU310は、メインブラウザアプリ(ブラウザアプリ100A-1)に対するユーザ操作を示す操作情報を、操作記憶部360に格納する。
ステップS540において、CPU310は、ステップS510で検出したユーザ操作を反映した後のメインブラウザアプリが正常に動作しているか否かを判断する。ある局面において、各ブラウザアプリは、何らかのユーザ操作に従い動作した後に、自身が正常に動作していることを示す正常レスポンス通知をブラウザ切替アプリ370に通知する。CPU310(ブラウザ切替アプリ370)は、ステップS510でユーザ操作を検出してから予め定められた時間内にメインブラウザアプリから正常レスポンス通知を受信した場合、メインブラウザアプリが正常に動作していると判断し得る。一方、CPU310(ブラウザ切替アプリ370)は、当該予め定められた時間内にメインブラウザアプリから正常レスポンス通知を受信しない場合、メインブラウザアプリが不具合状態(例えば、ユーザ操作不能な状態)であると判断し得る。
CPU310は、メインブラウザアプリが正常に動作していると判断した場合(ステップS540においてNO)、処理をステップS550に進める。一方、CPU310は、メインブラウザアプリに不具合が生じたと判断した場合(ステップS540においてYES)、処理をステップS560に進める。
ステップS550において、CPU310は、ステップS530で操作記憶部360に記憶された操作情報に基づいて、メインブラウザアプリが受け付けたユーザ操作をサブブラウザアプリ(ブラウザアプリ100A-2)に反映する。これにより、サブブラウザアプリは、第2VRAMに展開するブラウザウィンドウ(100A−2)を更新する。その後、CPU310は、処理をステップS510に戻す。
ステップS560において、CPU310は、ブラウザ切替処理を実行する。図6を用いてこの処理について説明する。CPU310は、ブラウザ切替処理を実行した後、処理をステップS510に戻す。
図6は、図5のブラウザ切替処理を説明するフローチャートである。図6を参照して、CPU310(ブラウザ切替アプリ370)は、ステップS610の処理を実行するとともに、ステップS620の処理を並行して行なう。なお、他の局面において、ステップS620の処理は、一連のブラウザ切替処理が終了するまでの任意のタイミングで実行され得る。
ステップS610において、CPU310は、メインブラウザアプリであるブラウザアプリ100A-1が不具合状態であると判断したことに応じて、操作パネル260に表示される画像を、ブラウザウィンドウ(100A−1)からブラウザウィンドウ(100A−2)に切り替える。換言すれば、CPU310は、ブラウザアプリ100A-2を、サブブラウザアプリから、ユーザが操作可能な状態であるメインブラウザアプリに切り替える。ある局面において、CPU310は、第2VRAM355に展開される画像情報を第1VRAM350に展開することにより、ステップS610の処理を実行し得る。他の局面において、CPU310は、操作パネル260のディスプレイに表示する画像情報を、第1VRAM350に展開される画像情報から、第2VRAM355に展開される画像情報に切り替えることにより、ステップS610の処理を実行し得る。
ステップS620において、CPU310は、メインブラウザアプリからバックグラウンドで処理されるサブブラウザアプリに移行したブラウザアプリ100A-1を処理する。この処理の詳細は、図8において後述される。
ステップS630において、CPU310は、メインブラウザアプリに切り替わったブラウザアプリ100A-2に、操作記憶部360に記憶された操作情報(ユーザ操作)を反映する。なお、ある局面において、図5に示される処理によって、ブラウザアプリ100A-2には操作記憶部360に記憶される操作情報をすべて反映している場合もある。この場合、CPU310は、ステップS630を省略し得る。
上記図5および図6に示される処理によれば、画像形成装置200は、メインブラウザアプリが不具合状態となった場合に、サブブラウザアプリとして動作していたブラウザアプリをメインブラウザアプリに切り替える。これにより、ユーザは、代替のメインブラウザアプリによって画像形成装置200の操作を継続できる。
さらに、画像形成装置200は、操作記憶部360に格納される操作情報に基づいて、サブブラウザアプリとして動作していたブラウザアプリを、不具合が生じるまでに受け付けたユーザ操作を反映した状態でメインブラウザアプリに切り替える。そのため、ユーザは、代替のメインブラウザアプリに対して、再び同じ操作を入力する必要がない。
加えて、画像形成装置200は、メインブラウザアプリに対するユーザ操作を、バックグラウンドでサブブラウザアプリにも反映する。そのため、この画像形成装置200は、不具合が生じた際に、迅速に、上記のブラウザアプリの切替処理を実行できる。これにより、画像形成装置200は、ユーザが画像形成装置200を操作できない時間を、より低減し得る。
(サブブラウザの種類の切り替え−その1)
図7は、ある局面に従うブラウザアプリの切替処理について説明する図(その1)である。図7に示される処理の開始時点において、制御装置210のCPU310は、ブラウザアプリ100A−1をメインブラウザアプリとして、ブラウザアプリ100A−2をサブブラウザアプリとしてそれぞれ同時に実行しているものとする。
ステップS710において、CPU310(ブラウザ切替アプリ370)は、メインブラウザアプリとして動作するブラウザアプリ100A-1が、ユーザ操作XXX(例えば、動画コンテンツを再生する操作)を受け付けたことによって、不具合状態になったことを検知する。
ステップS720において、CPU310は、サブブラウザアプリとして動作していたブラウザアプリ100A-2を、メインブラウザアプリに切り替える。
ステップS725において、CPU310は、メインブラウザアプリとして動作していたブラウザアプリ100A-1を、サブブラウザアプリに切り替える。
ステップS730において、CPU310は、メインブラウザアプリとして動作するブラウザアプリ100A-2が、ユーザ操作XXXを受け付けたことによって、不具合状態になったことを検知する。
ステップS740において、CPU310は、ステップS730のユーザ操作XXXが、ステップS710でブラウザアプリ100A-1が受け付けた操作と同じであると判断する。これを受け、CPU310は、バックグラウンドで動作させるサブブラウザアプリの種類を変更する必要があると判断し、サブブラウザアプリの種類を変更する旨の通知を、操作パネル260に表示する。ある局面において、CPU310は、この通知をポップアップ形式で、ブラウザウィンドウ(100A−2)に表示する。
ステップS750において、CPU310は、サブブラウザアプリとして動作していたブラウザアプリ100A-1を、メインブラウザアプリに切り替える。
ステップS755において、CPU310は、メインブラウザとして動作していたブラウザアプリ100A-2ではなく、ブラウザアプリ100A-1および100A−2とは種類の異なるブラウザアプリ100Bをサブブラウザアプリとして起動する。
ステップS760において、CPU310は、メインブラウザアプリとして動作するブラウザアプリ100A-1が、ユーザ操作XXXを受け付けたことによって、不具合状態になったことを検知する。
ステップS770において、CPU310は、サブブラウザアプリとして動作していたブラウザアプリ100Bを、メインブラウザアプリに切り替える。
ステップS775において、CPU310は、メインブラウザアプリとして動作していたブラウザアプリ100A-1を、サブブラウザアプリに切り替える。
上記のように、CPU310(ブラウザ切替アプリ370)は、同一のユーザ操作に対して、同じ種類のブラウザアプリの不具合を検知した回数の総和が予め定められた回数(上記の例では、3回)に到達した場合に、異なる種類のブラウザアプリをメインブラウザとして動作させ得る。これにより、画像形成装置200は、同じ不具合を何度も繰り返す事態を抑制し得る。その結果、画像形成装置200は、ユーザが画像形成装置200を操作できない時間を、より低減し得る。さらに、画像形成装置200は、ユーザが同じ操作を何度も繰り返すといった事態を抑制し得る。
なお、他の局面において、CPU310は、図7に示される処理のうち、ステップS750〜S760の処理を省略し得る。すなわち、CPU310は、同一のユーザ操作に対して、同じ種類のブラウザアプリの不具合を検知した回数の総和が2回に到達した場合に、異なる種類のブラウザアプリをメインブラウザとして動作させ得る。
上記の例では、ブラウザ切替アプリ370は、同一のユーザ操作に対する不具合の回数に応じて、ブラウザアプリの種類を変更する構成であった。他の局面において、ブラウザ切替アプリ370は、メインブラウザアプリを変更してから予め定められた回数のユーザ操作を受け付ける前に、変更後のメインブラウザアプリの不具合を検知した場合に、メインブラウザアプリの種類を変更する構成であってもよい。
(バックグラウンドへの移行処理)
図8は、図6のサブブラウザアプリに切り替わったブラウザアプリの処理(ステップS620)を説明するフローチャートである。
ステップS810において、CPU310(ブラウザ切替アプリ370)は、サブブラウザアプリの種類を変更するか否かを判断する。一例として、CPU310は、図7で説明したように、同一のユーザ操作に対して、同じ種類のブラウザアプリの不具合を検知した回数の総和が予め定められた回数に到達した場合に、サブブラウザアプリの種類を変更すると判断する。
CPU310は、サブブラウザアプリの種類を変更すると判断した場合(ステップS810においてYES)、処理をステップS820に進める。CPU310は、サブブラウザアプリの種類を変更しないと判断した場合(ステップS810においてNO)、処理をステップS830に進める。
ステップS820において、CPU310は、今までメインブラウザアプリおよびサブブラウザアプリとして動作していたブラウザアプリの種類とは異なる種類のブラウザアプリ100Bを起動する。
ステップS830において、CPU310は、サブブラウザアプリに切り替わったブラウザアプリ(ブラウザアプリ100A-1)を初期化する。一例として、CPU310は、ブラウザアプリ100A-1を再起動することにより、ブラウザアプリ100A-1を初期化する。
ステップS840において、CPU310は、操作記憶部360に記憶された操作情報に基づいて、不具合が発生するまでにメインブラウザアプリが受け付けたユーザ操作をサブブラウザアプリに反映する。この処理の詳細は、図11を用いて後述される。
ステップS850において、CPU310は、サブブラウザアプリが正常に動作しているか否かを判断する。ある局面において、CPU310は、ステップS840を実行してから予め定められた時間が経過するまでに、サブブラウザアプリから正常レスポンス通知を受信した場合、サブブラウザアプリが正常に動作していると判断し得る。一方、CPU310は、当該予め定められた時間内にサブブラウザアプリから正常レスポンス通知を受信しない場合、サブブラウザアプリが不具合状態であると判断し得る。
CPU310は、サブブラウザアプリが正常に動作していると判断した場合(ステップS850においてNO)、一連のサブブラウザアプリに移行したブラウザアプリの処理を終了する。一方、CPU310は、サブブラウザアプリに不具合が生じたと判断した場合(ステップS850においてYES)、処理をステップS860に進める。
ステップS860において、CPU310は、サブブラウザアプリを初期化して、その後に処理をステップS840に戻す。
(サブブラウザの種類の切り替え−その2)
図9は、ある局面に従うブラウザアプリの切替処理について説明する図(その2)である。図9に示される処理の開始時点において、制御装置210のCPU310は、ブラウザアプリ100A−1をメインブラウザアプリとして、ブラウザアプリ100A−2をサブブラウザアプリとしてそれぞれ同時に実行しているものとする。
ステップS910において、CPU310(ブラウザ切替アプリ370)は、メインブラウザアプリとして動作するブラウザアプリ100A-1が、ユーザ操作XXX(例えば、動画コンテンツを再生する操作)を受け付けたことによって、不具合状態になったことを検知する。
ステップS920において、CPU310は、サブブラウザアプリとして動作していたブラウザアプリ100A-2を、メインブラウザアプリに切り替える。
ステップS925において、CPU310は、メインブラウザアプリとして動作していたブラウザアプリ100A-1を、サブブラウザアプリに切り替える。
ステップS930において、CPU310は、メインブラウザアプリとして動作するブラウザアプリ100A-2が、ユーザ操作XXXを受け付けたことを検知する。ある実施形態において、各ブラウザアプリは、操作パネル260を介してユーザ操作を受け付けると、ユーザ操作の内容を示す操作情報をブラウザ切替アプリ370に通知し得る。これにより、CPU310(ブラウザ切替アプリ370)は、ステップS930において、メインブラウザアプリがユーザ操作XXXを受け付けたことを検知し得る。
ステップS940において、CPU310は、ブラウザアプリ100A−1の不具合を引き起こしたユーザ操作XXXを、ブラウザアプリ100A−1と同じ種類のブラウザアプリ100A−2が再び受け付けたと判断する。CPU310は、その旨を警告するメッセージを操作パネル260に表示する。さらに、CPU310は、メインブラウザアプリ(ブラウザアプリ100A−2)とは種類の異なるブラウザアプリを利用するか否かを問い合わせるメッセージを操作パネル260に表示し得る。
ステップS950において、CPU310は、ユーザから種類の異なるブラウザアプリを利用する旨の指示、換言すれば、CPU310は、メインブラウザアプリの種類の切替指示を受け付ける。
ステップS960において、CPU310は、上記の切替指示に応じて、メインブラウザアプリをブラウザアプリ100A−2からブラウザアプリ100Bに切り替える。これにより、操作パネル260に、ブラウザウィンドウ(100B)が表示される。
ステップS965において、CPU310は、メインブラウザアプリとして動作していたブラウザアプリ100A-2を、サブブラウザアプリに切り替える。
図10は、図9のステップS940〜ステップS960の処理を説明する図である。ある局面において、CPU310は、ステップS940においてメッセージ1000(例えば、「前回の不具合発生時と同じ操作をしています。別ブラウザを利用しますか」)を操作パネル260に表示する。このメッセージ1000には、ボタン1010および1020が含まれる。
ステップS950において、ユーザが「はい」のボタン1010を押下する。ステップS960において、CPU310は、ボタン1010の押下に応じて、ブラウザアプリ100A−2とは異なる種類のブラウザアプリ100Bをメインブラウザに切り替える。
図9を再び参照して、ステップS970において、CPU310(ブラウザ切替アプリ370)は、ブラウザアプリ100Bにユーザ操作XXXを実行させる。他の局面において、ブラウザアプリ100Bは、ブラウザ切替アプリからの指示ではなく、ユーザによる操作XXXの入力を受け付けたことに応じて、ユーザ操作XXXを実行してもよい。
なお、上記に示される例では、画像形成装置200は、メインブラウザアプリとして動作するブラウザアプリ100A−2と異なる種類のブラウザアプリとして、ブラウザアプリ100Bの1種類しか格納していない。他の局面において、画像形成装置200は、ブラウザアプリ100A−2と異なる種類のブラウザアプリを2以上格納し得る。この場合、CPU310は、当該2以上のブラウザアプリを操作パネル260に表示し、ユーザによる一のブラウザアプリの選択を受け付けてもよい。
上記によれば、画像形成装置200は、同じ不具合が生じる確率を低減し得る。その結果、画像形成装置200は、ユーザが画像形成装置200を操作できない時間を、より低減し得る。
(座標情報の補正)
図11は、図8のサブブラウザアプリへのユーザ操作の反映処理(ステップS840)を説明するフローチャートである。
ステップS1110において、CPU310(ブラウザ切替アプリ370)は、メインブラウザアプリの種類とサブブラウザアプリの種類とが同じであるか否かを判断する。
CPU310は、メインブラウザアプリの種類とサブブラウザアプリの種類とが同じであると判断した場合(ステップS1110においてYES)、処理をステップS1140に進める。一方、CPU310は、メインブラウザアプリの種類とサブブラウザアプリの種類とが異なると判断した場合(ステップS1110においてNO)、処理をステップS1120に進める。
ステップS1120において、CPU310は、メインブラウザアプリに基づくブラウザウィンドウに配置されるコンテンツの位置(画面レイアウト)と、サブブラウザアプリの画面レイアウトとに差異があるかないかを判断する。
図12は、ある実施形態に従う座標情報の補正処理について説明する図である。分図(A)は、メインブラウザアプリの画面レイアウトを、分図(B)はサブブラウザアプリの画面レイアウトを表す。
図12に示される例において、メインブラウザアプリに基づくブラウザウィンドウ(すなわち、操作パネル260のディスプレイ)におけるチェックボックス1210の配置位置と、サブブラウザアプリに基づくブラウザウィンドウにおけるチェックボックス1220の配置位置とが異なる。このような場合に、CPU310(ブラウザ切替アプリ370)は、メインブラウザアプリの画面レイアウトと、サブブラウザアプリの画面レイアウトとが異なると判断する。ある局面において、画像形成装置200は、各ブラウザアプリの画面レイアウト(コンテンツの配置座標)を予め記憶装置230に記憶している。一例として、CPU310は、ステップS940において、記憶装置230に記憶しているメインブラウザアプリおよびサブブラウザアプリのコンテンツの配置座標が異なる場合に、メインブラウザアプリの画面レイアウトと、サブブラウザアプリの画面レイアウトとが異なると判断し得る。
図11を再び参照して、ステップS1130において、CPU310は、操作記憶部360に格納されるユーザが選択した位置を示す座標情報を補正する。図12を用いてこの補正処理の具体例を説明する。ユーザが選択した位置を示す座標情報を(X,Y)、補正後の座標情報を(Xc,Yc)、チェックボックス1210の配置座標を(Xm,Ym)、チェックボックス1220の配置座標を(Xs,Ys)とする。この場合、CPU310は、補正後の座標情報を以下の式(1)で計算し得る。
(Xc,Yc)=(X,Y)+{(Xs,Ys)−(Xm,Ym)} ・・・(1)
上記のように、CPU310は、メインブラウザアプリのコンテンツの配置位置と、サブブラウザアプリのコンテンツの配置位置とに基づいて、ユーザが選択した位置を示す座標情報を補正する。
図11を再び参照して、ステップS1140において、CPU310は、操作記憶部360に記憶される操作情報に基づいて、不具合が発生するまでにメインブラウザアプリが受け付けたユーザ操作をサブブラウザアプリに反映する。以上で、CPU310は、サブブラウザアプリへのユーザ操作の反映処理を終了する。
上記によれば、画像形成装置200は、メインブラウザアプリの種類とサブブラウザアプリの種類とが異なる場合であっても、メインブラウザアプリに対するユーザ操作を、正確にサブブラウザアプリに反映できる。
(不具合の検知,警告に関する制御)
図13は、ある実施形態に従うブラウザアプリの不具合の検知処理、および不具合の警告処理について説明するフローチャートである。
ステップS1310において、CPU310(ブラウザ切替アプリ370)は、メインブラウザに基づくブラウザウィンドウ上で、ユーザが操作するカーソルの座標位置をモニタする。
ステップS1315において、CPU310は、前回不具合が生じたときのユーザの操作位置範囲に、現在モニタしているカーソルの座標位置が含まれるか否かを判断する。一例として、ユーザの操作位置範囲は、ユーザが操作するカーソルが指し示すコンテンツの表示範囲であり得る。他の例として、ユーザの操作位置範囲は、ユーザの操作位置を中心とした所定領域であり得る。
CPU310は、前回不具合が生じたときのユーザの操作位置範囲に、現在モニタしているカーソルの座標位置が含まれると判断した場合(ステップS1315においてYES)、処理をステップS1320に進める。そうでない場合(ステップS1315においてNO)、CPU310は、処理をステップS1310に戻す。
ステップS1320において、CPU310は、不具合が生じた直前のメインブラウザアプリの種類と、現在実行しているメインブラウザアプリの種類とが同じであるか否かを判断する。
CPU310は、異なる種類であると判断した場合(ステップS1320においてNO)、一連の処理を終了する。一方、CPU310は、同じ種類であると判断した場合(ステップS1320においてYES)、処理をステップS1325に進める。
ステップS1325において、CPU310は、メインブラウザアプリがプログラムコンテンツ(例えば、動画コンテンツ、外部プラグイン)の実行指示を受け付けたか否かを判断する。例えば、CPU310(ブラウザ切替アプリ370)は、メインブラウザアプリからの通知に基づいてこの判断を行ない得る。他の局面において、CPU310は、ステップS1315で前回不具合発生時のユーザ操作位置範囲に、カーソルの座標位置が含まれると判断した状態において、ソフトウェアキーボードまたは物理ボタンの実行キーの押下に応じて、この判断を行ない得る。
CPU310は、メインブラウザアプリがプログラムコンテンツの実行指示を受け付けたと判断した場合(ステップS1325においてYES)、処理をステップS1335に進める。一方、CPU310は、メインブラウザアプリが未だプログラムコンテンツの実行指示を受け付けていないと判断した場合(ステップS1325においてNO)、処理をステップS1330に進める。
ステップS1330において、CPU310は、カーソルが指し示すプログラムコンテンツが、前回不具合を引き起こした旨を通知するメッセージを、操作パネル260に表示する。一例として、CPU310は、このメッセージをポップアップ形式で操作パネル260に表示する。CPU310は、ステップS1315でNOと判断するまで、当該メッセージの表示を継続する。
ステップS1335において、CPU310は、現在実行しているメインブラウザアプリとは異なる種類のブラウザアプリを、メインブラウザアプリとして実行する旨を通知するメッセージを操作パネル260に表示する。
ステップS560において、CPU310は、図6に示される一連のブラウザ切替処理(ステップS610〜ステップS630)を実行する。
ステップS1340において、CPU310は、実行指示を受け付けたプログラムコンテンツを実行する。
ステップS1345において、CPU310は、メインブラウザアプリが正常に動作しているか否かを判断する。上記の例では、CPU310(ブラウザ切替アプリ370)は、メインブラウザアプリから受信する正常レスポンス通知に基づいて、この判断を行なう構成であった。他の局面において、プログラムコンテンツが動画コンテンツの場合、CPU310は、この動画コンテンツの再生時間がゼロで止まっている場合に、メインブラウザアプリが不具合状態であると判断し得る。
CPU310は、メインブラウザアプリが正常に動作していると判断した場合(ステップS1345においてYES)、一連の処理を終了する。一方、CPU310は、メインブラウザアプリが不具合状態であると判断した場合(ステップS1345においてNO)、処理をステップS1350に進める。
ステップS1350において、CPU310は、一連の処理の中で起動を試していないブラウザアプリがあるか否かを、判断する。
CPU310は、起動を試していないブラウザアプリがあると判断した場合(ステップS1350においてYES)、処理をステップS560に戻し、起動を試していないブラウザアプリをメインブラウザに切り替える処理を実行する。
一方、CPU310は、起動を試していないブラウザアプリがないと判断した場合(ステップS1350においてNO)、処理をステップS1355に進める。
なお、他の局面において、CPU310は、ステップS1350において、一連の処理の中で起動を試していない種類のブラウザアプリがあるか否かを判断する構成であってもよい。
ステップS1355において、CPU310は、画像形成装置200が、実行指示を受け付けたプログラムコンテンツを実行できない旨を示すメッセージを操作パネル260に表示する。以上により、CPU310は、一連の処理を終了する。
上記によれば、画像形成装置200は、ユーザに対して、不具合が生じる可能性がある旨を警告できるため、不具合が生じることを抑制し得る。さらに、画像形成装置200は、実行指示を受け付けたプログラムコンテンツが正常に動作するようなブラウザアプリを、自動で検索する。その結果、画像形成装置200は、ユーザが種々のブラウザアプリを試すといったユーザ負担を軽減し得る。
以上説明した各種処理は、1つのCPU310によって実現されるものとしてあるが、これに限られない。これらの各種機能は、少なくとも1つのプロセッサのような半導体集積回路、少なくとも1つの特定用途向け集積回路ASIC(Application Specific Integrated Circuit)、少なくとも1つのDSP(Digital Signal Processor)、少なくとも1つのFPGA(Field Programmable Gate Array)、および/またはその他の演算機能を有する回路を含む回路によって実装され得る。
これらの回路は、有形の読取可能な少なくとも1つの媒体から、1以上の命令を読み出すことにより図5,6,7,8,9,11および13等に開示される各種処理を実現しうる。
このような媒体は、磁気媒体(たとえば、ハードディスク)、光学媒体(例えば、コンパクトディスク(CD)、DVD)、揮発性メモリ、不揮発性メモリの任意のタイプのメモリなどの形態をとるが、これらの形態に限定されるものではない。
揮発性メモリはDRAM(Dynamic Random Access Memory)およびSRAM(Static Random Access Memory)を含み得る。不揮発性メモリは、ROM、NVRAMを含み得る。半導体メモリは、少なくとも1つのプロセッサとともに半導体回路の1部分であり得る。
今回開示された実施形態はすべての点で例示であって制限的なものではないと考えられるべきである。また今回開示された各種処理は、適宜組み合わせが可能であると考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
100A,100B ブラウザアプリ、200 画像形成装置、210 制御装置、220 通信インターフェイス、230 記憶装置、235 給紙カセット、240 搬送経路、250 プリントエンジン、255 排紙トレイ、260 操作パネル、265 スキャナ、290 外部装置、320 RAM、330 ROM、350 第1VRAM、355 第2VRAM、360 操作記憶部、370 ブラウザ切替アプリ、1000 メッセージ。

Claims (14)

  1. 画像形成のための操作画面を含む画像を表示するための表示装置と、
    入力装置と、
    第1および第2のブラウザアプリケーションプログラムを含む複数のブラウザアプリケーションを格納するための記憶装置と、
    前記複数のブラウザアプリケーションを実行可能に構成される制御装置とを備え、
    前記複数のブラウザアプリケーションの各々は、前記表示装置に対応するブラウザを表示した状態で、前記入力装置を介してユーザ操作を受け付け可能に構成され、
    前記制御装置は、
    前記記憶装置に格納された前記第1のブラウザアプリケーションに基づく第1ブラウザを前記表示装置に表示し、
    前記第1のブラウザアプリケーションに対して受け付けたユーザ操作を示す操作情報を前記記憶装置に記憶し、
    前記第1のブラウザアプリケーションの不具合が検知された場合に、前記第1ブラウザに替えて、前記第2のブラウザアプリケーションに基づく第2ブラウザを、前記記憶装置に記憶された操作情報に基づいて前記ユーザ操作を反映した状態で前記表示装置に表示する、画像形成装置。
  2. 前記制御装置は、前記第1のブラウザアプリケーションで利用するコンテンツのアドレス情報、前記第1ブラウザ上で選択された操作を示す情報、前記第1ブラウザ上で選択された位置を示す座標情報、および前記第1ブラウザ上で入力された文字情報のうち少なくともいずれかの情報を、前記第1のブラウザアプリケーションに対して受け付けたユーザ操作を示す操作情報として前記記憶装置に記憶するように構成される、請求項1に記載の画像形成装置。
  3. 前記制御装置は、
    前記第1のブラウザアプリケーションに基づく前記第1ブラウザを前記表示装置に表示している間に、前記第2のブラウザアプリケーションも実行し、
    前記第1のブラウザアプリケーションに対するユーザ操作を受け付けた場合に、当該ユーザ操作を反映させた後の前記第1のブラウザアプリケーションが正常に動作していると判断した後に、当該ユーザ操作を前記第2のブラウザアプリケーションにも反映させる、請求項1または2に記載の画像形成装置。
  4. サーバ装置と通信するための通信インターフェイスをさらに備え、
    前記複数のブラウザアプリケーションの各々は、
    前記入力装置が受け付けたユーザ操作を示す操作情報を前記サーバ装置に送信し、
    前記サーバ装置から前記操作情報に対応するコンテンツを受信して、
    前記受信したコンテンツを前記表示装置に表示するように構成され、
    前記制御装置は、
    前記第1のブラウザアプリケーションに基づく前記第1ブラウザを前記表示装置に表示し、かつ、前記第2のブラウザアプリケーションを実行している状態において、前記入力装置からユーザ操作を受け付けた場合に、前記第1のブラウザアプリケーションによって前記ユーザ操作を示す操作情報を前記サーバ装置に送信し、前記第2のブラウザアプリケーションによる前記ユーザ操作を示す操作情報の前記サーバ装置への送信を制限する、請求項1〜3のいずれか1項に記載の画像形成装置。
  5. 前記制御装置は、前記第1のブラウザアプリケーションの不具合が検知されたことに応じて前記第1ブラウザに替えて前記第2ブラウザを前記表示装置に表示した後に、前記第1のブラウザアプリケーションを初期化する、請求項1〜4のいずれか1項に記載の画像
    形成装置。
  6. 前記第1のブラウザアプリケーションの種類と前記第2のブラウザアプリケーションの種類とは、同じである、請求項1〜5のいずれか1項に記載の画像形成装置。
  7. 前記制御装置は、前記第1のブラウザアプリケーションの不具合が検知されたことに応じて前記第1ブラウザに替えて前記第2ブラウザを前記表示装置に表示した後に、前記第2のブラウザアプリケーションに対して、前記第1のブラウザアプリケーションの不具合を引き起こしたユーザ操作を再び受け付けた場合に、前記表示装置に不具合が発生する旨を警告するメッセージを表示する、請求項6に記載の画像形成装置。
  8. 前記制御装置は、前記第1のブラウザアプリケーションの不具合が検知されたことに応じて前記第1ブラウザに替えて前記第2ブラウザを前記表示装置に表示した後に、前記第2のブラウザアプリケーションに対して、前記第1のブラウザアプリケーションの不具合を引き起こしたユーザ操作を再び受け付けた場合に、前記第2ブラウザに替えて前記第1および第2のブラウザアプリケーションとは種類の異なる第3のブラウザアプリケーションに基づく第3ブラウザを前記表示装置に表示する、請求項1〜7のいずれか1項に記載の画像形成装置。
  9. 前記複数のブラウザアプリケーションは、前記第1および第2のブラウザアプリケーションの種類とは異なる種類の第3のブラウザアプリケーションをさらに含み、
    前記制御装置は、前記第1のブラウザアプリケーションの不具合を検知したことに応じて前記第1ブラウザに替えて前記第2ブラウザを前記表示装置に表示した後に、予め定められた条件を満たす前に前記第2のブラウザアプリケーションの不具合が検知された場合に、前記第2ブラウザに替えて前記第3のブラウザアプリケーションに基づく第3ブラウザを前記表示装置に表示する、請求項6に記載の画像形成装置。
  10. 前記予め定められた条件は、前記第2ブラウザを前記表示装置に表示してから予め定められた時間を経過すること、および前記第2ブラウザを前記表示装置に表示してから予め定められた回数のユーザ操作を前記入力装置が受け付けたこと、のうち少なくともいずれかを含む、請求項9に記載の画像形成装置。
  11. 前記複数のブラウザアプリケーションは、前記第1および第2のブラウザアプリケーションの種類とは異なる種類の第3のブラウザアプリケーションをさらに含み、
    前記制御装置は、同一のユーザ操作に対して前記第1および第2のブラウザアプリケーションの不具合が検知された回数の総和が予め定められた回数に到達した場合に、前記第3のブラウザアプリケーションに基づく第3ブラウザを前記表示装置に表示する、請求項6に記載の画像形成装置。
  12. 前記第1のブラウザアプリケーションの種類と前記第2のブラウザアプリケーションの種類とは、異なる、請求項1〜5のいずれか1項に記載の画像形成装置。
  13. 前記制御装置は、
    前記第1のブラウザアプリケーションの不具合が検知された場合に、ユーザから前記第1のブラウザアプリケーションを除く前記複数のブラウザアプリケーションのうち一のブラウザアプリケーションの選択を受け付け、
    前記第1ブラウザに替えて、前記選択された一のブラウザアプリケーションに基づくブラウザを、前記記憶装置に記憶された操作情報に基づいて前記ユーザ操作を反映した状態で前記表示装置に表示する、請求項1、2、3、4、5または12のいずれか1項に記載の画像形成装置。
  14. 前記制御装置は、
    前記第1ブラウザ上で選択された位置を示す座標情報を、前記第1のブラウザアプリケーションに対して前記入力装置が受け付けたユーザ操作を示す操作情報として前記記憶装置に記憶し、
    前記第1のブラウザアプリケーションの不具合を検知した場合に、前記第1のブラウザアプリケーションの種類と、前記選択された一のブラウザアプリケーションの種類とが同じであるか否かを判断し、
    前記第1のブラウザアプリケーションの種類と、前記選択された一のブラウザアプリケーションの種類とが異なると判断した場合に、前記第1ブラウザで表示されるコンテンツの配置位置と、前記一のブラウザアプリケーションに基づくブラウザで表示されるコンテンツの配置位置とに基づいて、前記第1ブラウザ上で選択された位置を示す座標情報を補正して、
    前記第1ブラウザに替えて、前記一のブラウザアプリケーションに基づくブラウザを、前記補正後の座標情報を反映した状態で前記表示装置に表示する、請求項13に記載の画像形成装置。
JP2016216260A 2016-11-04 2016-11-04 画像形成装置 Active JP6848355B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016216260A JP6848355B2 (ja) 2016-11-04 2016-11-04 画像形成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016216260A JP6848355B2 (ja) 2016-11-04 2016-11-04 画像形成装置

Publications (2)

Publication Number Publication Date
JP2018073347A JP2018073347A (ja) 2018-05-10
JP6848355B2 true JP6848355B2 (ja) 2021-03-24

Family

ID=62112824

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016216260A Active JP6848355B2 (ja) 2016-11-04 2016-11-04 画像形成装置

Country Status (1)

Country Link
JP (1) JP6848355B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7238482B2 (ja) * 2019-03-05 2023-03-14 ブラザー工業株式会社 プログラム
JP6824458B1 (ja) * 2020-05-11 2021-02-03 ベルフェイス株式会社 情報処理装置、情報処理システム、情報処理方法及びプログラム
JP7224553B2 (ja) * 2020-08-05 2023-02-17 三菱電機株式会社 情報処理装置及び情報処理方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004030092A (ja) * 2002-06-25 2004-01-29 Hitachi Ltd アプリケーション回復システム
JP4713929B2 (ja) * 2005-04-22 2011-06-29 株式会社日立メディコ 画面制御方法、および、情報処理システム
JP4691148B2 (ja) * 2008-08-23 2011-06-01 ヤフー株式会社 異なるアプリ上での共通アプリの切換実行装置
JP2012226414A (ja) * 2011-04-15 2012-11-15 Konica Minolta Business Technologies Inc 画像形成装置、通信制御方法、通信制御プログラム、ブラウジング方法およびブラウジングプログラム
US8769011B2 (en) * 2011-06-21 2014-07-01 Cisco Technology, Inc. Survivable browsing in virtualized desktop environment when host connectivity is lost
JP2015153347A (ja) * 2014-02-19 2015-08-24 アルパイン株式会社 情報処理装置及びコンピュータプログラム
JP6565643B2 (ja) * 2015-12-01 2019-08-28 コニカミノルタ株式会社 画像形成システム、画像形成装置およびプログラム

Also Published As

Publication number Publication date
JP2018073347A (ja) 2018-05-10

Similar Documents

Publication Publication Date Title
JP6848355B2 (ja) 画像形成装置
US11296943B2 (en) Information processing apparatus, control method for information processing apparatus, and recording medium
US9973643B2 (en) Device, system and method for controlling device
US10082991B2 (en) Information processing apparatus, control method of information processing apparatus, and non-transitory computer-readable storage medium
US20230362244A1 (en) Application interface migration system and method, and related device
US9948808B2 (en) Information processing apparatus having circuit configuration data installed based on identifier correspondence, method for controlling the same, and storage medium
US20150355916A1 (en) Information processing apparatus, method for controlling the same, and storage medium
US10944876B2 (en) Image processing apparatus, control method, and storage medium
US20170289369A1 (en) Information processing apparatus, information processing system, control method for information processing apparatus, and storage medium
US20170351464A1 (en) Information processing apparatus, information processing system, and information processing method
US20160203200A1 (en) Management apparatus, control method for management apparatus, and storage medium
JP6971889B2 (ja) 読取装置およびプログラム
US10482166B2 (en) Image forming apparatus that stores a plurality of items of decompressed contents corresponding to some of a plurality of languages in accordance with information related to a region of the world, method of controlling the same, and storage medium
US11303765B2 (en) Image reading system, image reading apparatus, information processing apparatus, method for controlling them, and storage medium
JP5729823B2 (ja) バックアップ装置、バックアップ方法及び、バックアップ用プログラム
US11269680B2 (en) Information processing apparatus, information processing system, and information processing method
JP6686736B2 (ja) 情報処理装置、情報処理システム、および、プログラム
US10931832B2 (en) Information processing apparatus, control method of the same, and storage medium
US9940049B2 (en) Information processing apparatus capable of mounting data storage medium that stores data
US10313145B2 (en) Information processing apparatus, method of controlling the same, and storage medium including a printing system that supports a search function and a search result screen display conforming to a search result printer found
US12039107B2 (en) Information processing apparatus, non-transitory computer readable medium storing information processing program, and information processing method
US11983385B2 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
US20230092303A1 (en) Information processing apparatus, information processing method and non-transitory recording medium
US20220261236A1 (en) Communication device and control method
US11449703B2 (en) Electronic apparatus, and non-transitory computer readable recording medium that stores image determination program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190723

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200923

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201120

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210202

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210215

R150 Certificate of patent or registration of utility model

Ref document number: 6848355

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150