Commit 44698886 authored by Gauthier Ambard's avatar Gauthier Ambard Committed by Commit Bot

Log and cancel omnibox edit when button is pressed

When any button of the toolbar is pressed, the event should be logged.
Also if the omnibox is being edited, the edit mode should be removed.
This CL adds a method to add those actions to all buttons.

Bug: 795257
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: If6b34153b6f2fcaa7fa9037f26a7f0a15ab75da2
Reviewed-on: https://chromium-review.googlesource.com/829315Reviewed-by: default avatarOlivier Robin <olivierrobin@chromium.org>
Commit-Queue: Gauthier Ambard <gambard@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524682}
parent a8268b02
...@@ -64,6 +64,7 @@ source_set("content_suggestions") { ...@@ -64,6 +64,7 @@ source_set("content_suggestions") {
"//ios/chrome/browser/ui/overscroll_actions", "//ios/chrome/browser/ui/overscroll_actions",
"//ios/chrome/browser/ui/reading_list", "//ios/chrome/browser/ui/reading_list",
"//ios/chrome/browser/ui/toolbar", "//ios/chrome/browser/ui/toolbar",
"//ios/chrome/browser/ui/toolbar/clean:toolbar_ui",
"//ios/chrome/browser/web_state_list", "//ios/chrome/browser/web_state_list",
"//ios/chrome/common/app_group", "//ios/chrome/common/app_group",
"//ios/public/provider/chrome/browser", "//ios/public/provider/chrome/browser",
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
#import "ios/chrome/browser/ui/content_suggestions/ntp_home_constant.h" #import "ios/chrome/browser/ui/content_suggestions/ntp_home_constant.h"
#import "ios/chrome/browser/ui/ntp/new_tab_page_header_constants.h" #import "ios/chrome/browser/ui/ntp/new_tab_page_header_constants.h"
#import "ios/chrome/browser/ui/ntp/new_tab_page_header_view.h" #import "ios/chrome/browser/ui/ntp/new_tab_page_header_view.h"
#import "ios/chrome/browser/ui/toolbar/omnibox_focuser.h" #import "ios/chrome/browser/ui/toolbar/clean/omnibox_focuser.h"
#import "ios/chrome/browser/ui/uikit_ui_util.h" #import "ios/chrome/browser/ui/uikit_ui_util.h"
#import "ios/chrome/browser/ui/url_loader.h" #import "ios/chrome/browser/ui/url_loader.h"
#import "ios/chrome/browser/ui/util/constraints_ui_util.h" #import "ios/chrome/browser/ui/util/constraints_ui_util.h"
......
...@@ -34,6 +34,7 @@ source_set("ntp_header") { ...@@ -34,6 +34,7 @@ source_set("ntp_header") {
"//ios/chrome/browser/ui/favicon:favicon_ui", "//ios/chrome/browser/ui/favicon:favicon_ui",
"//ios/chrome/browser/ui/toolbar", "//ios/chrome/browser/ui/toolbar",
"//ios/chrome/browser/ui/toolbar:resource_macros", "//ios/chrome/browser/ui/toolbar:resource_macros",
"//ios/chrome/browser/ui/toolbar/clean:toolbar_ui",
"//ios/chrome/browser/ui/toolbar/public", "//ios/chrome/browser/ui/toolbar/public",
"//ios/chrome/browser/ui/toolbar/public:toolbar_base_feature", "//ios/chrome/browser/ui/toolbar/public:toolbar_base_feature",
"//ios/chrome/common", "//ios/chrome/common",
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
#import "ios/chrome/browser/ui/commands/application_commands.h" #import "ios/chrome/browser/ui/commands/application_commands.h"
#import "ios/chrome/browser/ui/commands/browser_commands.h" #import "ios/chrome/browser/ui/commands/browser_commands.h"
#import "ios/chrome/browser/ui/rtl_geometry.h" #import "ios/chrome/browser/ui/rtl_geometry.h"
#import "ios/chrome/browser/ui/toolbar/omnibox_focuser.h" #import "ios/chrome/browser/ui/toolbar/clean/omnibox_focuser.h"
#import "ios/chrome/browser/ui/toolbar/public/toolbar_controller_constants.h" #import "ios/chrome/browser/ui/toolbar/public/toolbar_controller_constants.h"
#import "ios/chrome/browser/ui/toolbar/toolbar_controller+protected.h" #import "ios/chrome/browser/ui/toolbar/toolbar_controller+protected.h"
#include "ios/chrome/browser/ui/toolbar/toolbar_resource_macros.h" #include "ios/chrome/browser/ui/toolbar/toolbar_resource_macros.h"
......
...@@ -11,7 +11,6 @@ source_set("toolbar") { ...@@ -11,7 +11,6 @@ source_set("toolbar") {
"legacy_toolbar_view.mm", "legacy_toolbar_view.mm",
"new_tab_button.h", "new_tab_button.h",
"new_tab_button.mm", "new_tab_button.mm",
"omnibox_focuser.h",
"toolbar_adapter.h", "toolbar_adapter.h",
"toolbar_adapter.mm", "toolbar_adapter.mm",
"toolbar_controller+protected.h", "toolbar_controller+protected.h",
......
...@@ -55,6 +55,7 @@ source_set("toolbar") { ...@@ -55,6 +55,7 @@ source_set("toolbar") {
source_set("toolbar_ui") { source_set("toolbar_ui") {
sources = [ sources = [
"omnibox_focuser.h",
"toolbar_button_updater.h", "toolbar_button_updater.h",
"toolbar_button_updater.mm", "toolbar_button_updater.mm",
"toolbar_consumer.h", "toolbar_consumer.h",
......
...@@ -2,8 +2,8 @@ ...@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#ifndef IOS_CHROME_BROWSER_UI_TOOLBAR_OMNIBOX_FOCUSER_H_ #ifndef IOS_CHROME_BROWSER_UI_TOOLBAR_CLEAN_OMNIBOX_FOCUSER_H_
#define IOS_CHROME_BROWSER_UI_TOOLBAR_OMNIBOX_FOCUSER_H_ #define IOS_CHROME_BROWSER_UI_TOOLBAR_CLEAN_OMNIBOX_FOCUSER_H_
#import <Foundation/Foundation.h> #import <Foundation/Foundation.h>
...@@ -22,4 +22,4 @@ ...@@ -22,4 +22,4 @@
- (void)onFakeboxAnimationComplete; - (void)onFakeboxAnimationComplete;
@end @end
#endif // IOS_CHROME_BROWSER_UI_TOOLBAR_OMNIBOX_FOCUSER_H_ #endif // IOS_CHROME_BROWSER_UI_TOOLBAR_CLEAN_OMNIBOX_FOCUSER_H_
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
#import <UIKit/UIKit.h> #import <UIKit/UIKit.h>
#include "ios/chrome/browser/ui/qr_scanner/requirements/qr_scanner_result_loading.h" #include "ios/chrome/browser/ui/qr_scanner/requirements/qr_scanner_result_loading.h"
#import "ios/chrome/browser/ui/toolbar/omnibox_focuser.h" #import "ios/chrome/browser/ui/toolbar/clean/omnibox_focuser.h"
#import "ios/chrome/browser/ui/tools_menu/public/tools_menu_presentation_provider.h" #import "ios/chrome/browser/ui/tools_menu/public/tools_menu_presentation_provider.h"
#include "ios/public/provider/chrome/browser/voice/voice_search_controller_delegate.h" #include "ios/public/provider/chrome/browser/voice/voice_search_controller_delegate.h"
......
...@@ -180,7 +180,8 @@ ...@@ -180,7 +180,8 @@
self.toolbarViewController = self.toolbarViewController =
[[ToolbarViewController alloc] initWithDispatcher:self.dispatcher [[ToolbarViewController alloc] initWithDispatcher:self.dispatcher
buttonFactory:factory buttonFactory:factory
buttonUpdater:self.buttonUpdater]; buttonUpdater:self.buttonUpdater
omniboxFocuser:self];
self.toolbarViewController.locationBarView = self.locationBarView; self.toolbarViewController.locationBarView = self.locationBarView;
self.toolbarViewController.dispatcher = self.dispatcher; self.toolbarViewController.dispatcher = self.dispatcher;
......
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
@protocol ApplicationCommands; @protocol ApplicationCommands;
@protocol BrowserCommands; @protocol BrowserCommands;
@protocol OmniboxFocuser;
@class ToolbarButtonFactory; @class ToolbarButtonFactory;
@class ToolbarButtonUpdater; @class ToolbarButtonUpdater;
@class ToolbarToolsMenuButton; @class ToolbarToolsMenuButton;
...@@ -30,6 +31,7 @@ ...@@ -30,6 +31,7 @@
(id<ApplicationCommands, BrowserCommands>)dispatcher (id<ApplicationCommands, BrowserCommands>)dispatcher
buttonFactory:(ToolbarButtonFactory*)buttonFactory buttonFactory:(ToolbarButtonFactory*)buttonFactory
buttonUpdater:(ToolbarButtonUpdater*)buttonUpdater buttonUpdater:(ToolbarButtonUpdater*)buttonUpdater
omniboxFocuser:(id<OmniboxFocuser>)omniboxFocuser
NS_DESIGNATED_INITIALIZER; NS_DESIGNATED_INITIALIZER;
- (instancetype)init NS_UNAVAILABLE; - (instancetype)init NS_UNAVAILABLE;
...@@ -45,6 +47,8 @@ ...@@ -45,6 +47,8 @@
@property(nonatomic, strong, readonly) ToolbarToolsMenuButton* toolsMenuButton; @property(nonatomic, strong, readonly) ToolbarToolsMenuButton* toolsMenuButton;
// Whether the toolbar is in the expanded state or not. // Whether the toolbar is in the expanded state or not.
@property(nonatomic, assign) BOOL expanded; @property(nonatomic, assign) BOOL expanded;
// Omnibox focuser.
@property(nonatomic, weak) id<OmniboxFocuser> omniboxFocuser;
// Adds the toolbar expanded state animations to |animator|, and changes the // Adds the toolbar expanded state animations to |animator|, and changes the
// toolbar constraints in preparation for the animation. // toolbar constraints in preparation for the animation.
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
#import "ios/chrome/browser/ui/toolbar/clean/toolbar_view_controller.h" #import "ios/chrome/browser/ui/toolbar/clean/toolbar_view_controller.h"
#import "base/mac/foundation_util.h" #import "base/mac/foundation_util.h"
#include "base/metrics/user_metrics.h"
#import "ios/chrome/browser/ui/bubble/bubble_util.h" #import "ios/chrome/browser/ui/bubble/bubble_util.h"
#import "ios/chrome/browser/ui/commands/application_commands.h" #import "ios/chrome/browser/ui/commands/application_commands.h"
#import "ios/chrome/browser/ui/commands/browser_commands.h" #import "ios/chrome/browser/ui/commands/browser_commands.h"
...@@ -12,6 +13,7 @@ ...@@ -12,6 +13,7 @@
#import "ios/chrome/browser/ui/commands/start_voice_search_command.h" #import "ios/chrome/browser/ui/commands/start_voice_search_command.h"
#import "ios/chrome/browser/ui/fullscreen/fullscreen_scroll_end_animator.h" #import "ios/chrome/browser/ui/fullscreen/fullscreen_scroll_end_animator.h"
#include "ios/chrome/browser/ui/rtl_geometry.h" #include "ios/chrome/browser/ui/rtl_geometry.h"
#import "ios/chrome/browser/ui/toolbar/clean/omnibox_focuser.h"
#import "ios/chrome/browser/ui/toolbar/clean/toolbar_button.h" #import "ios/chrome/browser/ui/toolbar/clean/toolbar_button.h"
#import "ios/chrome/browser/ui/toolbar/clean/toolbar_button_factory.h" #import "ios/chrome/browser/ui/toolbar/clean/toolbar_button_factory.h"
#import "ios/chrome/browser/ui/toolbar/clean/toolbar_button_updater.h" #import "ios/chrome/browser/ui/toolbar/clean/toolbar_button_updater.h"
...@@ -137,18 +139,21 @@ ...@@ -137,18 +139,21 @@
@synthesize trailingFakeSafeAreaConstraint = _trailingFakeSafeAreaConstraint; @synthesize trailingFakeSafeAreaConstraint = _trailingFakeSafeAreaConstraint;
@synthesize leadingSafeAreaConstraint = _leadingSafeAreaConstraint; @synthesize leadingSafeAreaConstraint = _leadingSafeAreaConstraint;
@synthesize trailingSafeAreaConstraint = _trailingSafeAreaConstraint; @synthesize trailingSafeAreaConstraint = _trailingSafeAreaConstraint;
@synthesize omniboxFocuser = _omniboxFocuser;
#pragma mark - Public #pragma mark - Public
- (instancetype)initWithDispatcher: - (instancetype)initWithDispatcher:
(id<ApplicationCommands, BrowserCommands>)dispatcher (id<ApplicationCommands, BrowserCommands>)dispatcher
buttonFactory:(ToolbarButtonFactory*)buttonFactory buttonFactory:(ToolbarButtonFactory*)buttonFactory
buttonUpdater:(ToolbarButtonUpdater*)buttonUpdater { buttonUpdater:(ToolbarButtonUpdater*)buttonUpdater
omniboxFocuser:(id<OmniboxFocuser>)omniboxFocuser {
_dispatcher = dispatcher; _dispatcher = dispatcher;
self = [super initWithNibName:nil bundle:nil]; self = [super initWithNibName:nil bundle:nil];
if (self) { if (self) {
_buttonFactory = buttonFactory; _buttonFactory = buttonFactory;
_buttonUpdater = buttonUpdater; _buttonUpdater = buttonUpdater;
_omniboxFocuser = omniboxFocuser;
[self setUpToolbarButtons]; [self setUpToolbarButtons];
[self setUpLocationBarContainer]; [self setUpLocationBarContainer];
[self setUpProgressBar]; [self setUpProgressBar];
...@@ -607,6 +612,7 @@ ...@@ -607,6 +612,7 @@
initWithTarget:self initWithTarget:self
action:@selector(handleLongPress:)]; action:@selector(handleLongPress:)];
[self.backButton addGestureRecognizer:backHistoryLongPress]; [self.backButton addGestureRecognizer:backHistoryLongPress];
[self addStandardActionsForButton:self.backButton];
// Forward button. // Forward button.
self.forwardButton = [self.buttonFactory forwardToolbarButton]; self.forwardButton = [self.buttonFactory forwardToolbarButton];
...@@ -628,6 +634,7 @@ ...@@ -628,6 +634,7 @@
initWithTarget:self initWithTarget:self
action:@selector(handleLongPress:)]; action:@selector(handleLongPress:)];
[self.forwardButton addGestureRecognizer:forwardHistoryLongPress]; [self.forwardButton addGestureRecognizer:forwardHistoryLongPress];
[self addStandardActionsForButton:self.forwardButton];
// Tab switcher Strip button. // Tab switcher Strip button.
self.tabSwitchStripButton = self.tabSwitchStripButton =
...@@ -640,6 +647,7 @@ ...@@ -640,6 +647,7 @@
[self.tabSwitchStripButton addTarget:self.dispatcher [self.tabSwitchStripButton addTarget:self.dispatcher
action:@selector(displayTabSwitcher) action:@selector(displayTabSwitcher)
forControlEvents:UIControlEventTouchUpInside]; forControlEvents:UIControlEventTouchUpInside];
[self addStandardActionsForButton:self.tabSwitchStripButton];
// Tools menu button. // Tools menu button.
self.toolsMenuButton = [self.buttonFactory toolsMenuToolbarButton]; self.toolsMenuButton = [self.buttonFactory toolsMenuToolbarButton];
...@@ -651,6 +659,7 @@ ...@@ -651,6 +659,7 @@
[self.toolsMenuButton addTarget:self.dispatcher [self.toolsMenuButton addTarget:self.dispatcher
action:@selector(showToolsMenu) action:@selector(showToolsMenu)
forControlEvents:UIControlEventTouchUpInside]; forControlEvents:UIControlEventTouchUpInside];
[self addStandardActionsForButton:self.toolsMenuButton];
// Share button. // Share button.
self.shareButton = [self.buttonFactory shareToolbarButton]; self.shareButton = [self.buttonFactory shareToolbarButton];
...@@ -662,6 +671,7 @@ ...@@ -662,6 +671,7 @@
[self.shareButton addTarget:self.dispatcher [self.shareButton addTarget:self.dispatcher
action:@selector(sharePage) action:@selector(sharePage)
forControlEvents:UIControlEventTouchUpInside]; forControlEvents:UIControlEventTouchUpInside];
[self addStandardActionsForButton:self.shareButton];
// Reload button. // Reload button.
self.reloadButton = [self.buttonFactory reloadToolbarButton]; self.reloadButton = [self.buttonFactory reloadToolbarButton];
...@@ -672,6 +682,7 @@ ...@@ -672,6 +682,7 @@
[self.reloadButton addTarget:self.dispatcher [self.reloadButton addTarget:self.dispatcher
action:@selector(reload) action:@selector(reload)
forControlEvents:UIControlEventTouchUpInside]; forControlEvents:UIControlEventTouchUpInside];
[self addStandardActionsForButton:self.reloadButton];
// Stop button. // Stop button.
self.stopButton = [self.buttonFactory stopToolbarButton]; self.stopButton = [self.buttonFactory stopToolbarButton];
...@@ -682,6 +693,7 @@ ...@@ -682,6 +693,7 @@
[self.stopButton addTarget:self.dispatcher [self.stopButton addTarget:self.dispatcher
action:@selector(stopLoading) action:@selector(stopLoading)
forControlEvents:UIControlEventTouchUpInside]; forControlEvents:UIControlEventTouchUpInside];
[self addStandardActionsForButton:self.stopButton];
// Voice Search button. // Voice Search button.
self.voiceSearchButton = [self.buttonFactory voiceSearchButton]; self.voiceSearchButton = [self.buttonFactory voiceSearchButton];
...@@ -691,6 +703,7 @@ ...@@ -691,6 +703,7 @@
addObject:[self.voiceSearchButton.widthAnchor addObject:[self.voiceSearchButton.widthAnchor
constraintEqualToConstant:kToolbarButtonWidth]]; constraintEqualToConstant:kToolbarButtonWidth]];
self.voiceSearchButton.enabled = NO; self.voiceSearchButton.enabled = NO;
[self addStandardActionsForButton:self.voiceSearchButton];
// Bookmark button. // Bookmark button.
self.bookmarkButton = [self.buttonFactory bookmarkToolbarButton]; self.bookmarkButton = [self.buttonFactory bookmarkToolbarButton];
...@@ -701,6 +714,7 @@ ...@@ -701,6 +714,7 @@
[self.bookmarkButton addTarget:self.dispatcher [self.bookmarkButton addTarget:self.dispatcher
action:@selector(bookmarkPage) action:@selector(bookmarkPage)
forControlEvents:UIControlEventTouchUpInside]; forControlEvents:UIControlEventTouchUpInside];
[self addStandardActionsForButton:self.bookmarkButton];
// Contract button. // Contract button.
self.contractButton = [self.buttonFactory contractToolbarButton]; self.contractButton = [self.buttonFactory contractToolbarButton];
...@@ -1152,4 +1166,40 @@ ...@@ -1152,4 +1166,40 @@
return IsIPadIdiom() ? kLeadingMarginIPad : 0; return IsIPadIdiom() ? kLeadingMarginIPad : 0;
} }
// Registers the actions which will be triggered when tapping the button.
- (void)addStandardActionsForButton:(UIButton*)button {
if (button != self.toolsMenuButton) {
[button addTarget:self.omniboxFocuser
action:@selector(cancelOmniboxEdit)
forControlEvents:UIControlEventTouchUpInside];
}
[button addTarget:self
action:@selector(recordUserMetrics:)
forControlEvents:UIControlEventTouchUpInside];
}
// Records the use of a button.
- (IBAction)recordUserMetrics:(id)sender {
if (sender == self.backButton) {
base::RecordAction(base::UserMetricsAction("MobileToolbarBack"));
} else if (sender == self.forwardButton) {
base::RecordAction(base::UserMetricsAction("MobileToolbarForward"));
} else if (sender == self.reloadButton) {
base::RecordAction(base::UserMetricsAction("MobileToolbarReload"));
} else if (sender == self.stopButton) {
base::RecordAction(base::UserMetricsAction("MobileToolbarStop"));
} else if (sender == self.voiceSearchButton) {
base::RecordAction(base::UserMetricsAction("MobileToolbarVoiceSearch"));
} else if (sender == self.bookmarkButton) {
base::RecordAction(base::UserMetricsAction("MobileToolbarToggleBookmark"));
} else if (sender == self.toolsMenuButton) {
base::RecordAction(base::UserMetricsAction("MobileToolbarShowMenu"));
} else if (sender == self.tabSwitchStripButton) {
base::RecordAction(base::UserMetricsAction("MobileToolbarShowStackView"));
} else if (sender == self.shareButton) {
base::RecordAction(base::UserMetricsAction("MobileToolbarShareMenu"));
} else {
NOTREACHED();
}
}
@end @end
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
#import "ios/chrome/browser/ui/fullscreen/fullscreen_ui_element.h" #import "ios/chrome/browser/ui/fullscreen/fullscreen_ui_element.h"
#import "ios/chrome/browser/ui/ntp/incognito_view_controller_delegate.h" #import "ios/chrome/browser/ui/ntp/incognito_view_controller_delegate.h"
#import "ios/chrome/browser/ui/side_swipe/side_swipe_toolbar_interacting.h" #import "ios/chrome/browser/ui/side_swipe/side_swipe_toolbar_interacting.h"
#import "ios/chrome/browser/ui/toolbar/omnibox_focuser.h" #import "ios/chrome/browser/ui/toolbar/clean/omnibox_focuser.h"
#import "ios/chrome/browser/ui/toolbar/public/abstract_web_toolbar.h" #import "ios/chrome/browser/ui/toolbar/public/abstract_web_toolbar.h"
#import "ios/chrome/browser/ui/toolbar/toolbar_snapshot_providing.h" #import "ios/chrome/browser/ui/toolbar/toolbar_snapshot_providing.h"
#import "ios/chrome/browser/ui/tools_menu/public/tools_menu_presentation_provider.h" #import "ios/chrome/browser/ui/tools_menu/public/tools_menu_presentation_provider.h"
......
...@@ -11,8 +11,8 @@ ...@@ -11,8 +11,8 @@
#import "ios/chrome/browser/ui/fullscreen/fullscreen_controller_factory.h" #import "ios/chrome/browser/ui/fullscreen/fullscreen_controller_factory.h"
#import "ios/chrome/browser/ui/fullscreen/fullscreen_features.h" #import "ios/chrome/browser/ui/fullscreen/fullscreen_features.h"
#import "ios/chrome/browser/ui/fullscreen/fullscreen_ui_updater.h" #import "ios/chrome/browser/ui/fullscreen/fullscreen_ui_updater.h"
#import "ios/chrome/browser/ui/toolbar/clean/omnibox_focuser.h"
#import "ios/chrome/browser/ui/toolbar/clean/toolbar_button_updater.h" #import "ios/chrome/browser/ui/toolbar/clean/toolbar_button_updater.h"
#import "ios/chrome/browser/ui/toolbar/omnibox_focuser.h"
#import "ios/chrome/browser/ui/toolbar/web_toolbar_controller.h" #import "ios/chrome/browser/ui/toolbar/web_toolbar_controller.h"
#import "ios/chrome/browser/ui/tools_menu/public/tools_menu_constants.h" #import "ios/chrome/browser/ui/tools_menu/public/tools_menu_constants.h"
#import "ios/chrome/browser/ui/tools_menu/tools_menu_coordinator.h" #import "ios/chrome/browser/ui/tools_menu/tools_menu_coordinator.h"
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
#include "ios/chrome/browser/ui/omnibox/omnibox_popup_positioner.h" #include "ios/chrome/browser/ui/omnibox/omnibox_popup_positioner.h"
#include "ios/chrome/browser/ui/qr_scanner/requirements/qr_scanner_result_loading.h" #include "ios/chrome/browser/ui/qr_scanner/requirements/qr_scanner_result_loading.h"
#import "ios/chrome/browser/ui/toolbar/omnibox_focuser.h" #import "ios/chrome/browser/ui/toolbar/clean/omnibox_focuser.h"
#import "ios/chrome/browser/ui/toolbar/public/abstract_web_toolbar.h" #import "ios/chrome/browser/ui/toolbar/public/abstract_web_toolbar.h"
#import "ios/chrome/browser/ui/toolbar/toolbar_controller.h" #import "ios/chrome/browser/ui/toolbar/toolbar_controller.h"
#include "ios/public/provider/chrome/browser/voice/voice_search_controller_delegate.h" #include "ios/public/provider/chrome/browser/voice/voice_search_controller_delegate.h"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment