File tree Expand file tree Collapse file tree 2 files changed +20
-14
lines changed
Expand file tree Collapse file tree 2 files changed +20
-14
lines changed Original file line number Diff line number Diff line change @@ -83,6 +83,7 @@ qt_generate_wayland_protocol_client_sources(dock-taskmanager
8383target_link_libraries (dock-taskmanager PRIVATE
8484 dde-shell-frame
8585 Qt${QT_VERSION_MAJOR} ::WaylandClientPrivate
86+ Qt${QT_VERSION_MAJOR} ::Concurrent
8687 yaml-cpp
8788 PkgConfig::WaylandClient
8889)
Original file line number Diff line number Diff line change 1111#include < cstdint>
1212#include < unistd.h>
1313
14- #include < QFile>
15- #include < QTimer>
16- #include < QEvent>
17- #include < QWindow>
18- #include < QPixmap>
19- #include < QLayout>
20- #include < QScreen>
21- #include < QPainter>
14+ #include < DIconButton>
2215#include < QByteArray>
23- #include < QDBusReply>
24- #include < QMouseEvent>
2516#include < QDBusInterface>
26- #include < QLoggingCategory >
17+ #include < QDBusReply >
2718#include < QDBusUnixFileDescriptor>
19+ #include < QEvent>
20+ #include < QFile>
21+ #include < QLayout>
22+ #include < QLoggingCategory>
23+ #include < QMouseEvent>
24+ #include < QPainter>
2825#include < QPainterPath>
29- #include < DIconButton>
26+ #include < QPixmap>
27+ #include < QScreen>
28+ #include < QTimer>
29+ #include < QWindow>
30+ #include < QtConcurrent>
3031
3132#include < DStyle>
3233#include < DPlatformHandle>
@@ -161,9 +162,13 @@ class AppItemWindowModel : public QAbstractListModel
161162 {
162163 m_previewPixmaps.clear ();
163164 if (!m_item.isNull ()) {
164- for ( const auto &window : m_item->getAppendWindows ()) {
165+ const auto previewPixmaps = QtConcurrent::blockingMapped ( m_item->getAppendWindows (), [ this ]( const QPointer<AbstractWindow> &window ) {
165166 auto previewPixmap = fetchWindowPreview (window->id ());
166- m_previewPixmaps.insert (window->id (), previewPixmap);
167+ return QPair<uint32_t , QPixmap>{window->id (), previewPixmap};
168+ });
169+
170+ for (const auto &item : previewPixmaps) {
171+ m_previewPixmaps.insert (item.first , item.second );
167172 }
168173 }
169174 }
You can’t perform that action at this time.
0 commit comments