File tree Expand file tree Collapse file tree 4 files changed +11
-11
lines changed Expand file tree Collapse file tree 4 files changed +11
-11
lines changed Original file line number Diff line number Diff line change @@ -31,11 +31,11 @@ class Engine : public Messenger {
3131 Context* context () const { return context_.get (); }
3232 CommitSink& sink () { return sink_; }
3333
34- Context* active_context () const {
35- return active_context_ ? active_context_ : context_. get () ;
34+ Engine* active_engine () {
35+ return active_engine_ ? active_engine_ : this ;
3636 }
37- void set_active_context (Context* context = nullptr ) {
38- active_context_ = context ;
37+ void set_active_engine (Engine* engine = nullptr ) {
38+ active_engine_ = engine ;
3939 }
4040
4141 RIME_API static Engine* Create ();
@@ -46,7 +46,7 @@ class Engine : public Messenger {
4646 the<Schema> schema_;
4747 the<Context> context_;
4848 CommitSink sink_;
49- Context* active_context_ = nullptr ;
49+ Engine* active_engine_ = nullptr ;
5050};
5151
5252} // namespace rime
Original file line number Diff line number Diff line change @@ -56,11 +56,11 @@ void Session::OnCommit(const string& commit_text) {
5656}
5757
5858Context* Session::context () const {
59- return engine_ ? engine_->active_context () : NULL ;
59+ return engine_ ? engine_->active_engine ()-> context () : NULL ;
6060}
6161
6262Schema* Session::schema () const {
63- return engine_ ? engine_->schema () : NULL ;
63+ return engine_ ? engine_->active_engine ()-> schema () : NULL ;
6464}
6565
6666Service::Service () {
Original file line number Diff line number Diff line change @@ -189,13 +189,13 @@ void Switcher::Activate() {
189189 LOG (INFO) << " switcher is activated." ;
190190 context_->set_option (" _fold_options" , fold_options_);
191191 RefreshMenu ();
192- engine_->set_active_context (context_. get () );
192+ engine_->set_active_engine ( this );
193193 active_ = true ;
194194}
195195
196196void Switcher::Deactivate () {
197197 context_->Clear ();
198- engine_->set_active_context ();
198+ engine_->set_active_engine ();
199199 active_ = false ;
200200}
201201
Original file line number Diff line number Diff line change @@ -53,7 +53,7 @@ class RimeConsole {
5353 const Segment ¤t (comp.back ());
5454 if (!current.menu )
5555 return ;
56- int page_size = engine_->schema ()->page_size ();
56+ int page_size = engine_->active_engine ()-> schema ()->page_size ();
5757 int page_no = current.selected_index / page_size;
5858 the<Page> page (current.menu ->CreatePage (page_size, page_no));
5959 if (!page)
@@ -81,7 +81,7 @@ class RimeConsole {
8181 for (const KeyEvent &key : keys) {
8282 engine_->ProcessKey (key);
8383 }
84- Context *ctx = engine_->active_context ();
84+ Context *ctx = engine_->active_engine ()-> context ();
8585 if (interactive_) {
8686 PrintComposition (ctx);
8787 }
You can’t perform that action at this time.
0 commit comments