(57)【特許請求の範囲】
【請求項１】
コンピュータ・システムのコンピュータ・ディスプレイ上にハイパーテキスト文書を表示する方法であって、
（ａ）ハイパーテキスト文書内で定義されたハイパーテキスト・リンクの主入力領域をコンピュータ・ディスプレイ上に表示するステップと、
（ｂ）前記主入力領域に関連付けられた補助入力領域を表示するステップであって、前記補助入力領域がナビゲート・ボタンを含み、かつ前記ナビゲート・ボタンを主入力領域と隣接して配置することによってそれらを視覚的に対にするものと、
（ｃ）前記補助入力領域を対象とするユーザ入力に応答してハイパーテキスト・リンクを起動するステップとを含む方法。
【請求項２】
前記補助入力領域を表示するステップが、ナビゲート・ボタンを主入力領域と隣接するように挿入することによって、ハイパーテキスト文書をローカルに修正するステップをさらに含む、請求項１に記載の方法。
【請求項３】
コンピュータ・システムのコンピュータ・ディスプレイ上にハイパーテキスト文書を表示する方法であって、
（ａ）ハイパーテキスト文書内で定義されたハイパーテキスト・リンクの主入力領域をコンピュータ・ディスプレイ上に表示するステップと、
（ｂ）ユーザのコントロール選択に応答して、前記主入力領域に関連付けられた補助入力領域を表示するステップと、
（ｃ）前記補助入力領域を対象とするユーザ入力に応答してハイパーテキスト・リンクを起動するステップとを含む方法。
【請求項４】
コンピュータ・システムのコンピュータ・ディスプレイ上にハイパーテキスト文書を表示する方法であって、
（ａ）ハイパーテキスト文書内で定義されたハイパーテキスト・リンクの主入力領域をコンピュータ・ディスプレイ上に表示するステップと、
（ｂ）タッチ・スクリーン入力に応答して、前記主入力領域に関連付けられた補助入力領域を表示するステップと、
（ｃ）前記補助入力領域を対象とするユーザ入力に応答してハイパーテキスト・リンクを起動するステップとを含む方法。
【請求項５】
ハイパーテキスト文書内で定義された対応する複数のハイパーテキスト・リンク用の複数の主入力領域が表示され、前記補助入力領域を表示するステップが
（ｉ）各主入力領域について、タッチ・スクリーン入力までの最短距離を決定するステップと、
（ｉｉ）前記タッチ・スクリーン入力からの距離のしきい値の範囲内にある主入力領域のリストを作成するステップと、
（ｉｉｉ）前記リストの各主入力領域について補助入力領域を表示するステップとを含む、請求項４に記載の方法。
【請求項６】
（ａ）メモリと、
（ｂ）前記メモリ内に常駐するプログラムとを含む装置であって、前記プログラムが、ハイパーテキスト文書内で定義されたハイパーテキスト・リンクの主入力領域についての画面表示データを生成し、前記主入力領域に関連付けられた補助入力領域についての画面表示データを生成し、前記補助入力領域を対象とするユーザ入力に応答してハイパーテキスト・リンクを起動し、前記補助入力領域を対象とするユーザ入力後に、前記補助入力領域についての任意の画面表示データを削除するように構成されている装置。
【請求項７】
（ａ）メモリと、
（ｂ）前記メモリ内に常駐するプログラムとを含む装置であって、前記プログラムが、ハイパーテキスト文書内で定義されたハイパーテキスト・リンクの主入力領域についての画面表示データを生成し、タッチ・スクリーン入力に応答して前記主入力領域に関連付けられた補助入力領域についての画面表示データを生成し、前記補助入力領域を対象とするユーザ入力に応答してハイパーテキスト・リンクを起動するように構成されている装置。
【請求項８】
コンピュータ・システムのタッチ・スクリーン上にハイパーテキスト文書を表示する方法であって、
ハイパーテキスト文書内で定義されたハイパーテキスト・リンクに従い、該ハイパーテキスト・リンクを起動するための主入力領域を表示するとともに、前記主入力領域と同一のハイパーテキスト・リンクを起動するための補助入力領域を前記タッチ・スクリーン上に自動的に表示するステップと、
前記補助入力領域を対象とするユーザによる前記タッチ・スクリーン入力に応答してハイパーテキスト・リンクを起動するステップとを含む方法。
【請求項９】
コンピュータ・システムのタッチ・スクリーン上にハイパーテキスト文書を表示する装置であって、
ハイパーテキスト文書内で定義されたハイパーテキスト・リンクに従い、該ハイパーテキスト・リンクを起動するための主入力領域を表示するとともに、前記主入力領域と同一のハイパーテキスト・リンクを起動するための補助入力領域を前記タッチ・スクリーン上に自動的に表示する手段と、
前記補助入力領域を対象とするユーザによる前記タッチ・スクリーン入力に応答してハイパーテキスト・リンクを起動する手段とを含む装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般にコンピュータおよびコンピュータ・ソフトウェアに関する。さらに詳細には、一般にコンピュータ・ディスプレイ上に表示されるユーザ・インターフェース・コントロールとインターフェースする方法に関する。
【０００２】
【従来の技術】
ハイパーテキスト・リンクは、その直観性、平易性、および効率性から、コンピュータとインターフェースする方法としては非常に一般的なものとなっている。ハイパーテキスト・リンクを使用する場合、ユーザは、ハイパーテキスト・リンク上にポインタを移動し、キーまたはボタンを押し下げてそのハイパーテキスト・リンクを選択する（「ポイント・アンド・クリック」と呼ばれる操作）ことによって、複数の文書間または同じ文書内の異なる場所の間あるいはその両方を移動することができる。
【０００３】
ハイパーテキスト・リンクは、テキスト文字列内に埋め込まれ、ハイパーテキスト・リンクとして識別するために強調表示されているテキストを含む場合が多い。したがってユーザは、テキスト文字列の一部分からそのテキストを直接選択することによって移動できる場合が多い。たとえば、「the winner of the 1973 Kentucky Derby was Secretariat（１９７３年のケンタッキー・ダービーではセクレタリアトが優勝した）」というテキスト文字列では、「Secretariat」という単語に対して定義されたハイパーテキスト・リンクがあり、ユーザがこの「Secretariat」という単語をポイント・アンド・クリックするだけで、セクレタリアトの通算競馬成績を載せた別の文書が閲覧できるようになっていることがある。
【０００４】
ハイパーテキスト・リンクの主な用途は、インターネットから、特にWorld Wide Web（「Ｗｅｂ」）で知られるインターネットの一部から情報を取り出すことにある。さらに、Ｗｅｂの人気が絶えず高まり続けているため、多くの私的ネットワーク、ならびにユーザのワークステーションに対してローカルな他のアプリケーションが、現在ハイパーテキスト・リンクを使用して文書にアクセスし、複数の文書間を移動している。文書は通常、ハイパーテキスト・マークアップ言語（ＨＴＭＬ）として知られる標準言語を使用してフォーマットされ、Ｗｅｂまたはハイパーテキスト・ブラウザとして知られるコンピュータ・ソフトウェア・アプリケーションを使用して閲覧される。ブラウザは通常、特定の文書の全体または一部分を１つまたは複数のグラフィカル・ウィンドウに表示する。
【０００５】
代表的なブラウザおよびブラウザ上で閲覧されるハイパーテキスト文書は、一般に、手で操作するポインティング・デバイス、たとえばトラックボール、タッチ・パッド、マウスなど用に最適化されている。これらのポインティング・デバイスは一般に、（１）ポインティング・デバイスによって制御されるカーソルの現在位置についてユーザへのフィードバック、および（２）ディスプレイ上の座標の個別選択という２つの属性を有する。すなわち、カーソルが対象となる表示オブジェクトを正確に指し示すまで、ユーザはカーソルの位置を調節することができる。ポインティング・デバイス上のボタンのクリックによるオブジェクトの選択は、ごく特定のポイントに対応するものである。
【０００６】
典型的なハイパーテキスト文書は、典型的なデスクトップ・コンピュータまたはラップトップ・コンピュータの画面のサイズおよび解像度に合わせて設計され、表示されるリンクの密度は、典型的なポインティング・デバイスが正確であることを前提としている。しかし様々な制約により、ユーザはハイパーテキスト文書との対話において問題に遭遇する。ヒューマン・エラー、不十分なビジョン、または不十分な調整によって、ブラウザが表示するハイパーテキスト文書上でのリンクの選択に問題が発生する。コンピュータ・システムが、たとえば小さな表示や感度の高すぎるポインティング・デバイスを含み、リンクの選択が複雑になることがある。さらに、ハイパーテキスト文書の中には、非常に小さなリンクが互いに接近して配置されているため本質的に選択が困難な、設計の良くないものがある。
【０００７】
間違ったリンクを選択したりすべてのリンクを見逃す（miss）ことは、ユーザの作業を遅らせ欲求不満を起こさせるので問題である。リンクへ移動するのにしばしば時間がかかるため、ユーザはある期間エラーに気付かないことがある。その後ユーザはそれまでのステップを逆戻りして、ハイパーテキスト文書の元の部分へ戻り、やり直さなければならない。人間、システム、または文書設計の制約が厳しい場合、ユーザは所望のリンクを繰り返し見逃してしまうことがある。
【０００８】
ハイパーテキスト・リンクを選択する際のこのような問題は、コンピュータ・ディスプレイに組み込まれているタッチ・スクリーン・ポインティング・デバイスの場合はさらに著しく、ハイパーテキスト・ナビゲーションが困難になる。パーム・トップ・タイプのコンピュータなどの小型のタッチ・スクリーンでは、リンクが小さく表示されるので選択が困難である。キオスクなどのタッチ・スクリーンの場合、スクリーンは大きいが、ユーザがリンクを選択しにくいことがある。通常、ディスプレイのガラスは厚いため、ディスプレイの向きによってリンクがオフセットしているように見える視差効果が生じてしまうことがある。また、ユーザもこうしたインターフェースにあまり慣れていないため、ヒューマン・エラーが増加することがある。さらに、タッチ・スクリーンの中には、タッチされた区域の入力を、その入力を表す単一の座標を選択することによって処理するものがある。このような近似は、ユーザが所望の区域と部分的に重なる指定をしたのにコンピュータ・システムがその入力を所望の区域外の座標として処理した場合、エラーを招く。
【０００９】
その他のタイプのユーザ入力装置では、ハイパーテキスト・リンクを正確に選択するのを難しくするエラーを招くこともある。たとえば、タッチ・スクリーンの中には、従来のディスプレイ画面の前方の僅かに離れた所に向けた赤外線センサを使用して実施されるものもある。またたとえば仮想現実インターフェースの中には、機器付きの（instrumented）手袋やその他の三次元ポインティング・デバイスを使用して、三次元空間内でポインタを位置決めするものもある。いずれの場合でも、ヒューマン・エラーや視差効果などの要因がポイント精度に悪影響を与えることがある。
【００１０】
ハイパーテキスト・リンクを正確に選択することによってハイパーテキスト文書間を効率的に移動することの重要性は、この形式のナビゲーションが普及するのに従って高まっている。たとえばＷｉｎｄｏｗｓ  ９８などの現在のオペレーティング・システムは、ブラウザを緊密に組み込んでいる。したがって、ローカルに格納された文書の探索および閲覧が、ブラウザ環境で実行されることがある。さらに、多くのワード・プロセッサなどのアプリケーションで、ハイパーテキスト文書を簡単に作成することができる。したがって、ユーザは、ブラウザがナビゲートできる使用可能な内容をますます大量に有することになる。また、インターネット上で行われる商取引や通信の量も増加し、ハイパーテキスト文書上での効率的なナビゲーションが重大になっている。さらに、多くの携帯デジタル通信装置が一部のブラウジング機能を組み込んでいる。
【００１１】
正確にリンクを選択するための既存の代替方法は、特にタッチ・スクリーン上または他の同様な「粗放な（course）」ポインティング・デバイスを使用した装置上では不十分である。表示される部分のサイズが大きくなればハイパーテキスト・リンクは選択しやすくなるが、このオプションは一般に好まれないか、または使用不可能である。第１に、ブラウザおよびコンピュータのオペレータ・システムのせいでサイズを大きくすることが難しいことがある。第２にハイパーテキスト文書は、非常に小さな部分に無理に焦点を当てようとする場合、使用が難しくなることがある。全体を閲覧すべきセクションを閲覧するために前後へのスクローリングでは不十分なことがある。たとえば、ユーザが簡便さを好む消費者キオスクにおいてや、サイズと携帯性が主要な関心事であるパーム・トップ・タイプのコンピュータなど、多くの場合、より正確な他のポインティング・デバイスに替えることが不適当なこともある。
【００１２】
【発明が解決しようとする課題】
したがって、タッチ・スクリーンまたは同様のポインティング・デバイスを使用したユーザ・インターフェース・コントロールの選択、特にハイパーテキスト・リンクの選択を簡単にする方法が、引き続き強く求められている。
【００１３】
【課題を解決するための手段】
本発明は、ハイパーテキスト・リンク用の主入力領域の表示に応答して補助入力領域が表示される、コンピュータ・システム、プログラム製品、および方法を提供することによって、これらの問題および従来技術に伴うその他の問題に対処している。この補助入力領域は、タッチ・スクリーン入力での選択を容易にするために適切なサイズにし、主入力領域に参照付けされたナビゲート・ボタンを備えることができる。
【００１４】
さらに本発明のいくつかの実施形態では、この補助入力領域の表示が所定の事象によってトリガできる。こうしたトリガの１つは、ユーザがハイパーテキスト・リンク用の主入力領域の外部にある表示部分を選択することでもよい。こうしたトリガのもう１つは、特に、ユーザ入力に応答してブラウザに複数の入力座標を提供するタッチ・スクリーン・ポインティング・デバイスの場合に、２つの主入力領域内にある表示部分を選択することでもよい。さらにもう１つの実施形態では、単に１つの主入力領域内にある場合でも、特にブラウザが、複数回のスクリーン・タッチを要求することにより、ハイパーテキスト・リンクを不注意に選択してしまわないように構成されている場合、トリガはスクリーンの任意の部分を選択することでもよい。また、所定の事象は、専用のブラウザ・ボタン、またはポップアップ・メニュー項目やプルダウンメニュー項目などのコントロールをユーザが選択することでもよい。さらに、閲覧するためにハイパーテキスト文書の別の部分または異なるハイパーテキスト文書を選択することが所定の事象でもよい。
【００１５】
本発明は特定の実装に限定されるものではないが、実施形態によっては、主入力領域と補助入力領域の対をカラーまたはパターンで視覚的に関連付けることが望ましいことがあり、こうした関連付けが単色画面ならびにカラー画面上で認識される場合には特にそうである。
【００１６】
本発明に適合するいくつかの実施形態では、補助入力領域はナビゲート・ボタンの形をとる。第１の例示的実施形態では、ハイパーテキスト文書の表示部分の縁部に、複数のナビゲート・ボタンを一列に配置する。あるいは、このボタンを対応する主入力領域またはリンクに隣接して浮動させ、部分的に重なったハイパーテキスト文書の内容が見えるようにおそらくは不透明にすることができる。また別の代替方法では、このボタンをハイパーテキスト文書のローカル・コピーに挿入し、ボタンがハイパーテキスト文書の内容と重ならないように文書を再ページ付けすることができる。他の代替方法は当業者には明白であろう。
【００１７】
【発明の実施の形態】
ハードウェア環境
図面に戻ると、いくつかの図面を通じて同じ番号が同じ部分を表しているが、本発明に適合したコンピュータ・システム１０が図１に示されている。コンピュータ・システム１０は、ネットワーク２０を介してサーバ・システム１８に結合された、１つまたは複数のクライアント・コンピュータ・システム１２、１４、１６（たとえばデスクトップ・コンピュータまたはパーソナル・コンピュータ、ワークステーションなど）を含む、ネットワーク化されたコンピュータ・システムとして示されている。ネットワーク２０は実際には、ローカル・エリア・ネットワーク、広域ネットワーク、無線ネットワーク、および公衆ネットワーク（たとえばインターネット）を含むがそれだけに限らない、任意のタイプのネットワーク化された相互接続を表す。また、任意数のコンピュータおよびその他の装置がネットワーク２０、たとえば複数のサーバを介してネットワーク化できる。さらに本発明の原理は、本発明に適合したスタンドアロン型コンピュータおよび関連装置によっても同様に利用できることを理解されたい。
【００１８】
コンピュータ・システム１２、１４と同様のコンピュータ・システム１６は、特に、マイクロプロセッサなど１つまたは複数のプロセッサ２２、コンピュータ・ディスプレイ２４などいくつかの周辺構成要素（たとえばＣＲＴ、ＬＣＤディスプレイ、または他の表示装置）、ハード・ディスク・ドライブ、フロッピー・ディスク・ドライブ、またはＣＤ−ＲＯＭディスク・ドライブ、あるいはそれらの組合せなどの大容量記憶装置２６、プリンタ２８、ならびに様々なユーザ入力装置（たとえばマウス３０、キーボード３２、タッチ・スクリーン３４）を含むことができる。コンピュータ・システム１６は、オペレーティング・システムの制御下で動作し、当技術分野で周知の様々なコンピュータ・ソフトウェア・アプリケーション、プログラム、オブジェクト、モジュールなど（たとえばブラウザ３６）を実行する。さらに、様々なアプリケーション、プログラム、オブジェクト、モジュールなどは、サーバ１８内の１つまたは複数のプロセッサ、あるいはたとえば分散コンピューティング環境にある他のコンピュータ・システム１２および１４上でも実行できる。
【００１９】
一般に、本発明の例示された実施形態を実装するために実行されるルーチンを、オペレーティング・システムの一部として実装されるか、特定のアプリケーション、プログラム、オブジェクト、モジュール、または命令のシーケンスとして実装されるかにかかわらず、本明細書では「コンピュータ・プログラム」または「プログラム」と呼ぶ。このコンピュータ・プログラムは通常、ネットワーク化されたコンピュータ・システム１０内の装置またはシステムで１つまたは複数のプロセッサによって読み取られて実行されると、前記装置またはシステムに本発明の様々な態様を実施したステップまたは要素を実行するのに必要なステップを実行させる命令を含む。さらに、本発明は完全に機能するコンピュータ・システムのコンテキストでこれまで説明してきたし以下でも説明するが、本発明の様々な実施形態はプログラム製品として様々な形式で配布することが可能であり、本発明は、実際にその配布を実施する信号伝達媒体のタイプにかかわらず等しく適用されることを、当業者なら理解されよう。信号伝達媒体の例には、揮発性および不揮発性メモリ装置、フロッピー・ディスク、ハード・ディスク・ドライブ、ＣＤ−ＲＯＭ、ＤＶＤなどの記録可能型媒体、およびデジタル／アナログ通信リンクなどの伝送型媒体が含まれるが、それだけに限定されるものではない。
【００２０】
図１に示した例示的環境は、本発明を限定することを意図するものではないことを、当業者なら理解されよう。実際に、本発明の範囲から逸脱することなく、他の代替ハードウェア環境を使用することができることを当業者なら理解されよう。
【００２１】
ソフトウェア環境
図２は、本発明に適合するコンピュータ・システム１６に適したあるソフトウェア環境を示した図である。プロセッサ２２は、図ではメモリ３８ならびにいくつかの入出力に結合されている。たとえば、特にマウス３０およびキーボード３２によるユーザ入力は、プロセッサ２２によって受け取られる。他の適当なユーザ・インターフェース・デバイスには、たとえばリモート・コントロール、トラックボール、ジョイスティック、タッチ・パッド、およびＡｃｃｕｐｏｉｎｔ入力装置などが含まれることがある。本発明にとって特に重要なのはタッチ・スクリーン３４への入力であり、タッチ・スクリーン３４が唯一のポインティング・デバイスである場合は特にそうである。追加情報を大容量記憶装置２６に格納しまたはここから取り出し、あるいはその両方が可能である。プロセッサ２２はまた、表示データをディスプレイ２４に出力する。コンピュータ・システム１６は、プロセッサ２２と各構成要素２０、２４、２６、３０、３２、３８との間の、当技術分野で周知の適当なインターフェースを含むことも理解されたい。
【００２２】
本発明の例示的な実施形態は、たとえば、Microsoft Corporationのインターネット・エクスプローラ（Internet Explorer）ブラウザおよびNetscape Communicationsのナビゲータ（Navigator）ブラウザなどと同様のハイパーテキスト（またはｗｅｂ）ブラウザ・アプリケーション３６内で実装される。ただし、本発明は、ユーザ・インターフェース・コントロール、特にハイパーテキスト・リンクを使用する他のアプリケーション内、ならびにオペレーティング・システムまたは本発明に適合したコンピュータ・システムの他のサポート・ソフトウェア内で直接実装することもできることを理解されたい。
【００２３】
図２ではブラウザ３６は、メモリ３８内に常駐している。ただし、アプリケーションの様々な構成要素が起動前にネットワーク２０または大容量記憶装置２６に格納できること、ならびに様々な構成要素がメモリ３８、大容量記憶装置２６、ネットワーク２０、あるいはプロセッサ２２のレジスタもしくはキャッシュまたはその両方に異なる時に常駐できることを理解されたい。
【００２４】
代替例では他のソフトウェア環境が使用できることも理解されたい。
【００２５】
ハイパーテキスト・リンクの領域アシスト
ブラウザ３６は一般に、ハイパーテキスト文書を表示する。ハイパーテキスト文書内のコードは、通常、（１）第１のハイパーテキスト文書の内容に関する配置または他の表示属性、（２）第１のハイパーテキスト文書の内容と共に表示される他のハイパーテキスト文書などのオブジェクトを導入するためのインバウンド・リンク、および（３）第１のハイパーテキスト文書から別のハイパーテキスト文書へ移動するためのアウトバウンド・リンクを提供する。
【００２６】
本発明の例示的実施形態は一般に、通常はブラウザ３６によって表示される主入力領域に加えて補助入力領域を提供することにより、ユーザがアウトバウンド・リンクに操作を加える能力を高めることで動作する。この補助入力領域を選択または起動すると、主入力領域に操作するのと同じ機能が実行される。例示的実施形態では、この補助入力領域にナビゲート・ボタンとしての画面表示がある。
【００２７】
従来のブラウザがハイパーテキスト文書、特にそのリンクをどう表示するかが本発明にとって重要である。第１に、ハイパーテキスト文書が、タッチ・スクリーン入力が不明瞭な入力（すなわちリンクを１つだけ選択するのではない）をもたらすまたはエラーを発生しやすい（たとえばブラウザがタッチ・スクリーン入力を意図しない座標に解決する）ような設計になっていることがある。第２に、本発明に適合する実施形態の中には、色や配置など類似の表示特性を使用して補助入力領域を主入力領域に関連付けるものがある。
【００２８】
ハイパーテキスト・リンクの主入力領域は、閲覧プロパティ情報などのブラウザ動作用のリンクを選択するために、またはリンクによって参照付けされるハイパーテキスト文書へ移動するために、入力を受け取るのに使用される。通常、ハイパーテキスト・リンクの主入力領域は、ハイパーテキスト・リンクの画面表示を形成するある範囲の実際のテキスト・データまたはイメージ・データあるいはその両方を含む。本発明は特定のハイパーテキスト・リンク形式に限定されるものではないが、本発明の特に有用なアプリケーションの１つはインターネット文書などのＨＴＭＬ文書で定義されたハイパーテキスト・リンクに関連するものである。主に３タイプのハイパーテキスト・リンクがＨＴＭＬプロトコルによって定義される。第１のタイプのハイパーテキスト・リンクは、通常は周囲のテキストから文字を引き立たせるために（たとえば下線と固有の色により）強調表示された複数の英数字を含むテキスト文字列によって定義され、これによってその主入力領域がテキスト文字列の画面表示の境界となる。第２のタイプのハイパーテキスト・リンクは、その入力領域を定義する境界を有するグラフィカル・イメージによって定義される。さらにもう１つのタイプのハイパーテキスト・リンクは、イメージ・マップ内で指定された所定の入力領域によって定義される。この後者のタイプのハイパーテキスト・リンクでは、グラフィカル・イメージ内に座標および任意選択で形状（たとえば矩形、円形、多角形など）を定義することによって、共通のグラフィカル・イメージ内に複数のリンクを定義することができる。この後者のタイプでは、入力領域はイメージ・マップの定義で定義された境界と同じ範囲を占める。したがってハイパーテキスト・リンクの主入力領域は、リンクの画面表示の表示領域と同じ範囲を占めるのが一般的であるが、必ずしもその必要はない。
【００２９】
主入力領域と同様に補助入力領域も、それに関連付けられたハイパーテキスト・リンクを選択するための入力を受け取る。ただし補助入力領域は、主入力領域およびハイパーテキスト・リンクの表示領域のどちらとも視覚的に異なり、しばしばそれが分離している。前述のように、補助入力領域は視覚的にナビゲート・ボタンとして表すことができるが、他の表示も使用可能である。
【００３０】
図３は、図２のブラウザ・アプリケーション３０によって実行される主ルーチン５０の例示的プログラム流れを示す。ルーチン５０は、図では事象駆動型表示で実装されている。ただし、代替例では他のプログラミング・モデル、たとえば手続き型モデルを使用することができる。
【００３１】
ルーチン５０は一般に、ブロック５２で事象を待ち、一定の指定された事象があるかどうかチェックし、これらの事象を処理してからブロック５２に戻って追加の事象を待つ、無限ループで動作する。一般に、本発明に適合するタッチ・スクリーンの使用に関係するいくつかの事象が、ブロック５４および５６に示されている。従来通りブラウザ・アプリケーションによって処理されるその他の事象は、本発明の理解にとって重要でなく、従来の方法でブロック６０で処理される。
【００３２】
ルーチン５０で処理される１つの事象は、ブロック５４で検出される表示リフレッシュ事象である。この事象は、いくつかの状態で、たとえばブラウザがハイパーテキスト・リンクを介して取り出された新しい文書を生成したい場合に、ユーザが文書内でスクロール・アップまたはスクロール・ダウンしたとき、あるいは様々な操作の中でもとりわけ表示をリフレッシュするための特定のコマンドに応答して開始することができる。
【００３３】
この表示リフレッシュ事象はブロック６２で、当技術分野で周知の処理である表示のリフレッシュによって処理される。一般に、表示をリフレッシュすると、文書から画面表示に、ＨＴＭＬ文書に埋め込まれたコントロール・タグを介して生成されたソースＨＴＭＬ情報を提供することができる。
【００３４】
表示がリフレッシュされると、入力領域更新ルーチン７０（以下に記載）が呼び出されて、現在表示されているＨＴＭＬ文書に定義されている様々なハイパーテキスト・リンクに関する入力領域のリストを構築する。
【００３５】
ブラウザ３０によって処理されるもう１つの事象はスクリーン・タッチ事象であって、これはブロック５６、およびタッチ・スクリーン入力処理ルーチン１００で検出される。この入力は、特定の時間間隔の個別空間領域を含む。
【００３６】
図４は、領域更新ルーチン７０についてさらに詳細に示す。ルーチン７０は、入力領域データ構造を消去することによって、たとえばこうした構造用に予約されていたスペースの割振り解除または当技術分野で周知のその他の方法によって、ブロック７２で開始される。
【００３７】
ハイパーテキスト文書内で定義された複数のハイパーテキスト・リンクに関する入力領域情報を格納するには、いくつかのデータ構造が使用できる。たとえば図５は、それぞれがハイパーテキスト文書内で定義された特定のハイパーテキスト・リンクに割り当てられた複数のレコード９２を含む、リンク・リスト・データ構造９０を示す。各レコード９２は、入力領域の範囲が格納されるフィールド９４を含む。この範囲は、たとえば座標、形状、またはそれらの組み合わせによって定義することができる。さらにこの範囲は、絶対座標または（たとえば特定のハイパーテキスト・リンク定義の表示領域の座標に対して相対的な）相対座標で定義することができる。
【００３８】
さらに各レコード９２はまた、そのレコードの関連付けられたリンクを指すポインタを含むフィールド９６も含む。これによって、ポインタが入力領域内に配置されている間に実行されるユーザ・オペレーションに応答して起動されるリンクに、即時にアクセスすることができる。
【００３９】
各レコード９２はまた、リンク・リスト・データ構造９０内の次の入力領域を指すポインタを含むフィールド９８も含む。このリンク・リストの末尾は、フィールド９８にＮＵＬＬポインタが格納されたレコード９２によって決定される。
【００４０】
本発明に適合した他のデータ構造も使用できることを理解されたい。
【００４１】
再度図４に戻り、入力領域リストがいったん消去されると、制御がブロック７４に移り、ＷＨＩＬＥループが起動され、現在の文書内または現在の文書の表示部分にある各ハイパーリンクが処理されるまでそれが実行される。未処理のリンクがまだある限り、制御はブロック７６に移り次のハイパーテキスト・リンクを取り出す。次に、ブロック７８で、たとえば新しい入力領域オブジェクトを作成することによって新しい入力領域レコード９２が作成される。次に、ブロック８０で、処理中の現在のリンクを指すポインタが、新しい入力領域レコード９２のフィールド９６に格納される。代替例では、実際のＵＲＬまたは他のアドレス情報をこのフィールドに直接格納することができる。
【００４２】
次に、ブロック８２で、入力領域の範囲が決定され、新しい入力領域レコード９２のフィールド９４に格納される。入力領域の決定は、入力領域を定義するのに使用した形状および相対座標または絶対座標に基づくいくつかの方法で実行することができる。たとえば、英数字のハイパーテキスト・リンクの場合、入力領域を定義する適切な方法の１つは、ハイパーテキスト・リンクの表示領域内で左端、右端、上端、下端の座標を決定し、これらの値を各方向に所定量だけ調整して、表示領域を超えてすべての方向に所定量だけ拡大された入力領域を定義するものである。
【００４３】
入力領域の範囲がレコード９２にいったん格納されると、通常は、リスト内で最新のレコードを見つけ、その次の入力領域フィールド９８を新しいレコードを指すように設定することによって、この新しいレコードがブロック８４で入力領域データ構造９０に追加される。ブロック８４が完了すると制御はブロック７４に戻り、このようなリンクすべての処理が終わるまで文書内で追加のリンクを処理し、次いで、これによってルーチン７０が終了する。
【００４４】
図６を参照すると、図３で述べたタッチ・スクリーン入力処理ルーチン１００が図示されている。まず、タッチ・スクリーン入力が活動領域に関して解決される（ブロック１０１）。Microsoft Windows 3.1、95、98などの多くのオペレーティング・システムは、画面の様々な区域が異なるオブジェクトを起動させるグラフィカル・ユーザ・インターフェースを有する。タッチ・スクリーン入力がブラウザ・ルーチン５０の表示を対象としていると仮定すると、ブロック１０１でそのタッチ・スクリーン入力を、すべての主入力領域と以前に表示された可能性のある補助入力領域とを含む、活動状態のすべての入力領域と比較する。一般に、入力領域は相互に排他的であり、タッチ・スクリーン・ポインティング・デバイスは単一の座標を返すので、入力領域が指定されていればどの領域であるかを判定するのは簡単である。ただし、タッチされた区域全体など複数の座標を返すタッチ・スクリーン・ポインティング・デバイスでは、ブロック１０１でタッチ・スクリーン入力が複数の入力領域内にあると判定することができる。
【００４５】
ブロック１０２で、タッチ・スクリーン入力がハイパーテキスト・リンク用の１つの入力領域（主入力領域または補助入力領域）を指定したかどうかを判定する。そうである場合、ブラウザ３６は表示されたナビゲート・ボタン（すなわち以前に表示された補助入力領域）を削除し（ブロック１０３）、ハイパーテキスト文書へ移動して（ブロック１０４）、ルーチン１００が完了する（ブロック１０６）。しかし指定していない場合は、タッチ・スクリーン・アシスト領域内の主入力領域が決定され（ブロック１１０）、それぞれ対応するナビゲート・ボタンに割り当てられて（ブロック１３２）、ルーチン１００が終了する（ブロック１０６）。
【００４６】
あるいは、ブロック１０２で１つのハイパーテキスト・リンクが選択されたかどうかの判定を、１つのナビゲート・ボタン（補助入力領域）が選択されたかどうかの判定に置き換えることができる。したがって、タッチ・スクリーン領域アシストは、所望のハイパーテキスト・リンクへ移動する唯一の方法になる。さらに別の実施形態では、ブロック１０２で２つまたはそれ以上のリンクがタッチされた区域にあいまいさが残るほど近接しているかどうかを判定することもできる。あいまいでない場合、処理はブロック１０３に進む。これらの実施形態は、視差やユーザ・エラーによる不注意な動作を軽減するものである。
【００４７】
図７を参照すると、図６で述べた、タッチ・スクリーン・アシスト領域内での入力領域の決定が図示されている。この例示的実施形態では、タッチ・スクリーン入力からの距離および補助入力領域の最大表示可能数に応じて表示されるリンクのリストを決定する。まず、タッチされた区域の範囲がアクセスされる（ブロック１１２）。次いで、表示された各主入力領域ごとに（ブロック１１４）、主入力領域の範囲にアクセスし（ブロック１１６）、タッチされた区域までの最短距離を決定し（ブロック１１８）、その距離情報をリンクのリストに追加する（ブロック１２０）ことにより、タッチされた区域までの距離を計算し、追加の主入力領域がある場合はブロック１２２で戻る。
【００４８】
すべての距離の計算が終了すると、リンクのリストは距離の昇順にソートされ（ブロック１２４）、リストは事前に定義された距離のしきい値の範囲内で切り捨てられる（ブロック１２６）。このしきい値は、表示されるすべてのリンクを含むことができるか、または小さな半径に設定される。次にリストは、補助入力リンクの最大表示可能数（ブロック１２８）によってさらに切り捨てることができ、ルーチン１１０は戻る（ブロック１３０）。
【００４９】
図８を参照すると、図６で述べた対応するナビゲート・ボタンへの割当てルーチン１３２が図示されている。まず、各主入力領域に固有の色が割り当てられる（ブロック１３４）。この色は、理想的には、単色ディスプレイに表示されるかまたは色盲の人が見ると、異なるグレー・トーンを有する。あるいは、単色ディスプレイで区別をつけるために、異なる陰影パターンを使用することもできる。次に、主入力領域が割り当てられた色で再描画される（ブロック１３６）。ハイパーテキスト・リンクの場合、フォントの色と下線の色が割り当てられた色に切り替えられる。地形の場合、その形の輪郭や他の部分が割り当てられた色に変更される。その後、ナビゲート・ボタン形式の補助入力領域が、画面下端に沿って関連する主入力領域に割り当てられた色で描画され（ブロック１３８）、ルーチン１３２が終了する（ブロック１４０）。
【００５０】
ブラウザ３６の動作の例として、ハイパーテキスト文書２０２を表示した画面表示２００を図９に示す。ハイパーテキスト文書２０２と共に３つのハイパーテキスト・リンク２１０、２２０、２３０が表示されている。
【００５１】
次に図１０のように、それぞれが主入力領域２１２、２２２、２３２を有するこれら３つのハイパーテキスト・リンク２１０、２２０、２３０の簡単な図を、例示的なタッチ入力２４０、２４２、２４４と共に示す。各タッチ・スクリーン入力２４０、２４２、２４４は、タッチ・スクリーンによってそれぞれ単一の座標入力２４１、２４３、２４５に変換することができる。タッチ・スクリーン入力２４０は１つのハイパーテキスト・リンク２１０の明白な選択である。タッチ・スクリーン入力２４２は、すべての主入力領域から外れた選択である。タッチ・スクリーン入力２４４は、タッチ・スクリーン入力機能が粗放なため２つの主入力領域の範囲内にある選択である。さらに、タッチ・スクリーンは、図のように主入力領域２３２と主入力領域２２２の両方から外れているのではなく、どちらかの領域に含まれる１つの座標入力２４５を割り当てることがあり得る。
【００５２】
図１１を参照すると、図７で述べた、タッチされた区域と主入力領域との間の最短距離を決定する方法（ブロック１１８）がいくつかの変形形態で図示されている。２つの主入力領域２６０、２６２が示されている。第１のタッチ区域入力２６４は、タッチ・スクリーン入力が複数の座標である実施形態の場合を示している。入力領域２６０までの距離２６８と入力領域２６２までの距離２７０を決定する１つの方法は、四角形のタッチ領域２６６を使用してこの入力２６４を近似することによって容易になる。第２のタッチ区域入力２７２は、ブラウザに座標入力２７４が提供され、元のユーザ入力が区域であってもこの入力から距離を決定するという一般的な状況に対応している。
【００５３】
図１２を参照すると、表示ウィンドウ２００の下端に沿ってナビゲート・ボタン２８０が一列に表示された、第１の例示的実施形態が示されている。これらのボタン２８０は、タッチ・スクリーン領域アシストを起動する前は、非表示または非活動状態のグレイ表示にすることができる。図からわかるように、第１のナビゲート・ボタン２８１は、第１のハイパーテキスト・リンク２１０と同じ色である。第２のナビゲート・ボタン２８２は第２のハイパーテキスト・リンク２２０と同じである。第３のナビゲート・ボタン２８３は第３のハイパーテキスト・リンク２３０と同じである。したがってユーザは扱いやすい明瞭なボタン２８０を簡単に選択し、所望のリンクを取得することができる。
【００５４】
図１３を参照すると、不透明な浮動のナビゲート・ボタン２８１'〜２８３'が表示された第２の例示的実施形態が図示されており、ここで各ボタン２８１'〜２８３'は関連する主入力領域２１０'、２２０'、２３０'にそれぞれ隣接している。
【００５５】
図１４を参照すると、第３の例示的実施形態が図示されており、ここでボタン２８１"〜２８３"は文書２０２"内の他の項目と重複しないようにハイパーテキスト文書に挿入されている。この場合も、ボタン２８１"〜２８３"は、入力領域２１０"、２２０"、２３０"にそれぞれ対応する色になっている。
【００５６】
本発明の趣旨および範囲から逸脱することなく、前述の実施形態に様々な修正を加えることができる。たとえば、とりわけポップアップ・メニューのオープンなど、入力領域内にポインタを置いている間に受け取ったユーザ入力に応答して、ハイパーテキスト・リンクを起動する以外の動作が実行できる。さらに、本発明の様々な態様を、たとえば、プッシュ・ボタン、ポップアップ・ボタン、ラジオ・ボタン、エディット・ボックス、コンボ・ボックス、リスト・ボックス、カウンタ、チェック・ボックス、および当技術分野で周知のその他のグラフィカル・ユーザ・インターフェース（ＧＵＩ）コントロールなど、ハイパーテキスト・リンク以外のユーザ・インターフェース・コントロールと共に使用することもできる。特に、ポインタが１つのコントロールの入力領域内にあるときに、追加のユーザ・インターフェース・コントロールに２次的な操作を提供することができると、特にコンピュータ・ディスプレイの特定区域内に多数のユーザ・インターフェース・コントロールが密集している場合、生産性をかなり向上させることができる。
【００５７】
さらに、様々な数のボタンの様々な組み合わせなどを含めて他のユーザ・インタフェース・デバイスを使用して、本発明に適合した所定の動作を起動することができることを理解されたい。また入力領域の境界は、コンピュータ・ディスプレイ上に表示することもしないこともできる。
【００５８】
まとめとして、本発明の構成に関して以下の事項を開示する。
【００５９】
（１）コンピュータ・システムのコンピュータ・ディスプレイ上にハイパーテキスト文書を表示する方法であって、
（ａ）ハイパーテキスト文書内で定義されたハイパーテキスト・リンクの主入力領域をコンピュータ・ディスプレイ上に表示するステップと、
（ｂ）前記主入力領域に関連付けられた補助入力領域を表示するステップと、
（ｃ）前記補助入力領域を対象とするユーザ入力に応答してハイパーテキスト・リンクを起動するステップとを含む方法。
（２）（ｄ）前記補助入力領域を削除するステップをさらに含む、上記（１）に記載の方法。
（３）共有する固有色によって、前記補助入力領域を前記主入力領域と視覚的に対にする、上記（１）に記載の方法。
（４）前記補助入力領域がナビゲート・ボタンを含む、上記（１）に記載の方法。
（５）隣接して配置することにより、前記ナビゲート・ボタンを前記主入力領域と視覚的に対にする、上記（４）に記載の方法。
（６）前記補助入力領域を表示するステップが、ナビゲート・ボタンを主入力領域と隣接するように挿入することによって、ハイパーテキスト文書をローカルに修正するステップをさらに含む、上記（５）に記載の方法。
（７）前記補助入力領域を表示するステップが、所定の事象に応答して実行される、上記（１）に記載の方法。
（８）前記所定の事象がユーザのコントロール選択を含む、上記（７）に記載の方法。
（９）前記所定の事象がハイパーテキスト文書の表示の変更を含む、上記（７）に記載の方法。
（１０）前記所定の事象がタッチ・スクリーン入力を含む、上記（７）に記載の方法。
（１１）前記所定の事象が、前記主入力領域および前記補助入力領域の外部に向けたユーザ入力を含む、上記（１０）に記載の方法。
（１２）ハイパーテキスト文書内で定義された対応する複数のハイパーテキスト・リンク用の複数の主入力領域が表示され、前記補助入力領域を表示するステップが
（ｉ）各主入力領域について、タッチ・スクリーン入力までの最短距離を決定するステップと、
（ｉｉ）前記タッチ・スクリーン入力からの距離のしきい値の範囲内にある主入力領域のリストを作成するステップと、
（ｉｉｉ）前記リストの各主入力領域について補助入力領域を表示するステップとを含む、上記（１１）に記載の方法。
（１３）（ａ）メモリと、
（ｂ）前記メモリ内に常駐するプログラムとを含む装置であって、前記プログラムが、ハイパーテキスト文書内で定義されたハイパーテキスト・リンクの主入力領域についての画面表示データを生成し、前記主入力領域に関連付けられた補助入力領域についての画面表示データを生成し、前記補助入力領域を対象とするユーザ入力に応答してハイパーテキスト・リンクを起動するように構成されている装置。
（１４）前記プログラムがさらに、前記主入力領域についての入力領域とリンクされたデータ構造を維持するように構成されている、上記（１３）に記載の装置。
（１５）前記プログラムが、前記補助入力領域を対象とするユーザ入力後に、前記補助入力領域についての任意の画面表示データを削除するようにさらに構成されている、上記（１３）に記載の装置。
（１６）前記プログラムがさらに、所定の事象に応答して前記補助入力領域についての画面表示データを生成するように構成されている、上記（１３）に記載の装置。
（１７）前記所定の事象がタッチ・スクリーン入力を含む、上記（１６）に記載の装置。
（１８）（ａ）ハイパーテキスト文書内で定義されたハイパーテキスト・リンクの主入力領域についての画面表示データを生成し、前記主入力領域に関連付けられた補助入力領域についての画面表示データを生成し、前記補助入力領域を対象とするユーザ入力に応答して前記ハイパーテキスト・リンクを起動するように構成されているプログラムと、
（ｂ）前記プログラムを伝達する信号伝達媒体とを含むプログラム製品。
（１９）前記信号伝達媒体が伝送タイプ媒体である、上記（１８）に記載のプログラム製品。
（２０）前記信号伝達媒体が記録可能媒体である、上記（１８）に記載のプログラム製品。
【図面の簡単な説明】
【図１】本発明に適合するコンピュータ・システムの構成図である。
【図２】図１のコンピュータ・システムの例示的ソフトウェア環境の構成図である。
【図３】図２のブラウザの主ルーチンのプログラム流れを示す流れ図である。
【図４】図３の入力領域更新ルーチンのプログラム流れを示す流れ図である。
【図５】本発明に適合する入力領域リスト・データ構造の構成図である。
【図６】図３のタッチ・スクリーン入力処理ルーチンのプログラム流れを示す流れ図である。
【図７】図６のタッチ・スクリーン補助領域ルーチン内の入力領域決定のプログラム流れを示す流れ図である。
【図８】図６の対応するナビゲート・ボタン割当てルーチンのプログラム流れを示す流れ図である。
【図９】図１のコンピュータ・システム上でウィンドウ内に表示される例示的ハイパーテキスト文書を示す構成図である。
【図１０】ユーザが文書の一部を選択する、図９のハイパーテキスト文書の簡単な構成図である。
【図１１】図７のタッチ区域と主入力領域との間の距離の決定を示す図である。
【図１２】タッチ・スクリーン・アシストが表示を修正した後に、図１のコンピュータ・システム上でウィンドウ内に表示される第１の例示的ハイパーテキスト文書を示す構成図である。
【図１３】タッチ・スクリーン・アシストが表示を修正した後に、図１のコンピュータ・システム上でウィンドウ内に表示される第２の例示的ハイパーテキスト文書を示す構成図である。
【図１４】タッチ・スクリーン補助が表示を修正した後に、図１のコンピュータ・システム上でウィンドウ内に表示される第３の例示的ハイパーテキスト文書を示す構成図である。
【符号の説明】
２００  表示ウィンドウ
２０２  ハイパーテキスト文書
２１０  第１のハイパーテキスト・リンク
２２０  第２のハイパーテキスト・リンク
２３０  第３のハイパーテキスト・リンク
２８０  ナビゲート・ボタン
２８１  第１のナビゲート・ボタン
２８２  第２のナビゲート・ボタン
２８３  第３のナビゲート・ボタン
【図１】
0003657162.tif 000002
【図２】
0003657162.tif 000003
【図３】
0003657162.tif 000004
【図４】
0003657162.tif 000005
【図５】
0003657162.tif 000006
【図６】
0003657162.tif 000007
【図７】
0003657162.tif 000008
【図８】
0003657162.tif 000009
【図９】
0003657162.tif 000010
【図１０】
0003657162.tif 000011
【図１１】
0003657162.tif 000012
【図１２】
0003657162.tif 000013
【図１３】
0003657162.tif 000014
【図１４】
0003657162.tif 000015