Releases: FaFre/WebLibre
Release list
v0.30.0-alpha-1
This is the first alpha of the 0.30 development cycle, building on top of the recent 0.20.0 stable release. It focuses on two brand-new privacy-first features (App Links control and first-class Web Push / website notifications), a major Bookmarks rewrite for speed, an improved Zoom setting, smoother UI/performance, and several quality-of-life tweaks.
Heads up: This is an alpha. Expect rough edges. If you find bugs, the updated bug-report template now asks which device/Android version you're on and whether the issue also reproduces on the latest alpha.
Highlights
- Control when links open in other apps — a brand-new App Links feature replaces the old generic handling with predictable, privacy-first choices
- Website notifications, out of the box and out of Google's reach — web push moved out of Experimental into its own first-class Notifications settings screen, powered by UnifiedPush (no Firebase)
- Bookmarks rewritten for speed — large libraries no longer slow down or freeze the app
- Zoom is now possible on every website, even ones that try to block it
- Smoother tabs and bottom sheets across the app
New: App Links — control when links open in other apps
The web is full of links that could open in a native app (YouTube, X, custom something:// URIs). WebLibre now lets you decide what happens when a page tries to hand a link off to an app.
- Three global modes under Settings → Browsing → Open Links in Apps:
- Ask before opening (the default) — show a prompt or banner
- Always — open supported app links without asking
- Never — keep everything inside the browser
- Remember choices per site. Tap "Remember for this site" in a prompt to always open (or always keep in-browser) for that site. A "Remembered site rules" list lets you revoke a saved choice anytime.
- Per-site override in the site settings sheet: a quick Open in app / Keep in browser / Follow default dropdown.
- Per-container isolation (advanced). Cookie-isolated containers can run their own "Always / Ask / Never" mode and their own remembered sites, independent of the global setting — e.g. keep a Shopping container strictly in-browser while a Media container opens YouTube in the app.
- On-screen prompts: a non-blocking banner for normal https links (the page keeps loading behind it), or a modal dialog for unsupported custom schemes (where there's no page to show).
Privacy-first defaults, by design:
- When you're in a proxied/Tor-protected or strict container, a private tab, or a custom-tab context, app links are never silently auto-launched — you're always asked, with no "remember" shortcut, so an anonymous session can't leak your identity into a native app.
- Special schemes like
javascript:andfile:are blocked from ever launching another app, and digital-wallet links always require an explicit tap. - An installed-but-remembered rule never silently launches a different app if the original one was uninstalled — it falls back to a prompt.
App Links is separate from the existing Intent Gatekeeper: Gatekeeper controls whether other apps may push links into WebLibre; App Links controls how WebLibre hands links out to native apps. They complement each other.
Web Push is now a first-class feature (out of Experimental)
Websites can send you notifications, even when WebLibre isn't open in the foreground — just like other browsers, but without Google's Firebase Cloud Messaging.
- Powered by UnifiedPush. You pick a separate distributor app you trust (e.g. ntfy, which you can self-host). Your push stream never touches Google services.
- New settings screen at Settings → Notifications → "Web push delivery, distributor, and site subscriptions" with:
- A UnifiedPush Distributor tile showing live status ("Active", "Waiting for distributor…", "No distributor installed", "Distributor uninstalled") and a button to choose/change the distributor app — this selection also doubles as the on/off switch for the whole feature (there's no separate global toggle).
- A "Disable web push" button to turn it off entirely.
- An Android notification permission tile that lets you grant/diagnose the system permission separately.
- A Site Subscriptions list showing which websites currently have a push subscription and their delivery state.
- You're in control, two levels deep: each website must ask for notification permission on the page first, and the app needs a distributor selected and the Android notification permission granted. Nothing is on until you turn it on.
- Reliability behind the scenes: push messages are saved durably and re-delivered if delivery was interrupted, and notifications can be shown even when the app is fully in the background.
- Per-profile: your distributor choice and subscriptions are tracked separately per browser profile, matching the multi-profile model.
Note: You can't unsubscribe a site from inside the Notifications screen — to stop a site's push notifications, revoke its notification permission in that site's settings (page info). Subscriptions are driven by the site and your per-site permission.
Bookmarks rewritten for speed and big libraries
The Bookmarks screen was overhauled so the app no longer slows down or freezes with large libraries.
- Folders load on demand. The list no longer tries to build your whole bookmark tree up front; expanding a folder fetches just that folder. The bigger your library (e.g. after a big import or sync), the bigger the improvement.
- Big imports no longer freeze the app. Importing a large bookmarks file (the kind Firefox or Chrome export) now runs in the background with a progress dialog that tells you what's happening ("Reading the file…", "X of Y bookmarks…"). The parser itself is also dramatically faster, so big files complete in a fraction of the time.
- Safer "replace" imports. Importing an empty or broken file as "replace" no longer deletes your existing bookmarks — only a file that actually parses to something triggers the wipe. Re-importing a Firefox export more faithfully reconstructs your Toolbar / Menu / Unfiled layout.
- New ways to organize the list. Sort by Title A–Z/Z–A, URL, Newest first, or Oldest first; show Folders Only; hide empty built-in folders; Collapse All in one tap. Your choices are remembered across launches.
New setting: choose how a bookmark opens when you tap it — in Settings → Browsing → Bookmarks → Bookmark Open Behavior:
- Prompt (the default, same as before)
- Regular tab
- Private tab
- Custom Tab (lightweight container-aware overlay)
- Isolated tab (only shown if you have Isolated tabs enabled)
Existing users keep the old "prompt every time" behavior unless they change it; if you turn off Isolated tabs later, an isolated choice safely falls back to Prompt.
Better folder actions: add bookmarks/subfolders directly into the folder you're viewing; move folders safely (you can't move one inside itself); "flatten" a folder to merge its contents into its parent; and deleting a folder now tells you how many bookmarks are inside before you confirm.
New Features & Tweaks
- Zoom on All Websites — a new toggle at Settings → Web Content → Zoom on All Websites lets you pinch-to-zoom even on sites that try to block the gesture. Off by default; applies per profile and takes effect immediately.
- Pressing Enter now accepts the highlighted address-bar suggestion by default (previously it submitted your typed text and ignored the suggestion). Your explicit choice, if you'd set one before, is preserved.
- Quit now also clears your "Clear Data on Exit" containers immediately when you explicitly Quit the browser — not just lazily on the next launch.
Performance & Polish
- Tab previews only update while they're being viewed, so dragging/switching tabs feels less janky.
- Heavy tab state was split so the browser screen no longer rebuilds on every small change — the toolbar, bottom bar, and menus update more surgically.
- Bottom sheets and tab views (grid, list, tree) animate more smoothly — less stutter when dragging sheets up/down or swiping through tabs.
Build / Distribution
- New "Alpha (Legacy)" build alongside the regular alpha. Both share the same alpha app identity (same version name, same
.alphaapplication id), install side-by-side with stable, and install over each other in place — so you can compare Flutter's Impeller renderer (default alpha) against the legacy Skia renderer (alpha-legacy) without losing app data. The renderer is chosen once at startup and can't be toggled at runtime, which is why there are two builds.
Upgrade notes
- The App Links global default is Ask, remembered-site lists start empty, and marketplace fallback is off by default. No manual setup is required.
- Web Push is dormant until you pick a UnifiedPush distributor; upgrading just moves it from Experimental to its own Notifications screen.
- Bookmarks, folders, sort, and your "how bookmarks open" choice carry over. The old "prompt on tap" behavior is still the default.
- The new Zoom toggle defaults to off, and pressing Enter now accepts the highlighted suggestion unless you'd previously set the option.
v0.20.0
This is the largest WebLibre release to date, consolidating fifteen alpha releases since v0.11.0. It introduces a full proxy management system, a local full-text search index, configurable touch gestures, a redesigned tab switcher with vertical side rails, container-aware history, and a major desktop mode overhaul.
Highlights
- Proxy Management — sing-box powered proxy profiles with per-container and global routing
- Local Search Index — full-text search of the pages you visit, entirely on-device
- Touch Gestures — draw gestures on web pages to navigate and control tabs
- Tab Stacking — redesigned quick tab switcher with new Accordion and Two Rows layouts
- Vertical Side Rail — place the tab bar on the left or right edge of the screen
- Container-Aware History — see and filter which container a visit came from
- Desktop Mode Overhaul — global, per-site, and per-tab desktop mode control
- Pure Black (OLED) Theme — true black backgrounds in app and reader mode
- Engine Upgrade — Mozilla Components / GeckoView 152.0.4
Proxy Management (New)
- Sing-box proxy profiles — Create and manage custom proxy connections supporting SOCKS, HTTP, Shadowsocks, VMess, VLESS, Trojan, Hysteria, Hysteria2, TUIC, SSH, WireGuard, ShadowTLS, and AnyTLS. Each profile runs its own managed tunnel with live status indicators, latency chips, and IP display.
- Six ways to import — Manual configuration, subscription URLs, QR code scan, clipboard paste (auto-detects
ss://,vmess://,trojan://and similar URIs), WireGuard config files, or raw sing-box JSON outbounds. - Per-container proxy routing — Assign any proxy profile or Tor to a specific container; tabs in that container route through the assigned proxy.
- Global proxy routing — Route all regular tabs through a single proxy, with a separate assignment for private tabs. Individual containers can bypass the global proxy to connect directly.
- Profile management screen — All profiles (including Tor) with protocol badges, run/stop toggles, latency testing, and a "Stop All" button.
- Per-request DNS leak protection — DNS leak guarding runs per-request and per-container inside the proxy layer.
- Profile sharing and logs — Export profiles as
weblibre-proxy://URIs, and inspect the sing-box runtime with a real-time log viewer.
Local Search Index (New)
- Full-text search of browsed pages — Visited pages are indexed locally, enabling on-device content search without sending any data off your device.
- Fine-grained control — Toggle the index globally, choose whether private tabs are indexed, and exclude individual containers. Excluded containers have their history removed from the index immediately.
- Index management — See how many pages are indexed and clear the index at any time while keeping your history. Stale entries are pruned automatically.
Containers
- Strict Mode — Restrict a container so only its assigned sites can load there; unassigned sites are blocked. Requires cookie isolation.
- Exclude from History — Prevent a container's visits from being recorded in browsing history (separate from the search index opt-out). Requires cookie isolation.
- Icon picker — Choose from over 5,000 Material Design Icons for container branding, shown in the container bar, lists, and tab indicators.
- Custom colors — In addition to the refreshed standard palette, a custom color picker with hex and HSL controls is available, applied consistently across chips, lists, selectors, and tab UI.
- Pinning and reordering — Pin containers to keep them at the top of lists, and long-press-drag chips in the bottom bar to reorder them.
- Redesigned management UI — The container list, selection sheet, and editor were overhauled with card layouts, tab counts, proxy info, and privacy badges.
Container-Aware History
- History entries can now display which container a visit came from, and the History screen can be filtered by container.
- With a container filter active, clearing history only clears that container's history.
- Deleting a container offers to also delete its history; otherwise those visits are kept without a container label.
- Note: existing history is not retroactively assigned to containers; labels apply to newly recorded visits and are local to WebLibre.
Tabs and Tab Switching
- Tab Stacking — The quick tab switcher was redesigned and is configured under Settings > Toolbar Layout > Tab Stacking, with new layouts:
- Accordion — containers as chips, expanding the selected container inline
- Two Rows — the selected container's tabs on one row, recently used tabs on another
- Plus the existing Recently Used Tabs, Container Tabs, and Disabled modes. Existing settings are migrated automatically.
- Vertical side rail — The tab bar can be placed on the left or right edge as a vertical rail with address controls, toolbar actions, and pinned add-ons. Swipe vertically on the rail to switch tabs.
- Customizable switcher buttons — Choose which action buttons appear at the end of the tab switcher bar, configured independently from the contextual toolbar.
- Tab hierarchy tools — Long-press a tab for a Hierarchy submenu (change parent, detach, reorder among siblings). Drag-and-drop can group two tabs in a new container or establish a parent-child relationship. Manual reorganizations are preserved and no longer overwritten by engine state.
- Depth indicators — Nested tabs show chevron badges revealing nesting depth, with configurable depth display and compact badges on narrow layouts.
- Switcher polish — Drag-to-reorder in the switcher, container-colored tab bar, tab counts on container chips, optional close buttons on every chip, reliable centering of the active tab, and clearer marking of pinned, private, isolated, and nested tabs.
- Faster, safer startup restore — Restored tabs appear earlier as placeholder chips while the engine finishes restoring; tapping one queues the selection. Saved tab data is only cleaned up after the engine confirms restore is complete.
Touch Gestures (New)
- Draw gestures on web pages to navigate, control tabs, and trigger page actions. Off by default; enable under Settings > Gestures.
- A stroke interval setting prevents accidental triggers from fast, jittery movements.
- Pull-to-refresh no longer accidentally triggers on gesture strokes near the top of the page.
- Long-press the gestures toggle in the browser menu to jump straight to gesture settings.
Desktop Mode
- Global desktop mode — "Always Request Desktop Site" under Settings > Browsing > Desktop Mode applies to every tab, including already-open ones.
- Per-site desktop mode — Maintain a list of sites that always load in desktop mode, regardless of the global setting. Add sites from the page menu or manage the list in settings. Subdomains are covered automatically.
- Per-tab toggling continues to work as before and takes precedence.
Reader Mode
- True black (AMOLED) reader theme — With Pure Black enabled, the reader's dark theme is genuine black.
- Refreshed article layout — Improved spacing and typography, edge-to-edge images, nicer quotes and lists, and properly wrapped code blocks.
- The appearance button now toggles open/closed, appearance controls no longer hide behind the bottom toolbar, and a "show toolbar" button is available while reading with the toolbar hidden.
Appearance and Home Screen
- Pure Black (OLED) — Settings > General > Pure Black switches dark mode backgrounds to true black, saving battery on OLED screens.
- Refresh Rate setting — System, High, or Low under Settings > General; High (the default) makes scrolling smoother on 90/120 Hz displays, Low reduces battery usage. Android-only, depends on device support.
- System bar tinting — Status and navigation bar areas match the active container or toolbar color, with icon contrast adjusted automatically.
- Reworked home screen — Quick actions (New tab, View tabs, Resume last tab) moved near the top, plus a dismissible "Support WebLibre" banner explaining the optional Supporter subscription. The browser and all privacy features remain free.
- New app icon — Refreshed launcher icon including adaptive and monochrome variants.
- "Top Sites" has been renamed to "Shortcuts" throughout the app.
- Optional close button on the new tab / search screen (Settings > General > Show Close Button), handy on e-ink devices.
Search and Bangs
- Popular Sites suggestions — The search screen and address bar autocomplete now suggest well-known websites, so even a fresh install completes "git" to "github.com".
- Reverse bang matching — Pasting a URL produced by a bang search (for example a Google search result URL) recognizes the bang template and swaps the URL for the extracted query with the bang pre-selected.
- Bang robustness — Bangs match correctly across
www., bare, andm.domain variants; custom bang editing handles URL encoding safely and trims accidental whitespace; typed text is preserved when switching search providers; selecting a bang highlights the existing query for quick replacement. - Find in page integration — Tapping a search result from history or the local index prompts to find that text on the page instead of opening the find bar uninvited.
- An "Autocomplete on Submit" setting accepts inline suggestions when pressing Enter.
Privacy and Security
- Expanded hardening — Over 30 additional telemetry, experiment, and tracking preferences are locked against upstream Gecko updates silently re-enabling them. Locked settings show a padlock icon.
- Private tabs notification — A persistent notification appears while private tabs are open; tapping or swiping it closes them all.
- Better .onion handling — Onio...
v0.20.0-alpha-15
Highlights
- Updated browser engine components: WebLibre now uses Mozilla Components/GeckoView
152.0.4, bringing newer web compatibility, performance improvements, and upstream browser fixes. - Improved Picture-in-Picture behavior: Fullscreen video should behave more reliably when pressing Home, switching apps, opening links, or returning to WebLibre.
- Cleaner Connections menu: Tor and proxy connections are now grouped under a collapsible Connections section with a clear connected count and quick access to connection management.
- Better custom Bang editing: New or edited custom Bangs now handle URL encoding more safely by default and ignore accidental leading/trailing spaces in names, triggers, and URLs.
Fixes & Improvements
- Fixed cases where Picture-in-Picture could be triggered accidentally by Android permission prompts.
- Fixed fullscreen cleanup when leaving a page or returning from Picture-in-Picture.
- Fixed opening new pages while WebLibre is already in Picture-in-Picture by bringing the app back to the foreground first.
- Improved PWA/task handling to avoid rare failures when reopening an existing web app window.
- Updated Tor components for newer upstream fixes.
- Search answers without a source URL can now be handled correctly, improving compatibility with instant-answer style results such as IP/self-info answers.
- Extension installation prompts are handled more cleanly with the updated browser components.
- Updated file picking, sharing, QR scanning, storage, device info, and database-related libraries for better compatibility and stability.
v0.20.0-alpha-14
New features
-
Customize the quick tab switcher buttons. You can now choose which action buttons appear at the end of the tab switcher bar. This is configured separately from the contextual toolbar, so the two can be tuned independently. Look for the new "Customize Switcher Buttons" entry under Toolbar layout in Settings. By default none are shown until you enable them.
-
New lock option: "Lock on Startup Only". When protecting a profile, you can now choose to unlock once when the app starts and stay unlocked until the app is fully closed, instead of locking on every background or timeout. Find it under the profile's authentication settings.
-
Custom Tabs setting. A new toggle lets you decide whether other apps should open links in a lightweight in-app tab (Custom Tab) or as a normal tab in the main browser. When turned off, links and shared URLs sent to WebLibre open as regular tabs instead. It is enabled by default.
Improvements
-
Smarter address bar autocomplete. Typing in the address bar now also suggests completions from a built-in list of popular websites. This means that even on a fresh install with no browsing history, typing something like "git" will complete to "github.com".
-
"Top Sites" renamed to "Shortcuts". The pinned sites feature is now called Shortcuts throughout the app (menus, dialogs, messages).
-
Tab menu reorganization. The "Move up" and "Move down" actions have moved out of the "Hierarchy" submenu into a dedicated "Reorder" submenu, making the two concepts easier to tell apart.
-
Favicon sits closer to the address bar on the side rail. On the vertical side toolbar, the site identity/favicon button now uses tighter spacing so it lines up neatly with the pinned extension icons on the other side of the address field.
-
Disabled extensions no longer show in the toolbar. The pinned extension bar and the extension shortcut menu now only display extensions that are actually enabled, instead of listing disabled ones.
Bug fixes
-
Fixed broken navigation after cancelling an "open in app" prompt. When a link tried to hand off to another app and you cancelled (or the hand-off was blocked), the page could end up stuck or revert to the previous page instead of loading normally. Navigation now recovers correctly.
-
Fixed tab churn when assigning sites to containers. When a site was set to open in a specific container, the tab could sometimes be recreated repeatedly or re-prompt an "open in app" dialog. Tabs already in the correct container are now left alone, and the target page loads reliably.
-
Fixed overflows on the vertical side rail. Long tab counts (multi-digit badges) and nested tabs no longer overflow the narrow side rail. Nesting is now shown as a compact corner badge on the favicon, and the count badge scales down to fit. The "Two Rows" tab stacking mode, which doesn't fit on the narrow rail, now falls back to the Accordion view, and the option is hidden for left/right toolbar positions to avoid presenting a no-op choice.
-
Fixed keyboard/toolbar layout issues. The auto-hiding toolbar no longer clips content incorrectly when positioned at the top or bottom, and keyboard visibility is re-checked when returning to a tab, preventing the toolbar from getting stuck in the wrong state.
-
Re-enabled text suggestions to fix Gboard issues. Suggestions in the search/address field were turned back on to resolve problems some users had with the Gboard keyboard.
Privacy and compatibility
- Cross-origin referer policy now requires opt-in. The strictest cross-origin referer setting ("Only send cross-origin referer if host matches") was causing compatibility issues with some websites. It is now treated as an advanced opt-in choice rather than a default, so sites that depend on referer information keep working unless you explicitly enable the stricter mode.
v0.20.0-alpha-13
Highlights
- History is now container-aware. Browsing history can show which container a visit came from, and the History screen can be filtered by container.
- Containers now have an
Exclude from Historyoption. When enabled, pages opened in that container are not recorded in browsing history. - Containers now support
Strict Mode, allowing only assigned sites to load in that container. - The tab bar can now be placed on the left or right as a vertical side rail.
- Site data clearing can now optionally close the current tab after clearing.
Container History
- History entries can now display their container, making it easier to understand where a visit came from.
- The History filter menu now includes container filtering.
- When a container filter is active, clearing history only clears that container’s history.
- Deleting a container now offers an option to also delete that container’s history.
- If you delete a container without deleting its history, those visits are kept but shown without a container.
Privacy Improvements
- Added
Exclude from Historyto container settings. - This is separate from
Exclude from Search Index: it prevents the container’s visits from being recorded in browser history, not just local search. - This option requires cookie isolation to be enabled for the container.
- History exclusion is applied early during startup, including restored tabs.
Container Strict Mode
- Added
Strict Modeto container site assignments. - When enabled, only sites assigned to that container are allowed to load there.
- Unassigned sites are blocked instead of loading inside the strict container.
- Sites assigned to another container continue to be redirected or handled according to their assignment.
- This also requires cookie isolation.
Toolbar And Tab Bar
- Added new
LeftandRighttab bar positions. - These create a vertical side rail for tabs, address/search controls, toolbar actions, contextual actions, and pinned add-ons.
- Vertical side rails can be swiped away.
- Swiping vertically on the rail switches tabs.
- Quick tab switcher layouts, accordion container tabs, pinned add-ons, contextual toolbar buttons, and toolbar previews now adapt to the side rail layout.
- Long-pressing a container header in the accordion quick switcher now opens that container’s settings.
Smaller Improvements
Clear Site Datanow includesClose tab after clearing.- Link context menus now let you choose a different tab type when opening a link, such as regular, private, or isolated tabs where available.
- Selecting a smart bang/search shortcut now highlights the existing query so it can be quickly replaced or submitted with the selected provider.
- Bookmark-type history visits are now handled more gracefully.
Notes
- Existing history is not automatically assigned to containers after updating. Container labels apply to newly recorded visits.
- Container history labels are local to WebLibre and should not be expected to sync across devices.
- In the narrow vertical side rail, tab titles and inline close buttons may be hidden to save space. Tab actions remain available through tab menus.
v0.20.0-alpha-12
This alpha focuses on smarter search, better privacy controls, smoother browser behavior, and fixes for Tor/onion and proxy workflows.
What’s New
- Added Popular Sites suggestions in the search/address screen. WebLibre can now suggest well-known websites as you type, even if they are not in your browsing history yet.
- Added an option to clear Recent searches when deleting browsing data.
- Recent searches can also now be included in the automatic privacy cleanup used by Incognito Mode.
- Bookmark list preferences are now remembered. Your bookmark sorting and “folders only” view should stay the same after restarting the app.
Privacy & Security
- Improved
.onionsite handling. Typing an onion address withouthttp://orhttps://now opens it overhttp://, matching how many onion services are expected to work. - WebLibre now avoids forcing HTTPS upgrades for
.onionsites, improving compatibility with Tor onion services. - If you explicitly type an
https://...onionaddress, WebLibre still keeps HTTPS. - Custom Tracking Protection now has a separate switch for blocking ads, analytics, and social trackers.
- Added a Content Blocking Database setting for GeckoView’s built-in blocker lists. This setting requires an app restart.
Fixes & Improvements
- Fixed SOCKS proxy setup so the SOCKS version is selected from valid options instead of being entered as a free-form number.
- SOCKS proxy versions are now saved in the format expected by the proxy engine, reducing failed proxy configurations.
- Reduced unnecessary browser screenshot work while full-screen panels like Settings, Search, or Tabs are open. This should make those screens feel smoother.
- Added an advanced option to unload the web engine while it is covered by full-screen overlays on newer Android versions. This can free resources, but may reload pages when returning.
- Improved state handling in several UI areas, including settings sliders, top-site reordering, toolbar state, and search result cards.
v0.20.0-alpha-11
Reader mode improvements
- True black (AMOLED) reader mode. When you have "pure black" enabled, the reader's dark theme is now genuine black instead of dark grey — easier on the eyes at night and easier on the battery on OLED screens.
- Cleaner, more readable articles. The reader layout got a refresh: improved spacing and typography, edge-to-edge images, nicer quotes and lists, and properly wrapped code blocks so nothing spills off the side of the screen.
- The font/appearance button now toggles. Tap it once to open the appearance controls, tap again to close them — as you'd expect.
- Appearance controls no longer get hidden behind the toolbar. Under edge-to-edge layouts the controls bar could end up tucked under the bottom bar; it now always sits cleanly above it, even as the bottom bar shows or hides.
- You can always get the toolbar back while reading. Previously, if you hid the toolbar while in reader mode, the font button took over its spot and left no way to bring the toolbar back. Now a small "show toolbar" button appears stacked above the font button.
Home screen
- Reworked layout. The quick actions — New tab, View tabs, and Resume last tab — are now near the top where they're easier to reach.
- New "Support WebLibre" banner. A dismissible card explains the optional Supporter subscription, which funds development and powers the features that need a hosted service (WebLibre Search and encrypted account sync). The browser and all its privacy features remain free and need no subscription. The banner automatically hides if you're already a supporter or once you dismiss it.
Floating action button
- Steadier, smarter floating button. The draggable button now anchors to the bottom-right corner so it stays put even when an extra button stacks above it, and it can no longer be accidentally dragged off-screen.
Fixes
- Fixed a sign-in glitch. On some devices the sign-in link was delivered twice in quick succession, which could cancel out a sign-in that had just succeeded. Signing in is now reliable.
- Better split-screen and pop-up window support. Resizing the app — split-screen, freeform, or pop-up windows — works more smoothly, and taps now land in the right place on the page in resized windows.
- Improved compatibility with older Android versions.
Performance
- Re-enabled the Impeller graphics engine for smoother rendering and animations.
v0.20.0-alpha-10
prepare new alpha
v0.20.0-alpha-9
Highlights
- Redesigned the Quick Tab Switcher into a new Tab Stacking system.
- Added new layouts: Accordion and Two Rows.
- Improved startup tab restoration so restored tabs appear earlier and are handled more safely.
- Added a new Refresh Rate setting for smoother scrolling on supported Android devices.
- Removed the Android “install unknown apps” permission from the app manifest.
Tab Switching Improvements
The Quick Tab Switcher has been reworked and is now configured through Settings > Toolbar Layout > Tab Stacking.
New options include:
- Accordion: shows containers as chips and expands the selected container inline.
- Two Rows: shows tabs from the selected container on one row and recently used tabs on another.
- Recently Used Tabs: keeps the previous recent-tabs style.
- Container Tabs: shows tabs from the selected container.
- Disabled: hides the quick switcher bar.
Other improvements:
- The active tab is kept centered more reliably while switching or reordering tabs.
- Container chips now show tab counts and use clearer container coloring.
- Tab chips can now show close buttons.
- The active tab always gets a close button.
- A new setting allows close buttons on every quick-switcher tab chip.
- Closing tabs from the switcher now uses the same confirmation and undo behavior as the regular tab menu.
- The maximum title width of quick-switcher chips is now adjustable.
- Pinned, private, isolated, sandbox, and nested tabs are represented more clearly in the switcher.
Better Startup and Restore Behavior
Tab restoration after app startup is now more robust.
- Saved tabs can appear earlier as temporary tab chips while the browser engine finishes restoring them.
- Tapping a tab that is still restoring now queues the selection and opens it once it becomes available.
- The app waits for the browser engine to report that restore is complete before cleaning up saved tab data.
- This reduces the chance of restored tabs disappearing during startup or when opening WebLibre through a shared link.
Private tabs are still not restored, matching the existing private browsing behavior.
Appearance and Smoothness
- Added Settings > General > Refresh Rate with System, High, and Low options.
- The default is High, which can make scrolling and animations smoother on 90Hz/120Hz Android screens.
- Low can be used to reduce battery usage.
- The status bar and navigation bar areas now better match the active container or toolbar color.
- System bar icons adjust for contrast so they remain readable.
- Toolbar animations and tab favicons should feel smoother.
- Recent tab entries now show container color and icon badges more clearly.
Settings Migration
Existing Quick Tab Switcher settings are migrated automatically:
- If the switcher was disabled, it remains disabled.
- Existing “recent tabs” and “container tabs” choices map to the new Tab Stacking options.
- New installs default to Accordion when container UI is enabled.
Notes
- The refresh-rate setting is Android-only and depends on device/OS support.
- Container-based tab stacking modes fall back to recently used tabs if container UI is disabled.
v0.20.0-alpha-8
Desktop Mode Overhaul
This release brings major improvements to how you control desktop mode — you can now set it globally, per site, or per tab.
-
Global desktop mode. A new on/off switch in Settings → Browsing → Desktop Mode → "Always Request Desktop Site". Turn it on and every new tab will request the desktop version of websites by default. Flip it and all your already-open tabs switch too.
-
Per-site desktop mode. You can build a list of websites that should always load in desktop mode, no matter what the global setting says. Add sites from the page menu (open the bottom sheet and flip "Always use desktop site"), or manage the full list in Settings → Browsing → "Desktop Mode Sites". Subdomains are included automatically — adding
example.comalso coversm.example.comandshop.example.com.
OLED / Pure Black Theme
A new setting under Settings → General → "Pure Black (OLED)". When you turn this on and use dark mode, the app's backgrounds switch from dark grey to true black. On phones with OLED or AMOLED screens, those pixels are turned off completely — saving battery and giving you deeper, richer blacks. Cards and menus stay slightly lighter so you can still tell them apart.
Tab Nesting Visuals
If you open links in new tabs, those tabs can become "child" tabs of the original one. Now the quick tab switcher shows small chevron icons that tell you how deep a tab is nested. You can control how many chevrons to show from Settings → Toolbar Layout → "Hierarchy Depth in Quick Tab Switcher". Set it to 0 to hide them entirely, or turn it up for more visual context.
Close Button on the New Tab / Search Screen
A new setting under Settings → General → "Show Close Button" adds an X button to the top-left of the new tab and search screen. Tap it to go back to the page you were on — no need for the system back button or a swipe gesture. Especially handy on e-ink devices or if you prefer a visible close button.
Misc
- Gesture toggle shows only when it matters. The gestures tile in the page menu no longer appears when no tab is active.
- Custom tabs color fix. When other apps open links in WebLibre, the color scheme now looks correct.
- Updated hardening preference parameters