Commit 02c82eba authored by sczs's avatar sczs Committed by Commit Bot

[ios] Creates ToolbarCommand for contractingToolbar.

Creates a ToolbarCommands protocol so the ToolbarVC can cancel the omnibox edit.

Bug: 791092
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I5e283cfd1144b41c6f207103de153f0c6a4d7128
Reviewed-on: https://chromium-review.googlesource.com/804140
Commit-Queue: Sergio Collazos <sczs@chromium.org>
Reviewed-by: default avatarPeter Lee <pkl@chromium.org>
Cr-Commit-Position: refs/heads/master@{#521117}
parent 92fca912
...@@ -33,6 +33,7 @@ source_set("commands") { ...@@ -33,6 +33,7 @@ source_set("commands") {
"snackbar_commands.h", "snackbar_commands.h",
"start_voice_search_command.h", "start_voice_search_command.h",
"start_voice_search_command.mm", "start_voice_search_command.mm",
"toolbar_commands.h",
"tools_menu_commands.h", "tools_menu_commands.h",
] ]
deps = [ deps = [
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
#import "ios/chrome/browser/ui/commands/page_info_commands.h" #import "ios/chrome/browser/ui/commands/page_info_commands.h"
#import "ios/chrome/browser/ui/commands/qr_scanner_commands.h" #import "ios/chrome/browser/ui/commands/qr_scanner_commands.h"
#import "ios/chrome/browser/ui/commands/snackbar_commands.h" #import "ios/chrome/browser/ui/commands/snackbar_commands.h"
#import "ios/chrome/browser/ui/commands/toolbar_commands.h"
#import "ios/chrome/browser/ui/commands/tools_menu_commands.h" #import "ios/chrome/browser/ui/commands/tools_menu_commands.h"
@class OpenNewTabCommand; @class OpenNewTabCommand;
...@@ -27,6 +28,7 @@ ...@@ -27,6 +28,7 @@
QRScannerCommands, QRScannerCommands,
SnackbarCommands, SnackbarCommands,
TabHistoryPopupCommands, TabHistoryPopupCommands,
ToolbarCommands,
ToolsMenuCommands> ToolsMenuCommands>
// Closes the current tab. // Closes the current tab.
......
// Copyright 2017 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_UI_COMMANDS_TOOLBAR_COMMANDS_H_
#define IOS_CHROME_BROWSER_UI_COMMANDS_TOOLBAR_COMMANDS_H_
// Protocol that describes the commands that trigger Toolbar UI changes.
@protocol ToolbarCommands
// Contracts the Toolbar to its regular form.
- (void)contractToolbar;
@end
#endif // IOS_CHROME_BROWSER_UI_COMMANDS_TOOLBAR_COMMANDS_H_
...@@ -433,6 +433,9 @@ ...@@ -433,6 +433,9 @@
[buttonConstraints [buttonConstraints
addObject:[self.contractButton.widthAnchor addObject:[self.contractButton.widthAnchor
constraintEqualToConstant:kToolbarButtonWidth]]; constraintEqualToConstant:kToolbarButtonWidth]];
[self.contractButton addTarget:self.dispatcher
action:@selector(contractToolbar)
forControlEvents:UIControlEventTouchUpInside];
// Add buttons to button updater. // Add buttons to button updater.
self.buttonUpdater.backButton = self.backButton; self.buttonUpdater.backButton = self.backButton;
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
#import "ios/chrome/browser/ui/toolbar/legacy_toolbar_coordinator.h" #import "ios/chrome/browser/ui/toolbar/legacy_toolbar_coordinator.h"
#import "ios/chrome/browser/ui/commands/toolbar_commands.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/omnibox_focuser.h"
#import "ios/chrome/browser/ui/toolbar/web_toolbar_controller.h" #import "ios/chrome/browser/ui/toolbar/web_toolbar_controller.h"
...@@ -38,6 +39,9 @@ ...@@ -38,6 +39,9 @@
_toolsMenuCoordinator.dispatcher = dispatcher; _toolsMenuCoordinator.dispatcher = dispatcher;
_toolsMenuCoordinator.configurationProvider = configurationProvider; _toolsMenuCoordinator.configurationProvider = configurationProvider;
[dispatcher startDispatchingToTarget:self
forProtocol:@protocol(ToolbarCommands)];
NSNotificationCenter* defaultCenter = [NSNotificationCenter defaultCenter]; NSNotificationCenter* defaultCenter = [NSNotificationCenter defaultCenter];
[defaultCenter addObserver:self [defaultCenter addObserver:self
selector:@selector(toolsMenuWillShowNotification:) selector:@selector(toolsMenuWillShowNotification:)
...@@ -274,4 +278,10 @@ ...@@ -274,4 +278,10 @@
[self.toolbarController setToolsMenuIsVisibleForToolsMenuButton:NO]; [self.toolbarController setToolsMenuIsVisibleForToolsMenuButton:NO];
} }
#pragma mark - Toolbar Commands
- (void)contractToolbar {
[self cancelOmniboxEdit];
}
@end @end
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