From c373cbbcae452968e0ff43630f21265a60ee81c5 Mon Sep 17 00:00:00 2001 From: blank X Date: Sun, 17 Oct 2021 10:58:25 +0700 Subject: [PATCH] Add setInstantReplaces overload --- ui/widgets/input_fields.cpp | 8 ++++++++ ui/widgets/input_fields.h | 1 + 2 files changed, 9 insertions(+) diff --git a/ui/widgets/input_fields.cpp b/ui/widgets/input_fields.cpp index 7a15595..e064042 100644 --- a/ui/widgets/input_fields.cpp +++ b/ui/widgets/input_fields.cpp @@ -1484,6 +1484,14 @@ void InputField::setInstantReplaces(const InstantReplaces &replaces) { _mutableInstantReplaces = replaces; } +void InputField::setInstantReplaces(rpl::producer producer) { + std::move( + producer + ) | rpl::start_with_next([=](InstantReplaces replaces) { + _mutableInstantReplaces = replaces; + }, lifetime()); +} + void InputField::setInstantReplacesEnabled(rpl::producer enabled) { std::move( enabled diff --git a/ui/widgets/input_fields.h b/ui/widgets/input_fields.h index 8544550..28170d3 100644 --- a/ui/widgets/input_fields.h +++ b/ui/widgets/input_fields.h @@ -251,6 +251,7 @@ public: void setAdditionalMargin(int margin); void setInstantReplaces(const InstantReplaces &replaces); + void setInstantReplaces(rpl::producer producer); void setInstantReplacesEnabled(rpl::producer enabled); void setMarkdownReplacesEnabled(rpl::producer enabled); void setExtendedContextMenu(rpl::producer value);