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/+/86614
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
diff --git a/include/svx/ctredlin.hxx b/include/svx/ctredlin.hxx
index 91c95fa..55462c9 100644
--- a/include/svx/ctredlin.hxx
+++ b/include/svx/ctredlin.hxx
@@ -262,6 +262,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;
@@ -272,6 +275,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;
@@ -282,7 +286,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 a30c56e..4e08bc7 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 f5defbb..15155c6 100644
--- a/svx/source/dialog/ctredlin.cxx
+++ b/svx/source/dialog/ctredlin.cxx
@@ -304,6 +304,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"))
@@ -313,11 +315,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());

@@ -440,12 +437,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()