diff --git a/src/tools/ecode/plugins/lsp/lspclientplugin.cpp b/src/tools/ecode/plugins/lsp/lspclientplugin.cpp index 85f23e69f..4d4fcd3d8 100644 --- a/src/tools/ecode/plugins/lsp/lspclientplugin.cpp +++ b/src/tools/ecode/plugins/lsp/lspclientplugin.cpp @@ -1,5 +1,5 @@ -#include "lspclientplugin.hpp" #include "../../version.hpp" +#include "lspclientplugin.hpp" #include #include #include @@ -603,8 +603,12 @@ TextDocument* LSPClientPlugin::getDocumentFromURI( const URI& uri ) { bool LSPClientPlugin::onMouseClick( UICodeEditor* editor, const Vector2i& pos, const Uint32& flags ) { - if ( mBreadcrumb && ( flags & EE_BUTTON_LMASK ) && - editor->convertToNodeSpace( pos.asFloat() ).y < mPluginTopSpace ) { + const Vector2f localPos( mBreadcrumb && ( flags & EE_BUTTON_LMASK ) + ? editor->convertToNodeSpace( pos.asFloat() ) + : Vector2f::Zero ); + + if ( mBreadcrumb && ( flags & EE_BUTTON_LMASK ) && localPos.y < mPluginTopSpace && + localPos.x < editor->getPixelsSize().getWidth() - editor->getMinimapWidth() ) { editor->getDocument().execute( "lsp-show-document-symbols", editor ); return true; }