mirror of
https://github.com/GradienceTeam/Gradience.git
synced 2024-09-29 23:17:53 +00:00
fix: Use different variables for display name and filename
This commit is contained in:
parent
35e14b3960
commit
281e848ab1
5 changed files with 160 additions and 23 deletions
125
0001-fix-Use-different-variables-for-display-name-and-fil.patch
Normal file
125
0001-fix-Use-different-variables-for-display-name-and-fil.patch
Normal file
|
@ -0,0 +1,125 @@
|
|||
From 1d58f7292f500999b7c8c5efb2f602371d972704 Mon Sep 17 00:00:00 2001
|
||||
From: tfuxu <73042332+tfuxu@users.noreply.github.com>
|
||||
Date: Tue, 11 Oct 2022 20:34:04 +0200
|
||||
Subject: [PATCH] fix: Use different variables for display name and filename
|
||||
|
||||
---
|
||||
gradience/main.py | 4 ++--
|
||||
gradience/utils/preset.py | 29 +++++++++++++++++------------
|
||||
2 files changed, 19 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/gradience/main.py b/gradience/main.py
|
||||
index 36a39e1..04deaac 100644
|
||||
--- a/gradience/main.py
|
||||
+++ b/gradience/main.py
|
||||
@@ -335,7 +335,7 @@ class GradienceApplication(Adw.Application):
|
||||
self.preset = preset
|
||||
self.is_ready = False
|
||||
buglog(self.preset)
|
||||
- self.preset_name = self.preset.preset_name
|
||||
+ self.preset_name = self.preset.display_name
|
||||
self.variables = self.preset.variables
|
||||
self.palette = self.preset.palette
|
||||
self.custom_css = self.preset.custom_css
|
||||
@@ -783,7 +783,7 @@ class GradienceApplication(Adw.Application):
|
||||
|
||||
def save_preset(self, _unused, response, preset_entry):
|
||||
if response == "save":
|
||||
- self.preset.save_preset(to_slug_case(preset_entry.get_text()), self.plugins_list)
|
||||
+ self.preset.save_preset(preset_entry.get_text(), self.plugins_list)
|
||||
self.clear_dirty()
|
||||
self.win.toast_overlay.add_toast(
|
||||
Adw.Toast(title=_("Preset saved")))
|
||||
diff --git a/gradience/utils/preset.py b/gradience/utils/preset.py
|
||||
index 791ad2c..84bb78f 100644
|
||||
--- a/gradience/utils/preset.py
|
||||
+++ b/gradience/utils/preset.py
|
||||
@@ -32,13 +32,19 @@ presets_dir = os.path.join(
|
||||
class Preset:
|
||||
variables = {}
|
||||
palette = {}
|
||||
+
|
||||
custom_css = {
|
||||
"gtk4": "",
|
||||
"gtk3": "",
|
||||
}
|
||||
+
|
||||
plugins = {}
|
||||
+
|
||||
repo = "user"
|
||||
- name = "new_preset"
|
||||
+
|
||||
+ display_name = "New Preset"
|
||||
+ filename = "new_preset"
|
||||
+
|
||||
badges = {}
|
||||
|
||||
def __init__(self, name=None, repo=None, preset_path=None, text=None, preset=None):
|
||||
@@ -47,14 +53,13 @@ class Preset:
|
||||
elif preset: # css or dict
|
||||
self.load_preset(preset=preset)
|
||||
else:
|
||||
- self.preset_name = name
|
||||
if name is not None:
|
||||
- self.name = to_slug_case(name)
|
||||
+ self.filename = to_slug_case(name)
|
||||
if repo is not None:
|
||||
self.repo = repo
|
||||
if preset_path is None:
|
||||
self.preset_path = os.path.join(
|
||||
- presets_dir, repo, self.name + ".json")
|
||||
+ presets_dir, repo, self.filename + ".json")
|
||||
else:
|
||||
self.preset_path = preset_path
|
||||
self.load_preset()
|
||||
@@ -69,8 +74,8 @@ class Preset:
|
||||
preset_text = file.read()
|
||||
preset = json.loads(preset_text)
|
||||
|
||||
- self.name = preset["name"]
|
||||
- self.preset_name = to_slug_case(self.name)
|
||||
+ self.display_name = preset["name"]
|
||||
+ self.filename = to_slug_case(self.display_name)
|
||||
self.variables = preset["variables"]
|
||||
self.palette = preset["palette"]
|
||||
|
||||
@@ -88,12 +93,15 @@ class Preset:
|
||||
buglog(error, " -> preset : ", self.preset_path)
|
||||
|
||||
def save_preset(self, name=None, plugins_list=None, to=None):
|
||||
- self.name = name if name else self.name
|
||||
+ self.display_name = name if name else self.display_name
|
||||
+ self.filename = to_slug_case(name) if name else self.filename
|
||||
+
|
||||
if to is None:
|
||||
self.preset_path = os.path.join(
|
||||
- presets_dir, self.repo, self.name + ".json")
|
||||
+ presets_dir, self.repo, self.filename + ".json")
|
||||
else:
|
||||
self.preset_path = to
|
||||
+
|
||||
if not os.path.exists(
|
||||
os.path.join(
|
||||
presets_dir,
|
||||
@@ -107,9 +115,6 @@ class Preset:
|
||||
)
|
||||
)
|
||||
|
||||
- if name is None:
|
||||
- name = self.preset_name
|
||||
-
|
||||
if plugins_list is None:
|
||||
plugins_list = {}
|
||||
else:
|
||||
@@ -121,7 +126,7 @@ class Preset:
|
||||
encoding="utf-8",
|
||||
) as file:
|
||||
object_to_write = {
|
||||
- "name": name,
|
||||
+ "name": self.display_name,
|
||||
"variables": self.variables,
|
||||
"palette": self.palette,
|
||||
"custom_css": self.custom_css,
|
||||
--
|
||||
2.38.0
|
||||
|
|
@ -335,7 +335,7 @@ class GradienceApplication(Adw.Application):
|
|||
self.preset = preset
|
||||
self.is_ready = False
|
||||
buglog(self.preset)
|
||||
self.preset_name = self.preset.preset_name
|
||||
self.preset_name = self.preset.display_name
|
||||
self.variables = self.preset.variables
|
||||
self.palette = self.preset.palette
|
||||
self.custom_css = self.preset.custom_css
|
||||
|
|
|
@ -111,7 +111,7 @@ class GradiencePresetRow(Adw.ExpanderRow):
|
|||
os.path.join(
|
||||
presets_dir,
|
||||
self.prefix,
|
||||
to_slug_case(self.name) + ".json",
|
||||
to_slug_case(to_slug_case(self.name)) + ".json",
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -166,12 +166,12 @@ class GradiencePresetRow(Adw.ExpanderRow):
|
|||
os.path.join(
|
||||
presets_dir,
|
||||
self.prefix,
|
||||
self.preset.name + ".json",
|
||||
to_slug_case(self.preset.filename) + ".json",
|
||||
),
|
||||
os.path.join(
|
||||
presets_dir,
|
||||
self.prefix,
|
||||
self.preset.name + ".json.to_delete",
|
||||
to_slug_case(self.preset.filename) + ".json.to_delete",
|
||||
),
|
||||
)
|
||||
|
||||
|
@ -184,14 +184,19 @@ class GradiencePresetRow(Adw.ExpanderRow):
|
|||
self.delete_preset = True
|
||||
|
||||
def update_value(self):
|
||||
self.preset.preset_name = self.name
|
||||
self.preset.name = to_slug_case(self.name)
|
||||
self.preset.save_preset()
|
||||
print(self.name_entry.get_text())
|
||||
old = self.preset.filename
|
||||
self.preset.save_preset(self.name_entry.get_text())
|
||||
print(os.path.join(
|
||||
presets_dir,
|
||||
self.prefix,
|
||||
to_slug_case(old) + ".json",
|
||||
))
|
||||
os.remove(
|
||||
os.path.join(
|
||||
presets_dir,
|
||||
self.prefix,
|
||||
self.preset.name + ".json",
|
||||
to_slug_case(old) + ".json",
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -200,11 +205,16 @@ class GradiencePresetRow(Adw.ExpanderRow):
|
|||
if self.delete_preset:
|
||||
buglog("delete")
|
||||
try:
|
||||
buglog(os.path.join(
|
||||
presets_dir,
|
||||
self.prefix,
|
||||
to_slug_case(self.preset.filename) + ".json.to_delete",
|
||||
))
|
||||
os.remove(
|
||||
os.path.join(
|
||||
presets_dir,
|
||||
self.prefix,
|
||||
self.preset.name + ".json.to_delete",
|
||||
to_slug_case(self.preset.filename) + ".json.to_delete",
|
||||
)
|
||||
)
|
||||
except Exception as exception:
|
||||
|
@ -221,12 +231,12 @@ class GradiencePresetRow(Adw.ExpanderRow):
|
|||
os.path.join(
|
||||
presets_dir,
|
||||
self.prefix,
|
||||
self.preset.name + ".json.to_delete",
|
||||
to_slug_case(self.preset.filename) + ".json.to_delete",
|
||||
),
|
||||
os.path.join(
|
||||
presets_dir,
|
||||
self.prefix,
|
||||
self.preset.name + ".json",
|
||||
to_slug_case(self.preset.filename) + ".json",
|
||||
),
|
||||
)
|
||||
except Exception as exception:
|
||||
|
|
|
@ -386,7 +386,7 @@ class GradiencePresetWindow(Adw.Window):
|
|||
)
|
||||
)
|
||||
|
||||
buglog(f"custom_presets values: {self.custom_presets.values()}")
|
||||
buglog(f"custom_presets: {self.custom_presets}")
|
||||
|
||||
presets_check = not (
|
||||
len(self.custom_presets["user"]) == 0
|
||||
|
|
|
@ -38,7 +38,8 @@ class Preset:
|
|||
}
|
||||
plugins = {}
|
||||
repo = "user"
|
||||
name = "new_preset"
|
||||
display_name = "New Preset"
|
||||
filename = "new_preset"
|
||||
badges = {}
|
||||
|
||||
def __init__(self, name=None, repo=None, preset_path=None, text=None, preset=None):
|
||||
|
@ -47,14 +48,13 @@ class Preset:
|
|||
elif preset: # css or dict
|
||||
self.load_preset(preset=preset)
|
||||
else:
|
||||
self.preset_name = name
|
||||
if name is not None:
|
||||
self.name = to_slug_case(name)
|
||||
self.filename = to_slug_case(name)
|
||||
if repo is not None:
|
||||
self.repo = repo
|
||||
if preset_path is None:
|
||||
self.preset_path = os.path.join(
|
||||
presets_dir, repo, self.name + ".json")
|
||||
presets_dir, repo, self.filename + ".json")
|
||||
else:
|
||||
self.preset_path = preset_path
|
||||
self.load_preset()
|
||||
|
@ -69,8 +69,8 @@ class Preset:
|
|||
preset_text = file.read()
|
||||
preset = json.loads(preset_text)
|
||||
|
||||
self.name = preset["name"]
|
||||
self.preset_name = to_slug_case(self.name)
|
||||
self.display_name = preset["name"]
|
||||
self.filename = to_slug_case(self.display_name)
|
||||
self.variables = preset["variables"]
|
||||
self.palette = preset["palette"]
|
||||
|
||||
|
@ -88,9 +88,12 @@ class Preset:
|
|||
buglog(error, " -> preset : ", self.preset_path)
|
||||
|
||||
def save_preset(self, name=None, plugins_list=None, to=None):
|
||||
self.display_name = name if name else self.display_name
|
||||
self.filename = to_slug_case(name) if name else self.filename
|
||||
|
||||
if to is None:
|
||||
self.preset_path = os.path.join(
|
||||
presets_dir, self.repo, self.name + ".json")
|
||||
presets_dir, self.repo, self.filename + ".json")
|
||||
else:
|
||||
self.preset_path = to
|
||||
if not os.path.exists(
|
||||
|
@ -106,21 +109,20 @@ class Preset:
|
|||
)
|
||||
)
|
||||
|
||||
if name is None:
|
||||
name = self.preset_name
|
||||
|
||||
if plugins_list is None:
|
||||
plugins_list = {}
|
||||
else:
|
||||
plugins_list = plugins_list.save()
|
||||
|
||||
print(self.preset_path)
|
||||
|
||||
with open(
|
||||
self.preset_path,
|
||||
"w",
|
||||
encoding="utf-8",
|
||||
) as file:
|
||||
object_to_write = {
|
||||
"name": name,
|
||||
"name": self.display_name,
|
||||
"variables": self.variables,
|
||||
"palette": self.palette,
|
||||
"custom_css": self.custom_css,
|
||||
|
|
Loading…
Reference in a new issue