| Index: chrome/browser/ui/views/omnibox/omnibox_view_views.cc
|
| diff --git a/chrome/browser/ui/views/omnibox/omnibox_view_views.cc b/chrome/browser/ui/views/omnibox/omnibox_view_views.cc
|
| index 4ba3789b5d8183326b50af945843607092dbaabe..b25c9dc45af443f7905a7def19e47a7518e04838 100644
|
| --- a/chrome/browser/ui/views/omnibox/omnibox_view_views.cc
|
| +++ b/chrome/browser/ui/views/omnibox/omnibox_view_views.cc
|
| @@ -44,7 +44,6 @@
|
| #include "ui/gfx/selection_model.h"
|
| #include "ui/views/border.h"
|
| #include "ui/views/button_drag_utils.h"
|
| -#include "ui/views/controls/textfield/native_textfield_views.h"
|
| #include "ui/views/controls/textfield/textfield.h"
|
| #include "ui/views/ime/input_method.h"
|
| #include "ui/views/layout/fill_layout.h"
|
| @@ -176,7 +175,7 @@ void OmniboxViewViews::Init() {
|
|
|
| // Initialize the popup view using the same font.
|
| popup_view_.reset(OmniboxPopupContentsView::Create(
|
| - font_list(), this, model(), location_bar_view_));
|
| + GetFontList(), this, model(), location_bar_view_));
|
|
|
| #if defined(OS_CHROMEOS)
|
| chromeos::input_method::InputMethodManager::Get()->
|
| @@ -353,7 +352,7 @@ bool OmniboxViewViews::HandleEarlyTabActions(const ui::KeyEvent& event) {
|
| if (event.IsShiftDown() &&
|
| model()->popup_model()->selected_line_state() ==
|
| OmniboxPopupModel::KEYWORD) {
|
| - model()->ClearKeyword(text());
|
| + model()->ClearKeyword(GetText());
|
| } else {
|
| model()->OnUpOrDownKeyPressed(event.IsShiftDown() ? -1 : 1);
|
| }
|
| @@ -457,7 +456,7 @@ void OmniboxViewViews::Update() {
|
| // is still fully selected, the user's typing will replace the edit contents
|
| // as they'd intended.
|
| const gfx::Range range(GetSelectedRange());
|
| - const bool was_select_all = (range.length() == text().length());
|
| + const bool was_select_all = (range.length() == GetText().length());
|
|
|
| RevertAll();
|
|
|
| @@ -478,7 +477,7 @@ void OmniboxViewViews::Update() {
|
|
|
| base::string16 OmniboxViewViews::GetText() const {
|
| // TODO(oshima): IME support
|
| - return text();
|
| + return Textfield::GetText();
|
| }
|
|
|
| void OmniboxViewViews::SetUserText(const base::string16& text,
|
| @@ -503,7 +502,7 @@ void OmniboxViewViews::SetWindowTextAndCaretPos(const base::string16& text,
|
| }
|
|
|
| void OmniboxViewViews::SetForcedQuery() {
|
| - const base::string16 current_text(text());
|
| + const base::string16 current_text(GetText());
|
| const size_t start = current_text.find_first_not_of(base::kWhitespaceUTF16);
|
| if (start == base::string16::npos || (current_text[start] != '?'))
|
| OmniboxView::SetUserText(base::ASCIIToUTF16("?"));
|
| @@ -513,7 +512,7 @@ void OmniboxViewViews::SetForcedQuery() {
|
|
|
| bool OmniboxViewViews::IsSelectAll() const {
|
| // TODO(oshima): IME support.
|
| - return text() == GetSelectedText();
|
| + return GetText() == GetSelectedText();
|
| }
|
|
|
| bool OmniboxViewViews::DeleteAtEndPressed() {
|
| @@ -548,7 +547,7 @@ void OmniboxViewViews::UpdatePopup() {
|
| const gfx::Range sel = GetSelectedRange();
|
| model()->StartAutocomplete(
|
| !sel.is_empty(),
|
| - sel.GetMax() < text().length() ||
|
| + sel.GetMax() < GetText().length() ||
|
| (IsIMEComposing() && !IsOmniboxAutoCompletionForImeEnabled()));
|
| }
|
|
|
| @@ -580,7 +579,7 @@ void OmniboxViewViews::OnTemporaryTextMaybeChanged(
|
| bool OmniboxViewViews::OnInlineAutocompleteTextMaybeChanged(
|
| const base::string16& display_text,
|
| size_t user_text_length) {
|
| - if (display_text == text())
|
| + if (display_text == GetText())
|
| return false;
|
|
|
| if (IsIMEComposing()) {
|
| @@ -609,14 +608,14 @@ void OmniboxViewViews::OnRevertTemporaryText() {
|
|
|
| void OmniboxViewViews::OnBeforePossibleChange() {
|
| // Record our state.
|
| - text_before_change_ = text();
|
| + text_before_change_ = GetText();
|
| sel_before_change_ = GetSelectedRange();
|
| ime_composing_before_change_ = IsIMEComposing();
|
| }
|
|
|
| bool OmniboxViewViews::OnAfterPossibleChange() {
|
| // See if the text or selection have changed since OnBeforePossibleChange().
|
| - const base::string16 new_text = text();
|
| + const base::string16 new_text = GetText();
|
| const gfx::Range new_sel = GetSelectedRange();
|
| const bool text_changed = (new_text != text_before_change_) ||
|
| (ime_composing_before_change_ != IsIMEComposing());
|
| @@ -674,7 +673,9 @@ base::string16 OmniboxViewViews::GetGrayTextAutocompletion() const {
|
| }
|
|
|
| int OmniboxViewViews::GetTextWidth() const {
|
| - return textfield_view_->GetWidthNeededForText();
|
| + // Returns the width necessary to display the current text, including any
|
| + // necessary space for the cursor or border/margin.
|
| + return GetRenderText()->GetContentWidth() + GetInsets().width();
|
| }
|
|
|
| int OmniboxViewViews::GetWidth() const {
|
| @@ -711,18 +712,18 @@ bool OmniboxViewViews::HandleKeyEvent(views::Textfield* textfield,
|
| if (model()->is_keyword_hint() || model()->keyword().empty() ||
|
| HasSelection() || GetCursorPosition() != 0)
|
| return false;
|
| - model()->ClearKeyword(text());
|
| + model()->ClearKeyword(GetText());
|
| return true;
|
| }
|
|
|
| if (event.key_code() == ui::VKEY_DELETE && !event.IsAltDown()) {
|
| delete_at_end_pressed_ =
|
| - (!HasSelection() && GetCursorPosition() == text().length());
|
| + (!HasSelection() && GetCursorPosition() == GetText().length());
|
| }
|
|
|
| // Handle the right-arrow key for LTR text and the left-arrow key for RTL text
|
| // if there is gray text that needs to be committed.
|
| - if (GetCursorPosition() == text().length()) {
|
| + if (GetCursorPosition() == GetText().length()) {
|
| base::i18n::TextDirection direction = GetTextDirection();
|
| if ((direction == base::i18n::LEFT_TO_RIGHT &&
|
| event.key_code() == ui::VKEY_RIGHT) ||
|
| @@ -918,7 +919,7 @@ void OmniboxViewViews::CandidateWindowClosed(
|
|
|
| int OmniboxViewViews::GetOmniboxTextLength() const {
|
| // TODO(oshima): Support IME.
|
| - return static_cast<int>(text().length());
|
| + return static_cast<int>(GetText().length());
|
| }
|
|
|
| void OmniboxViewViews::EmphasizeURLComponents() {
|
| @@ -929,8 +930,8 @@ void OmniboxViewViews::EmphasizeURLComponents() {
|
| // be treated as a search or a navigation, and is the same method the Paste
|
| // And Go system uses.
|
| url_parse::Component scheme, host;
|
| - AutocompleteInput::ParseForEmphasizeComponents(text(), &scheme, &host);
|
| - bool grey_out_url = text().substr(scheme.begin, scheme.len) ==
|
| + AutocompleteInput::ParseForEmphasizeComponents(GetText(), &scheme, &host);
|
| + bool grey_out_url = GetText().substr(scheme.begin, scheme.len) ==
|
| base::UTF8ToUTF16(extensions::kExtensionScheme);
|
| bool grey_base = model()->CurrentTextIsURL() &&
|
| (host.is_nonempty() || grey_out_url);
|
|
|