dchan (David Chan)
User

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Wednesday

  • Clear sailing ahead.

User Details

User Since
Oct 23 2014, 10:14 AM (143 w, 3 d)
Availability
Available
IRC Nick
divec
LDAP User
Unknown
MediaWiki User
DChan (WMF)

Recent Activity

Jun 19 2017

dchan added a comment to T168221: ContentTranslation: integrate VisualEditor.

As mentioned in gerrit, the translation unit handling needs updating to take advantage of the rewritten transaction processing in VE.

Jun 19 2017, 6:56 AM · Patch-For-Review, VisualEditor, ContentTranslation
dchan created T168221: ContentTranslation: integrate VisualEditor.
Jun 19 2017, 6:19 AM · Patch-For-Review, VisualEditor, ContentTranslation

Jun 5 2017

dchan added a comment to T167027: Re-fix "Inserting a reference sometimes breaks horribly (due to trees in TransactionProcessor?)".

Thanks!

Jun 5 2017, 2:57 PM · Patch-For-Review, VisualEditor-DataModel, VisualEditor

Apr 29 2017

dchan claimed T162761: Introduce DM events for "a node of this type was inserted/deleted/modified"?.
Apr 29 2017, 3:33 AM · Patch-For-Review, VisualEditor-DataModel, VisualEditor

Apr 12 2017

dchan added a comment to T162762: ve.dm.TransactionProcessor: Restructure DM tree branches using existing nodes, instead of rebuilding them afresh.

Processing transactions - two pointer method for tree modification (Thanks to @Catrope for input on this)

Apr 12 2017, 2:24 AM · Patch-For-Review, User-Ryasmeen, Technical-Debt, VisualEditor-ContentEditable, VisualEditor-DataModel, VisualEditor
dchan added a comment to T162761: Introduce DM events for "a node of this type was inserted/deleted/modified"?.

Interesting question. On the tree side of things, I've been considering the shortcomings of detecting ancestry modifications (e.g. see https://gerrit.wikimedia.org/r/#/c/345955/4/src/ce/nodes/ve.ce.ContentEditableNode.js ). It isn't a huge issue right now, because we rebuild branches (ve.dm.Document#rebuildNodes) rather than altering them, so the only ancestry modifications we support are birth and death. But if in the future we change ve.dm.TransactionProcessor to be able to graft branches (see T162762 ), it will become more important.

Apr 12 2017, 2:18 AM · Patch-For-Review, VisualEditor-DataModel, VisualEditor
dchan created T162762: ve.dm.TransactionProcessor: Restructure DM tree branches using existing nodes, instead of rebuilding them afresh.
Apr 12 2017, 2:16 AM · Patch-For-Review, User-Ryasmeen, Technical-Debt, VisualEditor-ContentEditable, VisualEditor-DataModel, VisualEditor

Apr 9 2017

dchan created T162537: Restrict the class to which a mixin may be applied.
Apr 9 2017, 4:13 AM · OOjs

Apr 1 2017

dchan created T161944: Disabling a ve.ce.DocumentNode leaves descendant ActiveNodes enabled.
Apr 1 2017, 6:11 AM · User-Ryasmeen, MW-1.29-release (WMF-deploy-2017-04-25_(1.29.0-wmf.21)), VisualEditor-ContentEditable, VisualEditor

Mar 28 2017

dchan created T161611: Add serialize/deserialize methods to ve.dm.Transaction and ve.dm.IndexValueStore.
Mar 28 2017, 3:12 PM · Technical-Debt, User-Ryasmeen, MW-1.29-release (WMF-deploy-2017-04-04_(1.29.0-wmf.19)), VisualEditor-DataModel, VisualEditor

Mar 18 2017

dchan created T160839: Annotations don't merge properly, because their index hashes include original DOM element contents.
Mar 18 2017, 8:21 PM · MW-1.29-release (WMF-deploy-2017-03-28_(1.29.0-wmf.18)), User-Ryasmeen, VisualEditor-DataModel, VisualEditor

Feb 27 2017

dchan added a comment to T154195: Find/Replace (in-editor text search) should be diacritic-insensitive.

Without commenting on interface design (which isn't really my fortệ), I want to point out that this is one of the world's Contentious Issues. See https://bugs.chromium.org/p/chromium/issues/detail?id=71741 for example. So while some may disagree with this implementation, I think we should recognise that no amount of process is likely to resolve that disagreement.

Feb 27 2017, 11:46 PM · MW-1.29-release (WMF-deploy-2017-03-07_(1.29.0-wmf.15)), Design, VisualEditor-EditingTools, VisualEditor
dchan added a comment to T154195: Find/Replace (in-editor text search) should be diacritic-insensitive.

It wouldn't be so simple to enter an exact term containing accents unsupported by the user's keyboard. For example, an English Wikipedia editor may want to search for Paul Erdős or Owain Glyndŵr without even knowing (or caring) what accents their names contain, let alone knowing how to type them.

Feb 27 2017, 8:07 PM · MW-1.29-release (WMF-deploy-2017-03-07_(1.29.0-wmf.15)), Design, VisualEditor-EditingTools, VisualEditor

Feb 17 2017

dchan added a subtask for T112880: ContentTranslation alignment issues (tracking): T158435: Consider aligning sections by offsetTop directly, rather than trying to equalize cumulative height.
Feb 17 2017, 5:39 PM · Tracking, ContentTranslation
dchan added a parent task for T158435: Consider aligning sections by offsetTop directly, rather than trying to equalize cumulative height: T112880: ContentTranslation alignment issues (tracking).
Feb 17 2017, 5:38 PM · ContentTranslation
dchan created T158435: Consider aligning sections by offsetTop directly, rather than trying to equalize cumulative height.
Feb 17 2017, 5:37 PM · ContentTranslation

Feb 10 2017

dchan added a comment to T155928: Visual editor table editing conflicts with IME.

Their selections are much more faked than VisualEditor's - when inputting text, we have a real (native) cursor inside the ContentEditable block node where the text will live, whereas they don't.

Feb 10 2017, 8:53 AM · MW-1.29-release (WMF-deploy-2017-02-14_(1.29.0-wmf.12)), VisualEditor-Tables, Chinese-Sites, VisualEditor
dchan closed T155928: Visual editor table editing conflicts with IME as Declined.

Change 336648 (which I've just merged) makes Tab step directly into the next cell. So you still get this problem, but only once when editing multiple adjacent cells.

Feb 10 2017, 12:46 AM · MW-1.29-release (WMF-deploy-2017-02-14_(1.29.0-wmf.12)), VisualEditor-Tables, Chinese-Sites, VisualEditor

Feb 8 2017

dchan created T157595: Store metadata as block nodes in the main data list.
Feb 8 2017, 6:46 PM · Technical-Debt, Patch-For-Review, VisualEditor-DataModel, VisualEditor-ContentEditable, VisualEditor

Feb 2 2017

dchan added a comment to T157019: Unicorn does not get destroyed when arrowing out of a paragraph, causes weird arrow key behavior.

I420c14f56187bb881c4b636a746d4383d9ba3146 changed the SurfaceObserver logic so that branch node changes are not always signaled (see https://gerrit.wikimedia.org/r/#/c/241144/15/src/ce/ve.ce.SurfaceObserver.js,sidebyside ), causing this behaviour.

Feb 2 2017, 1:16 PM · Verified-in-Phase0, Verified, MW-1.29-release (WMF-deploy-2017-02-14_(1.29.0-wmf.12)), VisualEditor-ContentEditable, VisualEditor
dchan added a comment to T157019: Unicorn does not get destroyed when arrowing out of a paragraph, causes weird arrow key behavior.

Change 335641 makes backwards cursoring subject to this bug too, as it should be :-)

Feb 2 2017, 12:56 PM · Verified-in-Phase0, Verified, MW-1.29-release (WMF-deploy-2017-02-14_(1.29.0-wmf.12)), VisualEditor-ContentEditable, VisualEditor
dchan added a comment to T157019: Unicorn does not get destroyed when arrowing out of a paragraph, causes weird arrow key behavior.

It looks like this is due to the ordering in ve.ce.Surface#cleanupUnicorns -- it does this.moveModelCursor( 1 ) and then this.renderSelectedContentBranchNode() . The latter only removes the unicorns if the moveModelCursor didn't change branch node.

Feb 2 2017, 12:36 PM · Verified-in-Phase0, Verified, MW-1.29-release (WMF-deploy-2017-02-14_(1.29.0-wmf.12)), VisualEditor-ContentEditable, VisualEditor

Jan 23 2017

dchan added a comment to T155928: Visual editor table editing conflicts with IME.

From the filibuster log, I think it's likely we can't fix this :( It seems that when we change the selection in response to compositionStart, the immediate reaction of the IME in question is to close the candidate window (and hence effectively forget the first keystroke).

Jan 23 2017, 9:25 AM · MW-1.29-release (WMF-deploy-2017-02-14_(1.29.0-wmf.12)), VisualEditor-Tables, Chinese-Sites, VisualEditor
dchan added a comment to T155928: Visual editor table editing conflicts with IME.

Filibuster log of typing 'n' on Chrome 55 on Windows 8 with Microsoft Japanese IME

. Note how the wide 'n' disappears just before step 12426 (a second "input" event, even though only one key was pressed).

Jan 23 2017, 7:05 AM · MW-1.29-release (WMF-deploy-2017-02-14_(1.29.0-wmf.12)), VisualEditor-Tables, Chinese-Sites, VisualEditor
dchan added a comment to T155928: Visual editor table editing conflicts with IME.

I can reproduce the behaviour on Chrome 55 on Windows 8 with Microsoft Japanese IME. On that IME+browser, the event sequence from typing 'n' then 'i' is as below. Note that 'compositionstart' is the first thing we see (apart from the fake keydown).

Jan 23 2017, 6:32 AM · MW-1.29-release (WMF-deploy-2017-02-14_(1.29.0-wmf.12)), VisualEditor-Tables, Chinese-Sites, VisualEditor
dchan added a comment to T155928: Visual editor table editing conflicts with IME.

Thanks for the report! And thanks especially for the very helpful GIF. What browser are you using?

Jan 23 2017, 6:00 AM · MW-1.29-release (WMF-deploy-2017-02-14_(1.29.0-wmf.12)), VisualEditor-Tables, Chinese-Sites, VisualEditor

Jan 10 2017

dchan created T155021: Document coding patterns followed to help Javascript optimisation.
Jan 10 2017, 6:24 PM · Documentation, VisualEditor-Performance, VisualEditor

Dec 28 2016

dchan created T154231: BlockquoteNode should not be a ContentBranchNode.
Dec 28 2016, 11:28 AM · Technical-Debt, Patch-For-Review, VisualEditor-CopyPaste, VisualEditor-ContentEditable, VisualEditor

Oct 21 2016

dchan updated the task description for T52098: Ordered application of annotations to avoid fragmentation (e.g. ''[[Foo|Fo]]''[[Foo|o]]).
Oct 21 2016, 12:17 AM · Epic, VisualEditor, VisualEditor-DataModel
dchan added a comment to T126022: ve.dm.SurfaceFragment#insertContent: Annotate inserted content correctly.

See also T52098: Ordered application of annotations to avoid fragmentation (e.g. ''[[Foo|Fo]]''[[Foo|o]]) (Thanks @Jdforrester-WMF for a whole load of useful examples on that task)

Oct 21 2016, 12:12 AM · Technical-Debt, VisualEditor

Oct 20 2016

dchan updated the task description for T126022: ve.dm.SurfaceFragment#insertContent: Annotate inserted content correctly.
Oct 20 2016, 11:59 PM · Technical-Debt, VisualEditor
dchan added a comment to T126022: ve.dm.SurfaceFragment#insertContent: Annotate inserted content correctly.
Oct 20 2016, 11:57 PM · Technical-Debt, VisualEditor
dchan added a comment to T89575: Associate non-body content such as annotations and talk to a location in the article.

Hey, can we use a different word from "annotations" here - say "remarks" or something?

Oct 20 2016, 11:46 PM · Epic, Collaboration-Team-Triage, VisualEditor, Flow
dchan added a comment to T147896: Annotations in VisualEditor.

This is a great topic for discussion! But please can we call it something other than "Annotations"? How about "Remarks"?

Oct 20 2016, 11:31 PM · MediaWiki-extensions-Annotator, VisualEditor, Wikimedia-Developer-Summit (2017)

Oct 9 2016

dchan closed T113361: Augment ve.Range with annotation boundary side information as Declined.

I've come to the conclusion that this is not realistically achieveable, in part because of browsers don't stably preserve annotation order (see https://bugs.chromium.org/p/chromium/issues/detail?id=505683 ) or cursor boundary side (which is why since rGVEDc04d8c0b9d0bec52cd95bfa0b533b6b97e8ca23a we've treated the browser-applied annotations as canonical).

Oct 9 2016, 2:20 AM · VisualEditor-DataModel, Technical-Debt, Epic, VisualEditor-ContentEditable, VisualEditor

Oct 4 2016

dchan added a comment to T147304: On mobile, cursoring off a focusable node fails.

With 313997 merged, the second problem now presents: at step 4, the browser is left with a fake (deactivated) cursor where it should have a native selection. This means that further arrow key presses have no effect.

Oct 4 2016, 4:41 PM · Patch-For-Review, VisualEditor-CopyPaste, VisualEditor-ContentEditable, VisualEditor
dchan created T147304: On mobile, cursoring off a focusable node fails.
Oct 4 2016, 12:30 PM · Patch-For-Review, VisualEditor-CopyPaste, VisualEditor-ContentEditable, VisualEditor

Sep 17 2016

dchan created T145940: Rename ve.dm.AnnotationSet and document it better.
Sep 17 2016, 6:47 PM · Technical-Debt, VisualEditor-DataModel, VisualEditor
dchan created T145938: Test selections without relying on a ve.dm.Surface select event listener.
Sep 17 2016, 5:15 PM · MW-1.28-release (WMF-deploy-2016-10-04_(1.28.0-wmf.21)), VisualEditor-ContentEditable, VisualEditor

Aug 24 2016

dchan updated the task description for T142029: Publish VisualEditor FY2015-16 Retro.
Aug 24 2016, 7:18 AM · User-JAufrecht, Contributors-Team

Aug 17 2016

dchan added a comment to T94890: RFC: API for retrieval and saving of top-level HTML elements / sections by element ID.

We talked about doing this by changing the API so that the replace value is no longer a string, but instead a list, each element of which is either a string or an { id: 'mwXXX' } object, like this:

{
    mwABC: [ 'foo', { id: 'mwDEF' }, 'bar', ... ],
    mwBBB: ...,
}

In this example, the prior text for section 'mwABC' is to be replaced by 'foo' + ( the prior text for section 'mwDEF' ) + 'bar' .

Aug 17 2016, 10:25 PM · Patch-For-Review, Services-next, RESTBase, Parsoid, RESTBase-API, VisualEditor, VisualEditor-Performance
dchan added a comment to T143261: Paste identical annotated content into (end of?) an annotation serialises very poorly because it gets double-annotated.

I think this goes back a long way (I see this same behaviour in revisions from 2014).

Aug 17 2016, 9:22 PM · User-Ryasmeen, MW-1.29-release (WMF-deploy-2017-03-28_(1.29.0-wmf.18)), VisualEditor, VisualEditor-ContentEditable, VisualEditor-CopyPaste

Aug 12 2016

dchan created T142885: Can step out of unicorn at end of paragraph.
Aug 12 2016, 11:08 PM · VisualEditor-ContentEditable, VisualEditor

Aug 11 2016

dchan updated subscribers of T142754: Applying an insertion annotation fails at the beginning of a block.
Aug 11 2016, 9:25 PM · MW-1.28-release (WMF-deploy-2016-08-16_(1.28.0-wmf.15)), VisualEditor-ContentEditable, VisualEditor
dchan created T142754: Applying an insertion annotation fails at the beginning of a block.
Aug 11 2016, 9:24 PM · MW-1.28-release (WMF-deploy-2016-08-16_(1.28.0-wmf.15)), VisualEditor-ContentEditable, VisualEditor

Aug 9 2016

dchan added a comment to T140978: [Regression] Pasting into an insertion annotation throws an exception.

Change 303505 kills the insertion annotation on paste. I think that's completely fine.

Aug 9 2016, 2:44 PM · MW-1.28-release (WMF-deploy-2016-08-09_(1.28.0-wmf.14)), VisualEditor-CopyPaste, Regression, VisualEditor

Aug 5 2016

dchan created T142245: Apply inserted text annotations on top of the background annotation stack, not underneath.
Aug 5 2016, 6:51 PM · MW-1.29-release (WMF-deploy-2016-11-01_(1.29.0-wmf.1)), VisualEditor-DataModel, VisualEditor-CopyPaste, VisualEditor-ContentEditable, VisualEditor

Aug 4 2016

dchan added a comment to T123608: In Chromium, cursoring jumps over references and some extra characters.

Change 303008 just changes display:none to font-size:0 . In theory this could have an impact on bidi cursoring in some browser. Therefore I have tested references at bidi text offsets as shown below:

Aug 4 2016, 10:31 PM · MW-1.28-release (WMF-deploy-2016-08-09_(1.28.0-wmf.14)), Patch-For-Review, Cite, VisualEditor, VisualEditor-ContentEditable
dchan added a comment to T123608: In Chromium, cursoring jumps over references and some extra characters.

This seems to be a problem due to Chromium's position normalization interacting badly with its ce=false handling (similar to https://bugs.chromium.org/p/chromium/issues/detail?id=440877 ).

Aug 4 2016, 8:58 PM · MW-1.28-release (WMF-deploy-2016-08-09_(1.28.0-wmf.14)), Patch-For-Review, Cite, VisualEditor, VisualEditor-ContentEditable
dchan renamed T123608: In Chromium, cursoring jumps over references and some extra characters from Cursoring jumps over references and some extra characters to In Chromium, cursoring jumps over references and some extra characters.
Aug 4 2016, 8:48 PM · MW-1.28-release (WMF-deploy-2016-08-09_(1.28.0-wmf.14)), Patch-For-Review, Cite, VisualEditor, VisualEditor-ContentEditable

Jul 25 2016

dchan added a comment to T140538: Link with annotations gets split on re-render.

You can do it in core with the following example:

Jul 25 2016, 10:31 AM · MW-1.28-release (WMF-deploy-2016-08-09_(1.28.0-wmf.14)), VisualEditor-ContentEditable, VisualEditor

Jul 19 2016

dchan added a comment to T139428: Cursor gets active inside the slug label and the text "Insert Paragraph" can be edited.

Hmmmm you can cursor into the block slug, and then type into it, even when the slug isn't highlighted - then when you mouseover you see what you typed.

Jul 19 2016, 4:56 PM · VisualEditor

Jun 14 2016

dchan created T137847: %25foo is a legal article title, but %25bar is not.
Jun 14 2016, 9:57 PM · MediaWiki-General-or-Unknown

Jun 8 2016

dchan added a comment to T126487: Cursor gets "stuck" when down-arrowing from the start of a link which spans a page beginning/end.

On examination, we think this is due to https://bugs.chromium.org/p/chromium/issues/detail?id=618318 , which also affects Safari (but not Firefox).

Jun 8 2016, 2:45 PM · Patch-For-Review, VisualEditor-Links, VisualEditor-ContentEditable, VisualEditor

Jun 7 2016

dchan added a comment to T136840: Selection dragging opens context menu on mobile, causing surface to move and breaking drag in Android Chrome.

Filed as a Chromium bug: https://bugs.chromium.org/p/chromium/issues/detail?id=617981

Jun 7 2016, 3:52 PM · Browser-Support-Android-Google-Chrome, VisualEditor-ContentEditable, VisualEditor-MediaWiki-Mobile, VisualEditor
dchan added a comment to T136840: Selection dragging opens context menu on mobile, causing surface to move and breaking drag in Android Chrome.

Selection dragging *does* fire touchstart/move/end on Safari, but doesn't on Chrome Android. See http://s.codepen.io/Krinkle/debug/JKYOpV .

Jun 7 2016, 3:41 PM · Browser-Support-Android-Google-Chrome, VisualEditor-ContentEditable, VisualEditor-MediaWiki-Mobile, VisualEditor

Jun 2 2016

dchan created T136795: Touch events don't update surface properly for link selections.
Jun 2 2016, 5:50 AM · MW-1.28-release (WMF-deploy-2016-06-14_(1.28.0-wmf.6)), VisualEditor-ContentEditable, VisualEditor

May 24 2016

dchan created T136082: Make linear model/DOM synchronisation requirements more prominent.
May 24 2016, 11:27 AM · Documentation, VisualEditor-ContentEditable, VisualEditor

May 16 2016

dchan changed the status of T131660: Link cartouches break bidi algorithm from Resolved to Declined.
May 16 2016, 5:42 PM · VisualEditor-ContentLanguage, I18n, RTL, VisualEditor
dchan closed T131660: Link cartouches break bidi algorithm as Resolved.

Ok. So if we're not redefining links to embed a directionality context, then I think there's no feasible fix for this right now.

May 16 2016, 5:41 PM · VisualEditor-ContentLanguage, I18n, RTL, VisualEditor

May 10 2016

dchan added a comment to T125454: Punctuation after end line link should not be isolated in the next line.

I think this is a special case of T134571 , and will be hard to fix for the reasons given there. (Sadly, we can't set display:none on the img elements, because we need them to be visible in order to control the cursoring behaviour).

May 10 2016, 4:37 PM · VisualEditor
dchan added a comment to T134571: Link cartouches interfere with browsers' word break algorithms.

There may be no feasible fix for this.

May 10 2016, 4:33 PM · VisualEditor-ContentLanguage, VisualEditor

May 5 2016

dchan updated the task description for T134468: ve.ce.FocusableNode throws an error on selecting an about group containing a top-level whitespace text node.
May 5 2016, 6:23 AM · MW-1.28-release (WMF-deploy-2016-06-07_(1.28.0-wmf.5)), VisualEditor-ContentEditable, VisualEditor
dchan created T134468: ve.ce.FocusableNode throws an error on selecting an about group containing a top-level whitespace text node.
May 5 2016, 6:22 AM · MW-1.28-release (WMF-deploy-2016-06-07_(1.28.0-wmf.5)), VisualEditor-ContentEditable, VisualEditor

Apr 27 2016

dchan added a comment to T132819: Disable contentEditable-img-src workaround for Firefox >= 38.

It seems the Firefox fix is still needed in versions >= 38; see https://bugzilla.mozilla.org/show_bug.cgi?id=1267906 and T133610 .

Apr 27 2016, 4:03 AM · MW-1.27-release (WMF-deploy-2016-04-26_(1.27.0-wmf.22)), VisualEditor-ContentEditable, Browser-Support-Firefox, Performance, VisualEditor
dchan added a comment to T133610: Can't cursor onto inline alien at boundary of paragraph in Firefox.

This is caused by https://bugzilla.mozilla.org/show_bug.cgi?id=1267906 , which means all versions of Firefox still need the src attribute on Chimeras. We limited them to Firefox versions below 38 in https://gerrit.wikimedia.org/r/283774 .

Apr 27 2016, 4:01 AM · MW-1.27-release (WMF-deploy-2016-04-26_(1.27.0-wmf.22)), MW-1.27-release (WMF-deploy-2016-05-03_(1.27.0-wmf.23)), VisualEditor-ContentEditable, VisualEditor

Apr 26 2016

dchan claimed T131674: In Chrome/ium, block images skipped when cursoring right but not when cursoring left.
Apr 26 2016, 5:19 AM · MW-1.27-release (WMF-deploy-2016-05-03_(1.27.0-wmf.23)), Browser-Support-Google-Chrome, VisualEditor-ContentEditable, VisualEditor
dchan renamed T131674: In Chrome/ium, block images skipped when cursoring right but not when cursoring left from Block images skipped when cursoring right but not when cursoring left to In Chromium, block images skipped when cursoring right but not when cursoring left.
Apr 26 2016, 5:19 AM · MW-1.27-release (WMF-deploy-2016-05-03_(1.27.0-wmf.23)), Browser-Support-Google-Chrome, VisualEditor-ContentEditable, VisualEditor
dchan added a comment to T131674: In Chrome/ium, block images skipped when cursoring right but not when cursoring left.

Also, this affects Chromium but not Firefox (because of the differences in how they treat ce=false).

Apr 26 2016, 5:19 AM · MW-1.27-release (WMF-deploy-2016-05-03_(1.27.0-wmf.23)), Browser-Support-Google-Chrome, VisualEditor-ContentEditable, VisualEditor
dchan added a comment to T131674: In Chrome/ium, block images skipped when cursoring right but not when cursoring left.

It looks like there is no cursor holder between <p>Hello</p> and <figure>, but there is a cursor holder between </figure> and <p>world</p>. Investigating why [not].

Apr 26 2016, 3:35 AM · MW-1.27-release (WMF-deploy-2016-05-03_(1.27.0-wmf.23)), Browser-Support-Google-Chrome, VisualEditor-ContentEditable, VisualEditor

Apr 21 2016

dchan added a comment to T131677: Textual alien on directionality boundary cannot be reached using arrow keys.

I reported the missing visual cursor position as a Chromium bug: https://bugs.chromium.org/p/chromium/issues/detail?id=605445 .

Apr 21 2016, 8:18 AM · I18n, RTL, VisualEditor-ContentEditable, VisualEditor
dchan added a comment to T131677: Textual alien on directionality boundary cannot be reached using arrow keys.

The unexpected cursor jump is a Chromium bug; see https://bugs.chromium.org/p/chromium/issues/detail?id=605418 . (In Firefox, this doesn't happen: the cursor starts out both logically and visually at the start of the <#text>Arabic</#text> node).

Apr 21 2016, 7:34 AM · I18n, RTL, VisualEditor-ContentEditable, VisualEditor

Apr 4 2016

dchan added a comment to T131660: Link cartouches break bidi algorithm.

Hmm, the cause is that img tags behave like U+FFFC for bidi purposes, i.e. they break number sequences (which are weakly directional). Normally you might avoid this by wrapping the img in a directionality span/bdi tag, but here the whole point of the link cartouche img nails is to block annotation continuation, so wrapping the img is impossible.

Apr 4 2016, 5:55 PM · VisualEditor-ContentLanguage, I18n, RTL, VisualEditor

Mar 25 2016

dchan renamed T124318: getNodeAndOffset bug causes the cursor to jump after the close of a non-focusable node from getNodeAndOffset has incorrect returns if given the offset after the close of a non-focusable node to getNodeAndOffset bug causes the cursor to jump after the close of a non-focusable node.
Mar 25 2016, 4:27 PM · MW-1.27-release (WMF-deploy-2016-03-29_(1.27.0-wmf.19)), VisualEditor, VisualEditor-ContentEditable

Mar 15 2016

dchan created T130064: Use emulated setTimeout in unit testing.
Mar 15 2016, 8:15 PM · MW-1.27-release (WMF-deploy-2016-03-22_(1.27.0-wmf.18)), Technical-Debt, OOjs-UI (OOjs-UI-0.16.3)

Mar 2 2016

dchan added a comment to T124318: getNodeAndOffset bug causes the cursor to jump after the close of a non-focusable node.

The above patch fixes the offset calculation bug. (Cursoring rightwards off the focusable node of the example HTML is still glitchy, but for unrelated reasons)

Mar 2 2016, 10:51 AM · MW-1.27-release (WMF-deploy-2016-03-29_(1.27.0-wmf.19)), VisualEditor, VisualEditor-ContentEditable

Feb 26 2016

dchan created T128176: Offset adjustment in getSelectionState should preserve collapsedness.
Feb 26 2016, 11:19 AM · MW-1.27-release (WMF-deploy-2016-03-01_(1.27.0-wmf.15)), VisualEditor-ContentEditable, VisualEditor

Feb 23 2016

dchan added a comment to T127108: Mac OSX Korean: Implicit completion of CV syllables causes text removal.

@Jdforrester-WMF too can reproduce this bug without using VE. On Mac OS X with Korean GongjinCheong Romaja , he sees it both in the Firefox search bar and when editing data:text/html,<div contenteditable>xxx . It's also a known (reported) issue here: https://discussions.apple.com/thread/7425553 .

Feb 23 2016, 6:01 PM · MediaWiki-Page-editing, I18n, Browser-Support-Firefox, Contributors-Team, Upstream, VisualEditor-ContentLanguage, VisualEditor

Feb 16 2016

dchan updated subscribers of T127108: Mac OSX Korean: Implicit completion of CV syllables causes text removal.

@Jdforrester-WMF initially reported similar behaviour in T120156 , including video F3328523 which shows it happening (prior to a second bug that happens on pressing Enter).

Feb 16 2016, 9:06 PM · MediaWiki-Page-editing, I18n, Browser-Support-Firefox, Contributors-Team, Upstream, VisualEditor-ContentLanguage, VisualEditor
dchan updated subscribers of T120156: Uncommitted Korean IME candidate text ignored when user presses enter, causing CE/DM desync in Firefox.

From testing with @Tchanders and @Esanders , it looks like the syllable swallowing ('gan' + 'a' --> 'ga') is a separate bug (now filed as T127108 ). When that bug doesn't happen, the Enter bug appears to be fixed by https://gerrit.wikimedia.org/r/268316 .

Feb 16 2016, 8:32 PM · Patch-For-Review, Browser-Support-Firefox, VisualEditor-ContentEditable, VisualEditor
dchan created T127108: Mac OSX Korean: Implicit completion of CV syllables causes text removal.
Feb 16 2016, 8:30 PM · MediaWiki-Page-editing, I18n, Browser-Support-Firefox, Contributors-Team, Upstream, VisualEditor-ContentLanguage, VisualEditor

Feb 10 2016

dchan added a comment to T120156: Uncommitted Korean IME candidate text ignored when user presses enter, causing CE/DM desync in Firefox.

@Jforrester , thanks for https://phabricator.wikimedia.org/F3328523 . It's striking that the 'na' of 'ganada' gets swallowed, and that the Enter succesfully creates a new paragraph but then the cursor jumps back from position 5 to position 3 when you continue typing.

Feb 10 2016, 1:31 AM · Patch-For-Review, Browser-Support-Firefox, VisualEditor-ContentEditable, VisualEditor

Feb 6 2016

KuboF awarded T51569: Make ULS input methods work in content editable divs of VisualEditor a Orange Medal token.
Feb 6 2016, 4:46 PM · MW-1.27-release (WMF-deploy-2016-02-02_(1.27.0-wmf.12)), Category, User-notice, Epic, VisualEditor-ContentLanguage, VisualEditor, MediaWiki-extensions-UniversalLanguageSelector

Feb 3 2016

dchan claimed T123430: Cannot move cursor left past nail at the end of styled text unless using the mouse to move the cursor first.

This is a regression introduced in 05c0293f0525c180c7d4820ddd8ca5f0176b8d08 .
In ve.ce.Surface#afterDocumentKeyDown we try to fixup the model cursor for leftarrow/rightarrow after jumping a unicorn:

this.surfaceObserver.pollOnce();
...
this.checkUnicorns( fixupCursorForUnicorn );

But by the time this.checkUnicorns runs, the poll has already triggered ve.ce.Surface#handleObservedChanges , which has called this.checkUnicorns( false ) , and hence has blown away the unicorns without fixing up the cursor.

Feb 3 2016, 9:37 PM · MW-1.27-release (WMF-deploy-2016-02-16_(1.27.0-wmf.14)), VisualEditor-ContentEditable, VisualEditor

Feb 2 2016

dchan added a comment to T124318: getNodeAndOffset bug causes the cursor to jump after the close of a non-focusable node.

I've looked at this in detail, and I'm working on a cleaner rewrite on the following lines:

  1. Step with ve.adjacentDomPosition until we hit a position at the correct offset (which is guaranteed to be the first such position in document order).
  2. Use ve.adjacentDomPosition( ..., { skipSoft: false } ) to return all subsequent positions at the same offset.
  3. Examine these possible positions and pick accordingly, looking around a little further if necessary (e.g. to find matching unicorns).
Feb 2 2016, 8:37 AM · MW-1.27-release (WMF-deploy-2016-03-29_(1.27.0-wmf.19)), VisualEditor, VisualEditor-ContentEditable
dchan added a comment to T90523: Detect LTR/RTL directionality on a per-post basis when it's saved.

Correction: the client-side code was committed here: https://github.com/wikimedia/jquery.i18n/pull/76 .

Feb 2 2016, 8:13 AM · I18n, RTL, Collaboration-Team-Triage, Flow
dchan added a comment to T90523: Detect LTR/RTL directionality on a per-post basis when it's saved.

All heuristic directionality tests are inherently fallible, but the Unicode BIDI algorithm ( http://unicode.org/reports/tr9/ ) uses the comparatively simple/fast test of guessing the directionality of the paragraph as the directionality of the first strong directional character.

Feb 2 2016, 8:10 AM · I18n, RTL, Collaboration-Team-Triage, Flow

Jan 31 2016

dchan added a comment to T124318: getNodeAndOffset bug causes the cursor to jump after the close of a non-focusable node.

Change 267292 shows one way to fix this getNodeAndOffset bug. But would be cleaner to consider systematically the different node configurations getNodeAndOffset should handle, and the "best" return value for each configuration, then rewrite getNodeAndOffset[UnadjustedForUnicorn] from scratch accordingly.

Jan 31 2016, 9:05 PM · MW-1.27-release (WMF-deploy-2016-03-29_(1.27.0-wmf.19)), VisualEditor, VisualEditor-ContentEditable

Jan 28 2016

dchan closed T118729: Specific kanji input causes Firefox crash on Windows 10 as Resolved.

My best guess is that some unusual event sequence was triggering this bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1230473 (see the discussion at T86589 and the comments in ve.ce.Surface#onDocumentCompositionStart for further details about how it affects us).

Jan 28 2016, 5:19 AM · MW-1.27-release (WMF-deploy-2016-02-02_(1.27.0-wmf.12)), VisualEditor-ContentLanguage, VisualEditor-ContentEditable, Browser-Support-Firefox, VisualEditor
dchan closed T118729: Specific kanji input causes Firefox crash on Windows 10, a subtask of T109818: Make VisualEditor good enough to use with all common IMEs for Japanese, as Resolved.
Jan 28 2016, 5:19 AM · Category, VisualEditor

Jan 19 2016

dchan added a comment to T123901: Avoid use of the mixed ("main language code") variant, improve selector visibility.

If neither Accept-Language nor the geolocation give any clue as to variant, a highly visible callout nudging the user to select a variant would seem sensible. (Anecdotally I've seen people in Hong Kong struggling through the mixed text that can appear right now - this must happen to overseas Chinese readers too).

Jan 19 2016, 10:07 AM · Chinese-Sites, MediaWiki-Language-converter
dchan added a comment to T123901: Avoid use of the mixed ("main language code") variant, improve selector visibility.

+1 to increasing the selector visibility
+1 to improving conversion intelligence for content served from /wiki/ , to support link sharing

Jan 19 2016, 10:00 AM · Chinese-Sites, MediaWiki-Language-converter

Jan 15 2016

dchan added a comment to T86589: After selecting table cell by single clicking, typing with any IME does not work.

Change 264273 has a fix for this bug, but with the fix disabled for Firefox because of https://bugzilla.mozilla.org/show_bug.cgi?id=1230473 .

Jan 15 2016, 12:19 PM · MW-1.27-release (WMF-deploy-2016-01-19_(1.27.0-wmf.11)), VisualEditor-ContentLanguage, VisualEditor-ContentEditable, VisualEditor
dchan created T123716: IMEs: DOM corruption when overwriting cross-branchNode selection .
Jan 15 2016, 11:36 AM · MW-1.27-release (WMF-deploy-2016-01-19_(1.27.0-wmf.11)), VisualEditor-ContentLanguage, VisualEditor-ContentEditable, VisualEditor

Dec 21 2015

dchan added a comment to T121976: Don't use 大 ("big") character for translation icons.

To me, 大 stands out as somewhat arbitrary because it's hard to ignore its meaning of "big". To me 文 seems better because its meaning fits the meaning of the icon.

Dec 21 2015, 2:35 AM · OOjs-UI (OOjs-UI-0.15.3), MW-1.27-release (WMF-deploy-2016-02-16_(1.27.0-wmf.14)), WorkType-Maintenance, Notifications, UI-Standardization, Collaboration-Team-Triage, OOjs-UI

Dec 18 2015

dchan added a comment to T121849: In jQuery.IME on Chromium, Backspace doesn't clear context.

[Copied to https://github.com/wikimedia/jquery.ime/issues/423 ]

Dec 18 2015, 10:25 AM · MediaWiki-extensions-UniversalLanguageSelector
dchan created T121849: In jQuery.IME on Chromium, Backspace doesn't clear context.
Dec 18 2015, 10:21 AM · MediaWiki-extensions-UniversalLanguageSelector

Dec 14 2015

dchan updated the task description for T121216: jQueryIME: If contentEditable cursor not in a text node, then insertion goes before the first CE text character.
Dec 14 2015, 2:48 PM · MW-1.27-release (WMF-deploy-2016-02-02_(1.27.0-wmf.12)), VisualEditor, VisualEditor-MediaWiki, VisualEditor-ContentLanguage, Upstream, MediaWiki-extensions-UniversalLanguageSelector
dchan added a comment to T121216: jQueryIME: If contentEditable cursor not in a text node, then insertion goes before the first CE text character.

I think https://github.com/wikimedia/jquery.ime/pull/422 is ready to merge (it certainly improves CE behaviour overall).

Dec 14 2015, 10:23 AM · MW-1.27-release (WMF-deploy-2016-02-02_(1.27.0-wmf.12)), VisualEditor, VisualEditor-MediaWiki, VisualEditor-ContentLanguage, Upstream, MediaWiki-extensions-UniversalLanguageSelector

Dec 13 2015

dchan created T121357: Cannot cursor out of a unicorned annotation.
Dec 13 2015, 8:33 PM · VisualEditor-ContentEditable, VisualEditor