Commit 2d0b7e1a authored by Vladislav Kaznacheev's avatar Vladislav Kaznacheev Committed by Commit Bot

cros: Change Assistant pen timing

Start the animation a bit earlier, invoke the Assistant a bit later.
(see the bug for details).

Bug: 751752
Change-Id: Ic141fc6a1955f49fd26a7eab9e7128d0c1197fd0
Reviewed-on: https://chromium-review.googlesource.com/598774Reviewed-by: default avatarJames Cook <jamescook@chromium.org>
Commit-Queue: Vladislav Kaznacheev <kaznacheev@chromium.org>
Cr-Commit-Position: refs/heads/master@{#491553}
parent fe5c2f3d
......@@ -38,12 +38,12 @@ const SkColor kCornerCircleColorRT = SkColorSetRGB(0xEA, 0x43, 0x35);
const SkColor kCornerCircleColorLB = SkColorSetRGB(0x34, 0xA8, 0x53);
const SkColor kCornerCircleColorRB = SkColorSetRGB(0xFB, 0xBC, 0x05);
constexpr int kResultFadeinDelayMs = 600;
constexpr int kResultFadeinDelayMs = 200;
constexpr int kResultFadeinDurationMs = 400;
constexpr int kResultFadeoutDelayMs = 500;
constexpr int kResultFadeoutDurationMs = 200;
constexpr int kResultInPlaceFadeinDelayMs = 500;
constexpr int kResultInPlaceFadeinDelayMs = 100;
constexpr int kResultInPlaceFadeinDurationMs = 500;
constexpr float kInitialScale = 1.2;
......@@ -225,11 +225,11 @@ void HighlighterResultView::ScheduleFadeIn(const base::TimeDelta& delay,
layer->SetOpacity(0);
animation_timer_.reset(
new base::Timer(FROM_HERE, delay,
base::Bind(&HighlighterResultView::FadeIn,
base::Unretained(this), duration),
false));
animation_timer_ = base::MakeUnique<base::Timer>(
FROM_HERE, delay,
base::Bind(&HighlighterResultView::FadeIn, base::Unretained(this),
duration),
false);
animation_timer_->Reset();
}
......@@ -248,12 +248,11 @@ void HighlighterResultView::FadeIn(const base::TimeDelta& duration) {
layer->SetTransform(transform);
}
animation_timer_.reset(new base::Timer(
animation_timer_ = base::MakeUnique<base::Timer>(
FROM_HERE,
base::TimeDelta::FromMilliseconds(kResultFadeinDurationMs +
kResultFadeoutDelayMs),
duration + base::TimeDelta::FromMilliseconds(kResultFadeoutDelayMs),
base::Bind(&HighlighterResultView::FadeOut, base::Unretained(this)),
false));
false);
animation_timer_->Reset();
}
......
......@@ -24,7 +24,7 @@ constexpr int kOutsetForAntialiasing = 1;
constexpr float kStrokeScale = 1.2;
constexpr int kStrokeFadeoutDelayMs = 500;
constexpr int kStrokeFadeoutDelayMs = 100;
constexpr int kStrokeFadeoutDurationMs = 500;
constexpr int kStrokeScaleDurationMs = 300;
......
......@@ -28,6 +28,8 @@
namespace chromeos {
constexpr int kMetalayerSelectionDelayMs = 600;
class VoiceInteractionSelectionObserver
: public ash::HighlighterSelectionObserver {
public:
......@@ -37,6 +39,18 @@ class VoiceInteractionSelectionObserver
private:
void HandleSelection(const gfx::Rect& rect) override {
// Delay the actual voice interaction service invocation for better
// visual synchronization with the metalayer animation.
delay_timer_ = base::MakeUnique<base::Timer>(
FROM_HERE,
base::TimeDelta::FromMilliseconds(kMetalayerSelectionDelayMs),
base::Bind(&VoiceInteractionSelectionObserver::ReportSelection,
base::Unretained(this), rect),
false /* not repeating */);
delay_timer_->Reset();
}
void ReportSelection(const gfx::Rect& rect) {
auto* framework =
arc::ArcVoiceInteractionFrameworkService::GetForBrowserContext(
profile_);
......@@ -47,6 +61,8 @@ class VoiceInteractionSelectionObserver
Profile* const profile_; // Owned by ProfileManager.
std::unique_ptr<base::Timer> delay_timer_;
DISALLOW_COPY_AND_ASSIGN(VoiceInteractionSelectionObserver);
};
......
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