diff --git a/data/meson.build b/data/meson.build
index 5643b60..72f5ccf 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -27,32 +27,6 @@ if desktop_file_validate.found()
)
endif
-# Appdata
-appdata_conf = configuration_data()
-appdata_conf.set('app-id', application_id)
-appdata_conf.set('gettext-package', gettext_package)
-appdata_file = i18n.merge_file(
- input: configure_file(
- input: '@0@.metainfo.xml.in.in'.format(base_id),
- output: '@BASENAME@',
- configuration: appdata_conf
- ),
- output: '@0@.metainfo.xml'.format(application_id),
- po_dir: podir,
- install: true,
- install_dir: datadir / 'metainfo'
-)
-# Validate Appdata
-if appstream_util.found()
- test(
- 'validate-appdata', appstream_util,
- args: [
- 'validate', '--nonet', appdata_file.full_path()
- ],
- depends: appdata_file,
- )
-endif
-
# GSchema
gschema_conf = configuration_data()
gschema_conf.set('app-id', application_id)
diff --git a/data/com.ranfdev.Notify.metainfo.xml.in.in b/data/resources/com.ranfdev.Notify.metainfo.xml.in.in
similarity index 96%
rename from data/com.ranfdev.Notify.metainfo.xml.in.in
rename to data/resources/com.ranfdev.Notify.metainfo.xml.in.in
index 1cefc7a..8207121 100644
--- a/data/com.ranfdev.Notify.metainfo.xml.in.in
+++ b/data/resources/com.ranfdev.Notify.metainfo.xml.in.in
@@ -22,6 +22,8 @@
https://github.com/ranfdev/Notify
https://github.com/ranfdev/Notify/issues
+ https://github.com/sponsors/ranfdev
+
diff --git a/data/resources/meson.build b/data/resources/meson.build
index f56f78c..b25e3cf 100644
--- a/data/resources/meson.build
+++ b/data/resources/meson.build
@@ -10,6 +10,32 @@ blueprints = custom_target('blueprints',
command: [find_program('blueprint-compiler'), 'batch-compile', '@OUTPUT@', '@CURRENT_SOURCE_DIR@', '@INPUT@'],
)
+# Appdata
+appdata_conf = configuration_data()
+appdata_conf.set('app-id', application_id)
+appdata_conf.set('gettext-package', gettext_package)
+appdata_file = i18n.merge_file(
+ input: configure_file(
+ input: '@0@.metainfo.xml.in.in'.format(base_id),
+ output: '@BASENAME@',
+ configuration: appdata_conf
+ ),
+ output: 'metainfo.xml',
+ po_dir: podir,
+ install: true,
+ install_dir: datadir / 'metainfo'
+)
+# Validate Appdata
+if appstream_util.found()
+ test(
+ 'validate-appdata', appstream_util,
+ args: [
+ 'validate', '--nonet', appdata_file.full_path()
+ ],
+ depends: appdata_file,
+ )
+endif
+
resources = gnome.compile_resources(
'resources',
'resources.gresource.xml',
@@ -17,5 +43,7 @@ resources = gnome.compile_resources(
source_dir: meson.current_build_dir(),
install: true,
install_dir: pkgdatadir,
- dependencies: blueprints,
+ dependencies: [blueprints, appdata_file],
)
+
+
diff --git a/data/resources/resources.gresource.xml b/data/resources/resources.gresource.xml
index f4e7a8c..520764a 100644
--- a/data/resources/resources.gresource.xml
+++ b/data/resources/resources.gresource.xml
@@ -6,7 +6,7 @@
ui/window.ui
ui/subscription_info_dialog.ui
style.css
-
+ metainfo.xml
../icons/dice3-symbolic.svg
diff --git a/src/application.rs b/src/application.rs
index ad87310..61d6636 100644
--- a/src/application.rs
+++ b/src/application.rs
@@ -8,7 +8,6 @@ use adw::subclass::prelude::*;
use capnp_rpc::{rpc_twoparty_capnp, twoparty, RpcSystem};
use futures::stream::Stream;
use futures::AsyncReadExt;
-use gettextrs::gettext;
use gio::SocketClient;
use gio::UnixSocketAddress;
use gtk::prelude::*;
@@ -207,17 +206,10 @@ impl NotifyApplication {
}
fn show_about_dialog(&self) {
- let dialog = adw::AboutWindow::builder()
- .application_icon(APP_ID)
- .application_name("Notify")
- .license_type(gtk::License::Gpl30)
- .version(VERSION)
- .transient_for(&self.main_window())
- .translator_credits(gettext("translator-credits"))
- .modal(true)
- .developers(vec!["ranfdev"])
- .artists(vec!["ranfdev"])
- .build();
+ let dialog = adw::AboutWindow::from_appdata("/com/ranfdev/Notify/metainfo.xml", None);
+ if let Some(w) = self.imp().window.borrow().upgrade() {
+ dialog.set_transient_for(Some(&w));
+ }
dialog.present();
}