diff --git a/README.md b/README.md
index 5c61a7a2..d33b5076 100644
--- a/README.md
+++ b/README.md
@@ -142,15 +142,17 @@ apt-get install build-essential libkrb5-dev gcc g++
* saving generated thumbnails to TEMP folder for reuse
* supporting multi-core CPUs
* supporting hardware acceleration ([sharp](https://github.com/lovell/sharp) and [gm](https://github.com/aheckmann/gm) as optional and JS-based [Jimp](https://github.com/oliver-moran/jimp) as fallback)
- * Custom lightbox for full screen photo viewing
+ * Custom lightbox for full screen photo and video viewing
* keyboard support for navigation
* showing low-res thumbnail while full image loads
* Information panel for showing **Exif info**
* Automatic playing
* gesture support (swipe left, right, up)
+ * shortcut support
* Client side caching (directories and search results)
- * Rendering **photos** with GPS coordinates **on google map**
- * .gpx file support
+ * Rendering **photos** with GPS coordinates **on open street maps**
+ * .gpx file support: rendering paths to map
+ * supports [OSM](https://www.openstreetmap.org) and [Mapbox](https://www.mapbox.com) by default, but you can add any provider that has a tile url
* **Two modes: SQL database and no-database mode**
* both modes supports
* user management
@@ -162,6 +164,7 @@ apt-get install build-essential libkrb5-dev gcc g++
* sharing
* setting link expiration time
* internalization / translation support
+ * currently supported languages: eng, hun
* Nice design
* responsive design (phone, tablet desktop support)
* Setup page
diff --git a/docs/index.html b/docs/index.html
index 5e9b0fda..11a10c18 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -156,19 +156,21 @@
-
Custom lightbox for full screen photo viewing
+ Custom lightbox for full screen photo and video viewing
- keyboard support for navigation
- showing low-res thumbnail while full image loads
- Information panel for showing Exif info
- Automatic playing
- gesture support (swipe left, right, up)
+ - shortcut support
Client side caching (directories and search results)
- Rendering photos with GPS coordinates on google map
+ Rendering photos with GPS coordinates on open street map
- - .gpx file support
+ - .gpx file support: rendering paths to map
+ - supports OSM and Mapbox by default, but you can add any provider that has a tile url
Two modes: SQL database and no-database mode
diff --git a/frontend/app/gallery/fullscreen.service.ts b/frontend/app/gallery/fullscreen.service.ts
index 5f771922..b6c6f669 100644
--- a/frontend/app/gallery/fullscreen.service.ts
+++ b/frontend/app/gallery/fullscreen.service.ts
@@ -22,19 +22,19 @@ export class FullScreenService {
document['webkitFullscreenElement']);
}
- public showFullScreen(element: any) {
+ public showFullScreen(element: Element) {
if (this.isFullScreenEnabled()) {
return;
}
if (element.requestFullscreen) {
- element.requestFullscreen();
- } else if (element.mozRequestFullScreen) {
- element.mozRequestFullScreen();
- } else if (element.webkitRequestFullscreen) {
- element.webkitRequestFullscreen();
- } else if (element.msRequestFullscreen) {
- element.msRequestFullscreen();
+ element.requestFullscreen().catch(console.error);
+ } else if ((element).mozRequestFullScreen) {
+ (element).mozRequestFullScreen();
+ } else if ((element).webkitRequestFullscreen) {
+ (element).webkitRequestFullscreen();
+ } else if ((element).msRequestFullscreen) {
+ (element).msRequestFullscreen();
}
this.OnFullScreenChange.trigger(true);
}
diff --git a/frontend/app/gallery/lightbox/lightbox.gallery.component.ts b/frontend/app/gallery/lightbox/lightbox.gallery.component.ts
index f67c69da..41eb539b 100644
--- a/frontend/app/gallery/lightbox/lightbox.gallery.component.ts
+++ b/frontend/app/gallery/lightbox/lightbox.gallery.component.ts
@@ -39,7 +39,7 @@ export class GalleryLightboxComponent implements OnDestroy, OnInit {
@ViewChild('photo') mediaElement: GalleryLightboxMediaComponent;
@ViewChild('lightbox') lightboxElement: ElementRef;
- @ViewChild('root') root: HTMLElement;
+ @ViewChild('root') root: ElementRef;
public navigation = {hasPrev: true, hasNext: true};
public blackCanvasOpacity = 0;
@@ -251,7 +251,7 @@ export class GalleryLightboxComponent implements OnDestroy, OnInit {
if (this.fullScreenService.isFullScreenEnabled()) {
this.fullScreenService.exitFullScreen();
} else {
- this.fullScreenService.showFullScreen(this.root);
+ this.fullScreenService.showFullScreen(this.root.nativeElement);
}
break;
case 'c':
diff --git a/frontend/app/gallery/map/lightbox/lightbox.map.gallery.component.html b/frontend/app/gallery/map/lightbox/lightbox.map.gallery.component.html
index ceeaac30..fe505d64 100644
--- a/frontend/app/gallery/map/lightbox/lightbox.map.gallery.component.html
+++ b/frontend/app/gallery/map/lightbox/lightbox.map.gallery.component.html
@@ -59,15 +59,15 @@
+ (click)="fullScreenService.exitFullScreen()" title="toggle fullscreen, key: f" i18n-title>
+ (click)="fullScreenService.showFullScreen(root)" title="toggle fullscreen, key: f" i18n-title>
-
+
diff --git a/frontend/app/gallery/map/lightbox/lightbox.map.gallery.component.ts b/frontend/app/gallery/map/lightbox/lightbox.map.gallery.component.ts
index 8212dff3..45cb3e53 100644
--- a/frontend/app/gallery/map/lightbox/lightbox.map.gallery.component.ts
+++ b/frontend/app/gallery/map/lightbox/lightbox.map.gallery.component.ts
@@ -56,6 +56,25 @@ export class GalleryMapLightboxComponent implements OnChanges, AfterViewInit {
}
+ @HostListener('window:resize', ['$event'])
+ async onResize() {
+ this.lightboxDimension = {
+ top: 0,
+ left: 0,
+ width: this.getScreenWidth(),
+ height: this.getScreenHeight()
+ };
+ this.mapDimension = {
+ top: 0,
+ left: 0,
+ width: this.getScreenWidth(),
+ height: this.getScreenHeight()
+ };
+ await Utils.wait(0);
+ this.yagaMap.invalidateSize();
+ }
+
+
public async show(position: Dimension) {
this.hideImages();
@@ -209,6 +228,14 @@ export class GalleryMapLightboxComponent implements OnChanges, AfterViewInit {
}
const event: KeyboardEvent = window.event ? window.event : e;
switch (event.key) {
+ case 'f':
+ case 'F':
+ if (this.fullScreenService.isFullScreenEnabled()) {
+ this.fullScreenService.exitFullScreen();
+ } else {
+ this.fullScreenService.showFullScreen(this.elementRef.nativeElement);
+ }
+ break;
case 'Escape': // escape
this.hide();
break;
diff --git a/frontend/app/gallery/map/map.gallery.component.html b/frontend/app/gallery/map/map.gallery.component.html
index 3deaa43a..0b1937a2 100644
--- a/frontend/app/gallery/map/map.gallery.component.html
+++ b/frontend/app/gallery/map/map.gallery.component.html
@@ -12,12 +12,6 @@
*ngFor="let photo of mapPhotos"
[lat]="photo.lat"
[lng]="photo.lng">
-
app/gallery/lightbox/lightbox.gallery.component.html
47
+
+ app/gallery/map/lightbox/lightbox.map.gallery.component.html
+ 62
+
+
+ app/gallery/map/lightbox/lightbox.map.gallery.component.html
+ 67
+
toggle fullscreen, key: f
@@ -134,6 +142,10 @@
app/gallery/lightbox/lightbox.gallery.component.html
54
+
+ app/gallery/map/lightbox/lightbox.map.gallery.component.html
+ 70
+
close, key: Escape
diff --git a/frontend/translate/messages.hu.xlf b/frontend/translate/messages.hu.xlf
index f5b81911..2bf1c6b2 100644
--- a/frontend/translate/messages.hu.xlf
+++ b/frontend/translate/messages.hu.xlf
@@ -126,6 +126,14 @@
app/gallery/lightbox/lightbox.gallery.component.html
47
+
+ app/gallery/map/lightbox/lightbox.map.gallery.component.html
+ 62
+
+
+ app/gallery/map/lightbox/lightbox.map.gallery.component.html
+ 67
+
teljes képernyős váltás, gyorsgomb: f
@@ -134,6 +142,10 @@
app/gallery/lightbox/lightbox.gallery.component.html
54
+
+ app/gallery/map/lightbox/lightbox.map.gallery.component.html
+ 70
+
bezárás, gyorsgomb: escape
@@ -1840,4 +1852,4 @@