summary refs log tree commit diff
path: root/src/timeline/TimelineModel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/timeline/TimelineModel.cpp')
-rw-r--r--src/timeline/TimelineModel.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/timeline/TimelineModel.cpp b/src/timeline/TimelineModel.cpp

index b41d1e0c..03606d90 100644 --- a/src/timeline/TimelineModel.cpp +++ b/src/timeline/TimelineModel.cpp
@@ -1162,12 +1162,12 @@ TimelineModel::syncState(const mtx::responses::State &s) void TimelineModel::addEvents(const mtx::responses::Timeline &timeline) { - if (timeline.events.empty()) - return; - if (timeline.limited) setPaginationInProgress(false); + if (timeline.events.empty()) + return; + events.handleSync(timeline); using namespace mtx::events; @@ -2034,7 +2034,11 @@ TimelineModel::copyMedia(const QString &eventId) const clipContents->setImageData(img); } - QGuiApplication::clipboard()->setMimeData(clipContents); + // Qt uses COM for clipboard management on windows and our HTTP threads do not + // initialize it, so run in the event loop + QTimer::singleShot(0, ChatPage::instance(), [clipContents] { + QGuiApplication::clipboard()->setMimeData(clipContents); + }); return; } catch (const std::exception &e) {