Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [orion-dev] Browser-provided editor APIs

Hi Kevin,

Improving the basic editing support on the browser would be much appreciated.

I agree with you that currently contentEditable is the only way to support a10y, i18n, input method and bidi. But contentEditable does not handle well large documents. This forced us to virtualize its content and overwrite some of the default editing behavior provide by the browser.

Is your goal to provide a text widget (perhaps extending contentEditable) or to provide basic API to support implementing a text widget? If the latter, these are some of the areas that we found difficulties because of the lack of API on the browsers:

- clipboard support
- hit testing (bidi aware)
- cursor movement  (complexe scripts aware, ie. Thai)
- full selection
- selection (bidi aware. ie. split cursors)


From: Kevin Dangoor <kdangoor@xxxxxxxxxxx>
To: orion-dev@xxxxxxxxxxx
Date: 08/10/2011 03:43 PM
Subject: [orion-dev] Browser-provided editor APIs
Sent by: orion-dev-bounces@xxxxxxxxxxx

Editors like Orion have to go to a lot of trouble to implement basic editing behavior. The problem is that even with all of that trouble taken, bidi text and accessibility are not easily supported (if at all!). I know that Orion is taking the approach of leveraging contentEditable where possible, but I also know that Orion is going to great lengths to get there:

Meanwhile the built-in editing code in browsers like Firefox already know how to do a10y and bidi text. What if basic editing could be provided by the browser and higher-level (code oriented, in Orion's case) functionality could be added on top?

We can make it happen. We just need to figure out what the APIs should be (and this is where people building the core editor code can help!)

What APIs would you want to outsource basic caret movement, selection and typing behavior to the browser?


Kevin Dangoor
product manager, developer tools

orion-dev mailing list

Back to the top