This partially reverts commit 07ba0e43a9, which changed the test to
inject an ES6 Map rather than a mw.Map, which diminishes the value of
the test, including risk of false positive since that isn't what
the code actually accepts. See also T353076.
Change-Id: I4877d0d9820dfff42996ddbd4c9e26573d84d19c
Nowadays our HTML contains data-file-width="…" and data-file-height="…"
attributes. Previously this code was using <img width="…" height="…">
from the tiny thumbnail to calculate the aspect ratio. But this is
only a rough estimate and can be off by a significant amount of
pixels. Example:
Original image size: 4000 x 2100
Thumbnail in the article: 220 x 116
Available canvas height: 630
When using the thumbnail's size: 1195 x 630
When using the original size: 1200 x 630
I still use the old thumbnail size as a fallback just to be sure.
It's possible this is unreachable code by now. But it doesn't hurt
to keep it.
Change-Id: Iabd89762b09523249375bcbc7e4a573ef974e02e
Calling .eq( 0 ) on a jQuery set that's known to contain only a
single element is pointless and doesn't do anything. .eq() is
documented to reduce the set to a single element.
Change-Id: I3f3a08d65a0490771e0282408e8c4711f3772c99
Codex icons are auto-mirrored for RTL scripts but a pseudo-element
causes the auto-mirror selector to have incorrect order and that
builtin auto-mirror functionality of codex icons to not get trigged.
This change fixes it by adding a span to each icon so auto-mirror
can target an actual element instead of ::after pseudo-elements.
Bug: T369659
Change-Id: Ib5f9793a8ad10980d2742d1046c59306c943f960
Fixes the shadows and borders that come with an extended 'Permission
details' box to use Codex tokens that support dark mode. To test this
out, view any image from Commons with a VRT permissions template (for
example [[File:Gordon_Highlander_steam_locomotive.jpg]]).
Bug: T369531
Change-Id: Ie2873b2ef2836c5b7ac2ded860dc2404f293f119
When opening the viewer set the body background and the theme-color
to match the background of the viewer. This provides a better
experience for (esp. mobile) browsers.
theme-color has to be overriden, as it can be inferred from the top
of the browser window, but images can be all kinds of colors, so it
is better to be explicit.
Bug: T368659
Change-Id: I313745a31bf17eef612dd89630b1bbc4cb57fd45
The license links listed on the right are vertically pretty tight
next to eachother. Add some line-height to make them more readable.
Bug: T365192
Change-Id: Idd0e3d845188178656017ac3158b0a3451c24294
- Use square cdx icon only buttons
- gray transparent brackground
- opaque background on hover, active, focus
- Some fixes to the positioning and offsets of buttons and dialogs
- Move the dialogs to be in the same container as the buttons
This is better for accessibility but also fixes the z-index issue
Bug: T365192
Change-Id: Idbc2a309fbca15bd528aaed7ca9bed584487c4f3
mmv.displayPlaceholderThumbnail overrides this value using ImageInfoProvider.
Bug: T64039
Follow-Up: Ic7c5889064492fc88dae33271b635c5327b091e1
Change-Id: I08d024f81336a76439f51b7684446f8725ddb905
When opening the media viewer, we immediately display a black frame,
as we wait for the dependencies etc to load.
Add a codex indeterminate progress bar to this phase as we wait, so
the user has feedback that something is happening.
Bug: T77230
Change-Id: Ibba98150ac2e8034fbfcd586309632704cf0b606
Repo was only used in two locations:
1. StripeButtons.set for `isCommons` - can be replaced by `descriptionUrl.includes('//commons.wikimedia.org/')`
2. EmbedFileFormatter.getSiteLink (unused)
Furthermore:
- Simplify StripeButtons (we only have one button)
- Unwrap info objects consisting of `ImageModel` and `Repo`
- Remove unused EmbedFileFormatter.getSiteLink
- Inline EmbedFileFormatter.getCaption and EmbedFileFormatter.getLinkUrl
- Fix JSDoc type `ImageModel`
Reduces mmv bundle size from 28012 to 27246.
Bug: T77349
Change-Id: Ia4388fe4d5e1d6112a992e826453cd5799a6a4b4
Initialise the corresponding dialogs upon first use by deferred loading of the mmv.ui.reuse module. Reduces code size of the main mmv module.
Bug: T77349
Change-Id: I672419e1a8af47d192843f7e7a4a038c0d8da2a3
This removes the thumbnail blurring.
The initial page thumbnail is still in place.
This too can be slightly improved as sizing up to the MMV frame is
done via JS right now, and causes a noticeable change. But we can
simply do this with CSS immediately i think.
Bug: T71609
Bug: T65504
Change-Id: If2a92689be9ee7ecd64561dc224991f31274d58a
- Instantiate LightboxImage object in mmv.bootstrap
- Add LightboxImage.position field: relative position of this image to others with same file
- Add optional routing suffix /:position
Bug: T64039
Change-Id: Ic7c5889064492fc88dae33271b635c5327b091e1