Commit graph

3107 commits

Author SHA1 Message Date
jdlrobson 7f3be6dcd4 Do not directly manipulate the cached object
Popups currently makes use of a render cache. Using a cache in this
way without protection causes problems (I will look at cleaning this up)

The hack below it
`mw.popups.$popup.html( mw.popups.$popup.html() );`
will lead to the html of the cached object being wiped out on IE9 meaning
future loads will show an empty popup.

Add a unit test (which previously would fail in IE9) to protect against this
in future.

Bug: T68496
Change-Id: Icef784fb389b0ab1856e2ba7464c9423ebcd62ab
2016-05-12 16:56:19 -07:00
jdlrobson ed3500b1bd Describe init method behaviour via QUnit tests
Change-Id: I78c4a4ac7b653e31ce52104cbdaef3d6390b2e20
2016-05-12 16:22:59 -07:00
jdlrobson 27d811a173 Rewrite createPopup with template for better readability
Change-Id: If646623ba4ebf5dfac2a94c73b6f053131739767
2016-05-12 16:19:13 -07:00
jdlrobson ab15bf8b3e Add tests for createPopup
Change-Id: I72381ec665427ee2c5c5631d9bc07a1ad5079646
2016-05-12 15:33:50 -07:00
Sam Smith 26be90dc5a Add client-side validation of PopupsSurveyLink
Changes:
* Extract survey link element creation into
  mw.popups.render.renderers.article#createSurveyLink
* Make #createSurveyLink throw an error if the URL doesn't start with
  https or http
* Add unit tests that cover the new behaviour of #createSurveyLink

Bug: T129177
Change-Id: I8b61cb0e94ab4e30bc894c279bb05918ecc7719e
2016-05-11 14:53:30 +01:00
Sam Smith dab4f55e0d Annotate survey link with rel=noreferrer
Don't leak referrer information or `window.opener` to the survey hosting
site.

Bug: T129177
Change-Id: I828bd01391bc1e034fe5655d89209b83f192b112
2016-05-11 14:02:55 +01:00
jdlrobson 0be6753836 Document PopupsSurveyLink with cautionary note
Bug: T129177
Change-Id: I67f6a5157a6f31a58fd57744f16130f7e92a7feb
2016-05-11 12:19:14 +00:00
jenkins-bot 9a9b4abdea Merge "Allow brackets in createImgThumbnail" 2016-05-11 10:16:07 +00:00
jdlrobson f3d23c975f Allow brackets in createImgThumbnail
Changes:
* Quote the URL with double quotes when generating the background-image
  rule

Bug: T129177
Change-Id: I74748c7efe67954272ce0a539455b0b00001a26a
2016-05-11 10:18:49 +01:00
Prateek Saxena 46f69baf38 article: Remove bracketed text from the title before looking to bold it in the extract
Bug: T69224
Change-Id: I5306101a7acd3c33c55989e97c7581a403594645
2016-05-10 21:51:57 +00:00
Prateek Saxena ed327f8ee6 Minor refactor
1. Add comment for empty SPAN when there is no thumbnail
2. Use footer instead of div.timestamp-* as it also contains
   the settings icon now.

Change-Id: Ia6fca32770596c980b33a9a6e58bb08b661b90d1
2016-05-10 14:23:08 -07:00
Translation updater bot f9a84529e9 Localisation updates from https://translatewiki.net.
Change-Id: I662a5a03e1526a24943e3f44ccc96729d708a430
2016-05-10 22:29:19 +02:00
jenkins-bot 10517dee21 Merge "Add QUnit test for ext.popups.settings" 2016-04-28 20:32:19 +00:00
Baha 72dd872781 Add QUnit test for ext.popups.settings
Test pieces that make sense, everything else is already
covered in cucumber tests. See the following commit for more
info: I55f311b6b8845e6ebf4cc5698758afd1f9042a45.

Bug: T133025
Change-Id: I474c1569494601ae5865dcfba22ea728220ff8df
2016-04-28 16:13:20 -04:00
jenkins-bot d9a4c8b0a3 Merge "QA: add a browser test to cover "enable previews" feature" 2016-04-28 08:40:51 +00:00
Baha 85cc7e2257 QA: add a browser test to cover "enable previews" feature
Test whether:
* "Enable previews" footer link correctly appears/disappears;
* A hovercard correctly shows/doesn't show when enabled/disabled.

Bug: T133054
Change-Id: I55f311b6b8845e6ebf4cc5698758afd1f9042a45
2016-04-27 20:22:34 +00:00
Sam Smith 91d3b510cb Add test to cover mw.popups.setupTriggers
Follow up Id173b21.

Bug: T133020
Change-Id: Id97cc7c7cb546d09c196dab8377e9e61a0b12f85
2016-04-27 19:20:27 +00:00
Translation updater bot 28af47b231 Localisation updates from https://translatewiki.net.
Change-Id: Ia2bb5e371825809efd66311d486a7c5a8bce27af
2016-04-26 22:30:46 +02:00
Sam Smith 5f69a721fc Add missing mw.popups.selectPopupElements test case
Follow up on Id173b21 by adding a test case that covers the test of
whether the anchor's title is in a content namespace.

Bug: T133020
Change-Id: I414a5ff8aa4edf58dd0d1947db077afdd1d22f39
2016-04-26 09:25:25 +01:00
jenkins-bot 9b7797dd6d Merge "Add QUnit tests to cover ext.popups.core.js" 2016-04-22 08:54:00 +00:00
jenkins-bot 57bc00c9ad Merge "QA: Updates to browser tests to avoid flakiness" 2016-04-20 22:39:39 +00:00
Baha 728073d9e4 QA: Updates to browser tests to avoid flakiness
* Wait until the form submits successfully, verifying it
worked by testing for the notification toast.
* Drop sleep statements where possible - instead use when_present
Use one when asserting something doesn't show to avoid false positives
* Allow more time for the hovercard to show (5s) - API requests might take
longer than default time.
* Assert popups JavaScript loads before continuing with test. This
helped trap a bug in testing and will be useful for future.

Bug: T133019
Depends-On: Icb1e6ddc8f95da5e4b4de2916d292694c11ba731
Change-Id: Iacd3beedf44cadffcf0285231b2df7e5b64294f6
2016-04-20 20:02:13 +00:00
Baha 06b49dc6b8 Add QUnit tests for ext.popups.logger
Bug: T133024
Depends-On: Icb1e6ddc8f95da5e4b4de2916d292694c11ba731
Change-Id: I73fee2e3351de357f8f60bf6287a876e245117df
2016-04-20 18:33:53 +00:00
Baha b1ec40a202 Add QUnit tests to cover ext.popups.core.js
Bug: T133020
Depends-On: Icb1e6ddc8f95da5e4b4de2916d292694c11ba731
Change-Id: Id173b215701abb87f998722526d643f36f3c0308
2016-04-20 18:33:50 +00:00
Sam Smith 6a0e108384 QA: Enable Hovercards beta feature in browser tests
Bug: T133019
Change-Id: I63faec86a756f189a40d0f61c75e33060c5395fb
2016-04-20 18:20:27 +00:00
Phuedx def7e41192 Merge "Add browser test for hovering link" 2016-04-19 13:28:04 +00:00
Baha 3e78503e8e Add browser test for hovering link
Basic feature of browsing a page, hovering a link, and showing/hiding
a hovercard.

Depends-On: Ie94fa399512be041f12b2f7cada20d4206ddaf82
Bug: T133019
Change-Id: Idf39e7e2a3b343babd6d0538225b4ef9002e8ac1
2016-04-19 13:12:24 +00:00
jenkins-bot 9f83c10ad8 Merge "Bold only first instance of title in extract" 2016-04-18 10:14:19 +00:00
Baha 8f3832e68a Add X-Analytics request header when fetching popup data
API requests to fetch the hovercards data now include
`X-Analytics: preview=1` header so that HoverCard hovers are
easily distinguishable in Hive.

Bug: T129425
Change-Id: I69df51a627951c4373b3b7463ab5b2c0a129faa1
2016-04-13 14:32:00 -04:00
Prateek Saxena 5f92196541 Bold only first instance of title in extract
Bug: T132523
Change-Id: I3145186264edd23ca898365ae55184cbe96ada6a
2016-04-13 21:24:42 +05:30
Translation updater bot e53a093c73 Localisation updates from https://translatewiki.net.
Change-Id: Ib4a0ae699c368d3239f14fb23c2cf6e087c3b45f
2016-04-10 20:06:43 +02:00
Translation updater bot acd15bcae2 Localisation updates from https://translatewiki.net.
Change-Id: If47645a451cc113b0d7a392958bfccb64f9aa5f9
2016-03-28 22:44:50 +02:00
Translation updater bot fd85826ec5 Localisation updates from https://translatewiki.net.
Change-Id: Ic5e19931eefab8d5a5048d054627a5bf92495227
2016-03-27 21:22:00 +02:00
Translation updater bot 081f03a6b2 Localisation updates from https://translatewiki.net.
Change-Id: I01377b42ad7f06e70c7111edf178ecf3b78512f8
2016-03-22 22:33:22 +01:00
Translation updater bot 6ac7a22f06 Localisation updates from https://translatewiki.net.
Change-Id: I9cfbbfa4c288f0eda76328d670b4d15e4b584afc
2016-03-21 23:35:15 +01:00
Translation updater bot 91a4956adc Localisation updates from https://translatewiki.net.
Change-Id: I3b49ff5fdcfeaf9d189c08269640bc824ae46002
2016-03-18 22:43:32 +01:00
Translation updater bot a34d38e3d0 Localisation updates from https://translatewiki.net.
Change-Id: I87962ad1ce1e054472909336368ffec9fe4aa0a0
2016-03-15 23:04:01 +01:00
Translation updater bot 0b42430450 Localisation updates from https://translatewiki.net.
Change-Id: I97f494245644c71f80ffcd67fdc3b41aa03459ce
2016-03-14 22:52:24 +01:00
Translation updater bot c62fc1a72f Localisation updates from https://translatewiki.net.
Change-Id: Ibb8593bc10276ba4b84eef96e0ecae8dce872dea
2016-03-13 22:55:57 +01:00
Translation updater bot 8b8ab08fc5 Localisation updates from https://translatewiki.net.
Change-Id: I8b6a4dca4093cc03d5c1149a89e331c3043b018e
2016-03-12 21:12:38 +01:00
jenkins-bot 3f47fe91de Merge "Add link preview feature to mobile beta mode" 2016-03-11 23:43:01 +00:00
Florian c93047666e Add link preview feature to mobile beta mode
Linkpreview will try to fetch a text extract using the api and, if this
doesn't fail, show the extract as a drawer with a button "Continue to
article". If the query fails, it will redirect the user to the article
directly.

Bug: T113243
Depends-On: I6d8c5b80e70c3d8d1a92a70cc91e1b90d598cb0f
Change-Id: Idbaae9fe2decd89b73e623a25fbd39464c316fb2
2016-03-05 18:22:30 +01:00
jenkins-bot 9a52dfdc51 Merge "Revert "Compress PNGs with zopflipng"" 2016-02-28 00:40:23 +00:00
jenkins-bot 778b658300 Merge "Revert "Compress PNGs with zopflipng"" 2016-02-28 00:29:47 +00:00
Legoktm 1fc0788e3f Revert "Compress PNGs with zopflipng"
This reverts commit 6a0dc3964f.

Change-Id: Ife0256de3ad6226d0c4e124d3513d4731eec00b7
2016-02-28 00:08:24 +00:00
Legoktm 48d5a38587 Revert "Compress PNGs with zopflipng"
This reverts commit 56c3f71426.

Change-Id: Iab018ac5cc772aede47c19dfa9d77e81b1a7c00f
2016-02-28 00:08:03 +00:00
jenkins-bot 03a4e69041 Merge "Compress PNGs with zopflipng" 2016-02-21 02:02:13 +00:00
Ori Livneh 56c3f71426 Compress PNGs with zopflipng
Zopfli is the most efficient DEFLATE compression algorithm, trading run-time
performance for file sizes that are typically 3-8% smaller than those produced
by zlib with the maximum compression setting. Its output is Deflate-compatible,
so no specialized decoder is needed.

This change was created by running zopflipng against all the PNG files in this
repository. The exact invocation was:

  git ls-files --exclude-per-directory=.gitignore -- '*.png' \|
    parallel zopflipng -m -y {} {} \;

Files which zopflipng was not able to compress more efficiently were left unmodified.

Bug: T127608
Change-Id: I3ec96a8e75ea521315b5944e91ead5e60297c6df
2016-02-21 01:19:52 +00:00
Ori Livneh 6a0dc3964f Compress PNGs with zopflipng
Zopfli is the most efficient DEFLATE compression algorithm, trading run-time
performance for file sizes that are typically 3-8% smaller than those produced
by zlib with the maximum compression setting. Its output is Deflate-compatible,
so no specialized decoder is needed.

This change was created by running zopflipng against all the PNG files in this
repository. The exact invocation was:

  git ls-files --exclude-per-directory=.gitignore -- '*.png' \|
    parallel zopflipng -m -y {} {} \;

Files which zopflipng was not able to compress more efficiently were left unmodified.

Bug: T127608
Change-Id: I0bcc35a4d27a7589cd1a3f6569ef8089e8b6ec02
2016-02-21 00:28:26 +00:00
Translation updater bot 145e9c5710 Localisation updates from https://translatewiki.net.
Change-Id: Iab5114acc0b3f3d92ffa3bbe71914efb5d285afe
2016-02-13 23:01:38 +01:00