diff --git a/client/src/app/shared/components/jitsi/jitsi.component.html b/client/src/app/shared/components/jitsi/jitsi.component.html
index b4a1f51cb..869a1df36 100644
--- a/client/src/app/shared/components/jitsi/jitsi.component.html
+++ b/client/src/app/shared/components/jitsi/jitsi.component.html
@@ -3,34 +3,54 @@
-
- open_in_new
-
+
-
+
+
+
+
+
+
+
-
-
+
+
@@ -88,7 +121,7 @@
- {{ 'Live conference' | translate }}
+ {{ 'Live conference' | translate }}
@@ -213,10 +246,10 @@
color="accent"
(click)="toggleConferenceDialog()"
[disabled]="!isJitsiActive"
- matTooltip="{{ 'Maximize / minimize Jitsi window' | translate }}"
+ matTooltip="{{ 'Show/Hide video conference' | translate }}"
>
- {{ isJitsiDialogOpen ? 'fullscreen_exit' : 'fullscreen' }}
+ {{ isJitsiDialogOpen ? 'keyboard_hide' : 'voice_chat' }}
diff --git a/client/src/app/shared/components/jitsi/jitsi.component.scss b/client/src/app/shared/components/jitsi/jitsi.component.scss
index 4a5ce3a90..b2d1f89f4 100644
--- a/client/src/app/shared/components/jitsi/jitsi.component.scss
+++ b/client/src/app/shared/components/jitsi/jitsi.component.scss
@@ -20,6 +20,20 @@
.jitsi-dialog-actions {
display: flex;
justify-content: space-between;
+
+ div {
+ min-width: 33%;
+ display: flex;
+ }
+
+ .dialog-hangup {
+ margin-left: auto;
+ margin-right: auto;
+ }
+
+ .dialog-hide {
+ margin-left: auto;
+ }
}
}
}
@@ -59,6 +73,22 @@
text-align: center;
margin: auto $wrapper-padding auto 0;
}
+
+ /**
+ * appear animation
+ */
+ @keyframes fade-in-out {
+ from {
+ opacity: 100%;
+ }
+ to {
+ opacity: 25%;
+ }
+ }
+
+ .enter-meeting-room {
+ animation: fade-in-out 1s linear infinite alternate;
+ }
}
.stream-width-wrapper {
diff --git a/client/src/app/shared/components/jitsi/jitsi.component.scss-theme.scss b/client/src/app/shared/components/jitsi/jitsi.component.scss-theme.scss
index 0132a0439..9cd3bea97 100644
--- a/client/src/app/shared/components/jitsi/jitsi.component.scss-theme.scss
+++ b/client/src/app/shared/components/jitsi/jitsi.component.scss-theme.scss
@@ -3,7 +3,7 @@
@mixin os-jitsi-theme($theme) {
$primary: map-get($theme, primary);
$accent: map-get($theme, accent);
- $warn: map-get($theme, accent);
+ $warn: map-get($theme, warn);
$foreground: map-get($theme, foreground);
$background: map-get($theme, background);
diff --git a/client/src/app/shared/components/jitsi/jitsi.component.ts b/client/src/app/shared/components/jitsi/jitsi.component.ts
index 6c653f92a..762923373 100644
--- a/client/src/app/shared/components/jitsi/jitsi.component.ts
+++ b/client/src/app/shared/components/jitsi/jitsi.component.ts
@@ -120,12 +120,12 @@ export class JitsiComponent extends BaseViewComponent implements OnInit, OnDestr
private isOnCurrentLos: boolean;
+ public get canManageSpeaker(): boolean {
+ return this.operator.hasPerms(this.permission.agendaCanManageListOfSpeakers);
+ }
+
public get isAccessPermitted(): boolean {
- return (
- !this.restricted ||
- this.operator.hasPerms(this.permission.agendaCanManageListOfSpeakers) ||
- this.isOnCurrentLos
- );
+ return !this.restricted || this.canManageSpeaker || this.isOnCurrentLos;
}
public get jitsiMeetUrl(): string {
@@ -160,7 +160,32 @@ export class JitsiComponent extends BaseViewComponent implements OnInit, OnDestr
DISABLE_JOIN_LEAVE_NOTIFICATIONS: true,
DISABLE_PRESENCE_STATUS: true,
TOOLBAR_ALWAYS_VISIBLE: true,
- TOOLBAR_TIMEOUT: 10000000
+ TOOLBAR_TIMEOUT: 10000000,
+ TOOLBAR_BUTTONS: [
+ 'microphone',
+ 'camera',
+ 'desktop',
+ 'fullscreen',
+ 'fodeviceselection',
+ 'profile',
+ 'chat',
+ 'recording',
+ 'livestreaming',
+ 'etherpad',
+ 'sharedvideo',
+ 'settings',
+ 'videoquality',
+ 'filmstrip',
+ 'invite',
+ 'feedback',
+ 'stats',
+ 'shortcuts',
+ 'tileview',
+ 'download',
+ 'help',
+ 'mute-everyone',
+ 'security'
+ ]
};
public constructor(