From ddcf76df472f1e5be86d838ef7468bbf4e4e2630 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gon=C3=A7alo=20Silva?= Date: Sat, 20 Apr 2019 05:09:02 +0100 Subject: [PATCH] Set text view padding in Python instead of CSS Otherwise scrolling calculations will be slightly offset, as the CSS padding is added *on top* of any other margin. --- data/media/css/gtk/base.css | 2 -- uberwriter/text_view.py | 8 +++----- uberwriter/window.py | 8 ++++---- 3 files changed, 7 insertions(+), 11 deletions(-) diff --git a/data/media/css/gtk/base.css b/data/media/css/gtk/base.css index cd3d5a9..ff0736d 100644 --- a/data/media/css/gtk/base.css +++ b/data/media/css/gtk/base.css @@ -31,8 +31,6 @@ .uberwriter-window .uberwriter-editor { font-family: 'Fira Mono', monospace; font-size: 16px; - padding-top: 80px; - padding-bottom: 16px; } .uberwriter-window.small .uberwriter-editor { diff --git a/uberwriter/text_view.py b/uberwriter/text_view.py index df945df..006c253 100644 --- a/uberwriter/text_view.py +++ b/uberwriter/text_view.py @@ -84,8 +84,6 @@ class TextView(Gtk.TextView): # Focus mode self.focus_mode = False - self.original_top_margin = self.props.top_margin - self.original_bottom_margin = self.props.bottom_margin self.connect('button-release-event', self.on_button_release_event) # Hemingway mode @@ -127,8 +125,8 @@ class TextView(Gtk.TextView): self.props.top_margin = height / 2 self.props.bottom_margin = height / 2 else: - self.props.top_margin = self.original_top_margin - self.props.bottom_margin = self.original_bottom_margin + self.props.top_margin = 80 + self.props.bottom_margin = 64 def on_button_release_event(self, _widget, _event): if self.focus_mode: @@ -159,7 +157,7 @@ class TextView(Gtk.TextView): If mark is unspecified, the cursor is used.""" - margin = 80 + margin = 32 scrolled_window = self.get_ancestor(Gtk.ScrolledWindow.__gtype__) if not scrolled_window: return diff --git a/uberwriter/window.py b/uberwriter/window.py index 8274b12..271fc82 100644 --- a/uberwriter/window.py +++ b/uberwriter/window.py @@ -701,7 +701,7 @@ class Window(Gtk.ApplicationWindow): """ bg_color = self.get_style_context().get_background_color(Gtk.StateFlags.ACTIVE) - lg_top = cairo.LinearGradient(0, 0, 0, 35) # pylint: disable=no-member + lg_top = cairo.LinearGradient(0, 0, 0, 32) # pylint: disable=no-member lg_top.add_color_stop_rgba( 0, bg_color.red, bg_color.green, bg_color.blue, 1) lg_top.add_color_stop_rgba( @@ -710,12 +710,12 @@ class Window(Gtk.ApplicationWindow): width = self.scrolled_window.get_allocation().width height = self.scrolled_window.get_allocation().height - cr.rectangle(0, 0, width, 35) + cr.rectangle(0, 0, width, 32) cr.set_source(lg_top) cr.fill() - cr.rectangle(0, height - 35, width, height) + cr.rectangle(0, height - 32, width, height) - lg_btm = cairo.LinearGradient(0, height - 35, 0, height) # pylint: disable=no-member + lg_btm = cairo.LinearGradient(0, height - 32, 0, height) # pylint: disable=no-member lg_btm.add_color_stop_rgba( 1, bg_color.red, bg_color.green, bg_color.blue, 1) lg_btm.add_color_stop_rgba(