- Add patch: brisk-menu-gsettings-icon-properties.patch and brisk-menu-runtime-

icon-updates.patch. Add support for runtime icon configuration.
- Add patch: brisk-menu-fix-crash-on-desktop-file-changes-
  5f0be5741b5b37221fc8911c11f394ec498cd53d.patch. Backport upstream patch to
  fix crashes in odd cases when .desktop files are changed.
- Use %autosetup macro to apply patches.

OBS-URL: https://build.opensuse.org/package/show/X11:MATE:Factory/brisk-menu?expand=0&rev=21
This commit is contained in:
Hillwood Yang 2024-12-27 13:27:57 +00:00 committed by Git OBS Bridge
commit 2825818ed4
10 changed files with 611 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

View File

@ -0,0 +1,161 @@
From 5f0be5741b5b37221fc8911c11f394ec498cd53d Mon Sep 17 00:00:00 2001
From: fadeev <anton.fadeev@red-soft.ru>
Date: Thu, 18 Feb 2021 15:13:45 +0300
Subject: [PATCH] Fix brisk-menu crash in some random cases and when
update/add/remove .desktop files
---
src/backend/apps/apps-backend.c | 4 ++++
src/backend/favourites/favourites-backend.c | 7 +++++++
src/backend/favourites/favourites-desktop.c | 4 ++++
src/frontend/menu-settings.c | 4 +++-
src/frontend/menu-window.c | 3 +++
5 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/src/backend/apps/apps-backend.c b/src/backend/apps/apps-backend.c
index a85e307..26578d6 100644
--- a/src/backend/apps/apps-backend.c
+++ b/src/backend/apps/apps-backend.c
@@ -80,6 +80,8 @@ DEF_AUTOFREE(MateMenuTree, g_object_unref)
DEF_AUTOFREE(GDesktopAppInfo, g_object_unref)
DEF_AUTOFREE(GError, g_error_free)
+BriskAppsBackend * BriskAppsBackendInstance = NULL;
+
/**
* Due to a glib weirdness we must fully invalidate the monitor's cache
* to force reload events to work again.
@@ -213,6 +215,7 @@ static void brisk_apps_backend_init(BriskAppsBackend *self)
"changed",
G_CALLBACK(brisk_apps_backend_changed),
self);
+ BriskAppsBackendInstance = self;
}
/**
@@ -258,6 +261,7 @@ static gint brisk_apps_backend_sort_section(gconstpointer a, gconstpointer b)
*/
static gboolean brisk_apps_backend_init_menus(BriskAppsBackend *self)
{
+ self = BriskAppsBackendInstance;
brisk_apps_backend_reset_pending(self);
/* Now load them again */
diff --git a/src/backend/favourites/favourites-backend.c b/src/backend/favourites/favourites-backend.c
index 52cecde..eb36e94 100644
--- a/src/backend/favourites/favourites-backend.c
+++ b/src/backend/favourites/favourites-backend.c
@@ -37,6 +37,8 @@ static void brisk_favourites_backend_pin_item(GSimpleAction *action, GVariant *p
static void brisk_favourites_backend_unpin_item(GSimpleAction *action, GVariant *parameter,
BriskFavouritesBackend *self);
+BriskFavouritesBackend * BriskFavouritesBackendInstance = NULL;
+
/**
* Tell the frontends what we are
*/
@@ -130,6 +132,7 @@ static void brisk_favourites_backend_class_init(BriskFavouritesBackendClass *kla
static void brisk_favourites_backend_changed(GSettings *settings, const gchar *key,
BriskFavouritesBackend *self)
{
+ self = BriskFavouritesBackendInstance;
autofree(gstrv) *favs = g_settings_get_strv(settings, key);
g_hash_table_remove_all(self->favourites);
@@ -168,6 +171,8 @@ static void brisk_favourites_backend_init(BriskFavouritesBackend *self)
brisk_favourites_backend_init_desktop(self);
+ BriskFavouritesBackendInstance = self;
+
/* Allow O(1) lookup for the "is pinned" logic */
self->favourites = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);
@@ -206,6 +211,7 @@ static void brisk_favourites_backend_pin_item(__brisk_unused__ GSimpleAction *ac
__brisk_unused__ GVariant *parameter,
BriskFavouritesBackend *self)
{
+ self = BriskFavouritesBackendInstance;
autofree(gstrv) *old = NULL;
autofree(GArray) *array = NULL;
@@ -239,6 +245,7 @@ static void brisk_favourites_backend_unpin_item(__brisk_unused__ GSimpleAction *
__brisk_unused__ GVariant *parameter,
BriskFavouritesBackend *self)
{
+ self = BriskFavouritesBackendInstance;
autofree(gstrv) *old = NULL;
autofree(GArray) *array = NULL;
diff --git a/src/backend/favourites/favourites-desktop.c b/src/backend/favourites/favourites-desktop.c
index b982d28..a123eea 100644
--- a/src/backend/favourites/favourites-desktop.c
+++ b/src/backend/favourites/favourites-desktop.c
@@ -32,6 +32,8 @@ typedef enum {
PIN_STATUS_UNPINNED = 2,
} DesktopPinStatus;
+extern BriskFavouritesBackend * BriskFavouritesBackendInstance;
+
/**
* get_desktop_item_source:
*
@@ -89,6 +91,7 @@ static void brisk_favourites_backend_action_desktop_pin(__brisk_unused__ GSimple
__brisk_unused__ GVariant *parameter,
BriskFavouritesBackend *self)
{
+ self = BriskFavouritesBackendInstance;
autofree(GFile) *source = NULL;
autofree(GFile) *dest = NULL;
autofree(GError) *error = NULL;
@@ -135,6 +138,7 @@ static void brisk_favourites_backend_action_desktop_unpin(__brisk_unused__ GSimp
__brisk_unused__ GVariant *parameter,
BriskFavouritesBackend *self)
{
+ self = BriskFavouritesBackendInstance;
autofree(GFile) *source = NULL;
autofree(GFile) *dest = NULL;
autofree(GError) *error = NULL;
diff --git a/src/frontend/menu-settings.c b/src/frontend/menu-settings.c
index 626ecef..172fcf1 100644
--- a/src/frontend/menu-settings.c
+++ b/src/frontend/menu-settings.c
@@ -19,6 +19,8 @@ BRISK_END_PEDANTIC
static void brisk_menu_window_settings_changed(GSettings *settings, const gchar *key, gpointer v);
+extern BriskMenuWindow * BriskMenuWindowInstance;
+
void brisk_menu_window_init_settings(BriskMenuWindow *self)
{
GtkSettings *gtk_settings = NULL;
@@ -50,7 +52,7 @@ void brisk_menu_window_pump_settings(BriskMenuWindow *self)
static void brisk_menu_window_settings_changed(GSettings *settings, const gchar *key, gpointer v)
{
- BriskMenuWindow *self = v;
+ BriskMenuWindow *self = BriskMenuWindowInstance;
autofree(gchar) *value = NULL;
if (g_str_equal(key, "search-position")) {
diff --git a/src/frontend/menu-window.c b/src/frontend/menu-window.c
index 9dc505f..466f247 100644
--- a/src/frontend/menu-window.c
+++ b/src/frontend/menu-window.c
@@ -29,6 +29,8 @@ static GParamSpec *obj_properties[N_PROPS] = {
NULL,
};
+BriskMenuWindow * BriskMenuWindowInstance = NULL;
+
/**
* brisk_menu_window_dispose:
*
@@ -98,6 +100,7 @@ static void brisk_menu_window_init(BriskMenuWindow *self)
self->launcher = brisk_menu_launcher_new();
brisk_menu_window_init_settings(self);
+ BriskMenuWindowInstance = self;
}
static void brisk_menu_window_set_property(GObject *object, guint id, const GValue *value,

View File

@ -0,0 +1,32 @@
commit 0e175ab7243e8cffc5cd7acda7c9494dae6592f3
Author: Mihai Moldovan <ionic@ionic.de>
Date: Tue Jun 28 02:13:58 2022 +0200
gsettings schema: add properties icon-name and icon-symbolic.
We will use them later.
The icon-name property shall select the icon used in the menu button,
while the icon-symbolic property determines whether the icon will be
used in its symbolic or default variant.
diff --git a/data/com.solus-project.brisk-menu.gschema.xml b/data/com.solus-project.brisk-menu.gschema.xml
index d9806a6..40a1aea 100644
--- a/data/com.solus-project.brisk-menu.gschema.xml
+++ b/data/com.solus-project.brisk-menu.gschema.xml
@@ -56,5 +56,15 @@
<summary>Button label visibility</summary>
<description>Control the visibility of the main button label</description>
</key>
+ <key type="s" name="icon-name">
+ <default>'start-here'</default>
+ <summary>Icon to show in menu button</summary>
+ <description>Set the theme icon name to use in menu button.</description>
+ </key>
+ <key type="b" name="icon-symbolic">
+ <default>true</default>
+ <summary>Menu button uses symbolic icon</summary>
+ <description>Use a symbolic, i.e., low-color, icon variant in menu button.</description>
+ </key>
</schema>
</schemalist>

View File

@ -0,0 +1,115 @@
commit bb72aa006278c4efb960577360b95a66015a265f
Author: Mihai Moldovan <ionic@ionic.de>
Date: Tue Jun 28 02:18:12 2022 +0200
mate-applet: make menu button icon configurable.
The actual icon can now be changed via the icon-name gsettings key.
By default, the applet will load a symbolic version of the icon. This
behavior can be changed via the icon-symbolic key.
Changes to any of these keys should directly be visible.
diff --git a/src/mate-applet/applet.c b/src/mate-applet/applet.c
index 8465dbb..e4dcfa9 100644
--- a/src/mate-applet/applet.c
+++ b/src/mate-applet/applet.c
@@ -45,6 +45,7 @@ static void brisk_menu_applet_create_window(BriskMenuApplet *self);
/* Handle applet settings */
void brisk_menu_applet_init_settings(BriskMenuApplet *self);
+static void brisk_menu_applet_update_icon(BriskMenuApplet *self);
static void brisk_menu_applet_settings_changed(GSettings *settings, const gchar *key, gpointer v);
static void brisk_menu_applet_notify_fail(const gchar *title, const gchar *body);
@@ -107,6 +108,16 @@ void brisk_menu_applet_init_settings(BriskMenuApplet *self)
"changed::window-type",
G_CALLBACK(brisk_menu_applet_settings_changed),
self);
+
+ g_signal_connect(self->settings,
+ "changed::icon-name",
+ G_CALLBACK(brisk_menu_applet_settings_changed),
+ self);
+
+ g_signal_connect(self->settings,
+ "changed::icon-symbolic",
+ G_CALLBACK(brisk_menu_applet_settings_changed),
+ self);
}
/**
@@ -159,6 +170,9 @@ static void brisk_menu_applet_init(BriskMenuApplet *self)
/* Pump the label setting */
brisk_menu_applet_settings_changed(self->settings, "label-text", self);
+ /* Update the icon with the requested value. */
+ brisk_menu_applet_settings_changed(self->settings, "icon-name", self);
+
/* Fix label alignment */
gtk_widget_set_halign(label, GTK_ALIGN_START);
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
@@ -239,6 +253,23 @@ static gboolean button_press_cb(BriskMenuApplet *self, GdkEvent *event, __brisk_
return GDK_EVENT_STOP;
}
+static void brisk_menu_applet_update_icon(BriskMenuApplet *self) {
+ autofree(gchar) *icon_name = NULL,
+ *icon_name_tmp = NULL;
+
+ icon_name = g_settings_get_string(self->settings, "icon-name");
+ if (g_str_equal(icon_name, "")) {
+ g_free(icon_name);
+ icon_name = g_strdup("start-here");
+ }
+ if (g_settings_get_boolean(self->settings, "icon-symbolic")) {
+ icon_name_tmp = g_strdup(icon_name);
+ g_free(icon_name);
+ icon_name = g_strconcat(icon_name_tmp, "-symbolic", NULL);
+ }
+ gtk_image_set_from_icon_name(GTK_IMAGE(self->image), icon_name, GTK_ICON_SIZE_MENU);
+}
+
/**
* Callback for changing applet settings
*/
@@ -259,6 +290,10 @@ static void brisk_menu_applet_settings_changed(GSettings *settings, const gchar
gtk_widget_hide(self->menu);
g_clear_pointer(&self->menu, gtk_widget_destroy);
brisk_menu_applet_create_window(self);
+ } else if (g_str_equal(key, "icon-name")) {
+ brisk_menu_applet_update_icon(self);
+ } else if (g_str_equal(key, "icon-symbolic")) {
+ brisk_menu_applet_update_icon(self);
}
}
@@ -368,9 +403,17 @@ static void brisk_menu_applet_notify_fail(const gchar *title, const gchar *body)
}
void brisk_menu_applet_show_about(__brisk_unused__ GtkAction *action,
- __brisk_unused__ BriskMenuApplet *applet)
+ BriskMenuApplet *applet)
{
static const gchar *copyright_string = "Copyright © 2016-2020 Brisk Menu Developers";
+ autofree(gchar) *icon_name = NULL;
+
+ icon_name = g_settings_get_string(applet->settings, "icon-name");
+ if (g_str_equal(icon_name, "")) {
+ g_free(icon_name);
+ icon_name = g_strdup("start-here");
+ }
+
gtk_show_about_dialog(NULL,
"authors",
brisk_developers,
@@ -379,7 +422,7 @@ void brisk_menu_applet_show_about(__brisk_unused__ GtkAction *action,
"license-type",
GTK_LICENSE_GPL_2_0,
"logo-icon-name",
- "start-here",
+ icon_name,
"version",
PACKAGE_VERSION,
"website",

3
brisk-menu-v0.6.2.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5a87f4dcf7365e81a571128bf0b8199eb06a6fcd7e15ec7739be0ccff1326488
size 76692

View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEElrSgKRCUqGorfjNn3Wcv6aK+WJIFAl82ycAACgkQ3Wcv6aK+
WJLugRAAiIkek5Ra4ASlMh5VAJCVCTz/SPU0K2Ti3XgZZPjYOdqvn6gzU7LE9kTc
id0pWBSnJP1o/OamkDhQrvbl7r6HhJU+Muo68wW+3nGOMjcRbUs4E7vZoZXUd0H3
YX0szjB+wXXinnPwSZSJuThxMpNdUSbsch8peplUWXauZDiG33rizhxBOqeLwmv1
DDIOCtKV/AU9OYStu3BVtz7WUiVqdH+dnqXFMDiarhyAYD+w8PbhcgcwPBUVwxfy
sdh3eRi4xLbwwD0eEyWFBT+b7BUwHJeodvImqiHf2miseWolDJrYEd1RRx/CeJ+B
jO9VdPxpz1xTIdWD0o9TgGFGmEnBVfK3abXXTyHEiW3wJnHxzABapoI/nmXDgY/w
k2WYvNfN865yLB8MwqVtxA/AmUkinnolYjRRNAEQUYtPWczFHmFrPlgYbWiuEMcv
db4ghVyH4jFx1kU4JkCWjPIGwd1EJJFzhUu9UnTRuDgqdhgk1XFFPxcWHq3B8Zwk
SuBDMC8rWeTMf5jJNWjJYu0bVaFNvp0TyxqLLNYzm35QbvoRP99ixiUb9GSVKvRo
qbtw+PbynRp2aUksQ2U63aYtrOe677uhAHPERhI7hQFd2eKZ/f3/UdBaU+cnrUov
fPsZl+hFjWkJVD2WA2Im01I84y493bQjd2VSLT+EH7Yuagu77KI=
=n+q3
-----END PGP SIGNATURE-----

129
brisk-menu.changes Normal file
View File

@ -0,0 +1,129 @@
-------------------------------------------------------------------
Mon Dec 27 07:31:00 UTC 2024 - Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
- Add patch: brisk-menu-gsettings-icon-properties.patch and brisk-menu-runtime-
icon-updates.patch. Add support for runtime icon configuration.
- Add patch: brisk-menu-fix-crash-on-desktop-file-changes-
5f0be5741b5b37221fc8911c11f394ec498cd53d.patch. Backport upstream patch to
fix crashes in odd cases when .desktop files are changed.
- Use %autosetup macro to apply patches.
-------------------------------------------------------------------
Mon Aug 31 13:43:30 UTC 2020 - Hillwood Yang <hillwood@opensuse.org>
- update version to 0.6.2
* frontend: Allow keyboard navigation
* applet: Re-create applet menu when changing window-type
* backend: Hide menu when rebuilding menu items
* Update translations.
-------------------------------------------------------------------
Sat Feb 22 15:48:43 UTC 2020 - Alexei Sorokin <sor.alexei@meowr.ru>
- Update to version 0.6.1 (changes since 0.5.0):
* Add a new "dash" style menu.
* Fix super key global bindings on Compiz.
* Unset Lock key masks when closing menu.
* Fix key-binder from swallowing Super+Mouse events.
* Update API for MATE Desktop 1.22.
* Make favourites appear first.
* Fix categories list so scrollbar is not always shown.
* Update translations.
- Remove brisk-menu-mate-menus-1.22.patch: fixed upstream.
- Drop support for old openSUSE versions.
-------------------------------------------------------------------
Fri Dec 14 12:54:01 UTC 2018 - sor.alexei@meowr.ru
- Add brisk-menu-mate-menus-1.22.patch:
https://github.com/solus-project/brisk-menu/pull/103
-------------------------------------------------------------------
Fri Nov 3 06:00:03 UTC 2017 - sor.alexei@meowr.ru
- Update to version 0.5.0:
* New Favourites back end (backed by gsettings).
* Optimised backends to ensure O(1) lookup times.
* Extended backend actions API for context sensitive backend
actions (pin/unpin).
* Add ~/Desktop pin/unpin.
* Move to meson to help with modularity.
* Confined MATE Applet APIs to the applet component
(not frontend/backend/etc).
* Moved BriskKeyBinder and window positioning logic into a
front end.
* Mask confusing inverted MatePanelAppletOrient in favour of
GtkPositionType.
* Update translations.
-------------------------------------------------------------------
Wed Jul 5 10:30:59 UTC 2017 - thanosapostolou@outlook.com
- Update to version 0.4.5 (changes since 0.3.5):
* The Super key now works.
* The Label text is now configurable.
* The menu now dynamically adapts to vertical panel layouts.
* The core load + management mechanism is now handled by a
BriskAppsBackend, and the front end is no longer tied
explicitly to libmate-menus or even .desktop files. This opens
up the future possibilities for Favourites Pinning and "others"
(...) through the generic BriskBackend, BriskItem, and
BriskSection API.
* Reloading has been changed and fixed, always works (part of
the new BriskAppsBackend, signal based).
* Control Centre applications are now listed in Preferences and
Administration categories.
* Add full vertical panel support.
* Switch everything to backends (All button is now a backend too).
* Dynamically size menu to the best size available on the screen.
* Fix Super key binding being swallowed by others (and swallowing
theirs) - requires fixes in Albert, MATE Settings Daemon, etc.
* Update translations.
-------------------------------------------------------------------
Wed Mar 29 17:26:14 UTC 2017 - sor.alexei@meowr.ru
- Update to version 0.3.5:
* Fix bitwise operators on search bar placement (inverse logic).
* Standardise the CSS usage, fix broken assets.
* Add rollover behaviour (a gsettings option).
* Add a context menu for editing menus.
* Style fixes (new CSS classes).
* Update translations.
-------------------------------------------------------------------
Wed Jan 25 11:25:42 UTC 2017 - sor.alexei@meowr.ru
- Update to version 0.3.0:
* Fix a bug with a terminal + applications opening in the root
directory.
* Fix duplicate results in the search bar.
* Fix missing icons in listing.
* Fix searching to be case insensitive.
* Provide compiler hints to hot paths within Brisk.
* Add basic keyword filtering (i.e. video for VLC).
* Enable internationalisation.
* Fully reset the menu state & focus between appearances.
* Add GSettings support for search bar placement (top, bottom,
automatic).
-------------------------------------------------------------------
Sun Jan 1 14:21:12 UTC 2017 - sor.alexei@meowr.ru
- Update to version 0.2.0:
* Initial GSettings support.
* Load sidebar shortcuts according to the vendor schema
(pinned-shortcuts).
* Add a key to control dark-theme.
-------------------------------------------------------------------
Sat Dec 31 11:49:59 UTC 2016 - sor.alexei@meowr.ru
- Update to version 0.1.2:
* Use a less janky button style for the session controls.
* Include autogen.sh.
-------------------------------------------------------------------
Sat Dec 31 10:39:18 UTC 2016 - sor.alexei@meowr.ru
- Initial package.

56
brisk-menu.keyring Normal file
View File

@ -0,0 +1,56 @@
pub rsa4096 2018-05-04 [SC] [expires: 2019-05-04]
96B4 A029 1094 A86A 2B7E 3367 DD67 2FE9 A2BE 5892
uid [ unknown] Joshua Strobl (Personal) <joshua@stroblindustries.com>
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=fOTg
-----END PGP PUBLIC KEY BLOCK-----

75
brisk-menu.spec Normal file
View File

@ -0,0 +1,75 @@
#
# spec file for package brisk-menu
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: brisk-menu
Version: 0.6.2
Release: 0
Summary: Modern, efficient menu for MATE
License: CC-BY-SA-4.0 AND GPL-2.0-or-later
URL: https://github.com/getsolus/brisk-menu
Source: https://github.com/getsolus/brisk-menu/releases/download/v%{version}/%{name}-v%{version}.tar.xz
Source1: https://github.com/getsolus/brisk-menu/releases/download/v%{version}/%{name}-v%{version}.tar.xz.asc
Source2: %{name}.keyring
# PATCH-FIX-UPSTREAM brisk-menu-gsettings-icon-properties.patch ionic@ionic.de -- Add icon properties to the gsettings schema for runtime configuration.
Patch0: %{name}-gsettings-icon-properties.patch
# PATCH-FIX-UPSTREAM brisk-menu-runtime-icon-updates.patch ionic@ionic.de -- Add support for runtime icon configuration.
Patch1: %{name}-runtime-icon-updates.patch
# PATCH-FIX-UPSTREAM brisk-menu-fix-crash-on-desktop-file-changes-5f0be5741b5b37221fc8911c11f394ec498cd53d.patch anton.fadeev@red-soft.ru -- Fix crash in some random cases when .desktop files are changed.
Patch2: %{name}-fix-crash-on-desktop-file-changes-5f0be5741b5b37221fc8911c11f394ec498cd53d.patch
BuildRequires: hicolor-icon-theme
BuildRequires: meson
BuildRequires: pkgconfig
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libmate-menu) >= 1.22
BuildRequires: pkgconfig(libmatepanelapplet-4.0) >= 1.22
BuildRequires: pkgconfig(libnotify)
BuildRequires: pkgconfig(x11)
Recommends: %{name}-lang
%glib2_gsettings_schema_requires
%description
Modern, efficient menu for the MATE Desktop Environment.
%prep
%autosetup -p1 -n %{name}-%{version}
%lang_package
%build
%meson
%meson_build
%install
%meson_install
%find_lang %{name}
%files
%license LICENSE*
%{_libexecdir}/brisk-menu
%dir %{_datadir}/mate-panel/
%dir %{_datadir}/mate-panel/applets/
%{_datadir}/mate-panel/applets/*brisk*.mate-panel-applet
%{_datadir}/icons/hicolor/scalable/actions/brisk*.*
%{_datadir}/glib-2.0/schemas/*%{name}.gschema.xml
%{_datadir}/dbus-1/services/org.mate.panel.applet.BriskMenuFactory.service
%files lang -f %{name}.lang
%changelog