aboutsummaryrefslogtreecommitdiff
path: root/src/QuickMedia.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/QuickMedia.cpp')
-rw-r--r--src/QuickMedia.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp
index 6a37b1d..d006f3d 100644
--- a/src/QuickMedia.cpp
+++ b/src/QuickMedia.cpp
@@ -397,8 +397,9 @@ namespace QuickMedia {
for(int i = 1; i < argc; ++i) {
if(!plugin_name) {
std::string youtube_video_id_dummy;
- if(youtube_url_extract_id(argv[i], youtube_video_id_dummy)) {
- youtube_url = argv[i];
+ std::string youtube_url_converted = invidious_url_to_youtube_url(argv[i]);
+ if(youtube_url_extract_id(youtube_url_converted, youtube_video_id_dummy)) {
+ youtube_url = std::move(youtube_url_converted);
plugin_name = "youtube";
}
@@ -5514,16 +5515,18 @@ namespace QuickMedia {
bool avatar_applied = false;
- auto launch_url = [this, matrix_chat_page, &tabs, MESSAGES_TAB_INDEX, &redraw, &avatar_applied](const std::string &url) mutable {
+ auto launch_url = [this, matrix_chat_page, &tabs, MESSAGES_TAB_INDEX, &redraw, &avatar_applied](std::string url) mutable {
if(url.empty())
return;
+ url = invidious_url_to_youtube_url(url);
+
std::string video_id;
if(youtube_url_extract_id(url, video_id)) {
watched_videos.clear();
page_stack.push(PageType::CHAT);
current_page = PageType::VIDEO_CONTENT;
- auto youtube_video_page = std::make_unique<YoutubeVideoPage>(this, url);
+ auto youtube_video_page = std::make_unique<YoutubeVideoPage>(this, std::move(url));
// TODO: Use real title
video_content_page(matrix_chat_page, youtube_video_page.get(), "", false, tabs[MESSAGES_TAB_INDEX].body.get(), tabs[MESSAGES_TAB_INDEX].body->get_selected_item());
redraw = true;
@@ -6688,9 +6691,10 @@ namespace QuickMedia {
return 0;
}
- void Program::download_page(const std::string &url) {
+ void Program::download_page(std::string url) {
window.setTitle("QuickMedia - Select where you want to save " + std::string(url));
+ url = invidious_url_to_youtube_url(url);
const bool download_use_youtube_dl = url_should_download_with_youtube_dl(url);
std::string filename;
std::string video_id;