office-gobmx/offapi/com/sun/star/awt/XToolkitExperimental.idl
Noel Grandin 0446f73d27 tdf#153519 use new IdleTask::waitUntilIdleDispatched
to wait until the Idle inside sw/ has done populating the navigator
tree.

Which required
(*) moving the code down from test/ to vcl/ to avoid circular dependency
issues.
(*) adding a call SolarMutexGuard before Application::Yield inside
IdleTask::waitUntilIdleDispatched
(*) exposing the function to python by adding a method to the
XToolkitExperimental UNO API

Change-Id: Iee418f7a0beb1f5b53addb7fe25823d61720eb3a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158495
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-10-26 16:10:29 +02:00

61 lines
1.6 KiB
Text

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
module com { module sun { module star { module awt {
/** Work in progress, don't use unless you know what you are doing.
*/
interface XToolkitExperimental : XToolkit3
{
/** Process all pending idle events
*/
void processEventsToIdle();
/** Get the number of OpenGL buffer swaps.
*/
hyper getOpenGLBufferSwapCounter();
/** Turn on or off deterministic scheduling (off is the default).
*/
void setDeterministicScheduling([in] boolean bDeterministicMode);
/** Pause the main thread of LibreOffice for the requested amount of time.
*/
void pause([in] long nMilliseconds);
/** Start time logging.
@since LibreOffice 6.0
*/
void startRecording();
/** Stop time logging.
@since LibreOffice 6.0
*/
void stopRecording();
/** Query time logs and clear recording.
First line is the time of the recorded operations in seconds,
next ones are the log lines. A log line contains the thread ID,
time stamp, profile zone ID and "start" or "stop".
@since LibreOffice 6.0
*/
sequence<string> getRecordingAndClear();
/** Wait until all idles dispatched.
*/
void waitUntilAllIdlesDispatched();
};
}; }; }; };
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */