tdf#142479 on 'return' select the entry the cursor is in before calling Select

Change-Id: Ic11f8a12c93d1999dd6fbe555b9823660eb703d0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116101
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
diff --git a/svtools/source/control/valueset.cxx b/svtools/source/control/valueset.cxx
index 8214628..c60e557 100644
--- a/svtools/source/control/valueset.cxx
+++ b/svtools/source/control/valueset.cxx
@@ -419,6 +419,14 @@ bool ValueSet::KeyInput( const KeyEvent& rKeyEvent )
        case KEY_RETURN:
            if (GetStyle() & WB_NO_DIRECTSELECT)
            {
                // tdf#142479 on return select the entry the cursor is in
                // before calling Select
                if (nCurPos != VALUESET_ITEM_NONEITEM)
                {
                    const sal_uInt16 nItemId = GetItemId(nCurPos);
                    if (nItemId != mnSelItemId)
                        SelectItem(nItemId);
                }
                Select();
                break;
            }