[Libreoffice-commits] core.git: include/vcl vcl/inc vcl/source

Ras-al-Ghul dipankar1995 at gmail.com
Thu Feb 4 07:22:05 UTC 2016


 include/vcl/window.hxx       |    1 -
 vcl/inc/svdata.hxx           |   11 -----------
 vcl/inc/window.h             |    3 ---
 vcl/source/window/window.cxx |   10 ----------
 4 files changed, 25 deletions(-)

New commits:
commit 881c1c961ea3c0f651a74f637786caf1367a26f3
Author: Ras-al-Ghul <dipankar1995 at gmail.com>
Date:   Thu Feb 4 10:38:41 2016 +0530

    tdf#96888 - Kill internal vcl dog-tags ...
    
    Finally removed struct ImplDelData
    
    Change-Id: Ib2bb4a51b94886b95bca0c84adffc8fd4123e8b8
    Reviewed-on: https://gerrit.libreoffice.org/22093
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Noel Grandin <noelgrandin at gmail.com>

diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx
index d69de6d..11a8106 100644
--- a/include/vcl/window.hxx
+++ b/include/vcl/window.hxx
@@ -40,7 +40,6 @@
 #include <memory>
 
 class VirtualDevice;
-struct ImplDelData;
 struct ImplSVEvent;
 struct ImplWinData;
 struct ImplFrameData;
diff --git a/vcl/inc/svdata.hxx b/vcl/inc/svdata.hxx
index e43b0d4..628f45d 100644
--- a/vcl/inc/svdata.hxx
+++ b/vcl/inc/svdata.hxx
@@ -366,17 +366,6 @@ bool ImplInitAccessBridge();
 FieldUnitStringList* ImplGetFieldUnits();
 FieldUnitStringList* ImplGetCleanedFieldUnits();
 
-// ImplDelData is used as a "dog tag" by a window when it
-// does something that could indirectly destroy the window
-// TODO: wild destruction of a window should not be possible
-
-struct ImplDelData
-{
-    ImplDelData*        mpNext;
-    VclPtr<vcl::Window> mpWindow;
-    bool                mbDel;
-};
-
 struct ImplSVEvent
 {
     void*               mpData;
diff --git a/vcl/inc/window.h b/vcl/inc/window.h
index 5203564..db8bdfb 100644
--- a/vcl/inc/window.h
+++ b/vcl/inc/window.h
@@ -28,8 +28,6 @@
 #include <vector>
 #include <set>
 
-struct ImplDelData;
-
 namespace vcl {
     class Window;
 }
@@ -209,7 +207,6 @@ public:
     // The canvas interface for this VCL window. Is persistent after the first GetCanvas() call
     css::uno::WeakReference< css::rendering::XCanvas >    mxCanvas;
 
-    ImplDelData*        mpFirstDel;
     void*               mpUserData;
     vcl::Cursor*        mpCursor;
     Pointer             maPointer;
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index fbe6496..1d04005 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -510,15 +510,6 @@ void Window::dispose()
     OutputDevice *pOutDev = GetOutDev();
     pOutDev->ReleaseGraphics();
 
-    // notify ImplDelData subscribers of this window about the window deletion
-    ImplDelData* pDelData = mpWindowImpl->mpFirstDel;
-    while ( pDelData )
-    {
-        pDelData->mbDel = true;
-        pDelData->mpWindow.clear();  // #112873# pDel is not associated with a Window anymore
-        pDelData = pDelData->mpNext;
-    }
-
     // remove window from the lists
     ImplRemoveWindow( true );
 
@@ -628,7 +619,6 @@ WindowImpl::WindowImpl( WindowType nType )
     mpLastFocusWindow                   = nullptr;                      // window for focus restore
     mpDlgCtrlDownWindow                 = nullptr;                      // window for dialog control
     mnChildEventListenersIteratingCount = 0;
-    mpFirstDel                          = nullptr;                      // Dtor notification list
     mpUserData                          = nullptr;                      // user data
     mpCursor                            = nullptr;                      // cursor
     mpControlFont                       = nullptr;                      // font properties


More information about the Libreoffice-commits mailing list