[gedit] Remove lockdown support
- From: Sébastien Wilmet <swilmet src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gedit] Remove lockdown support
- Date: Tue, 17 Mar 2020 12:30:47 +0000 (UTC)
commit b6728797d6b308b46cf4e0dae4493dc62d3decda
Author: Sébastien Wilmet <swilmet gnome org>
Date: Tue Mar 17 11:49:00 2020 +0100
Remove lockdown support
The lockdown support followed the org.gnome.desktop.lockdown GSettings.
But my understanding is that very few GNOME apps implement it, gedit was
a bit the exception.
Removing the lockdown support permits to simplify the gedit code. It
reduces the number of scenarios to test the app. With simpler code,
there will be fewer bugs.
For a GNOME desktop in kiosk mode, I'm not an expert but I think there
are better ways of doing it than using the org.gnome.desktop.lockdown
GSettings. Something for the whole session and all apps at once, without
requiring a detailed implementation in each app.
BTW the implementation was broken in _gedit_window_set_lockdown() with
the GPOINTER_TO_BOOLEAN() in the callback.
docs/reference/gedit-sections.txt | 3 -
gedit/Gedit-3.0.metadata | 3 -
gedit/gedit-app-private.h | 13 ----
gedit/gedit-app.c | 122 --------------------------------
gedit/gedit-app.h | 14 ----
gedit/gedit-close-confirmation-dialog.c | 117 ++++++++----------------------
gedit/gedit-commands-file.c | 1 +
gedit/gedit-settings.c | 82 ---------------------
gedit/gedit-settings.h | 6 +-
gedit/gedit-tab.c | 19 +----
gedit/gedit-window.c | 37 +---------
11 files changed, 35 insertions(+), 382 deletions(-)
---
diff --git a/docs/reference/gedit-sections.txt b/docs/reference/gedit-sections.txt
index 5b3483885..e1b3e412d 100644
--- a/docs/reference/gedit-sections.txt
+++ b/docs/reference/gedit-sections.txt
@@ -2,14 +2,11 @@
<FILE>gedit-app</FILE>
<TITLE>GeditApp</TITLE>
GeditApp
-GeditLockdownMask
-GEDIT_LOCKDOWN_ALL
gedit_app_create_window
gedit_app_set_window_title
gedit_app_get_main_windows
gedit_app_get_documents
gedit_app_get_views
-gedit_app_get_lockdown
gedit_app_process_window_event
gedit_app_show_help
<SUBSECTION Standard>
diff --git a/gedit/Gedit-3.0.metadata b/gedit/Gedit-3.0.metadata
index 08b00573c..5bb5defd9 100644
--- a/gedit/Gedit-3.0.metadata
+++ b/gedit/Gedit-3.0.metadata
@@ -1,6 +1,5 @@
App cheader_filename="gedit/gedit-app.h"
AppActivatable cheader_filename="gedit/gedit-app-activatable.h"
-LockdownMask cheader_filename="gedit/gedit-app.h"
DebugSection cheader_filename="gedit/gedit-debug.h"
Document cheader_filename="gedit/gedit-document.h"
EncodingsComboBox cheader_filename="gedit/gedit-encodings-combo-box.h"
@@ -22,7 +21,5 @@ commands_* cheader_filename="gedit/gedit-commands.h"
debug* cheader_filename="gedit/gedit-debug.h"
utils_* cheader_filename="gedit/gedit-utils.h"
-LOCKDOWN_ALL cheader_filename="gedit/gedit-app.h"
-
MessageBusForeach cheader_filename="gedit/gedit-message-bus.h"
MessageCallback cheader_filename="gedit/gedit-message-bus.h"
diff --git a/gedit/gedit-app-private.h b/gedit/gedit-app-private.h
index f5f1d7f34..44cf65429 100644
--- a/gedit/gedit-app-private.h
+++ b/gedit/gedit-app-private.h
@@ -27,19 +27,6 @@
G_BEGIN_DECLS
-void _gedit_app_set_lockdown (GeditApp *app,
- GeditLockdownMask lockdown);
-
-void _gedit_app_set_lockdown_bit (GeditApp *app,
- GeditLockdownMask bit,
- gboolean value);
-
-/* This one is a gedit-window function, but we declare it here to avoid
- * #include headaches since it needs the GeditLockdownMask declaration.
- */
-void _gedit_window_set_lockdown (GeditWindow *window,
- GeditLockdownMask lockdown);
-
/* global print config */
GtkPageSetup *_gedit_app_get_default_page_setup (GeditApp *app);
void _gedit_app_set_default_page_setup (GeditApp *app,
diff --git a/gedit/gedit-app.c b/gedit/gedit-app.c
index 313706f5b..836c177ab 100644
--- a/gedit/gedit-app.c
+++ b/gedit/gedit-app.c
@@ -57,8 +57,6 @@ typedef struct
GtkCssProvider *theme_provider;
- GeditLockdownMask lockdown;
-
GtkPageSetup *page_setup;
GtkPrintSettings *print_settings;
@@ -84,15 +82,6 @@ typedef struct
GApplicationCommandLine *command_line;
} GeditAppPrivate;
-enum
-{
- PROP_0,
- PROP_LOCKDOWN,
- LAST_PROP
-};
-
-static GParamSpec *properties[LAST_PROP];
-
static const GOptionEntry options[] =
{
/* Version */
@@ -190,25 +179,6 @@ gedit_app_dispose (GObject *object)
G_OBJECT_CLASS (gedit_app_parent_class)->dispose (object);
}
-static void
-gedit_app_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
-{
- GeditApp *app = GEDIT_APP (object);
-
- switch (prop_id)
- {
- case PROP_LOCKDOWN:
- g_value_set_flags (value, gedit_app_get_lockdown (app));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
- }
-}
-
static gchar *
gedit_app_help_link_id_impl (GeditApp *app,
const gchar *name,
@@ -774,9 +744,6 @@ gedit_app_startup (GApplication *application)
priv->ui_settings = g_settings_new ("org.gnome.gedit.preferences.ui");
priv->window_settings = g_settings_new ("org.gnome.gedit.state.window");
- /* initial lockdown state */
- priv->lockdown = gedit_settings_get_lockdown (priv->settings);
-
g_action_map_add_action_entries (G_ACTION_MAP (application),
app_entries,
G_N_ELEMENTS (app_entries),
@@ -1282,7 +1249,6 @@ gedit_app_class_init (GeditAppClass *klass)
GApplicationClass *app_class = G_APPLICATION_CLASS (klass);
object_class->dispose = gedit_app_dispose;
- object_class->get_property = gedit_app_get_property;
app_class->startup = gedit_app_startup;
app_class->activate = gedit_app_activate;
@@ -1295,16 +1261,6 @@ gedit_app_class_init (GeditAppClass *klass)
klass->help_link_id = gedit_app_help_link_id_impl;
klass->set_window_title = gedit_app_set_window_title_impl;
klass->create_window = gedit_app_create_window_impl;
-
- properties[PROP_LOCKDOWN] =
- g_param_spec_flags ("lockdown",
- "Lockdown",
- "The lockdown mask",
- GEDIT_TYPE_LOCKDOWN_MASK,
- 0,
- G_PARAM_READABLE | G_PARAM_STATIC_STRINGS);
-
- g_object_class_install_properties (object_class, LAST_PROP, properties);
}
static void
@@ -1544,26 +1500,6 @@ gedit_app_get_views (GeditApp *app)
return res;
}
-/**
- * gedit_app_get_lockdown:
- * @app: a #GeditApp
- *
- * Gets the lockdown mask (see #GeditLockdownMask) for the application.
- * The lockdown mask determines which functions are locked down using
- * the GNOME-wise lockdown GConf keys.
- **/
-GeditLockdownMask
-gedit_app_get_lockdown (GeditApp *app)
-{
- GeditAppPrivate *priv;
-
- g_return_val_if_fail (GEDIT_IS_APP (app), GEDIT_LOCKDOWN_ALL);
-
- priv = gedit_app_get_instance_private (app);
-
- return priv->lockdown;
-}
-
gboolean
gedit_app_show_help (GeditApp *app,
GtkWindow *parent,
@@ -1652,64 +1588,6 @@ find_extension_point_section (GMenuModel *model,
return section;
}
-static void
-app_lockdown_changed (GeditApp *app)
-{
- GeditAppPrivate *priv;
- GList *windows, *l;
-
- priv = gedit_app_get_instance_private (app);
-
- windows = gtk_application_get_windows (GTK_APPLICATION (app));
- for (l = windows; l != NULL; l = g_list_next (l))
- {
- if (GEDIT_IS_WINDOW (l->data))
- {
- _gedit_window_set_lockdown (GEDIT_WINDOW (l->data),
- priv->lockdown);
- }
- }
-
- g_object_notify (G_OBJECT (app), "lockdown");
-}
-
-void
-_gedit_app_set_lockdown (GeditApp *app,
- GeditLockdownMask lockdown)
-{
- GeditAppPrivate *priv;
-
- g_return_if_fail (GEDIT_IS_APP (app));
-
- priv = gedit_app_get_instance_private (app);
-
- priv->lockdown = lockdown;
- app_lockdown_changed (app);
-}
-
-void
-_gedit_app_set_lockdown_bit (GeditApp *app,
- GeditLockdownMask bit,
- gboolean value)
-{
- GeditAppPrivate *priv;
-
- g_return_if_fail (GEDIT_IS_APP (app));
-
- priv = gedit_app_get_instance_private (app);
-
- if (value)
- {
- priv->lockdown |= bit;
- }
- else
- {
- priv->lockdown &= ~bit;
- }
-
- app_lockdown_changed (app);
-}
-
/* Returns a copy */
GtkPageSetup *
_gedit_app_get_default_page_setup (GeditApp *app)
diff --git a/gedit/gedit-app.h b/gedit/gedit-app.h
index e00956553..3d7273e04 100644
--- a/gedit/gedit-app.h
+++ b/gedit/gedit-app.h
@@ -54,17 +54,6 @@ struct _GeditAppClass
GdkEvent *event);
};
-typedef enum
-{
- GEDIT_LOCKDOWN_COMMAND_LINE = 1 << 0,
- GEDIT_LOCKDOWN_PRINTING = 1 << 1,
- GEDIT_LOCKDOWN_PRINT_SETUP = 1 << 2,
- GEDIT_LOCKDOWN_SAVE_TO_DISK = 1 << 3
-} GeditLockdownMask;
-
-/* We need to define this here to avoid problems with bindings and gsettings */
-#define GEDIT_LOCKDOWN_ALL 0xF
-
GeditWindow *gedit_app_create_window (GeditApp *app,
GdkScreen *screen);
@@ -74,9 +63,6 @@ GList *gedit_app_get_documents (GeditApp *app);
GList *gedit_app_get_views (GeditApp *app);
-/* Lockdown state */
-GeditLockdownMask gedit_app_get_lockdown (GeditApp *app);
-
gboolean gedit_app_show_help (GeditApp *app,
GtkWindow *parent,
const gchar *name,
diff --git a/gedit/gedit-close-confirmation-dialog.c b/gedit/gedit-close-confirmation-dialog.c
index 257f9ddb8..cbe4d89fa 100644
--- a/gedit/gedit-close-confirmation-dialog.c
+++ b/gedit/gedit-close-confirmation-dialog.c
@@ -51,7 +51,6 @@ struct _GeditCloseConfirmationDialog
GList *unsaved_documents;
GList *selected_documents;
GtkWidget *list_box;
- gboolean disable_save_to_disk;
};
enum
@@ -132,12 +131,6 @@ response_cb (GeditCloseConfirmationDialog *dlg,
static void
gedit_close_confirmation_dialog_init (GeditCloseConfirmationDialog *dlg)
{
- GeditLockdownMask lockdown;
-
- lockdown = gedit_app_get_lockdown (GEDIT_APP (g_application_get_default ()));
-
- dlg->disable_save_to_disk = (lockdown & GEDIT_LOCKDOWN_SAVE_TO_DISK) != 0;
-
gtk_window_set_title (GTK_WINDOW (dlg), "");
gtk_window_set_modal (GTK_WINDOW (dlg), TRUE);
gtk_window_set_destroy_with_parent (GTK_WINDOW (dlg), TRUE);
@@ -272,6 +265,7 @@ static void
add_buttons (GeditCloseConfirmationDialog *dlg)
{
GtkWidget *close_button;
+ gboolean save_as = FALSE;
close_button = gtk_dialog_add_button (GTK_DIALOG (dlg),
_("Close _without Saving"),
@@ -282,36 +276,26 @@ add_buttons (GeditCloseConfirmationDialog *dlg)
gtk_dialog_add_button (GTK_DIALOG (dlg), _("_Cancel"), GTK_RESPONSE_CANCEL);
- if (dlg->disable_save_to_disk)
- {
- gtk_dialog_set_default_response (GTK_DIALOG (dlg),
- GTK_RESPONSE_NO);
- }
- else
+ if (GET_MODE (dlg) == SINGLE_DOC_MODE)
{
- gboolean save_as = FALSE;
-
- if (GET_MODE (dlg) == SINGLE_DOC_MODE)
- {
- GeditDocument *doc;
- GtkSourceFile *file;
+ GeditDocument *doc;
+ GtkSourceFile *file;
- doc = GEDIT_DOCUMENT (dlg->unsaved_documents->data);
- file = gedit_document_get_file (doc);
+ doc = GEDIT_DOCUMENT (dlg->unsaved_documents->data);
+ file = gedit_document_get_file (doc);
- if (gtk_source_file_is_readonly (file) ||
- gedit_document_is_untitled (doc))
- {
- save_as = TRUE;
- }
+ if (gtk_source_file_is_readonly (file) ||
+ gedit_document_is_untitled (doc))
+ {
+ save_as = TRUE;
}
-
- gtk_dialog_add_button (GTK_DIALOG (dlg),
- save_as ? _("_Save As…") : _("_Save"),
- GTK_RESPONSE_YES);
- gtk_dialog_set_default_response (GTK_DIALOG (dlg),
- GTK_RESPONSE_YES);
}
+
+ gtk_dialog_add_button (GTK_DIALOG (dlg),
+ save_as ? _("_Save As…") : _("_Save"),
+ GTK_RESPONSE_YES);
+ gtk_dialog_set_default_response (GTK_DIALOG (dlg),
+ GTK_RESPONSE_YES);
}
static gchar *
@@ -413,16 +397,8 @@ build_single_doc_dialog (GeditCloseConfirmationDialog *dlg)
/* Primary message */
doc_name = gedit_document_get_short_name_for_display (doc);
- if (dlg->disable_save_to_disk)
- {
- str = g_markup_printf_escaped (_("Changes to document “%s” will be permanently lost."),
- doc_name);
- }
- else
- {
- str = g_markup_printf_escaped (_("Save changes to document “%s” before closing?"),
- doc_name);
- }
+ str = g_markup_printf_escaped (_("Save changes to document “%s” before closing?"),
+ doc_name);
g_free (doc_name);
@@ -433,15 +409,7 @@ build_single_doc_dialog (GeditCloseConfirmationDialog *dlg)
g_free (markup_str);
/* Secondary message */
- if (dlg->disable_save_to_disk)
- {
- str = g_strdup (_("Saving has been disabled by the system administrator."));
- }
- else
- {
- str = get_text_secondary_label (doc);
- }
-
+ str = get_text_secondary_label (doc);
gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dlg), "%s", str);
g_free (str);
}
@@ -498,24 +466,13 @@ build_multiple_docs_dialog (GeditCloseConfirmationDialog *dlg)
gtk_window_set_resizable (GTK_WINDOW (dlg), TRUE);
/* Primary message */
- if (dlg->disable_save_to_disk)
- {
- str = g_strdup_printf (
- ngettext ("Changes to %d document will be permanently lost.",
- "Changes to %d documents will be permanently lost.",
- g_list_length (dlg->unsaved_documents)),
- g_list_length (dlg->unsaved_documents));
- }
- else
- {
- str = g_strdup_printf (
- ngettext ("There is %d document with unsaved changes. "
- "Save changes before closing?",
- "There are %d documents with unsaved changes. "
- "Save changes before closing?",
- g_list_length (dlg->unsaved_documents)),
- g_list_length (dlg->unsaved_documents));
- }
+ str = g_strdup_printf (
+ ngettext ("There is %d document with unsaved changes. "
+ "Save changes before closing?",
+ "There are %d documents with unsaved changes. "
+ "Save changes before closing?",
+ g_list_length (dlg->unsaved_documents)),
+ g_list_length (dlg->unsaved_documents));
markup_str = g_strconcat ("<span weight=\"bold\" size=\"larger\">", str, "</span>", NULL);
g_free (str);
@@ -533,15 +490,7 @@ build_multiple_docs_dialog (GeditCloseConfirmationDialog *dlg)
gtk_widget_set_margin_bottom (vbox, 12);
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
- if (dlg->disable_save_to_disk)
- {
- select_label = gtk_label_new_with_mnemonic (_("Docum_ents with unsaved changes:"));
- }
- else
- {
- select_label = gtk_label_new_with_mnemonic (_("S_elect the documents you want to save:"));
- }
-
+ select_label = gtk_label_new_with_mnemonic (_("S_elect the documents you want to save:"));
gtk_box_pack_start (GTK_BOX (vbox), select_label, FALSE, FALSE, 0);
gtk_label_set_line_wrap (GTK_LABEL (select_label), TRUE);
gtk_label_set_max_width_chars (GTK_LABEL (select_label), 72);
@@ -557,16 +506,8 @@ build_multiple_docs_dialog (GeditCloseConfirmationDialog *dlg)
gtk_container_add (GTK_CONTAINER (scrolledwindow), dlg->list_box);
/* Secondary label */
- if (dlg->disable_save_to_disk)
- {
- secondary_label = gtk_label_new (_("Saving has been disabled by the system administrator."));
- }
- else
- {
- secondary_label = gtk_label_new (_("If you don’t save, "
- "all your changes will be permanently lost."));
- }
-
+ secondary_label = gtk_label_new (_("If you don’t save, "
+ "all your changes will be permanently lost."));
gtk_box_pack_start (GTK_BOX (vbox), secondary_label, FALSE, FALSE, 0);
gtk_label_set_line_wrap (GTK_LABEL (secondary_label), TRUE);
gtk_widget_set_halign (secondary_label, GTK_ALIGN_CENTER);
diff --git a/gedit/gedit-commands-file.c b/gedit/gedit-commands-file.c
index 20759c8b8..a1b26433e 100644
--- a/gedit/gedit-commands-file.c
+++ b/gedit/gedit-commands-file.c
@@ -31,6 +31,7 @@
#include <gtk/gtk.h>
#include <tepl/tepl.h>
+#include "gedit-app.h"
#include "gedit-debug.h"
#include "gedit-document.h"
#include "gedit-document-private.h"
diff --git a/gedit/gedit-settings.c b/gedit/gedit-settings.c
index 016edc791..aea234984 100644
--- a/gedit/gedit-settings.c
+++ b/gedit/gedit-settings.c
@@ -33,18 +33,12 @@
#include "gedit-view.h"
#include "gedit-window.h"
-#define GEDIT_SETTINGS_LOCKDOWN_COMMAND_LINE "disable-command-line"
-#define GEDIT_SETTINGS_LOCKDOWN_PRINTING "disable-printing"
-#define GEDIT_SETTINGS_LOCKDOWN_PRINT_SETUP "disable-print-setup"
-#define GEDIT_SETTINGS_LOCKDOWN_SAVE_TO_DISK "disable-save-to-disk"
-
#define GEDIT_SETTINGS_SYSTEM_FONT "monospace-font-name"
struct _GeditSettings
{
GObject parent_instance;
- GSettings *lockdown;
GSettings *interface;
GSettings *editor;
GSettings *ui;
@@ -69,7 +63,6 @@ gedit_settings_dispose (GObject *object)
{
GeditSettings *gs = GEDIT_SETTINGS (object);
- g_clear_object (&gs->lockdown);
g_clear_object (&gs->interface);
g_clear_object (&gs->editor);
g_clear_object (&gs->ui);
@@ -77,43 +70,6 @@ gedit_settings_dispose (GObject *object)
G_OBJECT_CLASS (gedit_settings_parent_class)->dispose (object);
}
-static void
-on_lockdown_changed (GSettings *settings,
- const gchar *key,
- gpointer useless)
-{
- gboolean locked;
- GeditApp *app;
-
- locked = g_settings_get_boolean (settings, key);
- app = GEDIT_APP (g_application_get_default ());
-
- if (strcmp (key, GEDIT_SETTINGS_LOCKDOWN_COMMAND_LINE) == 0)
- {
- _gedit_app_set_lockdown_bit (app,
- GEDIT_LOCKDOWN_COMMAND_LINE,
- locked);
- }
- else if (strcmp (key, GEDIT_SETTINGS_LOCKDOWN_PRINTING) == 0)
- {
- _gedit_app_set_lockdown_bit (app,
- GEDIT_LOCKDOWN_PRINTING,
- locked);
- }
- else if (strcmp (key, GEDIT_SETTINGS_LOCKDOWN_PRINT_SETUP) == 0)
- {
- _gedit_app_set_lockdown_bit (app,
- GEDIT_LOCKDOWN_PRINT_SETUP,
- locked);
- }
- else if (strcmp (key, GEDIT_SETTINGS_LOCKDOWN_SAVE_TO_DISK) == 0)
- {
- _gedit_app_set_lockdown_bit (app,
- GEDIT_LOCKDOWN_SAVE_TO_DISK,
- locked);
- }
-}
-
static void
set_font (GeditSettings *gs,
const gchar *font)
@@ -336,14 +292,6 @@ gedit_settings_init (GeditSettings *gs)
gs->editor = g_settings_new ("org.gnome.gedit.preferences.editor");
gs->ui = g_settings_new ("org.gnome.gedit.preferences.ui");
- /* Load settings */
- gs->lockdown = g_settings_new ("org.gnome.desktop.lockdown");
-
- g_signal_connect (gs->lockdown,
- "changed",
- G_CALLBACK (on_lockdown_changed),
- NULL);
-
gs->interface = g_settings_new ("org.gnome.desktop.interface");
g_signal_connect (gs->interface,
@@ -393,36 +341,6 @@ gedit_settings_new ()
return g_object_new (GEDIT_TYPE_SETTINGS, NULL);
}
-GeditLockdownMask
-gedit_settings_get_lockdown (GeditSettings *gs)
-{
- guint lockdown = 0;
- gboolean command_line, printing, print_setup, save_to_disk;
-
- command_line = g_settings_get_boolean (gs->lockdown,
- GEDIT_SETTINGS_LOCKDOWN_COMMAND_LINE);
- printing = g_settings_get_boolean (gs->lockdown,
- GEDIT_SETTINGS_LOCKDOWN_PRINTING);
- print_setup = g_settings_get_boolean (gs->lockdown,
- GEDIT_SETTINGS_LOCKDOWN_PRINT_SETUP);
- save_to_disk = g_settings_get_boolean (gs->lockdown,
- GEDIT_SETTINGS_LOCKDOWN_SAVE_TO_DISK);
-
- if (command_line)
- lockdown |= GEDIT_LOCKDOWN_COMMAND_LINE;
-
- if (printing)
- lockdown |= GEDIT_LOCKDOWN_PRINTING;
-
- if (print_setup)
- lockdown |= GEDIT_LOCKDOWN_PRINT_SETUP;
-
- if (save_to_disk)
- lockdown |= GEDIT_LOCKDOWN_SAVE_TO_DISK;
-
- return lockdown;
-}
-
gchar *
gedit_settings_get_system_font (GeditSettings *gs)
{
diff --git a/gedit/gedit-settings.h b/gedit/gedit-settings.h
index 33885d99f..8c93c1d72 100644
--- a/gedit/gedit-settings.h
+++ b/gedit/gedit-settings.h
@@ -24,9 +24,7 @@
#ifndef GEDIT_SETTINGS_H
#define GEDIT_SETTINGS_H
-#include <glib-object.h>
-#include <glib.h>
-#include "gedit-app.h"
+#include <gio/gio.h>
G_BEGIN_DECLS
@@ -36,8 +34,6 @@ G_DECLARE_FINAL_TYPE (GeditSettings, gedit_settings, GEDIT, SETTINGS, GObject)
GeditSettings *gedit_settings_new (void);
-GeditLockdownMask gedit_settings_get_lockdown (GeditSettings *gs);
-
gchar *gedit_settings_get_system_font (GeditSettings *gs);
GSList *gedit_settings_get_candidate_encodings (gboolean *default_candidates);
diff --git a/gedit/gedit-tab.c b/gedit/gedit-tab.c
index c82803bc5..fcf5ec3e1 100644
--- a/gedit/gedit-tab.c
+++ b/gedit/gedit-tab.c
@@ -1303,12 +1303,10 @@ on_drop_uris (GeditView *view,
static void
gedit_tab_init (GeditTab *tab)
{
- GeditLockdownMask lockdown;
gboolean auto_save;
gint auto_save_interval;
GeditDocument *doc;
GeditView *view;
- GeditApp *app;
GtkSourceFile *file;
tab->state = GEDIT_TAB_STATE_NORMAL;
@@ -1327,13 +1325,7 @@ gedit_tab_init (GeditTab *tab)
GEDIT_SETTINGS_AUTO_SAVE);
g_settings_get (tab->editor_settings, GEDIT_SETTINGS_AUTO_SAVE_INTERVAL,
"u", &auto_save_interval);
-
- app = GEDIT_APP (g_application_get_default ());
-
- lockdown = gedit_app_get_lockdown (app);
- tab->auto_save = auto_save && !(lockdown & GEDIT_LOCKDOWN_SAVE_TO_DISK);
- tab->auto_save = (tab->auto_save != FALSE);
-
+ tab->auto_save = auto_save != FALSE;
tab->auto_save_interval = auto_save_interval;
/* Create the frame */
@@ -2989,21 +2981,12 @@ void
gedit_tab_set_auto_save_enabled (GeditTab *tab,
gboolean enable)
{
- GeditLockdownMask lockdown;
-
gedit_debug (DEBUG_TAB);
g_return_if_fail (GEDIT_IS_TAB (tab));
enable = enable != FALSE;
- /* Force disabling when lockdown is active */
- lockdown = gedit_app_get_lockdown (GEDIT_APP (g_application_get_default ()));
- if (lockdown & GEDIT_LOCKDOWN_SAVE_TO_DISK)
- {
- enable = FALSE;
- }
-
if (tab->auto_save != enable)
{
tab->auto_save = enable;
diff --git a/gedit/gedit-window.c b/gedit/gedit-window.c
index 2b5a0ea9a..8b084b46e 100644
--- a/gedit/gedit-window.c
+++ b/gedit/gedit-window.c
@@ -570,7 +570,6 @@ update_actions_sensitivity (GeditWindow *window)
gboolean editable = FALSE;
gboolean empty_search = FALSE;
GtkClipboard *clipboard;
- GeditLockdownMask lockdown;
gboolean enable_syntax_highlighting;
gedit_debug (DEBUG_WINDOW);
@@ -591,24 +590,20 @@ update_actions_sensitivity (GeditWindow *window)
empty_search = _gedit_document_get_empty_search (doc);
}
- lockdown = gedit_app_get_lockdown (GEDIT_APP (g_application_get_default ()));
-
clipboard = gtk_widget_get_clipboard (GTK_WIDGET (window), GDK_SELECTION_CLIPBOARD);
action = g_action_map_lookup_action (G_ACTION_MAP (window), "save");
g_simple_action_set_enabled (G_SIMPLE_ACTION (action),
((state == GEDIT_TAB_STATE_NORMAL) ||
(state == GEDIT_TAB_STATE_EXTERNALLY_MODIFIED_NOTIFICATION)) &&
- (file != NULL) && !gtk_source_file_is_readonly (file) &&
- !(lockdown & GEDIT_LOCKDOWN_SAVE_TO_DISK));
+ (file != NULL) && !gtk_source_file_is_readonly (file));
action = g_action_map_lookup_action (G_ACTION_MAP (window), "save-as");
g_simple_action_set_enabled (G_SIMPLE_ACTION (action),
((state == GEDIT_TAB_STATE_NORMAL) ||
(state == GEDIT_TAB_STATE_SAVING_ERROR) ||
(state == GEDIT_TAB_STATE_EXTERNALLY_MODIFIED_NOTIFICATION)) &&
- (doc != NULL) &&
- !(lockdown & GEDIT_LOCKDOWN_SAVE_TO_DISK));
+ (doc != NULL));
action = g_action_map_lookup_action (G_ACTION_MAP (window), "revert");
g_simple_action_set_enabled (G_SIMPLE_ACTION (action),
@@ -623,8 +618,7 @@ update_actions_sensitivity (GeditWindow *window)
g_simple_action_set_enabled (G_SIMPLE_ACTION (action),
((state == GEDIT_TAB_STATE_NORMAL) ||
(state == GEDIT_TAB_STATE_SHOWING_PRINT_PREVIEW)) &&
- (doc != NULL) &&
- !(lockdown & GEDIT_LOCKDOWN_PRINTING));
+ (doc != NULL));
action = g_action_map_lookup_action (G_ACTION_MAP (window), "close");
g_simple_action_set_enabled (G_SIMPLE_ACTION (action),
@@ -762,7 +756,6 @@ update_actions_sensitivity (GeditWindow *window)
action = g_action_map_lookup_action (G_ACTION_MAP (window), "save-all");
g_simple_action_set_enabled (G_SIMPLE_ACTION (action),
!(window->priv->state & GEDIT_WINDOW_STATE_PRINTING) &&
- !(lockdown & GEDIT_LOCKDOWN_SAVE_TO_DISK) &&
num_tabs > 0);
action = g_action_map_lookup_action (G_ACTION_MAP (window), "close-all");
@@ -1395,30 +1388,6 @@ tab_switched (GeditMultiNotebook *mnb,
new_tab);
}
-static void
-set_auto_save_enabled (GeditTab *tab,
- gpointer autosave)
-{
- gedit_tab_set_auto_save_enabled (tab, GPOINTER_TO_BOOLEAN (autosave));
-}
-
-void
-_gedit_window_set_lockdown (GeditWindow *window,
- GeditLockdownMask lockdown)
-{
- gboolean autosave;
-
- /* start/stop autosave in each existing tab */
- autosave = g_settings_get_boolean (window->priv->editor_settings,
- GEDIT_SETTINGS_AUTO_SAVE);
-
- gedit_multi_notebook_foreach_tab (window->priv->multi_notebook,
- (GtkCallback)set_auto_save_enabled,
- &autosave);
-
- update_actions_sensitivity (window);
-}
-
static void
analyze_tab_state (GeditTab *tab,
GeditWindow *window)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]