Resolves: tdf#129763 resize to request happening on every activate

even though the state remains the same, so only do the resize
if the EnableClearFormatButton[All] state changes.

also change the default to off, which is what writer typically
set it to, and make calc the one that enables it explicitly. Its
easier to grow a dialog than shrink a dialog.

Change-Id: I449df7b7dcf0204b5143b8ad88e528668b84d0a3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86615
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
diff --git a/include/svx/ctredlin.hxx b/include/svx/ctredlin.hxx
index cc63771..b8d5771 100644
--- a/include/svx/ctredlin.hxx
+++ b/include/svx/ctredlin.hxx
@@ -286,6 +286,9 @@ private:
    bool bEnableRejectAll;
    bool bEnableUndo;

    bool bEnableClearFormat;
    bool bEnableClearFormatAll;

    weld::Window* m_pDialog;
    std::unique_ptr<weld::Button> m_xAccept;
    std::unique_ptr<weld::Button> m_xReject;
@@ -296,6 +299,7 @@ private:

    DECL_LINK( PbClickHdl, weld::Button&, void );

    void            EnableClearFormatButton(weld::Button&, bool bFlag);
public:
    SvxTPView(weld::Container* pParent, weld::Window* pDialog, weld::Builder* pTopLevel);
    virtual ~SvxTPView() override;
@@ -306,7 +310,6 @@ public:
    void            EnableAcceptAll(bool bFlag);
    void            EnableReject(bool bFlag);
    void            EnableRejectAll(bool bFlag);
    void            EnableClearFormatButton(weld::Button&, bool bFlag);
    void            EnableClearFormat(bool bFlag);
    void            EnableClearFormatAll(bool bFlag);
    void            EnableUndo(bool bFlag=true);
diff --git a/sc/source/ui/miscdlgs/acredlin.cxx b/sc/source/ui/miscdlgs/acredlin.cxx
index d94d3ce66..cc253a1 100644
--- a/sc/source/ui/miscdlgs/acredlin.cxx
+++ b/sc/source/ui/miscdlgs/acredlin.cxx
@@ -108,6 +108,12 @@ ScAcceptChgDlg::ScAcceptChgDlg(SfxBindings* pB, SfxChildWindow* pCW, weld::Windo

    pTPFilter = m_xAcceptChgCtr->GetFilterPage();
    pTPView = m_xAcceptChgCtr->GetViewPage();

    // set wider window for the optional extending button labels
    // eg. "Reject/Clear formatting" instead of "Reject"
    pTPView->EnableClearFormat(true);
    pTPView->EnableClearFormatAll(true);

    pTheView = pTPView->GetTableControl();
    pTheView->SetCalcView();
    aSelectionIdle.SetInvokeHandler(LINK( this, ScAcceptChgDlg, UpdateSelectionHdl ));
diff --git a/svx/source/dialog/ctredlin.cxx b/svx/source/dialog/ctredlin.cxx
index f2d119b..3058a60 100644
--- a/svx/source/dialog/ctredlin.cxx
+++ b/svx/source/dialog/ctredlin.cxx
@@ -335,6 +335,8 @@ SvxTPView::SvxTPView(weld::Container* pParent, weld::Window* pDialog, weld::Buil
    , bEnableReject(true)
    , bEnableRejectAll(true)
    , bEnableUndo(true)
    , bEnableClearFormat(false)
    , bEnableClearFormatAll(false)
    , m_pDialog(pDialog)
    , m_xAccept(pTopLevel->weld_button("accept"))
    , m_xReject(pTopLevel->weld_button("reject"))
@@ -344,11 +346,6 @@ SvxTPView::SvxTPView(weld::Container* pParent, weld::Window* pDialog, weld::Buil
    , m_xViewData(new SvxRedlinTable(m_xBuilder->weld_tree_view("writerchanges"),
                                     m_xBuilder->weld_tree_view("calcchanges")))
{
    // set wider window for the optional extending button labels
    // eg. "Reject/Clear formatting" instead of "Reject"
    EnableClearFormat(true);
    EnableClearFormatAll(true);

    Size aControlSize(80, 65);
    m_xViewData->set_size_request(aControlSize.Width(), aControlSize.Height());

@@ -471,12 +468,18 @@ void SvxTPView::EnableClearFormatButton(weld::Button& rButton, bool bFlag)

void SvxTPView::EnableClearFormat(bool bFlag)
{
    if (bEnableClearFormat == bFlag)
        return;
    EnableClearFormatButton(*m_xReject, bFlag);
    bEnableClearFormat = bFlag;
}

void SvxTPView::EnableClearFormatAll(bool bFlag)
{
    if (bEnableClearFormatAll == bFlag)
        return;
    EnableClearFormatButton(*m_xRejectAll, bFlag);
    bEnableClearFormatAll = bFlag;
}

void SvxTPView::ShowUndo()