summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorMalte Voos <git@mal.tc>2025-11-22 22:50:57 +0100
committerMalte Voos <git@mal.tc>2025-11-22 22:50:57 +0100
commit652b1c2a0ce7db4885ebc51f7f09133a43401442 (patch)
treef8ee000f99b24261cb7a5cf896a57e5399b06ab7 /src
parentbdff08776bebe55ac124172d506d6cf08f75bd88 (diff)
downloadlleap-652b1c2a0ce7db4885ebc51f7f09133a43401442.tar.gz
lleap-652b1c2a0ce7db4885ebc51f7f09133a43401442.zip
fix icons and revert to current gtk HEAD main
Diffstat (limited to 'src')
-rw-r--r--src/app.rs3
-rw-r--r--src/main.rs7
-rw-r--r--src/player.rs6
3 files changed, 13 insertions, 3 deletions
diff --git a/src/app.rs b/src/app.rs
index d6b731c..951392e 100644
--- a/src/app.rs
+++ b/src/app.rs
@@ -2,6 +2,7 @@ use adw::prelude::*;
 use relm4::{WorkerController, prelude::*};
 
 use crate::{
+    icon_names,
     open_dialog::{OpenDialog, OpenDialogMsg, OpenDialogOutput},
     player::{Player, PlayerMsg, PlayerOutput},
     preferences::{Preferences, PreferencesMsg},
@@ -74,7 +75,7 @@ impl SimpleComponent for App {
                         connect_clicked => AppMsg::ShowUrlOpenDialog,
                     },
                     pack_end = &gtk::Button {
-                        set_icon_name: "settings-symbolic",
+                        set_icon_name: icon_names::SETTINGS,
                         connect_clicked => AppMsg::ShowPreferences,
                     }
                 },
diff --git a/src/main.rs b/src/main.rs
index 01ca56d..f010c6a 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -16,6 +16,11 @@ use relm4::RelmApp;
 
 use crate::app::App;
 
+mod icon_names {
+    pub use shipped::*;
+    include!(concat!(env!("OUT_DIR"), "/icon_names.rs"));
+}
+
 fn main() {
     env_logger::init();
 
@@ -41,6 +46,8 @@ fn main() {
         STYLE_PROVIDER_PRIORITY_APPLICATION,
     );
 
+    relm4_icons::initialize_icons(icon_names::GRESOURCE_BYTES, icon_names::RESOURCE_PREFIX);
+
     relm4::RELM_THREADS.set(4).unwrap();
 
     let relm = RelmApp::new("tc.mal.lleap").with_args(vec![]);
diff --git a/src/player.rs b/src/player.rs
index 2e234b6..df45571 100644
--- a/src/player.rs
+++ b/src/player.rs
@@ -6,6 +6,8 @@ use gtk::glib::{self, clone};
 use gtk::prelude::*;
 use relm4::{ComponentParts, ComponentSender, RelmWidgetExt, SimpleComponent};
 
+use crate::icon_names;
+
 #[allow(dead_code)]
 pub struct Player {
     // GStreamer-related
@@ -77,7 +79,7 @@ impl SimpleComponent for Player {
                 // Play/Pause button
                 gtk::Button {
                     #[watch]
-                    set_icon_name: if model.is_playing { "media-playback-pause-symbolic" } else { "media-playback-start-symbolic" },
+                    set_icon_name: if model.is_playing { icon_names::PAUSE_LARGE } else { icon_names::PLAY_LARGE },
                     connect_clicked => PlayerMsg::PlayPause,
                 },
 
@@ -118,7 +120,7 @@ impl SimpleComponent for Player {
 
                 // Subtitle selection button
                 gtk::Button {
-                    set_icon_name: "media-view-subtitles-symbolic",
+                    set_icon_name: icon_names::SUBTITLES,
                     connect_clicked[sender] => move |_| {
                         sender.output(PlayerOutput::SubtitleSelectionButtonPressed).unwrap();
                     },