discourse/app/assets/javascripts
Martin Brennan 8c038d9498
FIX: Smart list jankiness in Chrome and fix for Firefox (#27762)
Last week I disabled smart lists in Firefox in 2ab4913d13.

This week the same issue presented itself in Chrome. Turns out,
the list modification was still not firing at the right time
in the event chain. I investigated and it looks as though
`beforeinput` is a better fit, since:

> This allows web apps to override text edit behavior before the browser
modifies the DOM tree, and provides more control over input events to
improve performance.

c.f. https://developer.mozilla.org/en-US/docs/Web/API/Element/beforeinput_event
and https://webkit.org/blog/7358/enhanced-editing-with-input-events/
and https://www.w3.org/TR/uievents/#events-keyboard-event-order

The order of keyboard events is `keydown` -> `beforeinput` -> `input` -> `keyup`

I changed to detect the event type of `insertLineBreak` which is
not always consistently true in `input` events. If it's true when
`beforeinput` is fired then we go ahead with the smart list when
`input` fires.
2024-07-10 09:31:16 +10:00
..
admin DEV: Refactor ace-editor loading and bump to latest version (#27772) 2024-07-09 10:09:30 +01:00
custom-proxy Build(deps-dev): Bump glob from 10.4.2 to 10.4.3 (#27751) 2024-07-08 08:40:31 +08:00
deprecation-silencer DEV: Silence whitespace-eating-comment warnings (#27129) 2024-05-22 16:21:51 +02:00
dialog-holder Build(deps): Bump ember-auto-import from 2.7.3 to 2.7.4 (#27615) 2024-06-26 01:35:06 +02:00
discourse FIX: Smart list jankiness in Chrome and fix for Firefox (#27762) 2024-07-10 09:31:16 +10:00
discourse-common DEV: Add case-converter common lib and use with AdminPlugin (#27725) 2024-07-05 13:22:48 +10:00
discourse-hbr DEV: Convert discourse-hbr to a regular package (#26562) 2024-04-08 20:00:34 +01:00
discourse-i18n Build(deps): Bump @embroider/addon-shim in the embroider group (#27142) 2024-05-23 00:32:09 +02:00
discourse-markdown-it DEV: Add case-converter common lib and use with AdminPlugin (#27725) 2024-07-05 13:22:48 +10:00
discourse-plugins Build(deps-dev): Bump webpack from 5.92.0 to 5.92.1 (#27544) 2024-06-20 09:58:31 +02:00
discourse-widget-hbs Build(deps): Bump ember-auto-import from 2.7.3 to 2.7.4 (#27615) 2024-06-26 01:35:06 +02:00
docs
ember-addons
ember-cli-progress-ci PERF: Improve production JS build in low-memory environments (#26849) 2024-05-02 11:43:59 +01:00
ember-production-deprecations DEV: Drop unused shims for Ember 3 deprecations (#26563) 2024-04-09 09:22:37 +01:00
float-kit Build(deps): Bump ember-auto-import from 2.7.3 to 2.7.4 (#27615) 2024-06-26 01:35:06 +02:00
locales FEATURE: Add Uyghur language (#27183) 2024-05-27 09:58:18 +02:00
pretty-text FIX: better iframe sanitization 2024-06-28 22:53:20 +02:00
select-kit Build(deps): Bump ember-auto-import from 2.7.3 to 2.7.4 (#27615) 2024-06-26 01:35:06 +02:00
theme-transpiler DEV: @babel/plugin-proposal-decorators -> decorator-transforms (#27260) 2024-06-10 15:51:48 +01:00
truth-helpers Build(deps): Bump ember-auto-import from 2.7.3 to 2.7.4 (#27615) 2024-06-26 01:35:06 +02:00
.npmrc
handlebars-shim.js
polyfills.js
run-patch-package
service-worker.js.erb DEV: Drop workbox dependency (#26735) 2024-04-24 10:19:12 +01:00