-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Change Log
-
add HeroModifier class and HeroTargetState struct
- HeroModifier is a swift enum-like class that provides the same functionality of the original string-based heroModifiers.
- HeroTargetState is a struct that holds view state informations. It can be build from [HeroModifier]. Mostly used internally and for building HeroPlugin.
-
change the original
heroModifiers:String?toheroModifierString:String?(breaking change!) -
add
heroModifiers:[HeroModifier]?to UIView -
add a shared singleton
Heroobject for controlling the interactive transition. Which can be accessed byHero.shared -
few changes to the protocols
- protocol HeroAnimator
func temporarilySet(view:UIView, to modifiers:HeroModifiers) // to func temporarilySet(view:UIView, targetState:HeroTargetState)
- protocol HeroViewControllerDelegate
@objc optional func wantInteractiveHeroTransition(context:HeroInteractiveContext) -> Bool // to @objc optional func wantInteractiveHeroTransition() -> Bool
- remove HeroInteractiveContext protocol
- protocol HeroAnimator
-
update HeroPlugin to conform to the new protocols definitions.
-
rename a few modifiers:
- curve -> timingFunction
- sourceID -> source
- clearSubviewModifiers -> ignoreSubviewModifiers
-
fix a bug with
heroReplaceViewControllerAPI. PR 30 -
fix a bug with UIStackView not animating correctly. PR 22
-
add recursive
ignoreSubviewModifiersmodifier -
add radial & inverseRadial cascade:
Do a whole-project find & replace(cmd+option+shift+F) for:
- heroModifiers -> heroModifierString
- curve -> timingFunction
- sourceID -> source
- clearSubviewModifiers -> ignoreSubviewModifiers
Remember to also replace these inside the storyboard. In code, please migrate to the new type-safe heroModifiers. It provides better type-checking and more functionality.
- Add live injection example
- Make
snapshotViewavailable to all HeroAnimators. - Add
heroWillStartTransition&heroDidEndTransitioncallbacks toHeroViewControllerDelegate - Fix animation for UIStackView https://github.com/lkzhao/Hero/pull/18
- Smoother UIImageView animation for bounds change https://github.com/lkzhao/Hero/pull/16
- Add Carthage support
- Cleaner resume animation after an interactive transition.
- plugin API:
seekTo(progress:Double)changed toseekTo(timePassed:TimeInterval) - plugin API:
resume(progress:Double, reverse:Bool)changed toresume(timePassed:TimeInterval, reverse:Bool) - provides dynamic duration by default. material design(duration & timing)
- rename
clearSubviewClassestoclearSubviewModifiers. was a naming mistake. - set default animation to be CABasicAnimation with the Standard Curve from material design (easing).
- add the new arc effect from material design (movement).
- add arc effect to Basic, Menu, & ListToGrid examples.
- add the ability to show arc path in the Debug Plugin.
- ignore
HeroModifiersfor source view when matched with a target view with the sameHeroID - some small optimization & bug fixes