Commit graph

481 commits

Author SHA1 Message Date
Timo Tijhof 0f092b6cb3 tests: Minor clean up of mmv.ui.metadataPanel.js and other tests
* Declare variables inline, as per the current code conventions.

* Use `assert.true()` or `assert.false()` in a few places.

* Clarify some test names and simplify some surrounding code.

Change-Id: Id0bca942e34564b9c011e89c0b2298cbb4f8a582
2022-05-13 22:13:01 +01:00
Timo Tijhof 5e1dece304 tests: Make mmv.ui.metadataPanel.js pass with non-English locale
My browser is configured with en-GB as its locale. This meant that
when qqx was passed down, it fell back to my browser's default locale
and thus made the tests fail, as the expected data was set against
lang=en.

Ironically, MMV actually prefers the en-GB date format, and outside
tests even replaces 'en' with 'en-GB' when formatting dates in the
user interface. It was only in the tests that it asserted the 'en'
format that would otherwise never be used by MMV.

Ironically, the reason my locale is affecting the test is because
we switched from hardcoded lang=en to hardcoded lang=qqx which is
meant to disable any influence from localisation. However, when
passed to browser-native Intl API, qqx is not valid and thus
caused us to not have a hardcoded 'en' but a completely variable
UI language based on the developer's browser settings.

Bug: T250045
Change-Id: I94ad25cc7060ac5e9db41c6b6767aa9fd687a0db
2022-05-13 21:49:51 +01:00
stang 52f2d40c8e Add word-break rule for mw-mmv-image-links to prevent overflow
image-links section may overflow if file has a long filename,
and a horizontal scroll bar may appear. Add a
"word-break: break-word" rule to prevent it from happening.

Bug: T305328
Change-Id: Ief395b66525b686fdcd7dec0909775065240a724
2022-04-03 15:55:52 +00:00
Sébastien Beyou a10359e6e6 Replace deprecated jQuery.throttle/debounce
This requires MediaWiki 1.38 for mw.util.throttle.

Bug: T213426
Change-Id: I3f689eea837ef72de9ab7afb68578093eab8db20
2022-02-10 13:22:52 +01:00
Iniquity 5803ea79eb Remove discussion and help links from footer
Bug: T133899
Change-Id: Ide631cd8bd98ff5084a8c406515c53b8a0cb033a
2022-02-06 01:15:02 +00:00
Volker E f074ab467b Replace obsolete LESS box-shadow() mixin
With unprefixed property.

Change-Id: I2b4117e6dd7082d544e09969441e5a5f912f7d1d
2021-09-11 02:31:19 -07:00
Ostrzyciel c38a65410a Link to local description page if present
Currently for files from foreign repositories, the "More details"
button always points to the foreign description page, regardless of
whether a local description page exists. That is a bit unintuitive,
as the local description page often contains additional info (like
categories) that may be useful for the user.

This patch changes the behavior of the button to link to a local
description page if available.

Change-Id: I7db609a4dda42f28ef913ad6d4256fb5adabeb89
2021-06-20 07:24:00 +00:00
Volker E 3205e72ad8 build: Replace 'grunt-svgmin' with npm based 'svgo' & re-crush SVGs
Replacing 'grunt-svgmin' with 'svgo' v2.3.0.
Also
- replacing all Grunt based tasks with npm equivalents. 'build' has
before just been for SVG minification and that's the same now in npm.
- changing to JS based '.svgo.config.js'
- re-crushing all SVGs. Note that 'link-hover.svg' and 'link.svg' have
been optimized with reduced precision. All other changes are resulting
from updated SVGO.

Bug: T278656
Change-Id: Ie895edb4e88336ffc56f570b8f80bf7d1e331894
2021-04-12 13:01:59 -07:00
Volker E 1a5aa67c08 styles: Remove obsolete vendor prefixed properties
Bug: T278670
Change-Id: I5640e4539598de8e9ae2d4e5172a5ae41b570ce3
2021-03-29 02:19:27 -07:00
AronDemian 72636057d8 [cleanup] Fix eslint (new version) warnings
Bug: T245930
Change-Id: I7a62e5a0a90ce0f4e4385afdae1e57722bc9ac82
2020-11-02 02:58:31 +01:00
Ed Sanders bfdcd8dbf1 eslint: Update eslint-config-wikimedia to 0.16.2
Change-Id: I0c35ed9b5ab00952124cb0e5c6c48fbc0d734f60
2020-06-26 12:14:27 +01:00
Ed Sanders d554d7f426 Docs: Fix whitespace
Change-Id: I98dc12787f68bd8db60e5a5bcb9366daf9f2f6b8
2020-06-26 11:21:04 +01:00
Volker E 9d2f7de650 Amend Base10 color from #222 to #202122
Amending Base10 to slightly darker `#202122` to fulfill WCAG
requirements in connection to Accent50.
Also adding it as WikimediaUI Base equivalent variable for
future replacement.
Also removing variables not in use any more.

Bug: T248393
Change-Id: I6fb5c288cfeb2bd3c786c2f5ab771074203b8fc0
2020-04-20 13:50:10 -07:00
Volker E d5aad3a260 Add file extension to LESS imports
Similar to how other extensions have been amended.

Change-Id: Ic9905fe166507739cd687f5aa2f44a0625b9746b
2020-04-17 21:13:01 -07:00
Volker E 02c0fd738f Rename 'mmv.globals.less' to 'mmv.variables.less' following naming pattern
Renaming 'mmv.globals.less' to 'mmv.variables.less' following naming
pattern of other extensions like MobileFrontend, Echo or Flow.

Change-Id: I376c3fd1463ed225e214f165943576f3e3c7df39
2020-04-17 21:05:58 -07:00
James D. Forrester cf26ef2e1a metadataPanel.formatDate: Account for timezoneness
As MDN says, new Date( dateString ) is strongly discouraged, for
exactly this reason. Oy.

Bug: T243160
Change-Id: Ib71b16185f5bd1cd522535716b6e36d2699678cd
2020-02-24 15:16:00 -08:00
Umherirrender 6a6d17b999 build: Remove unneeded exclude from .eslintrc.json
This reverts parts of commit bb26bc47b4.

Change-Id: I108e2f39713fb95f4b00dabd495e27f4bd5af90a
2020-01-08 19:51:42 +00:00
Volker E 44d39ad807 Remove obsolete color
Removing obsolete color, the list items needs to inherit WikimediaUI
palette color `#222` from `.mw-mmv-post-image` instead.

Change-Id: I70354470e0571b6eb8276a3e47167c507b4d717c
2019-10-13 09:40:55 -07:00
Timo Tijhof 70b0cbb727 Remove @embed where it needlessly delays loading of the UI
* mmv.ui.canvas / error-media-icon.svg:
  Used when the media file fails to load (e.g. due to an intermittent
  issue with the user's network connection). Rarely displayed,
  and the space is reserved (no FOUC). Seems fine to display
  slightly later within that use case (or not at all, if offline)
  to make the MMV interface itself load faster overall.

Bug: T121730
Change-Id: I760f46c920c3d1f3da2cb385d8cfd81951b628e5
2019-09-02 01:24:56 +00:00
libraryupgrader 5410aa9150 build: Updating eslint-utils to 1.4.2
* https://npmjs.com/advisories/1118

Additional changes:
* Added .eslintcache to .gitignore.

Change-Id: I9b6420e70ec7f4568b707371c731a8db56f6e34a
2019-08-24 12:16:21 +00:00
jenkins-bot b351d1b5fc Merge "build: Update devDependencies" 2019-08-01 02:15:32 +00:00
Ed Sanders 18a154b989 build: Update devDependencies
Change-Id: I46f5317976ef9f818e30b0c81018e83800535389
2019-07-31 22:59:13 +01:00
Ed Sanders f4d6c9f37e Remove useless .opacity mixin
Change-Id: Icff7c01aba4a647d23bae1925b725bddc555c762
2019-07-29 17:56:43 +01:00
jenkins-bot 989af50dcf Merge "Make the download/share buttons actual links for right/middle click" 2019-06-15 22:09:38 +00:00
Fomafix 7e03aa58a5 Use mw.log.error instead of window.console.error
mw.log.error is always present and calls console.error if available.

Change-Id: I6337ce7f0b6fef2933b067cda7097037cf757d7b
2019-06-10 12:22:19 +02:00
jenkins-bot 0d4d5096b1 Merge "Replace moment.js with Date.toLocaleString" 2019-05-31 21:14:00 +00:00
Simon Legner 682873dd2d Replace moment.js with Date.toLocaleString
Bug: T224626
Change-Id: Ib312821d2c72c2570cec29153557fd44e4db2bf7
2019-05-31 21:56:45 +02:00
Simon Legner 1a00347c49 Fix unresponsive download button
Some handlers were not correctly unregistered when performing
`unattach`. Thus, `Dialog.handleOpenCloseClick` could be fired more than
once resulting in the dialog been opened and closed immediately
afterwards.

Bug: T186461
Change-Id: I0c3c79644a10d7201ef198f4a4d381c10db4c3af
2019-05-28 23:11:18 +02:00
Ed Sanders 394b893c7d Use upstream CopyTextLayout in share/embed/download panels
Results in small UI changes, but allows us to delete a lot
of code duplication.

Depends-On: I9049f5a1c0d88680fc4a174e390dd08e27c0eee2
Change-Id: Iebe7bdc8a026b929a35e823d8107d90e7bb62b82
2019-05-23 20:01:36 +01:00
jenkins-bot 4f9b3eff8a Merge "Enlarge click regions of all icons in the main UI" 2019-05-20 11:08:08 +00:00
Thiemo Mättig 8b647c09e7 Make the download/share buttons actual links for right/middle click
Bug: T71469
Change-Id: Ib9dca98a70a056e93e252ba1d08479be509e7a18
2019-05-20 09:05:10 +00:00
Thiemo Kreuz 873a88e654 Enlarge click regions of all icons in the main UI
Before, the icons on the right all had a 24x24px click region, exactly
as big as the icon. There was no wiggle room. You had to be very precise.
This patch adds a padding that can be clicked as well, 14px left and
right, but no additional padding top and bottom (this might be an
additional change for another patch).

I made sure the positions of all icons are 100% as before.

Change-Id: I1618681b5ab714cb4cfc789dc6d501ec30643bc0
2019-05-19 19:00:27 +00:00
Thiemo Kreuz 6d042d7fa6 Show the hand mouse cursor on all "copy to clipboard" icons
All other icons show the pointer (a.k.a. hand) mouse cursor, except
this one. I believe this is just a mistake.

Change-Id: Id48f65273be0ea81e7c10f0b222430cc85f815a5
2019-05-19 14:57:56 +02:00
Simon Legner e1caa0f65e Fix typos in code/comments
No functional change.

Change-Id: I6447aefe8fdd39642d613f55ad0a5537f64dcb9d
2019-05-19 10:17:44 +00:00
Thiemo Mättig f8bf849430 Allow partial selection in text fields
Really, why should this be forbidden? These onclick handlers do waaaaay
to much. They do not only block what they should block, they block way
more stuff, like resizing the textarea and interacting with it in any
way that involves the mouse. This is not the intention of this code.
I'm sorry to say that, but this code is the equivalent of "disable
right click to prevent stealing images" on 1990s web pages. Please,
please let's not do this. Let the user do what he expectes and is used
to do.

Bug: T110579
Change-Id: Ia89faea678606d5c382539f726e2edaa745c904e
2019-05-10 14:33:08 +02:00
James D. Forrester c6008c7844 build: Be more aggressive in fixing old bad JS code style
Change-Id: I7f734f1440a4a3216e774d2bddbc39b34f4125d2
2019-02-20 19:28:25 +00:00
James D. Forrester 1b21470703 build: Update eslint-config-wikimedia to 0.11.0
Change-Id: I66788a2c1fa59b617abd13b7c8e8fb59ad74130c
2019-02-20 19:22:21 +00:00
Ed Sanders 92157f6b05 build: Update eslint-config-wikimedia to 0.10.1
Change-Id: Icd89819ef38142e55c0bd4cc8dbb73745123f9f6
2019-02-06 01:56:53 +00:00
Ed Sanders a518cb03a5 build: Update eslint-config-wikimedia to 0.9.0
Change-Id: I92ed1f7093cfaed47f0372f9cb063fe4e65b4f55
2019-01-03 13:47:16 +00:00
jenkins-bot f45953cb15 Merge "build: Use stylelint-config-wikimedia v0.9.0 and make pass" 2018-11-30 01:08:06 +00:00
Volker E 8e94e95f7b build: Use stylelint-config-wikimedia v0.9.0 and make pass
Change-Id: I1359fb4d78aee9d37b67c13464e31e035d3435a5
2018-11-29 10:34:00 -08:00
Volker E a23084a360 build: Follow 'svgmin' step option best-practices
Changing indentation to tabs and use `multipass` option correctly.
Follow-up to I09660b9d49cfdc4.

Change-Id: Ic69532ad165c34aab97888328c7bef6e6c578491
2018-11-28 18:32:16 -08:00
James D. Forrester 90ada228cd eslint: Drop 'dot-notation' rule
Bug: T210552
Change-Id: I09660b9d49cfdc450efe0273736abd4730da5e77
2018-11-28 10:46:41 -08:00
Ed Sanders 1ded292f83 Remove obsolete aliases from closures
Bug: T208951
Change-Id: Ice695dfb489974faa23ba19d74cf17b06e3f6075
2018-11-12 16:33:24 +00:00
Volker E a92bbbaa5f Update user avatar icon
Updating user avatar icon to overhauled standard WikimediaUI icon.
Also:
- Using new icon default size instead of `80 x 80 px`. Icon is
  resized by `background-size` in both applications anyways.
- Renaming 'user*' to 'user-avatar' for consistency across projects.

Bug: T123810
Change-Id: Ifb2027694af8f619663f00f4c50891772ee64746
2018-10-10 23:29:01 -07:00
Fomafix 30bae884e6 Use improvements of jQuery 3.3
Replace
  .removeClass( classes.join( ' ' ) )
by
  .removeClass( classes )

Since jQuery 3.3 .addClass(), .removeClass() and .toggleClass()
supports arrays. [1]

[1] https://blog.jquery.com/2018/01/19/jquery-3-3-0-a-fragrant-bouquet-of-deprecations-and-is-that-a-new-feature/

Change-Id: Icd8eb2eb228c7612f028cc399d29826908e2ae39
2018-09-19 21:17:06 +02:00
Ed Sanders 053d1a9d8b build: Update linters
Change-Id: Ie6e85abdc0714adf4d89e515967bf2ab4c393215
2018-09-13 22:13:56 +01:00
Fomafix 4320ab4c8e Use wgUserLanguage instead of the first key from mw.language.data
Follows-up f59962e4a3.

wgUserLanguage contains the user interface language of the current
user. mw.language.data can contain several languages.

Also apply encodeURIComponent() to the parameter.

Change-Id: Ifaf5dc4be3fb8f87fbf1513866bcc68648c36ab1
2018-08-01 18:16:04 +00:00
Timo Tijhof 5c9faa580e Move files to their own directory per module
Bug: T193826
Change-Id: I925b1c7be2dbbb50994ed9f1ef12b5978ba175ff
2018-07-30 15:15:25 +02:00
Matthias Mullie 4627adb9b1 Fix mw.storage typehint
Change-Id: I758ca9375c479098edae98a78c1ee9170df7afc2
2018-07-28 17:14:32 +00:00