summaryrefslogtreecommitdiffstats
path: root/chrome/browser/ui/omnibox/omnibox_edit_model.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/ui/omnibox/omnibox_edit_model.h')
-rw-r--r--chrome/browser/ui/omnibox/omnibox_edit_model.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/chrome/browser/ui/omnibox/omnibox_edit_model.h b/chrome/browser/ui/omnibox/omnibox_edit_model.h
index c2f780d..afc9be7 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_;