Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Let Search and Comparer windows move and resize independently of the main window

Aperta
#52 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
38/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
rust
Ambito
desktop, devtools

Direzione di ricerca

Start by reading crates/perseid/src/app/search.rs and crates/perseid/src/app/comparer.rs, then check eframe/egui support for native multi-viewport windows. Decide how window state and geometry will be shared and persisted, and verify platform behavior on macOS, Linux, and Windows. Done means both utility windows can move and resize independently and retain their geometry, or the documented interim behavior meets the listed criteria.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug enhancement priority: p1

Reported behavior

The floating Search window and the Comparer result window do not behave like
independent windows. They appear constrained to the main application window,
cannot be moved to another monitor, and cannot be expanded beyond the main
window. Title-bar dragging is also reported as unreliable.

Current implementation

Both are egui::Window areas inside the single eframe viewport:

  • crates/perseid/src/app/search.rs creates the Search window.
  • crates/perseid/src/app/comparer.rs creates the Comparer result window.

In-viewport egui windows are naturally clamped to their parent viewport. The
custom-decorated native window (with_decorations(false)) may also make drag
behavior less obvious, but it does not make in-app areas detachable.

Expected

The user should be able to move Search and the Comparer result to another monitor
and resize them independently of the main Perseid window. If a native child
window is the chosen architecture, it should open with sensible focus, remember
its geometry, and close with the main window. If native viewports are not
feasible yet, at minimum make in-app dragging reliable, allow resizing up to the
available screen, and persist window geometry.

Proposal

  • Evaluate eframe/egui multi-viewport support for Search and Comparer.
  • Keep a single source of truth for state so a window is not duplicated between
    the embedded and native representations.
  • Restore focus to the main window after closing a child, and support Esc to
    close the active utility window.
  • Add regression/manual checks on macOS, Linux/X11/Wayland, and Windows.

Acceptance criteria

  • Search and Comparer can be moved to any monitor and resized independently
    of the main window.
  • Position and size are remembered across open/close and restart.
  • Closing the main window closes child windows without losing state.
  • Title-bar drag and keyboard focus behave reliably.
  • If native child windows are deferred, the limitation and interim behavior
    are documented and the in-app windows are fully usable.
Lingua principale
Rust
Stelle
1
Fork
0
Merge medio
34m
PR unite (30g)
66

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di andyintheshell/perseid

Tutte le issue di andyintheshell/perseid

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.