This ticket is about making it possible for people to turn off all DiscussionTools features on individual pages.
Where #discussiontools features refers to the below (recycled from Talk pages project#Active initiatives):
- The Reply Tool
- The New Discussion Tool
- Topic Subscriptions
- Visual enhancements
Context
There are discrete instances where people would like to be able to use the existing talk page experience and tools without having to readjust their "global" talk page settings.
More context can be found in T278466.
Approach
During the team's 23 June 2021 meeting we decided to, initially, offer this functionality via the URL parameter many Senior Contributors are already familiar with.
Behavior
For this test case, let's assume you have the New Discussion Tool, Reply Tool, and Topic Subscription features enabled.
- On a wiki where you have the above DiscussionTools features enabled, visit a talk page
- Observe the following:
- [ reply ] links are present on the page
- [ subscribe ] links are present on the page
- The New Discussion Tool opens when you click the Add topic button in the talk page's chrome/frame
- Append the following to the URL of the talk page you navigated to in "Step 1.": ?dtenable=0
- Press ⏎
- Observe the following:
- [ reply ] links are NOT present on the page
- [ subscribe ] links NOT are present on the page
- When you click the Add topic button in the talk page's chrome/frame the legacy &action=edit§ion=new experience is shown
- Visit Spécial:Préférences#mw-prefsection-editing
- Verify the state of the settings you had set in the Discussion pages section are unaffected by the action you took in "Step 3."
- Visit Spécial:Préférences#mw-prefsection-betafeatures
- Verify the state of the Discussion tools beta feature was unaffected by the action you took in "Step 3."
Requirements
- Appending dtenable=0:
- Should disable all DiscussionTools features
- Should NOT impact the state of any existing settings
- Should NOT impact the experience people have on any other talk page they visit
- Should work on desktop and mobile
Done
- The ===Behavior above is implemented in a way that meets the ===Requirements