-
Notifications
You must be signed in to change notification settings - Fork 13.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add: Using the "transition", to animate scrolling. #1543
Conversation
Hi @rotorgames. Thanks for all the work! Have you tested the performance of this on iOS compared to the current strategy? |
With recent changes, I think collectionRepeat will work with this. @rotorgames let me know when you think these changes are at a state where I could look at them and consider testing/merging, I'm interested. |
@ajoslin Thank you for your help. collectionRepeat became very smooth, without jerks. Try: /test/html/list-fit.html P.S. I have no IOS device that would check. |
The problem with using onScroll for collectionRepeat is that the onScroll event is only called at a limited interval (scrollView's options.scrollEventInterval). This means that if we scroll at a high speed, collectionRepeat's render won't be called again until it's too late. This is why collectionRepeat needs to hook into the scrollview's render callback itself, or find a new mechanism. Anyway, this looks cool! I'll test it on iOS later today. |
@ajoslin From the outset, could not understand why you replaced The main problem is not the accuracy of determination of the coordinates. Animation is considered through the Because of this, may be inaccurate, but I brought them to a minimum. P.S. vendorPrefix always will be, but just in case corrected. |
when can I expect update to the main repository ?? |
I'll look at this in the coming week. |
@PawelOwczarekFalcon @ajoslin I think ready. On slower devices, there are still problems with the DOM, no time to compile. This can be overcome by increasing the cache elements. |
Why no progress here? |
I am sure there is progress, just not on this pull request. I am observing these branches for a while: |
71314bc
to
91214a9
Compare
3043889
to
930ad75
Compare
@ajoslin Tested on IOS, and android (4.1.2 & 4.4.2), works well. |
ebf77d7
to
4f5710b
Compare
Greetings @rotorgames! Thank you very much from all of us on the Ionic team for submitting this pull request. We appreciate your commitment to improving Ionic. Unfortunately, we are unable to merge this particular PR, as it may cause regressions or is already out of date with regard to recent fixes. We apologize, as we know how much time you may have put into the work. We hope you will continue to contribute to Ionic in the future. Please note that we are more likely to merge a smaller PR that has a passing test and changes only one meaningful feature in the project. For more information, please review our Pull Request Guidelines. Best regards, Ionitron |
How to enable:
has-transition = "true"
Test in /test/html/transition-scroll.html
collectionRepeat test: /test/html/list-fit.html
TODO:
Tips:
requestAnimationFrame
does not work so well.requestAnimationFrame
faster thantransition
.Problem collectionRepeat (done):
The main problem is that the list is constantly jumping up and down.
As is now:
http://youtu.be/ZvIgatNr54Y
Position
translate3d
reaches-160px, and returns to-110px.transition
so will not work!As will be:
http://youtu.be/if4sMc_tj_4
Position
translate3d
does not jump, it increases linearly. Internal elements receive positiontranslate3d
+ Indent container.transition
will work well!May have other solutions, but so far I have not found them.