1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 05:17:35 +00:00

VideoPlayer: Show current open file in the title

This commit is contained in:
Slimey 2022-11-06 13:14:29 +00:00 committed by Gunnar Beutner
parent 13ac078202
commit 8006bdf6b4
3 changed files with 21 additions and 1 deletions

View file

@ -77,6 +77,9 @@ void VideoPlayerWidget::open_file(StringView filename)
return; return;
} }
m_path = filename;
update_title();
m_playback_manager = load_file_result.release_value(); m_playback_manager = load_file_result.release_value();
resume_playback(); resume_playback();
} }
@ -184,4 +187,17 @@ void VideoPlayerWidget::cycle_sizing_modes()
m_video_display->update(); m_video_display->update();
} }
void VideoPlayerWidget::update_title()
{
StringBuilder string_builder;
if (m_path.is_empty()) {
string_builder.append("No video"sv);
} else {
string_builder.append(m_path.view());
}
string_builder.append("[*] - Video Player"sv);
window()->set_title(string_builder.to_string());
}
} }

View file

@ -27,6 +27,8 @@ public:
void pause_playback(); void pause_playback();
void toggle_pause(); void toggle_pause();
void update_title();
private: private:
VideoPlayerWidget(GUI::Window&); VideoPlayerWidget(GUI::Window&);
@ -40,6 +42,8 @@ private:
GUI::Window& m_window; GUI::Window& m_window;
String m_path;
RefPtr<VideoFrameWidget> m_video_display; RefPtr<VideoFrameWidget> m_video_display;
RefPtr<GUI::HorizontalSlider> m_seek_slider; RefPtr<GUI::HorizontalSlider> m_seek_slider;

View file

@ -25,11 +25,11 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
auto app = TRY(GUI::Application::try_create(arguments)); auto app = TRY(GUI::Application::try_create(arguments));
auto window = TRY(GUI::Window::try_create()); auto window = TRY(GUI::Window::try_create());
window->set_title("Video Player");
window->resize(640, 480); window->resize(640, 480);
window->set_resizable(true); window->set_resizable(true);
auto main_widget = TRY(window->try_set_main_widget<VideoPlayer::VideoPlayerWidget>(window)); auto main_widget = TRY(window->try_set_main_widget<VideoPlayer::VideoPlayerWidget>(window));
main_widget->update_title();
if (!filename.is_empty()) if (!filename.is_empty())
main_widget->open_file(filename); main_widget->open_file(filename);