qt5base-lts/tests/manual
Mikolaj Boc fb8832de9c Make the promises js-less using a newly introduced thunk pool
Since we cannot rely on the clients specifying a suitable CSP that will
not forbid execution of js injections, we have to refrain from using
any explicit <script> elements. To keep the promise system working, a
thunk pool was introduced which keeps track of a limited pool of promise
callback exports. In case the resources are busy, pending calls are
enqueued. This works since the JS Promise.then/catch/finally always fire,
even on ready/failed promises.
As the situation of full thunk pool allocation is unlikely to happen
en masse IRL, the solution should not adversely affect the performance.
Heavy unit tests were created to confirm the solution works as expected.

Task-number: QTBUG-99611
Change-Id: I0e6982d4ee76a4263b59e72b004b3ff2f167e4df
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2022-07-07 06:28:13 +02:00
..
cmake/test_copy_file_if_different_command Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
cocoa Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
corelib/tools Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
diaglib Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
dialogs Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
embeddedintoforeignwindow Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
filetest Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
foreignwindows Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
gestures Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
highdpi Add support for painting at integer DPR with downscale 2022-06-14 19:16:35 +00:00
inputmethodhints Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
keypadnavigation Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
lance Support cosmetic brush patterns in the pdf and opengl paint engines 2022-06-04 21:15:42 +02:00
markdown Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
mkspecs Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
network_remote_stresstest Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
network_stresstest Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qcursor Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qdesktopservices Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qgraphicsitem Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qgraphicsitemgroup Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qgraphicslayout/flicker Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qhttpnetworkconnection Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qimagereader Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qlayout Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qlocale Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmetatype Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmimedatabase Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qnetconmonitor Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qnetworkaccessmanager/qget Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qnetworkinformation Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qnetworkreply Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qopenglcontext Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qopengltextureblitter Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qopenglwidget Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qopenglwindow/multiwindow Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qprintdevice_dump Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qscreen Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qscreen_xrandr Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qssloptions Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qsslsocket Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qstorageinfo Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qsysinfo Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qt_poll Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtabbar Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtabletevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtbug-8933 Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtbug-52641 Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtexteditlist Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtexttableborders Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtouchevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qvulkaninstance Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qwidget_zorder Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
repaint Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
rhi rhi: metal: Switch back to presentDrawable 2022-06-28 10:47:41 +02:00
shortcuts Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
socketengine Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
startsystemmove Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
textrendering Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
touch Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
touchGraphicsItem Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
transientwindow Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
triangulator Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
unc Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
wasm Make the promises js-less using a newly introduced thunk pool 2022-07-07 06:28:13 +02:00
widgetgrab Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
widgets Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
windowactivation Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
windowchildgeometry Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
windowflags Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
windowgeometry Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
windowmodality Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
windowtransparency Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
xcb_gl_integration Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
xembed-raster Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
xembed-widgets Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
CMakeLists.txt xcb: support xrandr(1.5) monitor setup 2021-09-01 20:32:04 +02:00
manual.pro xcb: support xrandr(1.5) monitor setup 2021-09-01 20:32:04 +02:00