summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormbkma <[email protected]>2026-02-01 01:36:24 +0100
committermbkma <[email protected]>2026-02-01 01:36:24 +0100
commit0fe5282da2994e80097b76020ea02e8468969692 (patch)
treebfff54e9e2d61eb0e082708e1ea2ee0c61312de8 /src
parentc0ed5adf763bfae513f8a89b9373065b3718f8e3 (diff)
downloadmate-calc-gtk-application.tar.bz2
mate-calc-gtk-application.tar.xz
some cleanupgtk-application
Diffstat (limited to 'src')
-rw-r--r--src/math-window.c26
1 files changed, 8 insertions, 18 deletions
diff --git a/src/math-window.c b/src/math-window.c
index 15e42c9..cd10da0 100644
--- a/src/math-window.c
+++ b/src/math-window.c
@@ -10,9 +10,7 @@
* license.
*/
-#ifdef HAVE_CONFIG_H
#include <config.h>
-#endif
#include <glib/gi18n.h>
#include <gtk/gtk.h>
@@ -20,7 +18,6 @@
#include "math-window.h"
#include "math-history.h"
-#include "mate-calc-actions.h"
#include "mate-calc-settings.h"
/* GTK3 compatibility */
@@ -166,25 +163,28 @@ void
math_window_critical_error(MathWindow *window, const gchar *title, const gchar *contents)
{
GtkWidget *dialog;
+ GtkApplication *app;
g_return_if_fail(window != NULL);
g_return_if_fail(title != NULL);
g_return_if_fail(contents != NULL);
- dialog = gtk_message_dialog_new(NULL, 0,
+ dialog = gtk_message_dialog_new(GTK_WINDOW(window),
+ GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_NONE,
"%s", title);
gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(dialog),
"%s", contents);
- gtk_dialog_add_buttons(GTK_DIALOG(dialog), "gtk-quit", GTK_RESPONSE_ACCEPT, NULL);
+ gtk_dialog_add_buttons(GTK_DIALOG(dialog), _("_Quit"), GTK_RESPONSE_ACCEPT, NULL);
gtk_dialog_run(GTK_DIALOG(dialog));
+ gtk_widget_destroy(dialog);
- /* Request application quit */
- GtkApplication *app = gtk_window_get_application(GTK_WINDOW(window));
+ /* Critical error - quit the entire application */
+ app = gtk_window_get_application(GTK_WINDOW(window));
if (app)
- g_action_group_activate_action(G_ACTION_GROUP(app), "quit", NULL);
+ g_application_quit(G_APPLICATION(app));
}
static void
@@ -289,15 +289,6 @@ key_press_cb(MathWindow *window, GdkEventKey *event)
return result;
}
-static gboolean
-delete_cb(MathWindow *window, GdkEvent *event)
-{
- GtkApplication *app = gtk_window_get_application(GTK_WINDOW(window));
- if (app)
- g_action_group_activate_action(G_ACTION_GROUP(app), "quit", NULL);
- return TRUE;
-}
-
static void
copy_cb(GtkWidget *widget, MathWindow *window)
{
@@ -684,5 +675,4 @@ math_window_init(MathWindow *window)
gtk_window_set_role(GTK_WINDOW(window), "mate-calc");
gtk_window_set_resizable(GTK_WINDOW(window), FALSE);
g_signal_connect_after(G_OBJECT(window), "key-press-event", G_CALLBACK(key_press_cb), NULL);
- g_signal_connect(G_OBJECT(window), "delete-event", G_CALLBACK(delete_cb), NULL);
}