(bug 41729) Move section edit links to after the headings
authorMatmaRex <matma.rex@gmail.com>
Wed, 6 Mar 2013 20:10:15 +0000 (21:10 +0100)
committerGerrit Code Review <gerrit@wikimedia.org>
Mon, 29 Apr 2013 00:00:09 +0000 (00:00 +0000)
commit7833589c5d576648b4db78bc69963bf8d516242d
treea69c625262712dede8c20cdaeb80e4edea8112bb
parent32ac1518037adc66f78432108a306a4627d79be5
(bug 41729) Move section edit links to after the headings

This requires minor changes in various parts of MediaWiki, and
being extra careful about cached rendered pages' HTML.

Fun fact: editsection links are not made in Parser. They're made in
Linker, in Skin *and* in ParserOutput.

Client-side code and screen-scrapers will have to be adjusted to
handle both cases (old HTML will still be visible on cached page
renders until they are purged); extensions using the DoEditSectionLink
or EditSectionLink hooks might need adjustments as well.

* Linker: Change the HTML of pages to move the link itself from the
  beginning of the heading (before <span class="mw-headline">) to the end
  of the  heading (after the span).
* Skin: Change the class from .editsection to .mw-editsection; we use this
  opportunity to clean up old cruft, and this makes it much easier to
  handle cached renders (by just detecting the old class).
* ParserOutput: Implement a horrible hack to support cached parser
  outputs with the old order of items.
* Ensure everything that should support both classes supports both
  classes (this includes print stylesheets and some scripts).
* Implement styles for the new look for all the skins (did this in
  shared.css; the styles are non-intrusive and can be overridden
  easily, and all of the skins were using the same look before).

Change-Id: I6a6c12a90de3604012420b20c1f520e0ece170ab
RELEASE-NOTES-1.22
includes/Linker.php
includes/Skin.php
includes/parser/ParserOutput.php
includes/resourceloader/ResourceLoaderUserCSSPrefsModule.php
resources/mediawiki.action/mediawiki.action.view.rightClickEdit.js
skins/common/commonPrint.css
skins/common/shared.css
skins/common/wikiprintable.css
skins/modern/print.css
tests/parser/parserTests.txt