vcl/inc/jsdialog/jsdialogbuilder.hxx |   22 -------------------
 vcl/jsdialog/jsdialogbuilder.cxx     |   40 -----------------------------------
 2 files changed, 62 deletions(-)

New commits:
commit 1cc4dcf724cfa4132f917fd4a33b1c1d6435ed52
Author:     Szymon Kłos <[email protected]>
AuthorDate: Tue Mar 7 13:09:20 2023 +0100
Commit:     Szymon Kłos <[email protected]>
CommitDate: Tue Mar 7 13:25:58 2023 +0000

    jsdialog: don't send full updates on tab change
    
    All tabs are now sent with the first full message.
    So client can switch between tabs by showing another
    tabpage content. We don't need to send structure again.
    
    Change-Id: I0f3dfc8be4816fba5813a83b41722407631edb73
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148421
    Tested-by: Szymon Kłos <[email protected]>
    Reviewed-by: Szymon Kłos <[email protected]>

diff --git a/vcl/inc/jsdialog/jsdialogbuilder.hxx 
b/vcl/inc/jsdialog/jsdialogbuilder.hxx
index 96455be71797..5f62191ffe71 100644
--- a/vcl/inc/jsdialog/jsdialogbuilder.hxx
+++ b/vcl/inc/jsdialog/jsdialogbuilder.hxx
@@ -575,34 +575,12 @@ public:
 
 class JSNotebook final : public JSWidget<SalInstanceNotebook, ::TabControl>
 {
-    Link<const OString&, bool> m_aLeavePageOverridenHdl;
-    Link<const OString&, void> m_aEnterPageOverridenHdl;
-
-    DECL_LINK(LeaveHdl, const OString&, bool);
-    DECL_LINK(EnterHdl, const OString&, bool);
-
 public:
     JSNotebook(JSDialogSender* pSender, ::TabControl* pControl, 
SalInstanceBuilder* pBuilder,
                bool bTakeOwnership);
 
-    virtual void set_current_page(int nPage) override;
-
-    virtual void set_current_page(const OString& rIdent) override;
-
     virtual void remove_page(const OString& rIdent) override;
-
     virtual void insert_page(const OString& rIdent, const OUString& rLabel, 
int nPos) override;
-
-    void connect_leave_page(const Link<const OString&, bool>& rLink)
-    {
-        m_aLeavePageHdl = LINK(this, JSNotebook, LeaveHdl);
-        m_aLeavePageOverridenHdl = rLink;
-    }
-    void connect_enter_page(const Link<const OString&, void>& rLink)
-    {
-        m_aLeavePageHdl = LINK(this, JSNotebook, EnterHdl);
-        m_aEnterPageOverridenHdl = rLink;
-    }
 };
 
 class JSSpinButton final : public JSWidget<SalInstanceSpinButton, 
::FormattedField>
diff --git a/vcl/jsdialog/jsdialogbuilder.cxx b/vcl/jsdialog/jsdialogbuilder.cxx
index 355a4d45c45a..713920cff594 100644
--- a/vcl/jsdialog/jsdialogbuilder.cxx
+++ b/vcl/jsdialog/jsdialogbuilder.cxx
@@ -1502,52 +1502,12 @@ void JSComboBox::set_active(int pos)
 
 bool JSComboBox::changed_by_direct_pick() const { return true; }
 
-IMPL_LINK(JSNotebook, LeaveHdl, const OString&, rPage, bool)
-{
-    m_aLeavePageOverridenHdl.Call(rPage);
-    sendFullUpdate();
-    return true;
-}
-
-IMPL_LINK(JSNotebook, EnterHdl, const OString&, rPage, bool)
-{
-    m_aEnterPageOverridenHdl.Call(rPage);
-    sendFullUpdate();
-    return true;
-}
-
 JSNotebook::JSNotebook(JSDialogSender* pSender, ::TabControl* pControl,
                        SalInstanceBuilder* pBuilder, bool bTakeOwnership)
     : JSWidget<SalInstanceNotebook, ::TabControl>(pSender, pControl, pBuilder, 
bTakeOwnership)
 {
 }
 
-void JSNotebook::set_current_page(int nPage)
-{
-    bool bForce = false;
-    int nCurrent = get_current_page();
-    if (nCurrent == nPage)
-        bForce = true;
-
-    SalInstanceNotebook::set_current_page(nPage);
-    sendFullUpdate(bForce);
-
-    m_aEnterPageHdl.Call(get_current_page_ident());
-}
-
-void JSNotebook::set_current_page(const OString& rIdent)
-{
-    bool bForce = false;
-    OString sCurrent = get_current_page_ident();
-    if (sCurrent == rIdent)
-        bForce = true;
-
-    SalInstanceNotebook::set_current_page(rIdent);
-    sendFullUpdate(bForce);
-
-    m_aEnterPageHdl.Call(get_current_page_ident());
-}
-
 void JSNotebook::remove_page(const OString& rIdent)
 {
     SalInstanceNotebook::remove_page(rIdent);

Reply via email to