self.url_cost = 23
self.language = "en" # FIXME: find a better default from somewhere
+ self.content_warning = ""
def render(self):
y = 0
}
if self.reply_id is not None:
params["in_reply_to_id"] = self.reply_id
+ if self.content_warning != "":
+ params["sensitive"] = True
+ params["spoiler_text"] = self.content_warning
if self.cc.readonly:
print("post", file=sys.stderr)
for key, value in params.items():
self.items.append(text.MenuKeypressLine(
'A', text.ColouredString("Re-edit post")))
self.items.append(text.BlankLine())
+ cw = ('none' if self.composer.content_warning == ''
+ else f"'{self.composer.content_warning}'")
+ self.items.append(text.MenuKeypressLine(
+ 'W', text.ColouredString("Content warning: " + cw)))
self.items.append(text.MenuKeypressLine(
'L', text.ColouredString(f"Language: '{self.composer.language}'")))
self.renormalise()
self.composer.language = lang
self.refresh_items()
+ def set_content_warning(self, cw):
+ self.composer.content_warning = cw
+ self.refresh_items()
+
def handle_key(self, ch):
if ch in {'q', 'Q'}:
self.cc.composer = None
self.push_to(BottomLinePrompt(
self.cc, self.set_language, "Language tag for post: ",
self.composer.language))
+ elif ch in {'w', 'W'}:
+ self.push_to(BottomLinePrompt(
+ self.cc, self.set_content_warning, "Content warning: ",
+ self.composer.content_warning))
elif ch in {' '}:
self.composer.post()
self.cc.composer = None