Repository navigation
v2.16.0 — power menu redesign + Show all apps
Nex 2.16.0 is a big interaction release: a redesigned power menu built into the main window, a new "Show all apps" expansion that turns any query into your full app list, and a long list of fixes to how rows highlight, animate, and resize.
What changed
- Power menu: the separate popup window is gone. Clicking the power icon now opens an inline panel with six action tiles — Back, Lock, Log Out, Sleep, Restart, Shut Down — each with its accent color and dot indicator, plus an in-panel confirm step for destructive actions.
- "Show all apps": every search with app results ends with a Show all apps entry. Activating it keeps your matched apps on top (score order) and appends the rest of your installed apps right below — no re-search delay, no layout jumping. The window grows once; nothing flashes.
- Power icon moved up: the power button now lives permanently in the search bar instead of the footer, so it's available in every state.
- Footer hints appear only while you're viewing regular results — not on the idle window or quick-launch view.
- Folder paths on hover: hovering a folder result reveals its full path on the right side of the row.
Performance
- Startup indexing no longer walks every file: a volatile change-detection stamp forced nex to re-scan ~13k files on every launch even when nothing changed. The stamp is now config-based, so warm starts skip the walk entirely.
- Search index recovery: after an unclean shutdown, opening the search index could fail and trigger a full rebuild; transient failures are now retried before anything gets deleted.
- Icon loading: large result lists no longer stall rendering — icons swap in with one batched animation instead of forcing a layout pass per image.
- Window resizing: large height jumps (like Show-all-apps) apply immediately instead of waiting out the resize debounce, so content never paints before its window.
Bug Fixes
- Restart/shutdown error dialog: confirming restart or shutdown from the power menu could surface an out-of-memory style error from the web engine while the system tore down graphics. The overlay now hides first and the command runs fire-and-forget.
- Selection highlight ghosts: stale highlights could linger on the wrong row after typing or expanding results. Highlight now comes only from real cursor hover; selection itself stays invisible but still drives Enter.
- Results kept your old scroll position when you typed a new query — they now always start at the top.
- Row entrance animation replayed on every keystroke — it now plays once for the first results, then everything renders instantly.
- Quick-launch grid spacing and padding tightened to match the rest of the UI.
- The power menu no longer stays open if you hide and reshow the overlay mid-menu, and its confirm view lost a stray divider line.
- Overlay spawn position moved down slightly (30% of screen height) so it doesn't crowd the top edge.
Architecture
- Inline power menu: removed the separate popup window (~650 lines) in favor of an in-flow panel measured by the same resize pipeline as the results list.
- Two-phase expansion: Show-all-apps renders a first page synchronously and trails the remainder in, keeping the single-resize guarantee regardless of index size.
Commit Log
ab38069release: v2.16.0fb7e1eastyle(rows): instant path-hint via opacity toggle, no display recalccba4460style(rows): drop path-hint gradient mask699fb22style(rows): overlay folder path on right — title no longer shifts69b8741feat(rows): folder path on hover, right-aligned in the rowf5cd947feat(rows): folder path tooltip on hovere358ec5fix(indexing): stop re-walking 13k files on every startupa32738estyle(rows): stronger hover tint64a6292style(rows): remove all persistent selection visuals1530ba0style(rows): unify selection tint with hover strength02248a3fix(rows): clear selected-tile border in hover-truth mode too5cbb5b0fix(rows): hover-only highlight while pointer is over the list25800d7fix(rows): snap selection to nearest row when cursor rests over a gap862b53fRevert "fix(startup): gate background indexing on WebviewReady"5ad29e9Revert "fix(hotkey): keep hook thread alive as warm standby after helper handover"e9e4ee1Revert "fix(startup): below-normal priority for background indexing thread"808fb40merge: synchronous two-phase Show-all-apps expansion57e7468fix(search): order-stable expansion — existing rows never move6d1e090feat(search): two-phase Show-all-apps — first page instant, remainder trails796dc4cfeat(search): synchronous Show-all-apps expansion — single resize, no flash3cb5742fix(rows): keep selection under stationary cursor after result swap7b1fd42merge: show all apps — full app index expansiona42ed78fix(search): remove Show more, smooth full-index load, reset scroll on new query9f7f33afeat(search): paginate Show-all-apps indexb190aaffix(search): Show all apps entry no longer vanishes42f6bd8feat(search): Show all apps entry3dc8b20style(power-menu): clean confirm viewb7bcd1cstyle(rows): remove grid gap — compact tiles0273369merge: power icon in search row + power menu tile redesign195ffadfix(power-actions): hide overlay before session-ending actionsa541b0astyle(power-menu): app-standard labels, roomier tiles, taller windowdd1e68ffix(power-menu): transparent panel so acrylic backdrop shows123bee6fix(rows): kill entrance animation for section headers on keystrokes519b442fix(rows): kill CSS entrance animation on non-first renders77b4449feat(rows): stagger animation only on first show81f32e0style(quick-launch): match bottom padding to top gap in grid viewc8e8c8efix(footer): show hints only with regular resultsc530b1bfeat(power-menu): power icon permanently in search row4325cd4fix(overlay): spawn at 30% of work-area heightb4c872cmerge: power-menu-redesign — inline power menu30a2992fix(power-menu): close top power menu on show/hide state push46629a3fix(power-menu): idle divider leaked 7px after menu back14eccb0feat(power-menu): inline power panel, drop popup window18d9abbfix(updater): pwsh7 releases parsing, skip-if-current, real install root