MouseBindings in UICodeEditor WIP.

This commit is contained in:
Martín Lucas Golini
2025-08-25 00:41:54 -03:00
parent 48d43e6403
commit bdde898d52
22 changed files with 252 additions and 156 deletions

View File

@@ -2465,22 +2465,21 @@ bool DebuggerPlugin::onMouseMove( UICodeEditor* editor, const Vector2i& position
const std::optional<EvaluateInfo>& info ) {
if ( info && mManager->getSplitter()->editorExists( editor ) &&
!info->result.empty() ) {
editor->runOnMainThread( [this, editor, info = std::move( *info ),
expression]() {
auto mousePos =
editor->getUISceneNode()->getWindow()->getInput()->getMousePos();
if ( !editor->getScreenRect().contains( mousePos.asFloat() ) )
return;
editor->runOnMainThread(
[this, editor, info = std::move( *info ), expression]() {
auto mousePos = editor->getInput()->getMousePos();
if ( !editor->getScreenRect().contains( mousePos.asFloat() ) )
return;
auto docPos = editor->resolveScreenPosition( mousePos.asFloat() );
auto range =
editor->getDocument().getWordRangeInPosition( docPos, true );
auto docPos = editor->resolveScreenPosition( mousePos.asFloat() );
auto range =
editor->getDocument().getWordRangeInPosition( docPos, true );
if ( mCurrentHover.contains( range ) ) {
mCurrentHover = range;
displayTooltip( editor, expression, info, mousePos.asFloat() );
}
} );
if ( mCurrentHover.contains( range ) ) {
mCurrentHover = range;
displayTooltip( editor, expression, info, mousePos.asFloat() );
}
} );
}
} );
},