sw/source/uibase/docvw/edtdd.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
New commits: commit a559e6e6574b84c061fb5a90291276819f3b0c33 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Wed Apr 28 17:19:30 2021 +0100 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Apr 29 11:29:31 2021 +0200 tdf#116384 only drag hyperlink if user's not currently setting the selection which is what writer does for normal text. Under gtk its common on selecting by dragging the mouse over a hyperlink for one or two letters of the hyperlink to get selected before that selection then gets dragged as dnd. Under gen StartDragWidth is 2 by default so the drag kicks in before enough text has been selected for writer to select anything, but under gtk gtk-dnd-drag-threshold is used for StartDragWidth and that is 8 by default making it easy to select one or two characters before the gesture is recognized as a possible drag. it seems sane to do the same as for normal text and not dnd if the user is still using the mouse to set a selection Change-Id: I971d429acaf8a5a656c5ce58f52632979b94e40a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114726 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> diff --git a/sw/source/uibase/docvw/edtdd.cxx b/sw/source/uibase/docvw/edtdd.cxx index 31594da032af..a9d80375b51e 100644 --- a/sw/source/uibase/docvw/edtdd.cxx +++ b/sw/source/uibase/docvw/edtdd.cxx @@ -83,7 +83,8 @@ void SwEditWin::StartDrag( sal_Int8 /*nAction*/, const Point& rPosPixel ) bool bStart = false, bDelSelect = false; SdrObject *pObj = nullptr; Point aDocPos( PixelToLogic( rPosPixel ) ); - if ( !rSh.IsInSelect() && rSh.TestCurrPam( aDocPos, true)) + const bool bInSelect = rSh.IsInSelect(); + if (!bInSelect && rSh.TestCurrPam(aDocPos, true)) //We are not selecting and aren't at a selection bStart = true; else if ( !g_bFrameDrag && rSh.IsSelFrameMode() && @@ -109,7 +110,7 @@ void SwEditWin::StartDrag( sal_Int8 /*nAction*/, const Point& rPosPixel ) else rSh.UnlockPaint(); } - else + else if (!bInSelect)// tdf#116384 only drag hyperlink if user's not currently setting the selection { SwContentAtPos aSwContentAtPos( IsAttrAtPos::InetAttr ); bStart = rSh.GetContentAtPos( aDocPos, _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits