[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-1+backports' - 2 commits - sal/osl sal/qa vcl/inc vcl/source

Samuel Mehrbrodt (via logerrit) logerrit at kemper.freedesktop.org
Thu Dec 5 14:32:31 UTC 2019


 sal/osl/w32/file_url.cxx                                              |   10 ++++++----
 sal/qa/osl/getsystempathfromfileurl/test-getsystempathfromfileurl.cxx |    2 --
 vcl/inc/listbox.hxx                                                   |    1 +
 vcl/source/control/combobox.cxx                                       |    2 +-
 vcl/source/control/imp_listbox.cxx                                    |    5 ++++-
 5 files changed, 12 insertions(+), 8 deletions(-)

New commits:
commit 72d7376b0f252bb846540f38bacd9454781d29f0
Author:     Samuel Mehrbrodt <Samuel.Mehrbrodt at cib.de>
AuthorDate: Wed Nov 27 16:43:19 2019 +0100
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Thu Dec 5 15:31:43 2019 +0100

    tdf#129043 Correctly deliver combo box events when used with keyboard
    
    Change-Id: I82186f999e74be4aebd59d77666390a7d5e8ad81
    Reviewed-on: https://gerrit.libreoffice.org/83923
    Tested-by: Jenkins
    Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt at cib.de>
    (cherry picked from commit 7de9417d5f65d35227c7f80f6d587c2a56bde4e0)
    Reviewed-on: https://gerrit.libreoffice.org/84405
    Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
    Tested-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>

diff --git a/vcl/inc/listbox.hxx b/vcl/inc/listbox.hxx
index 1130ad9ef805..e9546e19516e 100644
--- a/vcl/inc/listbox.hxx
+++ b/vcl/inc/listbox.hxx
@@ -213,6 +213,7 @@ private:
     bool mbRight : 1;            ///< right align Text output
     bool mbCenter : 1;           ///< center Text output
     bool mbEdgeBlending : 1;
+    bool mbIsComboboxDropdown : 1;
 
     Link<ImplListBoxWindow*,void>  maScrollHdl;
     Link<LinkParamNone*,void>      maSelectHdl;
diff --git a/vcl/source/control/combobox.cxx b/vcl/source/control/combobox.cxx
index 4508d34022fc..3ce77bacb950 100644
--- a/vcl/source/control/combobox.cxx
+++ b/vcl/source/control/combobox.cxx
@@ -739,7 +739,7 @@ bool ComboBox::EventNotify( NotifyEvent& rNEvt )
 
             case KEY_RETURN:
             {
-                if ((rNEvt.GetWindow() == m_pImpl->m_pSubEdit) && IsInDropDown())
+                if (rNEvt.GetWindow() == m_pImpl->m_pSubEdit)
                 {
                     m_pImpl->m_pImplLB->ProcessKeyInput( aKeyEvt );
                     bDone = true;
diff --git a/vcl/source/control/imp_listbox.cxx b/vcl/source/control/imp_listbox.cxx
index b2e002a05ef5..c892692ba036 100644
--- a/vcl/source/control/imp_listbox.cxx
+++ b/vcl/source/control/imp_listbox.cxx
@@ -484,6 +484,7 @@ ImplListBoxWindow::ImplListBoxWindow( vcl::Window* pParent, WinBits nWinStyle )
     mbCenter            = ( nWinStyle & WB_CENTER );
     mbSimpleMode        = ( nWinStyle & WB_SIMPLEMODE );
     mbSort              = ( nWinStyle & WB_SORT );
+    mbIsComboboxDropdown = ( nWinStyle & WB_DROPDOWN );
     mbEdgeBlending      = false;
 
     // pb: #106948# explicit mirroring for calc
@@ -1607,7 +1608,9 @@ bool ImplListBoxWindow::ProcessKeyInput( const KeyEvent& rKEvt )
         mnCurrentPos = nSelect;
         if(SelectEntries( nSelect, eLET, bShift, bCtrl, bCurPosChange))
         {
-            mbTravelSelect = true;
+            // tdf#129043 Correctly deliver events when changing values with arrow keys in combobox
+            if (mbIsComboboxDropdown && IsReallyVisible())
+                mbTravelSelect = true;
             mnSelectModifier = rKEvt.GetKeyCode().GetModifier();
             ImplCallSelect();
             mbTravelSelect = false;
commit 0aaf48842a3ae0b592ee0415f152ff02a62be7ff
Author:     Jan-Marek Glogowski <jan-marek.glogowski at extern.cib.de>
AuthorDate: Tue Nov 26 22:05:10 2019 +0100
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Thu Dec 5 15:31:20 2019 +0100

    WIN accept single-backslash file URIs
    
    From all I could find, a single (back-)slash file URI is fine as
    a local file path.
    
    This includes the commit "WIN enable NoAuthority test"
    (cherry picked from commit f9fd9d4cd4f792cd4ec8e14df78f3193653dae67)
    
    Change-Id: I75e95c809894cdef88f708d0477cb98eb114a107
    Reviewed-on: https://gerrit.libreoffice.org/83837
    Tested-by: Jenkins
    Reviewed-by: Jan-Marek Glogowski <glogow at fbihome.de>
    (cherry picked from commit 895cd72158fc8a455f705764ae4ae000b933eba4)
    Reviewed-on: https://gerrit.libreoffice.org/83952
    (cherry picked from commit 7a22576478efcf9445a572574b905d6dd07b1e74)
    Reviewed-on: https://gerrit.libreoffice.org/84305
    Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
    Tested-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>

diff --git a/sal/osl/w32/file_url.cxx b/sal/osl/w32/file_url.cxx
index 9b5cb51b110a..d6339849f08d 100644
--- a/sal/osl/w32/file_url.cxx
+++ b/sal/osl/w32/file_url.cxx
@@ -634,7 +634,7 @@ oslFileError osl_getSystemPathFromFileURL_( rtl_uString *strURL, rtl_uString **p
 
     SAL_WARN_IF(
         strUTF8->length != strURL->length &&
-        0 == rtl_ustr_ascii_shortenedCompareIgnoreAsciiCase_WithLength( strURL->buffer, strURL->length, "file:\\\\", 7 )
+        0 == rtl_ustr_ascii_shortenedCompareIgnoreAsciiCase_WithLength( strURL->buffer, strURL->length, "file:\\", 6 )
         , "sal.osl"
         ,"osl_getSystemPathFromFileURL: \"" << rtl::OUString(strURL) << "\" is not encoded !!!");
 
@@ -653,8 +653,8 @@ oslFileError osl_getSystemPathFromFileURL_( rtl_uString *strURL, rtl_uString **p
         const sal_Unicode *pDecodedURL = rtl_uString_getStr( strDecodedURL );
         nDecodedLen = rtl_uString_getLength( strDecodedURL );
 
-        /* Must start with "file://" */
-        if ( 0 == rtl_ustr_ascii_shortenedCompareIgnoreAsciiCase_WithLength( pDecodedURL, nDecodedLen, "file:\\\\", 7 ) )
+        /* Must start with "file:/" */
+        if ( 0 == rtl_ustr_ascii_shortenedCompareIgnoreAsciiCase_WithLength( pDecodedURL, nDecodedLen, "file:\\", 6 ) )
         {
             sal_uInt32  nSkip;
 
@@ -665,8 +665,10 @@ oslFileError osl_getSystemPathFromFileURL_( rtl_uString *strURL, rtl_uString **p
                 0 == rtl_ustr_ascii_shortenedCompareIgnoreAsciiCase_WithLength( pDecodedURL, nDecodedLen, "file:\\\\127.0.0.1\\", 17 )
                       )
                 nSkip = 17;
-            else
+            else if ( 0 == rtl_ustr_ascii_shortenedCompareIgnoreAsciiCase_WithLength( pDecodedURL, nDecodedLen, "file:\\\\", 7 ) )
                 nSkip = 5;
+            else
+                nSkip = 6;
 
             /* Indicates local root */
             if ( nDecodedLen == nSkip )
diff --git a/sal/qa/osl/getsystempathfromfileurl/test-getsystempathfromfileurl.cxx b/sal/qa/osl/getsystempathfromfileurl/test-getsystempathfromfileurl.cxx
index 51022d9e3fe2..4fd5d6b16ffb 100644
--- a/sal/qa/osl/getsystempathfromfileurl/test-getsystempathfromfileurl.cxx
+++ b/sal/qa/osl/getsystempathfromfileurl/test-getsystempathfromfileurl.cxx
@@ -134,12 +134,10 @@ void Test::testLocalhost3Authority() {
 }
 
 void Test::testNoAuthority() {
-#if !defined(_WIN32) //TODO
     OUString p;
     auto e = osl::FileBase::getSystemPathFromFileURL("file:" MY_PATH_IN, p);
     CPPUNIT_ASSERT_EQUAL(osl::FileBase::E_None, e);
     CPPUNIT_ASSERT_EQUAL(OUString(MY_PATH_OUT), p);
-#endif
 }
 
 void Test::testEmptyPath() {


More information about the Libreoffice-commits mailing list