aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2020-11-05 17:56:12 +0100
committerdec05eba <dec05eba@protonmail.com>2020-11-05 17:56:12 +0100
commitc60c32a05c4632682c9e0de77909e897175cc9ac (patch)
treeb4e0de10d3ae4f10a398c9177dd18d9e57b76925
parenta90f4e0b27ead8dc609522d772d6ede250b258dd (diff)
Asdf sorting
-rw-r--r--TODO4
-rw-r--r--src/QuickMedia.cpp10
-rw-r--r--src/plugins/Matrix.cpp4
3 files changed, 5 insertions, 13 deletions
diff --git a/TODO b/TODO
index d6f7b7c..63e059e 100644
--- a/TODO
+++ b/TODO
@@ -77,7 +77,6 @@ If there are multiple users with the same name in a matrix room, then display th
Show 4chan warnings as warnings instead of ban when posting a message (show the warning message) and then post the message.
Add tabs. Using tabs with tabbed is not as good of a solution as it would use much more memory (opengl context cost) and with our own tabs, we can clear thumbnails and other cache when a tab is in the background. Changing tab either with ctrl+tab or mouse click. ctrl+enter to open a new tab. Ctrl+q or ctrl+w to close a tab.
Remove related videos that have already been watched (except the first related video, which is the "watch next" video, usually the next part of a serie).
-Use GET /_matrix/client/r0/notifications to get the exact messages that notified us in matrix.
Add F5 to refresh page.
Support m.sticker, m.direct, and other matrix events.
Allow choosing which translation/scanlation to use on mangadex. Right now it uses the latest one, which is most likely to be the best.
@@ -100,7 +99,6 @@ Disable posting in 4chan thread if closed (thread json contains "closed" field f
Remove calls to get the original message of an edit in edits and replies in matrix if possible. These calls take additional time, and with a slow homeserver or high ping this could make messages to be delayed by an annoying amount of time.
Read image exif into to apply image rotation. This is common in images taken on phones. If not done, the width and height will also be mixed and thumbnail fallback size will be incorrectly calculated (for example in matrix).
Handle M_LIMIT_EXCEEDED in matrix
-Check if we need to call /_matrix/client/r0/notifications for intial sync to receive old notifications or if /sync always includes mentions.
Maybe dont clear cache for body items when filtering.
Change scroll in body when previous items change size (such as when thumbnail has finished loading).
Load the replied-to message in the pinned messages tab.
@@ -125,7 +123,7 @@ Hide invites tab when there are no invites (to make room for other tabs in the f
Add keybind to go to invites page from any page.
Show marker beside pinned messages tab name if there are new pinned messages.
Make /logout work everywhere, not only in room message input.
-Add a notifications tab to show messages that mention us in all rooms (and then press enter to go to that message in that room).
+Add a notifications tab to show messages that mention us in all rooms (and then press enter to go to that message in that room), also add a unread/mentioned rooms list tab to only show rooms with unread messages or mentions.
Disable message input in matrix when muted.
Preview rooms?
Instantly show messages posted by me until we receive our message from the server (use post response which includes event id).
diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp
index 9bb5231..937510c 100644
--- a/src/QuickMedia.cpp
+++ b/src/QuickMedia.cpp
@@ -982,14 +982,8 @@ namespace QuickMedia {
after_submit_handler();
if(tabs[selected_tab].page->clear_search_after_submit() && tabs[selected_tab].search_bar) {
- if(!tabs[selected_tab].search_bar->get_text().empty()) {
- tabs[selected_tab].search_bar->clear();
- tabs[selected_tab].search_bar->onTextUpdateCallback("");
- } else {
- int selected_item_index = tabs[selected_tab].body->get_selected_item();
- tabs[selected_tab].body->select_first_item();
- tabs[selected_tab].body->set_selected_item(selected_item_index, false);
- }
+ tabs[selected_tab].search_bar->clear();
+ tabs[selected_tab].search_bar->onTextUpdateCallback("");
}
if(tabs[selected_tab].page->is_single_page()) {
diff --git a/src/plugins/Matrix.cpp b/src/plugins/Matrix.cpp
index b99aa02..50296a8 100644
--- a/src/plugins/Matrix.cpp
+++ b/src/plugins/Matrix.cpp
@@ -469,7 +469,7 @@ namespace QuickMedia {
void MatrixRoomsPage::on_navigate_to_page(Body *body) {
if(search_bar)
body->filter_search_fuzzy(search_bar->get_text());
- //sort_room_body_items(body->items);
+ sort_room_body_items(body->items);
}
void MatrixRoomsPage::update() {
@@ -521,7 +521,7 @@ namespace QuickMedia {
// Swap order of rooms in body list to put rooms with mentions at the top and then unread messages and then all the other rooms
// TODO: Optimize with hash map instead of linear search? or cache the index
std::lock_guard<std::mutex> lock(mutex);
-#if 1
+#if 0
BodyItem *room_body_item = static_cast<BodyItem*>(room->userdata);
int room_body_index = body->get_index_by_body_item(room_body_item);
if(room_body_index != -1) {