Commit Graph
32 Commits
Author SHA1 Message Date
ZacharyZhang-NY c5890058db feat(reload): reload the active tab with Cmd/Ctrl+R 2026-07-10 16:55:25 -04:00
ZacharyZhang-NY aa8182bec4 update 2026-05-21 15:44:26 -04:00
ZacharyZhang-NY 68a4507dbe update 2026-05-18 13:58:36 -04:00
ZacharyZhang-NY d076dad356 Fix shell regressions and reset Servo embedding direction 2026-05-16 11:23:41 -04:00
ZacharyZhang-NY 90c029eddb Move Servo IPC off UI thread
Root cause of the post-tab lag: the GPUI 16 ms timer was calling
`WebSurfaceRuntime::ensure_tab` and `tick` on the UI thread, and each
call did a synchronous `serde_json` write plus `read_line` against the
Servo sidecar over stdin/stdout. With even one visible tab, every
frame stalled on cross-process IPC.

Introduce `web_surface_worker.rs` — a per-profile worker thread that
owns the `ServoLiveClient`, drains a coalescing request queue
(latest Ensure/Poll per tab wins, no unbounded growth), and ships
results back through a `std::sync::mpsc` channel. `WebSurfaceRuntime`
now submits work non-blockingly and drains responses in `tick`; the
UI thread never blocks on the sidecar.

Adjacent in-flight cleanup riding along: hardware IOSurface
rendering-context completion (sidecar `live_protocol`,
`hardware_rendering_context`, GPUI BGRA surface shader), CSS viewport
size + device pixel ratio plumbing into `ServoLiveFrame`, and the
Send opt-ins for `CVPixelBuffer`-bearing types so frames can cross
the thread boundary.
2026-05-15 16:41:40 -04:00
ZacharyZhang-NY f7027e6ea5 Profile frame stages via sidecar histogram → ely::servo::perf 2026-05-10 22:30:57 -04:00
ZacharyZhang-NY a0ac0de765 Override gpui-component theme font so the Input picks up Geist
Found the actual root cause of "fonts still wrong" by reading
gpui-component source. Input, tooltip, context menu, search popover,
notification, and inspector all set `font_family(cx.theme().font_family)`
on their root div directly — they don't inherit from the parent's
text style. Default theme value is `.SystemUIFont` (SF Pro on macOS),
so the omnibar Input the user actually types into was rendering in
SF Pro while every chrome surface around it rendered Geist.

After fonts register, mutate the theme global so its `font_family`
is `"Geist"`. Now every gpui-component sub-element uses the same
sans as the rest of the app.

cargo test --workspace: 440 passed, 0 failed.
2026-05-09 22:45:17 -04:00
ZacharyZhang-NY ed3150f9ed Bundle Newsreader serif and apply to hero text
Embeds Newsreader (variable opsz/wght, OFL-licensed) into the
ely_app binary via include_bytes!, registers it through GPUI's
text_system at startup (chrome::typography::register_serif_fonts),
and exposes the SERIF_FAMILY constant for downstream surfaces.

Apply the family to every page hero where the design uses
ely-serif: home headline, settings/appearance headline, plugin
marketplace headline, sync headline, plugin detail name, and the
home reading-list cover headline. The OFL license file ships
alongside the .ttf assets to satisfy the font's redistribution
clause.
2026-05-09 18:57:40 -04:00
ZacharyZhang-NY 189b9b8b89 Add current page download pipeline 2026-05-09 12:54:24 -04:00
ZacharyZhang-NY 1faa7423c1 Add Servo page zoom support 2026-05-09 12:32:44 -04:00
ZacharyZhang-NY 8b02d7cdfd Handle startup deep links 2026-05-09 03:17:03 -04:00
ZacharyZhang-NY 6fc649d889 Add protocol brand contract 2026-05-09 02:46:07 -04:00
ZacharyZhang-NY 58a582682f Centralize app brand identity 2026-05-09 02:40:38 -04:00
ZacharyZhang-NY f693d24f5d Add macOS URL scheme handling 2026-05-09 02:32:42 -04:00
ZacharyZhang-NY 7797203bbf Add private window entry point 2026-05-09 00:31:40 -04:00
ZacharyZhang-NY 8e12d6690b Render PRD sites in real viewport 2026-05-08 13:20:43 -04:00
ZacharyZhang-NY cdb82bcace Add space switching shortcuts 2026-05-08 08:57:18 -04:00
ZacharyZhang-NY 43ab4be548 Add sidebar collapse shortcut 2026-05-08 08:36:58 -04:00
ZacharyZhang-NY f6e2b1b96b Add shortcut settings page 2026-05-08 02:48:35 -04:00
ZacharyZhang-NY 23b108c8dd Add split view panes 2026-05-08 01:47:19 -04:00
ZacharyZhang-NY a6077fa00a Add task manager internal page 2026-05-08 01:03:59 -04:00
ZacharyZhang-NY 7370ae14b9 Add download file actions 2026-05-07 21:56:09 -04:00
ZacharyZhang-NY 3fe737adad Open history and settings pages 2026-05-07 21:00:51 -04:00
ZacharyZhang-NY 4d50946072 Focus command mode from shortcut 2026-05-07 20:57:53 -04:00
ZacharyZhang-NY 9c5f93bcb8 Open downloads from command bar 2026-05-07 20:54:57 -04:00
ZacharyZhang-NY e0eb5b51b2 Archive closed browser tabs 2026-05-07 19:53:32 -04:00
ZacharyZhang-NY 82df2b4502 Add pinned tab controls 2026-05-07 19:47:27 -04:00
ZacharyZhang-NY ba312e5b85 Add favorite tab controls 2026-05-07 19:33:50 -04:00
ZacharyZhang-NY de68fb6ac3 Add keyboard tab switching 2026-05-07 19:10:04 -04:00
ZacharyZhang-NY c6ddf806d1 Add browser keyboard shortcuts 2026-05-07 19:05:45 -04:00
ZacharyZhang-NY 510af7a9b2 Close current browser tab 2026-05-07 18:58:49 -04:00
ZacharyZhang-NY d9a27f3dc4 Initialize Rust GPUI browser shell 2026-05-07 18:27:15 -04:00