[00:06:57] 3VisualEditor / 3Data Model: VisualEditor: Incorrectly displaying nested references - 10https://bugzilla.wikimedia.org/50749#c2 (10WhatamIdoing) 5RESO/FIX>3REOP Look at [[Otto I]]. It has 63 references, including ref #18 ("Thompson") from explanatory footnote [d]. This ref doesn't appear in VisualEditor. [00:28:59] 3VisualEditor / 3Editing Tools: VisualEditor: When inserting a References list, don't stop to ask me about groups - 10https://bugzilla.wikimedia.org/69727 (10WhatamIdoing) 3NEW p:3Unprio s:3enhanc a:3None Current workflow: 1. Place cursor. 2. Insert > References list 3. Click on the "Insert re... [00:39:38] okay this is so frustrating. [00:40:01] MediaSizeWidget is not properly revalidating. [00:51:56] (03PS12) 10Mooeypoo: Make the image model persistent [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/149217 [00:52:58] (03PS8) 10Mooeypoo: Add an event to updating current values in scalable [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/153069 [00:53:00] HA. [00:53:13] I conquered thee, MediaSizeWidget. [00:54:31] (03CR) 10jenkins-bot: [V: 04-1] Add an event to updating current values in scalable [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/153069 (owner: 10Mooeypoo) [00:59:19] ... seriously, jenkins? [00:59:53] what tha... [01:00:41] (03PS9) 10Mooeypoo: Add an event to updating current values in scalable [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/153069 [01:00:45] meh. [01:09:37] ... congrats, Keegan|Married ! [01:09:43] Keegan|Married: Yay! [01:09:52] Oh, heh, hi, thanks :) [01:10:25] When did that happen? [01:12:49] Friday! [01:38:13] CONGRATS! [01:50:35] :D [04:14:19] (03CR) 10Catrope: Add an event to updating current values in scalable (031 comment) [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/153069 (owner: 10Mooeypoo) [04:15:08] (03CR) 10Catrope: [C: 032] Add an event to updating current values in scalable [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/153069 (owner: 10Mooeypoo) [04:17:59] (03Merged) 10jenkins-bot: Add an event to updating current values in scalable [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/153069 (owner: 10Mooeypoo) [07:47:15] 3VisualEditor / 3MediaWiki integration: VisualEditor: Allow seeing all template parameters at once - 10https://bugzilla.wikimedia.org/69734 (10Amir E. Aharoni) 3NEW p:3Unprio s:3enhanc a:3None A Wikipedia editor raised the following problem: When experienced Wikipedians want to add a template in the... [10:55:15] 3VisualEditor: Deleting non-contiguous blocks does not work - 10https://bugzilla.wikimedia.org/69737 (10Spinningspark) 3NEW p:3Unprio s:3normal a:3None Intention: Delete two or more passages of text that are not contiguous Steps to Reproduce: 1. Ctrl-select a passage of text 2. Ctrl-select a second pa... [11:17:23] (03PS16) 10Esanders: [BREAKING CHANGE] Make content isolation optional [oojs/ui] - 10https://gerrit.wikimedia.org/r/148761 (owner: 10Trevor Parscal) [11:29:12] 3VisualEditor / 3ContentEditable: VisualEditor: Broken browser plug-in adds XML cruft like "gte mso" - 10https://bugzilla.wikimedia.org/69513#c2 (10NicoV) (In reply to Alex Monk from comment #1) > People copying in things from MS Word, it seems: > http://www.equalserving.com/what-the-heck-is-msonormaltable-... [11:53:24] (03CR) 10Esanders: [C: 031] Add ve.dm.Transaction.newNoOp() constructor [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/151783 (owner: 10Cscott) [11:57:24] (03CR) 10Esanders: [C: 04-1] "...and unit tests." (031 comment) [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/151798 (owner: 10Cscott) [12:01:18] (03CR) 10Esanders: "@Moriel, I plan on doing that eventually, and hopefully moving a bunch more code out of MW into core." [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/154421 (owner: 10Esanders) [12:02:08] (03PS1) 10Esanders: Adjust for border with box-sizing: border-box [oojs/ui] - 10https://gerrit.wikimedia.org/r/155011 [12:09:13] (03PS5) 10Esanders: Basic block image (figure/figcaption) support [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/154439 [12:09:15] (03PS7) 10Esanders: [BREAKING CHANGE] Remove span-wrapping of images [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/154417 [12:09:17] (03PS8) 10Esanders: [BREAKING CHANGE] Rename 'image' to 'inlineImage' [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/154421 [12:09:19] (03PS3) 10Esanders: Remove span-wrapping of link='' images [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/154415 [12:09:21] (03PS1) 10Esanders: Remove div-wrapping of block images [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155012 [12:09:23] (03PS1) 10Esanders: Remove unused image css file from core [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155013 [12:09:25] (03PS1) 10Esanders: Image renamed to InlineImage in core [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155014 [12:09:27] (03PS1) 10Esanders: Block image and caption added in core [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155015 [12:11:04] (03CR) 10jenkins-bot: [V: 04-1] Image renamed to InlineImage in core [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155014 (owner: 10Esanders) [12:11:26] (03CR) 10jenkins-bot: [V: 04-1] Remove unused image css file from core [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155013 (owner: 10Esanders) [12:11:55] (03CR) 10jenkins-bot: [V: 04-1] Block image and caption added in core [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155015 (owner: 10Esanders) [12:27:24] (03PS1) 10Esanders: Re-order methods in MWImageNode [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155018 [12:28:22] (03CR) 10jenkins-bot: [V: 04-1] Re-order methods in MWImageNode [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155018 (owner: 10Esanders) [12:29:07] (03PS2) 10Esanders: Re-order methods in MWImageNode [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155018 [12:30:07] (03CR) 10jenkins-bot: [V: 04-1] Re-order methods in MWImageNode [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155018 (owner: 10Esanders) [12:56:37] (03PS1) 10Esanders: Add description to title attribute of focusable highlight [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155021 [13:03:05] (03PS1) 10Esanders: Default dimensions to null, not empty objects [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155022 [13:03:07] (03PS1) 10Esanders: Create ImageNode mixin to share logic between Block & Inline [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155023 [13:33:34] (03PS1) 10Divec: Look up callbacks by name at call time [oojs/core] - 10https://gerrit.wikimedia.org/r/155025 [13:39:00] (03PS2) 10Divec: Look up callbacks by name at call time [oojs/core] - 10https://gerrit.wikimedia.org/r/155025 [13:41:35] (03CR) 10Divec: "1. Is the validation paradigm (validate on connect) reasonable? (I think validate on call would be too typo-friendly)" [oojs/core] - 10https://gerrit.wikimedia.org/r/155025 (owner: 10Divec) [14:15:29] (03CR) 10Mooeypoo: [C: 04-1] "There are two issues here:" [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155022 (owner: 10Esanders) [14:16:09] edsanders, can we try and first get my awaiting patches reviewed before we change stuff with the image model / scalable again? It will get really confusing otherwise :\ [14:16:37] but anyways, will ve.compare() fail on 'null' or is it just failing on 'undefined' ? I had a lot of issues with it, hence changing to objects. [14:16:51] ve.compare does fail on undefined [14:16:57] but we check for that [14:17:20] that's the wrong way to fix it though [14:17:39] especially as elsewhere we check for truthiness (which {} is) [14:17:49] I changed the truthiness to isEmptyObject [14:17:52] but I accept that part [14:17:58] that's much more expensive [14:17:59] that's why I said I wanted to look into ve.compare [14:18:18] *but* if = null works with ve.compare that's fine. I had a lot of issues, I wasn't sure about null, though. [14:18:46] it doesn't yet, but with in all but one place we ensure that things aren't null [14:19:12] {} actually breaks in core if you use a slightly different config for min/max size [14:19:19] hmmm [14:19:30] Okay, we might need to change ve.compare, then. I tested, but apparently not enough. [14:19:49] the bigger issue is this change (and its underlying one) https://gerrit.wikimedia.org/r/#/c/149217/ [14:19:59] That's the changes to make the image model persistent, including the scalable [14:20:47] So the dimensions have to be initialized with *something* (if not object, then null) and compared to with whatever new values are inserted (which is where it broke on undefined) [14:21:22] *and* it has to allow for resetting the dimensions and emit all the events while it's at it, to have the model and the MediaSizeWidget adjust when we switch images [14:21:47] for instance, the MediaSizeWidget has to disable the "full size" button if we don't have the originalDimensions yet and reactivate it when we do from the API [14:22:19] when we get new images, it must reset the initial size first... that makes sense? So I have to use ve.compare a lot, and the values must not be undefined. That's the source of my trouble here. [14:24:01] anyways, edsanders, advice will be appreciated if you think that's the wrong approach. [14:25:59] ok, I'll push a fix to oo.compare [14:27:33] edsanders, should I have a single 'reset' method instead of multiple ones? I have to have all events emitted, though... would it make sense to have one method emitting 2-3 events, or is it better to just leave it as separate resets ? [14:28:16] if it's possible for things to be resetted individually then you should have them separate [14:28:23] or possible in the future [14:29:08] Yeah, I think it migh be, but coming to think about it, 'default dimensions' are usually calculated (outside of Scalable, but still) from originalDimensions, since we need to use the ratio [14:29:12] same with max dimensions. [14:29:58] *but* I can see how this might not be the case outside of MW. For instance, if we have some cropped thumbnail size or something, where 'default' is always on. I'm not sure. For not I'll allow separate, but at some point we might want to combine them all. [14:41:56] (03CR) 10Divec: ve.Filibuster: Scrupulous state logging (033 comments) [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/152123 (owner: 10Divec) [14:42:16] (03PS18) 10Divec: ve.Filibuster: Scrupulous state logging [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/152123 [14:43:04] moouipoo, you can also use ve.compare( objectMightBeNull || {}, iAlsoMightBeNull || {} ) [14:43:35] ha, that's an interesting fix. [14:43:39] Yeah [14:45:18] (03PS1) 10Esanders: Use empty object as fallback when comparing to null/undefined [oojs/core] - 10https://gerrit.wikimedia.org/r/155047 [14:45:28] (03PS19) 10Divec: ve.Filibuster: Scrupulous state logging [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/152123 [14:45:49] which is essentially what that does ^^^^ https://gerrit.wikimedia.org/r/155047 [14:51:50] moouipoo, you also have the following code blocks repeated a few times and they don't look quite right: [14:51:51] !this.minDimensions || [14:51:52] ( [14:51:52] this.isDimensionsObjectValid( dimensions ) && [14:51:52] !ve.compare( this.minDimensions, dimensions ) [14:51:54] ) [14:51:56] hm, and in the comparison oo.compare( {}, undefined ) is true? shouldn't it be not true ? [14:52:14] where? [14:52:15] surely this.isDimensionsObjectValid should be required [14:52:24] (ve.dm.Scalable) [14:52:54] it should be ( isValid && ( !this.minDensions || ve.compare( .. ) ) [14:53:03] these are in the setters [14:53:08] hm, yeah [14:53:12] not sure what happened there. [14:53:26] Should be the other way around` [14:53:38] same with defaultDimensions [14:53:47] it's in a few places [14:53:48] will fix [14:53:52] yeah and min/max [14:54:03] wow, I copied it over without noticing. [14:54:33] I don't think !this.maxDimensions should be there at all, actually [14:55:03] edsanders, Oh, I know why -- it was again to prevent sending ve.compare a null object [14:55:26] right [14:55:36] If it deals with null/undefined then the test for !this.minDimensions/maxDimensions/etc can be taken off [14:56:02] should basically just be isValid && !ve.compare( old, new ) [14:58:42] (03PS2) 10Esanders: Default dimensions to null, not empty objects [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155022 [14:58:44] (03PS2) 10Esanders: Create ImageNode mixin to share logic between Block & Inline [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155023 [15:00:22] moouipoo, see 155022 ^^ [15:02:42] edsanders, that looks good, but i'm going to test it with https://gerrit.wikimedia.org/r/#/c/149217/ first (in a minute, must have breakfast before I eat my computer) [15:22:25] (03CR) 10Jforrester: [C: 04-1] "This is a pretty major design direction reversal. I'm not particularly against it (though I think it has flaws), but this should at least " [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/154871 (owner: 10Kaldari) [15:25:18] what the... [15:26:25] edsanders, with 155022 ve doesn't load for me [15:26:36] hm [15:26:44] makes no sense, it doesn't change anything breakable [15:27:01] and it doesn't need to be rebased... [15:27:10] you mean ve core, not mw? [15:27:34] I review it in ve core but I'm trying to load ve in mw [15:27:43] it has breaking dependencies [15:27:59] because I need to test this later with https://gerrit.wikimedia.org/r/#/c/149217/ which is ve-mw [15:28:01] it does? [15:28:16] which aren't really dependencies, just the a huge stack of image related changes [15:28:16] It's just changing ve.dm.Scalable [15:28:29] oh i see [15:28:32] yes, but look at it's parent commits [15:28:40] yeah I didn't notice [15:29:05] hm. I have to make sure it works with the ve-mw fix. That's the essential bit. Just from looking at it, it looks fine, but I'd like to test [15:29:32] speaking of which, I could use some review on it [15:29:56] the commit chain (2 ready + 3rd one wip) are fixing a whole bunch of bugs in media dialog and images [15:30:05] there, I've rebased it to the top of the stack [15:30:17] wait for it... [15:31:09] (03PS6) 10Esanders: Basic block image (figure/figcaption) support [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/154439 [15:31:11] (03PS8) 10Esanders: [BREAKING CHANGE] Remove span-wrapping of images [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/154417 [15:31:13] (03PS9) 10Esanders: [BREAKING CHANGE] Rename 'image' to 'inlineImage' [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/154421 [15:31:15] (03PS3) 10Esanders: Default dimensions to null, not empty objects [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155022 [15:31:17] (03PS3) 10Esanders: Create ImageNode mixin to share logic between Block & Inline [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155023 [15:32:00] awesomesauce [15:32:03] thanks, it works now [15:32:50] sweeet. This works. [15:35:36] edsanders, you need this to wait? I'm good with this change. Should I +2 or do you want me to wait and just +1 it? [15:36:11] +2 if you're happy it doesn't break anything [15:36:27] I just tested it with my fix. Let me test it without. [15:37:41] K, it doesn't break anything. [15:39:24] (03CR) 10Mooeypoo: [C: 032] "Perfect. Tested on its own and with the ve-mw pending fix I4327c86a9127f - works great with both." [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155022 (owner: 10Esanders) [15:41:30] (03Merged) 10jenkins-bot: Default dimensions to null, not empty objects [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155022 (owner: 10Esanders) [15:50:14] 3VisualEditor / 3MediaWiki integration: VisualEditor: Provide content-based descriptions when focusing references or templates - 10https://bugzilla.wikimedia.org/69744 (10Ed Sanders) 3NEW p:3Unprio s:3normal a:3None In particular we've had a community request to display a citation summary when focusi... [15:56:42] 3VisualEditor / 3MediaWiki integration: VisualEditor: Provide content-based descriptions when focusing references or templates - 10https://bugzilla.wikimedia.org/69744#c1 (10Bartosz Dziewoński) Is this the same thing as bug 69474? (You filed that one too, and the bug numbers are confusingly similar. :D) [16:00:42] 3VisualEditor / 3MediaWiki integration: VisualEditor: Provide content-based descriptions when focusing references or templates - 10https://bugzilla.wikimedia.org/69744#c2 (10Ed Sanders) 5NEW>3RESO/DUP I'm going crazy... *** This bug has been marked as a duplicate of bug 69474 *** [16:00:46] 3VisualEditor / 3Editing Tools: VisualEditor: Reference & cite tooltips could show content snippets, instead of generic labels - 10https://bugzilla.wikimedia.org/69474#c1 (10Ed Sanders) *** Bug 69744 has been marked as a duplicate of this bug. *** [16:01:29] 3VisualEditor / 3Editing Tools: VisualEditor: Reference & cite tooltips could show content snippets, instead of generic labels - 10https://bugzilla.wikimedia.org/69474#c2 (10Ed Sanders) We could list template values in order until we run out of room, but this may not lead to desirable results, for example th... [16:01:29] 3VisualEditor / 3MediaWiki integration: VisualEditor: Provide content-based descriptions when focusing references or templates - 10https://bugzilla.wikimedia.org/69744#c3 (10Ed Sanders) Clearly I was protecting against typos in the bug number :) [16:21:37] ahha [16:30:23] Corruption alert: visualeditor-needcheck on hewiki: https://he.wikipedia.org/?diff=15852536 [16:30:23] Corruption alert: visualeditor-needcheck on ptwiki: https://pt.wikipedia.org/?diff=39854453 [16:30:23] Corruption alert: visualeditor-needcheck on enwiki: https://en.wikipedia.org/?diff=621842944 [16:30:23] Corruption alert: visualeditor-needcheck on enwiki: https://en.wikipedia.org/?diff=621848298 [16:40:15] 3VisualEditor / 3MediaWiki integration: VisualEditor: saveOptions.summary is not updated if the summary is inserted using a tool - 10https://bugzilla.wikimedia.org/69749 (10Amir E. Aharoni) 3NEW p:3Unprio s:3normal a:3None The Hebrew Wikipedia, as well as a few others, have a gadget for canned edit s... [16:42:31] (03CR) 10Siebrand: [C: 031] "i18n/L10n reviewed." [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/154871 (owner: 10Kaldari) [16:54:57] 3VisualEditor / 3MediaWiki integration: VisualEditor: saveOptions.summary is not updated if the summary is inserted using a tool - 10https://bugzilla.wikimedia.org/69749#c1 (10Moriel Schottlender) This gets a bit weirder for me. It seems that with the gadget that summaries aren't saved at all, even if I type... [17:15:43] (03CR) 10Kaldari: "Jforrester: When is the design meeting? FWIW, I believe the thinking here was that 'Insert X' was too verbose for mobile, and design wants" [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/154871 (owner: 10Kaldari) [17:25:15] Anyone knows what the best way to check whether VE is initialized is in a gadget ? [17:25:28] I'm getting errors when I do "if (ve !=== undefined ) {...} " [17:25:52] keeps saying "ve is not defined" which should be the entire point of the test ,but apparently is disliked by JS [17:37:28] moouipoo: a check like that requires the variable to be declared [17:37:57] moouipoo: if you don't know if it's declared, use if(typeof ve !== 'undefined'), or if(window.ve !== undefined) [17:38:48] (in the first case, typeof is magic; in the second, you're checking for 've' property of window instead of the global ve variable, but these are the same thing in a browser environment) [17:39:47] oh typeof! bah [17:39:49] of course [17:39:57] 3VisualEditor / 3Mobile: VisualEditor: Selecting templates on iPad causes the on-screen keyboard to close, so they cannot be deleted - 10https://bugzilla.wikimedia.org/60110#c9 (10Roan Kattouw) This seems to be because we programmatically move focus from the surface to the pasteTarget, and iOS Safari is very... [17:40:27] thanks MatmaRex [17:42:46] HA, GADGET! [17:42:51] I win. [17:48:25] (03CR) 10Catrope: [C: 032] Add description to title attribute of focusable highlight [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155021 (owner: 10Esanders) [17:49:43] 3VisualEditor / 3MediaWiki integration: VisualEditor: saveOptions.summary is not updated if the summary is inserted using a tool - 10https://bugzilla.wikimedia.org/69749#c2 (10Moriel Schottlender) Got it. The issue was a mixup between dealing directly with the textarea object through jQuery (which updates .... [17:50:19] (03Merged) 10jenkins-bot: Add description to title attribute of focusable highlight [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/155021 (owner: 10Esanders) [17:55:12] 3VisualEditor / 3ContentEditable: VisualEditor: Support magic pasting of HTML that contains a transclusion of or link to a wiki image - 10https://bugzilla.wikimedia.org/64935 (10James Forrester) [17:58:18] (03CR) 10Catrope: [C: 032] Provide mw-redirect and mw-disambig classes for links on the surface [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/150824 (owner: 10Bartosz Dziewoński) [17:59:10] TrevorP|Away, this gadget fix made me wonder. ooui InputWidget has 'setValue' and 'getValue' both of which are stored in this.value. When a user actively types then the value changes, but when we set the value of the $input externally through something like $input.val( 'something' ) then the this.value doesn't seem to be updated, which causes "getValue()" to be wrong. [18:00:02] This is really weird, because we are listening to "change" event on the input itself and updating the value through it (with a timeout) -- so.... can this be broken? [18:00:09] (03Merged) 10jenkins-bot: Provide mw-redirect and mw-disambig classes for links on the surface [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/150824 (owner: 10Bartosz Dziewoński) [18:00:23] Or maybe when we do .val( 'something' ) externally, does that not trigger "change" ? (that shouldn't happen) [18:08:12] 3VisualEditor / 3Technical Debt: VisualEditor: isMsie doesn't catch MSIE 11+ - 10https://bugzilla.wikimedia.org/66096 (10James Forrester) p:5Normal>3High s:5normal>3enhanc [18:17:28] (03CR) 10Catrope: [BREAKING CHANGE] Make content isolation optional (034 comments) [oojs/ui] - 10https://gerrit.wikimedia.org/r/148761 (owner: 10Trevor Parscal) [18:17:39] (03CR) 10Catrope: [C: 04-1] "-1 per inline comments on PS15" [oojs/ui] - 10https://gerrit.wikimedia.org/r/148761 (owner: 10Trevor Parscal) [18:19:27] 3VisualEditor / 3MediaWiki integration: VisualEditor: saveOptions.summary is not updated if the summary is inserted using a tool - 10https://bugzilla.wikimedia.org/69749#c3 (10Eran Roz) Fixed by triggering manually input event. However oojs-ui should use the widget value to get must up to date value (e.g pr... [18:29:07] mooui|brb: ideally you wouldn't use $input.val( something ) I guess? [18:33:44] (03PS1) 10Jforrester: Rename "reference list" to "references list" internally [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/155091 (https://bugzilla.wikimedia.org/49923) [18:38:42] 3VisualEditor / 3MediaWiki integration: VisualEditor: saveOptions.summary is not updated if the summary is inserted using a tool - 10https://bugzilla.wikimedia.org/69749#c4 (10Eran Roz) Created attachment 16237 --> https://bugzilla.wikimedia.org/attachment.cgi?id=16237&action=edit Fix for oojs-ui Attachin... [18:46:54] TrevorParscal, mooui|brb: Well the problem is is there's no way to get a reference to the OO.ui.TextInputWidget object, so you can't do it the "right" way [18:47:08] TrevorParscal: Hey so I'm messing with WindowManager and guess what [18:47:17] clearWindows() is totally broken [18:47:18] why don't we have a reference to the widget? [18:47:30] Which is because removeWindows() is broken, which is because closeWindow() is unhelpful [18:47:40] Hmm. When inserting a link with the link inspector, is it a deliberate decision to select the text when it is closed? [18:47:44] promises.push( this.closeWindow( name ).then( OO.ui.bind( cleanup, null, name, win ) ) ); [18:47:53] Adityab: Someone filed a bug recently to ask for that not to happen [18:48:09] TrevorParscal: So that .then() there is only executed if the closeWindow promise succeeds [18:48:21] However, if you try to close a window that's already closed, you get a rejected promise [18:48:54] this is to do with the fact that close( data1 ) is not equivilent to close( data2 ) or close() [18:49:06] So what clearWindows() actually does, is it tries to close all windows, but that will fail for all but one or zero of them (the one currently open, if any), and so only the currently open window is actually destroyed and the others happily stick around [18:49:16] and if you want to close a window, that is already closed, it won't close with the data you pass it [18:49:19] RoanKattouw: Ah. Is it also deliberate that clicking outside the inspector inserts text? (I'd treat it like abandoning an edit) [18:49:31] and if those side effects are something you want [18:49:38] Also, if you try to close window A while window B is closing, it fails with a "closing with different data" error which is wrong [18:49:51] then it would be a much worse design to allow closing multiple times with multiple data [18:50:01] Sure, I understand that [18:50:11] I would just like for clearWindows() to actually do what it advertises [18:50:16] sure [18:50:26] it should close all with empty data [18:50:43] Adityab: Yes. [18:51:14] James_F: Thanks. That clears things up for a fix :) [18:51:25] TrevorParscal: Also, both of the "with different data" error messages in closeWindow are full of crap [18:51:38] i will take a look [18:51:52] In the first instance, it assumes that because you're trying to close a window that's not currently open, it was "already closed with different data". That's BS [18:52:08] right [18:52:45] I correct myself about the second instance: I said before that it would say "this window is closing with different data" if *any* window is closing, but we've already checked that win === this.currentWindow [18:52:51] TrevorParscal, regarding the $input.val() the whole problem arose because the gadget is dual-purpose for both the wikitext editor (where this is valid use) and the VE (where it isn't) [18:53:07] TrevorParscal, My fix checks if VE exists and then uses the proper ooui methods. [18:53:16] but it made me wonder why the event doesn't fire. [18:53:16] ok [18:53:19] I think the flow could be made clearer by putting return closing; in those if blocks so it's clear that we bail immediately (and so we don't have to wrap the rest of the function in an if statemtn) [18:53:37] it's annoying, but browser's do a horrible job at emitting events when values change [18:53:43] InputWidget has this.$input.on( 'keydown mouseup cut paste change input select', OO.ui.bind( this.onEdit, this ) ); [18:53:51] it /should/ emit a change event no matter how it was changed [18:53:54] 'change' should also account for a direct $input.val() [18:53:55] moouipoo: It's somewhat usual to do $textbox.val( foo ).trigger( 'change' ) . That's ugly but because browsers suck, lots of people do it [18:53:55] but, in fact, it does not [18:54:14] that should work [18:54:28] Yeah, apparently not. hm. [18:54:51] RoanKattouw, ah, okay, I thought we might have had an ooui bug that it doesn't recognize the changes inside the textbox, but it sounds like that's a more complicated issue [18:55:02] Yeah it's not an OOUI bug [18:55:06] It's a "the web is broken" bug [18:55:15] Hah [18:55:30] isn't everything though? [18:55:36] Pretty much. [18:57:37] oh.. TrevorParscal https://bugzilla.wikimedia.org/show_bug.cgi?id=69749 [18:57:42] you might want to jump in here [18:57:56] Eran didn't use my fix but rather made his own, and suggested an ooui fix [18:58:07] but that skips over the "this.value" method [18:59:42] 3VisualEditor / 3MediaWiki integration: VisualEditor: saveOptions.summary is not updated if the summary is inserted using a tool - 10https://bugzilla.wikimedia.org/69749#c5 (10Trevor Parscal) The problem is actually to do with the fact that the browser isn't emitting events when it should. OOjs UI is listeni... [19:09:12] 3VisualEditor / 3MediaWiki integration: VisualEditor: saveOptions.summary is not updated if the summary is inserted using a tool - 10https://bugzilla.wikimedia.org/69749#c6 (10Eran Roz) @Trevor Parscal, I already fixed it with triggering input event. However it should be fixed in oojs-ui itself for later cas... [19:13:42] 3VisualEditor / 3MediaWiki integration: VisualEditor: saveOptions.summary is not updated if the summary is inserted using a tool - 10https://bugzilla.wikimedia.org/69749#c7 (10Moriel Schottlender) The problem is that we really should be caching the value; it's done to protect the behavior against a lot of ev... [19:13:52] RoanKattouw: https://gerrit.wikimedia.org/r/#/c/154340/ :-) [19:22:27] 3VisualEditor / 3MediaWiki integration: VisualEditor: saveOptions.summary is not updated if the summary is inserted using a tool - 10https://bugzilla.wikimedia.org/69749#c8 (10Eran Roz) This is onEdit function (with setTimeout) that protect against browsers mishaps if I understand correctly. BTW - don't sc... [19:23:47] (03CR) 10Jforrester: "> Jforrester: When is the design meeting?" [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/154871 (owner: 10Kaldari) [19:29:28] TrevorParscal, he has a point https://bugzilla.wikimedia.org/show_bug.cgi?id=69749#c8 [19:30:22] I need your ooxpertise there to see if his suggestion is valid. He suggests that 'getValue()' will update directly from the input (leaving 'setValue' alone to update with the cached variable) to prevent the event issues [19:31:13] James_F, did you mean for me to implement templatedata sets in VE's transclusion dialog? [19:32:07] The bug you assigned to me speaks of a specific template through the API, but the 'sets' itself seems to not be implemented yet, so I'm trying to see if you mean I should implement (which I can, but I think trevor and timo had something planned?) or if this was a specific API issue [19:32:15] moouipoo: No? [19:32:25] moouipoo: The bug is about sets coming through from TD, not the use of that. [19:32:44] But ... coming from TD into VE... I'm confused. [19:33:00] okay, Both TD editor and VE's transclusion don't have 'sets' implemented. [19:33:09] Do you mean I should implement it in TD editor? [19:34:21] No. [19:34:27] 3VisualEditor / 3MediaWiki integration: VisualEditor: saveOptions.summary is not updated if the summary is inserted using a tool - 10https://bugzilla.wikimedia.org/69749#c9 (10Trevor Parscal) There are actually several reasons for the setTimeout, but the real problem here is that getValue compensating for no... [19:34:40] This is not about TD's editor, and it's not about VE's use of TD's sets. [19:34:50] It's about TD's API apparently not emitting sets when they're, umm, set. [19:34:57] James_F: https://gerrit.wikimedia.org/r/#/c/153980/1 [19:34:59] Which means mvolz's work doesn't. [19:35:02] Oh, okay, yes I see, hm. [19:35:18] I couldn't replicate it, but that was because the sets in the page she talked about didn't exist. (inside the td) [19:35:35] Well, yeah, please don't start editing TD blocks on-wiki to try to replicate. :-) [19:35:47] nono I'm replicating on my local machine [19:35:55] I remember the ... mishap... :D [19:36:21] :-D [19:36:27] 3VisualEditor / 3Mobile: VisualEditor Mobile: Selecting templates on iPad causes the on-screen keyboard to close, so they cannot be deleted - 10https://bugzilla.wikimedia.org/60110 (10James Forrester) [19:36:37] James_F, here's the thing though. On my local machine, i have Template:Something. I added sets: [ ... ] to it (with stuff inside sets) [19:36:41] I get the API response perfectly [19:36:44] with the sets included [19:37:14] But then VE won't do anything with it yet, obviously, because it's not yet implemented.... so I thought that was the issue. I'm confused about what the problem is. [19:43:10] Hmm. Maybe WORKSFORME then? [20:08:12] 3MediaWiki extensions / 3TemplateData: TemplateData: "sets" don't come through in api when td is in a transcluded page - 10https://bugzilla.wikimedia.org/69647#c2 (10Moriel Schottlender) I tested this on my local wiki by adding sets: [] to a local template. I was able to get the full information (with the se... [20:08:38] (03CR) 10Catrope: "I benchmarked this in Chrome and it appears to be slightly faster :O . Opening the commandHelp dialog took 201ms before and 193ms after (a" [oojs/ui] - 10https://gerrit.wikimedia.org/r/153980 (owner: 10Catrope) [20:09:00] (03CR) 10Jforrester: [C: 032] "WFM." [oojs/ui] - 10https://gerrit.wikimedia.org/r/153980 (owner: 10Catrope) [20:26:16] Hi TrevorParscal :) [20:26:27] hi [20:26:43] at Wikia we want to display different dialog for "simple" template (the single part) and different for "complex" (the multipart) [20:27:14] do you have an idea how to handle it? from what I know currently node is linked to dialog based on the symbolic link/name [20:28:12] InezK: We already essentially have a different dialog, except it's secretly the same dialog with two different modes [20:28:25] exactly :) [20:28:48] at Wikia we are about to implement our own template dialog [20:28:59] it will not depend on Template Data (because we are not using it yet) [20:29:21] and it will simply display all possible parameters for a template (with a filter/search functionality) [20:29:33] InezK: How will it know what parameters exist? [20:30:00] InezK: Given that some parameters pop into existence thanks to Lua based on the values of other parameters… [20:30:01] we have an backend api for that, very primitive, regex on wikitext of the template [20:30:06] Eww. [20:30:07] OK… [20:30:34] James_F: "Eww." <- I agree.. [20:30:53] (03Merged) 10jenkins-bot: Fix CSS transplantation in IE [oojs/ui] - 10https://gerrit.wikimedia.org/r/153980 (owner: 10Catrope) [20:31:50] "transplantation". RoanKattouw are you using surgery terminology on purpose with IE ? [20:32:00] moouipoo: That code predates IE support actually [20:32:13] Damn. We could've started a trend. [20:32:17] But if you look at what it does you'll see why I'm using surgery metaphors [20:32:30] "The operation went well; the patient died." IE 11. [20:33:18] bah. [20:33:32] RoanKattouw, did you hear that Microsoft ordered everyone to *revert* the latest 3 updates ? [20:33:57] Luckily my computer was off during those updates, but they took the update off their servers and called for people to uninstall it. [20:40:20] RoanKattouw: so yeah, it we are doing two separated dialogs - do you think there is a nice way to open one or the other based on information about the node? [20:41:43] InezK: Sorry going to lunch now [20:41:47] We kind of do this for citations right now [20:42:00] If a template is a special kind of template we open the citation dialog [20:42:07] But I forget how that's done [20:42:08] * RoanKattouw_away goes to lunch [20:43:03] i concur [21:31:14] (03PS8) 10Jforrester: Factor out ve.dm.Transaction.pushReplaceInternal [VisualEditor/VisualEditor] - 10https://gerrit.wikimedia.org/r/116214 (owner: 10Catrope) [21:55:29] James_F: ping ^-^ [21:55:41] mvolz: Ping about what? :-) [21:55:59] end-of-intershipy things :) [21:56:15] so, everything is working with td in localhost, so yay. [21:56:18] mvolz: Thanks you to getting Moriel to use "ooui" in her nick, I got pinged > 200 times in this channel alone in the last 12 hours, so I've probably missed what you asked. [21:56:23] ;-( [21:56:30] Yeah, you said. Yay. [21:56:36] oh no... sorry.... [21:56:41] No worries. :-) [21:56:55] it was my evil plan [21:56:58] all along [21:57:33] yeah so, working on localhost, but obv. I have not committed the td stuff [21:58:15] so I wanted to run that by you. [22:01:15] * James_F nods. [22:01:21] well anyway, sample td: https://www.mediawiki.org/wiki/User:Mvolz/Weekly_Reports/SampleTD and right now only params, lists of params, and lists of lists of params are allowed, and it works but it's a little different from what you had initially envisioned. [22:01:42] but I was planning to try to commit over the next week or so [22:02:04] the corresponding VE code is like two lines, just a getter for maps and the filling which happens in extend [22:03:45] also not sure what you envisioned happening with the project going forward [22:04:20] crossref people mentioned something about funding me further? wondering how that would sit with you [22:06:28] * James_F nods. [22:06:32] It looks good. [22:15:44] 3VisualEditor / 3Technical Debt: VisualEditor: Rename internal use of "Reference list" to "References list" - 10https://bugzilla.wikimedia.org/49923 (10James Forrester) a:3James Forrester [22:17:15] oh mvolz ! can you help me with that bug? I am not sure I'm understanding the problem ,since at least some of it works for me locally [22:27:42] 3VisualEditor / 3ContentEditable: VisualEditor: Reference & cite tooltips should show content snippets, instead of generic labels - 10https://bugzilla.wikimedia.org/69474#c3 (10James Forrester) 5NEW>3ASSI p:5Unprio>3High s:5normal>3enhanc I think we'd much rather keep the current model of showing... [22:28:07] (03PS13) 10Mooeypoo: Make the image model persistent [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/149217 (https://bugzilla.wikimedia.org/69450) [22:28:37] moouipoo: ack, I hope I didn't waste your time... I'll recheck it tomorrw and get back to you. But for me, the problem was on localhost. Weird. [22:28:40] (03PS7) 10Mooeypoo: [wip] Check for changes in the model [extensions/VisualEditor] - 10https://gerrit.wikimedia.org/r/152790 (https://bugzilla.wikimedia.org/68058) [22:29:02] mvolz, not wasting at all, I'm trying to understand what I can do to fix. [22:29:09] I think it might be a problem with the API [22:29:38] if you're asking for Template:Foo when the templatedata is, in fact, in Template:Foo/doc I don't think the API knows how to deal with that. Is that the issue? [22:29:54] no, part of the td came through [22:29:57] all the params came through [22:30:00] But that's a general templatedata issue we should deal with... I didn't see anything specifically related to sets. [22:30:01] oh [22:30:03] really? [22:30:09] but sets returned with an empty object [22:30:15] hmmm. [22:30:27] Ok I'll check again [22:30:30] but I will recheck everything tomorrow and get back to you [22:30:31] moouipoo: If the TD in Template:Foo/doc is transcluded to Template:Foo it should come through. [22:30:52] James_F, does the API know to look for templatedata in both? [22:31:08] moouipoo: No, but that's what the transclusion achieves. [22:31:16] moouipoo: "/doc" is wiki-specific. [22:31:38] Right [22:31:57] So how would the API know to look for tags not in Template:Foo but in Template:Foo/doc [22:32:22] Because if there's an issue where everything comes back except for sets, there might be an issue with *that* function of the API, is what i'm thinking [22:32:38] But I couldn't really spot where it was doing its magic. [22:34:12] moouipoo: Template:Foo has {{/doc}} in it. [22:34:22] moouipoo: The {{/doc}} pulls in the /doc page. [22:34:36] This makes the TemplateData populate for it. [22:34:52] The block means it doesn't show up in the Template itself. [22:34:53] ohhh [22:34:56] okay, that makes sense. [22:35:29] Yeah I was trying to think how the magic happens in the API. Apparently, it's wiki-voodoo. [22:37:42] :-) [22:37:53] When we have associated namespaces it'll be more magic. [22:38:05] Template:Foo and TemplateData:Foo will magically self-associate. [22:38:07] (Whee.) [22:38:12] But that's some time away. [22:42:11] RoanKattouw, I'm looking at ve.debounce [22:42:23] I see that it is used with only one argument in some places [22:42:36] which results in undefined being passed as the delay to setTimeout [22:42:38] is this OK? [22:43:00] Yeah it should be [22:43:12] We also do setTimeout( function () { ...} ); in a bunch of places, without the second argument [22:43:17] It's equivalent to passing 0 [22:43:45] RoanKattouw, MDN doesn't list delay as optional though [22:44:39] jgonera: The spec does though http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#timers [22:45:08] interesting, thanks RoanKattouw [22:47:07] James_F: when we do that, can we name the namespace without CamelCase, please? :) [22:47:27] (03PS1) 10Catrope: Use a pollNode for every transplanted stylesheet, not just external ones [oojs/ui] - 10https://gerrit.wikimedia.org/r/155156 [22:47:28] (03PS1) 10Catrope: Support nested style transplantation [oojs/ui] - 10https://gerrit.wikimedia.org/r/155157 [22:47:38] MatmaRex: Not [[Template TemplateData:Foo]]? ;-) [22:49:10] such pages should also probably be auto-filled with a template TemplateData data template, by the way, when someone tries to create them. :> [22:50:43] James_F: by the way, you probably know – who's doing the thumbnail update thingy? there seems to be no activity [22:50:59] MatmaRex: Jon Robson, nominally. [22:51:42] hmm. okay. (i'm looking for someone to merge https://gerrit.wikimedia.org/r/#/c/154802/ :) ) [22:57:40] MatmaRex: TrevorP|Away can probably merge that if you want. [23:00:49] would be great, naturally :D [23:05:21] * James_F will bug him. [23:48:59] 3MediaWiki extensions / 3Cite: Cite: Provide a way for users to find articles which have the reference list inserted automatically - 10https://bugzilla.wikimedia.org/67700#c15 (10Romaine) When is this going live? We are waiting for this... [23:56:57] 3MediaWiki extensions / 3Cite: Cite: Provide a way for users to find articles which have the reference list inserted automatically - 10https://bugzilla.wikimedia.org/67700#c16 (10James Forrester) (In reply to Romaine from comment #15) > When is this going live? We are waiting for this... It's not right now....