Commit graph

18296 commits

Author SHA1 Message Date
Thiemo Kreuz 1f4880181e Don't allow parameter names that break the wikitext syntax
Any of these characters results in bad wikitext, when we accept
it in a template parameter name.

Instead of displaying an error message we simply block the
button, as long as the input is not a valid parameter name.
Coming up with a message is not really worth it, I would
argue. Users typically don't have a reason to use any of these
characters. This is super rare. And even if, the behavior of
the widget is not hard to understand, I believe.

The same is done in ve.ui.MWParameterSearchWidget, a little
hidden in the .addResults() method.

Not yet approved by UX. Can be done in demo time.

Bug: T285869
Change-Id: I5576cdfb90411e5fdec93749f72939d31ecd9c56
2021-09-03 15:20:13 +02:00
Thiemo Kreuz e7df422495 Comment & compact targetLinksToNewWindow related syntax
Change-Id: Ifc18519d0d811c5c3fa64b1183f4eb94afd0acad
2021-09-03 14:57:29 +02:00
Thiemo Kreuz 6117f90d87 Add newline to README.md to fx render issue
This is rendered badly on
https://phabricator.wikimedia.org/diffusion/EVED/

Change-Id: I79d92c73eb1020026cfc06102cd1290dbd2d2abe
2021-09-03 14:54:50 +02:00
jenkins-bot 6caf286134 Merge "Hide "required" indicator in new sidebar" 2021-09-03 11:08:17 +00:00
jenkins-bot e57bc90459 Merge "Fix doc padding in new sidebar" 2021-09-03 11:08:15 +00:00
Adam Wight 7fd96f9b38 Hide "required" indicator in new sidebar
This is redundant with other hints.

Change-Id: I15aa2c0249efdd2071af0c085c0a5de6a1d25b29
2021-09-03 11:48:26 +02:00
jenkins-bot 836ab09a79 Merge "Rename and document select/focus events in template dialog" 2021-09-03 09:38:21 +00:00
Adam Wight 7b0d4b1224 Fix doc padding in new sidebar
This was causing the doc text to be undesirably indented.

Change-Id: I3cf8fb1136d354ca04ee077c19e37998fdb85549
2021-09-03 11:37:18 +02:00
jenkins-bot a7b3673fbd Merge "Remove redundant initialization from LinkCache" 2021-09-03 08:06:15 +00:00
Thiemo Kreuz fccb9bb4bb Use less repetitive code when calling .showHandles()
This is just shorter and avoids duplication, but does the same
as before.

Change-Id: Ib33603bcba15c08e93406c71677b4733bf16a149
2021-09-03 09:16:22 +02:00
Translation updater bot 760d8a3a86 Localisation updates from https://translatewiki.net.
Change-Id: I0602d1862e2210a62c9ff854a7bdd7399650f455
2021-09-03 08:15:29 +02:00
jenkins-bot 164982622f Merge "Manually optimize BetaFeatures .svg files" 2021-09-02 20:52:06 +00:00
jenkins-bot 7eb5b5a1ef Merge "Cleanups and optimizations related to .parseDom()" 2021-09-02 20:03:09 +00:00
Thiemo Kreuz 36bd65dda7 Cleanups and optimizations related to .parseDom()
E.g. avoid calling the rather expensive method multiple times
in a row, if only 1 of the results is needed.

Change-Id: Iff1d2c0892367e927303f6f45d3231e04c045cab
2021-09-02 18:29:09 +00:00
jenkins-bot a7c584b6db Merge "Minor CSS cleanup related to gaps between booklet pages" 2021-09-02 14:19:57 +00:00
jenkins-bot 4af4f624b9 Merge "build: Updating dependencies" 2021-09-02 14:10:09 +00:00
jenkins-bot d0653d8929 Merge "Tighten vertical gap between parameters" 2021-09-02 13:49:52 +00:00
Thiemo Kreuz e621df1cbe Minor CSS cleanup related to gaps between booklet pages
* Use a more specific …-top property, as this is the only thing
  we need to overwrite.
* Bring some selectors in a hierarchical order that makes more
  sense.

Change-Id: If36db87d83f699fe0a43ac67d439cac42cbb1fa3
2021-09-02 15:41:40 +02:00
jenkins-bot 5764fc6ac0 Merge "Make sure links in notices open in new tabs" 2021-09-02 13:22:31 +00:00
jenkins-bot 25da8cb9d7 Merge "Update template dialog help messages" 2021-09-02 13:20:31 +00:00
jenkins-bot 7848b1a071 Merge "Fix inconsistent keyboard :focus styles in template outline" 2021-09-02 13:04:17 +00:00
Adam Wight 7fca2417b8 Tighten vertical gap between parameters
Bug: T288465
Change-Id: I608f6e398ec77bf87bca363c761d44661ced8dfd
2021-09-02 14:33:53 +02:00
Adam Wight d8dcc89fa0 Update template dialog help messages
* New help text for the case where TemplateData is present, whether
  or not it includes a description.
* Remove help text when TemplateData is missing.

Bug: T288465
Change-Id: I0668ccae8eeb5ffffc626e3b7d24c1d7ed99bbed
2021-09-02 14:24:35 +02:00
WMDE-Fisch e8bb4b5010 Make sure links in notices open in new tabs
Bug: T276574
Change-Id: I458afab8a34d97619f858c49eea0cef3ad1b83fa
2021-09-02 14:12:01 +02:00
Thiemo Kreuz 688e824b35 Remove redundant initialization from LinkCache
This just repeats what the base class did. It looks like this
was forgotten when the base class was introduced in I097311e.

Bug: T75822
Change-Id: Ie5f5d358f24be7f9168214ea80713b0f7f295f47
2021-09-02 13:54:15 +02:00
jenkins-bot 52fe00975e Merge "Add notes and warning for missing parameter documentation" 2021-09-02 11:49:59 +00:00
jenkins-bot 52ed6367f9 Merge "Mark link to non-existing template page red" 2021-09-02 10:25:54 +00:00
jenkins-bot 7c304dc444 Merge "Highlight first template parameter when using tab to navigate" 2021-09-02 10:18:22 +00:00
jenkins-bot abdbf57f84 Merge "Fix click/enter on template parameters not focusing the input" 2021-09-02 10:11:49 +00:00
jenkins-bot c8e00fb98a Merge "Highlight corresponding template parameter in new sidebar" 2021-09-02 10:10:13 +00:00
Thiemo Kreuz a395e76653 Mark link to non-existing template page red
Bug: T272487
Change-Id: I15b377feda3a4e3b4570986668dfaa066afd70e9
2021-09-02 10:02:57 +00:00
jenkins-bot 6bb4b13f41 Merge "Remove unused event listener from …ParameterSelectWidget" 2021-09-02 09:56:49 +00:00
Thiemo Kreuz cb364303fa Manually optimize BetaFeatures .svg files
* Merge paths that use the same color.
* I also found an invisible path that can be removed.

Change-Id: Ib31aed78d7eaef9fad2ca8eeeb36bd489a132d6b
2021-09-02 11:38:14 +02:00
Translation updater bot fa0792e002 Localisation updates from https://translatewiki.net.
Change-Id: I1b12838127487dc724384dfb32e80561ecb32ea5
2021-09-02 08:26:58 +02:00
libraryupgrader 5f5ba72b3a build: Updating dependencies
composer:
* php-parallel-lint/php-parallel-lint: 1.3.0 → 1.3.1

npm:
* stylelint-config-wikimedia: 0.10.3 → 0.11.1
  The following rules are failing and were disabled:
  * declaration-property-unit-disallowed-list

Change-Id: Ib918897328cff66642c453d3d394a4e262ed788d
2021-09-02 03:43:02 +00:00
Thiemo Kreuz 06cf00f4c6 Rename and document select/focus events in template dialog
I tried hard to come up with the best possible names. Some of the
criteria I used:
* Longer and more unique is better. This makes it much easier to
  e.g. search for the event name.
* The term "part" should only be used for top-level parts. While
  template parameters have a unique id, they are not a subclass
  of …TransclusionPartModel and therefor not "parts".
* BookletLayout manages "pages" via "page names".
  * The page names of top-level parts are identical with the part
    id, see ve.ui.MWTemplateDialog.getPageFromPart.
  * The page names of parameters are identical with the parameter
    model id, see ve.ui.MWTemplateDialog.onAddParameter.

Some code knows parameter ids, but not what pages are. Other code
knows page names, but not what parameters are. The transition
currently happens in the …OutlineContainerWidget. We might want
to move this point up to the …TemplateDialog. But I would argue
this is good enough for now and can be changed later, if needed.

Bug: T285323
Change-Id: Iab2805b3203988db400b67c8d00e48905fdc53dc
2021-09-01 16:23:59 +00:00
WMDE-Fisch 1673f9f8bf Add notes and warning for missing parameter documentation
Bug: T276574
Change-Id: Iba0dd661ccdfd6cbb13aef7e8ace25995ecf0cf8
2021-09-01 17:29:25 +02:00
Thiemo Kreuz fc0b419540 Highlight first template parameter when using tab to navigate
I tried to memorize the cursor position in the list of
parameters. This way you could leave the list with tab, and
return to the original position with shift+tab. Unfortunately
this is not how the SelectWidget works. The moment the
highlight is gone it's gone. There is nothing that remembers
a position. We could introduce code to do this. But I feel
like this is a lot of effort for not much benefit. Also not
listed as a requirement anywhere, at the moment.

Bug: T285323
Change-Id: I8d44ba4539ec4b5535bc031accfeacd87e1886eb
2021-09-01 14:05:01 +00:00
Thiemo Kreuz 7a8ad64cbd Fix click/enter on template parameters not focusing the input
This got lost in patch I20dbd2b.

Both events come from the same sidebar class. The difference
between the two is:
* selectPart is when the button representing a top-level part
  is clicked.
* focusPart is when a parameter name is clicked while the
  parameter is already checked.

Yes, this is confusing at the moment. Following patches will
rename, merge and split a lot of these events to be much more
self-explaining.

Bug: T285323
Change-Id: I0c6b53c93c712ff5e47c1beb5199d590cba7ab1a
2021-09-01 16:01:17 +02:00
Thiemo Kreuz 9dbbc06273 Fix …TemplateSpecModel reporting missing pages as documented
The code in .cacheTemplateDataApiResponse() where the `specCache`
is filled skips missing pages. .setTemplateData() is never called.
While we could – in theory – check the `missing` flag (as done in
patchset 1), this flag never makes it to the spec.

Rather simple solution: Mark everything as undocumented, as long
as .setTemplateData() is not called.

This affects only missing pages. .setTemplateData() is called in
all other situations.

Bug: T272487
Bug: T276574
Bug: T290136
Change-Id: I7045e84f2f2ba5aa4591c94ea495b0249e6c40d6
2021-09-01 14:59:03 +02:00
Thiemo Kreuz b7efea5559 Remove unused event listener from …ParameterSelectWidget
We forgot to remove this in I319896a. The individual
…TransclusionOutlineParameterWidgets don't fire this event any
more. Instead this is done by the …SelectWidget.

Bug: T285323
Change-Id: I2c29e45127464785ffdc32d73b52188fcbefb7bf
2021-09-01 11:58:36 +00:00
Thiemo Kreuz b0ddcb0010 Highlight corresponding template parameter in new sidebar
Note there are currently two different code paths utilizing two
different events. The existing event handler actually changes
the selection of the top-level part in the sidebar (the
corresponding template name turns blue). The new event handler
highlights a parameter (it turns gray). This is currently
intentional (partly because of a bug in OOUI). I will try to
merge these code paths, if possible.

Please test, and if it works fine from the user's perspective,
please merge it as it is for now.

Bug: T285323
Bug: T289043
Change-Id: I8fafee68b8b7ff225c7b3c327f483f3426d8129c
2021-09-01 11:15:37 +02:00
jenkins-bot f7265428e8 Merge "Try to use margin/padding instead of flex for template dialog" 2021-09-01 08:53:01 +00:00
jenkins-bot 3b5064318c Merge "Connect focus event from BookletLayout to new sidebar" 2021-09-01 08:47:07 +00:00
Thiemo Kreuz a4dac831d9 Try to use margin/padding instead of flex for template dialog
Proof of concept: while flex is – well – flexible, it feels like
this should be possible with some good old block containers and
margins. It's pixel-perfect in my test.

Bug: T288465
Change-Id: I1458900fff197e08ce318398524a3cf2b6b9ee2a
2021-09-01 10:35:52 +02:00
jenkins-bot a86ef8db42 Merge "Add temporary compatibility to ve.dm.MWTransclusionModel" 2021-09-01 07:33:41 +00:00
Translation updater bot d11abb1ea8 Localisation updates from https://translatewiki.net.
Change-Id: I44fe1e2cd47dc1eb75fe439812260a83f62e3557
2021-09-01 08:16:53 +02:00
jenkins-bot 37f78f9afa Merge "Harden title parsing in MWTransclusionModel a bit" 2021-08-31 17:09:37 +00:00
jenkins-bot 7c15ad7fee Merge "Add a first PHPUnit test for SpecialCollabPad" 2021-08-31 16:56:21 +00:00
jenkins-bot fd4084efb9 Merge "Use ve.targetLinksToNewWindow in MWDismissibleMessageWidget" 2021-08-31 14:21:40 +00:00