Răsfoiți Sursa

Add spellchecking to markdown editor

Billy Barrow 2 ani în urmă
părinte
comite
cfe492b72d
2 a modificat fișierele cu 11 adăugiri și 1 ștergeri
  1. 10 1
      src/Editors/MarkdownEditor.vala
  2. 1 0
      src/meson.build

+ 10 - 1
src/Editors/MarkdownEditor.vala

@@ -20,6 +20,9 @@ namespace Publicate.Editors {
         private ViewerWindow window;
         private TabPage page;
 
+        private Spelling.Checker spell_checker;
+        private Spelling.TextBufferAdapter spell_adapter;
+
         private Gee.HashMap<string, Gdk.Pixbuf> pixbuf_cache = new Gee.HashMap<string, Gdk.Pixbuf>();
 
         public Adw.TabPage tab_page { get {
@@ -62,7 +65,13 @@ namespace Publicate.Editors {
             text_view.left_margin = 18;
             text_view.right_margin = 18;
             text_view.buffer.changed.connect (update_preview);
-            
+
+            spell_checker = Spelling.Checker.get_default();
+            spell_adapter = new Spelling.TextBufferAdapter(source_buffer, spell_checker);
+            text_view.set_extra_menu(spell_adapter.get_menu_model());
+            text_view.insert_action_group("spelling", spell_adapter);
+
+            spell_adapter.set_enabled(true);
 
             source_scroller.set_policy (PolicyType.NEVER, PolicyType.AUTOMATIC);
             source_scroller.vexpand = true;

+ 1 - 0
src/meson.build

@@ -31,6 +31,7 @@ dependencies = [
     dependency('gtkcommonmark'),
     dependency('libppub'),
     dependency('gtksourceview-5'),
+    dependency('libspelling-1'),
 ]
 
 executable('publicate', sources, dependencies: dependencies, install: true)