summaryrefslogtreecommitdiff
path: root/src/wx/film_viewer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/wx/film_viewer.cc')
-rw-r--r--src/wx/film_viewer.cc23
1 files changed, 10 insertions, 13 deletions
diff --git a/src/wx/film_viewer.cc b/src/wx/film_viewer.cc
index 4d8685dd0..bd56efd57 100644
--- a/src/wx/film_viewer.cc
+++ b/src/wx/film_viewer.cc
@@ -84,18 +84,6 @@ FilmViewer::FilmViewer (shared_ptr<Film> f, wxWindow* p)
_play_button->Connect (wxID_ANY, wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEventHandler (FilmViewer::play_clicked), 0, this);
_timer.Connect (wxID_ANY, wxEVT_TIMER, wxTimerEventHandler (FilmViewer::timer), 0, this);
- if (f) {
- /* We need a player before we set_film() so that the first frame will be displayed */
- _player = f->player ();
- _player->disable_audio ();
- _player->disable_video_sync ();
- /* Don't disable subtitles here as we may need them, and it's nice to be able to turn them
- on and off without needing obtain a new Player.
- */
-
- _player->Video.connect (bind (&FilmViewer::process_video, this, _1, _2, _3));
- }
-
set_film (f);
JobManager::instance()->ActiveJobsChanged.connect (
@@ -142,13 +130,22 @@ FilmViewer::set_film (shared_ptr<Film> f)
if (_film == f) {
return;
}
-
+
_film = f;
if (!_film) {
return;
}
+ _player = f->player ();
+ _player->disable_audio ();
+ _player->disable_video_sync ();
+ /* Don't disable subtitles here as we may need them, and it's nice to be able to turn them
+ on and off without needing obtain a new Player.
+ */
+
+ _player->Video.connect (bind (&FilmViewer::process_video, this, _1, _2, _3));
+
_film->Changed.connect (boost::bind (&FilmViewer::film_changed, this, _1));
film_changed (Film::CONTENT);