'RxSwift doesn't react to changes of Japanese keyboard

I have a search bar that gives suggestions based on the user input on search bar, in my code it binds the search bar text to my view model. Something like this:

searchBar.rx
    .text
    .orEmpty
    .map { $0.trimmingCharacters(in: .whitespacesAndNewlines) }
    .debounce(.milliseconds(250), scheduler: MainScheduler.instance)
    .skip(1)
    .distinctUntilChanged()
    .bind(to: viewModel.searchText)
    .disposed(by: disposeBag)

Everything works as expected. On Japanese keyboard however, it doesn't react to changes I have on the keyboard unless I accept the marked text. So basically it only react to unmarked text.

So when I type it only react to change if I select one of the words from the recommendation list:

enter image description here

What is the best to make it work. I only found this, however I still cannot figure out the best way to make it work.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source