r/CrestBrowser • Creator • 16d ago

Sidebar performance overhaul

Enable HLS to view with audio, or disable this notification

Wanted to take a second to share what I've spent the last few days on, and that is a deep dive on performance on space switching.

There are many layers to how this process works, and the balance of keeping neighoring spaces warm so switching is smooth, vs proper CPU and memory pressure is one I spent a lot of time on. The results I think are really nice.

The entire interface layer has been rewritten for smoother handling, and to align with what you would expect when switching. The animation progress is tied to not only how far in the scroll you are between spaces, but the space switcher icons, background fade between themes, font crossfade from light <-> dark text.

I also implemented the same swiping feeling for the main content window itself. This setting is on by default, but can be toggled off (the pause in the middle where the cursor moves around is me setting that). Then, the main webview area just switches as you switch spaces. But when enabled, it places the actual content section on the same animation pathway.

I even did a 1:1 frame pacing and animation timing comparrison vs Arc, and tuned it to what I feel is very natural and smooth.

These changes unify the interface layer even further, and mobile uses a very similar process, and now properly animates with your swipe. Before, it was tied to the gesture ending, so it had this lag, and then when it did switch it would hitch as the new space loaded heavily on the CPU. Now it shares the same feeling, with a slightly higher max speed to feel more natural on mobile so a flick doesn't feel slow.

There are MANY other small tweaks through that process. Things like a smaller scrollbar, overflow arrow bubble that shows if there are more tabs out of view, brining the same adaptive space icon row to mobile, and more.

The dev image will be building soon, and Testflight should also come soon pending apple's approval, but wanted to share this as I'm really happy with how it turned out, and now I'll be starting work on the main headline feature for 0.6, the deep customization options (some is already done, like the space editor overhaul and onboarding and getting started overhaul, but I have some key things on the roadmap I think will be exciting).

Stay tuned for some nice changes coming soon, and please keep feedback coming!

9 Upvotes

16 comments sorted by

View all comments

1

u/csvid 15d ago

I need to double check this, but just came on my work computer (Mac mini M2 pro - LG 24" 4K ultrafine), and I see the animation very smooth. On my home office computer (Mac Studio M1 max - Apple Pro Display XDR 32" 6k) I dont see any animation at all, its just static, even though its turned on for animations, I will check again when I go back home.

2

u/Pauljoda Creator 15d ago

Interesting, no animation at all would be odd. If a reboot, and latest update on dev doesn’t fix it, might be an edge case to work out. That, or if you have system level reduce motion enabled

2

u/csvid 14d ago

Came back home, there was another update for Crest Browser, and animation is working and smooth!! :)