X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fplaytransport.C;h=0690da07bd8bd1db2119e1dfb06e9a9eee22c9ce;hb=853b81c6d430bd41037984ecc95fd304fd98964e;hp=94b70dcdc139f9dc79b8aa1000481e43bc5213e6;hpb=3bf30d220f7855b995b887dc10812ae3780e6805;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/cinelerra/playtransport.C b/cinelerra-5.1/cinelerra/playtransport.C index 94b70dcd..0690da07 100644 --- a/cinelerra-5.1/cinelerra/playtransport.C +++ b/cinelerra-5.1/cinelerra/playtransport.C @@ -132,7 +132,7 @@ int PlayTransport::get_w() int PlayTransport::is_stopped() { - return engine->command->command == STOP ? 1 : 0; + return engine->is_playing_back ? 0 : 1; } int PlayTransport::flip_vertical(int vertical, int &x, int &y) @@ -210,7 +210,7 @@ int PlayTransport::do_keypress(int key) int loop_play = shft_key & ctrl_key; float speed = 0; int command = -1; - int curr_command = engine->command->command; + int curr_command = engine->is_playing_back ? engine->command->command : STOP; subwindow->unlock_window(); result = 0; @@ -502,11 +502,7 @@ void PlayTransport::change_position(double position) if( !get_edl() ) return; int command = engine->command->command; // stop transport - if( command != STOP && command != COMMAND_NONE && - command != SINGLE_FRAME_FWD && command != SINGLE_FRAME_REWIND ) { - engine->transport_stop(); - engine->interrupt_playback(0); - } + engine->stop_playback(0); mwindow->gui->lock_window("PlayTransport::change_position"); mwindow->goto_position(position); mwindow->gui->unlock_window();