MinimapView hitTest ignores isHidden, intercepts clicks when minimap is hidden
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 1/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 68/100
Direzione di ricerca
Inizia da MinimapView.hitTest(_:) e dall’override di mouseDown(with:) nell’editor del codice sorgente. Riproduci il problema con SourceEditorConfiguration impostato su showMinimap: false, quindi verifica che i clic nell’area precedentemente occupata dalla minimap raggiungano la vista di testo sottostante e che la normale interazione con la minimap rimanga invariata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
When showMinimap is set to false in SourceEditorConfiguration, the MinimapView is hidden via isHidden = true. However, clicks on the right ~140px of the editor are still intercepted by the hidden minimap, preventing cursor placement in that area.
Root Cause
MinimapView.hitTest(_:) overrides NSView.hitTest but does not check isHidden:
override public func hitTest(_ point: NSPoint) -> NSView? {
guard let point = superview?.convert(point, to: self) else { return nil }
// ...
}
Combined with the empty mouseDown override:
override public func mouseDown(with event: NSEvent) { }
This means the hidden minimap silently swallows all click events in its frame area.
Steps to Reproduce
- Create a
SourceEditorwithperipherals: .init(showMinimap: false) - Open any text file
- Try to click on the right portion of the editor (where the minimap would normally be)
- The cursor does not move — the click is eaten by the hidden minimap
Expected Behavior
When showMinimap: false, clicks should pass through to the underlying text view.
Suggested Fix
Add an isHidden guard at the top of hitTest:
override public func hitTest(_ point: NSPoint) -> NSView? {
guard !isHidden else { return nil }
guard let point = superview?.convert(point, to: self) else { return nil }
// ...
}
Environment
- CodeEditSourceEditor v0.15.2
- macOS 15.5, Apple Silicon
- Lingua principale
- Swift
- Stelle
- 720
- Fork
- 162
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di CodeEditApp/CodeEditSourceEditor
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
CodeEditApp/CodeEditSourceEditor#377 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
CodeEditApp/CodeEditSourceEditor#376 · 1 commento ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
CodeEditApp/CodeEditSourceEditor#378 · 1 commento ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 32/100
-
bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
Tutte le issue di CodeEditApp/CodeEditSourceEditor
Issue simili
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
type: docs
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 95/100
googleapis/google-cloud-swift#971 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
bitcoindevkit/bdk-ffi#1125 ·
-
Move wallpaper setting Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
mozilla-mobile/firefox-ios#35743 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
manaflow-ai/cmux#13417 ·