Index: chrome/browser/ui/omnibox/omnibox_edit_model.h |
diff --git a/chrome/browser/ui/omnibox/omnibox_edit_model.h b/chrome/browser/ui/omnibox/omnibox_edit_model.h |
index d3498920521ef3154ddf0a30f80a266f77b7a9ad..e93e6b34af85f1e44b23aea06006adb27eb22274 100644 |
--- a/chrome/browser/ui/omnibox/omnibox_edit_model.h |
+++ b/chrome/browser/ui/omnibox/omnibox_edit_model.h |
@@ -43,13 +43,22 @@ enum EnteredKeywordModeMethod { |
class OmniboxEditModel { |
public: |
+ // Did the Omnibox focus originate via the user clicking on the Omnibox or on |
+ // the Fakebox? |
+ enum FocusSource { |
+ INVALID = 0, |
+ OMNIBOX = 1, |
+ FAKEBOX = 2 |
+ }; |
+ |
struct State { |
State(bool user_input_in_progress, |
const string16& user_text, |
const string16& gray_text, |
const string16& keyword, |
bool is_keyword_hint, |
- OmniboxFocusState focus_state); |
+ OmniboxFocusState focus_state, |
+ FocusSource focus_source); |
~State(); |
bool user_input_in_progress; |
@@ -58,6 +67,7 @@ class OmniboxEditModel { |
const string16 keyword; |
const bool is_keyword_hint; |
OmniboxFocusState focus_state; |
+ FocusSource focus_source; |
}; |
OmniboxEditModel(OmniboxView* view, |
@@ -410,6 +420,11 @@ class OmniboxEditModel { |
OmniboxFocusState focus_state_; |
+ // Used to keep track whether the input currently in progress originated by |
+ // focusing in the Omnibox or in the Fakebox. This will be INVALID if no input |
+ // is in progress or the Omnibox is not focused. |
+ FocusSource focus_source_; |
+ |
// The URL of the currently displayed page. |
string16 permanent_text_; |