diff options
author | shess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-09 15:41:51 +0000 |
---|---|---|
committer | shess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-09 15:41:51 +0000 |
commit | 5942dc32a1d9dc32aa208452ec72f8c076153f63 (patch) | |
tree | 511de1b51abf62a8a9f50622db9b2193a2a43e5a /chrome/browser/autocomplete | |
parent | 12c3b59ecb82bded702780696dffc15c6955a5f7 (diff) | |
download | chromium_src-5942dc32a1d9dc32aa208452ec72f8c076153f63.zip chromium_src-5942dc32a1d9dc32aa208452ec72f8c076153f63.tar.gz chromium_src-5942dc32a1d9dc32aa208452ec72f8c076153f63.tar.bz2 |
Don't allow drag or click on location icon when editing in omnibox.
After editing the omnibox, clicking the location icon would provide
the page info for the page being shown, though the rest of the omnibox
might be inconsistent with that page. Exposes the logic used by
AutocompleteEditView::GetIcon() to determine when there's a real URL
for page-info (or drag).
BUG=none
TEST=Navigate to a page. Click location icon to see page info. Edit the omnibox, click should not show page info.
Review URL: http://codereview.chromium.org/1594012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44087 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/autocomplete')
7 files changed, 22 insertions, 3 deletions
diff --git a/chrome/browser/autocomplete/autocomplete_edit_view.h b/chrome/browser/autocomplete/autocomplete_edit_view.h index e29b19b..0d4c230 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view.h +++ b/chrome/browser/autocomplete/autocomplete_edit_view.h @@ -59,6 +59,10 @@ class AutocompleteEditView { // browser, or just whatever the user has currently typed. virtual std::wstring GetText() const = 0; + // |true| if the user is in the process of editing the field, or if + // the field is empty. + virtual bool IsEditingOrEmpty() const = 0; + // Returns the resource ID of the icon to show for the current text. virtual int GetIcon() const = 0; diff --git a/chrome/browser/autocomplete/autocomplete_edit_view_gtk.cc b/chrome/browser/autocomplete/autocomplete_edit_view_gtk.cc index 35144963..207dd0d 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view_gtk.cc +++ b/chrome/browser/autocomplete/autocomplete_edit_view_gtk.cc @@ -387,8 +387,12 @@ std::wstring AutocompleteEditViewGtk::GetText() const { return out; } +bool AutocompleteEditViewGtk::IsEditingOrEmpty() const { + return (model_->user_input_in_progress() || model_->show_search_hint()); +} + int AutocompleteEditViewGtk::GetIcon() const { - return (model_->user_input_in_progress() || model_->show_search_hint()) ? + return IsEditingOrEmpty() ? AutocompleteMatch::TypeToIcon(model_->CurrentTextType()) : toolbar_model_->GetIcon(); } diff --git a/chrome/browser/autocomplete/autocomplete_edit_view_gtk.h b/chrome/browser/autocomplete/autocomplete_edit_view_gtk.h index 978f3d7..69bc3be 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view_gtk.h +++ b/chrome/browser/autocomplete/autocomplete_edit_view_gtk.h @@ -80,6 +80,7 @@ class AutocompleteEditViewGtk : public AutocompleteEditView, virtual std::wstring GetText() const; + virtual bool IsEditingOrEmpty() const; virtual int GetIcon() const; virtual void SetUserText(const std::wstring& text) { diff --git a/chrome/browser/autocomplete/autocomplete_edit_view_mac.h b/chrome/browser/autocomplete/autocomplete_edit_view_mac.h index 8539cae..a810465 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view_mac.h +++ b/chrome/browser/autocomplete/autocomplete_edit_view_mac.h @@ -49,6 +49,7 @@ class AutocompleteEditViewMac : public AutocompleteEditView, virtual std::wstring GetText() const; + virtual bool IsEditingOrEmpty() const; virtual int GetIcon() const; virtual void SetUserText(const std::wstring& text) { diff --git a/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm b/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm index fc5bbef..ee502cb 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm +++ b/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm @@ -266,8 +266,12 @@ std::wstring AutocompleteEditViewMac::GetText() const { return base::SysNSStringToWide([field_ stringValue]); } +bool AutocompleteEditViewMac::IsEditingOrEmpty() const { + return (model_->user_input_in_progress() || model_->show_search_hint()); +} + int AutocompleteEditViewMac::GetIcon() const { - return (model_->user_input_in_progress() || model_->show_search_hint()) ? + return IsEditingOrEmpty() ? AutocompleteMatch::TypeToIcon(model_->CurrentTextType()) : toolbar_model_->GetIcon(); } diff --git a/chrome/browser/autocomplete/autocomplete_edit_view_win.cc b/chrome/browser/autocomplete/autocomplete_edit_view_win.cc index 87c41f9..46639ab 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view_win.cc +++ b/chrome/browser/autocomplete/autocomplete_edit_view_win.cc @@ -599,8 +599,12 @@ std::wstring AutocompleteEditViewWin::GetText() const { return str; } +bool AutocompleteEditViewWin::IsEditingOrEmpty() const { + return (model_->user_input_in_progress() || model_->show_search_hint()); +} + int AutocompleteEditViewWin::GetIcon() const { - return (model_->user_input_in_progress() || model_->show_search_hint()) ? + return IsEditingOrEmpty() ? AutocompleteMatch::TypeToIcon(model_->CurrentTextType()) : toolbar_model_->GetIcon(); } diff --git a/chrome/browser/autocomplete/autocomplete_edit_view_win.h b/chrome/browser/autocomplete/autocomplete_edit_view_win.h index 718ba2a..82762ae 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view_win.h +++ b/chrome/browser/autocomplete/autocomplete_edit_view_win.h @@ -91,6 +91,7 @@ class AutocompleteEditViewWin virtual std::wstring GetText() const; + virtual bool IsEditingOrEmpty() const; virtual int GetIcon() const; virtual void SetUserText(const std::wstring& text) { |