Hello community,

here is the log from the commit of package palaura for openSUSE:Factory checked 
in at 2020-02-21 16:41:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/palaura (Old)
 and      /work/SRC/openSUSE:Factory/.palaura.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "palaura"

Fri Feb 21 16:41:46 2020 rev:8 rq:777760 version:1.2.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/palaura/palaura.changes  2019-07-15 
22:44:29.923895406 +0200
+++ /work/SRC/openSUSE:Factory/.palaura.new.26092/palaura.changes       
2020-02-21 16:41:53.845977830 +0100
@@ -1,0 +2,13 @@
+Wed Feb 19 19:09:15 UTC 2020 - Alexei Podvalsky <avvi...@yandex.by>
+
+- Update to 1.2.1:
+  * fix showing list of results
+  * Merge branch 'master' of https://github.com/lainsce/palaura
+    palaura.changes palaura.spec
+  * RISE FROM YOUR GRAVE!
+  * Merge pull request #40 from meisenzahl/master
+  * Update README.md
+  * Update meson.build
+  * Update com.github.lainsce.palaura.appdata.xml.in
+
+-------------------------------------------------------------------

Old:
----
  palaura-1.0.8.tar.gz

New:
----
  palaura-1.2.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ palaura.spec ++++++
--- /var/tmp/diff_new_pack.2VLwKD/_old  2020-02-21 16:41:54.485979109 +0100
+++ /var/tmp/diff_new_pack.2VLwKD/_new  2020-02-21 16:41:54.505979150 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           palaura
-Version:        1.0.8
+Version:        1.2.1
 Release:        0
 Summary:        A dictionary with word definitions
 License:        GPL-3.0-or-later
@@ -35,6 +35,7 @@
 BuildRequires:  pkgconfig(gobject-2.0)
 BuildRequires:  pkgconfig(granite) >= 0.5
 BuildRequires:  pkgconfig(gtk+-3.0)
+BuildRequires:  pkgconfig(gtksourceview-3.0)
 BuildRequires:  pkgconfig(json-glib-1.0)
 BuildRequires:  pkgconfig(libsoup-2.4)
 
@@ -54,7 +55,20 @@
 %suse_update_desktop_file -r com.github.lainsce.palaura GTK Office Dictionary
 %fdupes %{buildroot}/%{_datadir}
 
-%files
+# dirlist HiDPI icons (see: hicolor/index.theme)
+touch $PWD/dir.lst
+_dirlist=$PWD/dir.lst
+pushd %{buildroot}
+find ./ | while read _list; do
+    echo $_list | grep '[0-9]\@[0-9]' || continue
+    _path=$(echo $_list | sed 's/[^/]//')
+    if ! ls ${_path%/*}; then
+        grep -xqs "\%dir\ ${_path%/*}" $_dirlist || echo "%dir ${_path%/*}" >> 
$_dirlist
+    fi
+done
+popd
+
+%files -f dir.lst
 %license LICENSE
 %doc AUTHORS README.md
 %{_bindir}/com.github.lainsce.palaura

++++++ palaura-1.0.8.tar.gz -> palaura-1.2.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/.travis.yml 
new/palaura-1.2.1/.travis.yml
--- old/palaura-1.0.8/.travis.yml       2019-06-29 22:05:57.000000000 +0200
+++ new/palaura-1.2.1/.travis.yml       2020-02-03 13:19:11.000000000 +0100
@@ -3,7 +3,7 @@
 language: node_js
 
 node_js:
-  - lts/*
+  - 10/*
 
 sudo: required
 
@@ -17,22 +17,8 @@
     packages:
       - libstdc++-5-dev
 
-cache:
-  directories:
-    - /tmp/liftoff
-
-matrix:
-  include:
-    - env: DIST=loki
-    - env: DIST=juno
-
 install:
-  - npm install @elementaryos/houston
+  - npm i -g @elementaryos/houston
 
 script:
   - houston ci
-    --distribution $DIST
-
-branches:
-  only:
-    - master
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/README.md new/palaura-1.2.1/README.md
--- old/palaura-1.0.8/README.md 2019-06-29 22:05:57.000000000 +0200
+++ new/palaura-1.2.1/README.md 2020-02-03 13:19:11.000000000 +0100
@@ -22,6 +22,7 @@
 ```bash
 granite
 gtk+-3.0
+gtksourceview-3.0
 meson
 libsoup2.4
 libjson-glib
@@ -36,7 +37,3 @@
 meson configure -Dprefix=/usr
 sudo ninja install
 ```
-
-## Miscellanea
-
-Uses the Oxford API for definitions and lookups.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/palaura-1.0.8/data/com.github.lainsce.palaura.appdata.xml.in 
new/palaura-1.2.1/data/com.github.lainsce.palaura.appdata.xml.in
--- old/palaura-1.0.8/data/com.github.lainsce.palaura.appdata.xml.in    
2019-06-29 22:05:57.000000000 +0200
+++ new/palaura-1.2.1/data/com.github.lainsce.palaura.appdata.xml.in    
2020-02-03 13:19:11.000000000 +0100
@@ -53,6 +53,16 @@
         </screenshot>
     </screenshots>
     <releases>
+      <release version="1.2.0" date="2020-02-07">
+        <description>
+          <p>Release: Hot Revival</p>
+          <ul>
+            <li>Update: In the lack of a better API that is free of charge, I 
decided to continue using the one in-app.
+As such, the new pricing will help accomodate the costs.</li>
+            <li>Minor fixes.</li>
+          </ul>
+        </description>
+      </release>
       <release version="1.0.4" date="2019-06-30">
         <description>
           <p>Release: Temporary Pause</p>
@@ -118,6 +128,6 @@
     <custom>
         <value key="x-appcenter-color-primary">#ddbdbd</value>
         <value key="x-appcenter-color-primary-text">#333333</value>
-        <value key="x-appcenter-suggested-price">5</value>
+        <value key="x-appcenter-suggested-price">8</value>
     </custom>
 </component>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/palaura-1.0.8/data/com.github.lainsce.palaura.gschema.xml 
new/palaura-1.2.1/data/com.github.lainsce.palaura.gschema.xml
--- old/palaura-1.0.8/data/com.github.lainsce.palaura.gschema.xml       
2019-06-29 22:05:57.000000000 +0200
+++ new/palaura-1.2.1/data/com.github.lainsce.palaura.gschema.xml       
2020-02-03 13:19:11.000000000 +0100
@@ -11,7 +11,7 @@
                        <description>The y axis of window position</description>
                </key>
                <key name="dict-lang" type="s">
-                       <default>'en'</default>
+                       <default>'en-us'</default>
                        <summary>Dictionary language</summary>
                        <description>The language used to query words from its 
dictionary</description>
                </key>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/data/meson.build 
new/palaura-1.2.1/data/meson.build
--- old/palaura-1.0.8/data/meson.build  2019-06-29 22:05:57.000000000 +0200
+++ new/palaura-1.2.1/data/meson.build  2020-02-03 13:19:11.000000000 +0100
@@ -1,5 +1,5 @@
 icon_sizes = ['16', '24', '32', '48', '64', '128']
-
+ 
 foreach i : icon_sizes
     install_data(
         join_paths('icons', i, meson.project_name() + '.svg'),
@@ -7,6 +7,13 @@
     )
 endforeach
 
+foreach i : icon_sizes
+    install_data(
+        join_paths('icons', i, meson.project_name() + '.svg'),
+        install_dir: join_paths(get_option('datadir'), 'icons', 'hicolor', i + 
'x' + i + '@2', 'apps')
+    )
+endforeach
+
 install_data(
     meson.project_name() + '.gschema.xml',
     install_dir: join_paths(get_option('datadir'), 'glib-2.0', 'schemas')
Binary files old/palaura-1.0.8/data/shot.png and 
new/palaura-1.2.1/data/shot.png differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/data/stylesheet.css 
new/palaura-1.2.1/data/stylesheet.css
--- old/palaura-1.0.8/data/stylesheet.css       2019-06-29 22:05:57.000000000 
+0200
+++ new/palaura-1.2.1/data/stylesheet.css       2020-02-03 13:19:11.000000000 
+0100
@@ -7,10 +7,15 @@
 }
 
 .palaura-view {
-    background-color: #fbf9f1;
+    background-color: #FDF6E3;
+    color: #586E75;
+}
+
+.palaura-view image {
+    color: #586E75;
 }
 
 .palaura-view:selected {
-    background-color: #333333;
+    background-color: #586E75;
     color: @textColorPrimary;
 }
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/debian/control 
new/palaura-1.2.1/debian/control
--- old/palaura-1.0.8/debian/control    2019-06-29 22:05:57.000000000 +0200
+++ new/palaura-1.2.1/debian/control    2020-02-03 13:19:11.000000000 +0100
@@ -8,6 +8,7 @@
                libgtk-3-dev,
                libgranite-dev,
                libsoup2.4-dev,
+               libgtksourceview-3.0-dev,
                libjson-glib-dev
 Standards-Version: 3.9.3
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/meson/post_install.py 
new/palaura-1.2.1/meson/post_install.py
--- old/palaura-1.0.8/meson/post_install.py     2019-06-29 22:05:57.000000000 
+0200
+++ new/palaura-1.2.1/meson/post_install.py     2020-02-03 13:19:11.000000000 
+0100
@@ -1,10 +1,15 @@
 #!/usr/bin/env python3
 import os
+import sys
 import subprocess
-import platform
 
-schemadir = os.path.join(os.environ['MESON_INSTALL_PREFIX'], 'share', 
'glib-2.0', 'schemas')
+if 'DESTDIR' not in os.environ:
+    datadir = sys.argv[1]
+    schemadir = os.path.join(datadir, 'glib-2.0', 'schemas')
+    icondir = os.path.join(datadir, 'icons', 'hicolor')
 
-if not os.environ.get('DESTDIR'):
     print('Compiling gsettings schemas...')
-    subprocess.call(['glib-compile-schemas', schemadir], shell=False)
+    subprocess.call(['glib-compile-schemas', schemadir])
+
+    print('Rebuilding desktop icons cache...')
+    subprocess.call(['gtk-update-icon-cache', '-t', '-f', icondir])
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/meson.build 
new/palaura-1.2.1/meson.build
--- old/palaura-1.0.8/meson.build       2019-06-29 22:05:57.000000000 +0200
+++ new/palaura-1.2.1/meson.build       2020-02-03 13:19:11.000000000 +0100
@@ -1,6 +1,6 @@
 # Name our project
 project('com.github.lainsce.palaura', ['vala', 'c'],
-    version: '1.0.7'
+    version: '1.2.0'
 )
 
 # Import main lib files
@@ -44,7 +44,6 @@
 # Let's define our executable
 executable(
     meson.project_name(),
-    'src/Constants/AppSettings.vala',
     'src/Core/Definition.vala',
     'src/Core/DictCore.vala',
     'src/Views/View.vala',
@@ -53,6 +52,7 @@
     'src/Views/NormalView.vala',
     'src/Views/DefinitionView.vala',
     'src/Widgets/WordListRow.vala',
+    'src/Widgets/WordContainerGrid.vala',
     'src/Widgets/Preferences.vala',
     'src/Application.vala',
     'src/MainWindow.vala',
@@ -61,6 +61,7 @@
     dependencies: [
         dependency('granite'),
         dependency('gobject-2.0'),
+        dependency('gtksourceview-3.0'),
         dependency('gtk+-3.0'),
         dependency('libsoup-2.4'),
         dependency('json-glib-1.0'),
@@ -75,7 +76,7 @@
 )
 
 # Add in a post install script
-meson.add_install_script('meson/post_install.py')
+meson.add_install_script('meson/post_install.py', 
join_paths(get_option('prefix'), get_option('datadir')))
 
 # Add subfolders for Meson to look
 subdir('data')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/src/Application.vala 
new/palaura-1.2.1/src/Application.vala
--- old/palaura-1.0.8/src/Application.vala      2019-06-29 22:05:57.000000000 
+0200
+++ new/palaura-1.2.1/src/Application.vala      2020-02-03 13:19:11.000000000 
+0100
@@ -1,24 +1,18 @@
 using Granite.Widgets;
 
-public class Palaura.App : Granite.Application {
-
+public class Palaura.Application : Granite.Application {
+    public static GLib.Settings gsettings;
     public Palaura.MainWindow main_window;
 
-    construct
-    {
+    static construct {
+        gsettings = new GLib.Settings ("com.github.lainsce.palaura");
+    }
+
+    construct {
         application_id = "com.github.lainsce.palaura";
         program_name = _("Palaura");
         app_launcher = "com.github.lainsce.palaura.desktop";
         exec_name = "com.github.lainsce.palaura";
-
-        var quit_action = new SimpleAction ("quit", null);
-        add_action (quit_action);
-        add_accelerator ("<Control>q", "app.quit", null);
-        quit_action.activate.connect (() => {
-            if (main_window != null) {
-                main_window.destroy ();
-            }
-        });
     }
 
     public override void activate () {
@@ -35,7 +29,7 @@
     }
 
     public static int main (string[] args) {
-        var application = new Palaura.App ();
+        var application = new Palaura.Application ();
         return application.run (args);
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/src/Constants/AppSettings.vala 
new/palaura-1.2.1/src/Constants/AppSettings.vala
--- old/palaura-1.0.8/src/Constants/AppSettings.vala    2019-06-29 
22:05:57.000000000 +0200
+++ new/palaura-1.2.1/src/Constants/AppSettings.vala    1970-01-01 
01:00:00.000000000 +0100
@@ -1,19 +0,0 @@
-namespace Palaura {
-    public class AppSettings : Granite.Services.Settings {
-        public int window_x { get; set; }
-        public int window_y { get; set; }
-        public string dict_lang { get; set; }
-        private static AppSettings? instance;
-
-        public static unowned AppSettings get_default () {
-            if (instance == null) {
-                instance = new AppSettings ();
-            }
-            return instance;
-        }
-
-        private AppSettings () {
-            base ("com.github.lainsce.palaura");
-        }
-    }
-}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/src/Core/DictCore.vala 
new/palaura-1.2.1/src/Core/DictCore.vala
--- old/palaura-1.0.8/src/Core/DictCore.vala    2019-06-29 22:05:57.000000000 
+0200
+++ new/palaura-1.2.1/src/Core/DictCore.vala    2020-02-03 13:19:11.000000000 
+0100
@@ -1,16 +1,16 @@
 public class Palaura.Core.Dict {
     public async string get_entries (string text) throws GLib.Error {
-        var settings = AppSettings.get_default ();
-        string dict = settings.dict_lang;
-        settings.changed.connect (() => {
-            if (settings.dict_lang == "en") {
-                dict = "en";
-            } else if (settings.dict_lang == "es") {
+        string dict = Palaura.Application.gsettings.get_string("dict-lang");
+        Palaura.Application.gsettings.changed.connect (() => {
+            if (Palaura.Application.gsettings.get_string("dict-lang") == 
"en-us") {
+                dict = "en-us";
+            } else if (Palaura.Application.gsettings.get_string("dict-lang") 
== "es") {
                 dict = "es";
             }
         });
 
-        string uri = 
@"https://od-api.oxforddictionaries.com:443/api/v1/entries/$dict/$text";;
+        string low_text = text.down ();
+        string uri = 
@"https://od-api.oxforddictionaries.com/api/v2/entries/$dict/$low_text?strictMatch=false";;
 
         string response = "";
 
@@ -19,7 +19,7 @@
         Soup.MessageHeaders headers = message.request_headers;
         headers.append ("Accept","application/json");
         headers.append ("app_id","db749a02");
-        headers.append ("app_key","bf44ba104ce6d42d444db54fa878a52b");
+        headers.append ("app_key","080738b4b5778a35498f2036c126c9e2");
 
         session.queue_message (message, (sess, mess) => {
             response = (string) mess.response_body.data;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/src/MainWindow.vala 
new/palaura-1.2.1/src/MainWindow.vala
--- old/palaura-1.0.8/src/MainWindow.vala       2019-06-29 22:05:57.000000000 
+0200
+++ new/palaura-1.2.1/src/MainWindow.vala       2020-02-03 13:19:11.000000000 
+0100
@@ -33,6 +33,33 @@
         normal_view.show_definition.connect (show_definition);
 
         return_button.clicked.connect (on_return_clicked);
+
+        key_press_event.connect ((e) => {
+            uint keycode = e.hardware_keycode;
+            if ((e.state & Gdk.ModifierType.CONTROL_MASK) != 0) {
+                if (match_keycode (Gdk.Key.q, keycode)) {
+                    this.destroy ();
+                }
+            }
+            return false;
+        });
+    }
+
+#if VALA_0_42
+    protected bool match_keycode (uint keyval, uint code) {
+#else
+    protected bool match_keycode (int keyval, uint code) {
+#endif
+        Gdk.KeymapKey [] keys;
+        Gdk.Keymap keymap = Gdk.Keymap.get_for_display 
(Gdk.Display.get_default ());
+        if (keymap.get_entries_for_keyval (keyval, out keys)) {
+            foreach (var key in keys) {
+                if (code == key.keycode)
+                    return true;
+                }
+            }
+
+        return false;
     }
 
     public void show_definition (Core.Definition definition) {
@@ -92,9 +119,8 @@
 
         return_history = new Gee.LinkedList<Palaura.View> ();
 
-        var settings = AppSettings.get_default ();
-        int x = settings.window_x;
-        int y = settings.window_y;
+        int x = Palaura.Application.gsettings.get_int("window-x");
+        int y = Palaura.Application.gsettings.get_int("window-y");
 
         if (x != -1 && y != -1) {
             move (x, y);
@@ -152,12 +178,10 @@
     }
 
     public override bool delete_event (Gdk.EventAny event) {
-        var settings = AppSettings.get_default ();
-        
         int x, y;
         get_position (out x, out y);
-        settings.window_x = x;
-        settings.window_y = y;
+        Palaura.Application.gsettings.set_int("window-x", x);
+        Palaura.Application.gsettings.set_int("window-y", y);
         return false;
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/src/Views/DefinitionView.vala 
new/palaura-1.2.1/src/Views/DefinitionView.vala
--- old/palaura-1.0.8/src/Views/DefinitionView.vala     2019-06-29 
22:05:57.000000000 +0200
+++ new/palaura-1.2.1/src/Views/DefinitionView.vala     2020-02-03 
13:19:11.000000000 +0100
@@ -1,8 +1,8 @@
 public class Palaura.DefinitionView : Palaura.View {
 
     Gtk.ScrolledWindow scrolled_window;
-    Gtk.TextView text_view;
-    Gtk.TextBuffer buffer;
+    Gtk.SourceView text_view;
+    Gtk.SourceBuffer buffer;
     Gtk.TextTag tag_word;
     Gtk.TextTag tag_pronunciation;
     Gtk.TextTag tag_lexical_category;
@@ -18,19 +18,22 @@
 
     construct {
         scrolled_window = new Gtk.ScrolledWindow (null, null);
-        scrolled_window.set_policy (Gtk.PolicyType.NEVER,
-            Gtk.PolicyType.AUTOMATIC);
+        scrolled_window.set_policy (Gtk.PolicyType.NEVER, 
Gtk.PolicyType.AUTOMATIC);
         scrolled_window.set_border_width (12);
+        scrolled_window.get_style_context ().add_class ("palaura-view");
         add (scrolled_window);
 
-        text_view = new Gtk.TextView ();
-        text_view.get_style_context ().add_class ("palaura-view");
+        text_view = new Gtk.SourceView ();
         text_view.set_wrap_mode (Gtk.WrapMode.WORD_CHAR);
         text_view.set_editable (false);
         text_view.set_cursor_visible (false);
+        buffer = new Gtk.SourceBuffer (null);
+        text_view.buffer = buffer;
+        var style_manager = Gtk.SourceStyleSchemeManager.get_default ();
+        var style = style_manager.get_scheme ("solarized-light");
+        buffer.set_style_scheme (style);
         scrolled_window.add (text_view);
 
-        buffer = text_view.get_buffer ();
         tag_word = buffer.create_tag (null, "weight", Pango.Weight.BOLD, 
"font", "serif 18");
         tag_pronunciation = buffer.create_tag (null, "font", "serif 12");
         tag_lexical_category = buffer.create_tag (null, "font", "serif 12", 
"pixels-above-lines", 8, "pixels-inside-wrap", 8);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/src/Views/WordListView.vala 
new/palaura-1.2.1/src/Views/WordListView.vala
--- old/palaura-1.0.8/src/Views/WordListView.vala       2019-06-29 
22:05:57.000000000 +0200
+++ new/palaura-1.2.1/src/Views/WordListView.vala       2020-02-03 
13:19:11.000000000 +0100
@@ -27,7 +27,7 @@
             list_box.activate_on_single_click = true;
             list_box.row_activated.connect ((r) => {
                     var row = (Widgets.WordListRow) r;
-                    show_definition(row.get_definition ());
+                    show_definition (row.get_definition ());
                 });
             add(list_box);
         }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/src/Widgets/Preferences.vala 
new/palaura-1.2.1/src/Widgets/Preferences.vala
--- old/palaura-1.0.8/src/Widgets/Preferences.vala      2019-06-29 
22:05:57.000000000 +0200
+++ new/palaura-1.2.1/src/Widgets/Preferences.vala      2020-02-03 
13:19:11.000000000 +0100
@@ -22,7 +22,7 @@
 
         public Preferences (Gtk.Window? parent) {
             Object (
-                border_width: 0,
+                border_width: 6,
                 deletable: false,
                 resizable: false,
                 title: _("Preferences"),
@@ -33,57 +33,45 @@
         }
 
         construct {
-            var settings = AppSettings.get_default ();
-
             var header = new Granite.HeaderLabel (_("Dictionary Preferences"));
             var label = new SettingsLabel (_("Lookup language:"));
-            var lang = new Granite.Widgets.ModeButton ();
+            var lang = new Gtk.ComboBoxText ();
             lang.append_text (_("English"));
             lang.append_text (_("Spanish"));
-
-            var dict_lang = settings.dict_lang;
+            var dict_lang = 
Palaura.Application.gsettings.get_string("dict-lang");
 
             switch (dict_lang) {
                 case "en":
-                    lang.selected = 0;
+                    lang.active = 0;
                     break;
                 case "es":
-                    lang.selected = 1;
+                    lang.active = 1;
                     break;
                 default:
-                    lang.selected = 0;
+                    lang.active = 0;
                     break;
             }
-
-            lang.mode_changed.connect (() => {
-                switch (lang.selected) {
+            lang.changed.connect (() => {
+                switch (lang.active) {
                     case 0:
-                        settings.dict_lang = "en";
+                        Palaura.Application.gsettings.set_string("dict-lang", 
"en");
                         break;
                     case 1:
-                        settings.dict_lang = "es";
+                        Palaura.Application.gsettings.set_string("dict-lang", 
"es");
                         break;
                 }
             });
 
             var main_grid = new Gtk.Grid ();
             main_grid.margin_top = 0;
+            main_grid.margin = 6;
             main_grid.column_spacing = 12;
             main_grid.column_homogeneous = true;
             main_grid.attach (header, 0, 1, 1, 1);
             main_grid.attach (label, 0, 2, 1, 1);
             main_grid.attach (lang, 1, 2, 1, 1);
 
-            get_action_area ().margin = 6;
-
-            var content = this.get_content_area () as Gtk.Box;
-            content.margin = 6;
-            content.margin_top = 0;
-            content.add (main_grid);
-
-            var action_area = this.get_action_area () as Gtk.Box;
-            action_area.margin = 0;
-            action_area.margin_top = 6;
+            ((Gtk.Container) get_content_area ()).add (main_grid);
 
             var close_button = this.add_button (_("Close"), 
Gtk.ResponseType.CLOSE);
             ((Gtk.Button) close_button).clicked.connect (() => destroy ());
@@ -96,13 +84,5 @@
                 margin_start = 12;
             }
         }
-
-        private class SettingsSwitch : Gtk.Switch {
-            public SettingsSwitch (string setting) {
-                var main_settings = AppSettings.get_default ();
-                halign = Gtk.Align.START;
-                main_settings.schema.bind (setting, this, "active", 
SettingsBindFlags.DEFAULT);
-            }
-        }
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/src/Widgets/WordContainerGrid.vala 
new/palaura-1.2.1/src/Widgets/WordContainerGrid.vala
--- old/palaura-1.0.8/src/Widgets/WordContainerGrid.vala        1970-01-01 
01:00:00.000000000 +0100
+++ new/palaura-1.2.1/src/Widgets/WordContainerGrid.vala        2020-02-03 
13:19:11.000000000 +0100
@@ -0,0 +1,40 @@
+namespace Palaura {
+    public class WordContainerGrid : Gtk.Grid {
+        public Core.Definition definition;
+        Gtk.Label text;
+        string markup;
+
+        construct {
+            column_spacing = 12;
+            row_spacing = 12;
+            margin = 12;
+
+            text = new Gtk.Label ("");
+            text.use_markup = true;
+            text.set_line_wrap (true);
+            text.set_lines (2);
+            text.set_ellipsize (Pango.EllipsizeMode.END);
+            text.set_justify (Gtk.Justification.FILL);
+            add (text);
+        }
+
+        public WordContainerGrid(Core.Definition definition) {
+            this.definition = definition;
+
+            markup = "<span weight=\"bold\" font_family=\"serif\" 
size=\"large\">"+definition.text+"</span>";
+
+            Core.Definition.Pronunciation pronunciation = 
definition.get_pronunciations()[0];
+            if (pronunciation != null) {
+                string phonetic_spelling = pronunciation.phonetic_spelling;
+                markup += @"<span font_family=\"serif\" size=\"large\"> 
/"+phonetic_spelling+"/ </span>";
+            }
+
+            markup += @"<span style=\"italic\" font_family=\"serif\" 
size=\"large\"> "+definition.lexical_category+" </span>";
+
+            if(definition.get_senses ().length > 0)
+                markup += @"\n<span font_family=\"serif\" size=\"large\"> 
"+definition.get_senses ()[0].get_definitions ()[0]+" </span>";
+            
+            text.set_markup (markup);
+        }
+    }
+}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/src/Widgets/WordListRow.vala 
new/palaura-1.2.1/src/Widgets/WordListRow.vala
--- old/palaura-1.0.8/src/Widgets/WordListRow.vala      2019-06-29 
22:05:57.000000000 +0200
+++ new/palaura-1.2.1/src/Widgets/WordListRow.vala      2020-02-03 
13:19:11.000000000 +0100
@@ -1,54 +1,16 @@
 namespace Palaura.Widgets {
     public class WordListRow : Gtk.ListBoxRow {
 
-        WordContainerGrid grid;
+        Palaura.WordContainerGrid grid;
 
         public WordListRow(Core.Definition definition) {
             var context = this.get_style_context ();
             context.add_class ("palaura-view");
-            grid = new WordContainerGrid(definition);
+            grid = new Palaura.WordContainerGrid(definition);
             add(grid);
             show_all();
         }
 
-        public class WordContainerGrid : Gtk.Grid {
-
-            public Core.Definition definition;
-            Gtk.Label text;
-
-            construct {
-                column_spacing = 12;
-                row_spacing = 12;
-                margin = 12;
-
-                text = new Gtk.Label ("");
-                text.set_line_wrap (true);
-                text.set_lines (2);
-                text.set_ellipsize (Pango.EllipsizeMode.END);
-                text.set_justify (Gtk.Justification.FILL);
-                attach (text, 0, 0, 1, 1);
-            }
-
-            public WordContainerGrid(Core.Definition definition) {
-                this.definition = definition;
-
-                string markup = @"<span weight=\"bold\" font_family=\"serif\" 
size=\"large\"> $(definition.text) </span>";
-
-                Core.Definition.Pronunciation pronunciation = 
definition.get_pronunciations()[0];
-                if (pronunciation != null) {
-                    string phonetic_spelling = pronunciation.phonetic_spelling;
-                    markup += @"<span font_family=\"serif\" size=\"large\"> 
/$phonetic_spelling/ </span>";
-                }
-
-                markup += @"<span style=\"italic\" font_family=\"serif\" 
size=\"large\"> $(definition.lexical_category) </span>";
-
-                if(definition.get_senses ().length > 0)
-                    markup += @"\n<span font_family=\"serif\" size=\"large\">" 
+ definition.get_senses ()[0].get_definitions ()[0] + "</span>";
-
-                text.set_markup (markup);
-            }
-        }
-
         public Core.Definition get_definition () {
             return grid.definition;
         }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/palaura-1.0.8/vapi/json-glib-1.0.vapi 
new/palaura-1.2.1/vapi/json-glib-1.0.vapi
--- old/palaura-1.0.8/vapi/json-glib-1.0.vapi   2019-06-29 22:05:57.000000000 
+0200
+++ new/palaura-1.2.1/vapi/json-glib-1.0.vapi   1970-01-01 01:00:00.000000000 
+0100
@@ -1,255 +0,0 @@
-/* json-glib-1.0.vapi generated by vapigen, do not modify. */
-
-[CCode (cprefix = "Json", lower_case_cprefix = "json_")]
-namespace Json {
-    [Compact]
-    [CCode (ref_function = "json_array_ref", unref_function = 
"json_array_unref", type_id = "JSON_TYPE_ARRAY", cheader_filename = 
"json-glib/json-glib.h")]
-    public class Array {
-        [CCode (has_construct_function = false)]
-        public Array ();
-        public void add_array_element (owned Json.Array value);
-        public void add_boolean_element (bool value);
-        public void add_double_element (double value);
-        public void add_element (owned Json.Node node);
-        public void add_int_element (int64 value);
-        public void add_null_element ();
-        public void add_object_element (owned Json.Object value);
-        public void add_string_element (string value);
-        public unowned Json.Node dup_element (uint index_);
-        public void foreach_element (Json.ArrayForeach func);
-        public unowned Json.Array get_array_element (uint index_);
-        public bool get_boolean_element (uint index_);
-        public double get_double_element (uint index_);
-        public unowned Json.Node get_element (uint index_);
-        public GLib.List<weak Json.Node> get_elements ();
-        public int64 get_int_element (uint index_);
-        public uint get_length ();
-        public bool get_null_element (uint index_);
-        public unowned Json.Object get_object_element (uint index_);
-        public unowned string get_string_element (uint index_);
-        public void remove_element (uint index_);
-        public static unowned Json.Array sized_new (uint n_elements);
-    }
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public class Builder : GLib.Object {
-        [CCode (has_construct_function = false)]
-        public Builder ();
-        public unowned Json.Builder add_boolean_value (bool value);
-        public unowned Json.Builder add_double_value (double value);
-        public unowned Json.Builder add_int_value (int64 value);
-        public unowned Json.Builder add_null_value ();
-        public unowned Json.Builder add_string_value (string value);
-        public unowned Json.Builder add_value (Json.Node node);
-        public unowned Json.Builder begin_array ();
-        public unowned Json.Builder begin_object ();
-        public unowned Json.Builder end_array ();
-        public unowned Json.Builder end_object ();
-        public unowned Json.Node get_root ();
-        public void reset ();
-        public unowned Json.Builder set_member_name (string member_name);
-    }
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public class Generator : GLib.Object {
-        [CCode (has_construct_function = false)]
-        public Generator ();
-        public void set_root (Json.Node node);
-        public string to_data (out size_t length);
-        public bool to_file (string filename) throws GLib.Error;
-        public bool to_stream (GLib.OutputStream stream, GLib.Cancellable 
cancellable) throws GLib.Error;
-        [NoAccessorMethod]
-        public uint indent { get; set; }
-        [NoAccessorMethod]
-        public uint indent_char { get; set; }
-        [NoAccessorMethod]
-        public bool pretty { get; set; }
-        [NoAccessorMethod]
-        public Json.Node root { owned get; set; }
-    }
-    [Compact]
-    [CCode (copy_function = "json_node_copy", type_id = "JSON_TYPE_NODE", 
cheader_filename = "json-glib/json-glib.h")]
-    public class Node {
-        [CCode (has_construct_function = false)]
-        public Node (Json.NodeType type);
-        public Json.Node copy ();
-        public Json.Array dup_array ();
-        public Json.Object dup_object ();
-        public string dup_string ();
-        public unowned Json.Array get_array ();
-        public bool get_boolean ();
-        public double get_double ();
-        public int64 get_int ();
-        public Json.NodeType get_node_type ();
-        public unowned Json.Object get_object ();
-        public unowned Json.Node get_parent ();
-        public unowned string get_string ();
-        public void get_value (out GLib.Value value);
-        public GLib.Type get_value_type ();
-        public bool is_null ();
-        public void set_array (Json.Array array);
-        public void set_boolean (bool value);
-        public void set_double (double value);
-        public void set_int (int64 value);
-        public void set_object (Json.Object object);
-        public void set_parent (Json.Node parent);
-        public void set_string (string value);
-        public void set_value (GLib.Value value);
-        public void take_array (owned Json.Array array);
-        public void take_object (owned Json.Object object);
-        public unowned string type_name ();
-    }
-    [Compact]
-    [CCode (ref_function = "json_object_ref", unref_function = 
"json_object_unref", type_id = "JSON_TYPE_OBJECT", cheader_filename = 
"json-glib/json-glib.h")]
-    public class Object {
-        [CCode (has_construct_function = false)]
-        public Object ();
-        public void add_member (string member_name, owned Json.Node node);
-        public unowned Json.Node dup_member (string member_name);
-        public void foreach_member (Json.ObjectForeach func);
-        public unowned Json.Array get_array_member (string member_name);
-        public bool get_boolean_member (string member_name);
-        public double get_double_member (string member_name);
-        public int64 get_int_member (string member_name);
-        public unowned Json.Node get_member (string member_name);
-        public GLib.List<weak string> get_members ();
-        public bool get_null_member (string member_name);
-        public unowned Json.Object get_object_member (string member_name);
-        public uint get_size ();
-        public unowned string get_string_member (string member_name);
-        public GLib.List<weak Json.Node> get_values ();
-        public bool has_member (string member_name);
-        public void remove_member (string member_name);
-        public void set_array_member (string member_name, owned Json.Array 
value);
-        public void set_boolean_member (string member_name, bool value);
-        public void set_double_member (string member_name, double value);
-        public void set_int_member (string member_name, int64 value);
-        public void set_member (string member_name, owned Json.Node node);
-        public void set_null_member (string member_name);
-        public void set_object_member (string member_name, owned Json.Object 
value);
-        public void set_string_member (string member_name, string value);
-    }
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public class Parser : GLib.Object {
-        [CCode (has_construct_function = false)]
-        public Parser ();
-        public static GLib.Quark error_quark ();
-        public uint get_current_line ();
-        public uint get_current_pos ();
-        public unowned Json.Node get_root ();
-        public bool has_assignment (out unowned string variable_name);
-        public bool load_from_data (string data, ssize_t length = -1) throws 
GLib.Error;
-        public bool load_from_file (string filename) throws GLib.Error;
-        public bool load_from_stream (GLib.InputStream stream, 
GLib.Cancellable cancellable) throws GLib.Error;
-        public async bool load_from_stream_async (GLib.InputStream stream, 
GLib.Cancellable cancellable) throws GLib.Error;
-        public virtual signal void array_element (Json.Array array, int 
index_);
-        public virtual signal void array_end (Json.Array array);
-        public virtual signal void array_start ();
-        public virtual signal void error (void* error);
-        public virtual signal void object_end (Json.Object object);
-        public virtual signal void object_member (Json.Object object, string 
member_name);
-        public virtual signal void object_start ();
-        public virtual signal void parse_end ();
-        public virtual signal void parse_start ();
-    }
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public class Reader : GLib.Object {
-        
-        [CCode (has_construct_function = false)]
-        public Reader (Json.Node? node);
-        public int count_elements ();
-        public int count_members ();
-        public void end_element ();
-        public void end_member ();
-        public bool get_boolean_value ();
-        public double get_double_value ();
-        public unowned GLib.Error get_error ();
-        public int64 get_int_value ();
-        public unowned string get_member_name ();
-        public bool get_null_value ();
-        public unowned string get_string_value ();
-        public unowned Json.Node get_value ();
-        public bool is_array ();
-        public bool is_object ();
-        public bool is_value ();
-        [CCode (array_length = false, array_null_terminated = true)]
-        public string[] list_members ();
-        public bool read_element (uint index_);
-        public bool read_member (string member_name);
-        public void set_root (Json.Node? root);
-        [NoAccessorMethod]
-        public Json.Node root { owned get; set construct; }
-    }
-    [CCode (cheader_filename = 
"json-glib/json-glib.h,json-glib/json-gobject.h")]
-    public interface Serializable {
-        public bool default_deserialize_property (string property_name, 
GLib.Value value, GLib.ParamSpec pspec, Json.Node property_node);
-        public unowned Json.Node default_serialize_property (string 
property_name, GLib.Value value, GLib.ParamSpec pspec);
-        public abstract bool deserialize_property (string property_name, out 
GLib.Value value, GLib.ParamSpec pspec, Json.Node property_node);
-        public abstract Json.Node serialize_property (string property_name, 
GLib.Value value, GLib.ParamSpec pspec);
-    }
-    [CCode (cprefix = "JSON_NODE_", cheader_filename = 
"json-glib/json-glib.h")]
-    public enum NodeType {
-        OBJECT,
-        ARRAY,
-        VALUE,
-        NULL
-    }
-    [CCode (cprefix = "JSON_PARSER_ERROR_", cheader_filename = 
"json-glib/json-glib.h")]
-    public enum ParserError {
-        PARSE,
-        TRAILING_COMMA,
-        MISSING_COMMA,
-        MISSING_COLON,
-        INVALID_BAREWORD,
-        UNKNOWN
-    }
-    [CCode (cprefix = "JSON_READER_ERROR_", cheader_filename = 
"json-glib/json-glib.h")]
-    public enum ReaderError {
-        NO_ARRAY,
-        INVALID_INDEX,
-        NO_OBJECT,
-        INVALID_MEMBER
-    }
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public delegate void ArrayForeach (Json.Array array, uint index_, 
Json.Node element_node);
-    [CCode (cheader_filename = "json-glib/json-glib.h", has_target = false)]
-    public delegate void* BoxedDeserializeFunc (Json.Node node);
-    [CCode (cheader_filename = "json-glib/json-glib.h", has_target = false)]
-    public delegate unowned Json.Node BoxedSerializeFunc (void* boxed);
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public delegate void ObjectForeach (Json.Object object, string 
member_name, Json.Node member_node);
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public const int MAJOR_VERSION;
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public const int MICRO_VERSION;
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public const int MINOR_VERSION;
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public const int VERSION_HEX;
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public const string VERSION_S;
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public static bool boxed_can_deserialize (GLib.Type gboxed_type, 
Json.NodeType node_type);
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public static bool boxed_can_serialize (GLib.Type gboxed_type, 
Json.NodeType node_type);
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public static void* boxed_deserialize (GLib.Type gboxed_type, Json.Node 
node);
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public static void boxed_register_deserialize_func (GLib.Type gboxed_type, 
Json.NodeType node_type, Json.BoxedDeserializeFunc deserialize_func);
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public static void boxed_register_serialize_func (GLib.Type gboxed_type, 
Json.NodeType node_type, Json.BoxedSerializeFunc serialize_func);
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public static unowned Json.Node boxed_serialize (GLib.Type gboxed_type, 
void* boxed);
-    [Deprecated (since = "0.10", replacement = "Json.gobject_from_data")]
-    [CCode (cheader_filename = 
"json-glib/json-glib.h,json-glib/json-gobject.h")]
-    public static GLib.Object construct_gobject (GLib.Type gtype, string data, 
size_t length) throws GLib.Error;
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public static GLib.Object gobject_deserialize (GLib.Type gtype, Json.Node 
node);
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public static GLib.Object gobject_from_data (GLib.Type gtype, string data, 
ssize_t length = -1) throws GLib.Error;
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public static Json.Node gobject_serialize (GLib.Object gobject);
-    [CCode (cheader_filename = "json-glib/json-glib.h")]
-    public static string gobject_to_data (GLib.Object gobject, out size_t 
length);
-    [Deprecated (since = "0.10", replacement = "Json.gobject_to_data")]
-    [CCode (cheader_filename = 
"json-glib/json-glib.h,json-glib/json-gobject.h")]
-    public static string serialize_gobject (GLib.Object gobject, out size_t 
length);
-}


Reply via email to