Ticket #6962 (closed Bug: fixed)
Opera: problems with "small hard sign" in russian: ъ
| Reported by: | alexanderilyin | Owned by: | fredck |
|---|---|---|---|
| Priority: | Normal | Milestone: | CKEditor 3.6.1 |
| Component: | General | Version: | 3.5 |
| Keywords: | Cc: | fredck, garryyao, hallvord@… |
Description
Decription in Russian and suggested solution for v.2 is here: http://lusever.livejournal.com/50932.html and it's not working for 3.5
Problem is when user press "ъ" key, it's interpreted as CTRL+B (bold) combination so user could not input "ъ" in editor.
Attachments
Change History
comment:1 Changed 2 years ago by hallvord@…
- Status changed from new to confirmed
- Cc fredck, garryyao added
comment:3 Changed 2 years ago by fredck
@hallvord, good observation. Do you think that fixing the constants to values over 10FFFF (the Unicode range top) would be enough at this point?
comment:4 Changed 2 years ago by hallvord@…
Certainly :). I don't expect any practical uptake of characters outside the current Unicode charts anytime soon..
comment:5 Changed 2 years ago by fredck
- Keywords russian ъ removed
- Status changed from confirmed to review
- Owner set to fredck
Ok, so the fix should be that simple.
Note: See
TracTickets for help on using
tickets.

Is this a general, known problem? I would expect it to happen in all browsers, not just Opera, though I have not investigated.
This code is not guaranteed to work when users use keyboard layouts (such as Russian) that are typed directly (not through IME) and create keypress events for characters with Unicode value > 1000 (since 1000 is the lowest meta character constant used by CKEditor):
getKeystroke : function() { var keystroke = this.getKey(); if ( this.$.ctrlKey || this.$.metaKey ) keystroke += CKEDITOR.CTRL; if ( this.$.shiftKey ) keystroke += CKEDITOR.SHIFT; if ( this.$.altKey ) keystroke += CKEDITOR.ALT; return keystroke; },