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(); }