Refactor y eliminar patrones raros.

This commit is contained in:
Jesús Pavón Abián
2026-02-01 20:40:09 +01:00
parent 0d8395c6fc
commit 6f0514fd6a
29 changed files with 583 additions and 127 deletions

View File

@@ -35,6 +35,7 @@ class Handler(object):
compose=_("&Post"),
reply=_("Re&ply"),
share=_("&Boost"),
quote=_("&Quote"),
fav=_("&Add to favorites"),
unfav=_("Remove from favorites"),
view=_("&Show post"),
@@ -92,6 +93,8 @@ class Handler(object):
pub.sendMessage("createBuffer", buffer_type="UserBuffer", session_type=session.type, buffer_title=_("Blocked users"), parent_tab=root_position, start=False, kwargs=dict(parent=controller.view.nb, compose_func="compose_user", function="blocks", name="blocked", sessionObject=session, account=name))
elif i == 'notifications':
pub.sendMessage("createBuffer", buffer_type="NotificationsBuffer", session_type=session.type, buffer_title=_("Notifications"), parent_tab=root_position, start=False, kwargs=dict(parent=controller.view.nb, compose_func="compose_notification", function="notifications", name="notifications", sessionObject=session, account=name))
elif i == 'announcements':
pub.sendMessage("createBuffer", buffer_type="AnnouncementsBuffer", session_type=session.type, buffer_title=_("Announcements"), parent_tab=root_position, start=False, kwargs=dict(parent=controller.view.nb, function="announcements", name="announcements", sessionObject=session, account=name, sound="new_event.ogg"))
pub.sendMessage("createBuffer", buffer_type="EmptyBuffer", session_type="base", buffer_title=_("Timelines"), parent_tab=root_position, start=False, kwargs=dict(parent=controller.view.nb, name="timelines", account=name))
timelines_position =controller.view.search("timelines", name)
for i in session.settings["other_buffers"]["timelines"]:

View File

@@ -10,7 +10,7 @@ import languageHandler
from twitter_text import parse_tweet, config
from mastodon import MastodonError
from controller import messages
from sessions.mastodon import templates
from sessions.mastodon import templates, utils
from wxUI.dialogs.mastodon import postDialogs
from extra.autocompletionUsers import completion
from . import userList
@@ -282,10 +282,7 @@ class editPost(post):
# Extract text from post
if item.reblog != None:
item = item.reblog
text = item.content
# Remove HTML tags from content
import re
text = re.sub('<[^<]+?>', '', text)
text = utils.html_filter(item.content)
# Initialize parent class
super(editPost, self).__init__(session, title, caption, text=text, *args, **kwargs)
# Store the post ID for editing

View File

@@ -52,10 +52,12 @@ class accountSettingsController(globalSettingsController):
post_template = self.config["templates"]["post"]
conversation_template = self.config["templates"]["conversation"]
person_template = self.config["templates"]["person"]
self.dialog.create_templates(post_template=post_template, conversation_template=conversation_template, person_template=person_template)
announcement_template = self.config.get("templates", {}).get("announcement", "$text. Published $published_at. $read")
self.dialog.create_templates(post_template=post_template, conversation_template=conversation_template, person_template=person_template, announcement_template=announcement_template)
widgetUtils.connect_event(self.dialog.templates.post, widgetUtils.BUTTON_PRESSED, self.edit_post_template)
widgetUtils.connect_event(self.dialog.templates.conversation, widgetUtils.BUTTON_PRESSED, self.edit_conversation_template)
widgetUtils.connect_event(self.dialog.templates.person, widgetUtils.BUTTON_PRESSED, self.edit_person_template)
widgetUtils.connect_event(self.dialog.templates.announcement, widgetUtils.BUTTON_PRESSED, self.edit_announcement_template)
self.dialog.create_other_buffers()
buffer_values = self.get_buffers_list()
self.dialog.buffers.insert_buffers(buffer_values)
@@ -109,6 +111,15 @@ class accountSettingsController(globalSettingsController):
self.config.write()
self.dialog.templates.person.SetLabel(_("Edit template for persons. Current template: {}").format(result))
def edit_announcement_template(self, *args, **kwargs):
template = self.config.get("templates", {}).get("announcement", "$text. Published $published_at. $read")
control = EditTemplate(template=template, type="announcement")
result = control.run_dialog()
if result != "": # Template has been saved.
self.config["templates"]["announcement"] = result
self.config.write()
self.dialog.templates.announcement.SetLabel(_("Edit template for announcements. Current template: {}").format(result))
def save_configuration(self):
if self.config["general"]["relative_times"] != self.dialog.get_value("general", "relative_time"):
self.needs_restart = True
@@ -204,6 +215,7 @@ class accountSettingsController(globalSettingsController):
all_buffers['blocked']=_("Blocked users")
all_buffers['muted']=_("Muted users")
all_buffers['notifications']=_("Notifications")
all_buffers['announcements']=_("Announcements")
list_buffers = []
hidden_buffers=[]
all_buffers_keys = list(all_buffers.keys())

View File

@@ -2,7 +2,7 @@
import re
import wx
from typing import List
from sessions.mastodon.templates import post_variables, conversation_variables, person_variables
from sessions.mastodon.templates import post_variables, conversation_variables, person_variables, announcement_variables
from wxUI.dialogs import templateDialogs
class EditTemplate(object):
@@ -13,6 +13,8 @@ class EditTemplate(object):
self.variables = post_variables
elif type == "conversation":
self.variables = conversation_variables
elif type == "announcement":
self.variables = announcement_variables
else:
self.variables = person_variables
self.template: str = template