You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Font: Iosevka Nerd Font 10 (set in configuration { font: ... })
Summary
In dmenu mode, typing a filter string updates the filtered result set internally, but the listview UI keeps stale rows visible. Non-matching entries remain on screen even though they no longer match the filter.
This is not a matching/filtering bug: rofi -dump -filter … returns the correct subset.
Steps to reproduce
Create a config that loads a custom theme via @theme (same layout as a typical home-manager setup):
~/.config/rofi/config.rasi (minimal repro in gist):
custom.rasi: window + inputbar with [ prompt, entry ] + listview with dynamic: true, fixed-height: false, expand: false. (Full file in gist.)
Run:
echo -en 'Region to editor\nRegion to clipboard\nRegion to file\nFullscreen to clipboard\nFullscreen to file' \
| rofi -i -dmenu -no-custom -sync -config ~/.config/rofi/config.rasi
Type full in the entry field.
Expected behaviour
The listview shows 2 rows:
Fullscreen to clipboard
Fullscreen to file
Actual behaviour
The listview shows 4 rows. The top two rows still display the original entries ("Region to editor", "Region to clipboard") even though they do not contain full. The two matching entries appear below them.
Filter logic is correct (control)
echo -en 'Region to editor\nRegion to clipboard\nRegion to file\nFullscreen to clipboard\nFullscreen to file' \
| rofi -dump -filter full -dmenu -no-custom -i -config ~/.config/rofi/config.rasi
Output:
Fullscreen to clipboard
Fullscreen to file
Same correct output with or without -config.
Workarounds observed
Change
Filter UI
Theme
-no-config (default theme)
✅ correct
❌ unstyled
-no-fixed-num-lines alone
❌ still 4 rows
—
fixed-num-lines: false in config
❌ still 4 rows
—
Separate dmenu config, no global font:, no prompt widget
✅ correct
⚠️ degraded look
rofi 1.7.9 with same theme
✅ correct
✅ full theme
Notes
Reproduces with 5 static stdin lines (not a large-list / delayed-filtering case).
-sync does not change the broken UI behaviour.
Partial -theme-str overrides do not fix it; the broken theme still loads underneath.
Version
(
rofi -v)Environment
configuration { font: ... })Summary
In dmenu mode, typing a filter string updates the filtered result set internally, but the listview UI keeps stale rows visible. Non-matching entries remain on screen even though they no longer match the filter.
This is not a matching/filtering bug:
rofi -dump -filter …returns the correct subset.Steps to reproduce
Create a config that loads a custom theme via
@theme(same layout as a typical home-manager setup):~/.config/rofi/config.rasi(minimal repro in gist):custom.rasi: window + inputbar with[ prompt, entry ]+ listview withdynamic: true,fixed-height: false,expand: false. (Full file in gist.)Run:
Type
fullin the entry field.Expected behaviour
The listview shows 2 rows:
Actual behaviour
The listview shows 4 rows. The top two rows still display the original entries ("Region to editor", "Region to clipboard") even though they do not contain
full. The two matching entries appear below them.Filter logic is correct (control)
Output:
Same correct output with or without
-config.Workarounds observed
-no-config(default theme)-no-fixed-num-linesalonefixed-num-lines: falsein configfont:, nopromptwidgetNotes
-syncdoes not change the broken UI behaviour.-theme-stroverrides do not fix it; the broken theme still loads underneath.-dumpis always correct.Attachments
Reproducer files and
rofi -helpoutput: https://gist.github.com/bebert64/8aa6a735b51a9ac4da05642844cd2193