guardian / scribe

DEPRECATED: A rich text editor framework for the web platform
http://guardian.github.io/scribe/
Apache License 2.0
3.5k stars 245 forks source link

Here is a fix for Safari 6 #234

Closed daniel-nelson closed 10 years ago

daniel-nelson commented 10 years ago

Safari 6 still uses the vendor prefixed version of MutationObserver (source: https://code.google.com/p/mutation-summary/issues/detail?id=21).

Here is the fix applied to Scribe: https://github.com/daniel-nelson/scribe/commit/fed64b64f77fcf1b8628925036d4d82f4d80f3a5

Note that the new reliance on MutationObserver is incompatible with IE10. Would it be possible to revert to the old code that didn't rely on MutationObserver or to otherwise work around it? IE10 is a pretty modern browser, so if Scribe moves beyond it, it really won't be a viable general purpose library, as good as it is otherwise.

hmgibson23 commented 10 years ago

We're going to move to a Virtual Dom at some point in the future, so hopefully this would solve this problem.

theefer commented 10 years ago

The fix looks fairly innocuous. Do you want to open a PR with it?

@hmgibson23 I think even with Virtual DOM, we will likely rely on MutationObserver to know when to trigger the (vdom-powered) formatters?

@daniel-nelson Do you have an alternative suggestion for watching for changes? Does IE11 have MO? Or at least I believe something like Polymer's platform.js may be able to polyfill MO there? I heard yesterday that IE10 is not officially supported by platform.js though.