mixer align audio, track dump tweak, zwdw refresh edl fix, sketcher tweak
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / canvas.C
index 6b3f65085c920ea3994a224e8007287b4eb59b7a..85316aaa5aefce2ad5b4b8b27c9fd9adca544ad3 100644 (file)
@@ -88,6 +88,7 @@ void Canvas::reset()
        canvas_subwindow = 0;
        canvas_fullscreen = 0;
        is_processing = 0;
+       is_fullscreen = 0;
        cursor_inside = 0;
 }
 
@@ -135,6 +136,16 @@ void Canvas::use_vwindow()
        canvas_menu->use_vwindow();
 }
 
+int Canvas::get_fullscreen()
+{
+       return is_fullscreen;
+}
+
+void Canvas::set_fullscreen(int value)
+{
+       is_fullscreen = value;
+}
+
 // Get dimensions given a zoom
 void Canvas::calculate_sizes(float aspect_ratio,
        int output_w,
@@ -756,8 +767,7 @@ void Canvas::create_canvas()
                int x, y, w, h;
                wdw->get_fullscreen_geometry(x, y, w, h);
 
-               if( canvas_fullscreen )
-               {
+               if( canvas_fullscreen ) {
                        if( x != canvas_fullscreen->get_x() ||
                            y != canvas_fullscreen->get_y() ||
                            w != canvas_fullscreen->get_w() ||
@@ -766,26 +776,21 @@ void Canvas::create_canvas()
                                canvas_fullscreen = 0;
                        }
                }
-               if(!canvas_fullscreen)
-               {
+               if( !canvas_fullscreen )
                        canvas_fullscreen = new CanvasFullScreen(this, w, h);
-               }
-               else
-               {
-                       canvas_fullscreen->reposition_window(x, y);
-                       canvas_fullscreen->show_window();
-               }
+               canvas_fullscreen->show_window();
+               canvas_fullscreen->sync_display();
+               canvas_fullscreen->reposition_window(x, y);
        }
 
-
-       if(!video_on)
-       {
+       if( !video_on ) {
                get_canvas()->lock_window("Canvas::create_canvas 1");
                draw_refresh();
                get_canvas()->unlock_window();
        }
 
-       if(video_on) get_canvas()->start_video();
+       if( video_on )
+               get_canvas()->start_video();
 
        get_canvas()->lock_window("Canvas::create_canvas 2");
        get_canvas()->focus();