diff --git a/data/io.github.nokse22.minitext.appdata.xml.in b/data/io.github.nokse22.minitext.appdata.xml.in index 1040077..b2a6152 100644 --- a/data/io.github.nokse22.minitext.appdata.xml.in +++ b/data/io.github.nokse22.minitext.appdata.xml.in @@ -7,7 +7,7 @@

A very small and minimalistic text viewer with minimal editing capabilities. Best used with 'Always on Top' and/or 'Always on Visible Workspace'. It doesn't save or load files, just your clipboard. It is meant to be used as a place where to edit text to be pasted.

- Ephemeral text + Ephemeral text edits diff --git a/data/io.github.nokse22.minitext.gschema.xml b/data/io.github.nokse22.minitext.gschema.xml index c2fae20..d1be5dd 100644 --- a/data/io.github.nokse22.minitext.gschema.xml +++ b/data/io.github.nokse22.minitext.gschema.xml @@ -6,6 +6,9 @@ 400 + + + 12 diff --git a/src/main.py b/src/main.py index 6084653..374f526 100644 --- a/src/main.py +++ b/src/main.py @@ -50,6 +50,21 @@ def __init__(self): self.create_action('quit', lambda *_: self.quit(), ['q']) self.create_action('about', self.on_about_action) self.create_action('preferences', self.on_preferences_action) + self.create_action('increase-font', self.on_increase_font_action, ['plus']) + self.create_action('decrease-font', self.on_decrease_font_action, ['minus']) + + def on_increase_font_action(self, widget, _): + size = self.win.settings.get_int('font-size') + self.win.settings.set_int('font-size', size + 1) + self.win.change_font() + print(size + 1) + + def on_decrease_font_action(self, widget, _): + size = self.win.settings.get_int('font-size') + if size > 10: + self.win.settings.set_int('font-size', size - 1) + self.win.change_font() + print(size - 1) def do_activate(self): """Called when the application is activated. @@ -57,10 +72,10 @@ def do_activate(self): We raise the application's main window, creating it if necessary. """ - win = self.props.active_window - if not win: - win = MiniTextWindow(application=self) - win.present() + self.win = self.props.active_window + if not self.win: + self.win = MiniTextWindow(application=self) + self.win.present() def on_about_action(self, widget, _): """Callback for the app.about action.""" diff --git a/src/window.py b/src/window.py index 787de21..9c76649 100644 --- a/src/window.py +++ b/src/window.py @@ -38,6 +38,22 @@ def __init__(self, **kwargs): "window-height", self, "default-height", Gio.SettingsBindFlags.DEFAULT ) + self.change_font() + + def change_font(self): + css_data = f""" + textview {{ + font-size: {self.settings.get_int('font-size')}pt; + }} + """ + + style_provider = Gtk.CssProvider() + style_provider.load_from_data(css_data, -1) + + # Apply the theme to the GTK app + context = self.text_view.get_style_context() + context.add_provider(style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION) + @Gtk.Template.Callback("on_copy_action") def on_copy_action(self, *args): print("copy") diff --git a/src/window.ui b/src/window.ui index a2c4f6e..1d5e42c 100644 --- a/src/window.ui +++ b/src/window.ui @@ -3,8 +3,6 @@