MinimapView hitTest ignores isHidden, intercepts clicks when minimap is hidden
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 1/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 68/100
Piste de recherche
Commencez par MinimapView.hitTest(_:) et la redéfinition de mouseDown(with:) dans l’éditeur de code source. Reproduisez le problème avec SourceEditorConfiguration configuré avec showMinimap: false, puis vérifiez que les clics dans l’ancienne frame de la minimap atteignent la vue de texte sous-jacente et que l’interaction normale avec la minimap reste inchangée.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
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
- Langage dominant
- Swift
- Étoiles
- 720
- Forks
- 162
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de CodeEditApp/CodeEditSourceEditor
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
CodeEditApp/CodeEditSourceEditor#377 · 1 commentaire ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
CodeEditApp/CodeEditSourceEditor#376 · 1 commentaire ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
CodeEditApp/CodeEditSourceEditor#378 · 1 commentaire ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 32/100
-
bug
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
Toutes les issues de CodeEditApp/CodeEditSourceEditor
Issues similaires
-
enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
-
type: docs
Difficulté 1/5 Moins d'une heure Accessibilité débutants 95/100
googleapis/google-cloud-swift#971 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
bitcoindevkit/bdk-ffi#1125 ·
-
Move wallpaper setting Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
mozilla-mobile/firefox-ios#35743 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
manaflow-ai/cmux#13417 ·