vcl/source/window/brdwin.cxx |    8 ++++++++
 1 file changed, 8 insertions(+)

New commits:
commit 698e56cf1fd453c4e175c762c3d427c52e68920a
Author:     Caolán McNamara <caol...@redhat.com>
AuthorDate: Wed Nov 2 14:11:04 2022 +0000
Commit:     Caolán McNamara <caol...@redhat.com>
CommitDate: Wed Nov 2 20:37:05 2022 +0100

    also apply PaintTransparent to a widget's SubEdit if it has one
    
    Change-Id: If56e54929dd2ba988c2fa012370100378c2b2c13
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142175
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caol...@redhat.com>

diff --git a/vcl/source/window/brdwin.cxx b/vcl/source/window/brdwin.cxx
index 0d4bdbbf5515..b8a44ed2a1db 100644
--- a/vcl/source/window/brdwin.cxx
+++ b/vcl/source/window/brdwin.cxx
@@ -400,6 +400,7 @@ void ImplSmallBorderWindowView::Init( OutputDevice* pDev, 
tools::Long nWidth, to
 
     vcl::Window *pWin = mpOutDev->GetOwnerWindow();
     vcl::Window *pCtrl = nullptr;
+    vcl::Window *pSubEdit = nullptr;
     if (pWin)
         pCtrl = mpBorderWindow->GetWindow(GetWindowType::Client);
 
@@ -435,6 +436,7 @@ void ImplSmallBorderWindowView::Init( OutputDevice* pDev, 
tools::Long nWidth, to
                         {
                             aCtrlType = ControlType::Listbox;
                             mbNWFBorder = true;
+                            pSubEdit = static_cast<Edit*>(pCtrl)->GetSubEdit();
                         }
                         break;
                     case WindowType::LISTBOXWINDOW:
@@ -447,6 +449,7 @@ void ImplSmallBorderWindowView::Init( OutputDevice* pDev, 
tools::Long nWidth, to
                         {
                             aCtrlType = ControlType::Combobox;
                             mbNWFBorder = true;
+                            pSubEdit = static_cast<Edit*>(pCtrl)->GetSubEdit();
                         }
                         break;
                     case WindowType::MULTILINEEDIT:
@@ -466,6 +469,7 @@ void ImplSmallBorderWindowView::Init( OutputDevice* pDev, 
tools::Long nWidth, to
                             aCtrlType = ControlType::Spinbox;
                         else
                             aCtrlType = ControlType::Editbox;
+                        pSubEdit = static_cast<Edit*>(pCtrl)->GetSubEdit();
                         break;
                     default:
                         break;
@@ -501,7 +505,11 @@ void ImplSmallBorderWindowView::Init( OutputDevice* pDev, 
tools::Long nWidth, to
                         mpBorderWindow->SetPaintTransparent( true );
                         mpBorderWindow->SetBackground();
                         if (!pCtrl->IsControlBackground())
+                        {
                             pCtrl->SetPaintTransparent(true);
+                            if (pSubEdit)
+                                pSubEdit->SetPaintTransparent(true);
+                        }
 
                         vcl::Window* pCompoundParent = nullptr;
                         if( pWin->GetParent() && 
pWin->GetParent()->IsCompoundControl() )

Reply via email to