(57)【要約】      （修正有）【課題】文字入力支援ソフト以外の予測変換機能を用いて予測変換が行なわれた場合であっても文字入力支援ソフトの予測変換精度を向上させる。【解決手段】文字入力支援ソフトにより入力された入力文字情報を受け付けると、受け付けた入力文字情報と、入力文字情報の変換候補である候補文字情報とを表示部に表示させる表示制御部と、表示させた候補文字情報のうち、いずれかの候補文字情報の指定を受け付けると、指定された候補文字情報を、受け付けた入力文字情報に対応付けて文字入力支援ソフトに応じた宛先に送信する送信部とを備える。【選択図】図４
2020030632.tif 000002
【特許請求の範囲】
【請求項１】
文字入力支援ソフトにより入力された入力文字情報を受け付けると、受け付けた前記入力文字情報と、前記入力文字情報の変換候補である候補文字情報とを表示部に表示させ、
表示させた前記候補文字情報のうち、いずれかの候補文字情報の指定を受け付けると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記文字入力支援ソフトに応じた宛先に送信する、
処理をコンピュータが実行することを特徴とする制御方法。
【請求項２】
ウェブサーバからコンテンツ情報を取得すると、取得した前記コンテンツ情報に応じた表示画像を前記表示部に表示させ、
表示した前記表示画像に含まれる特定の領域に、受け付けた前記入力文字情報を表示させる、
ことを特徴とする請求項１記載の制御方法。
【請求項３】
前記いずれかの候補文字情報の指定を受け付けたことに応じて、表示した前記入力文字情報に変化が生じたことを検知すると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記宛先に送信する、
ことを特徴とする請求項１又は２に記載の制御方法。
【請求項４】
前記文字入力支援ソフトによる文字入力中に、当該文字入力支援ソフト以外の機能による文字入力補完が行なわれると、前記候補文字情報および前記入力文字情報を前記宛先に送信する、
ことを特徴とする請求項３記載の制御方法。
【請求項５】
文字入力支援ソフトにより入力された入力文字情報を受け付けると、受け付けた前記入力文字情報と、前記入力文字情報の変換候補である候補文字情報とを表示部に表示させる表示制御部と、
表示させた前記候補文字情報のうち、いずれかの候補文字情報の指定を受け付けると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記文字入力支援ソフトに応じた宛先に送信する送信部と、
を備えることを特徴とする情報処理装置。
【請求項６】
文字入力支援ソフトにより入力された入力文字情報を受け付けると、受け付けた前記入力文字情報と、前記入力文字情報の変換候補である候補文字情報とを表示に表示させ、
表示させた前記候補文字情報のうち、いずれかの候補文字情報の指定を受け付けると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記文字入力支援ソフトに応じた宛先に送信する、
処理をコンピュータに実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御方法，情報処理装置および制御プログラムに関する。
【背景技術】
【０００２】
近年、ＨＴＭＬ（HyperText Markup Language）５の普及で、ウェブ（Web）コンテンツは高度な機能を閲覧者に提供することが可能となった。その機能の一つとして、例えば、検索エンジンを用いた情報検索サービスにおいて、テキスト（文字列）の入力途中で検索キーワードの予測候補を提示する入力補完機能が挙げられる。
【０００３】
この入力補完機能においては、ユーザがキーワード入力用の領域に対して文字列を入力している途中に、ユーザが入力しようとしていると予測される文字列を候補（予測候補）として１つ以上提示する。そして、ユーザは、文字入力の途中で、提示された１つ以上の予測候補の文字列の中から入力を希望する文字列を選択することで、検索キーボードの残り部分をキーボード等を用いて入力することなく入力を完了させることができる。すなわち、ユーザは文字列の入力の手間を軽減することができる。
【０００４】
入力された文字列に基づいて予測候補の文字列を生成する機能を予測変換機能という場合がある。
【０００５】
図１１は従来の情報処理装置におけるウェブコンテンツによる入力補完機能を説明するための図である。
【０００６】
この図１１においては、スマートフォンやタブレット等の携帯型情報処理装置のディスプレイに表示されるウェブコンテンツであって、キーワード検索を実現するための入力画面５０１を示している。
【０００７】
この入力画面５０１は、入力欄５０２を備え、ユーザは図示しないキーボード等の入力装置を用いて、この入力欄５０２に検索キーワードを入力することで検索を行なう。
【０００８】
この図１１においては、ユーザによる検索キーワードの入力の途中の状態を示しており、入力欄５０２に文字列「とうき」が入力されている状態を示す。
【０００９】
ウェブコンテンツにおいては、この入力欄５０２に入力途中の文字列に基づいて、入力が予測される文字列（予測候補）を１つ以上生成して、検索予測キーワード一覧５０３として、入力欄５０２の下方に並べて表示する。図１１に示す例においては、検索予測キーワード一覧５０３に、予測候補として、「東京」，「東京駅」および「東京ドーム」が表示されている。
【００１０】
ユーザは、入力欄５０２への文字入力の途中で、この検索予測キーワード一覧５０３に表示された複数の予測候補の中から入力を希望する予測候補を選択することで、検索キーワードの残り部分を入力することなく入力欄５０２への文字入力を完了させることができる。このように、予測変換機能はユーザによる文字入力を補完する入力補完を実現する。
【００１１】
一方、情報処理装置における一般的な言語入力システム（ＩＭＥ：Input Method Editor）においても、ユーザによるＩＭＥを介した文字入力において行なわれた変換結果を学習し、予測変換を行なって予測候補を提示する入力補完機能が知られている。
【００１２】
図１２は従来の情報処理装置におけるＩＭＥによる入力補完機能を説明するための図である。
【００１３】
この図１２においては、スマートフォンやタブレット等の携帯型情報処理装置のディスプレイに表示されるＩＭＥの入力画面６００を示している。
【００１４】
この入力画面６００は、ソフトウェアキーボード６０１および予測候補表示欄６０２を備える。
【００１５】
ソフトウェアキーボード６０１はユーザが文字入力を行なうために用いる入力手段であり、ユーザがこのソフトウェアキーボード６０１にタッチ操作等を行なうことで文字入力が行なわれる。ソフトウェアキーボード６０１によって入力される文字は、入力欄６０３に表示される。
【００１６】
予測候補表示欄６０２には、ユーザからの入力が予測される文字列の候補（予測候補）が表示される。
【００１７】
ＩＭＥは、ソフトウェアキーボード６０１から入力された文字に基づいて、入力が予測される文字列の候補（予測候補）を、予測候補表示欄６０２に並べて表示する。
【００１８】
図１２に示す例においては、ユーザがソフトウェアキーボード６０１を用いて文字入力を行なっている途中の状態を示しており、入力欄６０３に文字列「とうき」が入力されている状態を示す。
【００１９】
ＩＭＥは、この入力欄６０３に入力途中の文字列に基づいて、予測候補を１つ以上生成して、予測候補表示欄６０２に並べて表示させる。図１２においては、予測候補表示欄６０２に、予測候補として「東京」，「東京駅」，「東京ドーム」および「陶器」が表示されている。
【００２０】
ユーザは、テキストの入力途中で、この予測候補表示欄６０２に表示された複数の予測候補の中から一つの予測候補を選択することで、入力予定の文字の残り部分を入力することなく入力欄６０３への文字入力を完了させることができる。
【００２１】
また、ＩＭＥにおいては、ユーザによって選択された予測候補と、その選択時に入力されていた文字とを対応付けて辞書に登録して辞書の更新を行なうことで、変換精度を向上させる。
【００２２】
このように、情報処理装置においては、入力補完機能が様々なアプリケーションから提供される。
【先行技術文献】
【特許文献】
【００２３】
【特許文献１】特開２００４−７８６６４号公報
【特許文献２】特開２０１０−１４０１６３号公報
【発明の概要】
【発明が解決しようとする課題】
【００２４】
情報処理装置においては、ウェブコンテンツの入力欄５０２にＩＭＥを用いて文字入力を行なうことも一般的に行なわれている。
【００２５】
図１３は従来の情報処理装置におけるウェブコンテンツによる入力補完機能とＩＭＥによる入力補完機能との併用を説明するための図である。
【００２６】
この図１３においては、スマートフォンやタブレット等の携帯型情報処理装置のディスプレイに表示されるウェブページであって、入力画面５０１と入力画面６００とを備える入力画面７００を示している。
【００２７】
なお、図中、既述の符号と同一の符号は同様の部分を示しているので、その説明は省略する。
【００２８】
この図１３に示す入力画面７００においては、ユーザがソフトウェアキーボード６０１を用いて文字入力を行なうことで、入力欄５０２に検索キーワードの入力が行なわれる。
【００２９】
そして、入力欄５０２に入力途中の文字に基づいて、ＩＭＥが提供する予測変換機能により生成された予測候補の文字列が、予測候補表示欄６０２に表示される。
【００３０】
また、入力欄５０２に入力された文字に基づいて、ウェブコンテンツが提供する予測変換機能により生成された予測候補が、検索予測キーワード一覧５０３として、入力欄５０２の下方に並べて表示される。
【００３１】
ユーザは、ソフトウェアキーボード６０１を用いた文字入力の途中で、予測候補表示欄６０２に表示された予測候補の中から入力を希望する文字列を選択することで、入力欄５０２への検索キーワードの入力を完了させてもよい。また、ユーザは、検索予測キーワード一覧５０３に表示された予測候補の中から入力を希望する文字列を選択することで、入力欄５０２への検索キーワードの入力を完了させてもよい。
【００３２】
さて、ＩＭＥの予測変換機能は、入力された文字列とその変換結果とを対応付けて記憶することで学習し、変換精度を向上させる。
【００３３】
しかしながら、ユーザが、ソフトウェアキーボード６０１を用いたＩＭＥの機能による文字入力の途中で、検索予測キーワード一覧５０３に表示された予測候補の中から検索キーワードを選択すると、ＩＭＥにおいては、ソフトウェアキーボード６０１を用いた入力が中断されたのと同様に取り扱われる。
【００３４】
すなわち、ウェブコンテンツが提供する入力補完機能によりユーザの文字入力を補完すると、ＩＭＥにはその予測変換結果が反映されないので、学習することができず、ＩＭＥの予測変換の精度を向上させることができない。
【００３５】
１つの側面では、本発明は、文字入力支援ソフト以外の入力補完機能を用いて予測変換が行なわれた場合であっても文字入力支援ソフトの予測変換精度を向上させることができるようにすることを目的とする。
【課題を解決するための手段】
【００３６】
このため、この制御方法は、文字入力支援ソフトにより入力された入力文字情報を受け付けると、受け付けた前記入力文字情報と、前記入力文字情報の変換候補である候補文字情報とを表示部に表示させ、表示させた前記候補文字情報のうち、いずれかの候補文字情報の指定を受け付けると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記文字入力支援ソフトに応じた宛先に送信する、処理をコンピュータが実行する。
【発明の効果】
【００３７】
一実施形態によれば、文字入力支援ソフトの予測変換精度を向上させることができる。
【図面の簡単な説明】
【００３８】
【図１】実施形態の一例としての情報処理装置のハードウェア構成を示す図である。
【図２】は実施形態の一例としての情報処理装置におけるブラウザの機能構成を例示する図である。
【図３】は実施形態の一例としての情報処理装置におけるＩＭＥの機能構成を例示する図である。
【図４】実施形態の一例としての情報処理装置のタッチディスプレイに表示される入力画面を例示する図である。
【図５】実施形態の一例としての情報処理装置においてＩＭＥに通知される補完結果情報を例示する図である。
【図６】実施形態の一例としての情報処理装置におけるユーザ操作に伴う入力画面の遷移例を示す図である。
【図７】実施形態の一例としての情報処理装置における文字入力の入力補完機能の概要を説明するためのフローチャートである。
【図８】実施形態の一例としての情報処理装置における文字入力の入力補完機能における処理の詳細を説明するためのフローチャートである。
【図９】実施形態の変形例としての情報処理装置のタッチディスプレイに表示されるブラウザのアドレスバーにおける入力を説明するための図である。
【図１０】実施形態の変形例としての情報処理装置１における文字入力の入力補完機能における処理の詳細を説明するためのフローチャートである。
【図１１】従来の情報処理装置におけるウェブコンテンツによる入力補完機能を説明するための図である。
【図１２】従来の情報処理装置におけるＩＭＥによる入力補完機能を説明するための図である。
【図１３】従来の情報処理装置におけるウェブコンテンツによる入力補完機能とＩＭＥによる入力補完機能との併用を説明するための図である。
【発明を実施するための形態】
【００３９】
以下、図面を参照して本制御方法，情報処理装置および制御プログラムにかかる実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形（実施形態および変形例を組み合わせる等）して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００４０】
（Ａ）構成
図１は実施形態の一例としての情報処理装置１を備える情報処理システム２の構成を示す図である。
【００４１】
情報処理システム２は、図１に示すように、ウェブサーバ３および情報処理装置１を備える。情報処理装置１とウェブサーバ３とはネットワーク４を介して通信可能に接続されている。
【００４２】
情報処理装置１は、スマートフォン（多機能携帯電話）やＰＤＡ（Personal Digital Assistants），ＰＣ（Personal Computer），タブレットＰＣ，携帯電話等である。以下、本情報処理装置１がスマートフォンである例について示す。
【００４３】
情報処理装置１は、ハードウェアとして、ＣＰＵ（Central Processing Unit）１０，メモリ１１，ストレージ１２，通信部１３，ＧＰＵ（Graphics Processing Unit）１４およびタッチディスプレイ１５を備える。
【００４４】
ストレージ１２は、ハードディスクドライブ（Hard Disk Drive：ＨＤＤ），ＳＳＤ（Solid State Drive），ストレージクラスメモリ（Storage Class Memory：ＳＣＭ）等の記憶装置であって、種々のデータを格納するものである。
【００４５】
メモリ１１はＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）を含む記憶メモリである。メモリ１１のＲＯＭには、ＯＳ（Operating System）や入力補完制御に係るソフトウェアプログラム（制御プログラム）やこのプログラム用のデータ類が格納されてもよい。入力補完制御に係るソフトウェアプログラムには、後述するブラウザ２０およびＩＭＥ３０としての機能を実現するためのソフトウェアプログラムが含まれる。
【００４６】
なお、ＯＳや入力補完制御に係るソフトウェアプログラムやこのプログラム用のデータ類の少なくとも一部はストレージ１２に格納されてもよい。
【００４７】
メモリ１１上のソフトウェアプログラムは、ＣＰＵ１０に適宜読み込まれて実行される。また、メモリ１１のＲＡＭは、一次記憶メモリあるいはワーキングメモリとして利用される。
【００４８】
通信部１３は、ネットワーク４と接続される通信インタフェースであり、ネットワーク４を介して、ウェブサーバ３等の他のコンピュータとの間でデータの送受信を行なう。ネットワーク４は、例えばＬＡＮ（Local Area Network）である。通信部１３は、例えば、無線ＬＡＮモジュールやＬＡＮカードである。
【００４９】
ＧＰＵ１４は、画像処理を行なう処理装置であり、タッチディスプレイ１５に表示させる画像描写等を行なう。
【００５０】
タッチディスプレイ１５は、例えば、液晶ディスプレイ等の表示装置と、タッチパッドのような位置入力装置としての機能とを一体に構成したタッチパネルである。すなわち、タッチディスプレイ１５は、表示装置としての機能と入力装置としての機能とを有する。
【００５１】
ＣＰＵ１０は、種々の制御や演算を行なう処理装置であり、メモリ１１に格納されたＯＳやプログラムを実行することにより、種々の機能を実現する。これにより、ＣＰＵ１０は、ブラウザ２０（図２参照）およびＩＭＥ３０（図３参照）としての機能を実現する。
【００５２】
なお、ブラウザ２０としての機能を実現するためのプログラム（制御プログラム）やＩＭＥ３０としての機能を実現するためのプログラムは、例えばフレキシブルディスク，ＣＤ（ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ等），ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−ＲＡＭ，ＤＶＤ−Ｒ，ＤＶＤ＋Ｒ，ＤＶＤ−ＲＷ，ＤＶＤ＋ＲＷ，ＨＤ  ＤＶＤ等），ブルーレイディスク，磁気ディスク，光ディスク，光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。また、そのプログラムを、例えば磁気ディスク，光ディスク，光磁気ディスク等の記憶装置（記録媒体）に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
【００５３】
ブラウザ２０およびＩＭＥ３０としての機能を実現する際には、内部記憶装置（本実施形態ではメモリ１１のＲＡＭやＲＯＭ）に格納されたプログラムがコンピュータのマイクロプロセッサ（本実施形態ではＣＰＵ１０）によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
【００５４】
図２は実施形態の一例としての情報処理装置１におけるブラウザ２０の機能構成を例示する図、図３はそのＩＭＥ３０の機能構成を例示する図である。
【００５５】
ブラウザ２０は、ウェブサーバ３が提供する情報をタッチディスプレイ１５に表示させることでユーザに提示するウェブブラウザである。本情報処理装置１においては、ブラウザ２０が、ＨＴＭＬ（Hyper Text Markup Language）で記述されたＨＴＭＬ文書を表示可能なＨＴＬＭブラウザである例について示す。
【００５６】
すなわち、ブラウザ２０は、ＨＴＭＬで記述されたウェブページをタッチディスプレイ１５に表示させる。
【００５７】
ウェブページを表示させるためのＨＴＭＬ文書は、例えば、通信部１３を介して、ウェブサーバ３から取得（ダウンロード）する。また、ＨＴＭＬ文書は、例えば、ストレージ１２から読み出してもよく、種々変形して実施することができる。
【００５８】
図４は実施形態の一例としての情報処理装置１のタッチディスプレイ１５に表示される入力画面１００を例示する図である。
【００５９】
この図４に例示する入力画面１００は、ＨＴＭＬで記述されたウェブページであって、入力欄１１１，第１予測変換候補表示欄１１２，検索ボタン１１３，ソフトウェアキーボード１２１および第２予測変換候補表示欄１２２を備える。
【００６０】
この入力画面１００は、例えばキーワード検索を行なうための画面であって、入力欄１１１に検索キーワードを入力した後に検索ボタン１１３を選択することで、図示しない検索サーバに、入力されたキーワードが送信され、検索が実行される。なお、前述したウェブサーバ３が検索サーバとして機能してもよい。
【００６１】
キーワード検索の結果は、本情報処理装置１に応答され、タッチディスプレイ１５に表示される。なお、タッチディスプレイ１５への検索結果の表示は既知の種々の手法を用いて実現することができ、その説明は省略する。
【００６２】
ソフトウェアキーボード１２１はユーザが文字入力を行なうために用いる入力手段であり、ユーザがこのソフトウェアキーボード１２１にタッチ操作等を行なうことで文字入力が行なわれる。ソフトウェアキーボード１２１によって入力される文字は、例えば入力欄１１１に表示される。ソフトウェアキーボード１２１による文字入力機能はＩＭＥ３０によって実現される。また、ソフトウェアキーボード１２１に代えてハードウェアとしてのキーボードを備えてもよい。
【００６３】
入力欄１１１はユーザによる文字入力が可能なＨＴＭＬの要素であり、ＨＴＭＬコンテンツ内の文字入力可能な領域である。入力欄１１１は、例えば、文字入力が行なわれる<input>領域として定義される。このような文字入力可能な要素（領域）は入力画面１００中に複数備えてもよい。以下、入力欄１１１を要素［Ａ］と表す場合がある。
【００６４】
また、入力欄１１１に漢字入力を行なう場合には、ソフトウェアキーボード１２１によりひらがなを入力した後に、図示しない変換ボタンを選択することで、ＩＭＥ３０が入力されたひらがなを漢字に変換する。
【００６５】
入力欄１１１の下方には第１予測変換候補表示欄１１２が表示されている。第１予測変換候補表示欄１１２は、例えば、<input>に対して文字入力を行なう入力欄１１１（要素［Ａ］）があるウェブコンテンツにおいて、キー入力の度にJavaScriptで<input>の下部に入力候補として表示される。
【００６６】
この第１予測変換候補表示欄１１２にはユーザが入力すると予測される文字列の候補（予測候補）が表示される。この第１予測変換候補表示欄１１２に表示される予測候補は、ウェブサーバ３が提供するウェブコンテンツが、入力欄１１１に入力された文字に基づいて予測するものである。
【００６７】
ウェブコンテンツにおいては、この入力欄１１１に入力途中の文字列に基づいて、入力が予測される文字列の候補（予測候補，検索予測キーワード）を１つ以上生成して、第１予測変換候補表示欄１１２に並べて表示する。すなわち、ウェブコンテンツは、ブラウザ２０に表示されたＨＴＭＬコンテンツの要素に入力された文字に基づいて第１予測変換候補表示欄１１２に予測候補を表示させる機能を有する。第１予測変換候補表示欄１１２は、例えば、ＪＡＶＡスクリプト（Java Script）により表示される。
【００６８】
ウェブコンテンツは、入力欄１１１に文字入力が行なわれると、この入力された文字（入力文字情報）に基づいて入力文字の予測を行ない、入力文字情報の変換候補である候補文字情報（予測候補）を生成する。以下、入力文字情報の変換候補である候補文字情報（予測候補）を生成することを、予測候補を予測するという場合がある。
【００６９】
予測された候補文字情報（予測候補）は、ブラウザ２０によって第１予測変換候補表示欄１１２に表示される。例えば、ブラウザ２０がウェブページを構成するＨＴＭＬ文書を処理することで、ウェブコンテンツが生成する１つ以上の予測候補がタッチディスプレイ１５に表示される。
【００７０】
図４に示す例においては、入力欄１１１に文字「とうき」が入力されており、第１予測変換候補表示欄１１２において、縦方向に３つの予測候補「東京」，「東京駅」および「東京ドーム」が並んで配置されている。
【００７１】
ウェブコンテンツにおける候補文字情報（予測候補）の予測は、例えば、ＨＴＭＬにおける入力補助機能（Autocomplete等）を用いる等、既知の種々の手法を用いて実現することができる。すなわち、第１予測変換候補表示欄１１２に予測候補を表示する機能は、ウェブコンテンツの機能として既知であり、その説明は省略する。
【００７２】
ユーザは、入力欄１１１への文字の入力途中で、この第１予測変換候補表示欄１１２に表示された複数の予測候補の中から入力を希望する予測候補を選択することで、検索キーワードの残り部分を入力することなく入力欄１１１への文字入力を完了させることができる。
【００７３】
このように、第１予測変換候補表示欄１１２に予測候補を表示させ、これらの予測候補の中からユーザが選択を行なうことで、入力欄１１１への文字入力を完了させる入力補完機能は、ＨＴＭＬコンテンツ（ウェブコンテンツ）によって実現される。
【００７４】
なお、以下、ウェブコンテンツのようなＩＭＥ３０とは異なる外部の機能が提供するユーザに対する文字入力の補完機能を外部入力補完機能という場合がある。
【００７５】
第２予測変換候補表示欄１２２には、入力欄１１１に入力された文字に基づいてＩＭＥ３０によって予測される、ユーザから入力される文字列の候補（予測候補）が表示される。
【００７６】
第２予測変換候補表示欄１２２に表示される予測候補は、後述するＩＭＥ３０によって提供される。図４に示す例においては、入力欄１１１に文字「とうき」が入力されており、第２予測変換候補表示欄１２２において、４つの予測候補「東京」，「東京駅」，「東京ドーム」および「陶器」が並んで配置されている。
【００７７】
ＩＭＥ３０においては、この入力欄１１１に入力途中の文字列に基づいて、入力が予測される文字列の候補（予測候補，検索予測キーワード）を１つ以上生成して、第２予測変換候補表示欄１２２に並べて表示させる。
【００７８】
ユーザは、入力欄１１１へのテキストの入力途中で、この第２予測変換候補表示欄１２２に表示された複数の予測候補の中から入力を希望する予測候補を選択することで、検索キーワードの残り部分を入力することなく入力欄１１１への文字入力を完了させることができる。
【００７９】
［ブラウザ２０］
ブラウザ２０は、ウェブサーバ３等からコンテンツ情報（ウェブコンテンツ）を取得すると、取得したウェブコンテンツに応じた表示画像（例えば、入力画面１００）をタッチディスプレイ１５に表示させる。
【００８０】
また、ブラウザ２０は、この入力画面１００における特定の領域（例えば、入力欄１１１）に、ソフトウェアキーボード１２１から入力された文字や、第１予測変換候補表示欄１１２や第２予測変換候補表示欄１２２において選択された文字の表示を行なわせる。
【００８１】
従って、ブラウザ２０は、タッチディスプレイ１５に入力画面１００を表示させる制御を行なう表示制御部として機能する。
【００８２】
ブラウザ２０は、図２に示すように、パーサ２１，ＤＯＭ管理部２２，スクリプトエンジン２３，ラスタライザ２４およびユーザインタフェース２５としての機能を備える。
【００８３】
パーサ２１は、ＨＴＭＬ文書を解析し、ＤＯＭ（Document Object Model：文書オブジェクトモデル）と呼ばれる内部情報を生成する。
【００８４】
ＤＯＭ管理部２２は、パーサ２１によって生成されたＤＯＭを管理する。ＤＯＭ管理部２２は、ＤＯＭを保持し、この保持しているＤＯＭに従って、ラスタライザ２４を用いてＤＯＭの視覚化を行なう。視覚化されたＤＯＭは、ＧＰＵ１４によりタッチディスプレイ１５に表示される。
【００８５】
また、ＤＯＭ管理部２２は、タッチディスプレイ１５に表示されたＨＴＭＬ文書における文字を管理する機能を有する。これにより、ＤＯＭ管理部２２は、タッチディスプレイ１５に表示されている文字等の情報をリアルタイムで把握し、タッチディスプレイ１５に表示されている文字の変化を検知することができる。
【００８６】
スクリプトエンジン２３は、ＨＴＭＬ文書に埋め込まれたスクリプトを解釈して実行する。スクリプトエンジン２３は、例えば、ＪＡＶＡスクリプトエンジンであり、ＪＡＶＡで記述されたスクリプトを解釈して実行する。なお、ＪＡＶＡおよびＪＡＶＡスクリプトは登録商標である。
【００８７】
ユーザインタフェース２５は、タッチディスプレイ１５を介して行なわれるユーザからの入力を取得する。例えば、ユーザインタフェース２５は、タッチディスプレイ１５がユーザによりタッチされたことを検出し（タッチイベントの検出）、そのタッチ位置（座標）を情報として出力する。
【００８８】
また、ユーザインタフェース２５は、補完入力検知部２５１および予測変換結果通知部２５２としての機能を備える。
【００８９】
補完入力検知部２５１は、ユーザがＩＭＥ３０を使用して文字を入力している間に、入力画面１００の要素［Ａ］に、ＩＭＥ３０以外での入力の補完が行なわれたことを検知する。
【００９０】
例えば、補完入力検知部２５１は、ユーザにより行なわれるタッチディスプレイ１５におけるタッチ位置が、ＩＭＥ３０が機能を提供する領域に対して行なわれたか否かに基づき、ユーザによる文字入力がＩＭＥ３０を用いて行なわれたか否かを判断してもよい。具体的には、補完入力検知部２５１は、要素［Ａ］に対してユーザがＩＭＥ３０を用いて文字入力を行なっている間に、ウェブコンテンツが提供する予測変換候補表示欄１１２（図４参照）において入力文字の選択がされた場合に、ＩＭＥ３０以外で入力の補完が行なわれたと検知する。
【００９１】
予測変換結果通知部２５２は、ユーザによるＩＭＥ３０を用いた文字入力の途中にＩＭＥ３０以外で入力の補完が行なわれたことを補完入力検知部２５１が検知した場合に、その補完の内容を示す補完結果情報をＩＭＥ３０に通知する。
【００９２】
図５は実施形態の一例としての情報処理装置１においてＩＭＥ３０に通知される補完結果情報を例示する図である。
【００９３】
補完結果情報は、図５に示すように、入力文字列と補完結果とを対応付けて構成されている。
【００９４】
入力文字列は、外部入力補完機能による入力補完が行なわれた際に、入力欄１１１に入力されていた文字列である。すなわち、入力文字列は、外部入力補完機能により補完が行なわれる変換前の文字列である。入力文字列は、タッチディスプレイ１５におけるタッチが行なわれた場合において、入力画面１００における文字入力領域（例えば、入力欄１１１）において文字列が変化した場合の変化前の文字列である。
【００９５】
補完結果は、外部入力補完機能による入力補完が行なわれた際に、第１予測変換候補表示欄１１２において選択された予測候補の文字列である。すなわち、補完結果は、外部入力補完機能により補完が行なわれた変換後の文字列である。補完結果は、タッチディスプレイ１５におけるタッチが行なわれた場合において、入力画面１００における文字入力領域（例えば、入力欄１１１）において文字列が変化した場合の変化後の文字列である。
【００９６】
図５に例示する補完結果情報においては、入力文字列として「とうき」が示されており、補完結果として「東京」が示されている。
【００９７】
例えば、ユーザが、ソフトウェアキーボード１２１を用いて入力欄１１１に文字「とうき」と入力した状態で、第１予測変換候補表示欄１１２に表示された複数の予測候補の中から「東京」を選択した場合に、予測変換結果通知部２５２は、この図５に例示するようは補完結果情報を作成する。そして、予測変換結果通知部２５２は、作成した補完結果情報をＩＭＥ３０に通知する。
【００９８】
予測変換結果通知部２５２によるＩＭＥ３０への補完結果情報の通知は、ＩＭＥ３０に応じた宛先に対して行なう。例えば、予測変換結果通知部２５２は、補完結果情報をメモリ１１に送信し、このメモリ１１における特定の記憶領域に補完結果情報を格納させる。後述するＩＭＥ３０の予測変換学習部３１がメモリ１１に格納された補完結果情報を読み出すことで、ブラウザ２０からＩＭＥ３０に補完結果情報が受け渡される。
【００９９】
［ＩＭＥ３０］
ＩＭＥ３０は、ユーザの文字入力を支援する文字入力支援ソフトウェアであり、ソフトウェアキーボード１２１上にない文字をソフトウェアキーボード１２１上にあるキーで入力することを実現する。本実施形態においては、ＩＭＥ３０が日本語の文字入力を支援する例を示す。
【０１００】
ＩＭＥ３０は、ソフトウェアキーボード１２１を用いた文字入力を実現させるとともに、ソフトウェアキーボード１２１によって入力されたひらがなの文字を漢字やカタカナ等の他の日本語文字に変換する処理を行なう。
【０１０１】
具体的には、ＩＭＥ３０は、ソフトウェアキーボード１２１から入力された文字（入力文字情報：例えば、ひらがなで入力された文字）に基づいて、ユーザが入力しようとしている文字列を予測し、第２予測変換候補表示欄１２２に予測候補として表示させる。
【０１０２】
ＩＭＥ３０は、ユーザが第２予測変換候補表示欄１２２に表示された複数の予測候補の中から入力を希望する予測候補を選択すると、この選択された予測候補の文字列を入力欄１１１に入力させる。
【０１０３】
ＩＭＥ３０は、図３に示すように、予測変換学習部３１および予測変換辞書３２としての機能を備える。
【０１０４】
予測変換辞書３２は、変換対象文字列と登録文字列とを対応付けて記憶（管理）する。例えば、予測変換辞書３２には、変換対象文字列としてひらがなの文字列が登録され、登録文字列として漢字の文字列が登録され、これらを対応付けて記憶する。変換対象文字列を読みと称してもよい。
【０１０５】
以下、予測変換辞書３２に変換対象文字列と登録文字列とを対応付けて記憶することを学習するという場合がある。
【０１０６】
本実施形態においては、変換対象文字列がひらがなの文字列であり、登録文字列が漢字の文字列である例について示す。ただし、これに限定されるものではなく、変換対象文字列はひらがな以外の文字列であってもよく、登録文字列は漢字以外の文字列であってもよい。
【０１０７】
ＩＭＥ３０は、ソフトウェアキーボード１２１から入力されたひらがなに基づいて予測変換辞書３２を参照して、入力されたひらがなが予測変換辞書３２に登録されている場合には、そのひらがなに対応付けられた漢字の文字を、当該ひらがなに対する予測候補（予測変換候補）として、第２予測変換候補表示欄１２２に表示させる。
【０１０８】
なお、ＩＭＥ３０による日本語変換機能は既知であり、その詳細な説明は省略する。
【０１０９】
予測変換学習部３１は、予測変換辞書３２に変換対象文字列と登録文字列とを記憶させることで予測変換辞書３２を学習させる制御を行なう。例えば、ユーザが図示しない変換ボタンを選択することでひらがなを漢字に変換した場合に、予測変換学習部３１は、変換前に入力欄１１１に入力されていた文字列と選択された文字列とを予測変換辞書３２に学習させる。
【０１１０】
すなわち、予測変換学習部３１は、変換前に入力欄１１１に入力されていた文字列を変換対象文字列とするとともに、選択された文字列を登録文字列として、予測変換辞書３２に学習させる。
【０１１１】
また、予測変換学習部３１は、タッチディスプレイ１５に表示された図示しない単語登録画面においてユーザが入力した変換対象文字列と登録文字列とを予測変換辞書３２に学習させてもよい。これにより、予測変換辞書３２はユーザが任意に学習させることができるユーザ定義辞書として機能する。
【０１１２】
予測変換学習部３１は、予測変換結果通知部２５２から通知された補完結果情報を予測変換辞書３２に学習させる。
【０１１３】
すなわち、予測変換学習部３１は、補完結果情報の入力文字列を変換対象文字列として、また、補完結果を登録文字列として、予測変換辞書３２に学習させる。
【０１１４】
（Ｂ）動作
上述の如く構成された実施形態の一例としての情報処理装置１におけるユーザ操作に伴う入力画面の遷移例を、図６を用いて説明する。
【０１１５】
図６において、符号（Ａ）は文字入力中の入力画面１００を例示し、符号（Ｂ）および符号（Ｃ）はそれぞれ符号（Ａ）で示した入力画面１００からの遷移後の状態を示す。符号（Ｂ），（Ｃ）に示す例においては、それぞれ入力画面１００の一部を示している。
【０１１６】
図６において符号（Ａ）で示す入力画面においては、入力欄１１１にひらがな「とうき」が入力されており、第１予測変換候補表示欄１１２および第２予測変換候補表示欄１２２にそれぞれ複数の予測候補が表示されている。
【０１１７】
この図６の符号（Ａ）に示す入力画面１００において、ユーザによる、第１予測変換候補表示欄１１２に表示された予測候補（例えば「東京駅」）の選択が行なわれた場合には、符号（Ｂ）で示す入力画面１００に遷移する。
【０１１８】
すなわち、ユーザが、タッチディスプレイ１５において、第１予測変換候補表示欄１１２に表示された予測候補をタッチすることで（矢印Ｐ１参照）、ＨＴＭＬコンテンツの要素選択が行なわれる。これにより、文字入力が可能な入力欄１１１（要素［Ａ］）の文字列が「とうき」から「東京駅」変化する（矢印Ｐ２参照）。
【０１１９】
ブラウザ２０の補完入力検知部２５１は、第１予測変換候補表示欄１１２においてタッチイベントが検出された直後に要素［Ａ］に入力されている文字列に変化があった場合には、ＨＴＭＬコンテンツによって入力補完が行なわれたと判断する。
【０１２０】
予測変換結果通知部２５２は、ユーザによるＩＭＥ３０を用いた文字入力の途中にＩＭＥ３０以外で入力の補完が行なわれたことを補完入力検知部２５１が検知した場合に、その補完の内容を示す補完結果情報をＩＭＥ３０に通知する。
【０１２１】
すなわち、予測変換結果通知部２５２は、要素［Ａ］においてタッチ直前まで入力されていた文字列と、タッチにより変化後の文字列とを補完結果情報としてＩＭＥ３０に通知する。図６に示す例においては、予測変換結果通知部２５２は、補完結果情報として、文字「とうき」と文字「東京駅」とを補完結果情報としてＩＭＥ３０（予測変換学習部３１）に通知する。
【０１２２】
一方、図６の符号（Ａ）に示す入力画面１００において、ユーザが、ＩＭＥ３０を使用して文字入力を行なっている途中に文字入力が可能な要素以外をタッチすると（矢印Ｐ３参照）、ＩＭＥ３０による入力がキャンセルされる。
【０１２３】
この場合、符号（Ｃ）に示すように、文字入力が可能な入力欄１１１（要素［Ａ］）の文字列は「とうき」のまま変化しない（矢印Ｐ４参照）。
【０１２４】
ブラウザ２０の補完入力検知部２５１は、タッチイベントが検出された直後に要素［Ａ］に入力されている文字列に変化がない場合には、ＨＴＭＬコンテンツによって入力補完が行なわれなかったと判断する。この場合、予測変換結果通知部２５２は、ＩＭＥ３０に対して補完結果情報を通知しない。
【０１２５】
なお、図６に示す例において、矢印Ｐ１，Ｐ３で示されるいずれの領域に対するタッチ操作が行なわれた場合であっても、入力領域としての入力欄１１１はフォーカスを失うことになるため、ブラウザ２０は、入力が中断されたものとしてＩＭＥ３０を終了させる。ブラウザ２０から終了要求を受けたＩＭＥ３０は、入力中の文字列を破棄し、終了要求に従って終了する。
【０１２６】
さて、上述の如く、補完結果情報は、タッチ直前まで入力していた文字列（入力文字列）と、変化後の文字列（登録文字列）とを備える。すなわち、本情報処理装置１において、予測変換結果通知部２５２は補完結果情報として変化後の文字列のみをＩＭＥ３０に通知するものではない。これは、以下の理由による。
【０１２７】
例えば、図６の符号（Ａ）に例示するように、ユーザがソフトウェアキーボード１２１を用いて入力欄１１１に「とうき」まで入力している状態において、入力画面１００の矢印Ｐ３で示す領域をタッチすると、ブラウザ２０からの終了要求によりＩＭＥ３０が終了する。
【０１２８】
その後、ユーザが、再び入力欄１１１に文字「ょ」を入力した場合には、ＨＴＭＬコンテンツの入力補完機能は「とうきょ」に対する変換候補を表示する。一方で、ＩＭＥ３０においては、文字列「とうき」はブラウザ２０からの終了要求時に破棄しているので、入力を把握している（保有している）文字列は「ょ」のみである。
【０１２９】
このような状態において、「とうきょ」が第１予測変換候補表示欄１１２からの選択により「東京駅」に変換された場合に、予測変換結果通知部２５２が変換後の文字列「東京駅」のみをＩＭＥ３０に通知すると、ＩＭＥ３０においては変換対象文字列「ょ」と登録文字列「東京駅」とが対となり、意図した学習にならない。
【０１３０】
ただし、ＩＭＥ３０が入力テキストの履歴を保持できる場合にはこの限りではなく、ブラウザ２０からは変化したテキストのみを通知してもよい。つまり、「とうき」，「ょ」という２回の文字列入力を記憶しておき、その状態でブラウザ２０から変化後の文字列（登録文字列）「東京駅」のみが通知された場合に、ＩＭＥ３０において「とうきょ」と「東京駅」とを対として学習することで、予測変換精度の向上を図ることができる。   
【０１３１】
次に、実施形態の一例としての情報処理装置１における文字入力の入力補完機能の概要を、図７に示すフローチャート（ステップＳ１〜Ｓ７）に従って説明する。
【０１３２】
ステップＳ１において、ブラウザ２０のユーザインタフェース２５（補完入力検知部２５１）は、タッチディスプレイ１５におけるユーザによるタッチ（タッチイベント）を検出する。例えば、ユーザが文字入力を行なうためにタッチディスプレイ１５における入力欄１１１の位置に指でタッチする。
【０１３３】
ステップＳ２において、補完入力検知部２５１は、タッチディスプレイ１５に表示されている入力画面１００において、タッチ位置に相当する位置（以下、単にタッチ位置という）に、文字入力可能な要素［Ａ］があるかを確認する。本例においては入力欄１１１が要素［Ａ］に相当する。
【０１３４】
確認の結果、タッチ位置に、入力欄１１１のような文字入力可能な要素［Ａ］がある場合には（ステップＳ２のＹＥＳルート参照）、ステップＳ３に移行する。
【０１３５】
ステップＳ３において、ＩＭＥ３０が起動される。ユーザはソフトウェアキーボード１２１を用いて文字入力を開始する。ユーザは、例えば、文字列「とうき」を入力する。
【０１３６】
入力欄１１１に文字入力が行なわれると、ブラウザ２０は、入力欄１１１に入力された文字に基づいてウェブコンテンツが提供する１つ以上の予測候補を第１予測変換候補表示欄１１２に表示させる。ブラウザ２０は、例えば、第１予測変換候補表示欄１１２に、予測候補として「東京」，「東京駅」および「東京ドーム」を表示させる。
【０１３７】
また、ＩＭＥ３０は、ソフトウェアキーボード１２１から入力された文字に基づいて、ユーザが入力しようとしている文字列を予測し、第２予測変換候補表示欄１２２に１つ以上の予測候補を表示させる。例えば、ＩＭＥ３０は、第２予測変換候補表示欄１２２に予測候補として「東京」，「東京駅」，「東京ドーム」および「陶器」を表示させる。
【０１３８】
ステップＳ４において、補完入力検知部２５１は、入力画面１００におけるＩＭＥ３０による入力が行なわれる以外の領域に、ユーザによるタッチが行なわれたこと（タッチイベント）を検知する。例えば、ユーザは第１予測変換候補表示欄１１２に表示された複数の予測候補の中から一の予測候補を選択すべく、タッチディスプレイ１５にタッチ操作を行なう。
【０１３９】
ステップＳ５において、補完入力検知部２５１は、ステップＳ４において検知されたタッチにより、要素［Ａ］に入力されている文字列が変化したかを確認する。すなわち、補完入力検知部２５１は、ステップＳ４において検知されたタッチの前後で要素［Ａ］に入力されている文字列が変化したかを確認する。
【０１４０】
タッチにより要素［Ａ］の文字列が変化した場合には（ステップＳ５のＹＥＳルート参照）、ステップＳ６に移行する。
【０１４１】
ステップＳ６において、予測変換結果通知部２５２は、検出されたタッチが行なわれる直前まで要素［Ａ］に入力されていた文字列（変換対象文字列）と、当該要素［Ａ］における変化後の文字列（登録文字列）とを対応付けて、補完結果情報としてＩＭＥ３０に通知する。
【０１４２】
ステップＳ７において、ブラウザ２０はＩＭＥ３０に終了要求を発行する。これによりＩＭＥ３０が終了し、文字入力処理を終了する。
【０１４３】
一方、ステップＳ２における確認の結果、タッチ位置に、文字入力可能な要素［Ａ］がない場合には（ステップＳ２のＮＯルート参照）、ステップＳ７に移行する。
【０１４４】
また、ステップＳ５における確認の結果、タッチにより要素［Ａ］の文字列が変化しなかった場合にも（ステップＳ５のＮＯルート参照）、ステップＳ７に移行する。
【０１４５】
次に、実施形態の一例としての情報処理装置１における文字入力の入力補完機能における処理の詳細を、図８に示すフローチャート（ステップＳ１〜Ｓ４，Ｓ５１〜Ｓ５４，Ｓ６１，Ｓ７）に従って説明する。
【０１４６】
以下に示す例においては、<input>に対して文字入力を行なう領域（例えば、（要素［Ａ］））があるウェブコンテンツで、キー入力の度にJavaScriptで<input>の下部に入力候補（第１予測変換候補表示欄１１２）を表示するコンテンツを想定している。なお、補完入力検知部２５１は、ＤＯＭ管理部２２からコンテンツ内の文字を取得する。
【０１４７】
また、以下の処理においては、変数prev_textおよび変数curr_textを用いる。これらの変数には文字列が設定される。
【０１４８】
ステップＳ１において、ブラウザ２０のユーザインタフェース２５（補完入力検知部２５１）は、タッチディスプレイ１５におけるユーザによるタッチ（タッチイベント）を検出する。例えば、ユーザが文字入力を行なうためにタッチディスプレイ１５における入力欄１１１の位置に指でタッチする。
【０１４９】
ステップＳ２において、補完入力検知部２５１は、タッチディスプレイ１５に表示されている入力画面１００において、タッチ位置に相当する位置（以下、単にタッチ位置という）に、文字入力可能な要素［Ａ］があるかを確認する。本例においては入力欄１１１が要素［Ａ］に相当する。
【０１５０】
確認の結果、タッチ位置に、入力欄１１１のような文字入力可能な要素［Ａ］がある場合には（ステップＳ２のＹＥＳルート参照）、ステップＳ３に移行する。
【０１５１】
ステップＳ３において、ＩＭＥ３０が起動される。ユーザはソフトウェアキーボード１２１を用いて文字入力を開始する。ユーザは、例えば、文字列「とうき」を入力する。
【０１５２】
入力欄１１１に文字入力が行なわれると、ブラウザ２０は、入力欄１１１に入力された文字に基づいてウェブコンテンツが提供する１つ以上の予測候補を第１予測変換候補表示欄１１２に表示させる。ブラウザ２０は、例えば、第１予測変換候補表示欄１１２に、予測候補として「東京」，「東京駅」および「東京ドーム」を表示させる。
【０１５３】
また、ＩＭＥ３０は、ソフトウェアキーボード１２１から入力された文字に基づいて、ユーザが入力しようとしている文字列を予測し、第２予測変換候補表示欄１２２に１つ以上の予測候補を表示させる。例えば、ＩＭＥ３０は、第２予測変換候補表示欄１２２に予測候補として「東京」，「東京駅」，「東京ドーム」および「陶器」を表示させる。
【０１５４】
ステップＳ４において、補完入力検知部２５１は、入力画面１００におけるＩＭＥ３０による入力が行なわれる以外の領域に、ユーザによるタッチが行なわれたこと（タッチイベント）を検知する。
【０１５５】
例えば、ユーザは、第１予測変換候補表示欄１１２に表示された複数の予測候補の中から一の予測候補を選択すべく、タッチディスプレイ１５における第１予測変換候補表示欄１１２の予測候補の位置に指で触れ、補完入力検知部２５１がそれを検知する。
【０１５６】
ステップＳ５１において、補完入力検知部２５１は、要素［Ａ］に表示されている文字列、すなわち、要素［Ａ］に含まれている現在の文字列（例えば、「とうき」）をprev_textに設定する。
【０１５７】
ステップＳ５２において、ステップＳ４において検知されたタッチイベントに応じた処理が実行される（タッチイベント実行）。例えば、ブラウザ２０は、第１予測変換候補表示欄１１２においてユーザがタッチした予測候補の文字列を入力欄１１１に表示させ、入力された文字列として取り扱う。すなわち、ステップＳ４〜ステップＳ５２にかけて、ユーザによる第１予測変換候補表示欄１１２からの予測候補の選択入力が行なわれる。
【０１５８】
ステップＳ５３において、補完入力検知部２５１は、要素［Ａ］に表示されている文字列、すなわち、要素［Ａ］に含まれている現在の文字列（例えば、「東京駅」）をcurr_textに設定する。
【０１５９】
ステップＳ５４において、補完入力検知部２５１は、prev_textの値とcurr_textの値とを比較する。比較の結果、prev_textの値とcurr_textの値とが不一致である場合には（ステップＳ５４のＹＥＳルート参照）、ステップＳ６１に移行する。
【０１６０】
prev_textの値とcurr_textの値とが不一致であることは，ステップＳ４〜Ｓ５２において行なわれた入力操作が、例えば、第１予測変換候補表示欄１１２における予測候補の選択であったと考えることができる。すなわち、prev_textの値はcurr_textの値に変換されたものである。
【０１６１】
ステップＳ６１において、予測変換結果通知部２５２は、ＩＭＥ３０に対して、prev_textの値を入力文字列とし、curr_textの値を補完結果とする補完結果情報を通知する。すなわち、予測変換結果通知部２５２は、prev_textの値はcurr_textの値に変換可能であることをＩＭＥ３０に通知する。その後、処理はステップＳ７に移行する。
【０１６２】
ステップＳ７において、ブラウザ２０はＩＭＥ３０に終了要求を発行する。これによりＩＭＥ３０が終了し、文字入力処理を終了する。
【０１６３】
ステップＳ２における確認の結果、タッチ位置に、文字入力可能な要素［Ａ］がない場合には（ステップＳ２のＮＯルート参照）、ステップＳ７に移行する。
【０１６４】
また、ステップＳ５４における確認の結果、prev_textの値とcurr_textの値とが一致である場合にも（ステップＳ５４のＮＯルート参照）、ステップＳ７に移行する。
【０１６５】
（Ｃ）効果
このように、本発明の一実施形態としての情報処理装置１によれば、補完入力検知部２５１が、ユーザが、入力画面１００において、ＩＭＥ３０による文字入力中に、ＨＴＭＬコンテンツが提供する入力補完機能を用いて文字入力を行なったことを検知する。
【０１６６】
そして、予測変換結果通知部２５２が、このＨＴＭＬコンテンツが提供する入力補完機能による補完結果を補完結果情報としてＩＭＥ３０に通知する。
【０１６７】
ＩＭＥ３０において、予測変換学習部３１が、予測変換結果通知部２５２から通知された補完結果情報に含まれる入力文字列および補完結果を、予測変換辞書３２に変換対象文字列および登録文字列として学習させる。
【０１６８】
すなわち、ＩＭＥ３０による入力中にＩＭＥ３０以外の機能を用いて文字入力の補完が行なわれた場合に、補完入力検知部２５１が、補完された文字列（変換対象文字列）を、補完した文字列（補完結果）に変換可能と判断する。そして、予測変換結果通知部２５２が、ＩＭＥ３０に対して、この補完結果情報をフィードバックする。これにより、ＩＭＥ３０の予測変換精度を向上させることができる。
【０１６９】
すなわち、ＩＭＥ３０を用いた文字入力時に、ウェブコンテンツによる補完入力を行なった場合に、ＨＴＭＬブラウザからＩＭＥ３０に対してウェブコンテンツによる補完入力の補完結果情報をフィードバックする。これにより、ユーザがウェブコンテンツが提供する入力補完機能（外部入力補完機能）を用いて文字の予測変換を行なった場合であっても、この入力補完をＩＭＥ３０の予測変換辞書３２に反映させることができ、ＩＭＥ３０の予測変換結果の精度向上を実現できる。
【０１７０】
（Ｄ）その他
本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
【０１７１】
例えば、上述した実施形態では、入力画面１００の入力欄１１１（要素［Ａ］）に対して文字入力を行なう例について示したが、これに限定されるものではない。例えば、近年においては、ブラウザのアドレスバーに検索キーワードを入力することでキーワード検索を実現する技術が知られている。
【０１７２】
そこで、本情報処理装置１において、タッチディスプレイ１５に表示されたブラウザ２０のアドレスバーにキーワード等の文字入力を行なう場合に入力補完を行なってもよい。アドレスバーは、ブラウザが表示中（またはユーザが表示させたい）のウェブページのアドレスを表示する領域である。なお、アドレスバーを、ロケーションバー（location bar）またはＵＲＬバー（Uniform Resource Locator bar）という場合がある。
【０１７３】
図９は実施形態の変形例としての情報処理装置１のタッチディスプレイ１５に表示されるブラウザ２０のアドレスバー２０１における入力を説明するための図である。
【０１７４】
この図９に示す例においては、ブラウザ２０のアドレスバー２０１にユーザが検索キーワードの入力を入力している状態を示している。
【０１７５】
図９に例示する入力画面１００は、図４に例示した入力画面１００と同様に、ＨＴＭＬで記述されたウェブページであり、アドレスバー２０１，第１予測変換候補表示欄１１２，ソフトウェアキーボード１２１および第２予測変換候補表示欄１２２を備える。
【０１７６】
アドレスバー２０１においては、キーワード検索を行なうための検索キーワードを入力することができる。そして、このアドレスバー２０１に検索キーワードを入力した後に、エンターキーの押下等の検索実行を指示する入力を行なうことで、図示しない検索サーバに入力されたキーワードが送信され、検索が実行される。このキーワード検索の結果は、本情報処理装置１に応答され、タッチディスプレイ１５に表示される。なお、この検索結果の表示方法は既知の種々の手法を用いて実現することができ、その説明は省略する。
【０１７７】
この図９に示す例においては、アドレスバー２０１の下方に第１予測変換候補表示欄１１２が表示されている。
【０１７８】
ウェブコンテンツにおいては、アドレスバー２０１に入力途中の文字列に基づいて、入力が予測される文字列の候補（予測候補，検索予測キーワード）を１つ以上生成して、第１予測変換候補表示欄１１２に並べて表示する。
【０１７９】
ユーザは、アドレスバー２０１への文字の入力途中で、この第１予測変換候補表示欄１１２に表示された複数の予測候補の中から入力を希望する予測候補を選択することで、検索キーワードの残り部分を入力することなくアドレスバー２０１への文字入力を完了させることができる。
【０１８０】
なお、アドレスバー２０１に入力された文字に基づいて第１予測変換候補表示欄１１２に予測候補を表示する機能はウェブコンテンツの機能として既知であり、その説明は省略する。
【０１８１】
本変形例において、補完入力検知部２５１は、ユーザがアドレスバー２０１にＩＭＥ３０を使用して文字を入力している間に、ＩＭＥ３０以外での入力の補完が行なわれたことを検知する。具体的には、補完入力検知部２５１は、アドレスバー２０１に対して、ユーザがＩＭＥ３０を用いて文字入力を行なっている間に、ＩＭＥ３０が提供する第２予測変換候補表示欄１２２における文字選択やＩＭＥ３０が備える文字変換機能以外の手法を用いて文字入力が行なわれた場合に、ＩＭＥ３０以外で入力の補完が行なわれたと検知する。
【０１８２】
例えば、補完入力検知部２５１は、ユーザがＩＭＥ３０を用いて文字入力を行なっている間に、ウェブコンテンツが提供する第１予測変換候補表示欄１１２において入力文字の選択がされた場合に、ＩＭＥ３０以外で入力の補完が行なわれたと検知する。
【０１８３】
補完入力検知部２５１は、ユーザにより行なわれるタッチディスプレイ１５におけるタッチ位置が、ＩＭＥ３０が機能を提供する領域に対して行なわれたか否かに基づき、ユーザによる文字入力がＩＭＥ３０を用いて行なわれたか否かを判断してもよい。すなわち、補完入力検知部２５１は、ＩＭＥ３０を用いた文字入力の実行中に、タッチディスプレイ１５において、ウェブコンテンツが提供する第１予測変換候補表示欄１１２に相当する領域においてタッチ入力が行なわれた場合に、ウェブコンテンツにより入力の補完が行なわれたと検知する。
【０１８４】
なお、ブラウザ２０においてアドレスバー２０１に文字入力を行なうに際しては、ＨＴＭＬコンテンツ表示を伴わない。そのため、本変形例においては、補完入力検知部２５１はＤＯＭ管理部２２からの文字列の取得を行なわない。なお、ブラウザ２０（補完入力検知部２５１）におけるアドレスバーに入力された文字列の取得は、既知の種々の手法により実現することができる。例えば、アドレスバーがテキストボックスで実装されている場合、そのテキストボックスが含んでいる文字列を取得する。
【０１８５】
また、本変形例は、前述の<input>のようなコンテンツ内の要素に対する入力のうち、コンテンツがJavaScriptによって入力を補完しないような場合、例えばオートコンプリートのような機能に実装してもよい。
【０１８６】
このような、実施形態の変形例としての情報処理装置１における文字入力の入力補完機能における処理の詳細を、図１０に示すフローチャート（ステップＳ１１〜Ｓ１９）に従って説明する。
【０１８７】
以下の処理においては、変数prev_textおよび変数curr_textを用いる。これらの変数には文字列が設定される。
【０１８８】
ステップＳ１１において、ブラウザ２０のユーザインタフェース２５（補完入力検知部２５１）は、タッチディスプレイ１５におけるアドレスバー２０１に相当する位置にユーザによるタッチ（タッチイベント）を検出する。すなわち、ブラウザ２０におけるアドレスバー２０１がタッチイベントを検出する。
【０１８９】
ステップＳ１２においてＩＭＥ３０が起動される。ユーザはソフトウェアキーボード１２１を用いて文字入力を開始する。ユーザは、例えば、文字列「とうき」を入力する。
【０１９０】
アドレスバー２０１に文字入力が行なわれると、ブラウザ２０は、アドレスバー２０１に入力された文字に基づいてウェブコンテンツが提供する１つ以上の予測候補を第１予測変換候補表示欄１１２に表示させる。ブラウザ２０は、例えば、第１予測変換候補表示欄１１２に、予測候補として「東京」，「東京駅」および「東京ドーム」を表示させる。
【０１９１】
また、ＩＭＥ３０は、ソフトウェアキーボード１２１から入力された文字に基づいて、ユーザが入力しようとしている文字列を予測し、第２予測変換候補表示欄１２２に１つ以上の予測候補を表示させる。例えば、ＩＭＥ３０は、第２予測変換候補表示欄１２２に予測候補として「東京」，「東京駅」，「東京ドーム」および「陶器」を表示させる。
【０１９２】
ステップＳ１３において、補完入力検知部２５１は、入力画面１００におけるＩＭＥ３０による入力が行なわれる以外の領域に、ユーザによるタッチが行なわれたこと（タッチイベント）を検知する。
【０１９３】
例えば、ユーザは、第１予測変換候補表示欄１１２に表示された複数の予測候補の中から一の予測候補を選択すべく、タッチディスプレイ１５における第１予測変換候補表示欄１１２の予測候補の位置に指で触れ、補完入力検知部２５１がそれを検知する。
【０１９４】
ステップＳ１４において、補完入力検知部２５１は、アドレスバー２０１に表示されている文字列、すなわち、アドレスバー２０１に含まれている現在の文字列（例えば、「とうき」）をprev_textに設定する。
【０１９５】
ステップＳ１５において、ステップＳ１３において検知されたタッチイベントに対する処理が実行される（タッチイベント実行）。例えば、ブラウザ２０は、第１予測変換候補表示欄１１２においてユーザがタッチした予測候補の文字列を入力欄１１１に表示させ、入力された文字列として取り扱う。すなわち、ステップＳ１３〜ステップＳ１５にかけて、ユーザによる第１予測変換候補表示欄１１２からの予測候補の選択入力が行なわれる。
【０１９６】
ステップＳ１６において、補完入力検知部２５１は、第１予測変換候補表示欄１１２に表示された文字列のうち、ユーザのタッチにより選択された文字列、すなわち、現在の文字列（例えば、「東京駅」）をcurr_textに設定する。
【０１９７】
ステップＳ１７において、補完入力検知部２５１は、prev_textの値とcurr_textの値とを比較する。比較の結果、prev_textの値とcurr_textの値とが不一致である場合には（ステップＳ１７のＹＥＳルート参照）、ステップＳ１８に移行する。
【０１９８】
prev_textの値とcurr_textの値とが不一致であることは，ステップＳ１５において行なわれたタッチ入力が、例えば、第１予測変換候補表示欄１１２における予測候補の選択であったと考えることができる。すなわち、prev_textの値はcurr_textの値に変換されたものである。
【０１９９】
ステップＳ１８において、予測変換結果通知部２５２は、ＩＭＥ３０に対して、prev_textの値を入力文字列とし、curr_textの値を補完結果とする補完結果情報を通知する。すなわち、予測変換結果通知部２５２は、prev_textの値はcurr_textの値に変換可能であることをＩＭＥ３０に通知する。
【０２００】
その後、ステップＳ１９において、ブラウザ２０はＩＭＥ３０に終了要求を発行する。これによりＩＭＥ３０が終了し、文字入力処理を終了する。
また、ステップＳ１７における確認の結果、prev_textの値とcurr_textの値とが一致である場合にも（ステップＳ１７のＮＯルート参照）、ステップＳ１９に移行する。
【０２０１】
このように、本変形例の情報処理装置１においては、ブラウザ２０のアドレスバー等のＤＯＭ管理部２２が管理する領域へ文字入力を行なう場合においても、上述した一実施形態と同様の作用効果を奏することができる。
【０２０２】
すなわち、補完入力検知部２５１が、入力画面１００において、ユーザがＩＭＥ３０による文字入力中にウェブサーバ３等のＩＭＥ３０以外が提供する入力補完機能を用いて文字入力を行なったことを検知する。
【０２０３】
そして、予測変換結果通知部２５２が、ＩＭＥ３０以外によって提供される入力補完機能による補完結果を補完結果情報としてＩＭＥ３０に通知する。
【０２０４】
ＩＭＥ３０において、予測変換学習部３１が、予測変換結果通知部２５２から通知された補完結果情報に含まれる入力文字列および補完結果を、予測変換辞書３２に変換対象文字列および登録文字列として学習させる。
【０２０５】
すなわち、ＩＭＥ３０による入力中にＩＭＥ３０以外の機能を用いて文字入力の補完が行なわれた場合に、補完入力検知部２５１が、補完された文字列（変換対象文字列）を、補完した文字列（補完結果）に変換可能と判断する。そして、予測変換結果通知部２５２が、ＩＭＥ３０に対して、この補完結果情報をフィードバックする。これにより、ＩＭＥ３０の予測変換精度を向上することができる。
【０２０６】
また、上述した実施形態および変形例においては、ＩＭＥ３０を用いた文字入力時に、外部入力補完機能としてウェブコンテンツによる補完入力を用いる例を示したが、これに限定されるものではない。ウェブコンテンツ以外が提供する入力補完機能を用いて文字入力が行なわれた場合においても、補完入力検知部２５１は既知の種々の手法を用いてＩＭＥ３０以外での入力の補完が行なわれたことを検知してもよい。また、予測変換結果通知部５６は、その補完結果情報をＩＭＥ３０に通知してもよい。また、文字入力支援ソフトはＩＭＥに限定されるものではなく、種々変更して実施することができる。
【０２０７】
また、上述した開示により本実施形態を当業者によって実施・製造することが可能である。
【０２０８】
（Ｅ）付記
以上の実施形態に関し、さらに以下の付記を開示する。
【０２０９】
（付記１）
文字入力支援ソフトにより入力された入力文字情報を受け付けると、受け付けた前記入力文字情報と、前記入力文字情報の変換候補である候補文字情報とを表示部に表示させ、
表示させた前記候補文字情報のうち、いずれかの候補文字情報の指定を受け付けると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記文字入力支援ソフトに応じた宛先に送信する、
処理をコンピュータが実行することを特徴とする制御方法。
【０２１０】
（付記２）
ウェブサーバからコンテンツ情報を取得すると、取得した前記コンテンツ情報に応じた表示画像を前記表示部に表示させ、
表示した前記表示画像に含まれる特定の領域に、受け付けた前記入力文字情報を表示させる、
ことを特徴とする付記１記載の制御方法。
【０２１１】
（付記３）
前記いずれかの候補文字情報の指定を受け付けたことに応じて、表示した前記入力文字情報に変化が生じたことを検知すると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記宛先に送信する、
ことを特徴とする付記１又は２に記載の制御方法。
【０２１２】
（付記４）
前記文字入力支援ソフトによる文字入力中に、当該文字入力支援ソフト以外の機能による文字入力補完が行なわれると、前記候補文字情報および前記入力文字情報を前記宛先に送信する、
ことを特徴とする付記３記載の制御方法。
【０２１３】
（付記５）
文字入力支援ソフトにより入力された入力文字情報を受け付けると、受け付けた前記入力文字情報と、前記入力文字情報の変換候補である候補文字情報とを表示部に表示させる表示制御部と、
表示させた前記候補文字情報のうち、いずれかの候補文字情報の指定を受け付けると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記文字入力支援ソフトに応じた宛先に送信する送信部と、
を備えることを特徴とする情報処理装置。
【０２１４】
（付記６）
前記表示制御部が、
ウェブサーバからコンテンツ情報を取得すると、取得した前記コンテンツ情報に応じた表示画像を前記表示部に表示させ、
表示した前記表示画像に含まれる特定の領域に、受け付けた前記入力文字情報を表示させる、
ことを特徴とする付記５記載の情報処理装置。
【０２１５】
（付記７）
前記送信部が、
前記いずれかの候補文字情報の指定を受け付けたことに応じて、表示した前記入力文字情報に変化が生じたことを検知すると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記宛先に送信する、
ことを特徴とする付記５又は６に記載の情報処理装置。
【０２１６】
（付記８）
前記送信部が、
前記文字入力支援ソフトによる文字入力中に、当該文字入力支援ソフト以外の機能による文字入力補完が行なわれると、前記候補文字情報および前記入力文字情報を前記宛先に送信する、
ことを特徴とする付記７記載の情報処理装置。
【０２１７】
（付記９）
文字入力支援ソフトにより入力された入力文字情報を受け付けると、受け付けた前記入力文字情報と、前記入力文字情報の変換候補である候補文字情報とを表示部に表示させ、
表示させた前記候補文字情報のうち、いずれかの候補文字情報の指定を受け付けると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記文字入力支援ソフトに応じた宛先に送信する、
処理をコンピュータに実行させることを特徴とする制御プログラム。
【０２１８】
（付記１０）
ウェブサーバからコンテンツ情報を取得すると、取得した前記コンテンツ情報に応じた表示画像を前記表示部に表示させ、
表示した前記表示画像に含まれる特定の領域に、受け付けた前記入力文字情報を表示させる、
処理を前記コンピュータに実行させることを特徴とする付記９記載の制御プログラム。
【０２１９】
（付記１１）
前記いずれかの候補文字情報の指定を受け付けたことに応じて、表示した前記入力文字情報に変化が生じたことを検知すると、指定された前記候補文字情報を、受け付けた前記入力文字情報に対応付けて前記宛先に送信する、
ことを前記コンピュータに実行させることを特徴とする付記９又は１０に記載の制御プログラム。
【０２２０】
（付記１２）
前記文字入力支援ソフトによる文字入力中に、当該文字入力支援ソフト以外の機能による文字入力補完が行なわれると、前記候補文字情報および前記入力文字情報を前記宛先に送信する、
処理を前記コンピュータに実行させることを特徴とする付記１１記載の制御プログラム。
【符号の説明】
【０２２１】
１    情報処理装置
２    情報処理システム
３    ウェブサーバ
１０    ＣＰＵ
１１    メモリ
１２    ストレージ
１３    通信部
１４    ＧＰＵ
１５    タッチディスプレイ
２０    ブラウザ
２１    パーサ
２２    ＤＯＭ管理部
２３    スクリプトエンジン
２４    ラスタライザ
２５    ユーザインタフェース
２５１    補完入力検知部
２５２    予測変換結果通知部
３０    ＩＭＥ
３１    予測変換学習部
３２    予測変換辞書
１００    入力画面
１１１    入力欄
１１２    第１予測変換候補表示欄
１１３    検索ボタン
１２１    ソフトウェアキーボード
１２２    第２予測変換候補表示欄
２０１    アドレスバー
【図１】
2020030632.tif 000003
【図２】
2020030632.tif 000004
【図３】
2020030632.tif 000005
【図４】
2020030632.tif 000006
【図５】
2020030632.tif 000007
【図６】
2020030632.tif 000008
【図７】
2020030632.tif 000009
【図８】
2020030632.tif 000010
【図９】
2020030632.tif 000011
【図１０】
2020030632.tif 000012
【図１１】
2020030632.tif 000013
【図１２】
2020030632.tif 000014
【図１３】
2020030632.tif 000015