From e68ff632e2f54c705ae1d69033e58a8f2d1ca00c Mon Sep 17 00:00:00 2001 From: dec05eba Date: Mon, 16 Nov 2020 13:32:49 +0100 Subject: Matrix: show provisional messages as the message is being sent and received --- include/Body.hpp | 2 ++ include/MessageQueue.hpp | 9 +++++++++ 2 files changed, 11 insertions(+) (limited to 'include') diff --git a/include/Body.hpp b/include/Body.hpp index f4742bc..236a02d 100644 --- a/include/Body.hpp +++ b/include/Body.hpp @@ -207,6 +207,8 @@ namespace QuickMedia { float get_page_scroll() const { return page_scroll; } bool is_last_item_fully_visible() const { return last_item_fully_visible; } + bool is_body_full_with_items() const { return items_cut_off; } + sf::Text progress_text; sf::Text replies_text; sf::Text embedded_item_load_text; diff --git a/include/MessageQueue.hpp b/include/MessageQueue.hpp index 4f1e036..7c34d51 100644 --- a/include/MessageQueue.hpp +++ b/include/MessageQueue.hpp @@ -31,6 +31,15 @@ namespace QuickMedia { return data; } + std::optional pop_if_available() { + std::unique_lock lock(mutex); + if(data_queue.empty()) + return std::nullopt; + T data = std::move(data_queue.front()); + data_queue.pop_front(); + return data; + } + void close() { std::unique_lock lock(mutex); running = false; -- cgit v1.2.3