Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8820)

Unified Diff: chrome/browser/ui/views/location_bar/location_bar_view.h

Issue 302453002: New animation for the origin chip URL showing/hiding. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Bugfixes and more animations Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/location_bar/location_bar_view.h
diff --git a/chrome/browser/ui/views/location_bar/location_bar_view.h b/chrome/browser/ui/views/location_bar/location_bar_view.h
index 7bf3c2fe1b367839345e89bb54793a578d8736c8..01e9c152c8724c64fd14ab54e18083b8d3dc07b7 100644
--- a/chrome/browser/ui/views/location_bar/location_bar_view.h
+++ b/chrome/browser/ui/views/location_bar/location_bar_view.h
@@ -256,6 +256,7 @@ class LocationBarView : public LocationBar,
// OmniboxEditController:
virtual void Update(const content::WebContents* contents) OVERRIDE;
virtual void ShowURL() OVERRIDE;
+ virtual void EndOriginChipAnimations() OVERRIDE;
virtual ToolbarModel* GetToolbarModel() OVERRIDE;
virtual content::WebContents* GetWebContents() OVERRIDE;
@@ -336,9 +337,18 @@ class LocationBarView : public LocationBar,
bool ShouldShowKeywordBubble() const;
bool ShouldShowEVBubble() const;
- // Origin chip animation control methods.
- void OnShowURLAnimationEnded();
- void OnHideURLAnimationEnded();
+ // Used to "reverse" the URL showing/hiding animations, since we use separate
+ // animations whose curves are not true inverses of each other. Based on the
+ // current position of the omnibox, calculates what value the desired
+ // animation (|hide_url_animation_| if |hide| is true, |show_url_animation_|
+ // if it's false) should be set to in order to produce the same omnibox
+ // position. This way we can stop the old animation, set the new animation to
+ // this value, and start it running, and the text will appear to reverse
+ // directions from its current location.
+ double GetValueForAnimation(bool hide) const;
Justin Donnelly 2014/05/29 21:37:29 How about GetPositionForAnimation to be more speci
Peter Kasting 2014/05/29 23:32:16 That wouldn't be correct. Because the animations
Justin Donnelly 2014/06/02 15:07:33 Ah, yeah, my bad. I made this comment before I re
+
+ // Resets |show_url_animation_| and the color changes it causes.
+ void ResetShowAnimationAndColors();
// LocationBar:
virtual void ShowFirstRunBubble() OVERRIDE;
@@ -514,9 +524,12 @@ class LocationBarView : public LocationBar,
// Origin chip animations.
scoped_ptr<gfx::SlideAnimation> show_url_animation_;
scoped_ptr<gfx::SlideAnimation> hide_url_animation_;
-
- // Text label shown only during origin chip animations.
- views::Label* animated_host_label_;
+ int current_omnibox_offset_;
+ int starting_omnibox_offset_;
+ int current_omnibox_leading_inset_;
+ int starting_omnibox_leading_inset_;
+ int current_omnibox_width_;
+ int ending_omnibox_width_;
// Used to register for notifications received by NotificationObserver.
content::NotificationRegistrar registrar_;

Powered by Google App Engine
This is Rietveld 408576698