diff --git a/ks_includes/config.py b/ks_includes/config.py
index 04a69615..a6f66d25 100644
--- a/ks_includes/config.py
+++ b/ks_includes/config.py
@@ -36,6 +36,7 @@ class KlipperScreenConfig:
             {"invert_x": {"section": "main", "name": _("Invert X"), "type": "binary", "value": "False"}},
             {"invert_y": {"section": "main", "name": _("Invert Y"), "type": "binary", "value": "False"}},
             {"invert_z": {"section": "main", "name": _("Invert Z"), "type": "binary", "value": "False"}},
+            {"print_sort_dir": {"section": "main", "type": None, "value": "name_asc"}},
             {"print_estimate_method": {"section": "main", "name": _("Estimated Time Method"), "type": "dropdown",
                 "value": "file","options":[
                     {"name": _("File Estimation (default)"), "value": "file"},
diff --git a/panels/print.py b/panels/print.py
index e6d8d791..4489ac64 100644
--- a/panels/print.py
+++ b/panels/print.py
@@ -19,6 +19,7 @@ def create_panel(*args):
 class PrintPanel(ScreenPanel):
     cur_directory = "gcodes"
     dir_panels = {}
+    filelist = {'gcodes':{'directories':[],'files':[]}}
 
     def initialize(self, panel_name):
         _ = self.lang.gettext
@@ -275,9 +276,11 @@ class PrintPanel(ScreenPanel):
             self.sort_current = [key, 0]
         self.labels['sort_%s' % key].set_label("%s %s" % (self.sort_items[key], self.sort_char[self.sort_current[1]]))
         self.labels['sort_%s' % key].show()
-
         GLib.idle_add(self.reload_files)
 
+        self._config.set("main", "print_sort_dir", "%s_%s" % (key, "asc" if self.sort_current[1] == 0 else "desc"))
+        self._config.save_user_config_options()
+
     def confirm_print(self, widget, filename):
         _ = self.lang.gettext
         buttons = [
diff --git a/panels/settings.py b/panels/settings.py
index 9c4feb54..46c1872b 100644
--- a/panels/settings.py
+++ b/panels/settings.py
@@ -78,6 +78,9 @@ class SettingsPanel(ScreenPanel):
         return box
 
     def add_option(self, boxname, opt_array, opt_name, option):
+        if option['type'] == None:
+            return
+
         frame = Gtk.Frame()
         frame.set_property("shadow-type",Gtk.ShadowType.NONE)
         frame.get_style_context().add_class("frame-item")