mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2026-03-24 12:56:59 +00:00
[GH-ISSUE #3315] [FR] Use faster animations to toggle sidebar #1462
Labels
No labels
2024
2025
2026
acct mgmt
AI
automation
bug
calendar
ci
CJK
cloud
code-block
collaboration
copy-paste
database
data migration
data sync
deploy
desktop
develop
develop
documentation
duplicate
editor
editor-plugin
emoji
export
files
flutter-only
follow-up
formula
good first issue for devs
good first issue for experienced devs
grid
hacktoberfest
HACKTOBERFEST-ACCEPTED
help wanted
i18n
icons
images
importer
improvements
infra
install
integrations
IR
kanban board
login
look and joy
mentorship
mobile
mobile
needs design
new feature
new feature
non-coding
notes
notifications
onboarding
organization
P0+
permission
platform-linux
platform-mac
platform-windows
plugins
program
pull-request
Q1 25
Q1 26
Q2 24
Q2 25
Q3 24
Q3 25
Q4 24
Q4 25
react
regression
rust
rust
Rust-only
Rust-only
Rust-starter
Rust-starter
self-hosted
shortcuts
side panel
slash-menu
sync v2
table
tablet
task
tauri
templates
tests
themes
translation
v0.5.6
v0.5.8
v0.5.9
v0.6.0
v0.6.1
v0.6.4
v0.6.7
v0.6.8
v0.7.1
v0.7.4
v0.7.4
v0.7.5
v0.7.6
v0.7.7
v0.7.8
v0.8.0
v0.8.4
v0.8.5
v0.8.9
web
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
AppFlowy-IO/AppFlowy#1462
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @intonarumori on GitHub (Sep 1, 2023).
Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/3315
Originally assigned to: @Sumit4482 on GitHub.
Description
The current animation duration for hiding and showing the sidebar is very slow.
It gives you the impression of the app being "sluggish".
Impact
Makes the app feel more "snappy" and higher quality.
Additional Context
Experimenting with easing functions would also improve the overall feel.
@richardshiue commented on GitHub (Sep 5, 2023):
Hi @intonarumori thanks for raising this issue. Could you help me to clarify whether it's the delay when pressing on the button or the animation duration that's making the sliding animation feel sluggish?
@intonarumori commented on GitHub (Sep 5, 2023):
You can fine tune the animation in two ways:
In real life moving objects have momentum, so they cannot stop abruptly. I think the current animation uses a linear curve and thus it feels unnatural. You can see the options here: https://api.flutter.dev/flutter/animation/Curves-class.html
I think
easeOutwould work best here, but feel free to experiment. The curve and duration work hand in hand, so experiment to get a good combination of the two.@Sumit4482 commented on GitHub (Sep 28, 2023):
Hello @intonarumori , I would like to work on this issue. Can you please assign it to me ?
@annieappflowy
@richardshiue commented on GitHub (Oct 2, 2023):
Sure thing, have fun!
@Sumit4482 commented on GitHub (Oct 2, 2023):
Thanks :)
@Sumit4482 commented on GitHub (Oct 2, 2023):
Hi @intonarumori ,
I reduced the panel duration and found easeInOut to work best. Any thoughts or suggestions?
Thanks! Preview
@richardshiue commented on GitHub (Oct 3, 2023):
Could you make a PR so that we can have a look at it?
@Sumit4482 commented on GitHub (Oct 3, 2023):
Sure !
@intonarumori commented on GitHub (Oct 6, 2023):
@Sumit4482 Good job, looks better already ✨
I think in general
easeOutXXXshould be the goal here, with the currenteaseInOutyou start slowly (in), speed up, then slow down again at the end (out). I think for this animation we don't need theinpart.As for the curve itself, you can study the visual representation of them on the Curves documentation.
You can see that the start of the curve gets steeper in this order:
easeOut,easeOutSine,easeOutQuad,easeOutCubic,easeOutQuart,easeOutQuint,easeOutExpo.We are at the beginning of this spectrum with
easeOut, it can be subjective and it's best to try all of them and use them for a bit of time to see if it feels natural, I usually end up witheaseOutCubicfor my apps.Please note you might need to adjust the duration for some of these curves, the Flutter documentation explicitly mentions this for
easeOutExpohere: https://api.flutter.dev/flutter/animation/Curves/easeOutExpo-constant.htmlI would go for a bit more aggressive
easeOutQuadoreaseOutCubic, merge the PR, let the testers and the team use it for a bit and fine tune if necessary.@annieappflowy commented on GitHub (Nov 5, 2023):
Can you @Sumit4482 @richardshiue update the status of this issue?
@richardshiue commented on GitHub (Nov 5, 2023):
Closing as completed from Sumit's PR merge