diff options
Diffstat (limited to 'src/ScintillaBase.cxx')
-rw-r--r-- | src/ScintillaBase.cxx | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/ScintillaBase.cxx b/src/ScintillaBase.cxx index 92605d9b3..08b9fe829 100644 --- a/src/ScintillaBase.cxx +++ b/src/ScintillaBase.cxx @@ -64,7 +64,7 @@ using namespace Scintilla; #endif ScintillaBase::ScintillaBase() { - displayPopupMenu = true; + displayPopupMenu = SC_POPUP_ALL; listType = 0; maxListWidth = 0; multiAutoCMode = SC_MULTIAUTOC_ONCE; @@ -478,6 +478,11 @@ void ScintillaBase::CallTipClick() { NotifyParent(scn); } +bool ScintillaBase::ShouldDisplayPopup(Point ptInWindowCoordinates) const { + return (displayPopupMenu == SC_POPUP_ALL || + (displayPopupMenu == SC_POPUP_TEXT && !PointInSelMargin(ptInWindowCoordinates))); +} + void ScintillaBase::ContextMenu(Point pt) { if (displayPopupMenu) { bool writable = !WndProc(SCI_GETREADONLY, 0, 0); @@ -510,6 +515,11 @@ void ScintillaBase::ButtonDown(Point pt, unsigned int curTime, bool shift, bool ButtonDownWithModifiers(pt, curTime, ModifierFlags(shift, ctrl, alt)); } +void ScintillaBase::RightButtonDownWithModifiers(Point pt, unsigned int curTime, int modifiers) { + CancelModes(); + Editor::RightButtonDownWithModifiers(pt, curTime, modifiers); +} + #ifdef SCI_LEXER #ifdef SCI_NAMESPACE @@ -970,7 +980,7 @@ sptr_t ScintillaBase::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lPara break; case SCI_USEPOPUP: - displayPopupMenu = wParam != 0; + displayPopupMenu = static_cast<int>(wParam); break; #ifdef SCI_LEXER |