Clone in a terminal:
Commit bb8d683
Johan Mattsson - 2016-10-09T11:42:32+00:00
bb8d6832e9234f5ac08e746c050a56916bf8442cjohan.mattsson.m@gmail.com

Merge branch '2.x' of github.com:johanmattssonm/birdfont into 2.x Version 2.16.12

Changed files (23)

Diff

diff --git a/.travis.yml b/.travis.ymldeleted file mode 100644index a450af4..0000000--- a/.travis.yml+++ /dev/null@@ -1,18 +0,0 @@-dist: trusty--script:-  - sudo add-apt-repository ppa:vala-team/ppa -y-  - sudo add-apt-repository ppa:birdfont-team/birdfont -y-  - sudo apt-get update -qq-  - sudo apt-get install -qq libglib2.0-dev-  - sudo apt-get install -qq libgtk-3-dev-  - sudo apt-get install -qq libsqlite3-dev-  - sudo apt-get install -qq libxmlbird-dev-  - sudo apt-get install -qq libgee-dev -  - sudo apt-get install -qq libnotify-dev-  - sudo apt-get install -qq valac-0.30-  - sudo apt-get install -qq python3-  - sudo apt-get install -qq libwebkit2gtk-3.0-dev--  - python3 ./configure --nonnull-  - python3 ./scripts/linux_build.pydiff --git a/NEWS b/NEWSindex fafcd2c..81e5bc7 100644--- a/NEWS+++ b/NEWS@@ -1,3 +1,10 @@+birdfont (2.16.9) stable;++  * RTL (right-to-left) writing in kerning tab+  * Bug fixes++ -- Johan Mattsson <johan.mattsson.m@gmail.com>  lör  1 okt 2016 09:38:00 CEST+ birdfont (2.16.0) stable;    * New freehand tooldiff --git a/README.md b/README.mdindex 482166d..296baa3 100644--- a/README.md+++ b/README.md@@ -10,9 +10,6 @@ export SVG, EOT and TTF fonts.     Webpage: http://birdfont.org     Bugtracker: http://birdfont.org/bugtracker/my_view_page.php -[![Build Status](https://travis-ci.org/johanmattssonm/birdfont.svg)]-(https://travis-ci.org/johanmattssonm/birdfont)- ## Building from Source  Install vala and all required libraries, they are most likely indiff --git a/birdfont/GtkWindow.vala b/birdfont/GtkWindow.valaindex 6b75d22..5dad039 100644--- a/birdfont/GtkWindow.vala+++ b/birdfont/GtkWindow.vala@@ -41,15 +41,11 @@ public class GtkWindow : Gtk.Window, NativeWindow { 	string clipboard_svg = ""; 	string inkscape_clipboard = ""; 	-	Scrollbar scrollbar;-	bool scrollbar_supress_signal = false;-	 	ToolboxCanvas toolbox; 	 	Task background_task = new Task(idle); 	 	public GtkWindow (string title) {-		scrollbar = new Scrollbar (Orientation.VERTICAL, new Adjustment (0, 0, 1, 1, 0.01, 0.1)); 		((Gtk.Window)this).set_title ("BirdFont"); 	} 	@@ -61,16 +57,6 @@ public class GtkWindow : Gtk.Window, NativeWindow { 		Signal.connect(this, "notify::is-active", (GLib.Callback) window_focus, null);  		clipboard = Clipboard.get_for_display (get_display (), Gdk.SELECTION_CLIPBOARD);--		scrollbar.value_changed.connect (() => {-			double p;-			-			if (!scrollbar_supress_signal) {-				p = scrollbar.get_value () / (1 - scrollbar.adjustment.page_size);-				FontDisplay display = MainWindow.get_current_display ();-				display.scroll_to (p);-			}-		}); 		 		delete_event.connect (() => { 			MenuTab.quit ();@@ -91,8 +77,6 @@ public class GtkWindow : Gtk.Window, NativeWindow { 			string html = ""; 			FontDisplay fd = tab.get_display (); 			-			scrollbar.set_visible (fd.has_scrollbar ());-			 			if (fd.get_name () == "Preview") { 				uri = Preview.get_uri (); 				html = Preview.get_html_with_absolute_paths ();@@ -123,9 +107,8 @@ public class GtkWindow : Gtk.Window, NativeWindow { 		canvas_box = new Box (Orientation.HORIZONTAL, 0); 		canvas_box.pack_start (glyph_canvas_area, true, true, 0); 		canvas_box.pack_start (html_box, true, true, 0);-		canvas_box.pack_start (scrollbar, false, true, 0);-		tab_box = new Box (Orientation.VERTICAL, 0); 		+		tab_box = new Box (Orientation.VERTICAL, 0);		 		tab_box.pack_start (new TabbarCanvas (MainWindow.get_tab_bar ()), false, false, 0); 		tab_box.pack_start (canvas_box, true, true, 0); @@ -159,9 +142,7 @@ public class GtkWindow : Gtk.Window, NativeWindow { 		size_allocate.connect(() => { 			GlyphCanvas.redraw (); 		});-		-		scrollbar.set_visible (false);-	+ 		show_all ();  		MainWindow.open_recent_files_tab ();		@@ -202,17 +183,6 @@ public class GtkWindow : Gtk.Window, NativeWindow { 		set_title (@"$(f.full_name)"); 	} -	public void set_scrollbar_size (double size) {-		scrollbar.adjustment.page_size = size;		-		scrollbar.set_visible (size != 0);-	}-	-	public void set_scrollbar_position (double position) {-		scrollbar_supress_signal = true;-		scrollbar.adjustment.value = position * (1 - scrollbar.adjustment.page_size);-		scrollbar_supress_signal = false;-	}- 	public void dump_clipboard_content (Clipboard clipboard, SelectionData selection_data) { 		string d; 		return_if_fail (!is_null (selection_data));diff --git a/configure b/configureindex 5f1440e..fa92e50 100755--- a/configure+++ b/configure@@ -78,7 +78,7 @@ def configure(gtk, libbgee, valac): 				'gio-2.0',  				'glib-2.0',  				'gtk+-3.0',-				'webkit2gtk-3.0', +				'webkit2gtk-4.0',  				'libsoup-2.4', 				'libnotify', 				'sqlite3',diff --git a/dodo.py b/dodo.pyindex 0e84e30..3631c49 100644--- a/dodo.py+++ b/dodo.py@@ -75,7 +75,7 @@ def make_birdfont(target_binary, deps): 		--pkg cairo \ 		--pkg libsoup-2.4 \ 		--pkg gdk-pixbuf-2.0 \-		--pkg webkit2gtk-3.0 \+		--pkg webkit2gtk-4.0 \ 		--pkg libnotify \ 		--pkg xmlbird \ 		--pkg libbirdfont@@ -91,7 +91,7 @@ def make_birdfont(target_binary, deps): 		$(pkg-config --cflags cairo) \ 		$(pkg-config --cflags glib-2.0) \ 		$(pkg-config --cflags gdk-pixbuf-2.0) \-		$(pkg-config --cflags webkit2gtk-3.0) \+		$(pkg-config --cflags webkit2gtk-4.0) \ 		$(pkg-config --cflags libnotify) \         -o OBJECT_FILE"""         @@ -104,7 +104,7 @@ def make_birdfont(target_binary, deps): 		$(pkg-config --libs cairo) \ 		$(pkg-config --libs glib-2.0) \ 		$(pkg-config --libs gdk-pixbuf-2.0) \-		$(pkg-config --libs webkit2gtk-3.0) \+		$(pkg-config --libs webkit2gtk-4.0) \ 		$(pkg-config --libs xmlbird) \ 		$(pkg-config --libs libnotify) \ 		-L./build -L./build/bin -l birdgems\diff --git a/libbirdfont/BirdFont.vala b/libbirdfont/BirdFont.valaindex 522994c..6870a2b 100644--- a/libbirdfont/BirdFont.vala+++ b/libbirdfont/BirdFont.vala@@ -176,7 +176,6 @@ public class BirdFont { 		Theme.set_default_colors ();  		if (theme_version == "" || int.parse (theme_version) < default_theme_version) {- 			Theme.load_theme ("dark.theme"); 			Preferences.set ("theme", "dark.theme"); 		} else {diff --git a/libbirdfont/CharDatabase.vala b/libbirdfont/CharDatabase.valaindex 3646e5d..5416c13 100644--- a/libbirdfont/CharDatabase.vala+++ b/libbirdfont/CharDatabase.vala@@ -33,7 +33,7 @@ public class CharDatabase { 	 	public static void open_database () { 		File f = get_database_file ();-		int rc = Database.open ((!) f.get_path (), out database);+		int rc = Database.open_v2 ((!) f.get_path (), out database, OPEN_READONLY);  		db = (!) database; diff --git a/libbirdfont/CharDatabaseParser.vala b/libbirdfont/CharDatabaseParser.valaindex 5add4b9..5da463f 100644--- a/libbirdfont/CharDatabaseParser.vala+++ b/libbirdfont/CharDatabaseParser.vala@@ -46,7 +46,7 @@ public class CharDatabaseParser : GLib.Object { 				f.delete (); 			} 			-			open_database ();+			open_database (OPEN_READWRITE); 			create_tables (); 			parse_all_entries (); 		} catch (GLib.Error e) {@@ -54,9 +54,9 @@ public class CharDatabaseParser : GLib.Object { 		} 	} 	-	public void open_database () {+	public void open_database (int access_mode) { 		File f = get_database_file ();-		int rc = Database.open ((!) f.get_path (), out database);+		int rc = Database.open_v2 ((!) f.get_path (), out database, access_mode);  		db = (!) database; diff --git a/libbirdfont/EditPoint.vala b/libbirdfont/EditPoint.valaindex 4a41cb8..f8bcca7 100644--- a/libbirdfont/EditPoint.vala+++ b/libbirdfont/EditPoint.vala@@ -219,6 +219,12 @@ public class EditPoint : GLib.Object { 	/** Make handles symmetrical. */ 	public void set_reflective_handles (bool symmetrical) { 		reflective_point = symmetrical;+		+		if (symmetrical) {+			get_left_handle ().convert_to_curve ();+			get_right_handle ().convert_to_curve ();+			process_tied_handle ();+		} 	}  	/** Flip handles if next point on path is in the other direction. @@ -288,7 +294,6 @@ public class EditPoint : GLib.Object { 		} 	} -	/** This can only be performed if the path has been closed. */ 	public void process_tied_handle ()  	requires (next != null && prev != null) { 		double a, b, c, length, angle;diff --git a/libbirdfont/EmptyTab.vala b/libbirdfont/EmptyTab.valaindex 498260b..ea59ddd 100644--- a/libbirdfont/EmptyTab.vala+++ b/libbirdfont/EmptyTab.vala@@ -40,7 +40,7 @@ public class EmptyTab : FontDisplay { 		cr.rectangle (0, 0, allocation.width, allocation.height); 		cr.fill (); 		cr.restore ();-	}	+	} }  }diff --git a/libbirdfont/Glyph.vala b/libbirdfont/Glyph.valaindex f7328ea..02cd13f 100644--- a/libbirdfont/Glyph.vala+++ b/libbirdfont/Glyph.vala@@ -441,7 +441,7 @@ public class Glyph : FontDisplay { 			} 		} -		redraw_area (0, 0, allocation.width, allocation.height);+		GlyphCanvas.redraw (); 	}  	public virtual void add_path (Path p) {@@ -474,7 +474,7 @@ public class Glyph : FontDisplay { 		GridTool.update_lines ();  		if (!is_null (MainWindow.native_window)) {-			MainWindow.native_window.set_scrollbar_size (0);+			MainWindow.scrollbar.set_size (0); 		}  		update_zoom_bar ();diff --git a/libbirdfont/GlyphCanvas.vala b/libbirdfont/GlyphCanvas.valaindex e29f18b..b6fbb40 100644--- a/libbirdfont/GlyphCanvas.vala+++ b/libbirdfont/GlyphCanvas.vala@@ -84,14 +84,15 @@ public class GlyphCanvas : GLib.Object { 		if (MenuTab.has_suppress_event ()) {
 			warning ("Do not call redraw from background thread.");
 		} else {
-			signal_redraw_area (x, y, w, h);
+			signal_redraw_area (x, y, w + (int) MainWindow.scrollbar.width, h);
 		}
 	}
 	
 	public static void redraw () {
 		GlyphCanvas c = MainWindow.get_glyph_canvas ();
-		if (!is_null (c)) {
-			c.redraw_area (0, 0, allocation.width, allocation.height);
+		if (!is_null (c) && !is_null (MainWindow.scrollbar)) {+			int w = (int) (allocation.width + MainWindow.scrollbar.width);
+			c.redraw_area (0, 0, w, allocation.height);
 		}
 	}
 }
diff --git a/libbirdfont/MainWindow.vala b/libbirdfont/MainWindow.valaindex c6b38f2..bb2747a 100644--- a/libbirdfont/MainWindow.vala+++ b/libbirdfont/MainWindow.vala@@ -32,6 +32,7 @@ public class MainWindow : GLib.Object { 	public static Dialog dialog;
 	public static SpacingTab spacing_tab;
 	public static Task blocking_background_task;
+	public static Scrollbar scrollbar; 	
 	/** Number of pixels per mm */
 	public static double units = 1;
@@ -55,10 +56,15 @@ public class MainWindow : GLib.Object { 		dialog = new Dialog ();
 		spacing_tab = new SpacingTab ();
 		blocking_background_task = new Task (null);
+		scrollbar = new Scrollbar ();		 		
 		tools.select_tool (DrawingTools.bezier_tool);
 	}
-
++	public static bool has_scrollbar () {+		return scrollbar.is_visible ();+	}	+	
 	public static void abort_task () {
 		blocking_background_task.cancel ();
 	}
@@ -243,26 +249,26 @@ public class MainWindow : GLib.Object { 	
 	public static void hide_scrollbar () {
 		if (!is_null (MainWindow.native_window)) {
-			MainWindow.native_window.set_scrollbar_size (-1);
+			MainWindow.scrollbar.set_size (-1);
 		}
 	}	
 
 	public static void show_scrollbar () {
 		if (!is_null (MainWindow.native_window)) {
-			MainWindow.native_window.set_scrollbar_size (scrollbar_size);
+			MainWindow.scrollbar.set_size (scrollbar_size);
 		}
 	}
 	
 	public static void set_scrollbar_size (double size) {
 		if (!is_null (MainWindow.native_window)) {
 			scrollbar_size = size;
-			MainWindow.native_window.set_scrollbar_size (size);
+			MainWindow.scrollbar.set_size (size);
 		}
 	}
 	
 	public static void set_scrollbar_position (double position) {
 		if (!is_null (MainWindow.native_window)) {
-			MainWindow.native_window.set_scrollbar_position (position);
+			MainWindow.scrollbar.set_position (position);
 		}
 	}
 		
diff --git a/libbirdfont/NativeWindow.vala b/libbirdfont/NativeWindow.valaindex 314d035..017d973 100644--- a/libbirdfont/NativeWindow.vala+++ b/libbirdfont/NativeWindow.vala@@ -27,9 +27,6 @@ public interface NativeWindow : GLib.Object { 	public abstract void set_clipboard (string data); 	public abstract void set_inkscape_clipboard (string data); -	public abstract void set_scrollbar_size (double size);-	public abstract void set_scrollbar_position (double position);-	 	/** Notify the UI about the new font. */ 	public abstract void font_loaded (); diff --git a/libbirdfont/OpenFontFormat/CodePageBits.vala b/libbirdfont/OpenFontFormat/CodePageBits.valaindex c079e44..88abe99 100644--- a/libbirdfont/OpenFontFormat/CodePageBits.vala+++ b/libbirdfont/OpenFontFormat/CodePageBits.vala@@ -28,7 +28,7 @@ public class CodePageBits : GLib.Object { 		 	public CodePageBits () { 		if (database == null) {-			open_database (get_database_file ());+			open_database (get_database_file (), OPEN_READONLY); 		} 	} @@ -192,7 +192,7 @@ public class CodePageBits : GLib.Object { 				f.delete (); 			} 			-			open_database (f);+			open_database (f, OPEN_READWRITE); 			create_tables (); 		 			default_range = new PageBit (-1, "null-");@@ -242,8 +242,8 @@ public class CodePageBits : GLib.Object { 		} 	} 	-	void open_database (File db_file) {-		int rc = Database.open ((!) db_file.get_path (), out database);+	void open_database (File db_file, int access) {+		int rc = Database.open_v2 ((!) db_file.get_path (), out database, access);  		db = (!) database; @@ -333,3 +333,4 @@ public class CodePageBits : GLib.Object { }  }+ \ No newline at end of filediff --git a/libbirdfont/PenTool.vala b/libbirdfont/PenTool.valaindex 2c2c5e7..36acc33 100644--- a/libbirdfont/PenTool.vala+++ b/libbirdfont/PenTool.vala@@ -1240,7 +1240,7 @@ public class PenTool : Tool { 				} 				 				// alt+click creates a point with symmetrical handles-				if (KeyBindings.has_alt () || KeyBindings.has_ctrl ()) {+				if (KeyBindings.has_alt () || KeyBindings.has_ctrl ()) {							 					selected_point.set_reflective_handles (true); 					selected_point.get_right_handle ().process_symmetrical_handle (); 					GlyphCanvas.redraw ();diff --git a/libbirdfont/RecentFiles.vala b/libbirdfont/RecentFiles.valaindex b80d7fc..0377d27 100644--- a/libbirdfont/RecentFiles.vala+++ b/libbirdfont/RecentFiles.vala@@ -42,12 +42,16 @@ public class RecentFiles : Table { 		} else if (row.get_index () == RECENT_FONT) { 			return_if_fail (row.get_row_data () is Font); 			f = (Font) row.get_row_data ();+			MainWindow.scrollbar.set_size (0);+			GlyphCanvas.redraw (); 			load_font (f.get_path ()); 		} else if (row.get_index () == BACKUP) { 			return_if_fail (row.get_row_data () is Font); 			f = (Font) row.get_row_data (); 			delete_backup (f.get_file_name ()); 		}++		GlyphCanvas.redraw (); 	}  	public override void update_rows () {diff --git a/libbirdfont/Scrollbar.vala b/libbirdfont/Scrollbar.valanew file mode 100644index 0000000..afcb34f--- /dev/null+++ b/libbirdfont/Scrollbar.vala@@ -0,0 +1,155 @@+/*
+	Copyright (C) 2016 Johan Mattsson
+
+	This library is free software; you can redistribute it and/or modify 
+	it under the terms of the GNU Lesser General Public License as 
+	published by the Free Software Foundation; either version 3 of the 
+	License, or (at your option) any later version.
+
+	This library is distributed in the hope that it will be useful, but 
+	WITHOUT ANY WARRANTY; without even the implied warranty of 
+	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 
+	Lesser General Public License for more details.
+*/
++using Cairo;+
+namespace BirdFont {
+
+public class Scrollbar : GLib.Object {++	public double position = 1;+	public double size = 1;+	public double width = 0;+	public double left_x = 0;+	public double height = 0;+	public double corner = 0;+	public double scroll_max = 1;+	public double margin = 0;++	public double motion_x = 0;+	public double motion_y = 0;+	public bool move = false;++	public Scrollbar () {	+	}++	public bool button_press (uint button, double x, double y) {+		if (!is_visible ()) {+			return false;+		}+		+		double h = height * position * scroll_max;+	+		if (left_x < x < left_x + width &&+			 h - corner < y < h + height * size + corner + 2 * margin) {+			 	+			motion_x = x;+			motion_y = y;+			+			move = true;+		}+		+		return left_x < x < left_x + width && 0 < size < 1;+	}++	public bool button_release (uint button, double x, double y) {+		if (!is_visible ()) {+			return false;+		}+		+		if (move) {+			move = false;+			return true;+		} else if (left_x < x < left_x + width) {+			double h = height * position * scroll_max;+			+			if (y > h + size * height) {+				position += size;+			} +			+			if (y < h) {+				position -= size;+			}+			+			if (position > 1) {+				position = 1;+			} else if (position < 0) {+				position = 0;			+			}+			+			TabContent.scroll_to (position);+			GlyphCanvas.redraw ();+			return true;+		}+		+		return false;+	}+	++	public bool motion (double x, double y) {+		if (!move || !is_visible ()) {+			return false;	+		}++		double p = (y - motion_y) / (height - size * height);+		position += p;++		if (position > 1) {+			position = 1;+		} else if (position < 0) {+			position = 0;			+		}++		TabContent.scroll_to (position);		++		GlyphCanvas.redraw ();+		+		motion_y = y;+		motion_x = x;++		return false;+	}+	+	public void draw (Context cr, WidgetAllocation content_allocation, double width) {+		if (!is_visible ()) {+			return;+		}		+		+		cr.save ();++		this.width = width;		+		this.left_x = content_allocation.width;+		this.height = content_allocation.height;+		this.corner = 4 * Screen.get_scale ();+		this.scroll_max = 1 - size - 2 * corner / height;+		this.margin = 2 * Screen.get_scale ();+				+		Theme.color (cr, "Table Background 1");	+		cr.rectangle (left_x, 0, width, height);		+		cr.fill ();		++		Theme.color (cr, "Tool Foreground");+		double h = height * position * scroll_max;+		+		Widget.draw_rounded_rectangle (cr, left_x + margin, h, width - 2 * margin, height * size + 2 * margin, corner);			+		cr.fill ();+		+		cr.restore ();+	}+	+	public bool is_visible () {+		return 0 < size < 1;+	}++	public void set_size (double size) {+		this.size = size; +	}++	public void set_position (double position) {+		this.position = position;+	}+}++}+ \ No newline at end of filediff --git a/libbirdfont/TabBar.vala b/libbirdfont/TabBar.valaindex e78f226..e086df3 100644--- a/libbirdfont/TabBar.vala+++ b/libbirdfont/TabBar.vala@@ -677,11 +677,13 @@ public class TabBar : GLib.Object { 				Theme.text_color (wheel, "Highlighted 1"); 			} 			+			wheel.set_font_size (progress_size);+			 			double middley = h / 2; 			double middlex = w - (wheel.get_sidebearing_extent () / 2) / scale;-			wheel.set_font_size (progress_size);+			 			wheel.widget_x = middlex;-			wheel.widget_y = middley;+			wheel.widget_y = middley;			 			 			cr.save (); 			if (!has_stop_button ()) {diff --git a/libbirdfont/TabContent.vala b/libbirdfont/TabContent.valaindex 56d9f65..d21c8fa 100644--- a/libbirdfont/TabContent.vala+++ b/libbirdfont/TabContent.vala@@ -72,6 +72,11 @@ public class TabContent : GLib.Object { 	public static void draw (WidgetAllocation allocation, Context cr) { 		AbstractMenu menu; 		Dialog dialog;+		double scollbar_width = 10 * Screen.get_scale ();+		+		if (MainWindow.has_scrollbar()) {+			allocation.width -= (int) scollbar_width;+		}  		if (unlikely (MenuTab.has_suppress_event ())) { 			cr.save ();@@ -110,6 +115,10 @@ public class TabContent : GLib.Object { 			if (text_input_visible) { 				draw_text_input (allocation, cr); 			}++			if (MainWindow.has_scrollbar()) {+				MainWindow.scrollbar.draw (cr, allocation, scollbar_width);+			} 		} 	} @@ -123,6 +132,10 @@ public class TabContent : GLib.Object { 		}  		alloc = GlyphCanvas.get_allocation ();+		+		double scollbar_width = 10 * Screen.get_scale ();+		alloc.width += (int) scollbar_width;+		 		pause_surface = Screen.create_background_surface (alloc.width, alloc.height); 		cr = new Context ((!) pause_surface); 		cr.scale (Screen.get_scale (), Screen.get_scale ());@@ -182,7 +195,11 @@ public class TabContent : GLib.Object { 		}  		if (!text_input_visible) {-			GlyphCanvas.current_display.motion_notify (x, y);+			bool consumed = MainWindow.scrollbar.motion (x, y);+			+			if (!consumed) {+				GlyphCanvas.current_display.motion_notify (x, y);+			} 		} else { 			text_input.motion (x, y); 			GlyphCanvas.redraw ();@@ -206,7 +223,11 @@ public class TabContent : GLib.Object { 			text_input.button_release (button, x, y); 			GlyphCanvas.redraw (); 		} else {-			GlyphCanvas.current_display.button_release (button, x, y);+			bool consumed = MainWindow.scrollbar.button_release (button, x, y);+						+			if (!consumed) {			+				GlyphCanvas.current_display.button_release (button, x, y);+			} 		} 	} @@ -228,7 +249,11 @@ public class TabContent : GLib.Object { 					hide_text_input (); 				} 			} else {-				GlyphCanvas.current_display.button_press (button, x, y);+				bool consumed = MainWindow.scrollbar.button_press (button, x, y);+				+				if (!consumed) { +					GlyphCanvas.current_display.button_press (button, x, y);+				} 			} 		} 	}diff --git a/libbirdfont/Theme.vala b/libbirdfont/Theme.valaindex b83b5c6..12cd082 100644--- a/libbirdfont/Theme.vala+++ b/libbirdfont/Theme.vala@@ -1,5 +1,5 @@ /*-	Copyright (C) 2015 Johan Mattsson+	Copyright (C) 2015 2016 Johan Mattsson  	This library is free software; you can redistribute it and/or modify  	it under the terms of the GNU Lesser General Public License as @@ -111,8 +111,7 @@ public class Theme : GLib.Object { 		Theme.set_default_color ("Default Background", 238 / 255.0, 239 / 255.0, 243 / 255.0, 1); 		Theme.set_default_color ("Headline Background", 110 / 255.0, 113 / 255.0, 130 / 255.0, 1); 		-		Theme.set_default_color ("Checkbox Background", 255 / 255.0, 255 / 255.0, 255 / 255.0, 1);-		+		Theme.set_default_color ("Checkbox Background", 255 / 255.0, 255 / 255.0, 255 / 255.0, 1);				 		Theme.set_default_color ("Foreground 1", 0, 0, 0, 1); 		 		Theme.set_default_color ("Text Foreground", 3 / 255.0, 16 / 255.0, 24 / 255.0, 1);@@ -324,7 +323,6 @@ public class Theme : GLib.Object { 		Theme.set_default_color ("Headline Background", 0, 0, 0, 1); 		 		Theme.set_default_color ("Checkbox Background", 1, 1, 1, 1);-		 		Theme.set_default_color ("Foreground 1", 0, 0, 0, 1); 		 		Theme.set_default_color ("Text Foreground", 0, 0, 0, 1);diff --git a/scripts/version.py b/scripts/version.pyindex 1e62729..4646103 100644--- a/scripts/version.py+++ b/scripts/version.py@@ -13,7 +13,7 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. """ -VERSION = '2.16.11'+VERSION = '2.16.12' SO_VERSION_MAJOR = '36' SO_VERSION_MINOR = '0' SO_VERSION = SO_VERSION_MAJOR + '.' + SO_VERSION_MINOR

Contact

Email: johan.mattsson.m@gmail.com
Mastodon: typo.social/@birdfont
GitHub: johanmattssonm
LinkedIn: johan-mattsson-2ab324112