Skip to content

Commit 4533d80

Browse files
committed
fix: pick default language from available languages
1 parent 711abaa commit 4533d80

File tree

1 file changed

+17
-4
lines changed
  • crates/rnote-engine/src/engine

1 file changed

+17
-4
lines changed

crates/rnote-engine/src/engine/mod.rs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ use std::fmt::Debug;
3535
use std::path::PathBuf;
3636
use std::sync::Arc;
3737
use std::time::Instant;
38-
use tracing::error;
38+
use tracing::{debug, error};
3939

4040
pub struct Spellchecker {
4141
broker: enchant::Broker,
@@ -44,9 +44,22 @@ pub struct Spellchecker {
4444

4545
impl Spellchecker {
4646
pub fn default_language() -> Option<String> {
47-
glib::language_names()
48-
.get(0)
49-
.map(|language| language.to_string())
47+
let available_languages = Self::available_languages();
48+
49+
for system_language in glib::language_names() {
50+
for available_language in &available_languages {
51+
if system_language.contains(available_language) {
52+
debug!(
53+
"found default spellcheck language: {:?}",
54+
available_language
55+
);
56+
57+
return Some(available_language.to_string());
58+
}
59+
}
60+
}
61+
62+
None
5063
}
5164

5265
pub fn available_languages() -> Vec<String> {

0 commit comments

Comments
 (0)