audio chan pos rework, batchrender deadlock, titler/crikey grab_event tweak, thread...
[goodguy/history.git] / cinelerra-5.1 / cinelerra / mwindowedit.C
index c0dcd61da4d24daec055e3cca68dcbe43c7c6025..e27d40373dab38bd51e9ec63dbd3c811fa7d1fad 100644 (file)
@@ -1862,7 +1862,8 @@ void MWindow::redo_entry(BC_WindowBase *calling_window_gui)
 {
        calling_window_gui->unlock_window();
        stop_playback(0);
-       close_mixers();
+       if( undo->redo_load_flags() & LOAD_SESSION )
+               close_mixers();
 
        cwindow->gui->lock_window("MWindow::redo_entry 1");
        for( int i = 0; i < vwindows.size(); i++ ) {
@@ -1897,7 +1898,6 @@ void MWindow::redo_entry(BC_WindowBase *calling_window_gui)
        if( calling_window_gui != gui )
                gui->unlock_window();
 
-       open_mixers();
        awindow->gui->async_update_assets();
 
        cwindow->refresh_frame(CHANGE_ALL);
@@ -2176,7 +2176,8 @@ void MWindow::undo_entry(BC_WindowBase *calling_window_gui)
 {
        calling_window_gui->unlock_window();
        stop_playback(0);
-       close_mixers();
+       if( undo->undo_load_flags() & LOAD_SESSION )
+               close_mixers();
 
        cwindow->gui->lock_window("MWindow::undo_entry 1");
        for( int i = 0; i < vwindows.size(); i++ ) {
@@ -2213,7 +2214,6 @@ void MWindow::undo_entry(BC_WindowBase *calling_window_gui)
 
        awindow->gui->async_update_assets();
 
-       open_mixers();
        cwindow->refresh_frame(CHANGE_ALL);
        calling_window_gui->lock_window("MWindow::undo_entry 4");
 }
@@ -2286,22 +2286,15 @@ void MWindow::remap_audio(int pattern)
                        if( pattern == MWindow::AUDIO_5_1_TO_2 ) {
                                switch( current_track ) {
                                case 0:
-                                       pan_auto->values[0] = 0.5;
-                                       pan_auto->values[1] = 0.5;
-                                       break;
-                               case 1:
+                               case 4:
                                        pan_auto->values[0] = 1;
                                        break;
-                               case 2:
+                               case 1:
+                               case 5:
                                        pan_auto->values[1] = 1;
                                        break;
+                               case 2:
                                case 3:
-                                       pan_auto->values[0] = 1;
-                                       break;
-                               case 4:
-                                       pan_auto->values[1] = 1;
-                                       break;
-                               case 5:
                                        pan_auto->values[0] = 0.5;
                                        pan_auto->values[1] = 0.5;
                                        break;