[Libreoffice-commits] core.git: 58 commits - avmedia/inc avmedia/source basctl/source chart2/source cui/source dbaccess/source desktop/source editeng/source extensions/source external/glm external/mysqlcppconn forms/source formula/source framework/inc include/formula include/sfx2 include/svtools include/svx include/vcl instsetoo_native/inc_openoffice linguistic/source reportdesign/source sc/inc sc/source sd/inc sd/source sfx2/source starmath/inc starmath/source svtools/source svx/inc svx/source sw/inc sw/source vcl/generic vcl/osx vcl/source

Jennifer Liebel jliebel94 at gmail.com
Tue Dec 9 04:36:09 PST 2014


 avmedia/inc/mediacontrol.hxx                                       |    2 
 avmedia/source/framework/mediacontrol.cxx                          |   13 -
 avmedia/source/framework/soundhandler.cxx                          |   10 
 avmedia/source/framework/soundhandler.hxx                          |    2 
 basctl/source/basicide/baside2.hxx                                 |    2 
 basctl/source/basicide/baside2b.cxx                                |   14 -
 basctl/source/dlged/dlged.cxx                                      |    9 
 basctl/source/inc/dlged.hxx                                        |    2 
 chart2/source/view/charttypes/GL3DBarChart.cxx                     |    9 
 chart2/source/view/inc/GL3DBarChart.hxx                            |    2 
 cui/source/dialogs/cuigaldlg.cxx                                   |   12 -
 cui/source/dialogs/linkdlg.cxx                                     |    4 
 cui/source/dialogs/thesdlg.cxx                                     |    8 
 cui/source/inc/cuigaldlg.hxx                                       |    2 
 cui/source/inc/linkdlg.hxx                                         |    4 
 cui/source/inc/thesdlg.hxx                                         |    2 
 cui/source/options/optjava.cxx                                     |    7 
 cui/source/options/optjava.hxx                                     |    2 
 cui/source/tabpages/backgrnd.cxx                                   |   26 +-
 cui/source/tabpages/chardlg.cxx                                    |    8 
 cui/source/tabpages/macroass.cxx                                   |   10 
 dbaccess/source/ui/inc/JoinTableView.hxx                           |    2 
 dbaccess/source/ui/querydesign/JoinTableView.cxx                   |   18 -
 desktop/source/deployment/gui/dp_gui_dialog2.cxx                   |   20 -
 desktop/source/deployment/gui/dp_gui_dialog2.hxx                   |    4 
 editeng/source/editeng/impedit.hxx                                 |    6 
 editeng/source/editeng/impedit2.cxx                                |    8 
 editeng/source/editeng/impedit3.cxx                                |    2 
 editeng/source/editeng/impedit4.cxx                                |    4 
 editeng/source/editeng/impedit5.cxx                                |    2 
 extensions/source/bibliography/bibcont.cxx                         |    6 
 extensions/source/bibliography/bibcont.hxx                         |    2 
 extensions/source/bibliography/toolbar.cxx                         |    6 
 extensions/source/bibliography/toolbar.hxx                         |    2 
 extensions/source/update/ui/updatecheckui.cxx                      |   12 -
 external/glm/Wshadow-unix.patch                                    |    4 
 external/glm/Wshadow-windows.patch                                 |    4 
 external/mysqlcppconn/patches/cmake.patch                          |    2 
 forms/source/component/ListBox.cxx                                 |   16 -
 forms/source/component/ListBox.hxx                                 |    2 
 formula/source/ui/dlg/formula.cxx                                  |   18 -
 formula/source/ui/dlg/funcutl.cxx                                  |   26 +-
 framework/inc/services/layoutmanager.hxx                           |    4 
 include/formula/funcutl.hxx                                        |    2 
 include/sfx2/dinfdlg.hxx                                           |    4 
 include/svtools/asynclink.hxx                                      |    8 
 include/svtools/filechangedchecker.hxx                             |    2 
 include/svtools/treelistbox.hxx                                    |    2 
 include/svtools/wizdlg.hxx                                         |    2 
 include/svx/fontwork.hxx                                           |    2 
 include/svx/graphctl.hxx                                           |    2 
 include/svx/numvset.hxx                                            |    4 
 include/svx/sidebar/PanelLayout.hxx                                |    2 
 include/vcl/syswin.hxx                                             |    4 
 include/vcl/toolbox.hxx                                            |    2 
 instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt |    2 
 linguistic/source/lngsvcmgr.cxx                                    |    6 
 linguistic/source/lngsvcmgr.hxx                                    |    2 
 reportdesign/source/ui/inc/DesignView.hxx                          |    2 
 reportdesign/source/ui/report/DesignView.cxx                       |   12 -
 sc/inc/chartlis.hxx                                                |    2 
 sc/inc/document.hxx                                                |    2 
 sc/inc/sc.hrc                                                      |    3 
 sc/inc/scmod.hxx                                                   |    4 
 sc/source/core/data/documen2.cxx                                   |   10 
 sc/source/core/tool/chartlis.cxx                                   |   15 -
 sc/source/ui/app/scmod.cxx                                         |   55 +---
 sc/source/ui/dbgui/sfiltdlg.cxx                                    |   20 -
 sc/source/ui/docshell/autostyl.cxx                                 |    6 
 sc/source/ui/formdlg/dwfunctr.cxx                                  |    6 
 sc/source/ui/inc/acredlin.hxx                                      |    4 
 sc/source/ui/inc/anyrefdg.hxx                                      |    2 
 sc/source/ui/inc/autostyl.hxx                                      |    2 
 sc/source/ui/inc/conflictsdlg.hxx                                  |    2 
 sc/source/ui/inc/dwfunctr.hxx                                      |    2 
 sc/source/ui/inc/filtdlg.hxx                                       |    4 
 sc/source/ui/inc/navipi.hxx                                        |    2 
 sc/source/ui/inc/tphfedit.hxx                                      |    2 
 sc/source/ui/miscdlgs/acredlin.cxx                                 |   10 
 sc/source/ui/miscdlgs/anyrefdg.cxx                                 |    6 
 sc/source/ui/miscdlgs/conflictsdlg.cxx                             |    6 
 sc/source/ui/navipi/navipi.cxx                                     |  117 ++++------
 sc/source/ui/pagedlg/tphfedit.cxx                                  |   16 -
 sd/inc/drawdoc.hxx                                                 |    2 
 sd/source/core/drawdoc.cxx                                         |    2 
 sd/source/core/drawdoc4.cxx                                        |   18 -
 sd/source/ui/dlg/brkdlg.cxx                                        |    6 
 sd/source/ui/dlg/dlgass.cxx                                        |   33 +-
 sd/source/ui/dlg/filedlg.cxx                                       |   12 -
 sd/source/ui/framework/configuration/ConfigurationUpdater.cxx      |   19 -
 sd/source/ui/framework/configuration/ConfigurationUpdater.hxx      |    2 
 sd/source/ui/framework/module/ShellStackGuard.cxx                  |   12 -
 sd/source/ui/framework/module/ShellStackGuard.hxx                  |    2 
 sd/source/ui/inc/BreakDlg.hxx                                      |    2 
 sd/source/ui/inc/View.hxx                                          |    4 
 sd/source/ui/slidesorter/cache/SlsCacheCompactor.cxx               |    2 
 sd/source/ui/slidesorter/cache/SlsQueueProcessor.cxx               |   18 -
 sd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx               |    2 
 sd/source/ui/slidesorter/controller/SlsAnimator.cxx                |   12 -
 sd/source/ui/slidesorter/inc/controller/SlsAnimator.hxx            |    2 
 sd/source/ui/view/sdview.cxx                                       |   12 -
 sd/source/ui/view/sdview3.cxx                                      |    8 
 sfx2/source/appl/appcfg.cxx                                        |   17 -
 sfx2/source/appl/newhelp.cxx                                       |   33 +-
 sfx2/source/appl/newhelp.hxx                                       |    6 
 sfx2/source/control/dispatch.cxx                                   |   26 +-
 sfx2/source/dialog/basedlgs.cxx                                    |   28 +-
 sfx2/source/dialog/dinfdlg.cxx                                     |   16 -
 sfx2/source/dialog/dockwin.cxx                                     |   16 -
 sfx2/source/dialog/filedlghelper.cxx                               |   12 -
 sfx2/source/dialog/filedlgimpl.hxx                                 |    2 
 sfx2/source/dialog/templdlg.cxx                                    |   18 -
 sfx2/source/doc/new.cxx                                            |    8 
 sfx2/source/inc/templdgi.hxx                                       |    2 
 starmath/inc/edit.hxx                                              |    4 
 starmath/source/edit.cxx                                           |   36 +--
 svtools/source/contnr/imivctl.hxx                                  |   20 -
 svtools/source/contnr/imivctl1.cxx                                 |   48 ++--
 svtools/source/contnr/svimpbox.cxx                                 |   22 -
 svtools/source/contnr/treelistbox.cxx                              |    8 
 svtools/source/control/asynclink.cxx                               |   18 -
 svtools/source/control/tabbar.cxx                                  |   16 -
 svtools/source/dialogs/wizdlg.cxx                                  |   14 -
 svtools/source/graphic/grfcache.cxx                                |    7 
 svtools/source/graphic/grfcache.hxx                                |    2 
 svtools/source/inc/svimpbox.hxx                                    |    9 
 svtools/source/misc/filechangedchecker.cxx                         |   18 -
 svx/inc/sdr/contact/objectcontactofpageview.hxx                    |    2 
 svx/inc/svdibrow.hxx                                               |    2 
 svx/source/dialog/_contdlg.cxx                                     |   18 -
 svx/source/dialog/contimp.hxx                                      |    4 
 svx/source/dialog/fontwork.cxx                                     |    6 
 svx/source/dialog/graphctl.cxx                                     |    6 
 svx/source/dialog/imapdlg.cxx                                      |    8 
 svx/source/dialog/imapimp.hxx                                      |    2 
 svx/source/dialog/srchdlg.cxx                                      |    8 
 svx/source/dialog/svxbmpnumvalueset.cxx                            |    6 
 svx/source/form/datanavi.cxx                                       |    8 
 svx/source/form/filtnav.cxx                                        |   25 --
 svx/source/form/formcontroller.cxx                                 |   18 -
 svx/source/inc/datanavi.hxx                                        |    4 
 svx/source/inc/eventhandler.hxx                                    |    4 
 svx/source/inc/fmshimp.hxx                                         |    2 
 svx/source/inc/formcontroller.hxx                                  |    2 
 svx/source/sdr/contact/objectcontactofpageview.cxx                 |    2 
 svx/source/sdr/contact/viewobjectcontactofpageobj.cxx              |    4 
 svx/source/sdr/event/eventhandler.cxx                              |    4 
 svx/source/sdr/overlay/overlaymanagerbuffered.cxx                  |    2 
 svx/source/sidebar/PanelLayout.cxx                                 |   10 
 svx/source/stbctrls/modctrl.cxx                                    |   16 -
 svx/source/svdraw/svdibrow.cxx                                     |    8 
 svx/source/svdraw/svdpntv.cxx                                      |    4 
 svx/source/tbxctrls/grafctrl.cxx                                   |    8 
 sw/inc/doc.hxx                                                     |    2 
 sw/source/core/doc/DocumentTimerManager.cxx                        |   16 -
 sw/source/core/doc/docnew.cxx                                      |    6 
 sw/source/core/docnode/threadmanager.cxx                           |   12 -
 sw/source/core/inc/DocumentTimerManager.hxx                        |    2 
 sw/source/core/inc/threadmanager.hxx                               |    2 
 sw/source/ui/dbui/mmoutputtypepage.cxx                             |    8 
 sw/source/ui/envelp/labfmt.cxx                                     |    8 
 sw/source/ui/envelp/labfmt.hxx                                     |    2 
 sw/source/uibase/docvw/edtwin.cxx                                  |    8 
 sw/source/uibase/docvw/srcedtw.cxx                                 |    8 
 sw/source/uibase/inc/edtwin.hxx                                    |    4 
 sw/source/uibase/inc/navipi.hxx                                    |    2 
 sw/source/uibase/inc/srcedtw.hxx                                   |    2 
 sw/source/uibase/inc/unotools.hxx                                  |    2 
 sw/source/uibase/utlui/navipi.cxx                                  |   16 -
 sw/source/uibase/utlui/unotools.cxx                                |   10 
 vcl/generic/print/genprnpsp.cxx                                    |   28 +-
 vcl/osx/salinst.cxx                                                |    8 
 vcl/source/edit/textdat2.hxx                                       |    2 
 vcl/source/edit/textdata.cxx                                       |    5 
 vcl/source/edit/texteng.cxx                                        |    2 
 vcl/source/window/dockmgr.cxx                                      |   26 +-
 vcl/source/window/dockwin.cxx                                      |   14 -
 vcl/source/window/syswin.cxx                                       |   10 
 vcl/source/window/toolbox.cxx                                      |    4 
 vcl/source/window/toolbox2.cxx                                     |    4 
 180 files changed, 789 insertions(+), 861 deletions(-)

New commits:
commit 1367e4b2aff3908b6744c89ec2500b56f30f09b6
Author: Jennifer Liebel <jliebel94 at gmail.com>
Date:   Thu Nov 13 13:10:55 2014 +0000

    changed timers to idle
    
    Change-Id: I05ccb8bd73070462edcc911956859aa7967b5901

diff --git a/framework/inc/services/layoutmanager.hxx b/framework/inc/services/layoutmanager.hxx
index 12e9d30..5635c7f 100644
--- a/framework/inc/services/layoutmanager.hxx
+++ b/framework/inc/services/layoutmanager.hxx
@@ -310,7 +310,7 @@ namespace framework
             css::uno::Reference< ::com::sun::star::container::XNameAccess >             m_xPersistentWindowStateSupplier;
             GlobalSettings*                                                             m_pGlobalSettings;
             OUString                                                                    m_aModuleIdentifier;
-            Idle                                                                        m_aAsyncLayoutIdle;
+            Timer                                                                       m_aAsyncLayoutTimer;
             ::cppu::OMultiTypeInterfaceContainerHelper                                  m_aListenerContainer; // container for ALL Listener
             ToolbarLayoutManager*                                                       m_pToolbarManager;
             css::uno::Reference< ::com::sun::star::ui::XUIConfigurationListener >       m_xToolbarManager;
diff --git a/framework/inc/uielement/toolbarmanager.hxx b/framework/inc/uielement/toolbarmanager.hxx
index 320aa7c..462f48e 100644
--- a/framework/inc/uielement/toolbarmanager.hxx
+++ b/framework/inc/uielement/toolbarmanager.hxx
@@ -208,7 +208,7 @@ class ToolBarManager : public ToolbarManager_Base
 
         CommandToInfoMap                                                                       m_aCommandMap;
         SubToolBarToSubToolBarControllerMap                                                    m_aSubToolBarControllerMap;
-        Idle                                                                                   m_aAsyncUpdateControllersIdle;
+        Timer                                                                                  m_aAsyncUpdateControllersTimer;
         OUString                                                                               m_sIconTheme;
         MenuDescriptionMap m_aMenuMap;
         bool                                                                               m_bAcceleratorCfg;
diff --git a/framework/source/layoutmanager/layoutmanager.cxx b/framework/source/layoutmanager/layoutmanager.cxx
index d3969f2..245b5b0 100644
--- a/framework/source/layoutmanager/layoutmanager.cxx
+++ b/framework/source/layoutmanager/layoutmanager.cxx
@@ -144,8 +144,8 @@ LayoutManager::LayoutManager( const Reference< XComponentContext >& xContext ) :
 
     Application::AddEventListener( LINK( this, LayoutManager, SettingsChanged ) );
 
-    m_aAsyncLayoutIdle.SetPriority( VCL_IDLE_PRIORITY_RESIZE );
-    m_aAsyncLayoutIdle.SetIdleHdl( LINK( this, LayoutManager, AsyncLayoutHdl ) );
+    m_aAsyncLayoutTimer.SetTimeout( 50 );
+    m_aAsyncLayoutTimer.SetTimeoutHdl( LINK( this, LayoutManager, AsyncLayoutHdl ) );
 
     registerProperty( LAYOUTMANAGER_PROPNAME_AUTOMATICTOOLBARS, LAYOUTMANAGER_PROPHANDLE_AUTOMATICTOOLBARS, css::beans::PropertyAttribute::TRANSIENT, &m_bAutomaticToolbars, ::getCppuType( &m_bAutomaticToolbars ) );
     registerProperty( LAYOUTMANAGER_PROPNAME_HIDECURRENTUI, LAYOUTMANAGER_PROPHANDLE_HIDECURRENTUI, beans::PropertyAttribute::TRANSIENT, &m_bHideCurrentUI, ::getCppuType( &m_bHideCurrentUI ) );
@@ -158,7 +158,7 @@ LayoutManager::LayoutManager( const Reference< XComponentContext >& xContext ) :
 LayoutManager::~LayoutManager()
 {
     Application::RemoveEventListener( LINK( this, LayoutManager, SettingsChanged ) );
-    m_aAsyncLayoutIdle.Stop();
+    m_aAsyncLayoutTimer.Stop();
     setDockingAreaAcceptor(NULL);
     delete m_pGlobalSettings;
 }
@@ -1256,7 +1256,7 @@ throw ( RuntimeException, std::exception )
 
     // IMPORTANT: Be sure to stop layout timer if don't have a docking area acceptor!
     if ( !xDockingAreaAcceptor.is() )
-        m_aAsyncLayoutIdle.Stop();
+        m_aAsyncLayoutTimer.Stop();
 
     bool bAutomaticToolbars( m_bAutomaticToolbars );
     std::vector< Reference< awt::XWindow > > oldDockingAreaWindows;
@@ -1264,7 +1264,7 @@ throw ( RuntimeException, std::exception )
     ToolbarLayoutManager* pToolbarManager = m_pToolbarManager;
 
     if ( !xDockingAreaAcceptor.is() )
-        m_aAsyncLayoutIdle.Stop();
+        m_aAsyncLayoutTimer.Stop();
 
     // Remove listener from old docking area acceptor
     if ( m_xDockingAreaAcceptor.is() )
@@ -2265,7 +2265,7 @@ throw (RuntimeException, std::exception)
 
     SolarMutexClearableGuard aWriteLock;
         if ( bDoLayout )
-                m_aAsyncLayoutIdle.Stop();
+                m_aAsyncLayoutTimer.Stop();
         aWriteLock.clear();
 
     Any a( nLockCount );
@@ -2664,14 +2664,14 @@ throw( uno::RuntimeException, std::exception )
         // application modules need this. So we have to check if this is the first
         // call after the async layout time expired.
         m_bMustDoLayout = true;
-        if ( !m_aAsyncLayoutIdle.IsActive() )
+        if ( !m_aAsyncLayoutTimer.IsActive() )
         {
-            const Link& aLink = m_aAsyncLayoutIdle.GetTimeoutHdl();
+            const Link& aLink = m_aAsyncLayoutTimer.GetTimeoutHdl();
             if ( aLink.IsSet() )
-                aLink.Call( &m_aAsyncLayoutIdle );
+                aLink.Call( &m_aAsyncLayoutTimer );
         }
         if ( m_nLockCount == 0 )
-            m_aAsyncLayoutIdle.Start();
+            m_aAsyncLayoutTimer.Start();
     }
     else if ( m_xFrame.is() && aEvent.Source == m_xFrame->getContainerWindow() )
     {
@@ -2741,7 +2741,7 @@ void SAL_CALL LayoutManager::windowHidden( const lang::EventObject& aEvent ) thr
 IMPL_LINK_NOARG(LayoutManager, AsyncLayoutHdl)
 {
     SolarMutexClearableGuard aReadLock;
-    m_aAsyncLayoutIdle.Stop();
+    m_aAsyncLayoutTimer.Stop();
 
     if( !m_xContainerWindow.is() )
         return 0;
diff --git a/framework/source/uielement/toolbarmanager.cxx b/framework/source/uielement/toolbarmanager.cxx
index c1630fa..c966532 100644
--- a/framework/source/uielement/toolbarmanager.cxx
+++ b/framework/source/uielement/toolbarmanager.cxx
@@ -235,15 +235,15 @@ ToolBarManager::ToolBarManager( const Reference< XComponentContext >& rxContext,
     aHelpIdAsString += OUStringToOString( aToolbarName, RTL_TEXTENCODING_UTF8 );;
     m_pToolBar->SetHelpId( aHelpIdAsString );
 
-    m_aAsyncUpdateControllersIdle.SetPriority( VCL_IDLE_PRIORITY_MEDIUM );
-    m_aAsyncUpdateControllersIdle.SetIdleHdl( LINK( this, ToolBarManager, AsyncUpdateControllersHdl ) );
+    m_aAsyncUpdateControllersTimer.SetTimeout( 50 );
+    m_aAsyncUpdateControllersTimer.SetTimeoutHdl( LINK( this, ToolBarManager, AsyncUpdateControllersHdl ) );
 
     SvtMiscOptions().AddListenerLink( LINK( this, ToolBarManager, MiscOptionsChanged ) );
 }
 
 ToolBarManager::~ToolBarManager()
 {
-    assert(!m_aAsyncUpdateControllersIdle.IsActive());
+    assert(!m_aAsyncUpdateControllersTimer.IsActive());
     OSL_ASSERT( m_pToolBar == 0 );
     OSL_ASSERT( !m_bAddedToTaskPaneList );
 }
@@ -477,7 +477,7 @@ throw ( RuntimeException, std::exception )
     SolarMutexGuard g;
     if ( Action.Action == FrameAction_CONTEXT_CHANGED )
     {
-        m_aAsyncUpdateControllersIdle.Start();
+        m_aAsyncUpdateControllersTimer.Start();
     }
 }
 
@@ -631,7 +631,7 @@ void SAL_CALL ToolBarManager::dispose() throw( RuntimeException, std::exception
 
         // stop timer to prevent timer events after dispose
         // do it last because other calls could restart timer in StateChanged()
-        m_aAsyncUpdateControllersIdle.Stop();
+        m_aAsyncUpdateControllersTimer.Stop();
 
         m_bDisposed = true;
     }
@@ -1417,7 +1417,7 @@ void ToolBarManager::FillToolbar( const Reference< XIndexAccess >& rItemContaine
         UpdateControllers();
     else if ( m_pToolBar->IsReallyVisible() )
     {
-        m_aAsyncUpdateControllersIdle.Start();
+        m_aAsyncUpdateControllersTimer.Start();
     }
 
     // Try to retrieve UIName from the container property set and set it as the title
@@ -2053,12 +2053,12 @@ IMPL_LINK( ToolBarManager, StateChanged, StateChangedType*, pStateChangedType )
     {
         if ( m_pToolBar->IsReallyVisible() )
         {
-            m_aAsyncUpdateControllersIdle.Start();
+            m_aAsyncUpdateControllersTimer.Start();
         }
     }
     else if ( *pStateChangedType == StateChangedType::INITSHOW )
     {
-        m_aAsyncUpdateControllersIdle.Start();
+        m_aAsyncUpdateControllersTimer.Start();
     }
     return 1;
 }
@@ -2113,7 +2113,7 @@ IMPL_LINK_NOARG(ToolBarManager, AsyncUpdateControllersHdl)
         return 1;
 
     // Request to update our controllers
-    m_aAsyncUpdateControllersIdle.Stop();
+    m_aAsyncUpdateControllersTimer.Stop();
     UpdateControllers();
 
     return 0;
commit 7357dec92c267a6c6fef87fe56efcc01aa90077c
Author: Eike Rathke <erack at redhat.com>
Date:   Sat Nov 15 02:00:16 2014 +0100

    fdo#73695 prevent use of invalidated iterator due to re-entrance
    
    ... through the UNO backdoor..
    While charts are updated there can be chart data listeners in BASIC that
    in turn modify things such that charts are inserted/removed from the
    listener chain, invalidating the iterator. If that happens break and
    bail out instead of crashing. Not ideal, but..
    
    Change-Id: Iefb33d3a96d79caed0ee4e19b73e8f811ef3d937

diff --git a/sc/source/core/tool/chartlis.cxx b/sc/source/core/tool/chartlis.cxx
index b5f6709..bf16b3e 100644
--- a/sc/source/core/tool/chartlis.cxx
+++ b/sc/source/core/tool/chartlis.cxx
@@ -619,8 +619,8 @@ void ScChartListenerCollection::UpdateDirtyCharts()
 
         if (meModifiedDuringUpdate == SC_CLCUPDATE_MODIFIED)
             break;      // iterator is invalid
-        
-	if (aIdle.IsActive() && !pDoc->IsImportingXML())
+
+        if (aIdle.IsActive() && !pDoc->IsImportingXML())
             break;                      // one interfered
     }
     meModifiedDuringUpdate = SC_CLCUPDATE_NONE;
commit c7e16c28618457fe53fb5abb20fb8783bda66e87
Author: Christian M. Heller <christian.heller63 at gmail.com>
Date:   Sun Nov 2 03:05:01 2014 -0500

    fdo#39468 Translate German Comments - sc/source/core/data/documen2.cxx
    
    Change-Id: I9a426f40f8cdce1f1ebe207dd9ada8154d8fde46
    Reviewed-on: https://gerrit.libreoffice.org/12195
    Reviewed-by: Samuel Mehrbrodt <s.mehrbrodt at gmail.com>
    Tested-by: Samuel Mehrbrodt <s.mehrbrodt at gmail.com>
    
    merge fixes
    
    Change-Id: Ibca73c7099739790e1659a24841f168a2c06b71e

diff --git a/sc/source/core/data/documen2.cxx b/sc/source/core/data/documen2.cxx
index bb6f174..35503d7 100644
--- a/sc/source/core/data/documen2.cxx
+++ b/sc/source/core/data/documen2.cxx
@@ -331,7 +331,7 @@ void ScDocument::SetChangeTrack( ScChangeTrack* pTrack )
 
 IMPL_LINK_NOARG(ScDocument, TrackTimeHdl)
 {
-    if ( ScDdeLink::IsInUpdate() )      // don't nest it
+    if ( ScDdeLink::IsInUpdate() )      // do not nest
     {
         aTrackIdle.Start();            // try again later
     }
@@ -364,7 +364,7 @@ void ScDocument::SetExpandRefs( bool bVal )
 
 void ScDocument::StartTrackTimer()
 {
-    if (!aTrackIdle.IsActive())        // don't postpone forever
+    if (!aTrackIdle.IsActive())        // do not postpone for forever
         aTrackIdle.Start();
 }
 
commit b2926518e17ef18e24dd5ed51726c073ddea6f36
Author: Jennifer Liebel <jliebel94 at gmail.com>
Date:   Mon Nov 10 14:57:14 2014 +0000

    changed timers to idle
    
    Change-Id: I5846940cc45781f4a0264047107dbb568604d543

diff --git a/sc/source/core/data/documen2.cxx b/sc/source/core/data/documen2.cxx
index 35503d7..bb6f174 100644
--- a/sc/source/core/data/documen2.cxx
+++ b/sc/source/core/data/documen2.cxx
@@ -331,7 +331,7 @@ void ScDocument::SetChangeTrack( ScChangeTrack* pTrack )
 
 IMPL_LINK_NOARG(ScDocument, TrackTimeHdl)
 {
-    if ( ScDdeLink::IsInUpdate() )      // do not nest
+    if ( ScDdeLink::IsInUpdate() )      // don't nest it
     {
         aTrackIdle.Start();            // try again later
     }
@@ -364,7 +364,7 @@ void ScDocument::SetExpandRefs( bool bVal )
 
 void ScDocument::StartTrackTimer()
 {
-    if (!aTrackIdle.IsActive())        // do not postpone for forever
+    if (!aTrackIdle.IsActive())        // don't postpone forever
         aTrackIdle.Start();
 }
 
commit a75c8443ba03aca54946edbdc5b21aca99c52799
Author: Jennifer Liebel <jliebel94 at gmail.com>
Date:   Thu Nov 6 14:18:54 2014 +0000

    changed timers to idles
    
    Change-Id: Ic045e0c066ff1f607f0582b88e72375efaaa708f

diff --git a/svtools/source/contnr/svimpbox.cxx b/svtools/source/contnr/svimpbox.cxx
index a72df0f..0162b97 100644
--- a/svtools/source/contnr/svimpbox.cxx
+++ b/svtools/source/contnr/svimpbox.cxx
@@ -89,8 +89,8 @@ SvImpLBox::SvImpLBox( SvTreeListBox* pLBView, SvTreeList* pLBTree, WinBits nWinS
     nNodeBmpWidth       = 0;
 
     bAsyncBeginDrag     = false;
-    aAsyncBeginDragTimer.SetTimeout(0);
-    aAsyncBeginDragTimer.SetTimeoutHdl( LINK(this,SvImpLBox,BeginDragHdl));
+    aAsyncBeginDragIdle.SetPriority( VCL_IDLE_PRIORITY_HIGHEST );
+    aAsyncBeginDragIdle.SetIdleHdl( LINK(this,SvImpLBox,BeginDragHdl));
     // button animation in listbox
     pActiveButton = 0;
     pActiveEntry = 0;
@@ -2933,7 +2933,7 @@ void SvImpLBox::BeginDrag()
     else
     {
         aAsyncBeginDragPos = aSelEng.GetMousePosPixel();
-        aAsyncBeginDragTimer.Start();
+        aAsyncBeginDragIdle.Start();
     }
 }
 
diff --git a/svtools/source/inc/svimpbox.hxx b/svtools/source/inc/svimpbox.hxx
index c98b62c..84a5235 100644
--- a/svtools/source/inc/svimpbox.hxx
+++ b/svtools/source/inc/svimpbox.hxx
@@ -125,7 +125,7 @@ private:
     Size                aOutputSize;
     SelectionEngine     aSelEng;
     ImpLBSelEng         aFctSet;
-    Timer               aAsyncBeginDragTimer;
+    Idle                aAsyncBeginDragIdle;
     Point               aAsyncBeginDragPos;
 
     long                nYoffsNodeBmp;
commit 439c8eba1180a2890266f2f01801d5d0a73fbe09
Author: Jennifer Liebel <jliebel94 at gmail.com>
Date:   Thu Nov 6 11:52:02 2014 +0000

    changed some timer to idle
    
    Change-Id: If137dbd80f7260d9507e48709d3f0f14b60a25f6

diff --git a/framework/inc/services/layoutmanager.hxx b/framework/inc/services/layoutmanager.hxx
index 5635c7f..12e9d30 100644
--- a/framework/inc/services/layoutmanager.hxx
+++ b/framework/inc/services/layoutmanager.hxx
@@ -310,7 +310,7 @@ namespace framework
             css::uno::Reference< ::com::sun::star::container::XNameAccess >             m_xPersistentWindowStateSupplier;
             GlobalSettings*                                                             m_pGlobalSettings;
             OUString                                                                    m_aModuleIdentifier;
-            Timer                                                                       m_aAsyncLayoutTimer;
+            Idle                                                                        m_aAsyncLayoutIdle;
             ::cppu::OMultiTypeInterfaceContainerHelper                                  m_aListenerContainer; // container for ALL Listener
             ToolbarLayoutManager*                                                       m_pToolbarManager;
             css::uno::Reference< ::com::sun::star::ui::XUIConfigurationListener >       m_xToolbarManager;
diff --git a/framework/inc/uielement/toolbarmanager.hxx b/framework/inc/uielement/toolbarmanager.hxx
index 462f48e..320aa7c 100644
--- a/framework/inc/uielement/toolbarmanager.hxx
+++ b/framework/inc/uielement/toolbarmanager.hxx
@@ -208,7 +208,7 @@ class ToolBarManager : public ToolbarManager_Base
 
         CommandToInfoMap                                                                       m_aCommandMap;
         SubToolBarToSubToolBarControllerMap                                                    m_aSubToolBarControllerMap;
-        Timer                                                                                  m_aAsyncUpdateControllersTimer;
+        Idle                                                                                   m_aAsyncUpdateControllersIdle;
         OUString                                                                               m_sIconTheme;
         MenuDescriptionMap m_aMenuMap;
         bool                                                                               m_bAcceleratorCfg;
diff --git a/framework/source/layoutmanager/layoutmanager.cxx b/framework/source/layoutmanager/layoutmanager.cxx
index 245b5b0..d3969f2 100644
--- a/framework/source/layoutmanager/layoutmanager.cxx
+++ b/framework/source/layoutmanager/layoutmanager.cxx
@@ -144,8 +144,8 @@ LayoutManager::LayoutManager( const Reference< XComponentContext >& xContext ) :
 
     Application::AddEventListener( LINK( this, LayoutManager, SettingsChanged ) );
 
-    m_aAsyncLayoutTimer.SetTimeout( 50 );
-    m_aAsyncLayoutTimer.SetTimeoutHdl( LINK( this, LayoutManager, AsyncLayoutHdl ) );
+    m_aAsyncLayoutIdle.SetPriority( VCL_IDLE_PRIORITY_RESIZE );
+    m_aAsyncLayoutIdle.SetIdleHdl( LINK( this, LayoutManager, AsyncLayoutHdl ) );
 
     registerProperty( LAYOUTMANAGER_PROPNAME_AUTOMATICTOOLBARS, LAYOUTMANAGER_PROPHANDLE_AUTOMATICTOOLBARS, css::beans::PropertyAttribute::TRANSIENT, &m_bAutomaticToolbars, ::getCppuType( &m_bAutomaticToolbars ) );
     registerProperty( LAYOUTMANAGER_PROPNAME_HIDECURRENTUI, LAYOUTMANAGER_PROPHANDLE_HIDECURRENTUI, beans::PropertyAttribute::TRANSIENT, &m_bHideCurrentUI, ::getCppuType( &m_bHideCurrentUI ) );
@@ -158,7 +158,7 @@ LayoutManager::LayoutManager( const Reference< XComponentContext >& xContext ) :
 LayoutManager::~LayoutManager()
 {
     Application::RemoveEventListener( LINK( this, LayoutManager, SettingsChanged ) );
-    m_aAsyncLayoutTimer.Stop();
+    m_aAsyncLayoutIdle.Stop();
     setDockingAreaAcceptor(NULL);
     delete m_pGlobalSettings;
 }
@@ -1256,7 +1256,7 @@ throw ( RuntimeException, std::exception )
 
     // IMPORTANT: Be sure to stop layout timer if don't have a docking area acceptor!
     if ( !xDockingAreaAcceptor.is() )
-        m_aAsyncLayoutTimer.Stop();
+        m_aAsyncLayoutIdle.Stop();
 
     bool bAutomaticToolbars( m_bAutomaticToolbars );
     std::vector< Reference< awt::XWindow > > oldDockingAreaWindows;
@@ -1264,7 +1264,7 @@ throw ( RuntimeException, std::exception )
     ToolbarLayoutManager* pToolbarManager = m_pToolbarManager;
 
     if ( !xDockingAreaAcceptor.is() )
-        m_aAsyncLayoutTimer.Stop();
+        m_aAsyncLayoutIdle.Stop();
 
     // Remove listener from old docking area acceptor
     if ( m_xDockingAreaAcceptor.is() )
@@ -2265,7 +2265,7 @@ throw (RuntimeException, std::exception)
 
     SolarMutexClearableGuard aWriteLock;
         if ( bDoLayout )
-                m_aAsyncLayoutTimer.Stop();
+                m_aAsyncLayoutIdle.Stop();
         aWriteLock.clear();
 
     Any a( nLockCount );
@@ -2664,14 +2664,14 @@ throw( uno::RuntimeException, std::exception )
         // application modules need this. So we have to check if this is the first
         // call after the async layout time expired.
         m_bMustDoLayout = true;
-        if ( !m_aAsyncLayoutTimer.IsActive() )
+        if ( !m_aAsyncLayoutIdle.IsActive() )
         {
-            const Link& aLink = m_aAsyncLayoutTimer.GetTimeoutHdl();
+            const Link& aLink = m_aAsyncLayoutIdle.GetTimeoutHdl();
             if ( aLink.IsSet() )
-                aLink.Call( &m_aAsyncLayoutTimer );
+                aLink.Call( &m_aAsyncLayoutIdle );
         }
         if ( m_nLockCount == 0 )
-            m_aAsyncLayoutTimer.Start();
+            m_aAsyncLayoutIdle.Start();
     }
     else if ( m_xFrame.is() && aEvent.Source == m_xFrame->getContainerWindow() )
     {
@@ -2741,7 +2741,7 @@ void SAL_CALL LayoutManager::windowHidden( const lang::EventObject& aEvent ) thr
 IMPL_LINK_NOARG(LayoutManager, AsyncLayoutHdl)
 {
     SolarMutexClearableGuard aReadLock;
-    m_aAsyncLayoutTimer.Stop();
+    m_aAsyncLayoutIdle.Stop();
 
     if( !m_xContainerWindow.is() )
         return 0;
diff --git a/framework/source/uielement/toolbarmanager.cxx b/framework/source/uielement/toolbarmanager.cxx
index 825714c..c1630fa 100644
--- a/framework/source/uielement/toolbarmanager.cxx
+++ b/framework/source/uielement/toolbarmanager.cxx
@@ -235,8 +235,8 @@ ToolBarManager::ToolBarManager( const Reference< XComponentContext >& rxContext,
     aHelpIdAsString += OUStringToOString( aToolbarName, RTL_TEXTENCODING_UTF8 );;
     m_pToolBar->SetHelpId( aHelpIdAsString );
 
-    m_aAsyncUpdateControllersTimer.SetTimeout( 50 );
-    m_aAsyncUpdateControllersTimer.SetTimeoutHdl( LINK( this, ToolBarManager, AsyncUpdateControllersHdl ) );
+    m_aAsyncUpdateControllersIdle.SetPriority( VCL_IDLE_PRIORITY_MEDIUM );
+    m_aAsyncUpdateControllersIdle.SetIdleHdl( LINK( this, ToolBarManager, AsyncUpdateControllersHdl ) );
 
     SvtMiscOptions().AddListenerLink( LINK( this, ToolBarManager, MiscOptionsChanged ) );
 }
@@ -477,7 +477,7 @@ throw ( RuntimeException, std::exception )
     SolarMutexGuard g;
     if ( Action.Action == FrameAction_CONTEXT_CHANGED )
     {
-        m_aAsyncUpdateControllersTimer.Start();
+        m_aAsyncUpdateControllersIdle.Start();
     }
 }
 
@@ -1417,7 +1417,7 @@ void ToolBarManager::FillToolbar( const Reference< XIndexAccess >& rItemContaine
         UpdateControllers();
     else if ( m_pToolBar->IsReallyVisible() )
     {
-        m_aAsyncUpdateControllersTimer.Start();
+        m_aAsyncUpdateControllersIdle.Start();
     }
 
     // Try to retrieve UIName from the container property set and set it as the title
@@ -2053,12 +2053,12 @@ IMPL_LINK( ToolBarManager, StateChanged, StateChangedType*, pStateChangedType )
     {
         if ( m_pToolBar->IsReallyVisible() )
         {
-            m_aAsyncUpdateControllersTimer.Start();
+            m_aAsyncUpdateControllersIdle.Start();
         }
     }
     else if ( *pStateChangedType == StateChangedType::INITSHOW )
     {
-        m_aAsyncUpdateControllersTimer.Start();
+        m_aAsyncUpdateControllersIdle.Start();
     }
     return 1;
 }
@@ -2113,7 +2113,7 @@ IMPL_LINK_NOARG(ToolBarManager, AsyncUpdateControllersHdl)
         return 1;
 
     // Request to update our controllers
-    m_aAsyncUpdateControllersTimer.Stop();
+    m_aAsyncUpdateControllersIdle.Stop();
     UpdateControllers();
 
     return 0;
commit d22bfb3c679810aa1d7d8db1cb0652b7e3b7f328
Author: Jennifer Liebel <jliebel94 at gmail.com>
Date:   Wed Nov 5 09:08:02 2014 +0000

    changed timers to idles
    
    Change-Id: Iebde351b3bfca907a7730b7af379efb040cbeae2

diff --git a/sc/source/core/tool/chartlis.cxx b/sc/source/core/tool/chartlis.cxx
index bf16b3e..b5f6709 100644
--- a/sc/source/core/tool/chartlis.cxx
+++ b/sc/source/core/tool/chartlis.cxx
@@ -619,8 +619,8 @@ void ScChartListenerCollection::UpdateDirtyCharts()
 
         if (meModifiedDuringUpdate == SC_CLCUPDATE_MODIFIED)
             break;      // iterator is invalid
-
-        if (aIdle.IsActive() && !pDoc->IsImportingXML())
+        
+	if (aIdle.IsActive() && !pDoc->IsImportingXML())
             break;                      // one interfered
     }
     meModifiedDuringUpdate = SC_CLCUPDATE_NONE;
commit c9cc78bb283b8744d9f1e629fa95aa87b94adf81
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Tue Nov 25 10:12:55 2014 +0000

    We now only need one bit of information here
    
    whether there *is* an id, or whether there is not an id.  An id of 0 seems to
    be used as a flag that an interface is some sort of superclass which can be
    subclassed by something else and have its toolbars etc reused.
    
    Convert this to a bool so we don't need an a resource id for each one and just
    drop the third arg for the normal "final" case and use a different define for
    the inheritable case
    
    Change-Id: I98380f03d73d57bf8cba02d339097e384518abaa

diff --git a/sc/source/ui/app/scmod.cxx b/sc/source/ui/app/scmod.cxx
index 80a7de3..09cca3b 100644
--- a/sc/source/ui/app/scmod.cxx
+++ b/sc/source/ui/app/scmod.cxx
@@ -112,7 +112,7 @@
 #include "formulagroup.hxx"
 #include <documentlinkmgr.hxx>
 
-SFX_IMPL_INTERFACE(ScModule, SfxShell, ScResId(RID_APPTITLE))
+SFX_IMPL_INTERFACE(ScModule, SfxShell)
 
 void ScModule::InitInterface_Impl()
 {
commit f43162b09c4876cec317b83e2d6c1afbd8576001
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Mon Nov 24 13:09:41 2014 +0000

    move RID_APPTITLE to desktop where its used
    
    rename the other ones and remove the unused ones
    
    Change-Id: I0e636cd5d1799e0f9cb815a4bfa20b16039ecb3f

diff --git a/sc/inc/sc.hrc b/sc/inc/sc.hrc
index f76a45a..a9da8bf 100644
--- a/sc/inc/sc.hrc
+++ b/sc/inc/sc.hrc
@@ -990,7 +990,8 @@
 #define STR_TITLE_AUTHOR        (STR_START + 442)
 #define STR_TITLE_DATE          (STR_START + 443)
 #define STR_UNKNOWN_USER_CONFLICT    (STR_START + 444)
-#define STR_END                 (STR_UNKNOWN_USER_CONFLICT)
+#define RID_SC_NAME             (STR_START + 445)
+#define STR_END                 (RID_SC_NAME)
 
 #define BMP_START               (STR_END)
 
commit e4200feb14f54db6d70e9b39c0ecb73ac1a8372c
Author: Jennifer Liebel <jliebel94 at gmail.com>
Date:   Mon Nov 10 14:57:14 2014 +0000

    changed timers to idle
    
    Change-Id: I5846940cc45781f4a0264047107dbb568604d543

diff --git a/framework/source/uielement/toolbarmanager.cxx b/framework/source/uielement/toolbarmanager.cxx
index c966532..825714c 100644
--- a/framework/source/uielement/toolbarmanager.cxx
+++ b/framework/source/uielement/toolbarmanager.cxx
@@ -243,7 +243,7 @@ ToolBarManager::ToolBarManager( const Reference< XComponentContext >& rxContext,
 
 ToolBarManager::~ToolBarManager()
 {
-    assert(!m_aAsyncUpdateControllersTimer.IsActive());
+    assert(!m_aAsyncUpdateControllersIdle.IsActive());
     OSL_ASSERT( m_pToolBar == 0 );
     OSL_ASSERT( !m_bAddedToTaskPaneList );
 }
@@ -631,7 +631,7 @@ void SAL_CALL ToolBarManager::dispose() throw( RuntimeException, std::exception
 
         // stop timer to prevent timer events after dispose
         // do it last because other calls could restart timer in StateChanged()
-        m_aAsyncUpdateControllersTimer.Stop();
+        m_aAsyncUpdateControllersIdle.Stop();
 
         m_bDisposed = true;
     }
commit 9fe256e56d80a310538e55c3730a6321282b0716
Author: Tobias Madl <tobias.madl.dev at gmail.com>
Date:   Thu Dec 4 09:31:30 2014 +0000

    changed inherited timer to idle
    
    Change-Id: I9da6d08964c32e4aafbc9cebc7840eb517f9c33a

diff --git a/svx/inc/sdr/contact/objectcontactofpageview.hxx b/svx/inc/sdr/contact/objectcontactofpageview.hxx
index d8ea21f..90706b9 100644
--- a/svx/inc/sdr/contact/objectcontactofpageview.hxx
+++ b/svx/inc/sdr/contact/objectcontactofpageview.hxx
@@ -34,7 +34,7 @@ namespace sdr
 {
     namespace contact
     {
-        class ObjectContactOfPageView : public ObjectContact, public Timer
+        class ObjectContactOfPageView : public ObjectContact, public Idle
         {
         protected:
             // the owner of this ObjectContactOfPageView. Set from constructor and not
diff --git a/svx/source/inc/eventhandler.hxx b/svx/source/inc/eventhandler.hxx
index 3c7670c..f3a31de 100644
--- a/svx/source/inc/eventhandler.hxx
+++ b/svx/source/inc/eventhandler.hxx
@@ -92,10 +92,10 @@ namespace sdr
 {
     namespace event
     {
-        class TimerEventHandler : public EventHandler, public Timer
+        class TimerEventHandler : public EventHandler, public Idle
         {
         public:
-            TimerEventHandler(sal_uInt32 nTimeout = 1L);
+            TimerEventHandler(IdlePriority ePriority = VCL_IDLE_PRIORITY_HIGH);
 
             virtual ~TimerEventHandler();
 
diff --git a/svx/source/sdr/contact/objectcontactofpageview.cxx b/svx/source/sdr/contact/objectcontactofpageview.cxx
index e2a1357..d3dfe2d 100644
--- a/svx/source/sdr/contact/objectcontactofpageview.cxx
+++ b/svx/source/sdr/contact/objectcontactofpageview.cxx
@@ -59,7 +59,7 @@ namespace sdr
             setPreviewRenderer(((SdrPaintView&)rPageWindow.GetPageView().GetView()).IsPreviewRenderer());
 
             // init timer
-            SetTimeout(1);
+            SetPriority(VCL_IDLE_PRIORITY_HIGH);
             Stop();
         }
 
diff --git a/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx b/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
index 8e65fb0..007dc7d 100644
--- a/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
+++ b/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
@@ -36,7 +36,7 @@ using namespace com::sun::star;
 
 namespace sdr { namespace contact {
 
-class PagePrimitiveExtractor : public ObjectContactOfPagePainter, public Timer
+class PagePrimitiveExtractor : public ObjectContactOfPagePainter, public Idle
 {
 private:
     // the ViewObjectContactOfPageObj using this painter
@@ -83,7 +83,7 @@ PagePrimitiveExtractor::PagePrimitiveExtractor(
     setPreviewRenderer(true);
 
     // init timer
-    SetTimeout(1);
+    SetPriority(VCL_IDLE_PRIORITY_HIGH);
     Stop();
 }
 
diff --git a/svx/source/sdr/event/eventhandler.cxx b/svx/source/sdr/event/eventhandler.cxx
index cf9b2f5..14156c42 100644
--- a/svx/source/sdr/event/eventhandler.cxx
+++ b/svx/source/sdr/event/eventhandler.cxx
@@ -121,9 +121,9 @@ namespace sdr
 {
     namespace event
     {
-        TimerEventHandler::TimerEventHandler(sal_uInt32 nTimeout)
+        TimerEventHandler::TimerEventHandler(IdlePriority ePriority)
         {
-            SetTimeout(nTimeout);
+            SetPriority(ePriority);
             Stop();
         }
 
commit 51b025922ac8387dd749cb359e5188e74ede2213
Author: Tobias Madl <tobias.madl.dev at gmail.com>
Date:   Wed Dec 3 10:16:28 2014 +0000

    changed inherited timers to idle
    
    Change-Id: I1d70d4d2fe8573d0f120f2a1ece83f504d5efde5

diff --git a/editeng/source/editeng/impedit5.cxx b/editeng/source/editeng/impedit5.cxx
index df59f11..d362f25 100644
--- a/editeng/source/editeng/impedit5.cxx
+++ b/editeng/source/editeng/impedit5.cxx
@@ -802,7 +802,7 @@ void IdleFormattter::ForceTimeout()
     if ( IsActive() )
     {
         Stop();
-        ((Link&)GetTimeoutHdl()).Call( this );
+        ((Link&)GetIdleHdl()).Call( this );
     }
 }
 
diff --git a/vcl/osx/salinst.cxx b/vcl/osx/salinst.cxx
index 1471a01..9979842 100644
--- a/vcl/osx/salinst.cxx
+++ b/vcl/osx/salinst.cxx
@@ -69,7 +69,7 @@ static NSMenu* pDockMenu = nil;
 static bool bNoSVMain = true;
 static bool bLeftMain = false;
 
-class AquaDelayedSettingsChanged : public Timer
+class AquaDelayedSettingsChanged : public Idle
 {
     bool            mbInvalidate;
     public:
@@ -101,9 +101,9 @@ class AquaDelayedSettingsChanged : public Timer
 void AquaSalInstance::delayedSettingsChanged( bool bInvalidate )
 {
     osl::Guard< comphelper::SolarMutex > aGuard( *mpSalYieldMutex );
-    AquaDelayedSettingsChanged* pTimer = new AquaDelayedSettingsChanged( bInvalidate );
-    pTimer->SetTimeout( 50 );
-    pTimer->Start();
+    AquaDelayedSettingsChanged* pIdle = new AquaDelayedSettingsChanged( bInvalidate );
+    pIdle->SetPriority( VCL_IDLE_PRIORITY_MEDIUM );
+    pIdle->Start();
 }
 
 // the AppEventList must be available before any SalData/SalInst/etc. objects are ready
commit 9c9700ea88757aa36fa749fdefd08c5d5c71314f
Author: Tobias Madl <tobias.madl.dev at gmail.com>
Date:   Mon Nov 24 10:34:56 2014 +0000

    adapted priority to repaint
    
    Change-Id: I6a780e93bcd0621d75222e182eb100694e02448d

diff --git a/svx/source/svdraw/svdpntv.cxx b/svx/source/svdraw/svdpntv.cxx
index 5e69118..0643992 100644
--- a/svx/source/svdraw/svdpntv.cxx
+++ b/svx/source/svdraw/svdpntv.cxx
@@ -190,7 +190,7 @@ void SdrPaintView::ImpClearVars()
     pDefaultStyleSheet=NULL;
     bSomeObjChgdFlag=false;
     nGraphicManagerDrawMode = GRFMGR_DRAW_STANDARD;
-    aComeBackIdle.SetPriority(VCL_IDLE_PRIORITY_HIGH);
+    aComeBackIdle.SetPriority(VCL_IDLE_PRIORITY_REPAINT);
     aComeBackIdle.SetIdleHdl(LINK(this,SdrPaintView,ImpComeBackHdl));
 
     if (pMod)
commit afa5bded785eeaea668f1bff5f9ffa0a0c788032
Author: Tobias Madl <tobias.madl.dev at gmail.com>
Date:   Fri Nov 21 21:16:47 2014 +0000

    timers: Timer never started, remove it completely.
    
    Change-Id: I119529498f4bea014e5e0d3d81c39203080ff1c4

diff --git a/basctl/source/dlged/dlged.cxx b/basctl/source/dlged/dlged.cxx
index 2ba6fcf..986ccfbe 100644
--- a/basctl/source/dlged/dlged.cxx
+++ b/basctl/source/dlged/dlged.cxx
@@ -475,7 +475,6 @@ bool DlgEditor::KeyInput( const KeyEvent& rKEvt )
 void DlgEditor::Paint( const Rectangle& rRect )
 {
     aPaintRect = rRect;
-
     mnPaintGuard++;
 
     Size aMacSize;
commit b35820c000788eba3c50aa659f4174d2f613586d
Author: Tobias Madl <tobias.madl.dev at gmail.com>
Date:   Fri Nov 21 08:12:11 2014 +0000

    changed timers to idles
    
    Change-Id: Iac97f482df9fca8563e6931e4c710c1cc4e6503d

diff --git a/sd/inc/drawdoc.hxx b/sd/inc/drawdoc.hxx
index 6cd99ce..524dcba 100644
--- a/sd/inc/drawdoc.hxx
+++ b/sd/inc/drawdoc.hxx
@@ -149,7 +149,7 @@ private:
     ::sd::Outliner*     mpOutliner;          ///< local outliner for outline mode
     ::sd::Outliner*     mpInternalOutliner;  ///< internal outliner for creation of text objects
     Timer*              mpWorkStartupTimer;
-    Timer*              mpOnlineSpellingTimer;
+    Idle*               mpOnlineSpellingIdle;
     sd::ShapeList*      mpOnlineSpellingList;
     SvxSearchItem*      mpOnlineSearchItem;
     std::vector<sd::FrameView*> maFrameViewList;
diff --git a/sd/source/core/drawdoc.cxx b/sd/source/core/drawdoc.cxx
index f18436c..9e5a422 100644
--- a/sd/source/core/drawdoc.cxx
+++ b/sd/source/core/drawdoc.cxx
@@ -152,7 +152,7 @@ SdDrawDocument::SdDrawDocument(DocumentType eType, SfxObjectShell* pDrDocSh)
 , mpOutliner(NULL)
 , mpInternalOutliner(NULL)
 , mpWorkStartupTimer(NULL)
-, mpOnlineSpellingTimer(NULL)
+, mpOnlineSpellingIdle(NULL)
 , mpOnlineSpellingList(NULL)
 , mpOnlineSearchItem(NULL)
 , mpCustomShowList(NULL)
diff --git a/sd/source/core/drawdoc4.cxx b/sd/source/core/drawdoc4.cxx
index 8b1848f..6789ad2 100644
--- a/sd/source/core/drawdoc4.cxx
+++ b/sd/source/core/drawdoc4.cxx
@@ -725,13 +725,13 @@ sal_uInt16 SdDrawDocument::GetMasterPageUserCount(SdrPage* pMaster) const
 
 void SdDrawDocument::StopOnlineSpelling()
 {
-    if (mpOnlineSpellingTimer && mpOnlineSpellingTimer->IsActive())
+    if (mpOnlineSpellingIdle && mpOnlineSpellingIdle->IsActive())
     {
-        mpOnlineSpellingTimer->Stop();
+        mpOnlineSpellingIdle->Stop();
     }
 
-    delete mpOnlineSpellingTimer;
-    mpOnlineSpellingTimer = NULL;
+    delete mpOnlineSpellingIdle;
+    mpOnlineSpellingIdle = NULL;
 
     delete mpOnlineSpellingList;
     mpOnlineSpellingList = NULL;
@@ -773,10 +773,10 @@ void SdDrawDocument::StartOnlineSpelling(bool bForceSpelling)
         }
 
         mpOnlineSpellingList->seekShape(0);
-        mpOnlineSpellingTimer = new Timer();
-        mpOnlineSpellingTimer->SetTimeoutHdl( LINK(this, SdDrawDocument, OnlineSpellingHdl) );
-        mpOnlineSpellingTimer->SetTimeout(250);
-        mpOnlineSpellingTimer->Start();
+        mpOnlineSpellingIdle = new Idle();
+        mpOnlineSpellingIdle->SetIdleHdl( LINK(this, SdDrawDocument, OnlineSpellingHdl) );
+        mpOnlineSpellingIdle->SetPriority(VCL_IDLE_PRIORITY_LOWEST);
+        mpOnlineSpellingIdle->Start();
     }
 }
 
@@ -861,7 +861,7 @@ IMPL_LINK_NOARG(SdDrawDocument, OnlineSpellingHdl)
         }
 
         // Continue search
-        mpOnlineSpellingTimer->Start();
+        mpOnlineSpellingIdle->Start();
     }
     else
     {
diff --git a/sd/source/ui/slidesorter/cache/SlsQueueProcessor.cxx b/sd/source/ui/slidesorter/cache/SlsQueueProcessor.cxx
index cc6c788..1364bee 100644
--- a/sd/source/ui/slidesorter/cache/SlsQueueProcessor.cxx
+++ b/sd/source/ui/slidesorter/cache/SlsQueueProcessor.cxx
@@ -32,7 +32,7 @@ QueueProcessor::QueueProcessor (
     const bool bDoSuperSampling,
     const SharedCacheContext& rpCacheContext)
     : maMutex(),
-      maTimer(),
+      maIdle(),
       mnTimeBetweenHighPriorityRequests (10/*ms*/),
       mnTimeBetweenLowPriorityRequests (100/*ms*/),
       mnTimeBetweenRequestsWhenNotIdle (1000/*ms*/),
@@ -58,8 +58,8 @@ QueueProcessor::QueueProcessor (
     if (aTimeBetweenReqeusts.has<sal_Int32>())
         aTimeBetweenReqeusts >>= mnTimeBetweenRequestsWhenNotIdle;
 
-    maTimer.SetTimeoutHdl (LINK(this,QueueProcessor,ProcessRequestHdl));
-    maTimer.SetTimeout (mnTimeBetweenHighPriorityRequests);
+    maIdle.SetIdleHdl (LINK(this,QueueProcessor,ProcessRequestHdl));
+    maIdle.SetPriority (VCL_IDLE_PRIORITY_REPAINT);
 }
 
 QueueProcessor::~QueueProcessor (void)
@@ -70,20 +70,20 @@ void QueueProcessor::Start (int nPriorityClass)
 {
     if (mbIsPaused)
         return;
-    if ( ! maTimer.IsActive())
+    if ( ! maIdle.IsActive())
     {
         if (nPriorityClass == 0)
-            maTimer.SetTimeout (mnTimeBetweenHighPriorityRequests);
+            maIdle.SetPriority (VCL_IDLE_PRIORITY_REPAINT);
         else
-            maTimer.SetTimeout (mnTimeBetweenLowPriorityRequests);
-        maTimer.Start();
+            maIdle.SetPriority (VCL_IDLE_PRIORITY_LOW);
+        maIdle.Start();
     }
 }
 
 void QueueProcessor::Stop (void)
 {
-    if (maTimer.IsActive())
-        maTimer.Stop();
+    if (maIdle.IsActive())
+        maIdle.Stop();
 }
 
 void QueueProcessor::Pause (void)
diff --git a/sd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx b/sd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx
index 1e34261..6993d5c 100644
--- a/sd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx
+++ b/sd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx
@@ -92,7 +92,7 @@ private:
     */
     ::osl::Mutex maMutex;
 
-    Timer maTimer;
+    Idle  maIdle;
     DECL_LINK(ProcessRequestHdl, void *);
     sal_uInt32 mnTimeBetweenHighPriorityRequests;
     sal_uInt32 mnTimeBetweenLowPriorityRequests;
diff --git a/svx/source/stbctrls/modctrl.cxx b/svx/source/stbctrls/modctrl.cxx
index cfbaede..7899bcb 100644
--- a/svx/source/stbctrls/modctrl.cxx
+++ b/svx/source/stbctrls/modctrl.cxx
@@ -35,12 +35,6 @@ using ::com::sun::star::beans::PropertyValue;
 
 SFX_IMPL_STATUSBAR_CONTROL(SvxModifyControl, SfxBoolItem);
 
-
-namespace
-{
-const unsigned _FEEDBACK_TIMEOUT = 3000;
-}
-
 struct SvxModifyControl::ImplData
 {
     enum ModificationState
@@ -51,7 +45,7 @@ struct SvxModifyControl::ImplData
         MODIFICATION_STATE_SIZE
     };
 
-    Timer maTimer;
+    Idle  maIdle;
     Image maImages[MODIFICATION_STATE_SIZE];
 
     ModificationState mnModState;
@@ -63,7 +57,7 @@ struct SvxModifyControl::ImplData
         maImages[MODIFICATION_STATE_YES]      = Image(SVX_RES(RID_SVXBMP_DOC_MODIFIED_YES));
         maImages[MODIFICATION_STATE_FEEDBACK] = Image(SVX_RES(RID_SVXBMP_DOC_MODIFIED_FEEDBACK));
 
-        maTimer.SetTimeout(_FEEDBACK_TIMEOUT);
+        maIdle.SetPriority(VCL_IDLE_PRIORITY_LOWEST);
     }
 };
 
@@ -82,7 +76,7 @@ SvxModifyControl::SvxModifyControl( sal_uInt16 _nSlotId, sal_uInt16 _nId, Status
         }
     }
 //#endif
-    mpImpl->maTimer.SetTimeoutHdl( LINK(this, SvxModifyControl, OnTimer) );
+    mpImpl->maIdle.SetIdleHdl( LINK(this, SvxModifyControl, OnTimer) );
 }
 
 
@@ -95,7 +89,7 @@ void SvxModifyControl::StateChanged( sal_uInt16, SfxItemState eState,
 
     DBG_ASSERT( pState->ISA( SfxBoolItem ), "invalid item type" );
     const SfxBoolItem* pItem = static_cast<const SfxBoolItem*>(pState);
-    mpImpl->maTimer.Stop();
+    mpImpl->maIdle.Stop();
 
     bool modified = pItem->GetValue();
     bool start = ( !modified && mpImpl->mnModState == ImplData::MODIFICATION_STATE_YES);  // should timer be started and feedback image displayed ?
@@ -108,7 +102,7 @@ void SvxModifyControl::StateChanged( sal_uInt16, SfxItemState eState,
     GetStatusBar().SetQuickHelpText(GetId(), SVX_RESSTR(nResId));
 
     if ( start )
-        mpImpl->maTimer.Start();
+        mpImpl->maIdle.Start();
 }
 
 
commit eef25e0e7c03b53881e19bedb20532950323ef09
Author: Tobias Madl <tobias.madl.dev at gmail.com>
Date:   Thu Nov 20 16:21:17 2014 +0000

    changed timers to idles
    
    Change-Id: Iaceef008e7df91f3a9ad54fdaec25f2170100ee0

diff --git a/formula/source/ui/dlg/formula.cxx b/formula/source/ui/dlg/formula.cxx
index b17da4f..6e39f6e 100644
--- a/formula/source/ui/dlg/formula.cxx
+++ b/formula/source/ui/dlg/formula.cxx
@@ -183,7 +183,7 @@ namespace formula
         bool        bStructUpdate;
         MultiLineEdit*  pMEdit;
         bool        bUserMatrixFlag;
-        Timer           aTimer;
+        Idle            aIdle;
 
         const OUString  aTitle1;
         const OUString  aTitle2;
@@ -353,11 +353,11 @@ FormulaDlg_Impl::FormulaDlg_Impl(Dialog* pParent
 
 FormulaDlg_Impl::~FormulaDlg_Impl()
 {
-    if(aTimer.IsActive())
+    if(aIdle.IsActive())
     {
-        aTimer.SetTimeoutHdl(Link());
-        aTimer.Stop();
-    }// if(aTimer.IsActive())
+        aIdle.SetIdleHdl(Link());
+        aIdle.Stop();
+    }// if(aIdle.IsActive())
     bIsShutDown=true;// Set it in order to PreNotify not to save GetFocus.
 
     m_pTabCtrl->RemovePage(TP_FUNCTION);
@@ -412,7 +412,7 @@ void FormulaDlg_Impl::PreNotify( NotifyEvent& rNEvt )
 
                 FormEditData* pData = m_pHelper->getFormEditData();
 
-                if (pData && !aTimer.IsActive()) // won't be destroyed via Close
+                if (pData && !aIdle.IsActive()) // won't be destroyed via Close
                 {
                     pData->SetUniqueId(aActivWinId);
                 }
@@ -1773,9 +1773,9 @@ OUString FormulaDlg::GetMeText() const
 void FormulaDlg::Update()
 {
     m_pImpl->Update();
-    m_pImpl->aTimer.SetTimeout(200);
-    m_pImpl->aTimer.SetTimeoutHdl(LINK( this, FormulaDlg, UpdateFocusHdl));
-    m_pImpl->aTimer.Start();
+    m_pImpl->aIdle.SetPriority(VCL_IDLE_PRIORITY_LOWER);
+    m_pImpl->aIdle.SetIdleHdl(LINK( this, FormulaDlg, UpdateFocusHdl));
+    m_pImpl->aIdle.Start();
 }
 
 void FormulaDlg::DoEnter(bool _bOk)
diff --git a/formula/source/ui/dlg/funcutl.cxx b/formula/source/ui/dlg/funcutl.cxx
index 65fd1f4..8a3de8c 100644
--- a/formula/source/ui/dlg/funcutl.cxx
+++ b/formula/source/ui/dlg/funcutl.cxx
@@ -455,15 +455,13 @@ void EditBox::UpdateOldSel()
 
 // class RefEdit
 
-#define SC_ENABLE_TIME 100
-
 RefEdit::RefEdit( vcl::Window* _pParent, vcl::Window* pShrinkModeLabel, WinBits nStyle )
     : Edit( _pParent, nStyle )
     , pAnyRefDlg( NULL )
     , pLabelWidget(pShrinkModeLabel)
 {
-    aTimer.SetTimeoutHdl( LINK( this, RefEdit, UpdateHdl ) );
-    aTimer.SetTimeout( SC_ENABLE_TIME );
+    aIdle.SetIdleHdl( LINK( this, RefEdit, UpdateHdl ) );
+    aIdle.SetPriority( VCL_IDLE_PRIORITY_LOW );
 }
 
 RefEdit::RefEdit( vcl::Window* _pParent,IControlReferenceHandler* pParent,
@@ -472,8 +470,8 @@ RefEdit::RefEdit( vcl::Window* _pParent,IControlReferenceHandler* pParent,
     , pAnyRefDlg( pParent )
     , pLabelWidget(pShrinkModeLabel)
 {
-    aTimer.SetTimeoutHdl( LINK( this, RefEdit, UpdateHdl ) );
-    aTimer.SetTimeout( SC_ENABLE_TIME );
+    aIdle.SetIdleHdl( LINK( this, RefEdit, UpdateHdl ) );
+    aIdle.SetPriority( VCL_IDLE_PRIORITY_LOW );
 }
 
 extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeRefEdit(vcl::Window *pParent, VclBuilder::stringmap &)
@@ -483,8 +481,8 @@ extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeRefEdit(vcl::Window *p
 
 RefEdit::~RefEdit()
 {
-    aTimer.SetTimeoutHdl( Link() );
-    aTimer.Stop();
+    aIdle.SetIdleHdl( Link() );
+    aIdle.Stop();
 }
 
 void RefEdit::SetRefString( const OUString& rStr )
@@ -509,12 +507,12 @@ void RefEdit::SetRefValid(bool bValid)
 void RefEdit::SetText(const OUString& rStr)
 {
     Edit::SetText( rStr );
-    UpdateHdl( &aTimer );
+    UpdateHdl( &aIdle );
 }
 
 void RefEdit::StartUpdateData()
 {
-    aTimer.Start();
+    aIdle.Start();
 }
 
 void RefEdit::SetReferences( IControlReferenceHandler* pDlg, vcl::Window* pLabel )
@@ -524,13 +522,13 @@ void RefEdit::SetReferences( IControlReferenceHandler* pDlg, vcl::Window* pLabel
 
     if( pDlg )
     {
-        aTimer.SetTimeoutHdl( LINK( this, RefEdit, UpdateHdl ) );
-        aTimer.SetTimeout( SC_ENABLE_TIME );
+        aIdle.SetIdleHdl( LINK( this, RefEdit, UpdateHdl ) );
+        aIdle.SetPriority( VCL_IDLE_PRIORITY_LOW );
     }
     else
     {
-        aTimer.SetTimeoutHdl( Link() );
-        aTimer.Stop();
+        aIdle.SetIdleHdl( Link() );
+        aIdle.Stop();
     }
 }
 
diff --git a/include/formula/funcutl.hxx b/include/formula/funcutl.hxx
index 097d737..bc40705 100644
--- a/include/formula/funcutl.hxx
+++ b/include/formula/funcutl.hxx
@@ -32,7 +32,7 @@ class IControlReferenceHandler;
 class FORMULA_DLLPUBLIC RefEdit : public Edit
 {
 private:
-    Timer                     aTimer;
+    Idle                      aIdle;
     IControlReferenceHandler* pAnyRefDlg; // parent dialog
     vcl::Window*                   pLabelWidget;
 
diff --git a/svtools/source/contnr/imivctl.hxx b/svtools/source/contnr/imivctl.hxx
index 688516a..c599a39 100644
--- a/svtools/source/contnr/imivctl.hxx
+++ b/svtools/source/contnr/imivctl.hxx
@@ -166,8 +166,8 @@ class SvxIconChoiceCtrl_Impl
     std::vector<Rectangle*> aSelectedRectList;
     Idle                    aEditIdle;                 // for editing in place
     Idle                    aAutoArrangeIdle;
-    Timer                   aDocRectChangedTimer;
-    Timer                   aVisRectChangedTimer;
+    Idle                    aDocRectChangedIdle;
+    Idle                    aVisRectChangedIdle;
     Idle                    aCallSelectHdlIdle;
     Size                    aVirtOutputSize;
     Size                    aImageSize;
@@ -308,8 +308,8 @@ class SvxIconChoiceCtrl_Impl
                         {
                             return (ePositionMode == IcnViewPositionModeAutoAdjust);
                         }
-    void                DocRectChanged() { aDocRectChangedTimer.Start(); }
-    void                VisRectChanged() { aVisRectChangedTimer.Start(); }
+    void                DocRectChanged() { aDocRectChangedIdle.Start(); }
+    void                VisRectChanged() { aVisRectChangedIdle.Start(); }
     void                SetOrigin( const Point&, bool bDoNotUpdateWallpaper = false );
 
                         DECL_LINK(TextEditEndedHdl, void *);
diff --git a/svtools/source/contnr/imivctl1.cxx b/svtools/source/contnr/imivctl1.cxx
index 8e7fcd1..713b4c9 100644
--- a/svtools/source/contnr/imivctl1.cxx
+++ b/svtools/source/contnr/imivctl1.cxx
@@ -142,10 +142,10 @@ SvxIconChoiceCtrl_Impl::SvxIconChoiceCtrl_Impl(
     aCallSelectHdlIdle.SetPriority( VCL_IDLE_PRIORITY_LOWEST );
     aCallSelectHdlIdle.SetIdleHdl( LINK(this,SvxIconChoiceCtrl_Impl,CallSelectHdlHdl));
 
-    aDocRectChangedTimer.SetTimeout( 50 );
-    aDocRectChangedTimer.SetTimeoutHdl(LINK(this,SvxIconChoiceCtrl_Impl,DocRectChangedHdl));
-    aVisRectChangedTimer.SetTimeout( 50 );
-    aVisRectChangedTimer.SetTimeoutHdl(LINK(this,SvxIconChoiceCtrl_Impl,VisRectChangedHdl));
+    aDocRectChangedIdle.SetPriority( VCL_IDLE_PRIORITY_MEDIUM );
+    aDocRectChangedIdle.SetIdleHdl(LINK(this,SvxIconChoiceCtrl_Impl,DocRectChangedHdl));
+    aVisRectChangedIdle.SetPriority( VCL_IDLE_PRIORITY_MEDIUM );
+    aVisRectChangedIdle.SetIdleHdl(LINK(this,SvxIconChoiceCtrl_Impl,VisRectChangedHdl));
 
     Clear( true );
 
@@ -2895,14 +2895,14 @@ IMPL_LINK_NOARG(SvxIconChoiceCtrl_Impl, AutoArrangeHdl)
 
 IMPL_LINK_NOARG(SvxIconChoiceCtrl_Impl, VisRectChangedHdl)
 {
-    aVisRectChangedTimer.Stop();
+    aVisRectChangedIdle.Stop();
     pView->VisibleRectChanged();
     return 0;
 }
 
 IMPL_LINK_NOARG(SvxIconChoiceCtrl_Impl, DocRectChangedHdl)
 {
-    aDocRectChangedTimer.Stop();
+    aDocRectChangedIdle.Stop();
     pView->DocumentRectChanged();
     return 0;
 }
diff --git a/svx/source/dialog/imapdlg.cxx b/svx/source/dialog/imapdlg.cxx
index abcc768..99a8529 100644
--- a/svx/source/dialog/imapdlg.cxx
+++ b/svx/source/dialog/imapdlg.cxx
@@ -210,8 +210,8 @@ SvxIMapDlg::SvxIMapDlg(SfxBindings *_pBindings, SfxChildWindow *pCW, vcl::Window
     m_pCbbTarget->Disable();
     pOwnData->bExecState = false;
 
-    pOwnData->aTimer.SetTimeout( 100 );
-    pOwnData->aTimer.SetTimeoutHdl( LINK( this, SvxIMapDlg, UpdateHdl ) );
+    pOwnData->aIdle.SetPriority( VCL_IDLE_PRIORITY_LOW );
+    pOwnData->aIdle.SetIdleHdl( LINK( this, SvxIMapDlg, UpdateHdl ) );
 
     m_pTbxIMapDlg1->EnableItem( mnActiveId, false );
     m_pTbxIMapDlg1->EnableItem( mnMacroId, false );
@@ -318,7 +318,7 @@ void SvxIMapDlg::UpdateLink( const Graphic& rGraphic, const ImageMap* pImageMap,
             pOwnData->aUpdateTargetList.push_back( aTargetList[ i ] );
     }
 
-    pOwnData->aTimer.Start();
+    pOwnData->aIdle.Start();
 }
 
 
@@ -687,7 +687,7 @@ IMPL_LINK_NOARG(SvxIMapDlg, URLLoseFocusHdl)
 
 IMPL_LINK_NOARG(SvxIMapDlg, UpdateHdl)
 {
-    pOwnData->aTimer.Stop();
+    pOwnData->aIdle.Stop();
 
     if ( pOwnData->pUpdateEditingObject != pCheckObj )
     {
diff --git a/svx/source/dialog/imapimp.hxx b/svx/source/dialog/imapimp.hxx
index dfc9a64..281be4d 100644
--- a/svx/source/dialog/imapimp.hxx
+++ b/svx/source/dialog/imapimp.hxx
@@ -29,7 +29,7 @@ class IMapOwnData
 {
 public:
 
-    Timer           aTimer;
+    Idle            aIdle;
     Timer           aTbxTimer;
     Graphic         aUpdateGraphic;
     ImageMap        aUpdateImageMap;
diff --git a/vcl/source/window/dockmgr.cxx b/vcl/source/window/dockmgr.cxx
index d57ea8a..62ee8e2 100644
--- a/vcl/source/window/dockmgr.cxx
+++ b/vcl/source/window/dockmgr.cxx
@@ -42,8 +42,8 @@ class ImplDockFloatWin2 : public FloatingWindow
 private:
     ImplDockingWindowWrapper*  mpDockWin;
     sal_uLong           mnLastTicks;
-    Timer           maDockTimer;
-    Timer           maEndDockTimer;
+    Idle            maDockIdle;
+    Idle            maEndDockIdle;
     Point           maDockPos;
     Rectangle       maDockRect;
     bool            mbInMove;
@@ -91,10 +91,10 @@ ImplDockFloatWin2::ImplDockFloatWin2( vcl::Window* pParent, WinBits nWinBits,
 
     SetBackground( GetSettings().GetStyleSettings().GetFaceColor() );
 
-    maDockTimer.SetTimeoutHdl( LINK( this, ImplDockFloatWin2, DockTimerHdl ) );
-    maDockTimer.SetTimeout( 50 );
-    maEndDockTimer.SetTimeoutHdl( LINK( this, ImplDockFloatWin2, EndDockTimerHdl ) );
-    maEndDockTimer.SetTimeout( 50 );
+    maDockIdle.SetIdleHdl( LINK( this, ImplDockFloatWin2, DockTimerHdl ) );
+    maDockIdle.SetPriority( VCL_IDLE_PRIORITY_MEDIUM );
+    maEndDockIdle.SetIdleHdl( LINK( this, ImplDockFloatWin2, EndDockTimerHdl ) );
+    maEndDockIdle.SetPriority( VCL_IDLE_PRIORITY_MEDIUM );
 }
 
 ImplDockFloatWin2::~ImplDockFloatWin2()
@@ -107,7 +107,7 @@ IMPL_LINK_NOARG(ImplDockFloatWin2, DockTimerHdl)
 {
     DBG_ASSERT( mpDockWin->IsFloatingMode(), "docktimer called but not floating" );
 
-    maDockTimer.Stop();
+    maDockIdle.Stop();
     PointerState aState = GetPointerState();
 
     if( aState.mnState & KEY_MOD1 )
@@ -115,7 +115,7 @@ IMPL_LINK_NOARG(ImplDockFloatWin2, DockTimerHdl)
         // i43499 CTRL disables docking now
         mpDockWin->GetWindow()->GetParent()->ImplGetFrameWindow()->HideTracking();
         if( aState.mnState & ( MOUSE_LEFT | MOUSE_MIDDLE | MOUSE_RIGHT ) )
-            maDockTimer.Start();
+            maDockIdle.Start();
     }
     else if( ! ( aState.mnState & ( MOUSE_LEFT | MOUSE_MIDDLE | MOUSE_RIGHT ) ) )
     {
@@ -125,7 +125,7 @@ IMPL_LINK_NOARG(ImplDockFloatWin2, DockTimerHdl)
     else
     {
         mpDockWin->GetWindow()->GetParent()->ImplGetFrameWindow()->ShowTracking( maDockRect, SHOWTRACK_BIG | SHOWTRACK_WINDOW );
-        maDockTimer.Start();
+        maDockIdle.Start();
     }
 
     return 0;
@@ -135,7 +135,7 @@ IMPL_LINK_NOARG(ImplDockFloatWin2, EndDockTimerHdl)
 {
     DBG_ASSERT( mpDockWin->IsFloatingMode(), "enddocktimer called but not floating" );
 
-    maEndDockTimer.Stop();
+    maEndDockIdle.Stop();
     PointerState aState = GetPointerState();
     if( ! ( aState.mnState & ( MOUSE_LEFT | MOUSE_MIDDLE | MOUSE_RIGHT ) ) )
     {
@@ -144,7 +144,7 @@ IMPL_LINK_NOARG(ImplDockFloatWin2, EndDockTimerHdl)
     }
     else
     {
-        maEndDockTimer.Start();
+        maEndDockIdle.Start();
     }
 
     return 0;
@@ -209,13 +209,13 @@ IMPL_LINK_NOARG(ImplDockFloatWin2, DockingHdl)
             maDockRect.SetPos( mpDockWin->GetWindow()->GetParent()->ImplGetFrameWindow()->ScreenToOutputPixel(
                  maDockRect.TopLeft() ) );
             mpDockWin->GetWindow()->GetParent()->ImplGetFrameWindow()->ShowTracking( maDockRect, SHOWTRACK_BIG | SHOWTRACK_WINDOW );
-            maEndDockTimer.Stop();
+            maEndDockIdle.Stop();
             DockTimerHdl( this );
         }
         else
         {
             mpDockWin->GetWindow()->GetParent()->ImplGetFrameWindow()->HideTracking();
-            maDockTimer.Stop();
+            maDockIdle.Stop();
             EndDockTimerHdl( this );
         }
     }
diff --git a/vcl/source/window/dockwin.cxx b/vcl/source/window/dockwin.cxx
index 057a8c5..ab3c3a8b 100644
--- a/vcl/source/window/dockwin.cxx
+++ b/vcl/source/window/dockwin.cxx
@@ -59,7 +59,7 @@ class ImplDockFloatWin : public FloatingWindow
 private:
     DockingWindow*  mpDockWin;
     sal_uLong           mnLastTicks;
-    Timer           maDockTimer;
+    Idle            maDockIdle;
     Point           maDockPos;
     Rectangle       maDockRect;
     bool            mbInMove;
@@ -103,8 +103,8 @@ ImplDockFloatWin::ImplDockFloatWin( vcl::Window* pParent, WinBits nWinBits,
 
     SetBackground();
 
-    maDockTimer.SetTimeoutHdl( LINK( this, ImplDockFloatWin, DockTimerHdl ) );
-    maDockTimer.SetTimeout( 50 );
+    maDockIdle.SetIdleHdl( LINK( this, ImplDockFloatWin, DockTimerHdl ) );
+    maDockIdle.SetPriority( VCL_IDLE_PRIORITY_MEDIUM );
 }
 
 ImplDockFloatWin::~ImplDockFloatWin()
@@ -117,7 +117,7 @@ IMPL_LINK_NOARG(ImplDockFloatWin, DockTimerHdl)
 {
     DBG_ASSERT( mpDockWin->IsFloatingMode(), "docktimer called but not floating" );
 
-    maDockTimer.Stop();
+    maDockIdle.Stop();
     PointerState aState = GetPointerState();
 
     if( aState.mnState & KEY_MOD1 )
@@ -126,7 +126,7 @@ IMPL_LINK_NOARG(ImplDockFloatWin, DockTimerHdl)
         mpDockWin->GetParent()->ImplGetFrameWindow()->HideTracking();
         mpDockWin->EndDocking( maDockRect, true );
         if( aState.mnState & ( MOUSE_LEFT | MOUSE_MIDDLE | MOUSE_RIGHT ) )
-            maDockTimer.Start();
+            maDockIdle.Start();
     }
     else if( ! ( aState.mnState & ( MOUSE_LEFT | MOUSE_MIDDLE | MOUSE_RIGHT ) ) )
     {
@@ -136,7 +136,7 @@ IMPL_LINK_NOARG(ImplDockFloatWin, DockTimerHdl)
     else
     {
         mpDockWin->GetParent()->ImplGetFrameWindow()->ShowTracking( maDockRect, SHOWTRACK_BIG | SHOWTRACK_WINDOW );
-        maDockTimer.Start();
+        maDockIdle.Start();
     }
 
     return 0;
@@ -171,7 +171,7 @@ IMPL_LINK_NOARG(ImplDockFloatWin, DockingHdl)
         else
         {
             mpDockWin->GetParent()->ImplGetFrameWindow()->HideTracking();
-            maDockTimer.Stop();
+            maDockIdle.Stop();
             mpDockWin->EndDocking( maDockRect, true );
         }
     }
commit 50fdcff56a863ef69245c628e68d8673830ebbaa
Author: Tobias Madl <tobias.madl.dev at gmail.com>
Date:   Thu Nov 20 07:51:46 2014 +0000

    removed unused timeout defines
    
    Change-Id: I1ebada7b06657e0ac294e60bca5d6dd5b45e9d04

diff --git a/avmedia/source/framework/mediacontrol.cxx b/avmedia/source/framework/mediacontrol.cxx
index 5d64845..9c92ffa 100644
--- a/avmedia/source/framework/mediacontrol.cxx
+++ b/avmedia/source/framework/mediacontrol.cxx
@@ -33,7 +33,6 @@
 #include <math.h>
 #include <algorithm>
 
-#define AVMEDIA_TIMEOUT             100
 #define AVMEDIA_TIME_RANGE          2048
 #define AVMEDIA_DB_RANGE            -40
 #define AVMEDIA_LINEINCREMENT       1.0
diff --git a/cui/source/options/optjava.cxx b/cui/source/options/optjava.cxx
index 242ac08..ef7b7c3 100644
--- a/cui/source/options/optjava.cxx
+++ b/cui/source/options/optjava.cxx
@@ -53,7 +53,6 @@
 // define ----------------------------------------------------------------
 
 #define CLASSPATH_DELIMITER SAL_PATHSEPARATOR
-#define RESET_TIMEOUT       300
 
 using namespace ::com::sun::star::lang;
 using namespace ::com::sun::star::ucb;
diff --git a/sc/source/core/tool/chartlis.cxx b/sc/source/core/tool/chartlis.cxx
index c3c2905..bf16b3e 100644
--- a/sc/source/core/tool/chartlis.cxx
+++ b/sc/source/core/tool/chartlis.cxx
@@ -34,7 +34,6 @@ using ::std::for_each;
 
 // Update chart listeners quickly, to get a similar behavior to loaded charts
 // which register UNO listeners.
-#define SC_CHARTTIMEOUT 10
 
 class ScChartUnoData
 {
diff --git a/sfx2/source/control/dispatch.cxx b/sfx2/source/control/dispatch.cxx
index 42be2b0..4cf4e01 100644
--- a/sfx2/source/control/dispatch.cxx
+++ b/sfx2/source/control/dispatch.cxx
@@ -139,8 +139,6 @@ struct SfxDispatcher_Impl
     std::deque< std::deque<SfxToDo_Impl> > aToDoCopyStack;
 };
 
-#define SFX_FLUSH_TIMEOUT    50
-
 /** This method checks if the stack of the SfxDispatchers is flushed, or if
     push- or pop- commands are pending.
 */
diff --git a/sw/source/uibase/utlui/navipi.cxx b/sw/source/uibase/utlui/navipi.cxx
index 0d55aba..dbd63cb 100644
--- a/sw/source/uibase/utlui/navipi.cxx
+++ b/sw/source/uibase/utlui/navipi.cxx
@@ -56,8 +56,6 @@
 #include <unomid.h>
 #include <boost/scoped_ptr.hpp>
 
-#define PAGE_CHANGE_TIMEOUT 1000
-
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::frame;
 
commit f0a6ec25d06e7be309000858dc2ace7b621fcf92
Author: Jennifer Liebel <jliebel94 at gmail.com>
Date:   Thu Nov 13 13:10:55 2014 +0000

    changed timers to idle
    
    Change-Id: I05ccb8bd73070462edcc911956859aa7967b5901

diff --git a/framework/inc/services/layoutmanager.hxx b/framework/inc/services/layoutmanager.hxx
index 12e9d30..5635c7f 100644
--- a/framework/inc/services/layoutmanager.hxx
+++ b/framework/inc/services/layoutmanager.hxx
@@ -310,7 +310,7 @@ namespace framework
             css::uno::Reference< ::com::sun::star::container::XNameAccess >             m_xPersistentWindowStateSupplier;
             GlobalSettings*                                                             m_pGlobalSettings;
             OUString                                                                    m_aModuleIdentifier;
-            Idle                                                                        m_aAsyncLayoutIdle;
+            Timer                                                                       m_aAsyncLayoutTimer;
             ::cppu::OMultiTypeInterfaceContainerHelper                                  m_aListenerContainer; // container for ALL Listener
             ToolbarLayoutManager*                                                       m_pToolbarManager;
             css::uno::Reference< ::com::sun::star::ui::XUIConfigurationListener >       m_xToolbarManager;
diff --git a/framework/inc/uielement/toolbarmanager.hxx b/framework/inc/uielement/toolbarmanager.hxx
index 320aa7c..462f48e 100644
--- a/framework/inc/uielement/toolbarmanager.hxx
+++ b/framework/inc/uielement/toolbarmanager.hxx
@@ -208,7 +208,7 @@ class ToolBarManager : public ToolbarManager_Base
 
         CommandToInfoMap                                                                       m_aCommandMap;
         SubToolBarToSubToolBarControllerMap                                                    m_aSubToolBarControllerMap;
-        Idle                                                                                   m_aAsyncUpdateControllersIdle;
+        Timer                                                                                  m_aAsyncUpdateControllersTimer;
         OUString                                                                               m_sIconTheme;
         MenuDescriptionMap m_aMenuMap;
         bool                                                                               m_bAcceleratorCfg;
diff --git a/framework/source/layoutmanager/layoutmanager.cxx b/framework/source/layoutmanager/layoutmanager.cxx
index d3969f2..245b5b0 100644
--- a/framework/source/layoutmanager/layoutmanager.cxx
+++ b/framework/source/layoutmanager/layoutmanager.cxx
@@ -144,8 +144,8 @@ LayoutManager::LayoutManager( const Reference< XComponentContext >& xContext ) :
 
     Application::AddEventListener( LINK( this, LayoutManager, SettingsChanged ) );
 
-    m_aAsyncLayoutIdle.SetPriority( VCL_IDLE_PRIORITY_RESIZE );
-    m_aAsyncLayoutIdle.SetIdleHdl( LINK( this, LayoutManager, AsyncLayoutHdl ) );
+    m_aAsyncLayoutTimer.SetTimeout( 50 );
+    m_aAsyncLayoutTimer.SetTimeoutHdl( LINK( this, LayoutManager, AsyncLayoutHdl ) );
 
     registerProperty( LAYOUTMANAGER_PROPNAME_AUTOMATICTOOLBARS, LAYOUTMANAGER_PROPHANDLE_AUTOMATICTOOLBARS, css::beans::PropertyAttribute::TRANSIENT, &m_bAutomaticToolbars, ::getCppuType( &m_bAutomaticToolbars ) );
     registerProperty( LAYOUTMANAGER_PROPNAME_HIDECURRENTUI, LAYOUTMANAGER_PROPHANDLE_HIDECURRENTUI, beans::PropertyAttribute::TRANSIENT, &m_bHideCurrentUI, ::getCppuType( &m_bHideCurrentUI ) );
@@ -158,7 +158,7 @@ LayoutManager::LayoutManager( const Reference< XComponentContext >& xContext ) :
 LayoutManager::~LayoutManager()
 {
     Application::RemoveEventListener( LINK( this, LayoutManager, SettingsChanged ) );
-    m_aAsyncLayoutIdle.Stop();
+    m_aAsyncLayoutTimer.Stop();
     setDockingAreaAcceptor(NULL);
     delete m_pGlobalSettings;
 }
@@ -1256,7 +1256,7 @@ throw ( RuntimeException, std::exception )
 
     // IMPORTANT: Be sure to stop layout timer if don't have a docking area acceptor!
     if ( !xDockingAreaAcceptor.is() )
-        m_aAsyncLayoutIdle.Stop();
+        m_aAsyncLayoutTimer.Stop();
 
     bool bAutomaticToolbars( m_bAutomaticToolbars );
     std::vector< Reference< awt::XWindow > > oldDockingAreaWindows;
@@ -1264,7 +1264,7 @@ throw ( RuntimeException, std::exception )
     ToolbarLayoutManager* pToolbarManager = m_pToolbarManager;
 
     if ( !xDockingAreaAcceptor.is() )
-        m_aAsyncLayoutIdle.Stop();
+        m_aAsyncLayoutTimer.Stop();
 
     // Remove listener from old docking area acceptor
     if ( m_xDockingAreaAcceptor.is() )
@@ -2265,7 +2265,7 @@ throw (RuntimeException, std::exception)
 
     SolarMutexClearableGuard aWriteLock;
         if ( bDoLayout )
-                m_aAsyncLayoutIdle.Stop();
+                m_aAsyncLayoutTimer.Stop();
         aWriteLock.clear();
 
     Any a( nLockCount );
@@ -2664,14 +2664,14 @@ throw( uno::RuntimeException, std::exception )
         // application modules need this. So we have to check if this is the first
         // call after the async layout time expired.
         m_bMustDoLayout = true;
-        if ( !m_aAsyncLayoutIdle.IsActive() )
+        if ( !m_aAsyncLayoutTimer.IsActive() )
         {
-            const Link& aLink = m_aAsyncLayoutIdle.GetTimeoutHdl();
+            const Link& aLink = m_aAsyncLayoutTimer.GetTimeoutHdl();
             if ( aLink.IsSet() )
-                aLink.Call( &m_aAsyncLayoutIdle );
+                aLink.Call( &m_aAsyncLayoutTimer );
         }
         if ( m_nLockCount == 0 )
-            m_aAsyncLayoutIdle.Start();
+            m_aAsyncLayoutTimer.Start();
     }
     else if ( m_xFrame.is() && aEvent.Source == m_xFrame->getContainerWindow() )
     {
@@ -2741,7 +2741,7 @@ void SAL_CALL LayoutManager::windowHidden( const lang::EventObject& aEvent ) thr
 IMPL_LINK_NOARG(LayoutManager, AsyncLayoutHdl)
 {
     SolarMutexClearableGuard aReadLock;
-    m_aAsyncLayoutIdle.Stop();
+    m_aAsyncLayoutTimer.Stop();
 
     if( !m_xContainerWindow.is() )
         return 0;
diff --git a/framework/source/uielement/toolbarmanager.cxx b/framework/source/uielement/toolbarmanager.cxx
index c1630fa..c966532 100644
--- a/framework/source/uielement/toolbarmanager.cxx
+++ b/framework/source/uielement/toolbarmanager.cxx
@@ -235,15 +235,15 @@ ToolBarManager::ToolBarManager( const Reference< XComponentContext >& rxContext,
     aHelpIdAsString += OUStringToOString( aToolbarName, RTL_TEXTENCODING_UTF8 );;
     m_pToolBar->SetHelpId( aHelpIdAsString );
 
-    m_aAsyncUpdateControllersIdle.SetPriority( VCL_IDLE_PRIORITY_MEDIUM );
-    m_aAsyncUpdateControllersIdle.SetIdleHdl( LINK( this, ToolBarManager, AsyncUpdateControllersHdl ) );
+    m_aAsyncUpdateControllersTimer.SetTimeout( 50 );
+    m_aAsyncUpdateControllersTimer.SetTimeoutHdl( LINK( this, ToolBarManager, AsyncUpdateControllersHdl ) );
 
     SvtMiscOptions().AddListenerLink( LINK( this, ToolBarManager, MiscOptionsChanged ) );
 }
 
 ToolBarManager::~ToolBarManager()
 {
-    assert(!m_aAsyncUpdateControllersIdle.IsActive());
+    assert(!m_aAsyncUpdateControllersTimer.IsActive());
     OSL_ASSERT( m_pToolBar == 0 );
     OSL_ASSERT( !m_bAddedToTaskPaneList );
 }
@@ -477,7 +477,7 @@ throw ( RuntimeException, std::exception )
     SolarMutexGuard g;
     if ( Action.Action == FrameAction_CONTEXT_CHANGED )
     {
-        m_aAsyncUpdateControllersIdle.Start();
+        m_aAsyncUpdateControllersTimer.Start();
     }
 }
 
@@ -631,7 +631,7 @@ void SAL_CALL ToolBarManager::dispose() throw( RuntimeException, std::exception
 
         // stop timer to prevent timer events after dispose
         // do it last because other calls could restart timer in StateChanged()
-        m_aAsyncUpdateControllersIdle.Stop();
+        m_aAsyncUpdateControllersTimer.Stop();
 
         m_bDisposed = true;
     }
@@ -1417,7 +1417,7 @@ void ToolBarManager::FillToolbar( const Reference< XIndexAccess >& rItemContaine
         UpdateControllers();
     else if ( m_pToolBar->IsReallyVisible() )
     {
-        m_aAsyncUpdateControllersIdle.Start();
+        m_aAsyncUpdateControllersTimer.Start();
     }
 
     // Try to retrieve UIName from the container property set and set it as the title
@@ -2053,12 +2053,12 @@ IMPL_LINK( ToolBarManager, StateChanged, StateChangedType*, pStateChangedType )
     {
         if ( m_pToolBar->IsReallyVisible() )
         {
-            m_aAsyncUpdateControllersIdle.Start();
+            m_aAsyncUpdateControllersTimer.Start();
         }
     }
     else if ( *pStateChangedType == StateChangedType::INITSHOW )
     {
-        m_aAsyncUpdateControllersIdle.Start();
+        m_aAsyncUpdateControllersTimer.Start();
     }
     return 1;
 }
@@ -2113,7 +2113,7 @@ IMPL_LINK_NOARG(ToolBarManager, AsyncUpdateControllersHdl)
         return 1;
 
     // Request to update our controllers
-    m_aAsyncUpdateControllersIdle.Stop();
+    m_aAsyncUpdateControllersTimer.Stop();
     UpdateControllers();
 
     return 0;
diff --git a/vcl/source/app/timer.cxx b/vcl/source/app/timer.cxx
index 675c751..529c8b5 100644
--- a/vcl/source/app/timer.cxx
+++ b/vcl/source/app/timer.cxx
@@ -385,12 +385,14 @@ AutoTimer& AutoTimer::operator=( const AutoTimer& rTimer )
 Idle::Idle()
     : Timer()
 {
+    mbIdle = true;
     SetPriority(VCL_IDLE_PRIORITY_LOWEST);
 }
 
 Idle::Idle( IdlePriority ePriority )
     : Timer()
 {
+    mbIdle = true;
     SetPriority( ePriority );
 }
 
@@ -434,6 +436,7 @@ void Idle::DoIdle()
     maTimeoutHdl.Call( this );
 }
 
+
 Idle::~Idle()
 {
 }
commit 9f3e3923d799022381b9fad9d9155c7d65745ae3
Author: Jennifer Liebel <jliebel94 at gmail.com>
Date:   Mon Nov 10 14:57:14 2014 +0000

    changed timers to idle
    
    Change-Id: I5846940cc45781f4a0264047107dbb568604d543

diff --git a/dbaccess/source/ui/inc/JoinTableView.hxx b/dbaccess/source/ui/inc/JoinTableView.hxx
index c9c5002..a14be0d 100644
--- a/dbaccess/source/ui/inc/JoinTableView.hxx
+++ b/dbaccess/source/ui/inc/JoinTableView.hxx
@@ -85,7 +85,7 @@ namespace dbaui
         OTableWindowMap     m_aTableMap;
         ::std::vector<OTableConnection*>    m_vTableConnection;
 
-        Timer               m_aDragScrollTimer;
+        Idle                m_aDragScrollIdle;
         Rectangle           m_aDragRect;
         Rectangle           m_aSizingRect;
         Point               m_aDragOffset;
diff --git a/dbaccess/source/ui/querydesign/JoinTableView.cxx b/dbaccess/source/ui/querydesign/JoinTableView.cxx
index f622e3e..020e990 100644
--- a/dbaccess/source/ui/querydesign/JoinTableView.cxx
+++ b/dbaccess/source/ui/querydesign/JoinTableView.cxx
@@ -169,7 +169,7 @@ OJoinTableView::OJoinTableView( vcl::Window* pParent, OJoinDesignView* pView )
 
     InitColors();
 
-    m_aDragScrollTimer.SetTimeoutHdl(LINK(this, OJoinTableView, OnDragScrollTimer));
+    m_aDragScrollIdle.SetIdleHdl(LINK(this, OJoinTableView, OnDragScrollTimer));
 }
 
 OJoinTableView::~OJoinTableView()
@@ -716,8 +716,8 @@ void OJoinTableView::Tracking( const TrackingEvent& rTEvt )
     {
         if( m_pDragWin )
         {
-            if (m_aDragScrollTimer.IsActive())
-                m_aDragScrollTimer.Stop();
+            if (m_aDragScrollIdle.IsActive())
+                m_aDragScrollIdle.Stop();
 
             // adjust position of child after moving
             // windows are not allowed to leave display range
@@ -776,8 +776,8 @@ void OJoinTableView::Tracking( const TrackingEvent& rTEvt )
     }
     else if (rTEvt.IsTrackingCanceled())
     {
-        if (m_aDragScrollTimer.IsActive())
-            m_aDragScrollTimer.Stop();
+        if (m_aDragScrollIdle.IsActive())
+            m_aDragScrollIdle.Stop();
         EndTracking();
     }
     else
@@ -989,8 +989,8 @@ bool OJoinTableView::ScrollWhileDragging()
     OSL_ENSURE(m_pDragWin != NULL, "OJoinTableView::ScrollWhileDragging must not be called when a window is being dragged !");
 
     // kill the timer
-    if (m_aDragScrollTimer.IsActive())
-        m_aDragScrollTimer.Stop();
+    if (m_aDragScrollIdle.IsActive())
+        m_aDragScrollIdle.Stop();
 
     Point aDragWinPos = m_ptPrevDraggingPos - m_aDragOffset;
     Size aDragWinSize = m_pDragWin->GetSizePixel();
@@ -1048,8 +1048,8 @@ bool OJoinTableView::ScrollWhileDragging()
     // resetting timer, if still necessary
     if (bNeedScrollTimer)
     {
-        m_aDragScrollTimer.SetTimeout(100);
-        m_aDragScrollTimer.Start();
+        m_aDragScrollIdle.SetPriority(VCL_IDLE_PRIORITY_LOW);
+        m_aDragScrollIdle.Start();
     }
 
     // redraw DraggingRect
diff --git a/framework/source/uielement/toolbarmanager.cxx b/framework/source/uielement/toolbarmanager.cxx
index 488f67b..c1630fa 100644
--- a/framework/source/uielement/toolbarmanager.cxx
+++ b/framework/source/uielement/toolbarmanager.cxx
@@ -243,7 +243,7 @@ ToolBarManager::ToolBarManager( const Reference< XComponentContext >& rxContext,
 
 ToolBarManager::~ToolBarManager()
 {
-    assert(!m_aAsyncUpdateControllersTimer.IsActive());
+    assert(!m_aAsyncUpdateControllersIdle.IsActive());
     OSL_ASSERT( m_pToolBar == 0 );
     OSL_ASSERT( !m_bAddedToTaskPaneList );
 }
@@ -631,7 +631,7 @@ void SAL_CALL ToolBarManager::dispose() throw( RuntimeException, std::exception
 
         // stop timer to prevent timer events after dispose
         // do it last because other calls could restart timer in StateChanged()
-        m_aAsyncUpdateControllersTimer.Stop();
+        m_aAsyncUpdateControllersIdle.Stop();
 
         m_bDisposed = true;
     }
diff --git a/sc/source/core/data/documen2.cxx b/sc/source/core/data/documen2.cxx
index 377b09e..35503d7 100644
--- a/sc/source/core/data/documen2.cxx
+++ b/sc/source/core/data/documen2.cxx
@@ -332,7 +332,7 @@ void ScDocument::SetChangeTrack( ScChangeTrack* pTrack )
 IMPL_LINK_NOARG(ScDocument, TrackTimeHdl)
 {
     if ( ScDdeLink::IsInUpdate() )      // do not nest
-    {s
+    {
         aTrackIdle.Start();            // try again later
     }
     else if (pShell)                    // execute
commit d1684e16b52f9e94facfb674a8e65246bbbdb987
Author: Jennifer Liebel <jliebel94 at gmail.com>
Date:   Thu Nov 6 11:52:02 2014 +0000

    changed some timer to idle
    
    Change-Id: If137dbd80f7260d9507e48709d3f0f14b60a25f6

diff --git a/framework/inc/services/layoutmanager.hxx b/framework/inc/services/layoutmanager.hxx
index 5635c7f..12e9d30 100644
--- a/framework/inc/services/layoutmanager.hxx
+++ b/framework/inc/services/layoutmanager.hxx
@@ -310,7 +310,7 @@ namespace framework
             css::uno::Reference< ::com::sun::star::container::XNameAccess >             m_xPersistentWindowStateSupplier;
             GlobalSettings*                                                             m_pGlobalSettings;
             OUString                                                                    m_aModuleIdentifier;
-            Timer                                                                       m_aAsyncLayoutTimer;
+            Idle                                                                        m_aAsyncLayoutIdle;
             ::cppu::OMultiTypeInterfaceContainerHelper                                  m_aListenerContainer; // container for ALL Listener
             ToolbarLayoutManager*                                                       m_pToolbarManager;
             css::uno::Reference< ::com::sun::star::ui::XUIConfigurationListener >       m_xToolbarManager;
diff --git a/framework/inc/uielement/toolbarmanager.hxx b/framework/inc/uielement/toolbarmanager.hxx
index 462f48e..320aa7c 100644
--- a/framework/inc/uielement/toolbarmanager.hxx
+++ b/framework/inc/uielement/toolbarmanager.hxx
@@ -208,7 +208,7 @@ class ToolBarManager : public ToolbarManager_Base
 
         CommandToInfoMap                                                                       m_aCommandMap;
         SubToolBarToSubToolBarControllerMap                                                    m_aSubToolBarControllerMap;
-        Timer                                                                                  m_aAsyncUpdateControllersTimer;
+        Idle                                                                                   m_aAsyncUpdateControllersIdle;
         OUString                                                                               m_sIconTheme;
         MenuDescriptionMap m_aMenuMap;
         bool                                                                               m_bAcceleratorCfg;
diff --git a/framework/source/layoutmanager/layoutmanager.cxx b/framework/source/layoutmanager/layoutmanager.cxx
index 245b5b0..d3969f2 100644
--- a/framework/source/layoutmanager/layoutmanager.cxx
+++ b/framework/source/layoutmanager/layoutmanager.cxx
@@ -144,8 +144,8 @@ LayoutManager::LayoutManager( const Reference< XComponentContext >& xContext ) :
 
     Application::AddEventListener( LINK( this, LayoutManager, SettingsChanged ) );
 
-    m_aAsyncLayoutTimer.SetTimeout( 50 );
-    m_aAsyncLayoutTimer.SetTimeoutHdl( LINK( this, LayoutManager, AsyncLayoutHdl ) );
+    m_aAsyncLayoutIdle.SetPriority( VCL_IDLE_PRIORITY_RESIZE );
+    m_aAsyncLayoutIdle.SetIdleHdl( LINK( this, LayoutManager, AsyncLayoutHdl ) );
 
     registerProperty( LAYOUTMANAGER_PROPNAME_AUTOMATICTOOLBARS, LAYOUTMANAGER_PROPHANDLE_AUTOMATICTOOLBARS, css::beans::PropertyAttribute::TRANSIENT, &m_bAutomaticToolbars, ::getCppuType( &m_bAutomaticToolbars ) );
     registerProperty( LAYOUTMANAGER_PROPNAME_HIDECURRENTUI, LAYOUTMANAGER_PROPHANDLE_HIDECURRENTUI, beans::PropertyAttribute::TRANSIENT, &m_bHideCurrentUI, ::getCppuType( &m_bHideCurrentUI ) );
@@ -158,7 +158,7 @@ LayoutManager::LayoutManager( const Reference< XComponentContext >& xContext ) :
 LayoutManager::~LayoutManager()
 {
     Application::RemoveEventListener( LINK( this, LayoutManager, SettingsChanged ) );
-    m_aAsyncLayoutTimer.Stop();
+    m_aAsyncLayoutIdle.Stop();
     setDockingAreaAcceptor(NULL);
     delete m_pGlobalSettings;
 }
@@ -1256,7 +1256,7 @@ throw ( RuntimeException, std::exception )
 
     // IMPORTANT: Be sure to stop layout timer if don't have a docking area acceptor!
     if ( !xDockingAreaAcceptor.is() )
-        m_aAsyncLayoutTimer.Stop();
+        m_aAsyncLayoutIdle.Stop();
 
     bool bAutomaticToolbars( m_bAutomaticToolbars );
     std::vector< Reference< awt::XWindow > > oldDockingAreaWindows;
@@ -1264,7 +1264,7 @@ throw ( RuntimeException, std::exception )
     ToolbarLayoutManager* pToolbarManager = m_pToolbarManager;
 
     if ( !xDockingAreaAcceptor.is() )
-        m_aAsyncLayoutTimer.Stop();
+        m_aAsyncLayoutIdle.Stop();
 
     // Remove listener from old docking area acceptor
     if ( m_xDockingAreaAcceptor.is() )
@@ -2265,7 +2265,7 @@ throw (RuntimeException, std::exception)
 
     SolarMutexClearableGuard aWriteLock;
         if ( bDoLayout )
-                m_aAsyncLayoutTimer.Stop();
+                m_aAsyncLayoutIdle.Stop();
         aWriteLock.clear();
 
     Any a( nLockCount );
@@ -2664,14 +2664,14 @@ throw( uno::RuntimeException, std::exception )
         // application modules need this. So we have to check if this is the first
         // call after the async layout time expired.
         m_bMustDoLayout = true;
-        if ( !m_aAsyncLayoutTimer.IsActive() )
+        if ( !m_aAsyncLayoutIdle.IsActive() )
         {
-            const Link& aLink = m_aAsyncLayoutTimer.GetTimeoutHdl();
+            const Link& aLink = m_aAsyncLayoutIdle.GetTimeoutHdl();
             if ( aLink.IsSet() )
-                aLink.Call( &m_aAsyncLayoutTimer );
+                aLink.Call( &m_aAsyncLayoutIdle );
         }
         if ( m_nLockCount == 0 )
-            m_aAsyncLayoutTimer.Start();
+            m_aAsyncLayoutIdle.Start();
     }
     else if ( m_xFrame.is() && aEvent.Source == m_xFrame->getContainerWindow() )
     {
@@ -2741,7 +2741,7 @@ void SAL_CALL LayoutManager::windowHidden( const lang::EventObject& aEvent ) thr
 IMPL_LINK_NOARG(LayoutManager, AsyncLayoutHdl)
 {
     SolarMutexClearableGuard aReadLock;
-    m_aAsyncLayoutTimer.Stop();
+    m_aAsyncLayoutIdle.Stop();
 
     if( !m_xContainerWindow.is() )
         return 0;
diff --git a/framework/source/uielement/toolbarmanager.cxx b/framework/source/uielement/toolbarmanager.cxx
index c966532..488f67b 100644
--- a/framework/source/uielement/toolbarmanager.cxx
+++ b/framework/source/uielement/toolbarmanager.cxx
@@ -235,8 +235,8 @@ ToolBarManager::ToolBarManager( const Reference< XComponentContext >& rxContext,
     aHelpIdAsString += OUStringToOString( aToolbarName, RTL_TEXTENCODING_UTF8 );;
     m_pToolBar->SetHelpId( aHelpIdAsString );
 
-    m_aAsyncUpdateControllersTimer.SetTimeout( 50 );
-    m_aAsyncUpdateControllersTimer.SetTimeoutHdl( LINK( this, ToolBarManager, AsyncUpdateControllersHdl ) );
+    m_aAsyncUpdateControllersIdle.SetPriority( VCL_IDLE_PRIORITY_MEDIUM );
+    m_aAsyncUpdateControllersIdle.SetIdleHdl( LINK( this, ToolBarManager, AsyncUpdateControllersHdl ) );
 
     SvtMiscOptions().AddListenerLink( LINK( this, ToolBarManager, MiscOptionsChanged ) );
 }
@@ -477,7 +477,7 @@ throw ( RuntimeException, std::exception )
     SolarMutexGuard g;
     if ( Action.Action == FrameAction_CONTEXT_CHANGED )
     {
-        m_aAsyncUpdateControllersTimer.Start();
+        m_aAsyncUpdateControllersIdle.Start();
     }
 }
 
@@ -1417,7 +1417,7 @@ void ToolBarManager::FillToolbar( const Reference< XIndexAccess >& rItemContaine
         UpdateControllers();
     else if ( m_pToolBar->IsReallyVisible() )
     {
-        m_aAsyncUpdateControllersTimer.Start();
+        m_aAsyncUpdateControllersIdle.Start();
     }
 
     // Try to retrieve UIName from the container property set and set it as the title
@@ -2053,12 +2053,12 @@ IMPL_LINK( ToolBarManager, StateChanged, StateChangedType*, pStateChangedType )
     {
         if ( m_pToolBar->IsReallyVisible() )
         {
-            m_aAsyncUpdateControllersTimer.Start();
+            m_aAsyncUpdateControllersIdle.Start();
         }
     }
     else if ( *pStateChangedType == StateChangedType::INITSHOW )
     {
-        m_aAsyncUpdateControllersTimer.Start();
+        m_aAsyncUpdateControllersIdle.Start();
     }
     return 1;
 }
@@ -2113,7 +2113,7 @@ IMPL_LINK_NOARG(ToolBarManager, AsyncUpdateControllersHdl)
         return 1;
 
     // Request to update our controllers
-    m_aAsyncUpdateControllersTimer.Stop();
+    m_aAsyncUpdateControllersIdle.Stop();
     UpdateControllers();
 
     return 0;
commit cf46a5cf10db5ce330ae7a9a7410f6503300c543
Author: Tobias Madl <tobias.madl.dev at gmail.com>
Date:   Fri Oct 31 10:25:49 2014 +0000

    Michael's patch implemented
    
    Change-Id: I3f0802d5001172fc7b8409274bc5a3632e5dad34

diff --git a/include/vcl/timer.hxx b/include/vcl/timer.hxx
index 7dd1b81..11e8f3f 100644
--- a/include/vcl/timer.hxx
+++ b/include/vcl/timer.hxx
@@ -93,16 +93,10 @@ enum IdlePriority {
 
 // To port from Timer -> Idle switch class name,
 // s/Timeout/DoIdle/ etc. and select priority
-<<<<<<< HEAD
 class VCL_DLLPUBLIC Idle : public Timer
 {
  public:
     Idle();
-=======
-class VCL_DLLPUBLIC Idle : private Timer
-{
- public:
->>>>>>> applied patch from Michael Meeks
     Idle( IdlePriority ePriority );
     virtual ~Idle();
 
@@ -116,11 +110,7 @@ class VCL_DLLPUBLIC Idle : private Timer
     void            Start() { Timer::Start(); }
     void            Stop()  { Timer::Stop();  }
 
-<<<<<<< HEAD
     virtual void    DoIdle();
-=======
-    virtual void    DoIdle() = 0;
->>>>>>> applied patch from Michael Meeks
 
     virtual void    Timeout() SAL_OVERRIDE { DoIdle(); }
 };
commit 345110ed798a13973ee99935ee134061f965a4e0
Author: Jennifer Liebel <jliebel94 at gmail.com>
Date:   Fri Oct 31 08:17:33 2014 +0000

    applied patch from Michael Meeks
    
    Change-Id: I57f22b6d9bfbef4a50d162076b01e8e64edb4718

diff --git a/include/vcl/timer.hxx b/include/vcl/timer.hxx
index 11e8f3f..7dd1b81 100644
--- a/include/vcl/timer.hxx
+++ b/include/vcl/timer.hxx
@@ -93,10 +93,16 @@ enum IdlePriority {
 
 // To port from Timer -> Idle switch class name,
 // s/Timeout/DoIdle/ etc. and select priority
+<<<<<<< HEAD
 class VCL_DLLPUBLIC Idle : public Timer
 {
  public:
     Idle();
+=======
+class VCL_DLLPUBLIC Idle : private Timer
+{
+ public:
+>>>>>>> applied patch from Michael Meeks
     Idle( IdlePriority ePriority );
     virtual ~Idle();
 
@@ -110,7 +116,11 @@ class VCL_DLLPUBLIC Idle : public Timer
     void            Start() { Timer::Start(); }
     void            Stop()  { Timer::Stop();  }
 
+<<<<<<< HEAD
     virtual void    DoIdle();
+=======
+    virtual void    DoIdle() = 0;
+>>>>>>> applied patch from Michael Meeks
 
     virtual void    Timeout() SAL_OVERRIDE { DoIdle(); }
 };
diff --git a/vcl/source/app/timer.cxx b/vcl/source/app/timer.cxx
index 212c521..675c751 100644
--- a/vcl/source/app/timer.cxx
+++ b/vcl/source/app/timer.cxx
@@ -434,7 +434,6 @@ void Idle::DoIdle()
     maTimeoutHdl.Call( this );
 }
 
-
 Idle::~Idle()
 {
 }
commit c8322c57678a55a4c58ce13bd2a0895f644016c9
Author: Eike Rathke <erack at redhat.com>
Date:   Sat Nov 15 02:00:16 2014 +0100

    fdo#73695 prevent use of invalidated iterator due to re-entrance
    
    ... through the UNO backdoor..
    While charts are updated there can be chart data listeners in BASIC that
    in turn modify things such that charts are inserted/removed from the
    listener chain, invalidating the iterator. If that happens break and
    bail out instead of crashing. Not ideal, but..
    
    Change-Id: Iefb33d3a96d79caed0ee4e19b73e8f811ef3d937

diff --git a/sc/source/core/tool/chartlis.cxx b/sc/source/core/tool/chartlis.cxx
index a565d96..c3c2905 100644
--- a/sc/source/core/tool/chartlis.cxx
+++ b/sc/source/core/tool/chartlis.cxx
@@ -618,6 +618,9 @@ void ScChartListenerCollection::UpdateDirtyCharts()
         if (p->IsDirty())
             p->Update();
 
+        if (meModifiedDuringUpdate == SC_CLCUPDATE_MODIFIED)
+            break;      // iterator is invalid
+
         if (aIdle.IsActive() && !pDoc->IsImportingXML())
             break;                      // one interfered
     }
commit 759c4d18d57b06dcc26fb82759599a29c61ef853
Author: Andrea Gelmini <andrea.gelmini at gelma.net>
Date:   Mon Nov 10 15:05:25 2014 +0100

    Fix common typos. No automatic tools. Handmade…
    
    Change-Id: I1ab4e23b0539f8d39974787f226e57a21f96e959
    Reviewed-on: https://gerrit.libreoffice.org/12164
    Reviewed-by: Noel Grandin <noelgrandin at gmail.com>
    Tested-by: Noel Grandin <noelgrandin at gmail.com>

diff --git a/external/glm/Wshadow-unix.patch b/external/glm/Wshadow-unix.patch
index be4af10..47a34a7 100644
--- a/external/glm/Wshadow-unix.patch
+++ b/external/glm/Wshadow-unix.patch
@@ -52,9 +52,9 @@ diff -ur glm.org/glm/core/type_vec1.hpp glm/glm/core/type_vec1.hpp
 +		GLM_FUNC_DECL tvec1(tref1<T> const & r_);
  
  		//////////////////////////////////////
- 		// Convertion scalar constructors
+ 		// Conversion scalar constructors
  
- 		//! Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification)
+ 		//! Explicit conversions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification)
  		template <typename U> 
 -		GLM_FUNC_DECL explicit tvec1(U const & s);
 +		GLM_FUNC_DECL explicit tvec1(U const & s_);
diff --git a/external/glm/Wshadow-windows.patch b/external/glm/Wshadow-windows.patch
index c6c9c65..fa8c284 100644
--- a/external/glm/Wshadow-windows.patch
+++ b/external/glm/Wshadow-windows.patch
@@ -52,7 +52,7 @@ diff -ur glm.org/glm/core/type_vec1.hpp glm/glm/core/type_vec1.hpp
 +		GLM_FUNC_DECL tvec1(tref1<T> const & r_);
  
  		//////////////////////////////////////
- 		// Convertion scalar constructors
+ 		// Conversion scalar constructors
  
  		//! Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification)
  		template <typename U> 
@@ -60,7 +60,7 @@ diff -ur glm.org/glm/core/type_vec1.hpp glm/glm/core/type_vec1.hpp
 +		GLM_FUNC_DECL explicit tvec1(U const & s_);
  
  		//////////////////////////////////////
- 		// Convertion vector constructors
+ 		// Conversion vector constructors
 @@ -121,19 +121,19 @@
  		GLM_FUNC_DECL tvec1<T> & operator= (tvec1<U> const & v);
  
diff --git a/external/mysqlcppconn/patches/cmake.patch b/external/mysqlcppconn/patches/cmake.patch
index 79fe064..a856c21 100644
--- a/external/mysqlcppconn/patches/cmake.patch
+++ b/external/mysqlcppconn/patches/cmake.patch
@@ -127,7 +127,7 @@ diff --recursive -u UnpackedTarball/mysqlcppconn.origin/CMakeLists.txt UnpackedT
 -	ENDIF(STLPORT_INCLUDE_DIR)
 -
 -        # We want to set the inclusion of the library globally
--        ADD_DEFINITIONS(-library=stlport4) # Not a macro defintion, but CMake manual says I can!! ;)
+-        ADD_DEFINITIONS(-library=stlport4) # Not a macro definition, but CMake manual says I can!! ;)
 -        SET(CMAKE_EXE_LINKER_FLAGS        "${CMAKE_EXE_LINKER_FLAGS} -library=stlport4")
 -        SET(CMAKE_SHARED_LINKER_FLAGS     "${CMAKE_SHARED_LINKER_FLAGS} -library=stlport4")
 -        SET(CMAKE_MODULE_LINKER_FLAGS     "${CMAKE_MODULE_LINKER_FLAGS} -library=stlport4")
diff --git a/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
index d937499..4f3830d 100644
--- a/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
+++ b/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
@@ -111,7 +111,7 @@ CreateFolder	Component_	N			Component	1	Identifier		Foreign key into the Compone
 CreateFolder	Directory_	N			Directory	1	Identifier		Primary key, could be foreign key into the Directory table.
 CustomAction	Action	N					Identifier		Primary key, name of action, normally appears in sequence table unless private use.
 CustomAction	Source	Y					CustomSource		The table reference of the source of the code.
-CustomAction	Target	Y					Formatted		Excecution parameter, depends on the type of custom action
+CustomAction	Target	Y					Formatted		Execution parameter, depends on the type of custom action
 CustomAction	Type	N	1	32767					The numeric custom action type, consisting of source location, code type, entry, option flags.
 Dialog	Attributes	Y	0	2147483647					A 32-bit word that specifies the attribute flags to be applied to this dialog.
 Dialog	Control_Cancel	Y			Control	2	Identifier		Defines the cancel control. Hitting escape or clicking on the close icon on the dialog is equivalent to pushing this button.
commit 78999e0f841b4f3583a49333efbcd0e4b492265b
Author: Tobias Madl <tobias.madl.dev at gmail.com>
Date:   Thu Oct 30 20:07:59 2014 +0100

    Basic Idle handler implementation
    
    An idle handler will ultimately be a zero time timeout with
    prioritisation layered on top of that.
    
    Change-Id: I3f0802d5001172fc7b8409274bc5a3632e5dad34

diff --git a/vcl/source/app/timer.cxx b/vcl/source/app/timer.cxx
index 529c8b5..212c521 100644
--- a/vcl/source/app/timer.cxx
+++ b/vcl/source/app/timer.cxx
@@ -385,14 +385,12 @@ AutoTimer& AutoTimer::operator=( const AutoTimer& rTimer )
 Idle::Idle()
     : Timer()
 {
-    mbIdle = true;
     SetPriority(VCL_IDLE_PRIORITY_LOWEST);
 }
 
 Idle::Idle( IdlePriority ePriority )
     : Timer()
 {
-    mbIdle = true;
     SetPriority( ePriority );
 }
 
commit edf7c2b176f98f708a0ef0543602ea6417ad7509
Author: Christian M. Heller <christian.heller63 at gmail.com>
Date:   Sun Nov 2 03:05:01 2014 -0500

    fdo#39468 Translate German Comments - sc/source/core/data/documen2.cxx
    
    Change-Id: I9a426f40f8cdce1f1ebe207dd9ada8154d8fde46
    Reviewed-on: https://gerrit.libreoffice.org/12195
    Reviewed-by: Samuel Mehrbrodt <s.mehrbrodt at gmail.com>
    Tested-by: Samuel Mehrbrodt <s.mehrbrodt at gmail.com>

diff --git a/sc/source/core/data/documen2.cxx b/sc/source/core/data/documen2.cxx
index 35503d7..377b09e 100644
--- a/sc/source/core/data/documen2.cxx
+++ b/sc/source/core/data/documen2.cxx
@@ -332,7 +332,7 @@ void ScDocument::SetChangeTrack( ScChangeTrack* pTrack )
 IMPL_LINK_NOARG(ScDocument, TrackTimeHdl)
 {
     if ( ScDdeLink::IsInUpdate() )      // do not nest
-    {
+    {s
         aTrackIdle.Start();            // try again later
     }
     else if (pShell)                    // execute
commit 9cc2a28323e2c7209e3dae8ec52fc685215e9357
Author: Michael Stahl <mstahl at redhat.com>
Date:   Fri Oct 31 17:51:46 2014 +0100

    framework: avoid double-free in ToolBarManager()
    
    The timer could run after the ToolBarManager is deleted because the
    dispose() method can accidentally restart the timer somehow.
    
    Change-Id: I86868f08f436976761e814d4cea1cd5a0e348935

diff --git a/framework/source/uielement/toolbarmanager.cxx b/framework/source/uielement/toolbarmanager.cxx
index 431f13e..c966532 100644
--- a/framework/source/uielement/toolbarmanager.cxx
+++ b/framework/source/uielement/toolbarmanager.cxx
@@ -476,7 +476,9 @@ throw ( RuntimeException, std::exception )
 {
     SolarMutexGuard g;
     if ( Action.Action == FrameAction_CONTEXT_CHANGED )
+    {
         m_aAsyncUpdateControllersTimer.Start();
+    }
 }
 
 void SAL_CALL ToolBarManager::statusChanged( const ::com::sun::star::frame::FeatureStateEvent& Event )
@@ -1414,7 +1416,9 @@ void ToolBarManager::FillToolbar( const Reference< XIndexAccess >& rItemContaine
     if( m_pToolBar->WillUsePopupMode() )
         UpdateControllers();
     else if ( m_pToolBar->IsReallyVisible() )
+    {
         m_aAsyncUpdateControllersTimer.Start();
+    }
 
     // Try to retrieve UIName from the container property set and set it as the title
     // if it is not empty.
@@ -2048,7 +2052,9 @@ IMPL_LINK( ToolBarManager, StateChanged, StateChangedType*, pStateChangedType )
     else if ( *pStateChangedType == StateChangedType::VISIBLE )
     {
         if ( m_pToolBar->IsReallyVisible() )
+        {
             m_aAsyncUpdateControllersTimer.Start();
+        }
     }
     else if ( *pStateChangedType == StateChangedType::INITSHOW )
     {
commit ec5851361bcf636c57691988b669d76313762a8c
Author: Tobias Madl <tobias.madl.dev at gmail.com>
Date:   Tue Nov 18 15:11:29 2014 +0000

    changed timers to idles
    
    Change-Id: I1595a9711e3d5c564f1c9028cbb756f2b0ca45f1

diff --git a/sc/source/ui/dbgui/sfiltdlg.cxx b/sc/source/ui/dbgui/sfiltdlg.cxx
index 5f1e33f..d39e7c4 100644
--- a/sc/source/ui/dbgui/sfiltdlg.cxx
+++ b/sc/source/ui/dbgui/sfiltdlg.cxx
@@ -57,7 +57,7 @@ ScSpecialFilterDlg::ScSpecialFilterDlg( SfxBindings* pB, SfxChildWindow* pCW, vc
         pDoc            ( NULL ),
         pRefInputEdit   ( NULL ),
         bRefInputMode   ( false ),
-        pTimer          ( NULL )
+        pIdle          ( NULL )
 {
         get(pLbFilterArea,"lbfilterarea");
         get(pEdFilterArea,"edfilterarea");
@@ -85,10 +85,10 @@ ScSpecialFilterDlg::ScSpecialFilterDlg( SfxBindings* pB, SfxChildWindow* pCW, vc
     pEdFilterArea->GrabFocus();
 
     // Hack: RefInput-Kontrolle
-    pTimer = new Timer;
-    pTimer->SetTimeout( 50 ); // 50ms warten
-    pTimer->SetTimeoutHdl( LINK( this, ScSpecialFilterDlg, TimeOutHdl ) );
-    pTimer->Start();
+    pIdle = new Idle;
+    pIdle->SetTimeout( VCL_IDLE_PRIORITY_MEDIUM ); // 50ms warten
+    pIdle->SetIdleHdl( LINK( this, ScSpecialFilterDlg, TimeOutHdl ) );
+    pIdle->Start();
 
     pLbCopyArea->SetAccessibleName(pBtnCopyResult->GetText());
     pEdCopyArea->SetAccessibleName(pBtnCopyResult->GetText());
@@ -108,8 +108,8 @@ ScSpecialFilterDlg::~ScSpecialFilterDlg()
         delete pOutItem;
 
     // Hack: RefInput-Kontrolle
-    pTimer->Stop();
-    delete pTimer;
+    pIdle->Stop();
+    delete pIdle;
 }
 
 void ScSpecialFilterDlg::Init( const SfxItemSet& rArgSet )
@@ -376,11 +376,11 @@ IMPL_LINK( ScSpecialFilterDlg, EndDlgHdl, Button*, pBtn )
     return 0;
 }
 
-IMPL_LINK( ScSpecialFilterDlg, TimeOutHdl, Timer*, _pTimer )
+IMPL_LINK( ScSpecialFilterDlg, TimeOutHdl, Idle*, _pIdle )
 {
     // alle 50ms nachschauen, ob RefInputMode noch stimmt
 
-    if( (_pTimer == pTimer) && IsActive() )
+    if( (_pIdle == pIdle) && IsActive() )
     {
         if( pEdCopyArea->HasFocus() || pRbCopyArea->HasFocus() )
         {
@@ -399,7 +399,7 @@ IMPL_LINK( ScSpecialFilterDlg, TimeOutHdl, Timer*, _pTimer )
         }
     }
 
-    pTimer->Start();
+    pIdle->Start();
 
     return 0;
 }
diff --git a/sc/source/ui/inc/filtdlg.hxx b/sc/source/ui/inc/filtdlg.hxx
index 1b1fdc5..e7e89cc 100644
--- a/sc/source/ui/inc/filtdlg.hxx
+++ b/sc/source/ui/inc/filtdlg.hxx
@@ -206,7 +206,7 @@ private:
     bool                bRefInputMode;
 
     // Hack: RefInput control
-    Timer*  pTimer;
+    Idle*  pIdle;
 
 private:
     void            Init( const SfxItemSet& rArgSet );
@@ -220,7 +220,7 @@ private:
     DECL_LINK( ScrollHdl, ScrollBar* );
 
     // Hack: RefInput control
-    DECL_LINK( TimeOutHdl,       Timer* );
+    DECL_LINK( TimeOutHdl,       Idle* );
 };
 
 #endif // INCLUDED_SC_SOURCE_UI_INC_FILTDLG_HXX
diff --git a/sd/source/ui/inc/View.hxx b/sd/source/ui/inc/View.hxx
index 962f75d9..e9630c7 100644
--- a/sd/source/ui/inc/View.hxx
+++ b/sd/source/ui/inc/View.hxx
@@ -276,8 +276,8 @@ protected:
     Point                   maDropPos;
     ::std::vector<OUString> maDropFileVector;
     sal_Int8                mnAction;
-    Timer                   maDropErrorTimer;
-    Timer                   maDropInsertFileTimer;
+    Idle                    maDropErrorIdle;
+    Idle                    maDropInsertFileIdle;
     sal_uInt16                  mnLockRedrawSmph;
     boost::ptr_vector<SdViewRedrawRec> maLockedRedraws;
     bool                    mbIsDropAllowed;
diff --git a/sd/source/ui/view/sdview.cxx b/sd/source/ui/view/sdview.cxx
index 1eb87b5..bf3ec43 100644
--- a/sd/source/ui/view/sdview.cxx
+++ b/sd/source/ui/view/sdview.cxx
@@ -138,10 +138,10 @@ View::View(SdDrawDocument& rDrawDoc, OutputDevice* pOutDev,
     SetMeasureLayer(SD_RESSTR(STR_LAYER_MEASURELINES));
 
     // Timer for delayed drop (has to be for MAC)
-    maDropErrorTimer.SetTimeoutHdl( LINK(this, View, DropErrorHdl) );
-    maDropErrorTimer.SetTimeout(50);
-    maDropInsertFileTimer.SetTimeoutHdl( LINK(this, View, DropInsertFileHdl) );
-    maDropInsertFileTimer.SetTimeout(50);
+    maDropErrorIdle.SetIdleHdl( LINK(this, View, DropErrorHdl) );
+    maDropErrorIdle.SetPriority(VCL_IDLE_PRIORITY_MEDIUM);
+    maDropInsertFileIdle.SetIdleHdl( LINK(this, View, DropInsertFileHdl) );
+    maDropInsertFileIdle.SetPriority(VCL_IDLE_PRIORITY_MEDIUM);
 }
 
 void View::ImplClearDrawDropMarker()
@@ -160,8 +160,8 @@ View::~View()
     // release content of selection clipboard, if we own the content
     UpdateSelectionClipboard( true );
 
-    maDropErrorTimer.Stop();
-    maDropInsertFileTimer.Stop();
+    maDropErrorIdle.Stop();
+    maDropInsertFileIdle.Stop();
 
     ImplClearDrawDropMarker();
 
diff --git a/sd/source/ui/view/sdview3.cxx b/sd/source/ui/view/sdview3.cxx
index 2cc0b56..e029afa 100644
--- a/sd/source/ui/view/sdview3.cxx
+++ b/sd/source/ui/view/sdview3.cxx
@@ -580,7 +580,7 @@ bool View::InsertData( const TransferableDataHelper& rDataHelper,
                             }
                             else
                             {
-                                maDropErrorTimer.Start();
+                                maDropErrorIdle.Start();
                                 bReturn = false;
                             }
                         }
@@ -617,7 +617,7 @@ bool View::InsertData( const TransferableDataHelper& rDataHelper,
                 }
                 else
                 {
-                    maDropErrorTimer.Start();
+                    maDropErrorIdle.Start();
                     bReturn = false;
                 }
             }
@@ -1448,7 +1448,7 @@ bool View::InsertData( const TransferableDataHelper& rDataHelper,
             for( sal_uLong i = 0, nCount = aDropFileList.Count(); i < nCount; i++ )
                 maDropFileVector.push_back( aDropFileList.GetFile( i ) );
 
-            maDropInsertFileTimer.Start();
+            maDropInsertFileIdle.Start();
         }
 
         bReturn = true;
@@ -1462,7 +1462,7 @@ bool View::InsertData( const TransferableDataHelper& rDataHelper,
         {
             maDropFileVector.clear();
             maDropFileVector.push_back( aDropFile );
-            maDropInsertFileTimer.Start();
+            maDropInsertFileIdle.Start();
         }
 
         bReturn = true;
diff --git a/sfx2/source/dialog/basedlgs.cxx b/sfx2/source/dialog/basedlgs.cxx
index dbabdba..8be4a17 100644
--- a/sfx2/source/dialog/basedlgs.cxx
+++ b/sfx2/source/dialog/basedlgs.cxx
@@ -52,7 +52,7 @@ public:
     bool            bConstructed;
     void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
 
-    Timer           aMoveTimer;
+    Idle            aMoveIdle;
 };
 
 void SfxModelessDialog_Impl::Notify( SfxBroadcaster&, const SfxHint& rHint )
@@ -75,7 +75,7 @@ public:
     OString aWinState;
     SfxChildWindow* pMgr;
     bool            bConstructed;
-    Timer           aMoveTimer;
+    Idle            aMoveIdle;
 
     void            Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SAL_OVERRIDE;
 };
@@ -267,7 +267,7 @@ void SfxModelessDialog::Resize()
     if ( pImp->bConstructed && pImp->pMgr )
     {
         // start timer for saving window status information
-        pImp->aMoveTimer.Start();
+        pImp->aMoveIdle.Start();
     }
 }
 
@@ -277,7 +277,7 @@ void SfxModelessDialog::Move()
     if ( pImp->bConstructed && pImp->pMgr && IsReallyVisible() )
     {
         // start timer for saving window status information
-        pImp->aMoveTimer.Start();
+        pImp->aMoveIdle.Start();
     }
 }
 
@@ -287,7 +287,7 @@ void SfxModelessDialog::Move()
 */
 IMPL_LINK_NOARG(SfxModelessDialog, TimerHdl)
 {
-    pImp->aMoveTimer.Stop();
+    pImp->aMoveIdle.Stop();
     if ( pImp->bConstructed && pImp->pMgr )
     {
         if ( !IsRollUp() )
@@ -318,8 +318,8 @@ void SfxModelessDialog::Init(SfxBindings *pBindinx, SfxChildWindow *pCW)
     SetUniqueId( GetHelpId() );
     if ( pBindinx )
         pImp->StartListening( *pBindinx );
-    pImp->aMoveTimer.SetTimeout(50);
-    pImp->aMoveTimer.SetTimeoutHdl(LINK(this,SfxModelessDialog,TimerHdl));

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list