Page MenuHomePhabricator

Introduce way to suppress discussiontools features on a per-view basis
Closed, ResolvedPublic

Description

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.

  1. On a wiki where you have the above DiscussionTools features enabled, visit a talk page
  2. 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
  3. Append the following to the URL of the talk page you navigated to in "Step 1.": ?dtenable=0
  4. Press
  5. 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&section=new experience is shown
  6. Visit Spécial:Préférences#mw-prefsection-editing
  7. Verify the state of the settings you had set in the Discussion pages section are unaffected by the action you took in "Step 3."
  8. Visit Spécial:Préférences#mw-prefsection-betafeatures
  9. 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

Event Timeline

ppelberg moved this task from Incoming to Upcoming on the Editing-team (Kanban Board) board.
ppelberg moved this task from Backlog to Triaged on the DiscussionTools board.
matmarex renamed this task from Introduce way to suppress discussiontools features on a per-page basis to Introduce way to suppress discussiontools features on a per-view basis.Jun 26 2021, 10:18 AM

(I renamed the task from "per-page" to "per-view" – to me, "per-page" would mean the thing that we have in T249293.)

Change 701653 had a related patch set uploaded (by DLynch; author: DLynch):

[mediawiki/extensions/DiscussionTools@master] Allow dtenable=0 to disable DiscussionTools

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

(I renamed the task from "per-page" to "per-view" – to me, "per-page" would mean the thing that we have in T249293.)

Good call.

Change 701653 merged by jenkins-bot:

[mediawiki/extensions/DiscussionTools@master] Allow dtenable=0 to disable DiscussionTools

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