detached 9660aaa

docs(changelog): add unpushed changes for content blocking and favicon fixes

Added to [Unreleased]:
- Native favicon support via WebKit FaviconDatabase
- Content blocking restoration (gotk4 migration fix)
- Script injection spam fix (iframe issue)
- Favicon race conditions fix
- Homepage theme switching fix
- Workspace pane border fix
commit
9660aaa463a6bb8c0ad0e7c9b0d83529c4d1ab32
author
bamen · · 2025-10-15 05:35 UTC
parent
788f19a
signature
unsigned
1 file · +6 -0
M CHANGELOG.md +6 -0
@@ -5,6 +5,7 @@ All notable changes to this project will be documented in this file.
55 ## [Unreleased]
66
77 ### Added
8+- **Native favicon support**: WebKit FaviconDatabase integration with automatic detection and caching for all panes
89 - ENV=dev support to isolate test builds from production config/data in .dev/dumber/ directory
910 - Content filtering whitelist config (Twitch enabled by default)
1011 - `dumber config` command to open config file in $VISUAL/$EDITOR or print path with `--path`
@@ -19,6 +20,11 @@ All notable changes to this project will be documented in this file.
1920 - **Workspace pane mode**: Moved ~450 lines of JavaScript state machine to Go backend for more reliable keyboard handling and eliminated race conditions between webviews
2021
2122 ### Fixed
23+- **Content blocking restored**: Re-implemented WebKit native ad/tracker blocking (broken during gotk4 migration) using UserContentFilterStore API
24+- **Script injection spam**: Fixed 100+ duplicate "Sending color palettes" messages by injecting scripts only in top frame instead of all iframes
25+- **Favicon race conditions**: Eliminated duplicate downloads and file handle errors via mutex protection and proper handler registration
26+- **Homepage theme switching**: Fixed color palette application for proper light/dark mode transitions
27+- **Workspace pane borders**: Hide active pane border when only one pane exists to match Zellij UX
2228 - Enabled missing WebKitGTK6 features: WebRTC, MediaSource, LocalStorage, WebAudio, MediaStream, Clipboard
2329 - Cosmetic filter duplicate injection in frames
2430 - Config file duplicate keys (snake_case/camelCase) by using Viper's SafeWriteConfigAs
@@ -5,6 +5,7 @@ All notable changes to this project will be documented in this file.
5 ## [Unreleased]5 ## [Unreleased]
6 6
7 ### Added7 ### Added
8+- **Native favicon support**: WebKit FaviconDatabase integration with automatic detection and caching for all panes
8 - ENV=dev support to isolate test builds from production config/data in .dev/dumber/ directory9 - ENV=dev support to isolate test builds from production config/data in .dev/dumber/ directory
9 - Content filtering whitelist config (Twitch enabled by default)10 - Content filtering whitelist config (Twitch enabled by default)
10 - `dumber config` command to open config file in $VISUAL/$EDITOR or print path with `--path`11 - `dumber config` command to open config file in $VISUAL/$EDITOR or print path with `--path`
@@ -19,6 +20,11 @@ All notable changes to this project will be documented in this file.
19 - **Workspace pane mode**: Moved ~450 lines of JavaScript state machine to Go backend for more reliable keyboard handling and eliminated race conditions between webviews20 - **Workspace pane mode**: Moved ~450 lines of JavaScript state machine to Go backend for more reliable keyboard handling and eliminated race conditions between webviews
20 21
21 ### Fixed22 ### Fixed
23+- **Content blocking restored**: Re-implemented WebKit native ad/tracker blocking (broken during gotk4 migration) using UserContentFilterStore API
24+- **Script injection spam**: Fixed 100+ duplicate "Sending color palettes" messages by injecting scripts only in top frame instead of all iframes
25+- **Favicon race conditions**: Eliminated duplicate downloads and file handle errors via mutex protection and proper handler registration
26+- **Homepage theme switching**: Fixed color palette application for proper light/dark mode transitions
27+- **Workspace pane borders**: Hide active pane border when only one pane exists to match Zellij UX
22 - Enabled missing WebKitGTK6 features: WebRTC, MediaSource, LocalStorage, WebAudio, MediaStream, Clipboard28 - Enabled missing WebKitGTK6 features: WebRTC, MediaSource, LocalStorage, WebAudio, MediaStream, Clipboard
23 - Cosmetic filter duplicate injection in frames29 - Cosmetic filter duplicate injection in frames
24 - Config file duplicate keys (snake_case/camelCase) by using Viper's SafeWriteConfigAs30 - Config file duplicate keys (snake_case/camelCase) by using Viper's SafeWriteConfigAs

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 8

Tags 42

↑↓ moveenter openesc close