discourse/app/assets/javascripts
Joe 7e5ad9aaaa
UX: improve lightbox gallery zoom/navigation (#13500)
This PR improves navigation within lightboxes that contain multiple images for both touch and non-touch devices.

Currently, if a gallery contains multiple large images, and you click on the one currently displayed, two things happen. 

1. we zoom in
2. we navigate to the next image

a0bbc346cb/app/assets/javascripts/discourse/app/lib/lightbox.js (L43-L49)

So, you get taken to the next image, and it shows zoomed in, even when the intention was to zoom in on the previous image.

Magnific popup has an option to disable image-click navigation in galleries. This PR toggles that on for non-touch devices.

The result is that if you click on an image in a gallery on a non-touch device, we zoom in on that image instead of navigating to the next one.

This has no impact on arrow/keyboard navigation.

Magnific popup also has an API when images change; we reset the zoom class when that happens. So, when you navigate to the next image, it won't be zoomed in.

For touch devices, clicking on the image will navigate to the next one without zooming in. Users can pinch-zoom if they want to see more details on touch devices.

I used jQuery for this because both Magnific popup and our implementation for this are based on jQuery. No point making a few lines use vanilla for this when the rest doesn't.
2021-06-24 00:32:17 +08:00
..
admin DEV: Rename emoji icon (#13499) 2021-06-23 11:12:48 -04:00
confirm-new-email
discourse UX: improve lightbox gallery zoom/navigation (#13500) 2021-06-24 00:32:17 +08:00
discourse-common FIX: Some absolute links were causing full page reloads (#13377) 2021-06-15 12:30:36 +10:00
discourse-hbr DEV: Update ember-cli across all in-repo addons (#13048) 2021-05-12 21:49:55 +02:00
discourse-widget-hbs DEV: Update ember-cli across all in-repo addons (#13048) 2021-05-12 21:49:55 +02:00
docs
ember-addons
locales DEV: Correct typos and spelling mistakes (#12812) 2021-05-21 11:43:47 +10:00
pretty-text FIX: Add word boundaries to replace and tag watched words (#13405) 2021-06-18 18:54:06 +03:00
select-kit UX: more consistent setting/edit buttons (#13276) 2021-06-03 18:33:36 -04:00
truth-helpers DEV: Update ember-cli across all in-repo addons (#13048) 2021-05-12 21:49:55 +02:00
wizard FIX: Wizard locale change wasn't applying to some elements (#12915) 2021-04-30 12:14:16 -04:00
activate-account.js
admin.js.erb
app-boot.js REFACTOR: Sync up master with changes for Ember-CLI (#11671) 2021-01-12 10:13:21 -05:00
application.js FEATURE: Improve group email settings UI (#13083) 2021-05-28 09:28:18 +10:00
auto-redirect.js
browser-detect.js
browser-update.js FIX: browser-update should work with old browsers (#12436) 2021-03-18 19:09:01 +02:00
discourse-loader.js DEV: Add more @ember modules for plugins compatibility with Ember CLI (#11972) 2021-02-04 16:26:06 +03:00
discourse-shims.js FIX: Update non-Ember CLI ember-buffered-proxy (#13227) 2021-06-01 16:49:03 +02:00
embed-application.js DEV: prettier 2.2.1 (#11862) 2021-01-27 12:39:20 +01:00
ember_include.js.erb
ember_jquery.js
env.js
google-tag-manager.js FEATURE: Implement nonces for Google Tag Manager integration (#12531) 2021-03-26 11:19:31 -04:00
google-universal-analytics-v3.js
google-universal-analytics-v4.js
handlebars-shim.js FIX: It seems sometimes shims are evaluated by older JS engines (#11813) 2021-01-22 10:41:01 -05:00
main_include_admin.js
markdown-it-bundle.js
onpopstate-handler.js
package.json FIX: Make truth-helpers work in Ember CLI (#13044) 2021-05-12 17:52:36 +02:00
polyfills.js
pretty-text-bundle.js
print-page.js
service-worker.js.erb DEV: debug: false for service workers to stop log spam via workbox (#12093) 2021-02-16 14:01:19 +10:00
set-prototype-polyfill.js
start-discourse.js
template_include.js
test-shims.js DEV: Migrate to Ember CLI (#11932) 2021-02-03 14:22:20 -05:00
vendor.js FEATURE: Optimize images before upload (#13432) 2021-06-23 12:31:12 -03:00
widget-runtime.js
wizard-application.js DEV: implements some of ember-truth-helpers (#12667) 2021-04-12 11:40:00 +02:00
wizard-shims.js
wizard-start.js
wizard-vendor.js DEV: Remove ember_jquery in most situations (#13237) 2021-06-01 15:32:51 -04:00
yarn.lock DEV: Add peer dependencies (#13132) 2021-05-25 18:39:40 +02:00