Go to file
Bartosz Dziewoński db28a3d3a7 Handle highlighting and scrolling to comments for bundled notifications
Notifications are bundled by section, so instead of linking to the
comment, link to the section.

Additionally, add a parameter to the URL listing all the comment IDs
from the bundle, and highlight them all and scroll to the topmost one.

Having to handle both URL fragments and URL query parameters makes
this code kind of a mess :(

Also, some unexpected changes became necessary:

* EventDispatcher.php: Store the section title in events using
  HeadingItem::getLinkableTitle() instead of ThreadItem::getText().
  The result is mostly the same, except in case of wacky markup like
  images or extension tags. We can more reliably use it to link to the
  section on the page, and we already use getLinkableTitle() when
  generating edit summaries in the reply tool for this reason.

* dt.init.less: Change the mix-blend-mode for the highlights from
  'multiply' to 'darken', so that multiple overlapping highlights do
  not look more opaque. This affects how the highlights look on
  non-white backgrounds and images (they're less blue, and on darker
  backgrounds entirely invisible), but it seems worth it.

Bug: T286620
Change-Id: I21bb5c003abc2747f0350d3f3af558dfb55693e9
2021-08-16 22:03:30 +02:00
.phan Don't refer directly to PHP dom extension classes; avoid nonstandard behavior 2021-07-30 18:15:40 -04:00
i18n Localisation updates from https://translatewiki.net. 2021-08-06 08:13:28 +02:00
images Apply an empty-state to pages with the new topic tool enabled 2021-08-04 18:46:28 -05:00
includes Handle highlighting and scrolling to comments for bundled notifications 2021-08-16 22:03:30 +02:00
maintenance Defensive use of dynamic paths in maintenance script 2020-02-20 19:51:07 +01:00
modules Handle highlighting and scrolling to comments for bundled notifications 2021-08-16 22:03:30 +02:00
sql Change DB column types from "string" to "binary" (VARCHAR to VARBINARY in MySQL) 2021-04-28 21:54:48 +00:00
tests Revert "Silence JQMIGRATE warnings when running tests" 2021-08-06 18:19:42 +00:00
.eslintignore build: Move eslint file list to .eslintignore 2021-03-04 18:09:34 +00:00
.eslintrc.json build: Updating eslint-config-wikimedia to 0.19.0 2021-03-13 10:51:31 +00:00
.gitignore Remove extra blank line from .gitignore file 2020-08-31 15:24:56 +01:00
.gitreview Add .gitreview 2019-10-09 21:18:34 +00:00
.phpcs.xml build: Updating mediawiki/mediawiki-codesniffer to 32.0.0 2020-10-29 10:53:01 +00:00
.stylelintrc.json Remove deprecated dt- classes 2021-03-23 12:39:34 +00:00
CODE_OF_CONDUCT.md build: Updating npm dependencies 2020-01-09 06:43:15 +00:00
composer.json build: Updating dependencies 2021-07-22 16:29:04 +00:00
COPYING Add required files for an extension 2019-10-10 19:42:56 +01:00
extension.json Merge "Apply an empty-state to pages with the new topic tool enabled" 2021-08-05 16:52:49 +00:00
Gruntfile.js build: Move eslint file list to .eslintignore 2021-03-04 18:09:34 +00:00
package-lock.json build: Updating dependencies 2021-07-22 16:29:04 +00:00
package.json build: Updating npm dependencies 2021-05-09 16:41:13 +00:00