[Libreoffice-commits] core.git: 2 commits - sc/source vcl/source

Henry Castro (via logerrit) logerrit at kemper.freedesktop.org
Thu Sep 26 18:53:53 UTC 2019


 sc/source/ui/condformat/condformatdlgentry.cxx |    8 ++++++++
 vcl/source/window/paint.cxx                    |    3 +++
 2 files changed, 11 insertions(+)

New commits:
commit bb11efa477b6700744560d3999190c65d016600b
Author:     Henry Castro <hcastro at collabora.com>
AuthorDate: Wed Sep 25 07:11:24 2019 -0400
Commit:     Tor Lillqvist <tml at collabora.com>
CommitDate: Thu Sep 26 20:52:27 2019 +0200

    tdf#126967:vcl: lok: avoid starting idle paint task
    
    In the Tiled rendering case the invalidation is handled
    by sending logic invalidate notifications to client side.
    Starting an idle paint task, it provokes an infinity loop
    that it does not have the chance to process client side messages
    (mpPollCallback).
    
    Change-Id: I6ef1bbd6270592eebfeef0c8a37945bf5ddd3580
    Reviewed-on: https://gerrit.libreoffice.org/79537
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Tested-by: Tor Lillqvist <tml at collabora.com>

diff --git a/vcl/source/window/paint.cxx b/vcl/source/window/paint.cxx
index d8703a4c5b0f..85c182ab58e4 100644
--- a/vcl/source/window/paint.cxx
+++ b/vcl/source/window/paint.cxx
@@ -654,6 +654,9 @@ IMPL_LINK_NOARG(Window, ImplHandlePaintHdl, Timer *, void)
     else if ( mpWindowImpl->mbReallyVisible )
     {
         ImplCallOverlapPaint();
+        if (comphelper::LibreOfficeKit::isActive() &&
+            mpWindowImpl->mpFrameData->maPaintIdle.IsActive())
+            mpWindowImpl->mpFrameData->maPaintIdle.Stop();
     }
 }
 
commit eb2b96f9c686401066f420d0f21937fc14eee1f7
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Thu Sep 26 16:34:43 2019 +0100
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Thu Sep 26 20:51:55 2019 +0200

    Resolves: tdf#127416 unparent iconset block on dtor
    
    otherwise gtk keeps the widgets around
    
    Change-Id: I6227662e0a8a4d5a88f4ff6199d6fa06e5be8fe0
    Reviewed-on: https://gerrit.libreoffice.org/79648
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/sc/source/ui/condformat/condformatdlgentry.cxx b/sc/source/ui/condformat/condformatdlgentry.cxx
index 6214ca939c5f..229b4a05e931 100644
--- a/sc/source/ui/condformat/condformatdlgentry.cxx
+++ b/sc/source/ui/condformat/condformatdlgentry.cxx
@@ -1281,10 +1281,12 @@ private:
     std::unique_ptr<weld::Label> mxFtEntry;
     std::unique_ptr<weld::Entry> mxEdEntry;
     std::unique_ptr<weld::ComboBox> mxLbEntryType;
+    weld::Container* mpContainer;
 
 public:
     ScIconSetFrmtDataEntry(weld::Container* pParent, ScIconSetType eType, const ScDocument* pDoc,
             sal_Int32 i, const ScColorScaleEntry* pEntry = nullptr);
+    ~ScIconSetFrmtDataEntry();
     void Show() { mxGrid->show(); }
     void Hide() { mxGrid->hide(); }
     void set_grid_top_attach(int nTop)
@@ -1305,6 +1307,7 @@ ScIconSetFrmtDataEntry::ScIconSetFrmtDataEntry(weld::Container* pParent, ScIconS
     , mxFtEntry(mxBuilder->weld_label("label"))
     , mxEdEntry(mxBuilder->weld_entry("entry"))
     , mxLbEntryType(mxBuilder->weld_combo_box("listbox"))
+    , mpContainer(pParent)
 {
     mxImgIcon->set_from_icon_name(ScIconSetFormat::getIconName(eType, i));
     if(pEntry)
@@ -1337,6 +1340,11 @@ ScIconSetFrmtDataEntry::ScIconSetFrmtDataEntry(weld::Container* pParent, ScIconS
     }
 }
 
+ScIconSetFrmtDataEntry::~ScIconSetFrmtDataEntry()
+{
+    mpContainer->move(mxGrid.get(), nullptr);
+}
+
 ScColorScaleEntry* ScIconSetFrmtDataEntry::CreateEntry(ScDocument* pDoc, const ScAddress& rPos) const
 {
     sal_Int32 nPos = mxLbEntryType->get_active();


More information about the Libreoffice-commits mailing list