I had a conversation with @JKatzWMF around giving editors more control of their mobile experience.
Many users have expressed a desire to use a more feature rich skin on mobile.
With little work we can provide a preference that helps them achive this goal.
Editors would be able to disable mobile friendly versions of pages such as special pages for example desktop watchlist:
I believe giving editors more control over their mobile experience would be welcomed and increase understanding of the challenges with a "responsive Vector" and making desktop interfaces MediaWiki mobile friendly.
QA steps
- After setting up the wgMFEnableMobilePreferences to 1 there should be visible a new option in the user preferences - appearance section.
- logged in users can enable/disable the option. The option preference stays after logging out/logging in
- when the option is checked - the desktop version of Watchlist and History pages should be accessible when browsing Wikipedia on mobile
Acceptance criteria
- A new preference shows up in Special:Preferences allowing logged in users to disable optimisations
- Pages are optimised by default.
- Feature flag (disabled by default) and deploy this to staging
Developer notes
Per @Tgr
... I think the cleanest approach is to declare the SpecialPage_initList hook as something that needs to be mindful of potentially running in a no-session context (as it's one of a relatively small number of hooks that can be triggered from pretty much any endpoint) and needs to call User::isSafeToLoad() when appropriate.