mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-06 23:24:01 +02:00
Added ability to initialize spellchecker without SessionController.
This commit is contained in:
parent
b900ac2b1d
commit
5e13949eda
2 changed files with 17 additions and 5 deletions
|
@ -314,7 +314,8 @@ void InitMessageField(
|
||||||
}
|
}
|
||||||
|
|
||||||
void InitSpellchecker(
|
void InitSpellchecker(
|
||||||
not_null<Window::SessionController*> controller,
|
std::shared_ptr<Ui::Show> show,
|
||||||
|
not_null<Main::Session*> session,
|
||||||
not_null<Ui::InputField*> field) {
|
not_null<Ui::InputField*> field) {
|
||||||
#ifndef TDESKTOP_DISABLE_SPELLCHECK
|
#ifndef TDESKTOP_DISABLE_SPELLCHECK
|
||||||
const auto s = Ui::CreateChild<Spellchecker::SpellingHighlighter>(
|
const auto s = Ui::CreateChild<Spellchecker::SpellingHighlighter>(
|
||||||
|
@ -322,15 +323,21 @@ void InitSpellchecker(
|
||||||
Core::App().settings().spellcheckerEnabledValue(),
|
Core::App().settings().spellcheckerEnabledValue(),
|
||||||
Spellchecker::SpellingHighlighter::CustomContextMenuItem{
|
Spellchecker::SpellingHighlighter::CustomContextMenuItem{
|
||||||
tr::lng_settings_manage_dictionaries(tr::now),
|
tr::lng_settings_manage_dictionaries(tr::now),
|
||||||
[=] {
|
[=] { show->showBox(Box<Ui::ManageDictionariesBox>(session)); }
|
||||||
controller->show(
|
|
||||||
Box<Ui::ManageDictionariesBox>(&controller->session()));
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
field->setExtendedContextMenu(s->contextMenuCreated());
|
field->setExtendedContextMenu(s->contextMenuCreated());
|
||||||
#endif // TDESKTOP_DISABLE_SPELLCHECK
|
#endif // TDESKTOP_DISABLE_SPELLCHECK
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void InitSpellchecker(
|
||||||
|
not_null<Window::SessionController*> controller,
|
||||||
|
not_null<Ui::InputField*> field) {
|
||||||
|
InitSpellchecker(
|
||||||
|
std::make_shared<Window::Show>(controller),
|
||||||
|
&controller->session(),
|
||||||
|
field);
|
||||||
|
}
|
||||||
|
|
||||||
bool HasSendText(not_null<const Ui::InputField*> field) {
|
bool HasSendText(not_null<const Ui::InputField*> field) {
|
||||||
const auto &text = field->getTextWithTags().text;
|
const auto &text = field->getTextWithTags().text;
|
||||||
for (const auto &ch : text) {
|
for (const auto &ch : text) {
|
||||||
|
|
|
@ -28,6 +28,7 @@ class SessionController;
|
||||||
|
|
||||||
namespace Ui {
|
namespace Ui {
|
||||||
class PopupMenu;
|
class PopupMenu;
|
||||||
|
class Show;
|
||||||
} // namespace Ui
|
} // namespace Ui
|
||||||
|
|
||||||
QString PrepareMentionTag(not_null<UserData*> user);
|
QString PrepareMentionTag(not_null<UserData*> user);
|
||||||
|
@ -44,6 +45,10 @@ void InitMessageField(
|
||||||
not_null<Window::SessionController*> controller,
|
not_null<Window::SessionController*> controller,
|
||||||
not_null<Ui::InputField*> field);
|
not_null<Ui::InputField*> field);
|
||||||
|
|
||||||
|
void InitSpellchecker(
|
||||||
|
std::shared_ptr<Ui::Show> show,
|
||||||
|
not_null<Main::Session*> session,
|
||||||
|
not_null<Ui::InputField*> field);
|
||||||
void InitSpellchecker(
|
void InitSpellchecker(
|
||||||
not_null<Window::SessionController*> controller,
|
not_null<Window::SessionController*> controller,
|
||||||
not_null<Ui::InputField*> field);
|
not_null<Ui::InputField*> field);
|
||||||
|
|
Loading…
Add table
Reference in a new issue