Commit 2cefdea7 authored by Kurt Horimoto's avatar Kurt Horimoto Committed by Commit Bot

[iOS] Update the voice search button guide to the omnibox trailing view.

This CL updates the voice search button guide when being triggered from
the omnibox voice search button.

Bug: 825396
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: Ia0aeb04340966bbdf96715af56dbc334152598d0
Reviewed-on: https://chromium-review.googlesource.com/1025570
Commit-Queue: Kurt Horimoto <kkhorimoto@chromium.org>
Reviewed-by: default avatarStepan Khapugin <stkhapugin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553113}
parent 3a57477f
......@@ -55,6 +55,7 @@ source_set("location_bar") {
"//ios/chrome/browser/ui/toolbar/keyboard_assist:keyboard_assist",
"//ios/chrome/browser/ui/toolbar/public",
"//ios/chrome/browser/ui/toolbar/public:toolbar_base_feature",
"//ios/chrome/browser/ui/util",
"//ios/chrome/browser/ui/voice",
"//ios/chrome/browser/web_state_list",
"//ios/chrome/common:timing",
......
......@@ -13,6 +13,7 @@
#include "ios/chrome/browser/ui/location_bar/location_bar_edit_view.h"
#include "ios/chrome/browser/ui/location_bar/location_bar_steady_view.h"
#import "ios/chrome/browser/ui/util/constraints_ui_util.h"
#import "ios/chrome/browser/ui/util/named_guide.h"
#if !defined(__has_feature) || !__has_feature(objc_arc)
#error "This file requires ARC support."
......@@ -36,6 +37,11 @@ typedef NS_ENUM(int, TrailingButtonState) {
@property(nonatomic, strong) LocationBarSteadyView* locationBarSteadyView;
@property(nonatomic, assign) TrailingButtonState trailingButtonState;
// Starts voice search, updating the NamedGuide to be constrained to the
// trailing button.
- (void)startVoiceSearch;
@end
@implementation LocationBarViewController
......@@ -194,6 +200,14 @@ typedef NS_ENUM(int, TrailingButtonState) {
return;
}
// Stop constraining the voice guide to the trailing button if transitioning
// from kVoiceSearchButton.
NamedGuide* voiceGuide =
[NamedGuide guideWithName:kVoiceSearchButtonGuide
view:self.locationBarSteadyView];
if (voiceGuide.constrainedView == self.locationBarSteadyView.trailingButton)
voiceGuide.constrainedView = nil;
_trailingButtonState = state;
// Cancel previous possible state.
......@@ -233,7 +247,7 @@ typedef NS_ENUM(int, TrailingButtonState) {
action:@selector(preloadVoiceSearch)
forControlEvents:UIControlEventTouchDown];
[self.locationBarSteadyView.trailingButton
addTarget:self.dispatcher
addTarget:self
action:@selector(startVoiceSearch)
forControlEvents:UIControlEventTouchUpInside];
[self.locationBarSteadyView.trailingButton
......@@ -243,4 +257,10 @@ typedef NS_ENUM(int, TrailingButtonState) {
}
}
- (void)startVoiceSearch {
[NamedGuide guideWithName:kVoiceSearchButtonGuide view:self.view]
.constrainedView = self.locationBarSteadyView.trailingButton;
[self.dispatcher startVoiceSearch];
}
@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