Commit graph

428 commits

Author SHA1 Message Date
jdlrobson d305a29db8 Do not capitalize wikidata descriptions
Many languages have no concept of capitalisation so messing with
user input is problematic. Trust editors to do the right thing and
if not, fix it on wiki.

Bug: T131013
Change-Id: Iebdb7b78fdaa31a6daf8f52077c079672ef4ff5a
2019-01-25 22:47:27 +00:00
jenkins-bot 74a37b0412 Merge "Hygiene: revise lazyImageLoader.loadImages() API" 2019-01-25 20:52:49 +00:00
Stephen Niedzielski 0ce4fa8a66 Hygiene: revise lazyImageLoader.loadImages() API
There is no longer a need to pass in a jQuery dependency.

Don't use the stateful skin to query image placeholders. Use the lazy
image loader instead.

Depends-On: I3d023b3d96bf278666abb956142e5cee12b68b1f
Bug: T214658
Change-Id: I2bf42366c0e27462c32162124d07761b91d66166
2019-01-25 10:50:09 -07:00
Ed Sanders 63ead8075d build: Update eslint-config-wikimedia to 0.10.0
* Add inline exceptions for global selectors
* Exception for $.animate in scrolling code
* Fix $ prefixing in search.js
* Fix repeated selectors in search.js & toc.js
* Disable no-parse-html-literal in tests

Change-Id: Id58fe11d1e09714501a378e4ca7ed9588f02f32d
2019-01-24 17:59:40 +00:00
Ed Sanders 6c53e320bf eslint: Remove exception for computed-property-spacing
Change-Id: Ief22145c02379bdb3d37c96c5e1ef50f0ab519cf
2019-01-24 17:58:36 +00:00
Ed Sanders dc5077dbae build: Update devDependencies
eslint-config-wikimedia   0.8.1  →   0.9.0
 grunt-contrib-watch       1.0.0  →   1.1.0
 grunt-stylelint          0.10.0  →  0.10.1

Change-Id: I3c8ad96f006ab4501e30d0884ae620b30f23fca8
2019-01-24 17:58:36 +00:00
Jan Drewniak 6627078c08 Remove a .content-header CSS selector.
A `.content-header` is often placed inside a `.content` div,
so this selector causes a 90% width on a container element as well as
it's child element, which is probably undesirable.

Bug: T210745
Change-Id: Ib559db66a513537127ad543cb54a119af8ebf8df
2019-01-23 22:44:56 +01:00
jdlrobson 4d734942c5 Remove large bottom margin at top of main page
Main pages do not have page actions, yet the header always adds
bottom padding to compensate for the fact that page actions are
absolutely positioned.

a new class is added adopting BEM notation that informs the client
that no page actions are going to be visible. In conjuction to this
we strip the relevant HTML from the DOM.

Bug: T212216
Change-Id: Ib69991e91160ba7e2ca3beca4475c2a06c4b9cd3
2019-01-23 12:10:06 -07:00
jenkins-bot 33736e3ead Merge "Reduce unnecessary selector specificity" 2019-01-19 04:38:54 +00:00
Volker E 994edd76e0 Reduce unnecessary selector specificity
Bug: T214218
Change-Id: If0afb83d7f5f9b288427aaf09951348ed94cd74e
2019-01-18 17:23:48 -08:00
jenkins-bot ffb97f5c9f Merge "Hygiene: Merge skins.minerva.base.reset into skins.minerva.base.styles" 2019-01-18 17:13:52 +00:00
jenkins-bot a816f81278 Merge "skins.minerva.tablet.styles can be merged" 2019-01-18 17:13:51 +00:00
jenkins-bot 63796763b0 Merge "Prevent black background from appearing on menu after clicking reference" 2019-01-17 23:33:31 +00:00
Jan Drewniak 5c638304e2 Prevent black background from appearing on menu after clicking reference
Bug: T211691
Change-Id: Ibaf027c401f12022c21be7f7f959a1389f2bd153
2019-01-18 00:16:11 +01:00
Stephen Niedzielski d1a20753fa Hygiene: revise lazy image loading API
Update the API usage for lazily loaded images. This is still clumsy and
may be further revised in future patches.

Bug: T211724
Depends-On: Ic73f78825eaab561e8ed694aa6cc102ccb471f95
Change-Id: Ia708cda688e6bdb12074d85d98f7e98fdf7b0ca8
2019-01-17 20:45:23 +00:00
jdlrobson 24b1e7d54d Hygiene: Merge skins.minerva.base.reset into skins.minerva.base.styles
No need for 2 modules that are both loaded on every page load
Provided consumers are loading skins.minerva.base.styles they will
continue to get the same CSS. If any consumers exist that load
skins.minerva.base.reset but not skins.minerva.base.styles they will
need to use their own css reset file
(e.g. https://meyerweb.com/eric/tools/css/reset/)

Change-Id: I599e6d5a84b311cb3bb2da197da1b688e0e6b9d4
2019-01-15 12:30:32 -08:00
jdlrobson 1166009c00 skins.minerva.tablet.styles can be merged
This module is unnecessary - it's loaded unconditionally on a page.
Instead bundle the related CSS inside skins.minerva.content.styles

Change-Id: Ieb37d63332ff5b0cf39835b64cc9f0dcaf62c34f
2019-01-15 12:30:30 -08:00
jenkins-bot 41f45725f9 Merge "Tablet code no longer needs to be conditional" 2019-01-15 15:12:42 +00:00
jdlrobson 76be18c788 Tablet code no longer needs to be conditional
The TableOfContents component is now inside mobile.startup
so is readily available.
Thus skins.minerva.tablet.scripts is removed and its code
moved inside skins.minerva.scripts

The check to whether the user is in tablet mode
now happens inside toc.js

The resize handler is dropped on the basis that this is an edge
case that is not worth supporting at the cost of an eventBus.

Depends-On: I353d6d7a6884dae03b55364150c6bb95cd4cc57f
Change-Id: Id16a64573e020b4606fc9b11456163a4cd290e0b
2019-01-14 15:43:50 -08:00
Huji Lee fa5dff873f Change the "visited" color for links to increase readability
Please see Phab task about why this is necessary and how the new
color was selected.

Bug: T204081
Change-Id: If11f308bad5f7260c82bafe0e8d584763773869e
2019-01-13 19:44:38 -05:00
jenkins-bot b4edf0cf23 Merge "Stop using the deprecated mobile.notifications.filter.overlay" 2019-01-09 20:24:12 +00:00
jdlrobson c52c8ab17a Stop using the deprecated mobile.notifications.filter.overlay
Use mobile.notifications per the deprecation notice

Change-Id: I3432935d6f7ca1e6614d86fa7945c2cfd06968c8
2019-01-09 08:57:40 -08:00
Stephen Niedzielski 672df850cb Hygiene: revise A/B test terminology
Improve the comments and APIs provided by AB.js:

- Control becomes unsampled.
- A becomes control.
- B becomes treatment.

This code does not appear to be in use presently, so it's a great time
to change it.

Change-Id: I31d619f889ee45102a4aed774a6ec41f0d95ba7d
2019-01-08 15:08:50 +00:00
jenkins-bot d3557a738d Merge "Generate a shareIcon via composition" 2019-01-04 18:57:13 +00:00
jdlrobson e3bdad20bb Generate a shareIcon via composition
Bug: T205592
Change-Id: Ia107b13d4f658ce7cc077ca7337530f3e448c522
2019-01-04 09:19:59 -08:00
jenkins-bot 9258806a0f Merge "pageIssuesOverlay is a factory function that returns an Overlay" 2019-01-04 15:39:48 +00:00
jenkins-bot b8bd9b15e7 Merge "Download Icon Hygiene: Post refactor cleanup" 2019-01-03 16:55:37 +00:00
jenkins-bot 0282bb16ca Merge "Composition: DownloadIcon" 2019-01-03 16:41:34 +00:00
jdlrobson d29eca2bc8 pageIssuesOverlay is a factory function that returns an Overlay
This experiments with making PageIssuesOverlay an Overlay with
various options.

The appending of children is a little messy and points at a need
to standardise this some way
(see https://phabricator.wikimedia.org/T209647)

TODO:
* Remove the iconString property on PageIssueSummary which is no longer
needed

Bug: T209647
Change-Id: Iadd798a820dca6bbb31edc9a8570b6db7aac237a
2019-01-03 08:31:39 -08:00
jdlrobson 29e7bcd6d3 Download Icon Hygiene: Post refactor cleanup
Remove the unnecessary helper object in favor of making
functions standalone.

The function bodies are left intact but a level of indent is removed

Change-Id: If4ee79df096bf386584dba8d971a0858e70e166f
2019-01-02 13:17:06 -08:00
jdlrobson c73ff1f7a5 Composition: DownloadIcon
The DownloadIcon is reduced to a factory function that
returns an instance of Icon

Depends-On: I4d703eef68d51bbe0b03579c5cca0845e17b8c9d
Depends-On: I4a4129b2cac7c7c49559beef0b8780f3211edf9c
Bug: T205592
Change-Id: Ib87390d17bef6f50842f52cd84c9ce2b162aaff0
2019-01-02 13:16:09 -08:00
jenkins-bot 94cab7b414 Merge "Hygiene: revise CtaDrawer.events to options" 2018-12-20 21:54:35 +00:00
Stephen Niedzielski 9f70a004c7 Hygiene: revise CtaDrawer.events to options
Use CtaDrawer.options.events when available instead of CtaDrawer.events.

Change-Id: I7cf5d97bef9179dfa148fa4d5ca447d128031b57
Related: I4a4129b2cac7c7c49559beef0b8780f3211edf9c
Bug: T210870
2018-12-20 19:31:58 +00:00
jenkins-bot a52d271cc9 Merge "Fix: use hand cursor for links without href" 2018-12-20 19:22:12 +00:00
Stephen Niedzielski 7826a451c9 Fix: use hand cursor for links without href
Links without hypertext references are still functionally links and
should be presented in the same way. This patch forces the hand cursor
to be used for such links which affects the red links drawer's "no
thanks" link.

Change-Id: Iabfef03f6726bb8a5e3a2bc90f2a7f63c8a10c02
2018-12-17 22:20:25 +00:00
Stephen Niedzielski 37333c7189 Hygiene: collapse mobile.search* into mobile.startup
MinervaNeue depends on mobile.search and mobile.search.api. These
ResourceLoader modules existed in MobileFrontend but now have been
collapsed into mobile.startup.

This patch updates Minerva's ResourceLoader module and JavaScript
references.

Bug: T210207
Depends-On: I1eae36f2927a4e0f9d1e91d604d656beb8cc33ae
Change-Id: Ied6f4873bf2550564673296e9ef4fa009ca45e5b
2018-12-17 22:03:41 +00:00
jenkins-bot 2abb44b24a Merge "Remove references to "mobile.toggle" module." 2018-12-14 16:27:44 +00:00
Jan Drewniak 4522a8e10a Refactor pageIssues.js into smaller functions
Instead of having one large `createBanner` function, breaks down
that responsibility into three smaller functions:

- createPageIssueBanner
- createPageIssueBannerMultiple
- createPageIssueNotice

These functions represent issues in the new treatment, the
multiple-issues template, and the old treatment.

createBanner now delegates the creation of these banner types to these
new functions.

A new property to PageSummary, $el, has also been added. This allows us
to manipulate the issues DOM via the PageSummary object, instead of using
the `$metadata` variable in createBanner.

This approach to the page-issues DOM also solves the problem of
wrong or missing icons in T202349.

Bug: T211257, T202349
Change-Id: I50a2d8e3ae94913dc060ceedaaf1fa7e1756617f
2018-12-14 02:03:58 +01:00
Jan Drewniak 1589a15862 Remove references to "mobile.toggle" module.
mobile.toggle was folded into mobile.startup in
mobileFrontend, so moving references to that instead.
- Changing require statements
- moving skinStyles/mobile.toggle/minerva.less to
   skinStyles/mobile.startup/toggle.less
- Replacing references to mobile.toggle in skin.json

Depends-On: Iecc1870f08532e8c7893861afdd54f069da54be2
Bug: T210208
Change-Id: Ie67cd50a2d042fbbaaef348b9b62d64193900d78
2018-12-14 00:45:34 +01:00
jenkins-bot 9e3e499871 Merge "Tablet style should apply to mbox-text-div as well as mbox-text-span" 2018-12-13 22:32:54 +00:00
jdlrobson 2258da2ff8 Tablet style should apply to mbox-text-div as well as mbox-text-span
Bug: T206887
Change-Id: Id992f92eef8a5b6001e12fa42e2333cd266cc098
2018-12-13 11:41:15 -08:00
Volker E f0608db19a build: Update 'stylelint-config-wikimedia' to v0.5.0 and make pass
Updates code comments and whitespacing.

Change-Id: If7665beaa2d342881483fd7a9fc0fc880768d2ef
2018-12-12 23:26:48 +00:00
Nicholas Ray 5bfd949f9a Remove usage of global event emitter from Minerva
This patch removes the remaining usages of M.on/M.off/M.emit
(functionality derived from moduleLoader.js in MobileFrontend) in
Minerva and continues the work of
Id990b0e1a53221d5c1cb3e3012aed0e27d801fc2 (patch for MobileFrontend).

This patch and the patch for MobileFrontend should be merged together as
they both depend on eachother.

Depends-On: Id990b0e1a53221d5c1cb3e3012aed0e27d801fc2
Bug: T156186
Change-Id: I005d2fcdbf91c2f1ac98178dfa388aa8174e7530
2018-12-06 19:30:09 -07:00
Nicholas Ray 8feff10336 Remove usage of global event emitter from skins.minerva.talk/init.js
This patch removes usages of M.on (functionality derived from
moduleLoader.js in MobileFrontend) in skins.minerva.talk/init.js and
continues the work of I0e35776114ffa137b219eff0a900a0a0c52a27bb (patch
for MobileFrontend).

This patch and the patch for MobileFrontend should be merged together as
they both depend on eachother.

Depends-On: I0e35776114ffa137b219eff0a900a0a0c52a27bb
Bug: T156186
Change-Id: Ic766d0bbf2746df898038115e2e4bc791ac10359
2018-12-06 19:29:43 -07:00
jdlrobson 87942c34f9 mobile.watchstar is a deprecated module
Referencing it triggers deprecation warnings so should be updated

Bug: T208921
Change-Id: I7266a067a14bfa38a998f426e18f096515b7bfa7
2018-11-30 15:28:03 -08:00
jdlrobson 0e4283ae43 Provide some recommended (opt-in classes) for projects not opted into page issues
You can test this against the beta cluster using
$wgMFMwApiContentProviderBaseUri = "https://en.wikipedia.beta.wmflabs.org/w/api.php";

Bug: T206177
Change-Id: Ic2e6859443ed5aa2a3f97218f4c89df2a46000f9
2018-11-27 14:44:07 -08:00
jenkins-bot 645073e958 Merge "isBorderBox and className properties are deprecated" 2018-11-27 13:58:37 +00:00
jdlrobson 5c40ddc477 Zero is a sensible default for this feature flag
Bug: T205008
Depends-On: I3640b28c6a930f6e934d22c3375bffcd539902aa
Change-Id: Ie5d63e265469219063e36d6e398fd0a0b1e864db
2018-11-27 12:26:37 +00:00
Piotr Miazga a15119bdc1 Pass mode property to MobileWebMainMenuClickTracking schema
Changes:
 - pass the mode property instead of mobileMode
 - if mobileMode is undefined, pass 'desktop'

Depends-On: Iedd26463128623e56b9a8612ccf2488739c854fa
Bug: T193505
Change-Id: I6706546fc136779e3872ef9405ca6749b01cf751
2018-11-27 00:42:33 +01:00
jdlrobson c8693b6789 isBorderBox and className properties are deprecated
These will soon throw warnings and soon be removed!

Bug: T209007
Change-Id: Idca4c892366dc5b5e8490f1326188b97abc876f7
2018-11-22 19:11:53 +00:00