diff options
110 files changed, 290 insertions, 291 deletions
diff --git a/avmedia/source/framework/mediacontrol.cxx b/avmedia/source/framework/mediacontrol.cxx index 8d3ac388dcd0..0f257eff36ad 100644 --- a/avmedia/source/framework/mediacontrol.cxx +++ b/avmedia/source/framework/mediacontrol.cxx @@ -114,7 +114,7 @@ MediaControl::MediaControl( vcl::Window* pParent, MediaControlStyle eControlStyl mpZoomToolBox->SetPaintTransparent( true ); } - maIdle.SetPriority( SchedulerPriority::LOW ); + maIdle.SetPriority( TaskPriority::LOW ); maIdle.SetIdleHdl( LINK( this, MediaControl, implTimeoutHdl ) ); maIdle.Start(); } diff --git a/avmedia/source/framework/soundhandler.cxx b/avmedia/source/framework/soundhandler.cxx index 753fddca4b52..0907555bfe84 100644 --- a/avmedia/source/framework/soundhandler.cxx +++ b/avmedia/source/framework/soundhandler.cxx @@ -221,7 +221,7 @@ void SAL_CALL SoundHandler::dispatchWithNotification(const css::util::URL& // Count this request and initialize self-holder against dying by uno ref count ... m_xSelfHold.set(static_cast< ::cppu::OWeakObject* >(this), css::uno::UNO_QUERY); m_xPlayer->start(); - m_aUpdateIdle.SetPriority( SchedulerPriority::LOWER ); + m_aUpdateIdle.SetPriority( TaskPriority::LOWER ); m_aUpdateIdle.Start(); } catch( css::uno::Exception& e ) diff --git a/avmedia/source/opengl/oglplayer.cxx b/avmedia/source/opengl/oglplayer.cxx index bfc25d40b0fb..12b746a384dd 100644 --- a/avmedia/source/opengl/oglplayer.cxx +++ b/avmedia/source/opengl/oglplayer.cxx @@ -123,7 +123,7 @@ bool OGLPlayer::create( const OUString& rURL ) // Set timer m_aTimer.SetTimeout(8); // is 125fps enough for anyone ? - m_aTimer.SetPriority(SchedulerPriority::LOW); + m_aTimer.SetPriority(TaskPriority::LOW); m_aTimer.SetTimeoutHdl(LINK(this,OGLPlayer,TimerHandler)); return true; diff --git a/basctl/source/basicide/baside2b.cxx b/basctl/source/basicide/baside2b.cxx index d7a90743f331..12ccf1cc3286 100644 --- a/basctl/source/basicide/baside2b.cxx +++ b/basctl/source/basicide/baside2b.cxx @@ -960,7 +960,7 @@ void EditorWindow::CreateEditEngine() ImplSetFont(); - aSyntaxIdle.SetPriority( SchedulerPriority::LOWER ); + aSyntaxIdle.SetPriority( TaskPriority::LOWER ); aSyntaxIdle.SetIdleHdl( LINK( this, EditorWindow, SyntaxTimerHdl ) ); bool bWasDoSyntaxHighlight = bDoSyntaxHighlight; diff --git a/basctl/source/dlged/dlged.cxx b/basctl/source/dlged/dlged.cxx index 411cb5506cd2..cc0aa7fcb755 100644 --- a/basctl/source/dlged/dlged.cxx +++ b/basctl/source/dlged/dlged.cxx @@ -217,7 +217,7 @@ DlgEditor::DlgEditor ( m_ClipboardDataFlavorsResource[1].HumanPresentableName = "Dialog 8.0" ; m_ClipboardDataFlavorsResource[1].DataType = cppu::UnoType<Sequence< sal_Int8 >>::get(); - aMarkIdle.SetPriority(SchedulerPriority::LOW); + aMarkIdle.SetPriority(TaskPriority::LOW); aMarkIdle.SetIdleHdl( LINK( this, DlgEditor, MarkTimeout ) ); rWindow.SetMapMode( MapMode( MapUnit::Map100thMM ) ); diff --git a/chart2/source/view/charttypes/GL3DBarChart.cxx b/chart2/source/view/charttypes/GL3DBarChart.cxx index 6891007f9e04..fea7cf0dcd0e 100644 --- a/chart2/source/view/charttypes/GL3DBarChart.cxx +++ b/chart2/source/view/charttypes/GL3DBarChart.cxx @@ -558,7 +558,7 @@ GL3DBarChart::GL3DBarChart( { mbAutoFly = atoi(aAutoFly); } - maIdle.SetPriority(SchedulerPriority::REPAINT); + maIdle.SetPriority(TaskPriority::REPAINT); maIdle.SetIdleHdl(LINK(this, GL3DBarChart, UpdateTimerHdl)); maIdle.SetDebugName( "charttypes::GL3DBarChart maIdle" ); maIdle.Start(); diff --git a/cui/source/dialogs/cuigaldlg.cxx b/cui/source/dialogs/cuigaldlg.cxx index 08b28da57150..185ffc6be5c3 100644 --- a/cui/source/dialogs/cuigaldlg.cxx +++ b/cui/source/dialogs/cuigaldlg.cxx @@ -450,7 +450,7 @@ short ActualizeProgress::Execute() pIdle = new Idle("ActualizeProgressTimeout"); pIdle->SetIdleHdl( LINK( this, ActualizeProgress, TimeoutHdl ) ); - pIdle->SetPriority( SchedulerPriority::LOWEST ); + pIdle->SetPriority( TaskPriority::LOWEST ); pIdle->Start(); nRet = ModalDialog::Execute(); diff --git a/cui/source/dialogs/linkdlg.cxx b/cui/source/dialogs/linkdlg.cxx index bba24a8e707c..1da650d9a322 100644 --- a/cui/source/dialogs/linkdlg.cxx +++ b/cui/source/dialogs/linkdlg.cxx @@ -124,7 +124,7 @@ SvBaseLinksDlg::SvBaseLinksDlg( vcl::Window * pParent, LinkManager* pMgr, bool b // UpdateTimer for DDE-/Grf-links, which are waited for aUpdateIdle.SetIdleHdl( LINK( this, SvBaseLinksDlg, UpdateWaitingHdl ) ); - aUpdateIdle.SetPriority( SchedulerPriority::LOWEST ); + aUpdateIdle.SetPriority( TaskPriority::LOWEST ); m_pPbOpenSource->Hide(); diff --git a/cui/source/dialogs/thesdlg.cxx b/cui/source/dialogs/thesdlg.cxx index cd71d22f9b29..3f831e7ba00e 100644 --- a/cui/source/dialogs/thesdlg.cxx +++ b/cui/source/dialogs/thesdlg.cxx @@ -64,7 +64,7 @@ LookUpComboBox::LookUpComboBox(vcl::Window *pParent) EnableAutoSize(true); m_aModifyIdle.SetIdleHdl( LINK( this, LookUpComboBox, ModifyTimer_Hdl ) ); - m_aModifyIdle.SetPriority( SchedulerPriority::LOWEST ); + m_aModifyIdle.SetPriority( TaskPriority::LOWEST ); EnableAutocomplete( false ); } diff --git a/cui/source/options/optjava.cxx b/cui/source/options/optjava.cxx index 03f51c929505..462160727641 100644 --- a/cui/source/options/optjava.cxx +++ b/cui/source/options/optjava.cxx @@ -186,7 +186,7 @@ SvxJavaOptionsPage::SvxJavaOptionsPage( vcl::Window* pParent, const SfxItemSet& m_pParameterBtn->SetClickHdl( LINK( this, SvxJavaOptionsPage, ParameterHdl_Impl ) ); m_pClassPathBtn->SetClickHdl( LINK( this, SvxJavaOptionsPage, ClassPathHdl_Impl ) ); m_aResetIdle.SetIdleHdl( LINK( this, SvxJavaOptionsPage, ResetHdl_Impl ) ); - m_aResetIdle.SetPriority(SchedulerPriority::LOWER); + m_aResetIdle.SetPriority(TaskPriority::LOWER); m_pExpertConfigBtn->SetClickHdl( LINK( this, SvxJavaOptionsPage, ExpertConfigHdl_Impl) ); if (!officecfg::Office::Common::Security::EnableExpertConfiguration::get()) diff --git a/cui/source/tabpages/backgrnd.cxx b/cui/source/tabpages/backgrnd.cxx index 9938b36714e6..5858783970f9 100644 --- a/cui/source/tabpages/backgrnd.cxx +++ b/cui/source/tabpages/backgrnd.cxx @@ -953,7 +953,7 @@ void SvxBackgroundTabPage::ShowSelector() // delayed loading via timer (because of UI-Update) pPageImpl->pLoadIdle = new Idle("DelayedLoad"); - pPageImpl->pLoadIdle->SetPriority( SchedulerPriority::LOWEST ); + pPageImpl->pLoadIdle->SetPriority( TaskPriority::LOWEST ); pPageImpl->pLoadIdle->SetIdleHdl( LINK( this, SvxBackgroundTabPage, LoadIdleHdl_Impl ) ); diff --git a/cui/source/tabpages/chardlg.cxx b/cui/source/tabpages/chardlg.cxx index 5bb00f455dc9..240698f9ddfc 100644 --- a/cui/source/tabpages/chardlg.cxx +++ b/cui/source/tabpages/chardlg.cxx @@ -247,7 +247,7 @@ struct SvxCharNamePage_Impl m_bInSearchMode ( false ) { - m_aUpdateIdle.SetPriority( SchedulerPriority::LOWEST ); + m_aUpdateIdle.SetPriority( TaskPriority::LOWEST ); } ~SvxCharNamePage_Impl() diff --git a/cui/source/tabpages/macroass.cxx b/cui/source/tabpages/macroass.cxx index 529124c191ef..7485ad5c86a0 100644 --- a/cui/source/tabpages/macroass.cxx +++ b/cui/source/tabpages/macroass.cxx @@ -138,7 +138,7 @@ SfxMacroTabPage::SfxMacroTabPage(vcl::Window* pParent, const Reference< XFrame > mpImpl.reset(new SfxMacroTabPage_Impl); mpImpl->maFillGroupIdle.SetIdleHdl( LINK( this, SfxMacroTabPage, TimeOut_Impl ) ); - mpImpl->maFillGroupIdle.SetPriority( SchedulerPriority::HIGHEST ); + mpImpl->maFillGroupIdle.SetPriority( TaskPriority::HIGHEST ); mpImpl->maFillGroupIdle.SetDebugName( "SfxMacroTabPage maFillGroupIdle" ); mpImpl->sStrEvent = get<FixedText>("eventft")->GetText(); diff --git a/dbaccess/source/ui/querydesign/JoinTableView.cxx b/dbaccess/source/ui/querydesign/JoinTableView.cxx index f08beeefdb3a..728903252df0 100644 --- a/dbaccess/source/ui/querydesign/JoinTableView.cxx +++ b/dbaccess/source/ui/querydesign/JoinTableView.cxx @@ -1063,7 +1063,7 @@ void OJoinTableView::ScrollWhileDragging() // resetting timer, if still necessary if (bNeedScrollTimer) { - m_aDragScrollIdle.SetPriority(SchedulerPriority::LOW); + m_aDragScrollIdle.SetPriority(TaskPriority::LOW); m_aDragScrollIdle.Start(); } diff --git a/desktop/source/deployment/gui/dp_gui_dialog2.cxx b/desktop/source/deployment/gui/dp_gui_dialog2.cxx index 89ac27c9d6fa..04a025984b5e 100644 --- a/desktop/source/deployment/gui/dp_gui_dialog2.cxx +++ b/desktop/source/deployment/gui/dp_gui_dialog2.cxx @@ -521,7 +521,7 @@ ExtMgrDialog::ExtMgrDialog(vcl::Window *pParent, TheExtensionManager *pManager, m_pUpdateBtn->Hide(); #endif - m_aIdle.SetPriority(SchedulerPriority::LOWEST); + m_aIdle.SetPriority(TaskPriority::LOWEST); m_aIdle.SetIdleHdl( LINK( this, ExtMgrDialog, TimeOutHdl ) ); } @@ -1065,7 +1065,7 @@ UpdateRequiredDialog::UpdateRequiredDialog(vcl::Window *pParent, TheExtensionMan m_pUpdateBtn->Enable( false ); m_pCloseBtn->GrabFocus(); - m_aIdle.SetPriority( SchedulerPriority::LOWEST ); + m_aIdle.SetPriority( TaskPriority::LOWEST ); m_aIdle.SetIdleHdl( LINK( this, UpdateRequiredDialog, TimeOutHdl ) ); } diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index 79e284a2e7b8..d29a6950c301 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -602,7 +602,7 @@ CallbackFlushHandler::CallbackFlushHandler(LibreOfficeKitDocument* pDocument, Li m_bPartTilePainting(false), m_bEventLatch(false) { - SetPriority(SchedulerPriority::POST_PAINT); + SetPriority(TaskPriority::POST_PAINT); // Add the states that are safe to skip duplicates on, // even when not consequent. diff --git a/editeng/source/editeng/impedit2.cxx b/editeng/source/editeng/impedit2.cxx index 946ae5c406cb..fc2b2aa1f4bc 100644 --- a/editeng/source/editeng/impedit2.cxx +++ b/editeng/source/editeng/impedit2.cxx @@ -148,7 +148,7 @@ ImpEditEngine::ImpEditEngine( EditEngine* pEE, SfxItemPool* pItemPool ) : aStatusTimer.SetTimeoutHdl( LINK( this, ImpEditEngine, StatusTimerHdl ) ); aStatusTimer.SetDebugName( "editeng::ImpEditEngine aStatusTimer" ); - aIdleFormatter.SetPriority( SchedulerPriority::REPAINT ); + aIdleFormatter.SetPriority( TaskPriority::REPAINT ); aIdleFormatter.SetIdleHdl( LINK( this, ImpEditEngine, IdleFormatHdl ) ); aIdleFormatter.SetDebugName( "editeng::ImpEditEngine aIdleFormatter" ); diff --git a/extensions/source/bibliography/bibcont.cxx b/extensions/source/bibliography/bibcont.cxx index 834d400fae46..34292481a8b4 100644 --- a/extensions/source/bibliography/bibcont.cxx +++ b/extensions/source/bibliography/bibcont.cxx @@ -121,7 +121,7 @@ BibBookContainer::BibBookContainer(vcl::Window* pParent): { pBibMod = OpenBibModul(); aIdle.SetIdleHdl(LINK( this, BibBookContainer, SplitHdl)); - aIdle.SetPriority(SchedulerPriority::LOWEST); + aIdle.SetPriority(TaskPriority::LOWEST); } BibBookContainer::~BibBookContainer() diff --git a/extensions/source/bibliography/toolbar.cxx b/extensions/source/bibliography/toolbar.cxx index 9f5541d1fdfe..b62a03c0e1a9 100644 --- a/extensions/source/bibliography/toolbar.cxx +++ b/extensions/source/bibliography/toolbar.cxx @@ -202,7 +202,7 @@ BibToolBar::BibToolBar(vcl::Window* pParent, Link<void*,void> aLink) Application::AddEventListener( LINK( this, BibToolBar, SettingsChanged_Impl ) ); aIdle.SetIdleHdl(LINK( this, BibToolBar, SendSelHdl)); - aIdle.SetPriority(SchedulerPriority::LOWEST); + aIdle.SetPriority(TaskPriority::LOWEST); SetDropdownClickHdl( LINK( this, BibToolBar, MenuHdl)); diff --git a/extensions/source/update/ui/updatecheckui.cxx b/extensions/source/update/ui/updatecheckui.cxx index 13268dfbc037..d8f3a036a8e6 100644 --- a/extensions/source/update/ui/updatecheckui.cxx +++ b/extensions/source/update/ui/updatecheckui.cxx @@ -206,7 +206,7 @@ UpdateCheckUI::UpdateCheckUI(const uno::Reference<uno::XComponentContext>& xCont maBubbleImage = GetBubbleImage( maBubbleImageURL ); - maWaitIdle.SetPriority( SchedulerPriority::LOWEST ); + maWaitIdle.SetPriority( TaskPriority::LOWEST ); maWaitIdle.SetIdleHdl( LINK( this, UpdateCheckUI, WaitTimeOutHdl ) ); maTimeoutTimer.SetTimeout( 10000 ); diff --git a/forms/source/component/ListBox.cxx b/forms/source/component/ListBox.cxx index 00e1e7afafb7..8a7276c8dd31 100644 --- a/forms/source/component/ListBox.cxx +++ b/forms/source/component/ListBox.cxx @@ -1798,7 +1798,7 @@ namespace frm doSetDelegator(); - m_aChangeIdle.SetPriority(SchedulerPriority::LOWEST); + m_aChangeIdle.SetPriority(TaskPriority::LOWEST); m_aChangeIdle.SetIdleHdl(LINK(this,OListBoxControl,OnTimeout)); } diff --git a/formula/source/ui/dlg/formula.cxx b/formula/source/ui/dlg/formula.cxx index f745cbc10605..a0eacea77068 100644 --- a/formula/source/ui/dlg/formula.cxx +++ b/formula/source/ui/dlg/formula.cxx @@ -1801,7 +1801,7 @@ OUString FormulaDlg::GetMeText() const void FormulaDlg::Update() { m_pImpl->Update(); - m_pImpl->aIdle.SetPriority(SchedulerPriority::LOWER); + m_pImpl->aIdle.SetPriority(TaskPriority::LOWER); m_pImpl->aIdle.SetIdleHdl(LINK( this, FormulaDlg, UpdateFocusHdl)); m_pImpl->aIdle.Start(); } diff --git a/formula/source/ui/dlg/funcutl.cxx b/formula/source/ui/dlg/funcutl.cxx index 238986494768..6472fdebcb1d 100644 --- a/formula/source/ui/dlg/funcutl.cxx +++ b/formula/source/ui/dlg/funcutl.cxx @@ -409,7 +409,7 @@ RefEdit::RefEdit( vcl::Window* _pParent, vcl::Window* pShrinkModeLabel, WinBits , pLabelWidget(pShrinkModeLabel) { aIdle.SetIdleHdl( LINK( this, RefEdit, UpdateHdl ) ); - aIdle.SetPriority( SchedulerPriority::LOW ); + aIdle.SetPriority( TaskPriority::LOW ); } VCL_BUILDER_DECL_FACTORY(RefEdit) @@ -478,7 +478,7 @@ void RefEdit::SetReferences( IControlReferenceHandler* pDlg, vcl::Window* pLabel if( pDlg ) { aIdle.SetIdleHdl( LINK( this, RefEdit, UpdateHdl ) ); - aIdle.SetPriority( SchedulerPriority::LOW ); + aIdle.SetPriority( TaskPriority::LOW ); } else { diff --git a/include/vcl/idle.hxx b/include/vcl/idle.hxx index d3fdfbb5f78e..9f491e1ad9f7 100644 --- a/include/vcl/idle.hxx +++ b/include/vcl/idle.hxx @@ -23,7 +23,7 @@ #include <tools/link.hxx> #include <vcl/scheduler.hxx> -class VCL_DLLPUBLIC Idle : public Scheduler +class VCL_DLLPUBLIC Idle : public Task { Link<Idle *, void> maIdleHdl; // Callback Link diff --git a/include/vcl/scheduler.hxx b/include/vcl/scheduler.hxx index 16aba06a4b59..1e4b9d628a0d 100644 --- a/include/vcl/scheduler.hxx +++ b/include/vcl/scheduler.hxx @@ -22,9 +22,43 @@ #include <vcl/dllapi.h> +class Task; + +class VCL_DLLPUBLIC Scheduler +{ + friend class Task; + Scheduler() = delete; + +protected: + static void ImplStartTimer ( sal_uInt64 nMS, bool bForce = false ); + +public: + static const SAL_CONSTEXPR sal_uInt64 ImmediateTimeoutMs = 1; + static const SAL_CONSTEXPR sal_uInt64 InfiniteTimeoutMs = 1000 * 60 * 60 * 24; // 1 day + + static void ImplDeInitScheduler(); + + /// Process one pending Timer with highhest priority + static void CallbackTaskScheduling( bool ignore ); + /// Calculate minimum timeout - and return its value. + static sal_uInt64 CalculateMinimumTimeout( bool &bHasActiveIdles ); + /// Process one pending task ahead of time with highest priority. + static bool ProcessTaskScheduling( bool bIdle ); + /// Process all events until we are idle + static void ProcessEventsToIdle(); + + /// Control the deterministic mode. In this mode, two subsequent runs of + /// LibreOffice fire about the same amount idles. + static void SetDeterministicMode(bool bDeterministic); + /// Return the current state of deterministic mode. + static bool GetDeterministicMode(); +}; + + struct ImplSchedulerData; -enum class SchedulerPriority { +enum class TaskPriority +{ HIGHEST = 0, HIGH = 1, RESIZE = 2, @@ -37,21 +71,19 @@ enum class SchedulerPriority { LOWEST = 8 }; -class VCL_DLLPUBLIC Scheduler +class VCL_DLLPUBLIC Task { -protected: - ImplSchedulerData* mpSchedulerData; /// Pointer to element in scheduler list - const sal_Char *mpDebugName; /// Useful for debugging - SchedulerPriority mePriority; /// Scheduler priority - bool mbActive; /// Currently in the scheduler + friend class Scheduler; + friend struct ImplSchedulerData; - // These should be constexpr static, when supported. - static const sal_uInt64 ImmediateTimeoutMs = 1; - static const sal_uInt64 InfiniteTimeoutMs = 1000 * 60 * 60 * 24; // 1 day +protected: + ImplSchedulerData *mpSchedulerData; /// Pointer to the element in scheduler list + const sal_Char *mpDebugName; /// Useful for debugging + TaskPriority mePriority; /// Task priority + bool mbActive; /// Currently in the scheduler - static void ImplStartTimer(sal_uInt64 nMS, bool bForce = false); + void StartTimer( sal_uInt64 nMS ); - friend struct ImplSchedulerData; virtual void SetDeletionFlags(); /// Is this item ready to be dispatched at nTimeNow virtual bool ReadyForSchedule( bool bIdle, sal_uInt64 nTimeNow ) const = 0; @@ -64,12 +96,12 @@ protected: virtual sal_uInt64 UpdateMinPeriod( sal_uInt64 nMinPeriod, sal_uInt64 nTimeNow ) const = 0; public: - Scheduler( const sal_Char *pDebugName ); - Scheduler( const Scheduler& rScheduler ); - virtual ~Scheduler(); + Task( const sal_Char *pDebugName ); + Task( const Task& rTask ); + virtual ~Task(); - void SetPriority(SchedulerPriority ePriority) { mePriority = ePriority; } - SchedulerPriority GetPriority() const { return mePriority; } + void SetPriority(TaskPriority ePriority) { mePriority = ePriority; } + TaskPriority GetPriority() const { return mePriority; } void SetDebugName( const sal_Char *pDebugName ) { mpDebugName = pDebugName; } const char *GetDebugName() { return mpDebugName; } @@ -82,23 +114,7 @@ public: bool IsActive() const { return mbActive; } - Scheduler& operator=( const Scheduler& rScheduler ); - static void ImplDeInitScheduler(); - - /// Process one pending Timer with highhest priority - static void CallbackTaskScheduling( bool ignore ); - /// Calculate minimum timeout - and return its value. - static sal_uInt64 CalculateMinimumTimeout( bool &bHasActiveIdles ); - /// Process one pending task ahead of time with highest priority. - static bool ProcessTaskScheduling( bool bIdle ); - /// Process all events until we are idle - static void ProcessEventsToIdle(); - - /// Control the deterministic mode. In this mode, two subsequent runs of - /// LibreOffice fire about the same amount idles. - static void SetDeterministicMode(bool bDeterministic); - /// Return the current state of deterministic mode. - static bool GetDeterministicMode(); + Task& operator=( const Task& rTask ); }; #endif // INCLUDED_VCL_SCHEDULER_HXX diff --git a/include/vcl/timer.hxx b/include/vcl/timer.hxx index ff79acde2936..19a882f02555 100644 --- a/include/vcl/timer.hxx +++ b/include/vcl/timer.hxx @@ -23,7 +23,7 @@ #include <tools/link.hxx> #include <vcl/scheduler.hxx> -class VCL_DLLPUBLIC Timer : public Scheduler +class VCL_DLLPUBLIC Timer : public Task { protected: Link<Timer *, void> maTimeoutHdl; // Callback Link diff --git a/linguistic/source/lngsvcmgr.cxx b/linguistic/source/lngsvcmgr.cxx index 9a752aee085b..2f43476b115b 100644 --- a/linguistic/source/lngsvcmgr.cxx +++ b/linguistic/source/lngsvcmgr.cxx @@ -447,7 +447,7 @@ LngSvcMgr::LngSvcMgr() UpdateAll(); - aUpdateIdle.SetPriority(SchedulerPriority::LOWEST); + aUpdateIdle.SetPriority(TaskPriority::LOWEST); aUpdateIdle.SetIdleHdl(LINK(this, LngSvcMgr, updateAndBroadcast)); // request to be notified if an extension has been added/removed diff --git a/reportdesign/source/ui/report/DesignView.cxx b/reportdesign/source/ui/report/DesignView.cxx index 5332dbcfecae..bddccde740a3 100644 --- a/reportdesign/source/ui/report/DesignView.cxx +++ b/reportdesign/source/ui/report/DesignView.cxx @@ -116,7 +116,7 @@ ODesignView::ODesignView( vcl::Window* pParent, m_aSplitWin->SetAlign(WindowAlign::Left); m_aSplitWin->Show(); - m_aMarkIdle.SetPriority( SchedulerPriority::LOW ); + m_aMarkIdle.SetPriority( TaskPriority::LOW ); m_aMarkIdle.SetIdleHdl( LINK( this, ODesignView, MarkTimeout ) ); } diff --git a/sc/source/core/data/documen2.cxx b/sc/source/core/data/documen2.cxx index c199c119d1ed..b5d60abd7136 100644 --- a/sc/source/core/data/documen2.cxx +++ b/sc/source/core/data/documen2.cxx @@ -249,7 +249,7 @@ ScDocument::ScDocument( ScDocumentMode eMode, SfxObjectShell* pDocShell ) : SetLanguage( ScGlobal::eLnge, ScGlobal::eLnge, ScGlobal::eLnge ); aTrackIdle.SetIdleHdl( LINK( this, ScDocument, TrackTimeHdl ) ); - aTrackIdle.SetPriority( SchedulerPriority::LOW ); + aTrackIdle.SetPriority( TaskPriority::LOW ); } sfx2::LinkManager* ScDocument::GetLinkManager() diff --git a/sc/source/core/tool/chartlis.cxx b/sc/source/core/tool/chartlis.cxx index fd27fbdd169f..c159f397355a 100644 --- a/sc/source/core/tool/chartlis.cxx +++ b/sc/source/core/tool/chartlis.cxx @@ -405,7 +405,7 @@ ScChartHiddenRangeListener::~ScChartHiddenRangeListener() void ScChartListenerCollection::Init() { aIdle.SetIdleHdl( LINK( this, ScChartListenerCollection, TimerHdl ) ); - aIdle.SetPriority( SchedulerPriority::REPAINT ); + aIdle.SetPriority( TaskPriority::REPAINT ); aIdle.SetDebugName( "sc::ScChartListenerCollection aIdle" ); } diff --git a/sc/source/ui/app/scmod.cxx b/sc/source/ui/app/scmod.cxx index c81adcca58a1..1bf3cba85b87 100644 --- a/sc/source/ui/app/scmod.cxx +++ b/sc/source/ui/app/scmod.cxx @@ -179,7 +179,7 @@ ScModule::ScModule( SfxObjectFactory* pFact ) : ERRCODE_AREA_APP2-1, GetResMgr() ); - aSpellIdle.SetPriority(SchedulerPriority::LOWER); + aSpellIdle.SetPriority(TaskPriority::LOWER); aSpellIdle.SetIdleHdl( LINK( this, ScModule, SpellTimerHdl ) ); aSpellIdle.SetDebugName( "sc::ScModule aSpellIdle" ); diff --git a/sc/source/ui/dbgui/sfiltdlg.cxx b/sc/source/ui/dbgui/sfiltdlg.cxx index e49bf82a24b5..5148a7cd059b 100644 --- a/sc/source/ui/dbgui/sfiltdlg.cxx +++ b/sc/source/ui/dbgui/sfiltdlg.cxx @@ -88,7 +88,7 @@ ScSpecialFilterDlg::ScSpecialFilterDlg( SfxBindings* pB, SfxChildWindow* pCW, vc // Hack: RefInput-Kontrolle pIdle = new Idle; // FIXME: this is an abomination - pIdle->SetPriority( SchedulerPriority::LOWEST ); + pIdle->SetPriority( TaskPriority::LOWEST ); pIdle->SetIdleHdl( LINK( this, ScSpecialFilterDlg, TimeOutHdl ) ); pIdle->Start(); } diff --git a/sc/source/ui/docshell/autostyl.cxx b/sc/source/ui/docshell/autostyl.cxx index 3888dbcbcea4..355d5b7851df 100644 --- a/sc/source/ui/docshell/autostyl.cxx +++ b/sc/source/ui/docshell/autostyl.cxx @@ -65,7 +65,7 @@ ScAutoStyleList::ScAutoStyleList(ScDocShell* pShell) { aTimer.SetTimeoutHdl( LINK( this, ScAutoStyleList, TimerHdl ) ); aInitIdle.SetIdleHdl( LINK( this, ScAutoStyleList, InitHdl ) ); - aInitIdle.SetPriority( SchedulerPriority::HIGHEST ); + aInitIdle.SetPriority( TaskPriority::HIGHEST ); } ScAutoStyleList::~ScAutoStyleList() diff --git a/sc/source/ui/miscdlgs/acredlin.cxx b/sc/source/ui/miscdlgs/acredlin.cxx index e92e3ee9dc74..6bfa541b1288 100644 --- a/sc/source/ui/miscdlgs/acredlin.cxx +++ b/sc/source/ui/miscdlgs/acredlin.cxx @@ -108,13 +108,13 @@ ScAcceptChgDlg::ScAcceptChgDlg(SfxBindings* pB, SfxChildWindow* pCW, vcl::Window m_pAcceptChgCtr = VclPtr<SvxAcceptChgCtr>::Create(get_content_area(), this); nAcceptCount=0; nRejectCount=0; - aReOpenIdle.SetPriority(SchedulerPriority::MEDIUM); + aReOpenIdle.SetPriority(TaskPriority::MEDIUM); aReOpenIdle.SetIdleHdl(LINK( this, ScAcceptChgDlg, ReOpenTimerHdl )); pTPFilter=m_pAcceptChgCtr->GetFilterPage(); pTPView=m_pAcceptChgCtr->GetViewPage(); pTheView=pTPView->GetTableControl(); - aSelectionIdle.SetPriority(SchedulerPriority::LOW); + aSelectionIdle.SetPriority(TaskPriority::LOW); aSelectionIdle.SetIdleHdl(LINK( this, ScAcceptChgDlg, UpdateSelectionHdl )); aSelectionIdle.SetDebugName( "ScAcceptChgDlg aSelectionIdle" ); diff --git a/sc/source/ui/miscdlgs/anyrefdg.cxx b/sc/source/ui/miscdlgs/anyrefdg.cxx index 1498a1f79524..5998d3991eb5 100644 --- a/sc/source/ui/miscdlgs/anyrefdg.cxx +++ b/sc/source/ui/miscdlgs/anyrefdg.cxx @@ -764,7 +764,7 @@ ScRefHandler::ScRefHandler( vcl::Window &rWindow, SfxBindings* pB, bool bBindRef pActiveWin(nullptr) { m_aHelper.SetWindow(m_rWindow.get()); - aIdle.SetPriority(SchedulerPriority::LOWER); + aIdle.SetPriority(TaskPriority::LOWER); aIdle.SetIdleHdl(LINK( this, ScRefHandler, UpdateFocusHdl)); if( bBindRef ) EnterRefMode(); diff --git a/sc/source/ui/miscdlgs/conflictsdlg.cxx b/sc/source/ui/miscdlgs/conflictsdlg.cxx index 578efed90481..6b5068742251 100644 --- a/sc/source/ui/miscdlgs/conflictsdlg.cxx +++ b/sc/source/ui/miscdlgs/conflictsdlg.cxx @@ -421,7 +421,7 @@ ScConflictsDlg::ScConflictsDlg( vcl::Window* pParent, ScViewData* pViewData, ScD m_pLbConflicts->SetSelectionMode( SelectionMode::Multiple ); m_pLbConflicts->SetHighlightRange(); - maSelectionIdle.SetPriority( SchedulerPriority::LOW ); + maSelectionIdle.SetPriority( TaskPriority::LOW ); maSelectionIdle.SetIdleHdl( LINK( this, ScConflictsDlg, UpdateSelectionHdl ) ); maSelectionIdle.SetDebugName( "ScConflictsDlg maSelectionIdle" ); diff --git a/sc/source/ui/navipi/navipi.cxx b/sc/source/ui/navipi/navipi.cxx index e8e5745f9e7f..0d17bbb46f8b 100644 --- a/sc/source/ui/navipi/navipi.cxx +++ b/sc/source/ui/navipi/navipi.cxx @@ -528,7 +528,7 @@ ScNavigatorDlg::ScNavigatorDlg(SfxBindings* pB, bool bSidebar, vcl::Window* pPar aScenarioBox->Hide(); aContentIdle.SetIdleHdl( LINK( this, ScNavigatorDlg, TimeHdl ) ); - aContentIdle.SetPriority( SchedulerPriority::LOWEST ); + aContentIdle.SetPriority( TaskPriority::LOWEST ); if (bInSidebar) { diff --git a/sc/source/ui/pagedlg/tphfedit.cxx b/sc/source/ui/pagedlg/tphfedit.cxx index 2fd8ff02a245..960232381d01 100644 --- a/sc/source/ui/pagedlg/tphfedit.cxx +++ b/sc/source/ui/pagedlg/tphfedit.cxx @@ -341,7 +341,7 @@ ScExtIButton::ScExtIButton(vcl::Window* pParent, WinBits nBits ) pPopupMenu(nullptr) { nSelected=0; - aIdle.SetPriority(SchedulerPriority::LOWEST); + aIdle.SetPriority(TaskPriority::LOWEST); SetDropDown(PushButtonDropdownStyle::Toolbox); } diff --git a/sd/source/core/drawdoc4.cxx b/sd/source/core/drawdoc4.cxx index 9787754d45c5..0f5fe0e50d19 100644 --- a/sd/source/core/drawdoc4.cxx +++ b/sd/source/core/drawdoc4.cxx @@ -771,7 +771,7 @@ void SdDrawDocument::StartOnlineSpelling(bool bForceSpelling) mpOnlineSpellingList->seekShape(0); mpOnlineSpellingIdle = new Idle("OnlineSpelling"); mpOnlineSpellingIdle->SetIdleHdl( LINK(this, SdDrawDocument, OnlineSpellingHdl) ); - mpOnlineSpellingIdle->SetPriority(SchedulerPriority::LOWEST); + mpOnlineSpellingIdle->SetPriority(TaskPriority::LOWEST); mpOnlineSpellingIdle->Start(); } } diff --git a/sd/source/ui/dlg/brkdlg.cxx b/sd/source/ui/dlg/brkdlg.cxx index 0626fde2e485..cdb2448d1e39 100644 --- a/sd/source/ui/dlg/brkdlg.cxx +++ b/sd/source/ui/dlg/brkdlg.cxx @@ -47,7 +47,7 @@ BreakDlg::BreakDlg( : SfxModalDialog(pWindow, "BreakDialog", "modules/sdraw/ui/breakdialog.ui") , mpProgress( nullptr ) { - m_aUpdateIdle.SetPriority( SchedulerPriority::REPAINT ); + m_aUpdateIdle.SetPriority( TaskPriority::REPAINT ); m_aUpdateIdle.SetIdleHdl( LINK( this, BreakDlg, InitialUpdate ) ); m_aUpdateIdle.SetDebugName( "sd::BreakDlg m_aUpdateIdle" ); diff --git a/sd/source/ui/dlg/filedlg.cxx b/sd/source/ui/dlg/filedlg.cxx index b06c7804fea6..bcf391323026 100644 --- a/sd/source/ui/dlg/filedlg.cxx +++ b/sd/source/ui/dlg/filedlg.cxx @@ -129,7 +129,7 @@ IMPL_LINK_NOARG(SdFileDialog_Imp, PlayMusicHdl, void*, void) { mxPlayer.set( avmedia::MediaWindow::createPlayer( aUrl, "" ), css::uno::UNO_QUERY_THROW ); mxPlayer->start(); - maUpdateIdle.SetPriority( SchedulerPriority::LOW ); + maUpdateIdle.SetPriority( TaskPriority::LOW ); maUpdateIdle.Start(); } catch (const css::uno::Exception&) diff --git a/sd/source/ui/framework/module/ShellStackGuard.cxx b/sd/source/ui/framework/module/ShellStackGuard.cxx index cf4fe2d907e5..7022b91dde2c 100644 --- a/sd/source/ui/framework/module/ShellStackGuard.cxx +++ b/sd/source/ui/framework/module/ShellStackGuard.cxx @@ -72,7 +72,7 @@ ShellStackGuard::ShellStackGuard (Reference<frame::XController>& rxController) // Prepare the printer polling. maPrinterPollingIdle.SetIdleHdl(LINK(this,ShellStackGuard,TimeoutHandler)); - maPrinterPollingIdle.SetPriority(SchedulerPriority::LOWER); + maPrinterPollingIdle.SetPriority(TaskPriority::LOWER); } } diff --git a/sd/source/ui/slideshow/slideshowimpl.cxx b/sd/source/ui/slideshow/slideshowimpl.cxx index 350ca3e49af8..e24f0a918f27 100644 --- a/sd/source/ui/slideshow/slideshowimpl.cxx +++ b/sd/source/ui/slideshow/slideshowimpl.cxx @@ -512,7 +512,7 @@ SlideshowImpl::SlideshowImpl( const Reference< XPresentation2 >& xPresentation, maUpdateTimer.SetTimeoutHdl(LINK(this, SlideshowImpl, updateHdl)); // Priority must not be too high or we'll starve input handling etc. - maUpdateTimer.SetPriority(SchedulerPriority::REPAINT); + maUpdateTimer.SetPriority(TaskPriority::REPAINT); maDeactivateTimer.SetTimeoutHdl(LINK(this, SlideshowImpl, deactivateHdl)); maDeactivateTimer.SetTimeout( 20 ); diff --git a/sd/source/ui/slidesorter/controller/SlsAnimator.cxx b/sd/source/ui/slidesorter/controller/SlsAnimator.cxx index f0fd68890d0f..d1791ad795ee 100644 --- a/sd/source/ui/slidesorter/controller/SlsAnimator.cxx +++ b/sd/source/ui/slidesorter/controller/SlsAnimator.cxx @@ -67,7 +67,7 @@ Animator::Animator (SlideSorter& rSlideSorter) mpDrawLock(), mnNextAnimationId(0) { - maIdle.SetPriority(SchedulerPriority::REPAINT); + maIdle.SetPriority(TaskPriority::REPAINT); maIdle.SetIdleHdl(LINK(this,Animator,TimeoutHandler)); } diff --git a/sd/source/ui/view/sdview.cxx b/sd/source/ui/view/sdview.cxx index 3ecc8c57d33f..66b0ef5abc32 100644 --- a/sd/source/ui/view/sdview.cxx +++ b/sd/source/ui/view/sdview.cxx @@ -143,9 +143,9 @@ View::View(SdDrawDocument& rDrawDoc, OutputDevice* pOutDev, // Timer for delayed drop (has to be for MAC) maDropErrorIdle.SetIdleHdl( LINK(this, View, DropErrorHdl) ); - maDropErrorIdle.SetPriority(SchedulerPriority::MEDIUM); + maDropErrorIdle.SetPriority(TaskPriority::MEDIUM); maDropInsertFileIdle.SetIdleHdl( LINK(this, View, DropInsertFileHdl) ); - maDropInsertFileIdle.SetPriority(SchedulerPriority::MEDIUM); + maDropInsertFileIdle.SetPriority(TaskPriority::MEDIUM); } void View::ImplClearDrawDropMarker() diff --git a/sfx2/source/appl/appcfg.cxx b/sfx2/source/appl/appcfg.cxx index f0a87265eb82..4e9a40e1ade6 100644 --- a/sfx2/source/appl/appcfg.cxx +++ b/sfx2/source/appl/appcfg.cxx @@ -109,7 +109,7 @@ SfxEventAsyncer_Impl::SfxEventAsyncer_Impl( const SfxEventHint& rHint ) StartListening( *rHint.GetObjShell() ); pIdle.reset( new Idle("SfxEventASyncer") ); pIdle->SetIdleHdl( LINK(this, SfxEventAsyncer_Impl, IdleHdl) ); - pIdle->SetPriority( SchedulerPriority::HIGHEST ); + pIdle->SetPriority( TaskPriority::HIGHEST ); pIdle->SetDebugName( "sfx::SfxEventAsyncer_Impl pIdle" ); pIdle->Start(); } diff --git a/sfx2/source/appl/newhelp.cxx b/sfx2/source/appl/newhelp.cxx index e29f1398fa6a..46eb4ab89fb3 100644 --- a/sfx2/source/appl/newhelp.cxx +++ b/sfx2/source/appl/newhelp.cxx @@ -552,7 +552,7 @@ IndexTabPage_Impl::IndexTabPage_Impl(vcl::Window* pParent, SfxHelpIndexWindow_Im m_pOpenBtn->SetClickHdl( LINK( this, IndexTabPage_Impl, OpenHdl ) ); Link<Timer *, void> aTimeoutLink = LINK( this, IndexTabPage_Impl, TimeoutHdl ); aFactoryIdle.SetIdleHdl( LINK(this, IndexTabPage_Impl, IdleHdl )); - aFactoryIdle.SetPriority(SchedulerPriority::LOWER); + aFactoryIdle.SetPriority(TaskPriority::LOWER); aKeywordTimer.SetTimeoutHdl( aTimeoutLink ); } @@ -1432,7 +1432,7 @@ SfxHelpIndexWindow_Impl::SfxHelpIndexWindow_Impl(SfxHelpWindow_Impl* _pParent) nMinWidth = ( m_pActiveLB->GetSizePixel().Width() / 2 ); aIdle.SetIdleHdl( LINK( this, SfxHelpIndexWindow_Impl, InitHdl ) ); - aIdle.SetPriority( SchedulerPriority::LOWER ); + aIdle.SetPriority( TaskPriority::LOWER ); aIdle.Start(); Show(); @@ -1562,7 +1562,7 @@ IMPL_LINK_NOARG(SfxHelpIndexWindow_Impl, InitHdl, Idle *, void) // now use the timer for selection aIdle.SetIdleHdl( LINK( this, SfxHelpIndexWindow_Impl, SelectFactoryHdl ) ); - aIdle.SetPriority( SchedulerPriority::LOWEST ); + aIdle.SetPriority( TaskPriority::LOWEST ); } IMPL_LINK_NOARG(SfxHelpIndexWindow_Impl, SelectFactoryHdl, Idle *, void) @@ -1902,7 +1902,7 @@ SfxHelpTextWindow_Impl::SfxHelpTextWindow_Impl( SfxHelpWindow_Impl* pParent ) : aOnStartupCB->SetClickHdl( LINK( this, SfxHelpTextWindow_Impl, CheckHdl ) ); aSelectIdle.SetIdleHdl( LINK( this, SfxHelpTextWindow_Impl, SelectHdl ) ); - aSelectIdle.SetPriority( SchedulerPriority::LOWEST ); + aSelectIdle.SetPriority( TaskPriority::LOWEST ); char* pEnv = getenv( "help_debug" ); if ( pEnv ) diff --git a/sfx2/source/control/dispatch.cxx b/sfx2/source/control/dispatch.cxx index 49e7e5406459..fefdf6aa87ab 100644 --- a/sfx2/source/control/dispatch.cxx +++ b/sfx2/source/control/dispatch.cxx @@ -450,7 +450,7 @@ void SfxDispatcher::Construct_Impl() xImp->xPoster = new SfxHintPoster(aGenLink); - xImp->aIdle.SetPriority(SchedulerPriority::MEDIUM); + xImp->aIdle.SetPriority(TaskPriority::MEDIUM); xImp->aIdle.SetIdleHdl( LINK(this, SfxDispatcher, EventHdl_Impl ) ); xImp->aIdle.SetDebugName( "sfx::SfxDispatcher_Impl aIdle" ); } @@ -574,7 +574,7 @@ void SfxDispatcher::Pop(SfxShell& rShell, SfxDispatcherPopFlags nMode) if(!pSfxApp->IsDowning() && !xImp->aToDoStack.empty()) { // No immediate update is requested - xImp->aIdle.SetPriority(SchedulerPriority::MEDIUM); + xImp->aIdle.SetPriority(TaskPriority::MEDIUM); xImp->aIdle.SetIdleHdl( LINK(this, SfxDispatcher, EventHdl_Impl ) ); xImp->aIdle.Start(); } @@ -770,7 +770,7 @@ void SfxDispatcher::DoActivate_Impl(bool bMDI) if(!xImp->aToDoStack.empty()) { // No immediate update is requested - xImp->aIdle.SetPriority(SchedulerPriority::MEDIUM); + xImp->aIdle.SetPriority(TaskPriority::MEDIUM); xImp->aIdle.SetIdleHdl( LINK(this, SfxDispatcher, EventHdl_Impl ) ); xImp->aIdle.Start(); } diff --git a/sfx2/source/control/itemdel.cxx b/sfx2/source/control/itemdel.cxx index c835b8c145d5..706f0cceeca6 100644 --- a/sfx2/source/control/itemdel.cxx +++ b/sfx2/source/control/itemdel.cxx @@ -45,7 +45,7 @@ SfxItemDisruptor_Impl::SfxItemDisruptor_Impl(SfxPoolItem *const pItemToDisrupt) , m_Idle("sfx SfxItemDisruptor_Impl::Delete") { m_Idle.SetIdleHdl(LINK(this, SfxItemDisruptor_Impl, Delete)); - m_Idle.SetPriority(SchedulerPriority::DEFAULT_IDLE); + m_Idle.SetPriority(TaskPriority::DEFAULT_IDLE); DBG_ASSERT( 0 == pItem->GetRefCount(), "disrupting pooled item" ); pItem->SetKind(SfxItemKind::DeleteOnIdle); diff --git a/sfx2/source/dialog/basedlgs.cxx b/sfx2/source/dialog/basedlgs.cxx index b319f2957ec3..a09708508ad0 100644 --- a/sfx2/source/dialog/basedlgs.cxx +++ b/sfx2/source/dialog/basedlgs.cxx @@ -301,7 +301,7 @@ void SfxModelessDialog::Init(SfxBindings *pBindinx, SfxChildWindow *pCW) pImpl->bConstructed = false; if ( pBindinx ) pImpl->StartListening( *pBindinx ); - pImpl->aMoveIdle.SetPriority(SchedulerPriority::RESIZE); + pImpl->aMoveIdle.SetPriority(TaskPriority::RESIZE); pImpl->aMoveIdle.SetIdleHdl(LINK(this,SfxModelessDialog,TimerHdl)); } @@ -439,7 +439,7 @@ SfxFloatingWindow::SfxFloatingWindow( SfxBindings *pBindinx, pImpl->bConstructed = false; if ( pBindinx ) pImpl->StartListening( *pBindinx ); - pImpl->aMoveIdle.SetPriority(SchedulerPriority::RESIZE); + pImpl->aMoveIdle.SetPriority(TaskPriority::RESIZE); pImpl->aMoveIdle.SetIdleHdl(LINK(this,SfxFloatingWindow,TimerHdl)); } @@ -456,7 +456,7 @@ SfxFloatingWindow::SfxFloatingWindow( SfxBindings *pBindinx, if ( pBindinx ) pImpl->StartListening( *pBindinx ); - pImpl->aMoveIdle.SetPriority(SchedulerPriority::RESIZE); + pImpl->aMoveIdle.SetPriority(TaskPriority::RESIZE); pImpl->aMoveIdle.SetIdleHdl(LINK(this,SfxFloatingWindow,TimerHdl)); } diff --git a/sfx2/source/dialog/dinfdlg.cxx b/sfx2/source/dialog/dinfdlg.cxx index 410d5e64e92b..cddee1ef3425 100644 --- a/sfx2/source/dialog/dinfdlg.cxx +++ b/sfx2/source/dialog/dinfdlg.cxx @@ -1506,9 +1506,9 @@ CustomPropertiesWindow::CustomPropertiesWindow(vcl::Window* pParent, m_aDateField->SetPosSizePixel(aPos, aSize); m_aTimeField->SetPosSizePixel(aPos, aSize); - m_aEditLoseFocusIdle.SetPriority( SchedulerPriority::LOWEST ); + m_aEditLoseFocusIdle.SetPriority( TaskPriority::LOWEST ); m_aEditLoseFocusIdle.SetIdleHdl( LINK( this, CustomPropertiesWindow, EditTimeoutHdl ) ); - m_aBoxLoseFocusIdle.SetPriority( SchedulerPriority::LOWEST ); + m_aBoxLoseFocusIdle.SetPriority( TaskPriority::LOWEST ); m_aBoxLoseFocusIdle.SetIdleHdl( LINK( this, CustomPropertiesWindow, BoxTimeoutHdl ) ); m_aNameBox->add_mnemonic_label(m_pHeaderAccName); diff --git a/sfx2/source/dialog/dockwin.cxx b/sfx2/source/dialog/dockwin.cxx index 6178bd0df75b..6bc24a7865a8 100644 --- a/sfx2/source/dialog/dockwin.cxx +++ b/sfx2/source/dialog/dockwin.cxx @@ -433,7 +433,7 @@ SfxDockingWindow_Impl::SfxDockingWindow_Impl(SfxDockingWindow* pBase) ,bNewLine(false) ,bDockingPrevented(false) { - aMoveIdle.SetPriority(SchedulerPriority::RESIZE); + aMoveIdle.SetPriority(TaskPriority::RESIZE); aMoveIdle.SetIdleHdl(LINK(pBase,SfxDockingWindow,TimerHdl)); aMoveIdle.SetDebugName( "sfx::SfxDockingWindow_Impl aMoveIdle" ); } diff --git a/sfx2/source/dialog/filedlghelper.cxx b/sfx2/source/dialog/filedlghelper.cxx index 4e8150851a8d..3f17a8af58ae 100644 --- a/sfx2/source/dialog/filedlghelper.cxx +++ b/sfx2/source/dialog/filedlghelper.cxx @@ -986,7 +986,7 @@ FileDialogHelper_Impl::FileDialogHelper_Impl( mbHasPreview = true; // aPreviewTimer - maPreviewIdle.SetPriority( SchedulerPriority::LOWEST ); + maPreviewIdle.SetPriority( TaskPriority::LOWEST ); maPreviewIdle.SetIdleHdl( LINK( this, FileDialogHelper_Impl, TimeOutHdl_Impl ) ); break; @@ -1007,7 +1007,7 @@ FileDialogHelper_Impl::FileDialogHelper_Impl( nTemplateDescription = TemplateDescription::FILEOPEN_LINK_PREVIEW; mbHasPreview = true; // aPreviewTimer - maPreviewIdle.SetPriority( SchedulerPriority::LOWEST ); + maPreviewIdle.SetPriority( TaskPriority::LOWEST ); maPreviewIdle.SetIdleHdl( LINK( this, FileDialogHelper_Impl, TimeOutHdl_Impl ) ); break; @@ -1021,7 +1021,7 @@ FileDialogHelper_Impl::FileDialogHelper_Impl( nTemplateDescription = TemplateDescription::FILEOPEN_PREVIEW; mbHasPreview = true; // aPreviewTimer - maPreviewIdle.SetPriority( SchedulerPriority::LOWEST ); + maPreviewIdle.SetPriority( TaskPriority::LOWEST ); maPreviewIdle.SetIdleHdl( LINK( this, FileDialogHelper_Impl, TimeOutHdl_Impl ) ); break; diff --git a/sfx2/source/dialog/templdlg.cxx b/sfx2/source/dialog/templdlg.cxx index a8f6af17bb75..8e56aeee142c 100644 --- a/sfx2/source/dialog/templdlg.cxx +++ b/sfx2/source/dialog/templdlg.cxx @@ -1485,7 +1485,7 @@ void SfxCommonTemplateDialog_Impl::Notify(SfxBroadcaster& /*rBC*/, const SfxHint if(!pIdle) { pIdle=new Idle("SfxCommonTemplate"); - pIdle->SetPriority(SchedulerPriority::LOWEST); + pIdle->SetPriority(TaskPriority::LOWEST); pIdle->SetIdleHdl(LINK(this,SfxCommonTemplateDialog_Impl,TimeOut)); } pIdle->Start(); diff --git a/sfx2/source/doc/new.cxx b/sfx2/source/doc/new.cxx index 5d55b9c1ab39..9b78b0cf857c 100644 --- a/sfx2/source/doc/new.cxx +++ b/sfx2/source/doc/new.cxx @@ -408,7 +408,7 @@ SfxNewFileDialog_Impl::SfxNewFileDialog_Impl( m_pRegionLb->SetSelectHdl(LINK(this, SfxNewFileDialog_Impl, RegionSelect)); } - aPrevIdle.SetPriority( SchedulerPriority::LOWEST ); + aPrevIdle.SetPriority( TaskPriority::LOWEST ); aPrevIdle.SetIdleHdl( LINK( this, SfxNewFileDialog_Impl, Update)); m_pRegionLb->SelectEntryPos(0); diff --git a/solenv/gdb/libreoffice/vcl.py b/solenv/gdb/libreoffice/vcl.py index 83f405758216..28ba3ebebc07 100644 --- a/solenv/gdb/libreoffice/vcl.py +++ b/solenv/gdb/libreoffice/vcl.py @@ -25,24 +25,24 @@ class ImplSchedulerDataPrinter(object): self.idle_type_ptr = gdb.lookup_type("Idle").pointer() def as_string(self, gdbobj): - if gdbobj['mpScheduler']: - sched = gdbobj['mpScheduler'].dereference() - if gdbobj['mpScheduler'].dynamic_cast( self.timer_type_ptr ): + if gdbobj['mpTask']: + sched = gdbobj['mpTask'].dereference() + if gdbobj['mpTask'].dynamic_cast( self.timer_type_ptr ): sched_type = "Timer" - elif gdbobj['mpScheduler'].dynamic_cast( self.idle_type_ptr ): + elif gdbobj['mpTask'].dynamic_cast( self.idle_type_ptr ): sched_type = "Idle" else: - assert sched_type, "Scheduler object neither Timer nor Idle" + assert sched_type, "Task object neither Timer nor Idle" res = "{:7s}{:10s} active: {:6s}".format( sched_type, str(sched['mePriority']), str(sched['mbActive']) ) name = sched['mpDebugName'] if not name: - res = res + " (scheduler debug name not set)" + res = res + " (task debug name not set)" else: res = "{} '{}' ({})".format(res, str(name.string()), str(sched.dynamic_type)) return res else: - assert gdbobj['mbDelete'], "No scheduler set and not marked for deletion!" - return "(no scheduler)" + assert gdbobj['mbDelete'], "No task set and not marked for deletion!" + return "(no task)" def to_string(self): return self.typename diff --git a/starmath/source/edit.cxx b/starmath/source/edit.cxx index 43fc7557e7e2..af3e3e90a4af 100644 --- a/starmath/source/edit.cxx +++ b/starmath/source/edit.cxx @@ -101,12 +101,12 @@ SmEditWindow::SmEditWindow( SmCmdBoxWindow &rMyCmdBoxWin ) : SetBackground( GetSettings().GetStyleSettings().GetWindowColor() ); aModifyIdle.SetIdleHdl(LINK(this, SmEditWindow, ModifyTimerHdl)); - aModifyIdle.SetPriority(SchedulerPriority::LOWEST); + aModifyIdle.SetPriority(TaskPriority::LOWEST); if (!IsInlineEditEnabled()) { aCursorMoveIdle.SetIdleHdl(LINK(this, SmEditWindow, CursorMoveTimerHdl)); - aCursorMoveIdle.SetPriority(SchedulerPriority::LOWEST); + aCursorMoveIdle.SetPriority(TaskPriority::LOWEST); } // if not called explicitly the this edit window within the diff --git a/svtools/source/contnr/imivctl1.cxx b/svtools/source/contnr/imivctl1.cxx index 2532c826ece9..58cc3a6852e2 100644 --- a/svtools/source/contnr/imivctl1.cxx +++ b/svtools/source/contnr/imivctl1.cxx @@ -139,23 +139,23 @@ SvxIconChoiceCtrl_Impl::SvxIconChoiceCtrl_Impl( nHorSBarHeight = aHorSBar->GetSizePixel().Height(); nVerSBarWidth = aVerSBar->GetSizePixel().Width(); - aEditIdle.SetPriority( SchedulerPriority::LOWEST ); + aEditIdle.SetPriority( TaskPriority::LOWEST ); aEditIdle.SetIdleHdl(LINK(this,SvxIconChoiceCtrl_Impl,EditTimeoutHdl)); aEditIdle.SetDebugName( "svtools::SvxIconChoiceCtrl_Impl aEditIdle" ); - aAutoArrangeIdle.SetPriority( SchedulerPriority::LOW ); + aAutoArrangeIdle.SetPriority( TaskPriority::LOW ); aAutoArrangeIdle.SetIdleHdl(LINK(this,SvxIconChoiceCtrl_Impl,AutoArrangeHdl)); aAutoArrangeIdle.SetDebugName( "svtools::SvxIconChoiceCtrl_Impl aAutoArrangeIdle" ); - aCallSelectHdlIdle.SetPriority( SchedulerPriority::LOWEST ); + aCallSelectHdlIdle.SetPriority( TaskPriority::LOWEST ); aCallSelectHdlIdle.SetIdleHdl( LINK(this,SvxIconChoiceCtrl_Impl,CallSelectHdlHdl)); aCallSelectHdlIdle.SetDebugName( "svtools::SvxIconChoiceCtrl_Impl aCallSelectHdlIdle" ); - aDocRectChangedIdle.SetPriority( SchedulerPriority::MEDIUM ); + aDocRectChangedIdle.SetPriority( TaskPriority::MEDIUM ); aDocRectChangedIdle.SetIdleHdl(LINK(this,SvxIconChoiceCtrl_Impl,DocRectChangedHdl)); aDocRectChangedIdle.SetDebugName( "svtools::SvxIconChoiceCtrl_Impl aDocRectChangedIdle" ); - aVisRectChangedIdle.SetPriority( SchedulerPriority::MEDIUM ); + aVisRectChangedIdle.SetPriority( TaskPriority::MEDIUM ); aVisRectChangedIdle.SetIdleHdl(LINK(this,SvxIconChoiceCtrl_Impl,VisRectChangedHdl)); aVisRectChangedIdle.SetDebugName( "svtools::SvxIconChoiceCtrl_Impl aVisRectChangedIdle" ); @@ -3032,7 +3032,7 @@ IcnViewEdit_Impl::IcnViewEdit_Impl( SvtIconChoiceCtrl* pParent, const Point& rPo bAlreadyInCallback( false ), bGrabFocus( false ) { - maLoseFocusIdle.SetPriority(SchedulerPriority::REPAINT); + maLoseFocusIdle.SetPriority(TaskPriority::REPAINT); maLoseFocusIdle.SetIdleHdl(LINK(this,IcnViewEdit_Impl,Timeout_Impl)); maLoseFocusIdle.SetDebugName( "svx::IcnViewEdit_Impl maLoseFocusIdle" ); diff --git a/svtools/source/contnr/svimpbox.cxx b/svtools/source/contnr/svimpbox.cxx index d3cbdee9bd52..b0e693c56214 100644 --- a/svtools/source/contnr/svimpbox.cxx +++ b/svtools/source/contnr/svimpbox.cxx @@ -89,7 +89,7 @@ SvImpLBox::SvImpLBox( SvTreeListBox* pLBView, SvTreeList* pLBTree, WinBits nWinS nNodeBmpWidth = 0; bAsyncBeginDrag = false; - aAsyncBeginDragIdle.SetPriority( SchedulerPriority::HIGHEST ); + aAsyncBeginDragIdle.SetPriority( TaskPriority::HIGHEST ); aAsyncBeginDragIdle.SetIdleHdl( LINK(this,SvImpLBox,BeginDragHdl)); // button animation in listbox pActiveButton = nullptr; @@ -99,7 +99,7 @@ SvImpLBox::SvImpLBox( SvTreeListBox* pLBView, SvTreeList* pLBTree, WinBits nWinS nFlags = LBoxFlags::NONE; nCurTabPos = FIRST_ENTRY_TAB; - aEditIdle.SetPriority( SchedulerPriority::LOWEST ); + aEditIdle.SetPriority( TaskPriority::LOWEST ); aEditIdle.SetIdleHdl( LINK(this,SvImpLBox,EditTimerCall) ); nMostRight = -1; diff --git a/svtools/source/contnr/treelistbox.cxx b/svtools/source/contnr/treelistbox.cxx index b9cdf535d9d2..649a7fb8cfa2 100644 --- a/svtools/source/contnr/treelistbox.cxx +++ b/svtools/source/contnr/treelistbox.cxx @@ -199,7 +199,7 @@ void SvInplaceEdit2::LoseFocus() ) { bCanceled = false; - aIdle.SetPriority(SchedulerPriority::REPAINT); + aIdle.SetPriority(TaskPriority::REPAINT); aIdle.SetIdleHdl(LINK(this,SvInplaceEdit2,Timeout_Impl)); aIdle.SetDebugName( "svtools::SvInplaceEdit2 aIdle" ); aIdle.Start(); diff --git a/svtools/source/control/tabbar.cxx b/svtools/source/control/tabbar.cxx index 10e02ba2b9e4..c88fdf0958e2 100644 --- a/svtools/source/control/tabbar.cxx +++ b/svtools/source/control/tabbar.cxx @@ -399,7 +399,7 @@ TabBarEdit::TabBarEdit( TabBar* pParent, WinBits nWinStyle ) : Edit( pParent, nWinStyle ) { mbPostEvt = false; - maLoseFocusIdle.SetPriority( SchedulerPriority::REPAINT ); + maLoseFocusIdle.SetPriority( TaskPriority::REPAINT ); maLoseFocusIdle.SetIdleHdl( LINK( this, TabBarEdit, ImplEndTimerHdl ) ); maLoseFocusIdle.SetDebugName( "svtools::TabBarEdit maLoseFocusIdle" ); } diff --git a/svtools/source/dialogs/wizdlg.cxx b/svtools/source/dialogs/wizdlg.cxx index 7ff932ea60e8..1f2835834e71 100644 --- a/svtools/source/dialogs/wizdlg.cxx +++ b/svtools/source/dialogs/wizdlg.cxx @@ -57,7 +57,7 @@ void WizardDialog::ImplInitData() mbEmptyViewMargin = false; mnLeftAlignCount = 0; - maWizardLayoutIdle.SetPriority(SchedulerPriority::RESIZE); + maWizardLayoutIdle.SetPriority(TaskPriority::RESIZE); maWizardLayoutIdle.SetIdleHdl( LINK( this, WizardDialog, ImplHandleWizardLayoutTimerHdl ) ); } diff --git a/svtools/source/misc/filechangedchecker.cxx b/svtools/source/misc/filechangedchecker.cxx index e0ebfd6d10ff..f696b8621f3b 100644 --- a/svtools/source/misc/filechangedchecker.cxx +++ b/svtools/source/misc/filechangedchecker.cxx @@ -35,7 +35,7 @@ void FileChangedChecker::resetTimer() mIdle.Start(); // Set lowest Priority - mIdle.SetPriority(SchedulerPriority::LOWEST); + mIdle.SetPriority(TaskPriority::LOWEST); } bool FileChangedChecker::getCurrentModTime(TimeValue& o_rValue) const diff --git a/svx/source/dialog/_contdlg.cxx b/svx/source/dialog/_contdlg.cxx index fe8777945739..704697685176 100644 --- a/svx/source/dialog/_contdlg.cxx +++ b/svx/source/dialog/_contdlg.cxx @@ -286,10 +286,10 @@ SvxSuperContourDlg::SvxSuperContourDlg(SfxBindings *_pBindings, SfxChildWindow * Resize(); - aUpdateIdle.SetPriority( SchedulerPriority::LOW ); + aUpdateIdle.SetPriority( TaskPriority::LOW ); aUpdateIdle.SetIdleHdl( LINK( this, SvxSuperContourDlg, UpdateHdl ) ); - aCreateIdle.SetPriority( SchedulerPriority::RESIZE ); + aCreateIdle.SetPriority( TaskPriority::RESIZE ); aCreateIdle.SetIdleHdl( LINK( this, SvxSuperContourDlg, CreateHdl ) ); } diff --git a/svx/source/dialog/fontwork.cxx b/svx/source/dialog/fontwork.cxx index b86ce464a860..b668941322a1 100644 --- a/svx/source/dialog/fontwork.cxx +++ b/svx/source/dialog/fontwork.cxx @@ -270,7 +270,7 @@ SvxFontWorkDialog::SvxFontWorkDialog(SfxBindings *pBindinx, m_pShadowColorLB->SetSelectHdl( LINK(this, SvxFontWorkDialog, ColorSelectHdl_Impl) ); - aInputIdle.SetPriority(SchedulerPriority::LOWEST); + aInputIdle.SetPriority(TaskPriority::LOWEST); aInputIdle.SetIdleHdl(LINK(this, SvxFontWorkDialog, InputTimoutHdl_Impl)); } diff --git a/svx/source/dialog/graphctl.cxx b/svx/source/dialog/graphctl.cxx index 0ae7f1c70dc2..afa5364bae61 100644 --- a/svx/source/dialog/graphctl.cxx +++ b/svx/source/dialog/graphctl.cxx @@ -70,7 +70,7 @@ GraphCtrl::GraphCtrl( vcl::Window* pParent, WinBits nStyle ) : pView ( nullptr ) { pUserCall = new GraphCtrlUserCall( *this ); - aUpdateIdle.SetPriority( SchedulerPriority::LOWEST ); + aUpdateIdle.SetPriority( TaskPriority::LOWEST ); aUpdateIdle.SetIdleHdl( LINK( this, GraphCtrl, UpdateHdl ) ); aUpdateIdle.Start(); EnableRTL( false ); diff --git a/svx/source/dialog/imapdlg.cxx b/svx/source/dialog/imapdlg.cxx index 569210dc51d4..b2084724c53d 100644 --- a/svx/source/dialog/imapdlg.cxx +++ b/svx/source/dialog/imapdlg.cxx @@ -204,7 +204,7 @@ SvxIMapDlg::SvxIMapDlg(SfxBindings *_pBindings, SfxChildWindow *pCW, vcl::Window m_pCbbTarget->Disable(); pOwnData->bExecState = false; - pOwnData->aIdle.SetPriority( SchedulerPriority::LOW ); + pOwnData->aIdle.SetPriority( TaskPriority::LOW ); pOwnData->aIdle.SetIdleHdl( LINK( this, SvxIMapDlg, UpdateHdl ) ); m_pTbxIMapDlg1->EnableItem( mnActiveId, false ); diff --git a/svx/source/dialog/svxbmpnumvalueset.cxx b/svx/source/dialog/svxbmpnumvalueset.cxx index 3c696d7a281b..5295025652ca 100644 --- a/svx/source/dialog/svxbmpnumvalueset.cxx +++ b/svx/source/dialog/svxbmpnumvalueset.cxx @@ -466,7 +466,7 @@ void SvxBmpNumValueSet::init() GalleryExplorer::BeginLocking(GALLERY_THEME_BULLETS); SetStyle( GetStyle() | WB_VSCROLL ); SetLineCount( 3 ); - aFormatIdle.SetPriority(SchedulerPriority::LOWEST); + aFormatIdle.SetPriority(TaskPriority::LOWEST); aFormatIdle.SetIdleHdl(LINK(this, SvxBmpNumValueSet, FormatHdl_Impl)); } diff --git a/svx/source/form/datanavi.cxx b/svx/source/form/datanavi.cxx index b7298ef5622d..bde4955b72b8 100644 --- a/svx/source/form/datanavi.cxx +++ b/svx/source/form/datanavi.cxx @@ -2748,7 +2748,7 @@ namespace svxform m_pConditionED->SetModifyHdl( LINK( this, AddConditionDialog, ModifyHdl ) ); m_pEditNamespacesBtn->SetClickHdl( LINK( this, AddConditionDialog, EditHdl ) ); m_pOKBtn->SetClickHdl( LINK( this, AddConditionDialog, OKHdl ) ); - m_aResultIdle.SetPriority( SchedulerPriority::LOWEST ); + m_aResultIdle.SetPriority( TaskPriority::LOWEST ); m_aResultIdle.SetIdleHdl( LINK( this, AddConditionDialog, ResultHdl ) ); if ( !m_sPropertyName.isEmpty() ) diff --git a/svx/source/form/formcontroller.cxx b/svx/source/form/formcontroller.cxx index 0a946926297c..74ea2897b3bc 100644 --- a/svx/source/form/formcontroller.cxx +++ b/svx/source/form/formcontroller.cxx @@ -572,7 +572,7 @@ FormController::FormController(const Reference< css::uno::XComponentContext > & } osl_atomic_decrement(&m_refCount); - m_aTabActivationIdle.SetPriority( SchedulerPriority::LOWEST ); + m_aTabActivationIdle.SetPriority( TaskPriority::LOWEST ); m_aTabActivationIdle.SetIdleHdl( LINK( this, FormController, OnActivateTabOrder ) ); m_aFeatureInvalidationTimer.SetTimeout( 200 ); diff --git a/svx/source/sdr/contact/objectcontactofpageview.cxx b/svx/source/sdr/contact/objectcontactofpageview.cxx index efeaad6d6cac..0e81e850a727 100644 --- a/svx/source/sdr/contact/objectcontactofpageview.cxx +++ b/svx/source/sdr/contact/objectcontactofpageview.cxx @@ -61,7 +61,7 @@ namespace sdr setPreviewRenderer(((SdrPaintView&)rPageWindow.GetPageView().GetView()).IsPreviewRenderer()); // init timer - SetPriority(SchedulerPriority::HIGH); + SetPriority(TaskPriority::HIGH); Stop(); } diff --git a/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx b/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx index 4827c3d1ce72..dfe57ea6e18b 100644 --- a/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx +++ b/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx @@ -84,7 +84,7 @@ PagePrimitiveExtractor::PagePrimitiveExtractor( setPreviewRenderer(true); // init timer - SetPriority(SchedulerPriority::HIGH); + SetPriority(TaskPriority::HIGH); Stop(); } diff --git a/svx/source/sdr/event/eventhandler.cxx b/svx/source/sdr/event/eventhandler.cxx index 4f3c6baab603..ae55c9e0506d 100644 --- a/svx/source/sdr/event/eventhandler.cxx +++ b/svx/source/sdr/event/eventhandler.cxx @@ -83,7 +83,7 @@ namespace sdr TimerEventHandler::TimerEventHandler() { - SetPriority(SchedulerPriority::HIGH); + SetPriority(TaskPriority::HIGH); Stop(); } diff --git a/svx/source/sdr/overlay/overlaymanagerbuffered.cxx b/svx/source/sdr/overlay/overlaymanagerbuffered.cxx index 8ede68ce1708..73a1051d66a1 100644 --- a/svx/source/sdr/overlay/overlaymanagerbuffered.cxx +++ b/svx/source/sdr/overlay/overlaymanagerbuffered.cxx @@ -383,7 +383,7 @@ namespace sdr mbRefreshWithPreRendering(bRefreshWithPreRendering) { // Init timer - maBufferIdle.SetPriority( SchedulerPriority::POST_PAINT ); + maBufferIdle.SetPriority( TaskPriority::POST_PAINT ); maBufferIdle.SetIdleHdl(LINK(this, OverlayManagerBuffered, ImpBufferTimerHandler)); maBufferIdle.SetDebugName( "sdr::overlay::OverlayManagerBuffered maBufferIdle" ); } diff --git a/svx/source/sidebar/PanelLayout.cxx b/svx/source/sidebar/PanelLayout.cxx index 097274a38ad1..eaa66be0d86f 100644 --- a/svx/source/sidebar/PanelLayout.cxx +++ b/svx/source/sidebar/PanelLayout.cxx @@ -25,7 +25,7 @@ PanelLayout::PanelLayout(vcl::Window* pParent, const OString& rID, const OUStrin { SetStyle(GetStyle() | WB_DIALOGCONTROL); m_pUIBuilder.reset(new VclBuilder(this, getUIRootDir(), rUIXMLDescription, rID, rFrame)); - m_aPanelLayoutIdle.SetPriority(SchedulerPriority::RESIZE); + m_aPanelLayoutIdle.SetPriority(TaskPriority::RESIZE); m_aPanelLayoutIdle.SetIdleHdl( LINK( this, PanelLayout, ImplHandlePanelLayoutTimerHdl ) ); m_aPanelLayoutIdle.SetDebugName( "svx::PanelLayout m_aPanelLayoutIdle" ); if (GetSettings().GetStyleSettings().GetAutoMnemonic()) diff --git a/svx/source/sidebar/media/MediaPlaybackPanel.cxx b/svx/source/sidebar/media/MediaPlaybackPanel.cxx index 46f7645c7a3e..0b4773c439bd 100644 --- a/svx/source/sidebar/media/MediaPlaybackPanel.cxx +++ b/svx/source/sidebar/media/MediaPlaybackPanel.cxx @@ -81,7 +81,7 @@ void MediaPlaybackPanel::Initialize() mpMuteToolBox->SetSelectHdl(LINK(this, MediaPlaybackPanel, PlayToolBoxSelectHdl)); mpTimeSlider->SetSlideHdl(LINK(this, MediaPlaybackPanel, SeekHdl)); - maIdle.SetPriority( SchedulerPriority::HIGHEST ); + maIdle.SetPriority( TaskPriority::HIGHEST ); maIdle.SetIdleHdl( LINK( this, MediaPlaybackPanel, TimeoutHdl ) ); maIdle.Start(); mpBindings->Invalidate(SID_AVMEDIA_TOOLBOX); diff --git a/svx/source/stbctrls/modctrl.cxx b/svx/source/stbctrls/modctrl.cxx index 8b476f53899d..50abd3d36e22 100644 --- a/svx/source/stbctrls/modctrl.cxx +++ b/svx/source/stbctrls/modctrl.cxx @@ -58,7 +58,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)); - maIdle.SetPriority(SchedulerPriority::LOWEST); + maIdle.SetPriority(TaskPriority::LOWEST); } }; diff --git a/svx/source/svdraw/svdibrow.cxx b/svx/source/svdraw/svdibrow.cxx index 44ab83519bb4..cb444c30bfca 100644 --- a/svx/source/svdraw/svdibrow.cxx +++ b/svx/source/svdraw/svdibrow.cxx @@ -1101,7 +1101,7 @@ void SdrItemBrowser::SetDirty() { if (!bDirty) { bDirty = true; - aIdle.SetPriority(SchedulerPriority::HIGH); + aIdle.SetPriority(TaskPriority::HIGH); aIdle.Start(); } } diff --git a/svx/source/svdraw/svdpntv.cxx b/svx/source/svdraw/svdpntv.cxx index 33eef08d5b32..9e8a41a1032c 100644 --- a/svx/source/svdraw/svdpntv.cxx +++ b/svx/source/svdraw/svdpntv.cxx @@ -173,7 +173,7 @@ void SdrPaintView::ImpClearVars() mpDefaultStyleSheet=nullptr; mbSomeObjChgdFlag=false; mnGraphicManagerDrawMode = GraphicManagerDrawFlags::STANDARD; - maComeBackIdle.SetPriority(SchedulerPriority::REPAINT); + maComeBackIdle.SetPriority(TaskPriority::REPAINT); maComeBackIdle.SetIdleHdl(LINK(this,SdrPaintView,ImpComeBackHdl)); maComeBackIdle.SetDebugName( "svx::SdrPaintView aComeBackIdle" ); diff --git a/svx/source/tbxctrls/grafctrl.cxx b/svx/source/tbxctrls/grafctrl.cxx index 11b27ac8278a..3c53cd790103 100644 --- a/svx/source/tbxctrls/grafctrl.cxx +++ b/svx/source/tbxctrls/grafctrl.cxx @@ -121,7 +121,7 @@ ImplGrafMetricField::ImplGrafMetricField( vcl::Window* pParent, const OUString& SetSpinSize( 1 ); } - maIdle.SetPriority( SchedulerPriority::LOW ); + maIdle.SetPriority( TaskPriority::LOW ); maIdle.SetIdleHdl( LINK( this, ImplGrafMetricField, ImplModifyHdl ) ); } diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx b/sw/qa/extras/uiwriter/uiwriter.cxx index 5b428f645063..f984499decfd 100644 --- a/sw/qa/extras/uiwriter/uiwriter.cxx +++ b/sw/qa/extras/uiwriter/uiwriter.cxx @@ -3262,7 +3262,7 @@ class IdleTask IdleTask::IdleTask() : flag( false ) { //setting the Priority of Idle task to LOW, LOWEST - maIdle.SetPriority( SchedulerPriority::LOWEST ); + maIdle.SetPriority( TaskPriority::LOWEST ); //set idle for callback maIdle.SetIdleHdl( LINK( this, IdleTask, FlipFlag) ); //starting the idle diff --git a/sw/source/core/doc/DocumentStatisticsManager.cxx b/sw/source/core/doc/DocumentStatisticsManager.cxx index d4741d39e66c..e599555346fa 100644 --- a/sw/source/core/doc/DocumentStatisticsManager.cxx +++ b/sw/source/core/doc/DocumentStatisticsManager.cxx @@ -74,7 +74,7 @@ DocumentStatisticsManager::DocumentStatisticsManager( SwDoc& i_rSwdoc ) : m_rDoc mbInitialized( false ) { maStatsUpdateTimer.SetTimeout( 1 ); - maStatsUpdateTimer.SetPriority( SchedulerPriority::LOWEST ); + maStatsUpdateTimer.SetPriority( TaskPriority::LOWEST ); maStatsUpdateTimer.SetTimeoutHdl( LINK( this, DocumentStatisticsManager, DoIdleStatsUpdate ) ); maStatsUpdateTimer.SetDebugName( "sw::DocumentStatisticsManager maStatsUpdateTimer" ); } diff --git a/sw/source/core/doc/DocumentTimerManager.cxx b/sw/source/core/doc/DocumentTimerManager.cxx index 4a0176b2811d..6b5ce55f7e9e 100644 --- a/sw/source/core/doc/DocumentTimerManager.cxx +++ b/sw/source/core/doc/DocumentTimerManager.cxx @@ -42,7 +42,7 @@ DocumentTimerManager::DocumentTimerManager( SwDoc& i_rSwdoc ) : m_rDoc( i_rSwdoc mIdleBlockCount( 0 ), maIdle("DocumentTimerManagerIdleTimer") { - maIdle.SetPriority( SchedulerPriority::LOWEST ); + maIdle.SetPriority( TaskPriority::LOWEST ); maIdle.SetIdleHdl( LINK( this, DocumentTimerManager, DoIdleJobs) ); maIdle.SetDebugName( "sw::DocumentTimerManager maIdle" ); } diff --git a/sw/source/core/doc/docnew.cxx b/sw/source/core/doc/docnew.cxx index 325f3833fd12..3190a2a1b878 100644 --- a/sw/source/core/doc/docnew.cxx +++ b/sw/source/core/doc/docnew.cxx @@ -329,7 +329,7 @@ SwDoc::SwDoc() new SwTextNode( SwNodeIndex( GetNodes().GetEndOfContent() ), getIDocumentStylePoolAccess().GetTextCollFromPool( RES_POOLCOLL_STANDARD )); - maOLEModifiedIdle.SetPriority( SchedulerPriority::LOWEST ); + maOLEModifiedIdle.SetPriority( TaskPriority::LOWEST ); maOLEModifiedIdle.SetIdleHdl( LINK( this, SwDoc, DoUpdateModifiedOLE )); maOLEModifiedIdle.SetDebugName( "sw::SwDoc maOLEModifiedIdle" ); diff --git a/sw/source/core/docnode/threadmanager.cxx b/sw/source/core/docnode/threadmanager.cxx index 89f97e575b7f..db6efb524684 100644 --- a/sw/source/core/docnode/threadmanager.cxx +++ b/sw/source/core/docnode/threadmanager.cxx @@ -46,7 +46,7 @@ void ThreadManager::Init() { mpThreadListener.reset( new ThreadListener( *this ) ); - maStartNewThreadIdle.SetPriority( SchedulerPriority::LOWEST ); + maStartNewThreadIdle.SetPriority( TaskPriority::LOWEST ); maStartNewThreadIdle.SetIdleHdl( LINK( this, ThreadManager, TryToStartNewThread ) ); } diff --git a/sw/source/ui/dbui/mmoutputtypepage.cxx b/sw/source/ui/dbui/mmoutputtypepage.cxx index e0f9337ca968..24d8cd4d2a0b 100644 --- a/sw/source/ui/dbui/mmoutputtypepage.cxx +++ b/sw/source/ui/dbui/mmoutputtypepage.cxx @@ -105,7 +105,7 @@ struct SwSendMailDialog_Impl nCurrentDescriptor(0), nDocumentCount(0) { - aRemoveIdle.SetPriority(SchedulerPriority::LOWEST); + aRemoveIdle.SetPriority(TaskPriority::LOWEST); } ~SwSendMailDialog_Impl() diff --git a/sw/source/ui/envelp/labfmt.cxx b/sw/source/ui/envelp/labfmt.cxx index 75ee218a6bc3..f57c4bd1854a 100644 --- a/sw/source/ui/envelp/labfmt.cxx +++ b/sw/source/ui/envelp/labfmt.cxx @@ -353,7 +353,7 @@ SwLabFormatPage::SwLabFormatPage(vcl::Window* pParent, const SfxItemSet& rSet) m_pSavePB->SetClickHdl( LINK (this, SwLabFormatPage, SaveHdl)); // Set timer - aPreviewIdle.SetPriority(SchedulerPriority::LOWEST); + aPreviewIdle.SetPriority(TaskPriority::LOWEST); aPreviewIdle.SetIdleHdl(LINK(this, SwLabFormatPage, PreviewHdl)); } diff --git a/sw/source/uibase/docvw/edtwin.cxx b/sw/source/uibase/docvw/edtwin.cxx index 4e415ec65f8a..c61e8d50c81d 100644 --- a/sw/source/uibase/docvw/edtwin.cxx +++ b/sw/source/uibase/docvw/edtwin.cxx @@ -5098,7 +5098,7 @@ SwEditWin::SwEditWin(vcl::Window *pParent, SwView &rMyView): // TemplatePointer for colors should be resetted without // selection after single click - m_aTemplateIdle.SetPriority(SchedulerPriority::LOWEST); + m_aTemplateIdle.SetPriority(TaskPriority::LOWEST); m_aTemplateIdle.SetIdleHdl(LINK(this, SwEditWin, TemplateTimerHdl)); // temporary solution!!! Should set the font of the current diff --git a/sw/source/uibase/docvw/srcedtw.cxx b/sw/source/uibase/docvw/srcedtw.cxx index 51fa941346af..c9e038795eaa 100644 --- a/sw/source/uibase/docvw/srcedtw.cxx +++ b/sw/source/uibase/docvw/srcedtw.cxx @@ -535,7 +535,7 @@ void SwSrcEditWindow::CreateTextEngine() m_pOutWin->SetFont( aFont ); m_pTextEngine->SetFont( aFont ); - m_aSyntaxIdle.SetPriority( SchedulerPriority::LOWER ); + m_aSyntaxIdle.SetPriority( TaskPriority::LOWER ); m_aSyntaxIdle.SetIdleHdl( LINK( this, SwSrcEditWindow, SyntaxTimerHdl ) ); m_pTextEngine->EnableUndo( true ); diff --git a/sw/source/uibase/utlui/navipi.cxx b/sw/source/uibase/utlui/navipi.cxx index e1e9adc8a222..99e144df55f5 100644 --- a/sw/source/uibase/utlui/navipi.cxx +++ b/sw/source/uibase/utlui/navipi.cxx @@ -724,7 +724,7 @@ SwNavigationPI::SwNavigationPI(SfxBindings* _pBindings, m_aContentTree->GrabFocus(); UsePage(); m_aPageChgIdle.SetIdleHdl(LINK(this, SwNavigationPI, ChangePageHdl)); - m_aPageChgIdle.SetPriority(SchedulerPriority::LOWEST); + m_aPageChgIdle.SetPriority(TaskPriority::LOWEST); m_aContentTree->SetAccessibleName(SW_RESSTR(STR_ACCESS_TL_CONTENT)); m_aGlobalTree->SetAccessibleName(SW_RESSTR(STR_ACCESS_TL_GLOBAL)); diff --git a/sw/source/uibase/utlui/unotools.cxx b/sw/source/uibase/utlui/unotools.cxx index 636039a3c0c2..59d3afbda8c7 100644 --- a/sw/source/uibase/utlui/unotools.cxx +++ b/sw/source/uibase/utlui/unotools.cxx @@ -83,7 +83,7 @@ SwOneExampleFrame::SwOneExampleFrame( vcl::Window& rWin, // the controller is asynchronously set aLoadedIdle.SetIdleHdl(LINK(this, SwOneExampleFrame, TimeoutHdl)); - aLoadedIdle.SetPriority(SchedulerPriority::HIGH); + aLoadedIdle.SetPriority(TaskPriority::HIGH); CreateControl(); diff --git a/toolkit/source/awt/vclxtoolkit.cxx b/toolkit/source/awt/vclxtoolkit.cxx index 51e3321d92cc..02eddc8a2850 100644 --- a/toolkit/source/awt/vclxtoolkit.cxx +++ b/toolkit/source/awt/vclxtoolkit.cxx @@ -150,7 +150,7 @@ public: Idle("pause"), m_nPauseMilliseconds(nPauseMilliseconds) { - SetPriority(SchedulerPriority::HIGHEST); + SetPriority(TaskPriority::HIGHEST); Start(); } diff --git a/vcl/backendtest/VisualBackendTest.cxx b/vcl/backendtest/VisualBackendTest.cxx index fd6f27b2cb63..b2e620a25c1c 100644 --- a/vcl/backendtest/VisualBackendTest.cxx +++ b/vcl/backendtest/VisualBackendTest.cxx @@ -118,7 +118,7 @@ public: , mpVDev(VclPtr<VirtualDevice>::Create()) { maUpdateTimer.SetTimeoutHdl(LINK(this, VisualBackendTestWindow, updateHdl)); - maUpdateTimer.SetPriority(SchedulerPriority::REPAINT); + maUpdateTimer.SetPriority(TaskPriority::REPAINT); if (mbAnimate) { maUpdateTimer.SetTimeout(1000.0); diff --git a/vcl/inc/saltimer.hxx b/vcl/inc/saltimer.hxx index c2e2c2300f30..4d8541801ef2 100644 --- a/vcl/inc/saltimer.hxx +++ b/vcl/inc/saltimer.hxx @@ -56,21 +56,20 @@ public: } }; -class Scheduler; +class Task; // Internal scheduler record holding intrusive linked list pieces struct ImplSchedulerData { - ImplSchedulerData* mpNext; // Pointer to the next element in list - Scheduler* mpScheduler; // Pointer to VCL Scheduler instance - bool mbDelete; // Destroy this scheduler? - bool mbInScheduler; // Scheduler currently processed? + ImplSchedulerData *mpNext; // Pointer to the next element in list + Task *mpTask; // Pointer to VCL Task instance + bool mbDelete; // Destroy this task? + bool mbInScheduler; // Task currently processed? sal_uInt64 mnUpdateTime; // Last Update Time void Invoke(); const char *GetDebugName() const; - static ImplSchedulerData *GetMostImportantTask( bool bIdle, sal_uInt64 nTimeNow ); }; #endif // INCLUDED_VCL_INC_SALTIMER_HXX diff --git a/vcl/inc/svdata.hxx b/vcl/inc/svdata.hxx index 824daa8f35a0..e3afd5bf1a8d 100644 --- a/vcl/inc/svdata.hxx +++ b/vcl/inc/svdata.hxx @@ -24,7 +24,6 @@ #include <tools/fldunit.hxx> #include <unotools/options.hxx> -#include <vcl/idle.hxx> #include <vcl/svapp.hxx> #include <com/sun/star/lang/XComponent.hpp> @@ -46,6 +45,7 @@ struct ImplConfigData; class ImplDirectFontSubstitution; struct ImplHotKey; struct ImplEventHook; +struct ImplSchedulerData; class Point; class ResMgr; class ImplAccelManager; diff --git a/vcl/opengl/gdiimpl.cxx b/vcl/opengl/gdiimpl.cxx index 61fb63df8fd7..904392644ac9 100644 --- a/vcl/opengl/gdiimpl.cxx +++ b/vcl/opengl/gdiimpl.cxx @@ -20,6 +20,7 @@ #include "openglgdiimpl.hxx" #include <vcl/gradient.hxx> +#include <vcl/idle.hxx> #include <salframe.hxx> #include "salvd.hxx" #include <basegfx/matrix/b2dhommatrixtools.hxx> @@ -54,13 +55,13 @@ public: , m_pImpl( pImpl ) { // We don't want to be swapping before we've painted. - SetPriority( SchedulerPriority::POST_PAINT ); + SetPriority( TaskPriority::POST_PAINT ); } virtual void Invoke() override { m_pImpl->doFlush(); - SetPriority( SchedulerPriority::HIGHEST ); + SetPriority( TaskPriority::HIGHEST ); Stop(); } }; @@ -150,7 +151,7 @@ void OpenGLSalGraphicsImpl::Init() maOffscreenTex.GetHeight() != GetHeight() ) { // We don't want to be swapping before we've painted. - mpFlush->SetPriority( SchedulerPriority::POST_PAINT ); + mpFlush->SetPriority( TaskPriority::POST_PAINT ); if( maOffscreenTex && // don't work to release empty textures mpContext.is() ) // valid context @@ -520,7 +521,7 @@ bool OpenGLSalGraphicsImpl::CheckOffscreenTexture() maOffscreenTex.GetHeight() != GetHeight() ) { VCL_GL_INFO( "re-size offscreen texture " << maOffscreenTex.Id() ); - mpFlush->SetPriority( SchedulerPriority::POST_PAINT ); + mpFlush->SetPriority( TaskPriority::POST_PAINT ); mpContext->ReleaseFramebuffer( maOffscreenTex ); maOffscreenTex = OpenGLTexture(); } diff --git a/vcl/osx/salinst.cxx b/vcl/osx/salinst.cxx index 4cd82d66bd94..0bac909726b6 100644 --- a/vcl/osx/salinst.cxx +++ b/vcl/osx/salinst.cxx @@ -109,7 +109,7 @@ void AquaSalInstance::delayedSettingsChanged( bool bInvalidate ) { osl::Guard< comphelper::SolarMutex > aGuard( *mpSalYieldMutex ); AquaDelayedSettingsChanged* pIdle = new AquaDelayedSettingsChanged( bInvalidate ); - pIdle->SetPriority( SchedulerPriority::MEDIUM ); + pIdle->SetPriority( TaskPriority::MEDIUM ); pIdle->Start(); } diff --git a/vcl/qa/cppunit/timer.cxx b/vcl/qa/cppunit/timer.cxx index 3bf387dcb950..47439ad19e8b 100644 --- a/vcl/qa/cppunit/timer.cxx +++ b/vcl/qa/cppunit/timer.cxx @@ -102,7 +102,7 @@ public: explicit IdleBool( bool &rBool ) : Idle(), mrBool( rBool ) { - SetPriority( SchedulerPriority::LOWEST ); + SetPriority( TaskPriority::LOWEST ); Start(); mrBool = false; } diff --git a/vcl/source/app/idle.cxx b/vcl/source/app/idle.cxx index dea322fd5db9..52b8d980218f 100644 --- a/vcl/source/app/idle.cxx +++ b/vcl/source/app/idle.cxx @@ -27,32 +27,32 @@ void Idle::Invoke() Idle& Idle::operator=( const Idle& rIdle ) { - Scheduler::operator=(rIdle); + Task::operator=(rIdle); maIdleHdl = rIdle.maIdleHdl; return *this; } -Idle::Idle( const sal_Char *pDebugName ) : Scheduler( pDebugName ) +Idle::Idle( const sal_Char *pDebugName ) : Task( pDebugName ) { } -Idle::Idle( const Idle& rIdle ) : Scheduler(rIdle) +Idle::Idle( const Idle& rIdle ) : Task(rIdle) { maIdleHdl = rIdle.maIdleHdl; } void Idle::Start() { - Scheduler::Start(); + Task::Start(); sal_uInt64 nPeriod = Scheduler::ImmediateTimeoutMs; if (Scheduler::GetDeterministicMode()) { switch (mePriority) { - case SchedulerPriority::LOW: - case SchedulerPriority::LOWER: - case SchedulerPriority::LOWEST: + case TaskPriority::LOW: + case TaskPriority::LOWER: + case TaskPriority::LOWEST: nPeriod = Scheduler::InfiniteTimeoutMs; break; default: @@ -60,7 +60,7 @@ void Idle::Start() } } - Scheduler::ImplStartTimer(nPeriod); + Task::StartTimer(nPeriod); } bool Idle::ReadyForSchedule( bool bIdle, sal_uInt64 /* nTimeNow */ ) const @@ -77,7 +77,7 @@ bool Idle::IsIdle() const sal_uInt64 Idle::UpdateMinPeriod( sal_uInt64 /* nMinPeriod */, sal_uInt64 /* nTimeNow */ ) const { assert(false); // idles currently don't hit this. - return ImmediateTimeoutMs; + return Scheduler::ImmediateTimeoutMs; } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vcl/source/app/scheduler.cxx b/vcl/source/app/scheduler.cxx index 63c0c5fcafc6..3a62f3dd61ef 100644 --- a/vcl/source/app/scheduler.cxx +++ b/vcl/source/app/scheduler.cxx @@ -26,7 +26,6 @@ namespace { const sal_uInt64 MaximumTimeoutMs = 1000 * 60; // 1 minute -void InitSystemTimer(ImplSVData* pSVData); } void ImplSchedulerData::Invoke() @@ -38,49 +37,17 @@ void ImplSchedulerData::Invoke() return; // prepare Scheduler Object for deletion after handling - mpScheduler->SetDeletionFlags(); + mpTask->SetDeletionFlags(); // tdf#92036 Reset the period to avoid re-firing immediately. - mpScheduler->mpSchedulerData->mnUpdateTime = tools::Time::GetSystemTicks(); + mpTask->mpSchedulerData->mnUpdateTime = tools::Time::GetSystemTicks(); // invoke it mbInScheduler = true; - mpScheduler->Invoke(); + mpTask->Invoke(); mbInScheduler = false; } -ImplSchedulerData *ImplSchedulerData::GetMostImportantTask( bool bIdle, sal_uInt64 nTimeNow ) -{ - ImplSVData* pSVData = ImplGetSVData(); - ImplSchedulerData *pMostUrgent = nullptr; - - for ( ImplSchedulerData *pSchedulerData = pSVData->mpFirstSchedulerData; pSchedulerData; pSchedulerData = pSchedulerData->mpNext ) - { - if ( !pSchedulerData->mpScheduler || pSchedulerData->mbDelete || pSchedulerData->mbInScheduler || - !pSchedulerData->mpScheduler->ReadyForSchedule( bIdle, nTimeNow ) || - !pSchedulerData->mpScheduler->IsActive()) - continue; - if (!pMostUrgent) - pMostUrgent = pSchedulerData; - else - { - // Find the highest priority. - // If the priority of the current task is higher (numerical value is lower) than - // the priority of the most urgent, the current task gets the new most urgent. - if ( pSchedulerData->mpScheduler->GetPriority() < pMostUrgent->mpScheduler->GetPriority() ) - pMostUrgent = pSchedulerData; - } - } - - return pMostUrgent; -} - -void Scheduler::SetDeletionFlags() -{ - mpSchedulerData->mbDelete = true; - mbActive = false; -} - void Scheduler::ImplDeInitScheduler() { ImplSVData* pSVData = ImplGetSVData(); @@ -95,10 +62,10 @@ void Scheduler::ImplDeInitScheduler() do { ImplSchedulerData* pTempSchedulerData = pSchedulerData; - if ( pSchedulerData->mpScheduler ) + if ( pSchedulerData->mpTask ) { - pSchedulerData->mpScheduler->mbActive = false; - pSchedulerData->mpScheduler->mpSchedulerData = nullptr; + pSchedulerData->mpTask->mbActive = false; + pSchedulerData->mpTask->mpSchedulerData = nullptr; } pSchedulerData = pSchedulerData->mpNext; delete pTempSchedulerData; @@ -132,7 +99,12 @@ void Scheduler::ImplStartTimer(sal_uInt64 nMS, bool bForce) DBG_TESTSOLARMUTEX(); - InitSystemTimer(pSVData); + if (!pSVData->mpSalTimer) + { + pSVData->mnTimerPeriod = MaximumTimeoutMs; + pSVData->mpSalTimer = pSVData->mpDefInst->CreateSalTimer(); + pSVData->mpSalTimer->SetCallback(Scheduler::CallbackTaskScheduling); + } if ( !nMS ) nMS = 1; @@ -145,25 +117,6 @@ void Scheduler::ImplStartTimer(sal_uInt64 nMS, bool bForce) } } -namespace { - -/** -* Initialize the platform specific timer on which all the -* platform independent timers are built -*/ -void InitSystemTimer(ImplSVData* pSVData) -{ - assert(pSVData != nullptr); - if (!pSVData->mpSalTimer) - { - pSVData->mnTimerPeriod = MaximumTimeoutMs; - pSVData->mpSalTimer = pSVData->mpDefInst->CreateSalTimer(); - pSVData->mpSalTimer->SetCallback(Scheduler::CallbackTaskScheduling); - } -} - -} - void Scheduler::CallbackTaskScheduling( bool bIdle ) { // this function is for the saltimer callback @@ -172,17 +125,39 @@ void Scheduler::CallbackTaskScheduling( bool bIdle ) bool Scheduler::ProcessTaskScheduling( bool bIdle ) { - ImplSchedulerData* pSchedulerData; + ImplSVData *pSVData = ImplGetSVData(); + if ( pSVData->mbDeInit ) + return false; + ImplSchedulerData *pMostUrgent = nullptr; sal_uInt64 nTime = tools::Time::GetSystemTicks(); DBG_TESTSOLARMUTEX(); - if ((pSchedulerData = ImplSchedulerData::GetMostImportantTask(bIdle, nTime))) + for ( ImplSchedulerData *pSchedulerData = pSVData->mpFirstSchedulerData; + pSchedulerData; pSchedulerData = pSchedulerData->mpNext ) + { + if ( !pSchedulerData->mpTask || pSchedulerData->mbDelete || pSchedulerData->mbInScheduler || + !pSchedulerData->mpTask->ReadyForSchedule( bIdle, nTime ) || + !pSchedulerData->mpTask->IsActive()) + continue; + if (!pMostUrgent) + pMostUrgent = pSchedulerData; + else + { + // Find the highest priority. + // If the priority of the current task is higher (numerical value is lower) than + // the priority of the most urgent, the current task gets the new most urgent. + if ( pSchedulerData->mpTask->GetPriority() < pMostUrgent->mpTask->GetPriority() ) + pMostUrgent = pSchedulerData; + } + } + + if ( pMostUrgent ) { - SAL_INFO("vcl.schedule", "Invoke task " << pSchedulerData->GetDebugName()); + SAL_INFO("vcl.schedule", "Invoke task " << pMostUrgent->GetDebugName()); - pSchedulerData->mnUpdateTime = nTime; - pSchedulerData->Invoke(); + pMostUrgent->mnUpdateTime = nTime; + pMostUrgent->Invoke(); return true; } else @@ -225,8 +200,8 @@ sal_uInt64 Scheduler::CalculateMinimumTimeout( bool &bHasActiveIdles ) pPrevSchedulerData->mpNext = pSchedulerData->mpNext; else pSVData->mpFirstSchedulerData = pSchedulerData->mpNext; - if ( pSchedulerData->mpScheduler ) - pSchedulerData->mpScheduler->mpSchedulerData = nullptr; + if ( pSchedulerData->mpTask ) + pSchedulerData->mpTask->mpSchedulerData = nullptr; pNext = pSchedulerData->mpNext; delete pSchedulerData; } @@ -234,11 +209,11 @@ sal_uInt64 Scheduler::CalculateMinimumTimeout( bool &bHasActiveIdles ) { if (!pSchedulerData->mbInScheduler) { - if ( !pSchedulerData->mpScheduler->IsIdle() ) + if ( !pSchedulerData->mpTask->IsIdle() ) { sal_uInt64 nOldMinPeriod = nMinPeriod; - nMinPeriod = pSchedulerData->mpScheduler->UpdateMinPeriod( - nOldMinPeriod, nTime ); + nMinPeriod = pSchedulerData->mpTask->UpdateMinPeriod( + nOldMinPeriod, nTime ); SAL_INFO("vcl.schedule", "Have active timer '" << pSchedulerData->GetDebugName() << "' update min period from " << nOldMinPeriod << @@ -282,7 +257,24 @@ sal_uInt64 Scheduler::CalculateMinimumTimeout( bool &bHasActiveIdles ) return nMinPeriod; } -void Scheduler::Start() +const char *ImplSchedulerData::GetDebugName() const +{ + return mpTask && mpTask->GetDebugName() ? + mpTask->GetDebugName() : "unknown"; +} + +void Task::StartTimer( sal_uInt64 nMS ) +{ + Scheduler::ImplStartTimer( nMS, false ); +} + +void Task::SetDeletionFlags() +{ + mpSchedulerData->mbDelete = true; + mbActive = false; +} + +void Task::Start() { ImplSVData *const pSVData = ImplGetSVData(); if (pSVData->mbDeInit) @@ -297,9 +289,9 @@ void Scheduler::Start() if ( !mpSchedulerData ) { - // insert Scheduler + // insert Task mpSchedulerData = new ImplSchedulerData; - mpSchedulerData->mpScheduler = this; + mpSchedulerData->mpTask = this; mpSchedulerData->mbInScheduler = false; // insert last due to SFX! @@ -320,7 +312,7 @@ void Scheduler::Start() mpSchedulerData->mnUpdateTime = tools::Time::GetSystemTicks(); } -void Scheduler::Stop() +void Task::Stop() { mbActive = false; @@ -328,52 +320,45 @@ void Scheduler::Stop() mpSchedulerData->mbDelete = true; } -Scheduler& Scheduler::operator=( const Scheduler& rScheduler ) +Task& Task::operator=( const Task& rTask ) { if ( IsActive() ) Stop(); mbActive = false; - mePriority = rScheduler.mePriority; + mePriority = rTask.mePriority; - if ( rScheduler.IsActive() ) + if ( rTask.IsActive() ) Start(); return *this; } -Scheduler::Scheduler(const sal_Char *pDebugName): +Task::Task(const sal_Char *pDebugName): mpSchedulerData(nullptr), mpDebugName(pDebugName), - mePriority(SchedulerPriority::HIGH), + mePriority(TaskPriority::HIGH), mbActive(false) { } -Scheduler::Scheduler( const Scheduler& rScheduler ): +Task::Task( const Task& rTask ): mpSchedulerData(nullptr), - mpDebugName(rScheduler.mpDebugName), - mePriority(rScheduler.mePriority), + mpDebugName(rTask.mpDebugName), + mePriority(rTask.mePriority), mbActive(false) { - if ( rScheduler.IsActive() ) + if ( rTask.IsActive() ) Start(); } -Scheduler::~Scheduler() +Task::~Task() { if ( mpSchedulerData ) { mpSchedulerData->mbDelete = true; - mpSchedulerData->mpScheduler = nullptr; + mpSchedulerData->mpTask = nullptr; } } -const char *ImplSchedulerData::GetDebugName() const -{ - return mpScheduler && mpScheduler->GetDebugName() ? - mpScheduler->GetDebugName() : "unknown"; -} - - /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vcl/source/app/svapp.cxx b/vcl/source/app/svapp.cxx index a6a5430c36d3..a7c35545e17c 100644 --- a/vcl/source/app/svapp.cxx +++ b/vcl/source/app/svapp.cxx @@ -459,7 +459,7 @@ void Application::Execute() pSVData->maAppData.mnEventTestLimit = 50; pSVData->maAppData.mpEventTestingIdle = new Idle("eventtesting"); pSVData->maAppData.mpEventTestingIdle->SetIdleHdl(LINK(&(pSVData->maAppData), ImplSVAppData, VclEventTestingHdl)); - pSVData->maAppData.mpEventTestingIdle->SetPriority(SchedulerPriority::MEDIUM); + pSVData->maAppData.mpEventTestingIdle->SetPriority(TaskPriority::MEDIUM); pSVData->maAppData.mpEventTestInput = new SvFileStream("eventtesting", StreamMode::READ); pSVData->maAppData.mpEventTestingIdle->Start(); } diff --git a/vcl/source/app/timer.cxx b/vcl/source/app/timer.cxx index 8f52e174e5aa..96485ae90ebd 100644 --- a/vcl/source/app/timer.cxx +++ b/vcl/source/app/timer.cxx @@ -45,7 +45,7 @@ sal_uInt64 Timer::UpdateMinPeriod( sal_uInt64 nMinPeriod, sal_uInt64 nTimeNow ) { sal_uInt64 nWakeupTime = mpSchedulerData->mnUpdateTime + mnTimeout; if( nWakeupTime <= nTimeNow ) - return ImmediateTimeoutMs; + return Scheduler::ImmediateTimeoutMs; else { sal_uInt64 nSleepTime = nWakeupTime - nTimeNow; @@ -54,15 +54,15 @@ sal_uInt64 Timer::UpdateMinPeriod( sal_uInt64 nMinPeriod, sal_uInt64 nTimeNow ) } Timer::Timer(const sal_Char *pDebugName) : - Scheduler(pDebugName), - mnTimeout(ImmediateTimeoutMs), + Task(pDebugName), + mnTimeout(Scheduler::ImmediateTimeoutMs), mbAuto(false) { - mePriority = SchedulerPriority::HIGHEST; + mePriority = TaskPriority::HIGHEST; } Timer::Timer( const Timer& rTimer ) : - Scheduler(rTimer), + Task(rTimer), mnTimeout(rTimer.mnTimeout), mbAuto(rTimer.mbAuto) { @@ -76,8 +76,8 @@ void Timer::Invoke() void Timer::Start() { - Scheduler::Start(); - Scheduler::ImplStartTimer(mnTimeout); + Task::Start(); + Task::StartTimer( mnTimeout ); } void Timer::SetTimeout( sal_uInt64 nNewTimeout ) @@ -85,14 +85,12 @@ void Timer::SetTimeout( sal_uInt64 nNewTimeout ) mnTimeout = nNewTimeout; // If timer is active, then renew clock. if ( mbActive ) - { - Scheduler::ImplStartTimer(mnTimeout); - } + StartTimer( mnTimeout ); } Timer& Timer::operator=( const Timer& rTimer ) { - Scheduler::operator=(rTimer); + Task::operator=(rTimer); maTimeoutHdl = rTimer.maTimeoutHdl; mnTimeout = rTimer.mnTimeout; mbAuto = rTimer.mbAuto; diff --git a/vcl/source/edit/textdata.cxx b/vcl/source/edit/textdata.cxx index 77abfb0c98b5..ceb42d053019 100644 --- a/vcl/source/edit/textdata.cxx +++ b/vcl/source/edit/textdata.cxx @@ -275,7 +275,7 @@ IdleFormatter::IdleFormatter() { mpView = nullptr; mnRestarts = 0; - SetPriority(SchedulerPriority::HIGH); + SetPriority(TaskPriority::HIGH); } IdleFormatter::~IdleFormatter() diff --git a/vcl/source/window/dockmgr.cxx b/vcl/source/window/dockmgr.cxx index 127557058313..1f97adbb0114 100644 --- a/vcl/source/window/dockmgr.cxx +++ b/vcl/source/window/dockmgr.cxx @@ -88,11 +88,11 @@ ImplDockFloatWin2::ImplDockFloatWin2( vcl::Window* pParent, WinBits nWinBits, SetBackground( GetSettings().GetStyleSettings().GetFaceColor() ); maDockIdle.SetIdleHdl( LINK( this, ImplDockFloatWin2, DockTimerHdl ) ); - maDockIdle.SetPriority( SchedulerPriority::MEDIUM ); + maDockIdle.SetPriority( TaskPriority::MEDIUM ); maDockIdle.SetDebugName( "vcl::ImplDockFloatWin2 maDockIdle" ); maEndDockIdle.SetIdleHdl( LINK( this, ImplDockFloatWin2, EndDockTimerHdl ) ); - maEndDockIdle.SetPriority( SchedulerPriority::MEDIUM ); + maEndDockIdle.SetPriority( TaskPriority::MEDIUM ); maEndDockIdle.SetDebugName( "vcl::ImplDockFloatWin2 maEndDockIdle" ); } diff --git a/vcl/source/window/dockwin.cxx b/vcl/source/window/dockwin.cxx index b5b543fc3851..4c21f4733487 100644 --- a/vcl/source/window/dockwin.cxx +++ b/vcl/source/window/dockwin.cxx @@ -103,7 +103,7 @@ ImplDockFloatWin::ImplDockFloatWin( vcl::Window* pParent, WinBits nWinBits, SetBackground(); maDockIdle.SetIdleHdl( LINK( this, ImplDockFloatWin, DockTimerHdl ) ); - maDockIdle.SetPriority( SchedulerPriority::MEDIUM ); + maDockIdle.SetPriority( TaskPriority::MEDIUM ); maDockIdle.SetDebugName( "vcl::ImplDockFloatWin maDockIdle" ); } @@ -308,7 +308,7 @@ void DockingWindow::ImplInitDockingWindowData() mpDialogParent = nullptr; //To-Do, reuse maResizeTimer - maLayoutIdle.SetPriority(SchedulerPriority::RESIZE); + maLayoutIdle.SetPriority(TaskPriority::RESIZE); maLayoutIdle.SetIdleHdl( LINK( this, DockingWindow, ImplHandleLayoutTimerHdl ) ); maLayoutIdle.SetDebugName( "vcl::DockingWindow maLayoutIdle" ); } diff --git a/vcl/source/window/syswin.cxx b/vcl/source/window/syswin.cxx index 5c03502b54dd..82bd7ef6e13b 100644 --- a/vcl/source/window/syswin.cxx +++ b/vcl/source/window/syswin.cxx @@ -85,7 +85,7 @@ SystemWindow::SystemWindow(WindowType nType) mpWindowImpl->mnActivateMode = ActivateModeFlags::GrabFocus; //To-Do, reuse maResizeTimer - maLayoutIdle.SetPriority(SchedulerPriority::RESIZE); + maLayoutIdle.SetPriority(TaskPriority::RESIZE); maLayoutIdle.SetIdleHdl( LINK( this, SystemWindow, ImplHandleLayoutTimerHdl ) ); maLayoutIdle.SetDebugName( "vcl::SystemWindow maLayoutIdle" ); } diff --git a/vcl/source/window/toolbox.cxx b/vcl/source/window/toolbox.cxx index dde50d482498..c5a67244b5b6 100644 --- a/vcl/source/window/toolbox.cxx +++ b/vcl/source/window/toolbox.cxx @@ -1408,7 +1408,7 @@ void ToolBox::ImplInitToolBoxData() mpStatusListener = new VclStatusListener<ToolBox>(this, ".uno:ImageOrientation"); mpIdle = new Idle("vcl::ToolBox maIdle update"); - mpIdle->SetPriority( SchedulerPriority::RESIZE ); + mpIdle->SetPriority( TaskPriority::RESIZE ); mpIdle->SetIdleHdl( LINK( this, ToolBox, ImplUpdateHdl ) ); // set timeout and handler for dropdown items diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index bd1401bb04ab..2757800751f5 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -814,10 +814,10 @@ ImplFrameData::ImplFrameData( vcl::Window *pWindow ) mbInSysObjFocusHdl = false; mbInSysObjToTopHdl = false; mbSysObjFocus = false; - maPaintIdle.SetPriority( SchedulerPriority::REPAINT ); + maPaintIdle.SetPriority( TaskPriority::REPAINT ); maPaintIdle.SetIdleHdl( LINK( pWindow, vcl::Window, ImplHandlePaintHdl ) ); maPaintIdle.SetDebugName( "vcl::Window maPaintIdle" ); - maResizeIdle.SetPriority( SchedulerPriority::RESIZE ); + maResizeIdle.SetPriority( TaskPriority::RESIZE ); maResizeIdle.SetIdleHdl( LINK( pWindow, vcl::Window, ImplHandleResizeTimerHdl ) ); maResizeIdle.SetDebugName( "vcl::Window maResizeIdle" ); mbInternalDragGestureRecognizer = false; diff --git a/vcl/unx/generic/print/genprnpsp.cxx b/vcl/unx/generic/print/genprnpsp.cxx index a8fb4d143acf..b95436c84522 100644 --- a/vcl/unx/generic/print/genprnpsp.cxx +++ b/vcl/unx/generic/print/genprnpsp.cxx @@ -1319,7 +1319,7 @@ void PrinterUpdate::update(SalGenericInstance &rInstance) else if( ! pPrinterUpdateIdle ) { pPrinterUpdateIdle = new Idle("PrinterUpdateTimer"); - pPrinterUpdateIdle->SetPriority( SchedulerPriority::LOWEST ); + pPrinterUpdateIdle->SetPriority( TaskPriority::LOWEST ); pPrinterUpdateIdle->SetIdleHdl( LINK( nullptr, PrinterUpdate, UpdateTimerHdl ) ); pPrinterUpdateIdle->Start(); } diff --git a/vcl/unx/gtk/gtksalmenu.cxx b/vcl/unx/gtk/gtksalmenu.cxx index 2cf072a01d5d..af26a10f22ed 100644 --- a/vcl/unx/gtk/gtksalmenu.cxx +++ b/vcl/unx/gtk/gtksalmenu.cxx @@ -503,7 +503,7 @@ GtkSalMenu::GtkSalMenu( bool bMenuBar ) : //typically this only gets called after the menu has been customized on the //next idle slot, in the normal case of a new menubar SetFrame is called //directly long before this idle would get called. - maUpdateMenuBarIdle.SetPriority(SchedulerPriority::HIGHEST); + maUpdateMenuBarIdle.SetPriority(TaskPriority::HIGHEST); maUpdateMenuBarIdle.SetIdleHdl(LINK(this, GtkSalMenu, MenuBarHierarchyChangeHandler)); maUpdateMenuBarIdle.SetDebugName("Native Gtk Menu Update Idle"); } |