| Index: ios/chrome/browser/geolocation/omnibox_geolocation_controller.h
|
| diff --git a/ios/chrome/browser/geolocation/omnibox_geolocation_controller.h b/ios/chrome/browser/geolocation/omnibox_geolocation_controller.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..b14785ee1e9d394e78964211c10d3611cab170b0
|
| --- /dev/null
|
| +++ b/ios/chrome/browser/geolocation/omnibox_geolocation_controller.h
|
| @@ -0,0 +1,60 @@
|
| +// Copyright 2013 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef IOS_CHROME_BROWSER_GEOLOCATION_OMNIBOX_GEOLOCATION_CONTROLLER_H_
|
| +#define IOS_CHROME_BROWSER_GEOLOCATION_OMNIBOX_GEOLOCATION_CONTROLLER_H_
|
| +
|
| +#import <Foundation/Foundation.h>
|
| +
|
| +#include "ui/base/page_transition_types.h"
|
| +
|
| +class GURL;
|
| +@class Tab;
|
| +
|
| +namespace ios {
|
| +class ChromeBrowserState;
|
| +}
|
| +
|
| +namespace web {
|
| +class NavigationItem;
|
| +}
|
| +
|
| +// Manages using the current device location for omnibox search queries.
|
| +@interface OmniboxGeolocationController : NSObject
|
| +
|
| +// Returns singleton object for this class.
|
| ++ (OmniboxGeolocationController*)sharedInstance;
|
| +
|
| +// Triggers the iOS system prompt to authorize the use of location, if the
|
| +// authorization is not yet determined.
|
| +// |newUser| specifies whether this is a new user or an existing user
|
| +- (void)triggerSystemPromptForNewUser:(BOOL)newUser;
|
| +
|
| +// Notifies the receiver that the location bar became the first responder.
|
| +- (void)locationBarDidBecomeFirstResponder:
|
| + (ios::ChromeBrowserState*)browserState;
|
| +
|
| +// Notifies the receiver that the location bar stopped being the first
|
| +// responder.
|
| +- (void)locationBarDidResignFirstResponder:
|
| + (ios::ChromeBrowserState*)browserState;
|
| +
|
| +// Notifies the receiver that the user submitted a URL via the location bar.
|
| +- (void)locationBarDidSubmitURL:(const GURL&)url
|
| + transition:(ui::PageTransition)transition
|
| + browserState:(ios::ChromeBrowserState*)browserState;
|
| +
|
| +// Adds the current device location to |item| if |item| represents an Omnibox
|
| +// query that's eligible for location. Returns |YES| if the current device
|
| +// location was added to |item|; returns |NO| otherwise.
|
| +- (BOOL)addLocationToNavigationItem:(web::NavigationItem*)item
|
| + browserState:(ios::ChromeBrowserState*)browserState;
|
| +
|
| +// Notifies the receiver that the browser finished loading the page for |tab|.
|
| +// |loadSuccess| whether the tab loaded successfully
|
| +- (void)finishPageLoadForTab:(Tab*)tab loadSuccess:(BOOL)loadSuccess;
|
| +
|
| +@end
|
| +
|
| +#endif // IOS_CHROME_BROWSER_GEOLOCATION_OMNIBOX_GEOLOCATION_CONTROLLER_H_
|
|
|