The QuickSurvey extension uses OOUI. All it does is render some buttons in a panel like so:
Running a quick survey adds about 70kb to a mobile page load [1] even when limiting the libraries being used to oojs-ui-core. As can be seen the majority of the offending code is in OOUI.
The majority of the styles inside oojs-ui.styles.icons and oojs-ui-core.styles are not being used according to a Chrome audit.
Please rethink how styles are loaded in OOUI.
Audit of additional code loaded when enabling a quicksurvey
+oojs-ui-core 138.1kb
+oojs-ui-widgets 120.3kb
+oojs-ui.styles.icons 105.4kb
+oojs-ui-core.styles 63.2kb
+oojs-ui.styles.indicators 14.1 KiB
+ mediawiki.template.muhogan 9.1kb
+ext.quicksurveys.lib 4.4kb
+oojs-ui.styles.textures "4.0 KiB"
+ext.quicksurveys.views 6.5kb
+schema.QuickSurveysResponses 879 bytes
+ext.quicksurveys.init 683bytes
+schema.QuickSurveyInitiation 406 bytes
+ext.quicksurveys.survey.drink-survey 290 bytes
Acceptance criteria
- Drop use of oojs-ui-widgets and update styling rules
- The choose event is no longer available - we'll have to assign a click event to every ButtonWidget. This click handler will need to communicate with the QuickSurvey so that the final pane is set.