aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--TODO8
-rw-r--r--src/QuickMedia.cpp11
2 files changed, 12 insertions, 7 deletions
diff --git a/TODO b/TODO
index 25c0d45..c1b8592 100644
--- a/TODO
+++ b/TODO
@@ -223,7 +223,7 @@ Instead of having an option to disable rounded corners, add an option to set cor
Consider adding an option to use external sxiv, imv etc instead of mpv/quickmedia image viewer.
Fallback to playing videos/etc from origin homeserver in matrix if the file is larger than the users homeserver allows. This wont work with pantalaimon + encrypted rooms, so it should be delayed until quickmedia supports matrix encryption.
Fix 4chan posting! cloudflare broke shit. Then create external captcha solver program that solves captcha from captcha image.
-Add option to use invidious, and the invidious front page.
+Add option to use invidious/piped, and the invidious/piped front page.
Add proper vim modal mode. Maybe switch focused part with tab? then also need to show which part is focused.
Send clipboard content to clipboard manager when destroying the window, if we are the clipboard owner.
Bypass compositor when fullscreening application.
@@ -231,7 +231,7 @@ Automatically cleanup old cache files.
Download manga pages in parallel. This helps downloading for certain websites such as mangakatana where a single page can take more than 2 seconds but loading 5 at once allows each page to load in 0.4 seconds.
Allow pasting a file link (with or without file://) directly into matrix chat to upload a file (if the chat input is empty). This allows replying-with-media to work with ctrl+v.
The formatting of replying to a message with an image in matrix is a bit weird. The reply image should be below the replied to message instead of on the left side.
-Add ctrl+h to go back to the front page.
+Add ctrl+h to go back to the front page or show a manual.
Async load textures (not just images). This can be done efficiently by using different opengl contexts in different threads and making the context current right before a heavy opengl operation. All threads need to set their opengl context often.
Downloading files should take into account the remove mime type if available. Fallback to file extension.
Text images atlas or vertex buffer with multiple active textures (grouped into 32 images to not go over active texture limit).
@@ -254,4 +254,6 @@ Some mangadex chapter images are .webp files, such as the images for chapter 0 f
Fully support all emoji, including the minimally-qualified ones. Sometimes twemoji doesn't have the correct sequence images.
@room in rooms do not currently work (for show as notifications in quickmedia matrix). This is because quickmedia matrix doesn't fetch power level states and doesn't parse them. Quickmedia has code to parse room events power levels but it doesn't actually fetch the data so that part is never used.
Support NicoNicoDouga and BiliBili (user request).
-Support arabic/hebrew text. Use Text class for all text rendering. \ No newline at end of file
+Support arabic/hebrew text. Use Text class for all text rendering.
+Add command to change avatar/username/etc globally/per room in matrix.
+Fix youtube information page missing info, show more youtube info in search results. \ No newline at end of file
diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp
index 433cc77..4de923d 100644
--- a/src/QuickMedia.cpp
+++ b/src/QuickMedia.cpp
@@ -3321,12 +3321,12 @@ namespace QuickMedia {
if(update_duration) {
update_duration = false;
- successfully_fetched_video_duration = true;
+ successfully_fetched_video_duration = false;
double file_duration = 0.0;
video_player->get_duration_in_file(&file_duration);
video_info.duration = std::max(video_info.duration, file_duration);
- if(video_info.duration > 0.001)//
- successfully_fetched_video_duration = true;//
+ if(video_info.duration > 0.001)
+ successfully_fetched_video_duration = true;
}
};
@@ -3346,8 +3346,11 @@ namespace QuickMedia {
if(update_time_pos) {
update_time_pos = false;
- if(video_player->get_time_in_file(&video_time_pos) == VideoPlayer::Error::OK)
+ if(video_player->get_time_in_file(&video_time_pos) == VideoPlayer::Error::OK) {
successfully_fetched_time_pos = true;
+ if(successfully_fetched_video_duration)
+ video_page->set_watch_progress(video_time_pos, video_info.duration);
+ }
}
update_video_duration_handler();