Daniel Brötzmann pushed to branch master at gajim / gajim


Commits:
73fa6790 by wurstsalat at 2024-12-21T18:29:23+01:00
refactor: Preview: Remove GTK4 TODOs

- - - - -
bc0398f6 by wurstsalat at 2024-12-21T18:39:37+01:00
cfix: AudioWidget: Guard for missing GStreamer

- - - - -
3e413a30 by wurstsalat at 2024-12-21T18:42:55+01:00
cfix: AudioAnalyzer: Guard for missing GStreamer

- - - - -


3 changed files:

- gajim/gtk/preview.py
- gajim/gtk/preview_audio.py
- gajim/gtk/preview_audio_analyzer.py


Changes:

=====================================
gajim/gtk/preview.py
=====================================
@@ -150,10 +150,6 @@ def update(self, preview: Preview, data: bytes | None) -> 
None:
             self._ui.file_size.set_text(text)
             self._ui.image_button.set_tooltip_text(_("Location at %s") % text)
             self._ui.preview_box.set_size_request(160, -1)
-
-            # TODO GTK4:
-            # This is a workaround to make the scrolledwindow aware of new 
content
-            self._ui.preview_box.queue_resize()
             return
 
         self._ui.image_button.set_tooltip_text(preview.filename)
@@ -283,10 +279,6 @@ def update(self, preview: Preview, data: bytes | None) -> 
None:
         self._ui.file_name.set_text(preview.filename)
         self._ui.file_name.set_tooltip_text(preview.filename)
 
-        # TODO GTK4:
-        # This is a workaround to make the scrolledwindow aware of new content
-        GLib.idle_add(self.queue_resize)
-
     def _on_download(self, _button: Gtk.Button) -> None:
         if self._preview is None:
             return


=====================================
gajim/gtk/preview_audio.py
=====================================
@@ -41,6 +41,11 @@ def __init__(self, file_path: Path) -> None:
         Gtk.Box.__init__(self, orientation=Gtk.Orientation.HORIZONTAL, 
spacing=6)
         SignalManager.__init__(self)
 
+        if not app.is_installed("GST"):
+            log.info("Could not create AudioWidget because GStreamer is not 
installed.")
+            self._show_init_error()
+            return
+
         self._playbin = Gst.ElementFactory.make("playbin", "bin")
         self._bus_watch_id: int = 0
         self._timeout_id: int = -1
@@ -48,8 +53,7 @@ def __init__(self, file_path: Path) -> None:
 
         if self._playbin is None:
             log.error("Could not create GST playbin.")
-            label = Gtk.Label(label=_("Audio preview is not available"))
-            self.append(label)
+            self._show_init_error()
             return
 
         self._file_path = file_path
@@ -217,6 +221,9 @@ def set_pause(self, paused: bool) -> None:
             self._add_seek_bar_update_idle()
             
self._ui.play_icon.set_from_icon_name("media-playback-pause-symbolic")
 
+    def _show_init_error(self) -> None:
+        self.append(Gtk.Label(label=_("Audio preview is not available")))
+
     def _enable_controls(self, status: bool) -> None:
         self._ui.seek_bar.set_sensitive(status)
         self._ui.progress_label.set_sensitive(status)


=====================================
gajim/gtk/preview_audio_analyzer.py
=====================================
@@ -32,6 +32,12 @@ def __init__(
         samples_callback: Callable[[AudioSampleT], None],
     ) -> None:
 
+        if not app.is_installed("GST"):
+            log.info(
+                "Could not create AudioAnalyzer because GStreamer is not 
installed."
+            )
+            return
+
         self._playbin = Gst.ElementFactory.make("playbin")
 
         if self._playbin is None:



View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/compare/08c62dffbcd667796f614fbad703542d79b2d9a2...3e413a30874df8e8812f19d6369c5f4d3fad79cf

-- 
View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/compare/08c62dffbcd667796f614fbad703542d79b2d9a2...3e413a30874df8e8812f19d6369c5f4d3fad79cf
You're receiving this email because of your account on dev.gajim.org.


_______________________________________________
Commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to