JP4091398B2 - アプリケーションプログラムの状態に基づく自動的なソフトウェア入力パネル選択 - Google Patents

アプリケーションプログラムの状態に基づく自動的なソフトウェア入力パネル選択 Download PDF

Info

Publication number
JP4091398B2
JP4091398B2 JP2002301084A JP2002301084A JP4091398B2 JP 4091398 B2 JP4091398 B2 JP 4091398B2 JP 2002301084 A JP2002301084 A JP 2002301084A JP 2002301084 A JP2002301084 A JP 2002301084A JP 4091398 B2 JP4091398 B2 JP 4091398B2
Authority
JP
Japan
Prior art keywords
application program
input
input method
user
application
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.)
Expired - Lifetime
Application number
JP2002301084A
Other languages
English (en)
Other versions
JP2003186614A (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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2003186614A publication Critical patent/JP2003186614A/ja
Application granted granted Critical
Publication of JP4091398B2 publication Critical patent/JP4091398B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Description

【0001】
【発明の属する技術分野】
本発明は、一般にはコンピュータシステムに関し、より詳細にはコンピュータシステムへのデータ入力に関する。
【0002】
【従来の技術】
ハンドヘルド型およびポケットサイズのコンピュータ、タブレットパーソナルコンピュータなどを含む、携帯情報端末のような小型のモバイルコンピューティングデバイスは、重要でかつ好まれる一般的なユーザツールになりつつある。一般に、消費する電池電力が次第に少なくなる一方、こうしたデバイスは十分小型化されてきわめて便利になり、かつ同時により強力なアプリケーションを実行することが可能になっている。
【0003】
こうしたデバイスの計算回路のサイズは縮小を続けるが、人の身体的制約のためサイズの限界に達しつつある。例えば、ユーザのデータ入力を可能にする文字用フルキーボードは、あまりに小さくすると人間の指でキーボードの個々のキーを押すことができなくなってしまう。この結果、このようなデバイス(例えばパームサイズのコンピュータ)の多くは物理的なキーボードを避け、代わりにタッチセンシティブなディスプレイにキーボードを描画させている。このため、ユーザは、表示されたキーに対応する位置にスタイラスで触れることによって文字を入力する。言うまでもなく、タッチスクリーンデバイスは物理的なキーボードを有するデバイスと同時に使用することもでき、したがって物理的キーボードのキーを手で押すことによって文字を入力することもできる。
【0004】
タッチスクリーンデバイスはユーザがデータを入力するための適切な手段を提供するのに役立つが、データ入力パネルとそこに表示されるキーは、通常、非常に小さく、ユーザのデータ入力の速度が落ち、誤ったデータ入力につながる。様々な理由の中でもこれは特に、キー入力を受け取るアプリケーションは、ユーザに入力フィールドなどを表示するために表示領域の一部を使用する必要があるため、キーボードの表示に利用できる領域が制限されることによる。個々のキーを大きくすることが可能な1つの方法は、例えば、あるキーボードは英文字の入力用、あるキーボードは数字の入力用、別のキーボードは句読点記号の入力用にするなど、何らかの論理的区別に従ってユーザが選択できる各種のキーボードにキーを分散するというものである。この方法はキーのサイズを大きくすることにより助けとなりうるが、ユーザがキーボード間で多数の切り替えを行うことが必要となり、また複数のキーボードから必要な文字を探すことが必要になると考えられる。例えば、適切な文章には句読点が含まれるが、表示された単一のキーボードにアルファベットと句読点記号の完全なセットを含めると、一般的なパームサイズのコンピュータのキーは、多くのユーザにとって小さすぎるものになってしまう。したがって、句読点記号の一部またはすべてを、ユーザが手動で選択できる別個のキーボードに入れる場合がある。
【0005】
【特許文献1】
米国特許出願第08/991,227号
【0006】
【発明が解決しようとする課題】
一般に、表示領域による制限がある場合には、ユーザの利便性のためにより多くのキーを表示することと、キーのサイズ、したがってキーの使いやすさとの間でトレードオフがある。したがって、使いやすさに大きな影響を与えずに、それよりむしろある程度使いやすさを高めながら、制限された表示領域内で利便性を向上することが絶えず求められている。
【0007】
【課題を解決するための手段】
要約すると、本発明は、例えばそのときフォーカスされている、データを入力しようとするフィールドに対応する状態など、アプリケーションの状態に基づいて、ソフトウェアの入力メソッドを自動的に選択し、及び/又はあるソフトウェア入力メソッドのソフトウェア入力パネルに表示されるキーを調整する方法およびシステムを提供する。例えば、任意のアプリケーションを実質的に任意の入力メソッドを実質的に互いに取り替えて使用することができるという点で、アプリケーションはソフトウェア入力メソッドとその入力パネルから独立し、したがって、必ずしも相互の特徴や機能についての知識を持たなくとも、種々のアプリケーションと種々の入力メソッドを開発することが可能になる。キーは一個の文字である必要はなく、データの入力時にユーザが必要とする可能性が高い文字列など、文字又はその他の記号の文字列を表現することができる。例えば、ブラウザのアドレスフィールドで編集を行う際は、ユーザが容易に選択できるように、そのユーザが直近にアクセスしたインターネット及び/又はイントラネットのウェブサイトを、頻繁に必要とされる「http://」「www.」及び/又は「.com」などの文字列とともに表示されたキーの上に示すことができる。
【0008】
一実施態様では、アプリケーションがソフトウェア入力メソッドマネジャと通信して、ソフトウェア入力メソッドマネジャに所望の入力メソッドに関連する情報を提供する。例えば、アプリケーションは、あるフィールド識別子に対応する状態情報を伝えることができ、ソフトウェア入力メソッドマネジャはそれにより、そのフィールドに適した入力メソッドを選択することができる。これは、そのフィールドが最初にフォーカスを受ける時、又は、ユーザが特定の文字または文字列を入力した時など他の何らかの時であることに留意されたい。さらに、アプリケーションは、ソフトウェア入力メソッドマネジャを介するなどして、表示されるキーの選択範囲にあるいくつかをソフトウェア入力メソッドに提供することができる。これにより、キーはユーザの選択のために、例えばお気に入りのリストや直近に使用したリストなど、そのアプリケーションが表示を望むもの、及び/又はそのキーが表すものに、表示されるその内容を表す名前を用いて反映することができる。
【0009】
この代りに、ある実施態様では、ソフトウェア入力メソッドマネジャが、アプリケーションに対して外部にあるものの、そのアプリケーションでその時点でフォーカスされているフィールドなど、アプリケーションの状態を(例えばそのフィールドのウィンドウクラスやその他の利用可能なデータを介して)決定することができる状態決定機構と通信し、ソフトウェア入力メソッドマネジャは適切な入力メソッドを選択することができる。例えば、状態決定機構は、アプリケーションのあるフィールドの受け取り対象がインターネットまたはイントラネットのアドレスであると判断することができ、したがって、あるフィールド識別子に対応する状態情報をソフトウェア入力メソッドマネジャに伝達することができる。ソフトウェア入力メソッドマネジャはそれを受けて、そのフィールドに適した入力メソッドを選択することができる。
【0010】
このような方法で、ユーザが所与のアプリケーションの状態に対して必要とする可能性が高いものに基づいて、異なる入力パネルを用いる入力メソッドを自動的に選択することができ、又は、入力メソッドは、その入力パネルを異なる、キーボードレイアウトを用いた及び/又はキーの意味付けを有するパネルに自動的に変更することができる。少なくともキーの一部は入力の可能性の高さに合わせて仕立てられるので、入力システムの利便性及び/又は使いやすさを高めることができる。
【0011】
この他の利点は、図面と併せて解釈する以下の詳細な説明から明らかになろう。
【0012】
【発明の実施の形態】
[実施例の動作環境]
図1は、特に画像及び/又はビデオデータの復号のために本発明を実施することが可能な適切な動作環境120の一例を示す。動作環境120は、適切な動作環境の一例に過ぎず、本発明の使用または機能性の範囲に関して何らの制限を示唆するものではない。本発明に使用するのに適すると思われる他のよく知られるコンピューティングシステム、環境、及び/又は構成には、これらに限定しないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な消費者家電製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記システムまたはデバイスのいずれを含む分散コンピューティング環境などが含まれる。例えば、画像及び/又はビデオ画像データの符号化は、現在のハンドヘルド型のパーソナルコンピュータよりも高い処理能力を有するコンピュータで行われることが多い可能性が高いが、例示的なデバイスで符号化を行うことができない、あるいは復号をより強力なマシンで行うことができない理由はない。
【0013】
本発明は、1つまたは複数のコンピュータまたはその他のデバイスによって実行される、プログラムモジュールなどのコンピュータ実行可能命令の一般的な文脈で説明することができる。一般に、プログラムモジュールには、特定のタスクを実行する、あるいは特定の抽象データタイプを実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。一般に、プログラムモジュールの機能は、各種の実施形態で必要に応じて組み合わせても分散してもよい。
【0014】
コンピューティングデバイス120は、一般に、少なくとも何らかの形態のコンピュータ読み取り可能な媒体を含んでいる。コンピュータ読み取り可能な媒体は、コンピューティングデバイス120からアクセスすることのできるいずれの利用可能な媒体でよい。例として、コンピュータ読み取り可能な媒体は、コンピュータ記憶媒体および通信媒体を含むことができるがこれらに限定しない。コンピュータ記憶媒体には、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、またはその他のデータなどの情報を記憶するために任意の方法または技術に実施された、揮発性および不揮発性の媒体、取り外し可能および取り外し不能の媒体が含まれる。これらに限定しないが、コンピュータ記憶媒体には、RAM、ROM、EEPROM、フラッシュメモリ、又はその他のメモリ技術、CD-ROM、デジタル多用途ディスク(DVD)、あるいはその他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、またはその他の磁気ストレージデバイス、または所望の情報の記憶に使用することができ、コンピューティングデバイス120からアクセスすることのできる任意の他の媒体が含まれる。通信媒体は、一般に、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、またはその他のデータを搬送波やその他の搬送機構などの変調データ信号に実施し、また任意の情報伝達媒体を含む。用語「変調データ信号」とは、情報を信号中に符号化するような方式でその特性の1つまたは複数を設定または変更した信号を意味する。例として、通信媒体には、配線ネットワークや直接配線接続などの配線媒体、および音響、RF、赤外線その他などの無線媒体が含まれるがこれらに限定しない。いずれの上記方式の組合せもコンピュータ読み取り可能な媒体の範囲に含まれる。
【0015】
図1は、上記のようなハンドヘルドコンピューティングデバイス120の機能構成要素を示し、これにはプロセッサ122、メモリ124、ディスプレイ126、およびキーボード(物理キーボードでも仮想キーボードでもよい)128が含まれる。メモリ124は一般に、揮発性メモリ(例えばRAM)と不揮発性メモリ(例えばROM、PCMCIAカードなど)の両方を含む。Microsoft(登録商標)社製のWindows(登録商標)CEオペレーティングシステムや、別のオペレーティングシステムなどのオペレーティングシステム130はメモリ124内に常駐し、プロセッサ122で実行される。
【0016】
1つまたは複数のアプリケーションプログラム132はメモリ124にロードされ、オペレーティングシステム130上で実行される。アプリケーションの例には、電子メールプログラム、スケジュール管理プログラム、PIM(個人情報管理)プログラム、ワードプロセッシングプログラム、表計算プログラム、インターネットブラウザプログラムなどが含まれる。ハンドヘルドパーソナルコンピュータ120は、メモリ124にロードされた通知マネジャ134も含むことができ、これはプロセッサ122で実行される。通知マネジャ134は、例えばアプリケーションプログラム132からの通知要求を処理する。
【0017】
ハンドヘルドパーソナルコンピュータ120は電源136を有し、これは1つまたは複数の電池として実施される。電源136はさらに、ACアダプタや電力が供給される(powered)ドッキングクレードルなど、内蔵電池に代わる(override)又は内蔵電池を再充電する外部電源も含むことができる。
【0018】
図1に表す例示的なハンドヘルドパーソナルコンピュータ120の図には、3タイプの外部通知機構を示している。すなわち、1つまたは複数の発光ダイオード(LED)140と、オーディオ発生器144である。ハンドヘルドパーソナルコンピュータのプロセッサ122やその他のコンポーネントは電池電力を節減するためにシャットダウンされることがあるが、これらのデバイスは、起動されると通知機構によって指示される時間にわたってオンの状態を保つように電源136に直接結合することができる。LED140は、ユーザが動作を行うまで無期限にオンの状態を保つことが好ましい。現在のバージョンのオーディオ発生器144は、今日のハンドヘルドパーソナルコンピュータの電池に対して使用する電力が多すぎるので、システムの残りの部分がオンになっている時間、又は起動後のいくらかの有限の時間にわたってオフになるように構成することに留意されたい。
【0019】
[互換性のあるソフトウェア入力メソッド]
本発明では、物理的なキーボードに代えて、主にデバイスのタッチスクリーン126を介して文字、キーベース及びその他ユーザデータの入力を可能にするために設計されたアーキテクチャを使用する。ただし図を簡潔にするために個別には示していないが、理解されるように、所与のコンピュータシステム120は、任意選択で、かつ追加的に物理的なキーボードを含むことも可能である。さらに、下記から明らかになるように、「ソフトウェア入力パネル」は、パネルへの接触または近接を介して直接入力を受け取るように調整された実際のタッチセンシティブパネルである必要はなく、代わりにマイクロフォンなど他の入力装置を介して動作することも可能である。例えば、話された単語をマイクロフォンで受け取って認識し、画面上のウィンドウ、すなわちソフト入力パネルにテキストとして表示することができる。
【0020】
図2は、本発明の譲受人に譲渡された米国特許出願(例えば、特許文献1参照)にも記載されているように、一般的なソフトウェア入力パネルアーキテクチャを実施するブロック図を示す。図1および2に表すように、コンピュータシステム120(図1)はオペレーティングシステム130を含むが、これはグラフィカルウィンドウ環境200(図2)を組み込むことができる。このグラフィカルウィンドウ環境200は、一般には、図1のキーボード128、ペンまたはマウス(図示せず)、外部デジタイザ(図示せず)などを含む各種デバイスを通じて、ユーザ入力を受け取る働きをする。次に、グラフィカルウィンドウ環境200は、その時点でフォーカスされている入力を有するウィンドウを含むアプリケーションプログラム202(図2)にそうしたユーザ入力を提供することができるが、この場合ユーザ入力は、通常1つまたは複数のキーボード文字事象の形でアプリケーションウィンドウに送られる。コンピュータシステムによって複数のアプリケーション200を実行することができるが、現在実行されている1つのアプリケーションがフォーカスされている入力を有し、一般には別個の入力ウィンドウとして構成されるアプリケーション中の入力フィールドを介するなどして入力を受け取るとされることに留意されたい。さらに「アプリケーションプログラム」とは、従来のユーザ態様アプリケーションを含むが、オペレーティングシステムおよび他のカーネル態様コンポーネント、あるいは実質的にいかなるタイプのソフトウェアモジュールをも含む任意の実行可能なソフトウェアコードを意味することに留意されたい。
【0021】
好ましいアーキテクチャではソフトウェア入力メソッドマネジャ204を用いて、例えば選択された入力メソッド206など、複数の異なる入力メソッドに対する柔軟性のある単一のインタフェースを提供する。一般に、ソフトウェア入力メソッドマネジャ204は、選択された入力メソッド206からのキーストロークをグラフィカルウィンドウ環境200(例えばWindows(登録商標)CEオペレーティングシステムに組み込まれた)に提供する。キーストロークを受け取ると、グラフィカルウィンドウ環境200は、ユーザ入力データに対応する情報を、そのキーストローク、マウス、またはその他のメッセージの形で、コールを介してアプリケーションに伝達する、又はアプリケーションのウィンドウのメッセージ待ち行列に入れるなどして、そのウィンドウがその時点でフォーカスされている入力を有するアプリケーションプログラム202に送る。この結果、キーボード入力を処理することが可能なアプリケーションはいずれでも、適切に構成された入力メソッド206と併せて使用することができる。
【0022】
互換性のある入力メソッド206は、例えば、表示可能な各種の異なるキーボード、(ソフトキーボード)、計算機、公式及び/又は数式エディタ、化学記号のテンプレート、音声認識、手書き認識、速記記号認識、又はその他業務に最適化された入力メソッド(例えばバーコードリーダ)を含むことができる。例えば、図4に表すように、ソフトウェア入力メソッドマネジャ204は、ユーザがソフトウェア入力メソッドのウィンドウ(パネル)402を開いた状態と閉じた状態で切り替えられるようにするユーザインタフェース領域400を提供する。ソフトウェア入力メソッドマネジャ204は、利用できる入力メソッドの表示可能リストからユーザが選択することを可能にするユーザインタフェース404も提供する。ユーザインタフェース404で対話するユーザは入力メソッドを選択することができ、それに対して、ソフトウェア入力メソッドマネジャ204は図2の入力メソッド206など選択された入力メソッドをロードし、コールする。
【0023】
好ましい実施形態では、各入力メソッドは、IInputmethod208およびIIMCallback210として示すCOM(コンポーネントオブジェクトモデル)インタフェースを通じてソフトウェア入力メソッドマネジャ204と通信する。COMオブジェクトは、特別に定義されたインタフェースを通じてアクセスすることが可能な、カプセル化されたメソッドとデータを有するデータ構造を備える。
【0024】
一般に、選択されたソフトウェア入力メソッドの入力パネル402がユーザによってオンとオフの間で切り替えられると、ソフトウェア入力メソッドマネジャ204は、例えばIInputmethodインタフェース208を介するなどインタフェースを介して、それに応じてパネル402を開く、または閉じるように選択された入力メソッド206に伝える。新しい入力メソッドが選択されると、ソフトウェア入力メソッドマネジャ204は、インタフェース208を通じて、以前に選択されたすべての入力メソッドに終了するように伝え、新しく選択された入力メソッドをロードする。インタフェース208は、ソフトウェア入力メソッドマネジャ204が選択された入力メソッドに固有の情報を入手する際にも使用することができる。
【0025】
アプリケーション202は、APIコールを介するなどしてソフトウェア入力メソッド206に情報を伝達することができる。IInputMethodインタフェース208は、選択されたソフトウェア入力メソッド206との通信のために、選択されたソフトウェア入力メソッド206によって実施され、それにより、選択されたソフトウェア入力メソッド206に状態の変化を通知する、及び/又は選択されたソフトウェア入力メソッド206に動作および情報を要求する。一般に、コールされたメソッドが成功した場合は成功の結果が戻され、逆にメソッドが失敗した場合は失敗の結果が戻される。次の表に、このIInputMethodインタフェースで利用できるメソッドのコールの一部を挙げる。
【0026】
【表1】
Figure 0004091398
【0027】
選択されたソフトウェア入力メソッド206は、通例は、Select( )、GetInfo( )、ReceiveSIPInfo( )、およびRegisterCallback( )メソッドのコールを順に受け取ってから、入力パネル402を描画する、あるいはユーザの動作に応答する。入力パネル402が表示されると(すなわちオンになると)ソフトウェア入力メソッドマネジャ204によってShowing( )がコールされ、その後、選択されたソフトウェア入力メソッド206はWM_PAINTメッセージを発行して入力パネル402を描画する。
【0028】
Select( )メソッドは、選択されるソフトウェア入力メソッド206が選択されたときにコールされる。選択されたソフトウェア入力メソッド206は、一般に、このコールに応じて必要とされる任意の初期化を行う。選択された入力メソッド206は、入力パネル402のクライアント領域全体を描写する役割を担い、したがって、通常はこのコールに応答してそのウィンドウとイメージリスト(カスタマイズされたアイコンなど表示可能なビットマップの集合)を作成する。例えば、入力パネル402のウィンドウハンドルは、このSelect( )メソッドのコールに伴うパラメータとして、選択されたソフトウェア入力メソッド206に提供され、入力メソッドは通常その入力パネル402の子ウィンドウを生成する。選択されたソフトウェア入力メソッド206には、そのメソッドのコールが成功した場合は選択されたソフトウェア入力メソッド206によって非ゼロにセットされ、コールが成功しない場合はゼロにセットされる値へのポインタも提供される。
【0029】
Deselect( )メソッドは、選択されたソフトウェア入力メソッド206の選択が解除されたときにコールされる。入力パネル402はこのコールに応答して消され、選択されたソフトウェア入力メソッド206は通常この時点で他の任意の入力パネルのクリーンアップを行う。
【0030】
Showing( )メソッドは、そのコールからの戻り時に入力パネル402を表示させる。入力パネル402はこのコール以前には目に見える状態である必要はなく、また入力パネル402が表示されると、そのウィンドウとその子ウィンドウはペイントメッセージを受け取ることに留意されたい。逆に、Hiding( )メソッドは、そのコールから戻る際に入力パネル402を非表示にする。このため、Showing( )メソッドとHiding( )メソッドは、入力パネル402を開いた状態と閉じた状態の間で切り替えるのに使用される。
【0031】
GetInfo( )メソッドは、システムが、選択されたソフトウェア入力メソッド206についての情報を要求する際にコールされる。要求される情報には、選択されたソフトウェア入力メソッド206の何らかの特殊なプロパティを示すフラッグ、選択されたソフトウェア入力メソッド206がアクティブであるときにボタン400に表示するマスクビットマップを含んだ2つのイメージリストのハンドル、指定されるイメージリストへの索引、及び選択されたソフトウェア入力メソッド206についての好ましいサイズと配置を示す矩形が含まれる。このコールはパラメータpimiを含み、これは、選択されたソフトウェア入力メソッド206が適切なデータを埋めるべきデータ構造(IMINFO)へのポインタである。このコールはまた、入力メソッドが成功を表す非ゼロと失敗を表すゼロにセットすべき値へのポインタも提供する。
【0032】
選択された入力メソッド206は、1つまたは複数の文字がキーボードの品揃え、手書き認識、音声認識、公式エディタ、あるいは計算機などを介して生成されるのかに関係なく、IIMCallback機構210を介して、どの1つまたは複数の文字がユーザによって入力されたかなどの情報をソフトウェア入力メソッドマネジャ204に伝達することができる。このような文字入力は、一般にはソフトウェア入力メソッドマネジャ204に渡されるが、ユニコード文字としてソフトウェア入力メソッドマネジャ204に受け取られ(あるいはユニコード文字に変換され)、グラフィカルウィンドウ環境200に出力されることが好ましい。キーボードの「Ctrl」キーなどのコマンドキー情報も、入力メソッド206によりコールバックインタフェース210を介してソフトウェア入力メソッドマネジャ204に提供することができる。この互換性のある入力メソッドとともに動作するようにアプリケーションを構成した(すなわちアプリケーションが「入力メソッド認識型」である)場合は、入力パネル情報やその他入力メソッドに固有の情報も、選択されたソフトウェア入力メソッド206からソフトウェア入力メソッドマネジャ204を通じて、最終的にはフォーカスされているアプリケーションプログラム202に伝達することができる。
【0033】
一般に、このシステムは、アプリケーションプログラム202が実行されてフォーカスを有し、かつそのプログラムに対して入力メソッド206が選択されると動作する。入力メソッド206はユーザによって選択されても、あるいは入力メソッド206は以前にアプリケーションのために選択された後に残っているメソッドであってもよく、すなわちユーザが各種のアプリケーションを切り替えても特定の入力メソッドが同じままであってもよいことに留意されたい。さらに、下記で本発明との関連で説明するように、アプリケーションの状態を自動的に使用して入力メソッドを選択することができる。いずれの場合も、図4に示すように、入力メソッド206は、選択されると入力パネル(SIPウィンドウと呼ぶこともある)402を表示する。
【0034】
ユーザがデータを入力すると、IIMCallback機構を介して適切なデータがソフトウェア入力メソッドマネジャ204に渡される。入力メソッド206は受け取ったデータを最初に処理してもよいという点に留意されたい。一例として、ある特定の入力メソッド206はバーコード記号を数字を表すユニコード文字に変換することができ、別の入力メソッドは数学的な入力をユニコードの結果に変換する(例えば「3+6」を入力すると、ソフトウェア入力メソッドマネジャ204に「9」が送られるなど)ことができ、さらに別のメソッドは数式エディタ(例えば、文字「Sqrt」は平方根の記号を表す単一のユニコード値に変換される)であるなどである。このようないずれかの処理を行うと、入力メソッド206はその数字をソフトウェア入力メソッドマネジャ204に渡し、ソフトウェア入力メソッドマネジャ204はその数字をグラフィカルウィンドウ環境200に渡す。すると、アプリケーションは、使用される実際の入力メソッドに関係なく、ユーザが物理的なキーボードでそれらの数字を入力したのと同じようにその文字データをグラフィカルウィンドウ環境200から受け取ることができる。
【0035】
図4に示すように、入力パネル(SIPウィンドウ)402は、ユーザの(あるいはアプリケーションプログラムの)要求に応じて非表示、又は表示にすることが可能な、入力メソッド206から提供される矩形の領域を備えることが好ましい。目に見えるSIP作動ボタン400はタスクバーなどの上に配置し、ユーザがSIPウィンドウ402を表示または非表示にするためのタッチセンシティブなインタフェースを提供する。このソフト入力パネルを設計することは、図4に示す例とは異なるSIPウィンドウのサイズまたは位置をサポートする。
【0036】
このように、SIPシステムは指定された入力メソッド206を選択的にインストールすることを可能にし、ここで、利用可能な各入力メソッドは、ユーザがタッチスクリーンディスプレイ(又は何らかの他の入力装置)を介して文字、テキスト、またはその他のユーザデータを提供するための互換性のあるソフトウェアコンポーネントである。より具体的には、ソフトウェア入力メソッドマネジャ204は、入力メソッド206の選択的なインストールを可能にするCOMインタフェースを見せることが好ましい。それでも、入力メソッド206とソフトウェア入力メソッドマネジャ204は、関数コールを受け取り、応答し、生成するなどの何らかの機構を通じて相互に通信することが可能なあらゆるコンポーネントを実質的に含むことができる。
【0037】
入力メソッド206は、入力パネル402内の描画と、入力パネル402へのユーザ入力に対する応答を行う役割を担う。入力メソッド206はユーザ入力に応答し、その入力を文字に変換し、その文字は開示されたSIP関数を介してソフトウェア入力メソッドマネジャ204に送られる。一例として、ある入力メソッド206は、図4に示すようなデフォルトのQWERTY(アルファベット)配列のキーボードを含む。より詳細には、この入力メソッド206は、キーボードの画像を画面に表示し、そのキーボードへの軽い接触(tap)(画面座標として検知される)を文字に変換し、この文字がソフトウェア入力メソッドマネジャ204に、そしてしたがってシステムに送られる。入力メソッドはアプリケーションベンダによって書くことができ、COMコンポーネントのインストール手順を用いてシステムに追加される。
【0038】
ユーザは、目に見えるSIPウィンドウ402として顕在化した入力メソッド206と対話してシステム入力を生成する。ユーザは、タスクバーのSIPメニューボタン404を軽く叩くことによりポップアップ式の入力メソッドリストなど(図示せず)を提供させ、その中の利用可能な入力メソッドから手動で選択を行うことにより、手動で別の入力メソッドを選択することができる。ユーザはまた、コントロールパネルアプレット(図示せず)などを介して入力メソッドを選択することもできる。
【0039】
理解されるように、アプリケーションは、SIPパネル402が現在表示されているかどうかに基づいてそれ自体を調整する(例えばサイズを変更する)など、SIPが実施されていることを認識することができる。それでも、本発明から益を得るのにアプリケーションがSIPシステムを認識する必要はない。実際、アプリケーションはそれが受け取るデータが、キーボードなどのハードウェア入力装置で発生したものか、または、ソフト入力パネルウィンドウ402中のある位置に対応するユーザの動作(例えば画面検知回路によって検知される接触や近接)を介して発生したものかを意識する必要はない。これにより、そのアプリケーションがSIPを認識するかどうかに関係なく、実質的にあらゆるアプリケーションが実質的にあらゆる適切な入力メソッドとともに動作することが可能になる。
【0040】
[特化されたソフトウェア入力パネル]
本発明の一態様によると、アプリケーションプログラム202の状態が用いられ、入力メソッドを選択する、及び/又は、ユーザがそれとの対話によりアプリケーションプログラム202に入力を提供するためのもの(例えば、表示されるキーやその意味付け)の選択を変更する。一例では、アプリケーションプログラム202の状態は、そのアプリケーションプログラムのどのフィールド(ウィンドウ)がその時点の入力フォーカスを有するかに対応する。一例として、そのアプリケーションが、日付入力フィールド410(図4)など日付を入力できるフィールドを有する場合は、図4に示すアルファベットのQWERTY配列キーボードを提供するものから、図5のような日付入力用キーボード500を提供するものに入力メソッドを自動的に変更することができる。またこれに替えて、入力メソッドを変える必要はなく、アプリケーションプログラムの状態に応じて複数の入力パネルの1つを表示するように単一の入力メソッドを配列(arrange)することもできる。
【0041】
図2に表す実施態様に戻ると、アプリケーションはグラフィカルウィンドウ環境200、またはその他の適切なインタフェースを介してソフトウェア入力メソッドマネジャ204に情報を渡すことができる。本発明によると、この渡された情報はそのアプリケーションの状態に対応することができ、アプリケーションの状態は、アプリケーションプログラム202がアクティブにしようとする、選択された入力メソッド(または、複数の乃至構成可能なパネルを用いる入力メソッドの、選択された乃至構成された入力パネル)に対応することができる。したがって、上記の日付フィールドの例では、アプリケーションはその現在の状態が日付入力フィールドに対応していることを指定することができる。ソフトウェア入力メソッドマネジャ204は、この状態情報を使用して入力メソッド選択データベース214などに照会することができ、したがって、どの入力メソッド(または複数パネル入力メソッドのどの入力パネルまたは構成)を使用するかを決定することができる。ソフトウェア入力メソッドマネジャ204は、対応するソフトウェア入力メソッド206がそのシステムで使用可能であり、かつロードされていなければ、それをロードする。単一の入力メソッドが複数の入力パネルを提供することができる場合は、ソフトウェア入力メソッドマネジャ204がフィールド情報などをソフトウェア入力メソッド206に通知し、それによりソフトウェア入力メソッド206は適切なパネルを表示することができる。
【0042】
したがって、例えば、図4および5に示すように、日付フィールド410が編集されていることをアプリケーションが表示すると、日付入力パネル500が表示される。図5に表すように、方眼状のカレンダーと併せて、月、日、年用の日付に関連する大きなキーが提供される。例えば、1回のキーストロークを用いて月の文字列「January」をアプリケーションに送ることができ、日付については1回または2回のキーストローク、そして4桁の年については1回のキーストロークで送ることができる。またこれに替えて、カレンダーの日付上の1回のキーストロークで文字列全体を送ることもできる。また、ユーザは、特別に必要な何かの文字が使用できない場合は、フルキーボード(例えば、図6のキーボード600)を要求することもできる。図6の例示的キーボード600は、「日付(Date)」用のキーボードに戻せるようにするキーを含んでいることに留意されたい。
【0043】
これらはキーボードの例示的な図に過ぎず、一般には、キーは拡大され、各キーの表現及び/又はそのキーに触れた際の出力、すなわちその意味付けにより、アプリケーションの現在の状態に合わせられることに留意されたい。このようにして、本発明により、汎用キーボードに比べて使いやすさとユーザの利便性の双方を向上することができる。
【0044】
本発明によると、アプリケーションプログラム202は、そのフィールドに以前に入力されたデータ(例えば以前のユーザ入力)のデータベース216などを含むことが可能である。アプリケーションプログラム202は、ソフトウェア入力メソッドマネジャ204にフィールド情報を渡すとき、又は直後に、選択された入力メソッド206に渡すためカスタマイズなどのリストを提供することもでき、これにより根本的にカスタマイズされるキーボードとなるものが描画される。これは以前にユーザによって入力された情報に限る必要はなく、例えば、別のエンティティから提供されるデフォルトの情報(例えば、最も人気のある10のウェブサイトへのリンクなど)を含むこともできる点に留意されたい。
【0045】
一例として、図7は、あるアプリケーションのフィールドがユーザの入力するネットワークアドレスなどを受け取るようにされている場合に起動されるような、インターネット向けのキーボード700を表している。有用であると思われる固定キー(「http://」や「www.」など、および例えば「.com」などの一般的な拡張子を表すキー)を、最も頻繁に入力されるアドレス、直近に入力されたアドレス、あるいは両方の何らかの組合せなど、それまでに入力されたアドレスと併せて提供することができる。このために、アプリケーションは、この情報を以前に入力されたデータのデータベース216に保持しておき、ソフトウェア入力メソッドマネジャ204を介してその情報をソフトウェア入力メソッド206に提供することができる。次いで、選択されたソフトウェア入力メソッド206は、そのデータを適切な位置218に記憶する。好ましい一実施態様では、データはXML(eXtensible Markup Language)フォーマットの情報を介して渡されるが、理解されるように、データ自体を渡すのではなく、そのデータを含んでいるバッファなどへのポインタを渡すことが可能である。ネットワークアドレスの場合は、上記のようなカスタマイズ可能な各々のキーに対して、キーに表示する短い文字列とそれに対応する完全なアドレスの文字列(これはユーティリティなどを介してユーザが設定できるようにしてもよい)が提供されることが好ましいことに留意されたい。さらに、表示されるキーよりも多くの情報を提供することができ、ディスプレイに提供されるスクロールボタン702、704などを介してアクセスできるようにして、キーボードをユーザにとってより便利なものにすることも可能である点に留意されたい。別の例として、図8に、電子メールアドレスの入力のためにカスタマイズしたキーボードの形態の、特化されたソフトウェア入力パネルを示す。
【0046】
入力メソッドおよびパネルはアプリケーションプログラムから独立していることを強調したい。したがって、双方にとって使用可能な同じ入力メソッドの例として、複数のアプリケーションプログラムが、各々日付フィールドなど同じタイプのフィールドの多くを備えることができる。これにより、記憶空間とアプリケーション開発者にとっての開発作業が大幅に節減される一方で、一貫性を備えながらも、各アプリケーションに合わせてある程度カスタマイズできるユーザ体験がユーザに与えられることに留意されたい。
【0047】
キーが表示されるとユーザはあるキーをアクティブにすることができ、それによりソフトウェア入力メソッド206中のキー決定機構220は、座標からキーへの変換機構222を介してどのキーが押されたのかを把握する。キーが固定された意味付けを有しており、それが表すことになっている事柄をサポートしている場合、キー決定機構220はテーブルなどでそのキーを検索し、適切な文字、文字列、記号、コマンド、あるいはその他の適切なデータの形でその意味付けをアプリケーションプログラム202に戻す。キーが可変の場合は、キー決定機構220はアプリケーションから提供される情報218にアクセスして、以前そのアプリケーションから提供された、戻すべき文字、文字列、記号、コマンド、またはその他の適切なデータを決定する。これに代わる実施態様では、入力メソッドは、必要な際には動的にアプリケーションをコールして、キーの意味付けを調べることもできる点に留意されたい。
【0048】
ソフトウェア入力メソッドに一般に言えるように、ソフトウェア入力メソッド206はユーザ入力に対して検証などのより複雑な処理も行うことができる。例えば、パスワード変更の入力フィールドは、パスワード全体の入力(一度に1文字ずつアプリケーションに送るのではなく)をユーザに要求する、対応する入力メソッドを有することができ、その入力メソッドにユーザのデータを検証させて、それが強いパスワードの要件(例えば、8文字あるいはそれ以上の文字、1文字の大文字、数字および記号との文字の組合せなど)に確実に従うようにすることができる。入力メソッドはこのような処理を行うことができる。入力メソッドでは、文字または言語の翻訳、手書き文字または音声の認識などの他の概念の処理を実行することができる。
【0049】
フォーカスされたフィールドを情報の基盤とするのに加えて、アプリケーションおよび入力メソッドは、同意された任意の状態識別コードを情報の基盤とすることができる。例えば、アプリケーションは、数式をワードプロセッシング文書に挿入するためなど、同じフィールドに様々なタイプの入力パネルを必要とすることがあり、あるいはアプリケーションはフィールドを持たない場合もある。いずれの場合も、アプリケーションは何らかの状態データをソフトウェア入力メソッドマネジャ204に伝達して、必要とする入力メソッドをより特化されたソフトウェア入力パネルに変える、また、より特化されたソフトウェア入力パネルから変更する、あるいは入力メソッドの入力パネルを変更することができる。したがって、理解されるように、フィールドのフォーカスを受け取ることは、アプリケーションの状態に基づいて特化された入力パネルを選択するための要件ではなく、また最初のフォーカスの時だけが、アプリケーションが状態を変えることのできる唯一の時ではない。
【0050】
これに替えて図3に示す実施態様では、アプリケーション300は、本発明による特化された入力パネルの自動的な選択から益を得るのに、本発明の選択可能な入力メソッドを認識する必要はない。これは一般には、アプリケーションの状態についての情報は、例えばアプリケーション状態決定機構302により外部から決定し、その情報を用いて適切なソフトウェア入力パネルを提供することができるからである。
【0051】
一例として、あるアプリケーションのウィンドウに関する情報の多くは、グラフィカルウィンドウ環境200から判断することができる。したがって、あるアプリケーションのフィールドがフォーカスを受けるときにはいつも、アプリケーション状態決定機構302はオペレーティングシステムに照会して、そのウィンドウクラスはそのフィールドがテキスト編集用のフィールドであることを示すかどうかなど、そのフィールドのプロパティを判断することができる。さらに、ウィンドウのプロパティまたはアプリケーション自体(その表示など)を分析して、日付を要求するフィールド、電話番号を要求するフィールド、アドレスを要求するフィールドなど、テキストフィールドのタイプをより具体的に判断することも可能である。
【0052】
フォーカスされるフィールドを分類すると、上記で概説したように、それを用いて適切な入力メソッド及び/又は入力メソッドの入力パネルの識別子に(入力メソッド選択データベース214を介して)アクセスすることができる。したがって、一般的に、ソフトウェア入力メソッドマネジャ204が受け取る状態データのソース(例えば外部の機構302、またはアプリケーションプログラム)は重要ではなく、アプリケーションの状態情報(例えばフィールドコード)が受け取られ、入力メソッド/入力パネルを自動的に選択できるということだけが問題となる。
【0053】
図3にも示すように、(例えばユーザによって)以前に入力されたデータのデータベース304は、ソフトウェア入力メソッドマネジャ204によって保持しても、あるいは特定の入力メソッド(別個には図示せず)によって保持してもよい。この方式により、例えば、電子メールアドレス、ネットワークアドレス、およびその他のユーザ固有のデータなど、直近で使用されたデータ及び/又は最も頻繁に使用されるデータを、図3のマネジャから提供される以前に入力されたデータ306のように、記憶するか、またはその他の形で選択された入力メソッド206からアクセスできるようにすることができる。この場合も、キーに表示し、キーの意味付けとして使用することのできるデータは、実際のユーザ入力及び/又は何らかのデフォルト情報から把握することができる。容易に理解されるように、これにより、互換性のある入力メソッドの機能を全く認識しないアプリケーションにより本発明を実施することが可能になる。
【0054】
図2および図3に示す実施態様を組み合わせることが可能であることに留意されたい。例えば、アプリケーションは、図2のように入力メソッド/入力パネルの選択に使用される状態情報を直接伝達することができるが、図3のように、マネジャデータベース304のデータをソフトウェア入力メソッドマネジャ204から入力メソッド206に提供することを(通信またはデフォルトにより)指示することも可能である。このようにしてアプリケーションは状態を指定することができるが、以前に入力されたデータを複数のアプリケーションで適宜共用することができ、それにより、(例えば入力フィールドに対応する)同様の状態を有する複数のアプリケーションが個別のデータを保持する必要がなくなり、より一貫性のあるユーザ体験につながると思われる。
【0055】
これに代わる別のものとして、特定のアプリケーションのフィールドに関連付けるためにユーザに手動で入力メソッドを選択させ、そして、その特定のフィールドがフォーカスされると、システムはそれ以後指定時に選択されている入力メソッドをデフォルトで用いることを(チェックボックスなどを介して)指定させることも可能である。この方式により、ユーザは、指定を行わなかった場合のアプリケーションプログラムまたはソフトウェア入力メソッドマネジャ204の選択内容を無効にすることができる。
【0056】
要約として、図9に本発明の動作の説明を提供する。図9に示すように、ステップ900で、ソフトウェア入力メソッドマネジャ204は、アプリケーションプログラム202自体(図2)から、または例えばそのウィンドウプロパティを介してアプリケーション300を分析するアプリケーション状態決定機構302(図3)を介して、アプリケーションプログラムの状態を受け取る。ソフトウェア入力メソッドマネジャ204は、この状態情報を用いて、使用すべき対応する入力メソッドを入力メソッド選択データベース214で検索する。
【0057】
アプリケーションプログラムは、例えば入力メソッド選択データベース214に対応する項目がないなど、対応する入力メソッドが存在しない状態を伝えている場合もあることに留意されたい。ステップ904でこの状況を検知し、それによりプロセスは分岐してステップ906に進む。ステップ906および908でデフォルトの入力メソッド(例えばその入力パネルとして完全な英数字キーボードを有するものなど)をロードするか、またはその状態について何らかの情報が知られているかどうかなど、その状態についての最良の推測された入力メソッドをロードする。例えば、知られていない状態が検知され、ユーザが行う最初の動作が、デフォルトまたは最良の推測によって選択されるものとは異なる入力メソッドを手動で選択することであるときには、その情報を把握して、その状態についてのデフォルト/最良の推測を変更するのに使用することができる。
【0058】
ステップ904に戻り、その状態に対応する入力メソッドが存在する場合はステップ904からステップ910に分岐し、そこでその特定の入力メソッドがすでにアクティブになっているかどうかを調べる。アクティブである場合プロセスは終了するが、まず入力メソッドに、任意の変更可能なキーをその最初の(例えばスクロールされていない)意味付けおよび外観に戻させることが可能である。アクティブでない場合は、ステップ912を実行して対応する入力メソッドがロード可能であるかどうかを判断する。例えば、任意選択の入力メソッドなどインストールが可能なオブジェクトは多数の方式でシステムから削除することができるが、この際入力メソッド選択データベース214はその削除を反映するように更新されることはない。このような例では、ステップ912からステップ906に分岐して、必要であればステップ908で上記のように代替の入力メソッドをロードする。
【0059】
このように、あるアプリケーションプログラムの状態に対応する入力メソッドが存在し、まだアクティブになっておらず、かつ使用可能である場合は、そのメソッドがステップ914で自動的に選択(ロードおよびアクティブ化)され、いずれかの構成データがそのメソッドに渡される。この方式により、ユーザは適切で有用な、かつカスタマイズすることができるキー構成を適切な時に自動的に受け取る。
【0060】
前述の詳細な説明から分かるように、コンピュータシステムにユーザデータを入力するための改良された方法及びシステムが提供される。この方法及びシステムは、アプリケーションの状態に基づいた場合必要とされるキーの数が少ないことからより大きなキーを表示し、しかも所与の状況に適合されたキーを提供することにより、使いやすさと利便性を高めることができる。
【0061】
本発明は、その各種の修正および代替の構築を受け入れることができるとはいうものの、特定の実証した実施形態を図面に示し、上記で詳細に説明した。ただし、本発明をここに開示した特定の形態に制限する意図はなく、逆に本発明は、本発明の精神および範囲に該当するすべての修正形態、代替構成、および均等な形態を包含するものであることを理解されたい。
【0062】
【発明の効果】
以上説明したように、本発明によれば、ソフトウェア入力メソッドやソフトウェア入力メソッドマネジャ等、コンピュータシステムにユーザデータを入力するための改良された方法及びシステムを備えたので、アプリケーションの状態に基づいた場合実際に必要とされるキーの数は多くないことから、より大きなキーを表示し、しかもユーザが頻繁に入力パネルを切り替えることなく所与の状況に適合したキーを提供することにより、使いやすさと利便性を高めることが可能となる。
【図面の簡単な説明】
【図1】本発明を組み込むことが可能なコンピュータシステムを示すブロック図である。
【図2】本発明の一態様により、入力メソッドを選択するためにアプリケーションと通信する入力メソッドマネジャを示すブロック図である。
【図3】本発明の一態様により入力メソッドを選択するために状態決定機構と通信する入力メソッドマネジャを示すブロック図である。
【図4】本発明の一態様による、アプリケーション、およびアプリケーション状態に応じて変更される選択された入力メソッドの表示入力パネルを示す図である。
【図5】本発明によりアプリケーションプログラムの状態に基づいて選択することのできるキーボード(日付入力用)の形態で表示される入力パネルを示す図である。
【図6】本発明によりアプリケーションプログラムの状態に基づいて選択することのできるキーボード(フルキーボード)の形態で表示される入力パネルを示す図である。
【図7】本発明によりアプリケーションプログラムの状態に基づいて選択することのできるキーボード(インターネット向け)の形態で表示される入力パネルを示す図である。
【図8】本発明によりアプリケーションプログラムの状態に基づいて選択することのできるキーボード(電子メールアドレス入力用)の形態で表示される入力パネルを示す図である。
【図9】本発明によりアプリケーションの状態に基づいて入力メソッドを選択するための一般的なロジックを示すフローチャートである。
【符号の説明】
120 動作環境(コンピューティングデバイス)
122 プロセッサ
124 メモリ
126 ディスプレイ(タッチスクリーン付き)
128 キーボード
130 オペレーティングシステム
132、202、300 アプリケーションプログラム
134 通知マネジャ
136 電源
140 発光ダイオード(LED)
144 オーディオ発生器
200 グラフィカルウィンドウ環境
204 ソフトウェア入力メソッドマネジャ
206 ソフトウェア入力メソッド
208 Iinputmethodインタフェース
210 IimCallbackインタフェース
214、216、304 データベース
218 アプリケーションから提供される情報
220 キー決定機構
222 座標からキーへの変換機構
302 アプリケーション状態決定機構
306 マネジャから提供されるデータ
400 ユーザインタフェース領域
402 入力パネル
404 メニューボタン
410 日付入力フィールド
500、600、700 キーボード(入力パネル)
702、704 スクロールボタン

Claims (28)

  1. アプリケーションプログラムにユーザ入力を提供するように構成されたシステムであって、
    前記アプリケーションプログラムから独立しており、その各々が、ユーザとの対話に基づいてユーザ入力を受け取るように構成され、ソフトウェア入力メソッドデータベースに格納された入力パネルを有する複数のソフトウェア入力メソッド、および
    アプリケーション状態決定機構に関連して、
    アプリケーションプログラムから、最初にフォーカスされた1つまたは複数のフィールドに対応する状態情報を受け取る動作と、
    前記アプリケーションプログラムから前記状態情報を受け取った後、前記最初にフォーカスされた1つまたは複数のフィールドのいずれかにおいていずれの前記ユーザ入力も受け取る前に、前記アプリケーションプログラムから前記受信した状態情報に基づいて、適切な入力パネルを予測および選択する動作と、
    前記最初にフォーカスされた1つまたは複数のフィールドへの最初のユーザ入力を受け取った後に、続いて決定される前記アプリケーションプログラムの状態に基づいて、前記選択された入力パネルを自動的に変更する動作と
    を実行するよう構成されたソフトウェア入力メソッドマネジャと
    を備えたことを特徴とするシステム。
  2. 前記アプリケーションプログラムは、前記アプリケーション状態決定機構を介して前記状態を前記ソフトウェア入力メソッドマネジャに伝達することを特徴とする請求項1に記載のシステム。
  3. 前記アプリケーションの状態を決定し、前記状態を前記ソフトウェア入力メソッドマネジャに伝達する、前記アプリケーション状態決定機構を処理する前記アプリケーションプログラムの外部にあるコンポーネントを、さらに備えたことを特徴とする請求項に記載のシステム
  4. 前記アプリケーションプログラムは、前記1つまたは複数のフィールドに対応するデータを前記ソフトウェア入力メソッドマネジャに伝達し、および前記ソフトウェア入力メソッドマネジャは、前記データに基づいて前記入力メソッドを選択することを特徴とする請求項に記載のシステム
  5. 前記アプリケーションプログラムは、表示される1つまたは複数のキー選択を前記ソフトウェア入力メソッドに伝達し、および前記ソフトウェア入力メソッドは、前記表示される1つまたは複数のキー選択に基づいて前記入力パネル上の少なくとも一部のキーを構成することを特徴とする請求項1に記載のシステム。
  6. 前記アプリケーションプログラムは、前記1つまたは複数のキー選択をXMLフォーマットを介して前記ソフトウェア入力メソッドに伝達することを特徴とする請求項に記載のシステム。
  7. 前記1つまたは複数のキー選択は、ユーザ選択の際にディスプレイに出力される文字全体を含むことを特徴とする請求項に記載のシステム。
  8. 以前のユーザ入力情報のデータベースをさらに備え、前記ソフトウェア入力メソッドは、前記以前のユーザ入力情報に基づいて前記入力パネル上の少なくとも一部のキーを構成することを特徴とする請求項1に記載のシステム。
  9. 特定のアプリケーションプログラムを開いた後、任意のユーザの選択がなされる前に、1つまたは複数のソフトウェアに基づく入力パネルを動的に決定するためのコンピュータによって実施される方法であって、
    1つまたは複数のアプリケーションプログラムから、フォーカスされている1つまたは複数のフィールドの1つまたは複数のフィールド識別子に対応するアプリケーション状態データを受け取るステップであって、前記アプリケーション状態データは、前記1つまたは複数のアプリケーションプログラムおよびソフトウェア入力メソッドマネジャから独立しているアプリケーション状態決定機構を介して前記ソフトウェア入力メソッドマネジャにおいて受け取られ、前記ソフトウェア入力メソッドマネジャは、前記1つまたは複数の アプリケーションプログラムからさらに独立しているステップと、
    1つまたは複数のフィールド識別子に対応する前記アプリケーション状態データを受け取った後で、前記フォーカスされている1つまたは複数のフィールドに入力するためのいずれのキーも、ユーザ選択される前に、複数のソフトウェア入力メソッドから前記アプリケーションプログラムのための入力メソッドのデータベースからの入力パネルを自動的に決定するステップであって、各ソフトウェア入力メソッドが前記アプリケーションプログラムから独立しており、前記決定された入力パネルは、前記1つまたは複数のアプリケーションプログラムと共に、ユーザによって使用されるよう構成されているステップと、
    少なくとも1つのカスタマイズされ、表示されるキーを有する少なくとも1つの入力パネルとユーザとの対話に対応して、前記アプリケーションプログラムにデータを戻すステップであって、起動されると前記キーに表示されたテキストを少なくとも1つのアプリケーションプログラムに戻すステップと
    を備えたことを特徴とする方法。
  10. 前記1つまたは複数のアプリケーションプログラムのうちの少なくとも1つから、前記選択された入力メソッドに関連する少なくとも1つのキーの選択を受け取るステップと、該少なくとも1つのキーの選択に基づいて前記入力パネル上の少なくとも1つのキーを構成するステップとをさらに備えたことを特徴とする請求項に記載の方法。
  11. 請求項に記載の方法を実行するコンピュータ実行可能命令を有することを特徴とするコンピュータ読み取り可能な記憶媒体。
  12. 特定のアプリケーションプログラムを開いた後、任意のユーザの選択がなされる前に、1つまたは複数のソフトウェアベースの入力パネルを動的に決定するコンピュータによって実施される方法であって、
    i )1つまたは複数の最初にフォーカスされたフィールドに対応する複数のアプリケーションプログラムの第1のアプリケーションプログラムおよび第2のアプリケーションプログラムから、アプリケーションプログラム状態データを受け取るステップであって、各アプリケーションプログラム状態データは、前記複数のアプリケーションプログラムおよび前記ソフトウェア入力メソッドマネジャから独立しているアプリケーション状態決定機構を介して、ソフトウェア入力メソッドマネジャにおいて受け取られ、前記アプリケーション状態決定機構および前記ソフトウェア入力メソッドマネジャは、前記アプリケーションプログラム状態情報に対応する前記アプリケーションプログラムから独立している受け取るステップと、
    ii )前記アプリケーション状態データを受け取る際、前記1つまたは複数のフォーカスされたいずれかのフィールドへのいずれのユーザも、入力される前に、前記1つまたは複数の最初にフォーカスされたフィールドに対応する前記第1のアプリケーションプログラムおよび前記第2のアプリケーションプログラムの前記アプリケーションプログラム状態データに基づいて、入力パネルのデータベースから1つまたは複数の入力パネルを選択するステップと、
    iii 前記入力パネルにキーを表示して、前記入力パネルとユーザとの対話を可能にするステップと、および
    iv 前記入力パネルとユーザとの対話に対応して、前記アプリケーションプログラムにキーデータを戻すステップと
    を備えたことを特徴とする方法。
  13. 前記アプリケーションプログラムの状態のデータを受け取るステップは、前記アプリケーションプログラムからの通信に対応するデータを受け取るステップを備えたことを特徴とする請求項12に記載の方法。
  14. 前記アプリケーションプログラムの状態のデータを受け取るステップは、前記アプリケーションプログラムに対して外部のコンポーネントからの通信に対応するデータを受け取るステップを備えたことを特徴とする請求項12に記載の方法。
  15. 前記入力パネルを選択するステップは、入力メソッドをロードするステップを備えたことを特徴とする請求項12に記載の方法。
  16. 前記入力パネルを選択するステップは、ロードされた入メソッドに通知するステップを備えたことを特徴とする請求項12に記載の方法。
  17. 前記ソフトウェア入力メソッドマネジャが、表示される1つまたは複数のキーを特定するキー構成情報を示すデータを前記アプリケーションプログラムから受け取るステップと、前記ソフトウェア入力メソッドマネジャが、前記アプリケーションプログラムから受け取った前記キー構成情報に基づいて前記入力パネル上の前記キーの少なくとも一部を構成するステップとをさらに備えたことを特徴とする請求項12に記載の方法。
  18. 前記キー構成情報を受け取るステップは、前記アプリケーションプログラムから通信に対応するデータを受け取るステップを備えたことを特徴とする請求項17に記載の方法。
  19. 前記キー構成情報を受け取るステップは、前記アプリケーションプログラムに対して外部のコンポーネントからの通信に対応するデータを受け取るステップを備えたことを特徴とする請求項17に記載の方法。
  20. 前記アプリケーションプログラムに対して外部の前記コンポーネントからの通信に対応するデータを受け取るステップは、データベースにアクセスするステップを備えたことを特徴とする請求項19に記載の方法。
  21. 前記アプリケーションプログラムにキーデータを戻すステップは、単一の表示されたキーが起動されるのに応答して少なくとも2文字からなる文字列を戻すステップを備えたことを特徴とする請求項12に記載の方法。
  22. 請求項12に記載の方法を実行するコンピュータ実行可能命令を有することを特徴とするコンピュータ読み取り可能な媒体。
  23. 携帯情報端末および格納された前記携帯情報端末においてアプリケーションプログラムによりディスプレイおよびタッチベースによる入力パネルを実装する1つまたは複数のコンピュータ実行可能命令を備えたコンピュータ環境において、任意のユーザ選択から独立して、アプリケーションプログラムを開いた後、所与のアプリケーションプログラムに適している1つまたは複数のカスタマイズされ、タッチパネルによるキーボードを自動的に決定および表示させる方法は、
    アプリケーションプログラムを開くために1つまたは複数の要求を受け取るステップと、
    最初にフォーカスされた1つまたは複数のフィールドに対応する前記アプリケーションプログラムからの状態データを、ソフトウェア入力メソッドマネジャにおいて受け取るステップと、
    前記1つまたは複数の要求および前記状態データを受け取った後、前記1つまたは複数のフィールドへのいずれのユーザの入力も受け取る前に、前記受信した状態データの少なくとも一部を前記携帯情報端末に格納された入力メソッド選択データベース情報と比較するステップであって、前記入力メソッド選択データベース情報は、前記アプリケーションプログラムに共通に入力されたユーザテキストに関する情報と、前記アプリケーションプログラムに対して一意である1つまたは複数のカスタマイズされたキーと、前記アプリケーションプログラムについての1つまたは複数のキー構成とを備える比較するステップと、
    前記アプリケーションプログラムに一意であるカスタマイズされたキーボードを前記携帯情報端末を介して表示するステップであって、前記カスタマイズされたキーボードは、前記ユーザにより選択されると、前記携帯情報端末上に表示されるテキストを有する1つまたは複数のカスタマイズされたキーを含む、表示するステップと
    を備えたことを特徴とする方法。
  24. 前記1または複数のカスタマイズされたキー上に表示される前記テキストは、
    「http://」、「www」、「.com」、「.net」、「.org」、「. gov」、「.biz」、「.edu」、「.mil」を含むインターネットアドレス略語または拡張子か、
    月、日、または年のフルまたは省略されたスペルか
    の任意の1つを備えたことを特徴とする請求項23に記載の方法。
  25. 1つまたは複数のカスタマイズされたキー上に表示される前記テキストは、前記アプリケーションプログラムの前の使用の間に前記ユーザにより以前に入力された完全な単語を含むことを特徴とする請求項23に記載の方法。
  26. 前記予測され選択された入力パネルは、前記ユーザに選択されるとき前記携帯情報端末上に表示されるテキスト文字列を備えている1つまたは複数の複数のカスタマイズされたキー備えたことを特徴とする請求項1に記載のシステム。
  27. 前記1または複数のカスタマイズされたキー上に表示される前記テキストは、
    「http://」、「www」、「.com」、「.net」、「.org」、「.gov」、「.biz」、「.edu」、「.mil」を含むインターネットアドレス略語または拡張子か、
    月、日、または年のフルまたは省略されたスペルか
    の任意の1つを備えたことを特徴とする請求項26に記載のシステム。
  28. 1つまたは複数のカスタマイズされたキー上に表示される前記テキストは、前記アプリケーションプログラムの前の使用の間に前記ユーザにより以前に入力された完全な単語を備えることを特徴とする請求項26に記載のシステム。
JP2002301084A 2001-10-12 2002-10-15 アプリケーションプログラムの状態に基づく自動的なソフトウェア入力パネル選択 Expired - Lifetime JP4091398B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/976,186 2001-10-12
US09/976,186 US20030074647A1 (en) 2001-10-12 2001-10-12 Automatic software input panel selection based on application program state

Publications (2)

Publication Number Publication Date
JP2003186614A JP2003186614A (ja) 2003-07-04
JP4091398B2 true JP4091398B2 (ja) 2008-05-28

Family

ID=25523830

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002301084A Expired - Lifetime JP4091398B2 (ja) 2001-10-12 2002-10-15 アプリケーションプログラムの状態に基づく自動的なソフトウェア入力パネル選択

Country Status (5)

Country Link
US (1) US20030074647A1 (ja)
EP (1) EP1302850A3 (ja)
JP (1) JP4091398B2 (ja)
CN (1) CN1432912A (ja)
TW (1) TWI221253B (ja)

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE47442E1 (en) 2001-04-26 2019-06-18 Lg Electronics Inc. Method and apparatus for assisting data input to a portable information terminal
JP4336788B2 (ja) * 2001-06-04 2009-09-30 日本電気株式会社 移動電話システム及び移動電話機
US6928619B2 (en) * 2002-05-10 2005-08-09 Microsoft Corporation Method and apparatus for managing input focus and z-order
GB2392260A (en) * 2002-05-16 2004-02-25 Andrew David Kirkwood Software application system with an executable file and a user specified data file relating to functions of the application
US20040212595A1 (en) * 2003-04-28 2004-10-28 Debiao Zhou Software keyboard for computer devices
JP4808029B2 (ja) * 2003-08-21 2011-11-02 マイクロソフト コーポレーション 空中点を利用したフォーカス管理
US7634720B2 (en) * 2003-10-24 2009-12-15 Microsoft Corporation System and method for providing context to an input method
US20060036677A1 (en) * 2004-07-30 2006-02-16 Research In Motion Ltd. Method and system for coordinating input and output between a communications client and its host device
JP2006138779A (ja) * 2004-11-15 2006-06-01 Hitachi High-Technologies Corp 自動分析装置
JP2007025808A (ja) 2005-07-12 2007-02-01 Canon Inc 仮想キーボードシステム及びその制御方法
US7554529B2 (en) * 2005-12-15 2009-06-30 Microsoft Corporation Smart soft keyboard
US8935634B2 (en) 2005-12-21 2015-01-13 International Business Machines Corporation Displaying dynamic graphical content in graphical user interface (GUI) controls
US8564544B2 (en) * 2006-09-06 2013-10-22 Apple Inc. Touch screen device, method, and graphical user interface for customizing display of content category icons
US9304675B2 (en) 2006-09-06 2016-04-05 Apple Inc. Portable electronic device for instant messaging
US20080086700A1 (en) * 2006-10-06 2008-04-10 Rodriguez Robert A Systems and Methods for Isolating On-Screen Textual Data
KR20080068491A (ko) 2007-01-19 2008-07-23 엘지전자 주식회사 터치 방식 정보 입력 단말기 및 그 방법
EP1947561B1 (en) * 2007-01-19 2019-06-19 Microsoft Technology Licensing, LLC Method of displaying browser and terminal implementing the same
JP2008250749A (ja) * 2007-03-30 2008-10-16 Yuyama Manufacturing Co Ltd 電子カルテ装置、方法、プログラム、及び、記録媒体
US20090027346A1 (en) * 2007-07-16 2009-01-29 Srivastava Aditya Narain Methods and systems for personalizing and branding mobile device keypads
US20090073126A1 (en) * 2007-07-16 2009-03-19 Srivastava Aditya Narain Standardized method and systems for providing configurable keypads
US20090033628A1 (en) * 2007-07-16 2009-02-05 Srivastava Aditya Narain Method and systems for revealing function assignments on fixed keypads
US20090077467A1 (en) * 2007-07-16 2009-03-19 Abhishek Adappa Mobile television and multimedia player key presentations
US8315362B2 (en) * 2007-08-22 2012-11-20 Citrix Systems, Inc. Systems and methods for voicemail avoidance
US9137377B2 (en) 2007-08-22 2015-09-15 Citrix Systems, Inc. Systems and methods for at least partially releasing an appliance from a private branch exchange
US8750490B2 (en) * 2007-08-22 2014-06-10 Citrix Systems, Inc. Systems and methods for establishing a communication session among end-points
WO2009086316A1 (en) * 2007-12-21 2009-07-09 Citrix Systems, Inc. Systems and methods for efficient processing of data displayed by a window
US8456425B2 (en) 2008-01-30 2013-06-04 International Business Machines Corporation Self-adapting keypad
US8010465B2 (en) 2008-02-26 2011-08-30 Microsoft Corporation Predicting candidates using input scopes
US9652147B2 (en) * 2008-04-15 2017-05-16 HTC Corportion Method and apparatus for shifting software input panel and recording medium thereof
US8612614B2 (en) * 2008-07-17 2013-12-17 Citrix Systems, Inc. Method and system for establishing a dedicated session for a member of a common frame buffer group
US20110260977A1 (en) * 2010-04-23 2011-10-27 Psion Teklogix Inc. Keyboard and computing device for providing a software input panel
CN102236514A (zh) * 2010-05-07 2011-11-09 英业达股份有限公司 电子装置及其虚拟键盘的切换方法
JP5449044B2 (ja) * 2010-06-10 2014-03-19 シャープ株式会社 サーバ装置、端末装置およびアプリケーション制御システム
US9891818B2 (en) * 2010-12-30 2018-02-13 International Business Machines Corporation Adaptive touch-sensitive displays and methods
US20120235917A1 (en) 2011-03-14 2012-09-20 Amihi Miron Context-based keyboard
JP5834529B2 (ja) * 2011-06-23 2015-12-24 ブラザー工業株式会社 入力装置および入力制御プログラム
JP5544335B2 (ja) * 2011-07-26 2014-07-09 京セラドキュメントソリューションズ株式会社 文字入力装置およびそれを備えた画像形成装置
US9594735B2 (en) * 2011-09-12 2017-03-14 Microsoft Technology Licensing, Llc Automatic highlighting of formula parameters for limited display devices
US9588953B2 (en) 2011-10-25 2017-03-07 Microsoft Technology Licensing, Llc Drag and drop always sum formulas
WO2013059905A1 (en) 2011-10-28 2013-05-02 2012244 Ontario Inc. Systems and methods of using input events on electronic devices
DE112011105933T5 (de) * 2011-12-08 2014-11-20 Intel Corporation Verfahren und Vorrichtungen zum dynamischen Anpassen einer virtuellen Tastatur
CN103257886B (zh) * 2012-02-15 2017-03-01 联想(北京)有限公司 一种调用信息输入程序的方法及一种电子设备
WO2013153711A1 (ja) * 2012-04-09 2013-10-17 富士フイルム株式会社 携帯型電子機器及び表示制御方法
KR20130123251A (ko) * 2012-05-02 2013-11-12 삼성전자주식회사 웹 브라우저를 위한 키 보드 구성 방법 및 장치와 그 방법에 대한 프로그램 소스를 저장한 기록 매체
US9547425B2 (en) 2012-05-09 2017-01-17 Apple Inc. Context-specific user interfaces
US10613743B2 (en) 2012-05-09 2020-04-07 Apple Inc. User interface for receiving user input
US10990270B2 (en) 2012-05-09 2021-04-27 Apple Inc. Context-specific user interfaces
US9804759B2 (en) 2012-05-09 2017-10-31 Apple Inc. Context-specific user interfaces
JP5998690B2 (ja) 2012-07-10 2016-09-28 富士ゼロックス株式会社 情報処理装置及びプログラム
US9329778B2 (en) * 2012-09-07 2016-05-03 International Business Machines Corporation Supplementing a virtual input keyboard
CN103677300A (zh) * 2012-09-12 2014-03-26 美的集团股份有限公司 一种输入装置及输入方法
CN102999340B (zh) * 2012-11-28 2016-08-31 百度在线网络技术(北京)有限公司 一种输入法界面的编辑方法及装置
JP6205568B2 (ja) * 2013-01-16 2017-10-04 株式会社日本デジタル研究所 リモートアクセス制御システム、方法、およびプログラム
CN104007890B (zh) * 2013-02-27 2018-12-14 联想(北京)有限公司 信息处理的方法及电子设备
US10360297B2 (en) 2013-06-14 2019-07-23 Microsoft Technology Licensing, Llc Simplified data input in electronic documents
CN103744575B (zh) * 2013-10-08 2018-05-01 百度在线网络技术(北京)有限公司 一种用于提供输入应用的输入辅助区域的方法与设备
AU2015279545B2 (en) 2014-06-27 2018-02-22 Apple Inc. Manipulation of calendar application in device with touch screen
US10135905B2 (en) 2014-07-21 2018-11-20 Apple Inc. Remote user interface
US10452253B2 (en) 2014-08-15 2019-10-22 Apple Inc. Weather user interface
EP2990925A1 (en) * 2014-08-25 2016-03-02 Thomson Licensing Apparatus and method for displaying a virtual keyboard
WO2016036481A1 (en) 2014-09-02 2016-03-10 Apple Inc. Reduced-size user interfaces for dynamically updated application overviews
WO2016036541A2 (en) 2014-09-02 2016-03-10 Apple Inc. Phone user interface
CN104331214B (zh) * 2014-10-11 2020-04-24 联想(北京)有限公司 一种信息处理方法和电子设备
US10055121B2 (en) 2015-03-07 2018-08-21 Apple Inc. Activity based thresholds and feedbacks
US9916075B2 (en) 2015-06-05 2018-03-13 Apple Inc. Formatting content for a reduced-size user interface
DE102015119609A1 (de) * 2015-11-13 2017-05-18 Endress + Hauser Process Solutions Ag Tastaturapplikation für eine Gerätezugriffssoftware
CN106708278A (zh) * 2015-11-18 2017-05-24 富泰华工业(深圳)有限公司 智能发声键盘及控制智能发声键盘的方法和电子装置
DK201770423A1 (en) 2016-06-11 2018-01-15 Apple Inc Activity and workout updates
JP2016207229A (ja) * 2016-09-01 2016-12-08 富士ゼロックス株式会社 情報処理装置及びプログラム
AU2018255484B2 (en) 2017-04-18 2023-02-23 Bankvault Pty Ltd Virtual machines - computer implemented security methods and systems
CN107300986B (zh) * 2017-06-30 2022-01-18 联想(北京)有限公司 输入法切换方法及装置
KR102295234B1 (ko) * 2017-08-23 2021-08-27 삼성에스디에스 주식회사 사용자 단말의 입력 장치 및 방법
US11921998B2 (en) 2020-05-11 2024-03-05 Apple Inc. Editing features of an avatar
US11714536B2 (en) 2021-05-21 2023-08-01 Apple Inc. Avatar sticker editor user interfaces

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5128672A (en) * 1990-10-30 1992-07-07 Apple Computer, Inc. Dynamic predictive keyboard
US5805911A (en) * 1995-02-01 1998-09-08 Microsoft Corporation Word prediction system
US5818437A (en) * 1995-07-26 1998-10-06 Tegic Communications, Inc. Reduced keyboard disambiguating computer
US6664982B1 (en) * 1995-10-16 2003-12-16 Nec Corporation Multi-user on-screen keyboard
JPH10154144A (ja) * 1996-11-25 1998-06-09 Sony Corp 文章入力装置及び方法
US5953541A (en) * 1997-01-24 1999-09-14 Tegic Communications, Inc. Disambiguating system for disambiguating ambiguous input sequences by displaying objects associated with the generated input sequences in the order of decreasing frequency of use
JPH1115914A (ja) * 1997-06-09 1999-01-22 Internatl Business Mach Corp <Ibm> 文字データ入力装置およびその方法
US6492978B1 (en) * 1998-05-29 2002-12-10 Ncr Corporation Keyscreen
US6359572B1 (en) * 1998-09-03 2002-03-19 Microsoft Corporation Dynamic keyboard
US6004049A (en) * 1998-10-29 1999-12-21 Sun Microsystems, Inc. Method and apparatus for dynamic configuration of an input device
US6564254B1 (en) * 1998-11-04 2003-05-13 Dream Technologies Corporation System and a process for specifying a location on a network
US6552719B2 (en) * 1999-01-07 2003-04-22 Microsoft Corporation System and method for automatically switching between writing and text input modes
US6677933B1 (en) * 1999-11-15 2004-01-13 Espial Group Inc. Method and apparatus for operating a virtual keyboard
US6414674B1 (en) * 1999-12-17 2002-07-02 International Business Machines Corporation Data processing system and method including an I/O touch pad having dynamically alterable location indicators
US6714220B2 (en) * 2000-01-19 2004-03-30 Siemens Aktiengesellschaft Interactive input with limit-value monitoring and on-line help for a palmtop device
US7036086B2 (en) * 2001-01-04 2006-04-25 Intel Corporation Displaying software keyboard images
US6724370B2 (en) * 2001-04-12 2004-04-20 International Business Machines Corporation Touchscreen user interface
US7152213B2 (en) * 2001-10-04 2006-12-19 Infogation Corporation System and method for dynamic key assignment in enhanced user interface

Also Published As

Publication number Publication date
CN1432912A (zh) 2003-07-30
US20030074647A1 (en) 2003-04-17
TWI221253B (en) 2004-09-21
EP1302850A3 (en) 2006-11-22
JP2003186614A (ja) 2003-07-04
EP1302850A2 (en) 2003-04-16

Similar Documents

Publication Publication Date Title
JP4091398B2 (ja) アプリケーションプログラムの状態に基づく自動的なソフトウェア入力パネル選択
US11941244B1 (en) Presenting suggestions from search corpora
KR100861861B1 (ko) 음성 입력 방법 편집기용 아키텍처, 음성 입력 방법편집기, 음성 입력 편집 방법 및 머신 판독 가능 저장 장치
US9606989B2 (en) Multiple input language selection
US7719521B2 (en) Navigational interface providing auxiliary character support for mobile and wearable computers
US6493006B1 (en) Graphical user interface having contextual menus
US6562078B1 (en) Arrangement and method for inputting non-alphabetic language
RU2419833C2 (ru) Программируемая клавиатура с развитой логикой
US8136050B2 (en) Electronic device and user interface and input method therefor
US8413069B2 (en) Method and apparatus for the automatic completion of composite characters
AU2014327147B2 (en) Quick tasks for on-screen keyboards
US7836401B2 (en) User operable help information system
US20040036632A1 (en) Universal display keyboard, system, and methods
US20020156774A1 (en) Semantic user interface
US20120047454A1 (en) Dynamic Soft Input
MXPA06003062A (es) Prediccion contextual de palabras de usuario y acciones de usuario.
US20060224963A1 (en) System and methods to access computer files and position and control application window(s) on a graphical user interface
WO2008122243A1 (fr) Procédé et système permettant d&#39;appeler rapidement une commande de programme et système destiné à un procédé d&#39;entrée
US20100228753A1 (en) Intelligent hyperlinking of dates in text
JP2001014103A (ja) 文字入力装置及び文字入力方法
CN117242429A (zh) 智能吸附辅助推荐模型
US10191621B2 (en) Exposing populated lists of personalized strings
CN109643215B (zh) 基于手势输入的应用处理
KR100379917B1 (ko) 핫키입력부를 구비한 휴대용 단말기

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051012

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20051012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070904

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20071204

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20071207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080104

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: 20080129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080228

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110307

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110307

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120307

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130307

Year of fee payment: 5