Fix: Toten Pseudo-Fallback in GridViewWorkflows_MouseDown entfernt
Der InvalidRowHandle-Check in GridViewWorkflows_MouseDown (aus einem vorherigen Commit) las GridViewWorkflows.FocusedRowHandle in eine lokale Variable ein, verwendete sie aber nirgends - hi.RowHandle blieb unverändert ungültig, sodass der Code ohnehin sofort in der nächsten Prüfung (Not hi.InRow) abbrach. Zusätzlich trug die Debug-Zeile fälschlich das Präfix "Item_Scope:" statt "MouseDown:" - offensichtlich ein Kopier-Rest. Anders als in Item_Scope (siehe vorheriger Commit) ist ein FocusedRowHandle-Fallback hier bewusst NICHT sinnvoll: e.Location ist in MouseDown immer die aktuelle Klick-Position (kein Caching-Problem), und InvalidRowHandle ist der normale, erwartete Fall für legitime Nicht-Zeilen-Klicks (Spaltenkopf, leerer Bereich, insb. FilterPanelCloseButton). Ein Fallback auf FocusedRowHandle würde solche Klicks fälschlich der aktuell fokussierten Zeile zuordnen (z.B. Klick auf "Filter schließen" würde plötzlich CURRENT_CLICKED_PROFILE_ID setzen) - neuer Bug statt Fix. Der ursprünglich gemeldete Fehler (Doppelklick auf Gruppenkopf reagiert nicht) ist bereits durch den Fallback in Item_Scope abgedeckt, unabhängig vom Ausgang dieses MouseDown-Aufrufs. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -3546,15 +3546,14 @@ Public Class frmMain
|
||||
Dim hi As GridHitInfo = view.CalcHitInfo(e.Location)
|
||||
Dim groupRowButtonClicked = (hi.HitTest = GridHitTest.RowGroupButton)
|
||||
' ===== UNGÜLTIGE CLICKS ABFANGEN =====
|
||||
' Anders als in Item_Scope ist hier KEIN FocusedRowHandle-Fallback sinnvoll:
|
||||
' e.Location ist immer aktuell (kein Caching-Problem), und InvalidRowHandle ist
|
||||
' hier der normale Fall für legitime Nicht-Zeilen-Klicks (Spaltenkopf, leerer
|
||||
' Bereich, FilterPanelCloseButton). Ein Fallback würde solche Klicks fälschlich
|
||||
' der aktuell fokussierten Zeile zuordnen.
|
||||
If hi.RowHandle = DevExpress.XtraGrid.GridControl.InvalidRowHandle Then
|
||||
Dim focused = GridViewWorkflows.FocusedRowHandle
|
||||
If focused <> DevExpress.XtraGrid.GridControl.InvalidRowHandle Then
|
||||
LOGGER.Debug($"Item_Scope: hitInfo invalid, falling back to FocusedRowHandle [{focused}]")
|
||||
' hitInfo/rowHandle entsprechend neu aufbauen
|
||||
Else
|
||||
LOGGER.Warn("⚠️ MouseDown: InvalidRowHandle - ignoring click")
|
||||
Exit Sub
|
||||
End If
|
||||
LOGGER.Debug("MouseDown: InvalidRowHandle - ignoring click")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If Not hi.InRow Then
|
||||
|
||||
Reference in New Issue
Block a user