2018-05-27 08:49:55 +08:00
|
|
|
<div [hidden]="!isVisible()" #root>
|
2016-05-01 00:33:07 +08:00
|
|
|
|
2017-07-10 04:00:42 +08:00
|
|
|
<div class="blackCanvas"
|
|
|
|
[style.opacity]="blackCanvasOpacity">
|
|
|
|
</div>
|
|
|
|
|
2017-07-11 04:00:22 +08:00
|
|
|
<div class="lightbox" #lightbox>
|
2018-11-05 02:28:32 +08:00
|
|
|
<app-gallery-lightbox-photo [gridMedia]="activePhoto ? activePhoto.gridPhoto : null"
|
|
|
|
[loadMedia]="!animating"
|
2018-05-14 10:10:56 +08:00
|
|
|
[windowAspect]="getWindowAspectRatio()"
|
2018-05-04 07:17:08 +08:00
|
|
|
#photo>
|
|
|
|
</app-gallery-lightbox-photo>
|
2017-07-10 04:00:42 +08:00
|
|
|
</div>
|
2017-07-12 02:23:25 +08:00
|
|
|
<div
|
|
|
|
*ngIf="controllersVisible"
|
2018-11-12 02:22:46 +08:00
|
|
|
id="controllers-container"
|
|
|
|
#controls
|
|
|
|
[style.width.px]="getPhotoFrameWidth()"
|
2017-07-12 02:23:25 +08:00
|
|
|
[ngClass]="!controllersDimmed ? 'dim-controls': ''">
|
2018-11-12 02:22:46 +08:00
|
|
|
<div id="swipeable-container"
|
|
|
|
(swipeleft)="nextImage()"
|
|
|
|
(swiperight)="prevImage()"
|
|
|
|
(swipeup)="hide()"
|
|
|
|
(click)="photo.playPause()">
|
|
|
|
|
|
|
|
<div class="controls controls-top">
|
|
|
|
<a *ngIf="activePhoto"
|
|
|
|
class="highlight control-button"
|
|
|
|
[href]="activePhoto.gridPhoto.getPhotoPath()"
|
|
|
|
[download]="activePhoto.gridPhoto.media.name">
|
2018-05-14 10:10:56 +08:00
|
|
|
<span class="oi oi-data-transfer-download"
|
2018-03-30 08:30:23 +08:00
|
|
|
title="download" i18n-title></span>
|
2018-11-12 02:22:46 +08:00
|
|
|
</a>
|
2017-07-10 04:00:42 +08:00
|
|
|
|
2018-11-12 02:22:46 +08:00
|
|
|
<div class=" highlight control-button" (click)="toggleInfoPanel()"
|
|
|
|
title="info" i18n-title>
|
|
|
|
<span class="oi oi-info"></span>
|
|
|
|
</div>
|
2017-07-10 04:00:42 +08:00
|
|
|
|
2018-11-12 02:22:46 +08:00
|
|
|
<div *ngIf="fullScreenService.isFullScreenEnabled()"
|
|
|
|
class=" highlight control-button"
|
|
|
|
(click)="fullScreenService.exitFullScreen()"
|
|
|
|
title="toggle fullscreen" i18n-title>
|
2018-05-14 10:10:56 +08:00
|
|
|
<span class="oi oi-fullscreen-exit">
|
2018-05-14 04:59:57 +08:00
|
|
|
|
2018-05-14 10:10:56 +08:00
|
|
|
</span>
|
2018-11-12 02:22:46 +08:00
|
|
|
</div>
|
2017-07-10 04:00:42 +08:00
|
|
|
|
2018-11-12 02:22:46 +08:00
|
|
|
<div *ngIf="!fullScreenService.isFullScreenEnabled()"
|
|
|
|
class="highlight control-button"
|
|
|
|
(click)="fullScreenService.showFullScreen(root)"
|
|
|
|
title="toggle fullscreen" i18n-title>
|
2018-05-14 10:10:56 +08:00
|
|
|
<span class="oi oi-fullscreen-enter">
|
|
|
|
</span>
|
2018-11-12 02:22:46 +08:00
|
|
|
</div>
|
2018-05-14 10:10:56 +08:00
|
|
|
|
2018-11-12 02:22:46 +08:00
|
|
|
<div class="highlight control-button"
|
|
|
|
(click)="hide()"
|
|
|
|
title="close" i18n-title>
|
2018-05-14 10:10:56 +08:00
|
|
|
<span class="oi oi-x">
|
|
|
|
|
|
|
|
</span>
|
2018-11-12 02:22:46 +08:00
|
|
|
</div>
|
2018-05-14 10:10:56 +08:00
|
|
|
</div>
|
2016-05-13 20:27:00 +08:00
|
|
|
|
2018-11-12 02:22:46 +08:00
|
|
|
<div class="navigation-arrow highlight"
|
|
|
|
*ngIf="navigation.hasPrev" title="key: left arrow" id="leftArrow" i18n-title
|
|
|
|
(click)="prevImage()"><span
|
|
|
|
class="oi oi-chevron-left"></span></div>
|
|
|
|
<div class="navigation-arrow highlight"
|
|
|
|
*ngIf="navigation.hasNext" title="key: right arrow" id="rightArrow" i18n-title
|
|
|
|
(click)="nextImage()"><span
|
|
|
|
class="oi oi-chevron-right"></span></div>
|
2017-07-12 02:23:25 +08:00
|
|
|
|
2018-11-12 02:22:46 +08:00
|
|
|
<div class="controls controls-playback" *ngIf="activePhoto && activePhoto.gridPhoto.isPhoto()">
|
2018-05-14 04:59:57 +08:00
|
|
|
<span class="oi oi-media-pause highlight control-button"
|
2017-07-12 02:23:25 +08:00
|
|
|
[ngClass]="playBackState == 0 ? 'button-disabled':''"
|
|
|
|
(click)="pause()"
|
|
|
|
title="pause"></span>
|
2018-11-12 02:22:46 +08:00
|
|
|
<span
|
|
|
|
class="oi oi-media-play highlight control-button"
|
|
|
|
[ngClass]="playBackState == 1 ? 'button-active':''"
|
|
|
|
(click)="play()"
|
|
|
|
title="auto play"></span>
|
|
|
|
<span class="oi oi-media-skip-forward highlight control-button"
|
|
|
|
[ngClass]="playBackState == 2 ? 'button-active':''"
|
|
|
|
(click)="fastForward()"
|
|
|
|
title="fast auto play"></span>
|
|
|
|
</div>
|
|
|
|
<div class="controls controls-big-play" *ngIf=" activePhoto && activePhoto.gridPhoto.isVideo() && photo.Paused">
|
|
|
|
<span class="oi oi-media-play"></span>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<div class="controls controls-video row" *ngIf="activePhoto && activePhoto.gridPhoto.isVideo()">
|
|
|
|
<span class="oi col-1"
|
|
|
|
[ngClass]="!photo.Paused ? 'oi-media-pause':'oi-media-play'"
|
|
|
|
(click)="photo.playPause()"></span>
|
|
|
|
<input type="range" [(ngModel)]="photo.VideoProgress"
|
|
|
|
min="0" max="100" step="0.1" class="col video-progress">
|
|
|
|
<span class="oi col-1"
|
|
|
|
[ngClass]="photo.Muted ? 'oi-volume-off':'oi-volume-high'"
|
|
|
|
(click)="photo.mute()"></span>
|
|
|
|
<input type="range"
|
|
|
|
[(ngModel)]="photo.VideoVolume" min="0" max="1" step="0.1"
|
|
|
|
value="1" class="col-2 col-md-1 volume">
|
2017-07-12 02:23:25 +08:00
|
|
|
</div>
|
2017-07-10 04:00:42 +08:00
|
|
|
</div>
|
2018-05-04 07:17:08 +08:00
|
|
|
<app-info-panel *ngIf="activePhoto && infoPanelVisible"
|
|
|
|
id="info-panel"
|
|
|
|
[style.width.px]="infoPanelWidth"
|
2018-11-05 02:28:32 +08:00
|
|
|
[media]="activePhoto.gridPhoto.photo"
|
2018-05-04 07:17:08 +08:00
|
|
|
(onClose)="hideInfoPanel()">
|
2017-07-10 04:00:42 +08:00
|
|
|
|
2018-05-04 07:17:08 +08:00
|
|
|
</app-info-panel>
|
2016-05-13 05:00:38 +08:00
|
|
|
</div>
|