room-details: Use the room's language for the spell checker
This commit is contained in:
parent
57b0fc8749
commit
4e09079624
|
@ -27,7 +27,7 @@ use crate::{
|
|||
media::{get_image_info, load_file},
|
||||
not_expr, or_expr,
|
||||
template_callbacks::TemplateCallbacks,
|
||||
BoundObjectWeakRef, OngoingAsyncAction,
|
||||
BoundObjectWeakRef, OngoingAsyncAction, RoomSpellChecker,
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -67,6 +67,7 @@ mod imp {
|
|||
pub changing_name: RefCell<Option<OngoingAsyncAction<String>>>,
|
||||
pub changing_topic: RefCell<Option<OngoingAsyncAction<String>>>,
|
||||
pub expr_watches: RefCell<Vec<gtk::ExpressionWatch>>,
|
||||
pub spell_checker: RoomSpellChecker,
|
||||
}
|
||||
|
||||
#[glib::object_subclass]
|
||||
|
@ -134,13 +135,8 @@ mod imp {
|
|||
crate::utils::sourceview::setup_style_scheme(&buffer);
|
||||
|
||||
// Spell checker.
|
||||
let spell_checker = spelling::Checker::default();
|
||||
let adapter = spelling::TextBufferAdapter::new(&buffer, &spell_checker);
|
||||
let extra_menu = adapter.menu_model();
|
||||
self.room_topic_text_view.set_extra_menu(Some(&extra_menu));
|
||||
self.room_topic_text_view
|
||||
.insert_action_group("spelling", Some(&adapter));
|
||||
adapter.set_enabled(true);
|
||||
self.spell_checker
|
||||
.set_up_sourceview(&self.room_topic_text_view);
|
||||
}
|
||||
|
||||
fn dispose(&self) {
|
||||
|
@ -215,6 +211,8 @@ impl GeneralPage {
|
|||
self.init_avatar(room);
|
||||
self.init_edit_mode(room);
|
||||
|
||||
imp.spell_checker.set_room(Some(room));
|
||||
|
||||
// Keep strong reference to members list.
|
||||
imp.room_members.replace(Some(room.get_or_create_members()));
|
||||
|
||||
|
|
Loading…
Reference in New Issue