[meld: 2/4] Revert "Add an option to preferably use native file dialogs"
- From: Kai Willadsen <kaiw src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [meld: 2/4] Revert "Add an option to preferably use native file dialogs"
- Date: Sun, 13 Dec 2020 21:35:50 +0000 (UTC)
commit a7ee12a828c10225bcdd9ffbff2e535c0e28ab0d
Author: Mario Aichinger <aichingm gmail com>
Date: Sat Nov 28 19:02:39 2020 +0100
Revert "Add an option to preferably use native file dialogs"
This reverts commit 5f5c44f03617e71ce90f6058295e661eaccc181a.
data/org.gnome.meld.gschema.xml | 5 --
meld/filediff.py | 4 +-
meld/iohelpers.py | 4 +-
meld/newdifftab.py | 51 +---------------
meld/preferences.py | 2 -
meld/resources/ui/new-diff-tab.ui | 42 +------------
meld/resources/ui/preferences.ui | 121 +++-----------------------------------
meld/settings.py | 2 -
meld/ui/filechooser.py | 35 -----------
9 files changed, 15 insertions(+), 251 deletions(-)
---
diff --git a/data/org.gnome.meld.gschema.xml b/data/org.gnome.meld.gschema.xml
index 63e2118a..d966b43b 100644
--- a/data/org.gnome.meld.gschema.xml
+++ b/data/org.gnome.meld.gschema.xml
@@ -114,11 +114,6 @@
<summary>Use the system default monospace font</summary>
<description>If false, custom-font will be used instead of the system monospace font.</description>
</key>
- <key name="use-system-file-dialogs" type="b">
- <default>false</default>
- <summary>Use the system file dialogs</summary>
- <description>If false, custom non-native file dialogs will be used.</description>
- </key>
<key name="custom-font" type="s">
<default>"monospace, 14"</default>
<summary>Custom font</summary>
diff --git a/meld/filediff.py b/meld/filediff.py
index 356537bb..dfaf71a0 100644
--- a/meld/filediff.py
+++ b/meld/filediff.py
@@ -52,7 +52,7 @@ from meld.sourceview import (
TextviewLineAnimationType,
get_custom_encoding_candidates,
)
-from meld.ui.filechooser import MeldFileChooserDialogFactory
+from meld.ui.filechooser import MeldFileChooserDialog
from meld.ui.findbar import FindBar
from meld.ui.util import (
make_multiobject_property_action,
@@ -2042,7 +2042,7 @@ class FileDiff(Gtk.VBox, MeldDoc):
def on_file_open_button_clicked(self, button):
pane = self.file_open_button.index(button)
- dialog = MeldFileChooserDialogFactory.dialog(
+ dialog = MeldFileChooserDialog(
title=_("Open File"),
transient_for=self.get_toplevel(),
)
diff --git a/meld/iohelpers.py b/meld/iohelpers.py
index 614a58a9..ffa162e4 100644
--- a/meld/iohelpers.py
+++ b/meld/iohelpers.py
@@ -5,7 +5,7 @@ from gi.repository import Gio, GLib, Gtk
from meld.conf import _
from meld.misc import get_modal_parent, modal_dialog
-from meld.ui.filechooser import MeldFileChooserDialogFactory
+from meld.ui.filechooser import MeldFileChooserDialog
def trash_or_confirm(gfile: Gio.File) -> bool:
@@ -75,7 +75,7 @@ def trash_or_confirm(gfile: Gio.File) -> bool:
def prompt_save_filename(
title: str, parent: Optional[Gtk.Widget] = None) -> Optional[Gio.File]:
- dialog = MeldFileChooserDialogFactory.dialog(
+ dialog = MeldFileChooserDialog(
title,
transient_for=get_modal_parent(parent),
action=Gtk.FileChooserAction.SAVE,
diff --git a/meld/newdifftab.py b/meld/newdifftab.py
index 06d593b1..a619013a 100644
--- a/meld/newdifftab.py
+++ b/meld/newdifftab.py
@@ -20,7 +20,6 @@ from gi.repository import Gio, GLib, GObject, Gtk
from meld.conf import _
from meld.melddoc import LabeledObjectMixin, MeldDoc
from meld.recent import recent_comparisons
-from meld.settings import get_meld_settings, settings
from meld.ui.util import map_widgets_into_lists
@@ -62,9 +61,6 @@ class NewDiffTab(Gtk.Alignment, LabeledObjectMixin):
file_chooser0 = Gtk.Template.Child()
file_chooser1 = Gtk.Template.Child()
file_chooser2 = Gtk.Template.Child()
- file_chooser_native0 = Gtk.Template.Child()
- file_chooser_native1 = Gtk.Template.Child()
- file_chooser_native2 = Gtk.Template.Child()
file_three_way_checkbutton = Gtk.Template.Child()
filechooserdialog0 = Gtk.Template.Child()
filechooserdialog1 = Gtk.Template.Child()
@@ -75,13 +71,7 @@ class NewDiffTab(Gtk.Alignment, LabeledObjectMixin):
super().__init__()
map_widgets_into_lists(
self,
- [
- "file_chooser",
- "file_chooser_native",
- "dir_chooser",
- "vc_chooser",
- "filechooserdialog"
- ]
+ ["file_chooser", "dir_chooser", "vc_chooser", "filechooserdialog"]
)
self.button_types = [
self.button_type_file,
@@ -99,10 +89,7 @@ class NewDiffTab(Gtk.Alignment, LabeledObjectMixin):
for chooser in self.file_chooser:
chooser.set_current_folder(default_path)
- get_meld_settings().connect('changed', self.on_setting_changed)
-
self.show()
- self.hide_unused_file_chooser_buttons()
@Gtk.Template.Callback()
def on_button_type_toggled(self, button, *args):
@@ -126,7 +113,6 @@ class NewDiffTab(Gtk.Alignment, LabeledObjectMixin):
def on_three_way_checkbutton_toggled(self, button, *args):
if button is self.file_three_way_checkbutton:
self.file_chooser2.set_sensitive(button.get_active())
- self.file_chooser_native2.set_sensitive(button.get_active())
else: # button is self.dir_three_way_checkbutton
self.dir_chooser2.set_sensitive(button.get_active())
@@ -150,23 +136,6 @@ class NewDiffTab(Gtk.Alignment, LabeledObjectMixin):
# we've got binary files; check for null file selections; sniff text
# encodings; check file permissions.
- def hide_unused_file_chooser_buttons(self):
- if settings.get_boolean('use-system-file-dialogs'):
- choosers_to_hide = self.file_chooser
- choosers_to_show = self.file_chooser_native
- else:
- choosers_to_hide = self.file_chooser_native
- choosers_to_show = self.file_chooser
-
- for b in choosers_to_hide:
- b.hide()
- for b in choosers_to_show:
- b.show()
-
- def on_setting_changed(self, settings, key):
- if key == 'use-system-file-dialogs':
- self.hide_unused_file_chooser_buttons()
-
def _get_num_paths(self):
if self.diff_type in (DiffType.File, DiffType.Folder):
three_way_buttons = (
@@ -181,22 +150,8 @@ class NewDiffTab(Gtk.Alignment, LabeledObjectMixin):
@Gtk.Template.Callback()
def on_button_compare_clicked(self, *args):
- type_choosers = (
- self.file_chooser,
- self.dir_chooser,
- self.vc_chooser,
- self.file_chooser_native
- )
-
- if settings.get_boolean('use-system-file-dialogs'):
- native_offset = 3
- else:
- native_offset = 0
-
- chooser_index = self.diff_type + native_offset
-
- choosers = type_choosers[chooser_index][:self._get_num_paths()]
-
+ type_choosers = (self.file_chooser, self.dir_chooser, self.vc_chooser)
+ choosers = type_choosers[self.diff_type][:self._get_num_paths()]
compare_gfiles = [chooser.get_file() for chooser in choosers]
compare_kwargs = {}
diff --git a/meld/preferences.py b/meld/preferences.py
index 01993dbf..cf8b9def 100644
--- a/meld/preferences.py
+++ b/meld/preferences.py
@@ -254,7 +254,6 @@ class PreferencesDialog(Gtk.Dialog):
checkbutton_break_commit_lines = Gtk.Template.Child()
checkbutton_default_font = Gtk.Template.Child()
- checkbutton_system_file_dialogs = Gtk.Template.Child()
checkbutton_folder_filter_text = Gtk.Template.Child()
checkbutton_highlight_current_line = Gtk.Template.Child()
checkbutton_ignore_blank_lines = Gtk.Template.Child()
@@ -287,7 +286,6 @@ class PreferencesDialog(Gtk.Dialog):
super().__init__(**kwargs)
bindings = [
- ('use-system-file-dialogs', self.checkbutton_system_file_dialogs, 'active'), # noqa: E501
('use-system-font', self.checkbutton_default_font, 'active'),
('custom-font', self.fontpicker, 'font'),
('indent-width', self.spinbutton_tabsize, 'value'),
diff --git a/meld/resources/ui/new-diff-tab.ui b/meld/resources/ui/new-diff-tab.ui
index 3b3f1b47..1a8ea3d6 100644
--- a/meld/resources/ui/new-diff-tab.ui
+++ b/meld/resources/ui/new-diff-tab.ui
@@ -342,7 +342,7 @@
</object>
<packing>
<property name="left_attach">2</property>
- <property name="top_attach">2</property>
+ <property name="top_attach">1</property>
</packing>
</child>
<child>
@@ -359,19 +359,6 @@
<property name="top_attach">0</property>
</packing>
</child>
- <child>
- <object class="GtkFileChooserButton" id="file_chooser_native0">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="create_folders">False</property>
- <property name="title" translatable="yes">Select First File</property>
- <signal name="file-set" handler="on_file_set" swapped="no"/>
- </object>
- <packing>
- <property name="left_attach">0</property>
- <property name="top_attach">1</property>
- </packing>
- </child>
<child>
<object class="GtkFileChooserButton" id="file_chooser1">
<property name="visible">True</property>
@@ -386,19 +373,6 @@
<property name="top_attach">0</property>
</packing>
</child>
- <child>
- <object class="GtkFileChooserButton" id="file_chooser_native1">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="create_folders">False</property>
- <property name="title" translatable="yes">Select Second File</property>
- <signal name="file-set" handler="on_file_set" swapped="no"/>
- </object>
- <packing>
- <property name="left_attach">1</property>
- <property name="top_attach">1</property>
- </packing>
- </child>
<child>
<object class="GtkFileChooserButton" id="file_chooser2">
<property name="visible">True</property>
@@ -414,20 +388,6 @@
<property name="top_attach">0</property>
</packing>
</child>
- <child>
- <object class="GtkFileChooserButton" id="file_chooser_native2">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_focus">False</property>
- <property name="create_folders">False</property>
- <property name="title" translatable="yes">Select Third File</property>
- <signal name="file-set" handler="on_file_set" swapped="no"/>
- </object>
- <packing>
- <property name="left_attach">2</property>
- <property name="top_attach">1</property>
- </packing>
- </child>
<child>
<placeholder/>
</child>
diff --git a/meld/resources/ui/preferences.ui b/meld/resources/ui/preferences.ui
index 67f984bf..37dc3055 100644
--- a/meld/resources/ui/preferences.ui
+++ b/meld/resources/ui/preferences.ui
@@ -55,112 +55,6 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="show_border">False</property>
- <child>
- <object class="GtkBox" id="general_tab">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="border_width">12</property>
- <property name="orientation">vertical</property>
- <property name="spacing">12</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkLabel" id="label17">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">File Dialogs</property>
- <property name="use_markup">True</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <child>
- <object class="GtkLabel">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="padding">12</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkCheckButton" id="checkbutton_system_file_dialogs">
- <property name="label" translatable="yes">_Use system file dialogs where
possible</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="use_underline">True</property>
- <property name="xalign">0</property>
- <property name="active">True</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="position">0</property>
- </packing>
- </child>
- <child type="tab">
- <object class="GtkLabel" id="general_label">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">General</property>
- </object>
- <packing>
- <property name="position">0</property>
- <property name="tab_fill">False</property>
- </packing>
- </child>
<child>
<object class="GtkBox" id="editor_tab">
<property name="visible">True</property>
@@ -805,7 +699,7 @@
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
- <property name="position">1</property>
+ <property name="position">3</property>
</packing>
</child>
</object>
@@ -817,7 +711,6 @@
<property name="label" translatable="yes">Editor</property>
</object>
<packing>
- <property name="position">1</property>
<property name="tab_fill">False</property>
</packing>
</child>
@@ -1447,7 +1340,7 @@
</child>
</object>
<packing>
- <property name="position">3</property>
+ <property name="position">2</property>
<property name="tab_fill">False</property>
</packing>
</child>
@@ -1458,7 +1351,7 @@
<property name="label" translatable="yes">Version Control</property>
</object>
<packing>
- <property name="position">3</property>
+ <property name="position">2</property>
<property name="tab_fill">False</property>
</packing>
</child>
@@ -1552,7 +1445,7 @@
</child>
</object>
<packing>
- <property name="position">4</property>
+ <property name="position">3</property>
<property name="tab_fill">False</property>
</packing>
</child>
@@ -1563,7 +1456,7 @@
<property name="label" translatable="yes">File Filters</property>
</object>
<packing>
- <property name="position">4</property>
+ <property name="position">3</property>
<property name="tab_fill">False</property>
</packing>
</child>
@@ -1738,7 +1631,7 @@
</child>
</object>
<packing>
- <property name="position">5</property>
+ <property name="position">4</property>
</packing>
</child>
<child type="tab">
@@ -1748,7 +1641,7 @@
<property name="label" translatable="yes">Text Filters</property>
</object>
<packing>
- <property name="position">5</property>
+ <property name="position">4</property>
<property name="tab_fill">False</property>
</packing>
</child>
diff --git a/meld/settings.py b/meld/settings.py
index c97fb563..a240a8e3 100644
--- a/meld/settings.py
+++ b/meld/settings.py
@@ -53,8 +53,6 @@ class MeldSettings(GObject.GObject):
elif key in ('style-scheme'):
self.style_scheme = self._style_scheme_from_gsettings()
self.emit('changed', 'style-scheme')
- elif key in ('use-system-file-dialogs'):
- self.emit('changed', 'use-system-file-dialogs')
def _style_scheme_from_gsettings(self):
from meld.style import set_base_style_scheme
diff --git a/meld/ui/filechooser.py b/meld/ui/filechooser.py
index 2cd15888..9616adb9 100644
--- a/meld/ui/filechooser.py
+++ b/meld/ui/filechooser.py
@@ -20,7 +20,6 @@ import sys
from gi.repository import Gtk, GtkSource
from meld.conf import _
-from meld.settings import settings
FILE_ACTIONS = {
Gtk.FileChooserAction.OPEN,
@@ -28,20 +27,6 @@ FILE_ACTIONS = {
}
-class MeldFileChooserDialogNative(Gtk.FileChooserNative):
-
- __gtype_name__ = 'MeldFileChooserDialogNative'
-
- def __init__(self, title=None, transient_for=None,
- action=Gtk.FileChooserAction.OPEN):
- super().__init__(title=title, transient_for=transient_for,
- action=action)
-
- def set_default_response(*_):
- pass # it is not possible to set this when using the native dialog
- # The native dialog always returns Gtk.ResponseType.ACCEPT
-
-
class MeldFileChooserDialog(Gtk.FileChooserDialog):
"""A simple GTK+ file chooser dialog with a text encoding combo box."""
@@ -121,23 +106,3 @@ class MeldFileChooserDialog(Gtk.FileChooserDialog):
self.props.extra_widget = self.make_encoding_combo()
else:
self.props.extra_widget = None
-
-
-class MeldFileChooserDialogFactory:
-
- @staticmethod
- def dialog(title=None, transient_for=None,
- action=Gtk.FileChooserAction.OPEN):
-
- if settings.get_boolean('use-system-file-dialogs'):
- return MeldFileChooserDialogNative(
- title,
- transient_for=transient_for,
- action=action,
- )
- else:
- return MeldFileChooserDialog(
- title,
- transient_for=transient_for,
- action=action,
- )
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]