gnome: improve video widget

aspect ratio should now get properly reset when changing video source

Refs #66538

Change-Id: I679089f8908f114011a615d9518aaf1b979d7327
diff --git a/src/video/video_widget.cpp b/src/video/video_widget.cpp
index 6646f22..6a27bb5 100644
--- a/src/video/video_widget.cpp
+++ b/src/video/video_widget.cpp
@@ -469,8 +469,10 @@
         renderer->renderer,
         &Video::Renderer::frameUpdated,
         [=]() {
-            if (!renderer->renderer->isRendering())
-                g_warning("got frame but not rendering!");
+            if (!renderer->renderer->isRendering()) {
+                g_debug("got frame but not rendering");
+                return;
+            }
 
             /* this callback comes from another thread;
              * rendering must be done in the main loop;
@@ -488,12 +490,16 @@
 {
     if (renderer == NULL) return;
 
+    /* reset the content gravity so that the aspect ratio gets properly set if it chagnes */
+    clutter_actor_set_content_gravity(renderer->actor, CLUTTER_CONTENT_GRAVITY_RESIZE_FILL);
+
     /* update the renderer */
     QObject::disconnect(renderer->frame_update);
     QObject::disconnect(renderer->render_stop);
     QObject::disconnect(renderer->render_start);
 
-    renderer_start(renderer);
+    if (renderer->renderer->isRendering())
+        renderer_start(renderer);
 
     renderer->render_stop = QObject::connect(
         renderer->renderer,