Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dont exit poll() when ime composing #3394

Closed
wants to merge 1 commit into from
Closed

Conversation

shiren
Copy link

@shiren shiren commented Jul 17, 2015

related #1823

we have problem when composing korean because poll() method keep exit when korean first letter composing in IE11

IE11 make selection when korean letter is composing(we need several key type to make one letter)

I think this maybe solution

how about this?

@marijnh
Copy link
Member

marijnh commented Jul 17, 2015

Could you describe the problem that is occurring a bit more precisely?

@shiren
Copy link
Author

shiren commented Jul 17, 2015

ok sorry about my english

I'll show you with gif animation

below is right situation

good

when i type keyboard button "ㅇ"

we need poll() "ㅇ" and applyTextInput so editor should render "ㅇ"

then i type keyboard button "ㅏ"

we need poll() "아" and applyTextinput so editor should render "아"

then i type keyboard button "ㄴ"

we need poll() "안" and applyTextinput so editor should render "안"

so we can get complete one letter "안"

but IE 11 / window7 dont show first letter so when we want to input "안녕"

cm dont render "안" until "녕" composition start

show below

bad

this because

poll: function() {
      var cm = this.cm, input = this.textarea, prevInput = this.prevInput;
      // Since this is called a *lot*, try to bail out as cheaply as
      // possible when it is clear that nothing happened. hasSelection
      // will be the case when there is a lot of text in the textarea,
      // in which case reading its value would be expensive.
      if (this.contextMenuPending || !cm.state.focused ||
          (hasSelection(input) && !prevInput) ||
          isReadOnly(cm) || cm.options.disableInput || cm.state.keySeq)
        return false;

(hasSelection(input) && !prevInput)

that condition cancel polling "ㅇ" -> "아" -> "안"

so we can't see "ㅇ" -> "아" -> "안"

i hope that this comment can help

@marijnh
Copy link
Member

marijnh commented Jul 17, 2015

That makes sense. Merged as 76582ee

@marijnh marijnh closed this Jul 17, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants