mirror of https://github.com/icsharpcode/ILSpy.git
Browse Source
Hit testing for synthesized input is answered from the rendered scene, not from the visual tree, and Dispatcher.UIThread.RunJobs() does not render one. The context-menu gesture helpers pumped dispatcher jobs alone, so after Escape closed a menu the next right-click could still be routed to the light-dismiss overlay of the frame that was on screen: no ContextRequested was raised, no row became the context target, and the assertion two lines later reported an unhighlighted row. The macOS CI runner lost that race roughly once in forty gestures; a probe build repeating the gesture caught a right-click that produced neither a pointer-over nor a menu, and the fix survived 120 gestures on the same runner. Avalonia's own headless input helpers pump the dispatcher and the render timer together for this reason. Assisted-by: Claude:claude-opus-5[1m]:Claude Codepull/4032/head
2 changed files with 31 additions and 10 deletions
Loading…
Reference in new issue