| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/ui/views/omnibox/omnibox_view_views.h" | 5 #include "chrome/browser/ui/views/omnibox/omnibox_view_views.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/logging.h" | 8 #include "base/logging.h" |
| 9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
| 10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
| (...skipping 513 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 524 void OmniboxViewViews::RevertAll() { | 524 void OmniboxViewViews::RevertAll() { |
| 525 saved_selection_for_focus_change_ = gfx::Range::InvalidRange(); | 525 saved_selection_for_focus_change_ = gfx::Range::InvalidRange(); |
| 526 OmniboxView::RevertAll(); | 526 OmniboxView::RevertAll(); |
| 527 } | 527 } |
| 528 | 528 |
| 529 void OmniboxViewViews::UpdatePopup() { | 529 void OmniboxViewViews::UpdatePopup() { |
| 530 model()->SetInputInProgress(true); | 530 model()->SetInputInProgress(true); |
| 531 if (!model()->has_focus()) | 531 if (!model()->has_focus()) |
| 532 return; | 532 return; |
| 533 | 533 |
| 534 // Hide the inline autocompletion for IME users. | |
| 535 location_bar_view_->SetImeInlineAutocompletion(string16()); | |
| 536 | |
| 537 // Prevent inline autocomplete when the caret isn't at the end of the text, | 534 // Prevent inline autocomplete when the caret isn't at the end of the text, |
| 538 // and during IME composition editing unless | 535 // and during IME composition editing unless |
| 539 // |kEnableOmniboxAutoCompletionForIme| is enabled. | 536 // |kEnableOmniboxAutoCompletionForIme| is enabled. |
| 540 const gfx::Range sel = GetSelectedRange(); | 537 const gfx::Range sel = GetSelectedRange(); |
| 541 model()->StartAutocomplete( | 538 model()->StartAutocomplete( |
| 542 !sel.is_empty(), | 539 !sel.is_empty(), |
| 543 sel.GetMax() < text().length() || | 540 sel.GetMax() < text().length() || |
| 544 (IsIMEComposing() && !IsOmniboxAutoCompletionForImeEnabled())); | 541 (IsIMEComposing() && !IsOmniboxAutoCompletionForImeEnabled())); |
| 545 } | 542 } |
| 546 | 543 |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 579 location_bar_view_->SetImeInlineAutocompletion( | 576 location_bar_view_->SetImeInlineAutocompletion( |
| 580 display_text.substr(user_text_length)); | 577 display_text.substr(user_text_length)); |
| 581 } else { | 578 } else { |
| 582 gfx::Range range(display_text.size(), user_text_length); | 579 gfx::Range range(display_text.size(), user_text_length); |
| 583 SetTextAndSelectedRange(display_text, range); | 580 SetTextAndSelectedRange(display_text, range); |
| 584 } | 581 } |
| 585 TextChanged(); | 582 TextChanged(); |
| 586 return true; | 583 return true; |
| 587 } | 584 } |
| 588 | 585 |
| 586 void OmniboxViewViews::OnInlineAutocompleteTextCleared() { |
| 587 // Hide the inline autocompletion for IME users. |
| 588 location_bar_view_->SetImeInlineAutocompletion(string16()); |
| 589 } |
| 590 |
| 589 void OmniboxViewViews::OnRevertTemporaryText() { | 591 void OmniboxViewViews::OnRevertTemporaryText() { |
| 590 SelectRange(saved_temporary_selection_); | 592 SelectRange(saved_temporary_selection_); |
| 591 // We got here because the user hit the Escape key. We explicitly don't call | 593 // We got here because the user hit the Escape key. We explicitly don't call |
| 592 // TextChanged(), since OmniboxPopupModel::ResetToDefaultMatch() has already | 594 // TextChanged(), since OmniboxPopupModel::ResetToDefaultMatch() has already |
| 593 // been called by now, and it would've called TextChanged() if it was | 595 // been called by now, and it would've called TextChanged() if it was |
| 594 // warranted. | 596 // warranted. |
| 595 } | 597 } |
| 596 | 598 |
| 597 void OmniboxViewViews::OnBeforePossibleChange() { | 599 void OmniboxViewViews::OnBeforePossibleChange() { |
| 598 // Record our state. | 600 // Record our state. |
| (...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 964 const string16 text(GetClipboardText()); | 966 const string16 text(GetClipboardText()); |
| 965 if (!text.empty()) { | 967 if (!text.empty()) { |
| 966 // Record this paste, so we can do different behavior. | 968 // Record this paste, so we can do different behavior. |
| 967 model()->on_paste(); | 969 model()->on_paste(); |
| 968 // Force a Paste operation to trigger the text_changed code in | 970 // Force a Paste operation to trigger the text_changed code in |
| 969 // OnAfterPossibleChange(), even if identical contents are pasted. | 971 // OnAfterPossibleChange(), even if identical contents are pasted. |
| 970 text_before_change_.clear(); | 972 text_before_change_.clear(); |
| 971 InsertOrReplaceText(text); | 973 InsertOrReplaceText(text); |
| 972 } | 974 } |
| 973 } | 975 } |
| OLD | NEW |