Page MenuHomePhabricator

Replace and deprecate CapsuleMultiselectWidget
Closed, ResolvedPublic

Description

With v0.21.0 TagMultiselectWidget has been integrated into OOUI and since then, it has been proven its stability while being used successfully in prominent places like RCFilters and AdvancedSearch.
As a consequence, let's replace, deprecate and finally remove inferior CapsuleMultiselectWidget from OOUI. It would also improve situation for newcomers who need to decide what they are going for and having presented two mostly similar widgets.

Related Objects

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
Volker_E updated the task description. (Show Details)

Change 399427 had a related patch set uploaded (by Anomie; owner: Anomie):
[mediawiki/core@master] Use new TagMultiselectWidget in ApiSandbox

https://gerrit.wikimedia.org/r/399427

Change 399427 merged by jenkins-bot:
[mediawiki/core@master] Use new TagMultiselectWidget in ApiSandbox

https://gerrit.wikimedia.org/r/399427

Change 415525 had a related patch set uploaded (by Prtksxna; owner: Prtksxna):
[mediawiki/core@master] multiselect: Use MenuTagMultiselectWidget

https://gerrit.wikimedia.org/r/415525

Change 415525 merged by jenkins-bot:
[mediawiki/core@master] multiselect: Use MenuTagMultiselectWidget

https://gerrit.wikimedia.org/r/415525

Change 417193 had a related patch set uploaded (by Prtksxna; owner: Prtksxna):
[oojs/ui@master] TagMultiselectWidget: Abort addTag if createTagItemWidget returns null

https://gerrit.wikimedia.org/r/417193

Change 417194 had a related patch set uploaded (by Prtksxna; owner: Prtksxna):
[mediawiki/core@master] [WIP] mw.widgets.CategoryMultiselectWidget use TagMultiselectWidget

https://gerrit.wikimedia.org/r/417194

Change 417193 abandoned by Prtksxna:
TagMultiselectWidget: Abort addTag if createTagItemWidget returns null

Reason:
I am sorry. I jumped the gun here. The problem I was facing was somewhere else.

See:
https://phabricator.wikimedia.org/T189282
Ia0732faff2d98f1ca07da5fbe1f2abc27f71a617

https://gerrit.wikimedia.org/r/417193

From the description:
  • Extension UploadWizard: CategoriesDetailsWidget extends CapsuleMultiselectWidget

uw.CategoriesDetailsWidget uses mw.widgets.CategoryMultiselectWidget and thankfully doesn't extend it. If I understand correctly, this one should get resolved with rMW4cc9dd16ee15: mw.widgets.CategoryMultiselectWidget use TagMultiselectWidget.

From the description:
  • Extension VisualEditor: CapsuleMultiselectWidget for categories

Doesn't VE still use the completely separate ve.ui.MWCategoryWidget?
See T147811: Unify mw.widgets.CategorySelector and ve.ui.MWCategoryWidget.

If you feel like it, you can have a look at what we're doing in https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/AdvancedSearch/+/439916/ There we have an abstracted widget that will hopefully look and work similar to CategoryMultiselectWidget but also be able to do the same work for any namespace (e.g. Templates). Feel free to copy code and/or make suggestions to improve it.

For AdvancedSearch, we're omitting the progress spinner while looking up the existence of pages (to make the field allow arbitrary input).

Change 417194 merged by jenkins-bot:
[mediawiki/core@master] mw.widgets.CategoryMultiselectWidget use TagMultiselectWidget

https://gerrit.wikimedia.org/r/417194

From the description:
  • Extension VisualEditor: CapsuleMultiselectWidget for categories

Doesn't VE still use the completely separate ve.ui.MWCategoryWidget?
See T147811: Unify mw.widgets.CategorySelector and ve.ui.MWCategoryWidget.

@Esanders Insights on the VE side of this? See @Prtksxna's comment above.

Yes, VE uses a different widget. I removed it from the task description.

Change 442782 had a related patch set uploaded (by Prtksxna; owner: Prtksxna):
[mediawiki/extensions/UploadWizard@master] CategoriesDetailsWidget: Stop using methods from CapsuleMultiselectWidget

https://gerrit.wikimedia.org/r/442782

Change 442784 had a related patch set uploaded (by Prtksxna; owner: Prtksxna):
[mediawiki/core@master] ForeignStructuredUpload: Stop using methods from CapsuleMultiselectWidget

https://gerrit.wikimedia.org/r/442784

Change 442786 had a related patch set uploaded (by Prtksxna; owner: Prtksxna):
[mediawiki/core@master] RELEASE-NOTES: Add note for breaking CategoryMultiselectWidget

https://gerrit.wikimedia.org/r/442786

Change 442786 merged by jenkins-bot:
[mediawiki/core@master] RELEASE-NOTES: Add note for breaking CategoryMultiselectWidget

https://gerrit.wikimedia.org/r/442786

Change 442784 merged by Krinkle:
[mediawiki/core@master] ForeignStructuredUpload: Stop using methods from CapsuleMultiselectWidget

https://gerrit.wikimedia.org/r/442784

Change 443107 had a related patch set uploaded (by VolkerE; owner: VolkerE):
[oojs/ui@master] [DEPRECATING CHANGE] CapsuleMultiselectWidget: Deprecate widget

https://gerrit.wikimedia.org/r/443107

Change 442782 merged by jenkins-bot:
[mediawiki/extensions/UploadWizard@master] CategoriesDetailsWidget: Stop using methods from CapsuleMultiselectWidget

https://gerrit.wikimedia.org/r/442782

Change 443107 merged by jenkins-bot:
[oojs/ui@master] [DEPRECATING CHANGE] CapsuleMultiselectWidget: Deprecate widget

https://gerrit.wikimedia.org/r/443107

Volker_E updated the task description. (Show Details)
Volker_E moved this task from Reviewing to Waiting for breaking release on the OOUI board.
Volker_E removed a subscriber: gerritbot.

Change 463872 had a related patch set uploaded (by Jforrester; owner: Jforrester):
[oojs/ui@master] [BREAKING CHANGE] Drop CapsuleMultiselectWidget, deprecated since v0.27.5

https://gerrit.wikimedia.org/r/463872

Change 463872 merged by jenkins-bot:
[oojs/ui@master] [BREAKING CHANGE] Drop CapsuleMultiselectWidget, deprecated since v0.27.5

https://gerrit.wikimedia.org/r/463872

A minor, yet exciting detail of this (exemplified on WikimediaUI theme – oojs-ui-widgets-wikimediaui.css minified “original size” and gzipped “result size”):

v0.28.2v0.29.0
Original size: 36484 bytes Result size: 4339 bytesOriginal size: 30168 bytes Result size: 3981 bytes

Or around 8% file size reduction minified/gzipped of render blocking CSS.

Volker_E removed a project: Patch-For-Review.
Volker_E updated the task description. (Show Details)
Volker_E awarded a token.

Change 464370 had a related patch set uploaded (by VolkerE; owner: VolkerE):
[mediawiki/core@master] Update OOUI to v0.29.0

https://gerrit.wikimedia.org/r/464370

Change 464607 had a related patch set uploaded (by Jforrester; owner: Jforrester):
[mediawiki/core@master] Update OOUI to v0.29.1

https://gerrit.wikimedia.org/r/464607

Change 464370 abandoned by Jforrester:
Update OOUI to v0.29.0

Reason:
Replaced by Ie847465af6762.

https://gerrit.wikimedia.org/r/464370

Change 464607 merged by jenkins-bot:
[mediawiki/core@master] Update OOUI to v0.29.1

https://gerrit.wikimedia.org/r/464607