Open recordings should open in a new tab.

This commit is contained in:
Storm Dragon
2026-07-07 21:29:15 -04:00
parent e31bffd256
commit 0c852e8c41
4 changed files with 8 additions and 8 deletions
@@ -2,7 +2,7 @@
# shellcheck shell=bash disable=SC2034,SC2154 # shellcheck shell=bash disable=SC2034,SC2154
pkgname=skald-git pkgname=skald-git
pkgver=0.0.0.r1551.g4e210db pkgver=0.0.0.r1552.ge31bffd
pkgrel=1 pkgrel=1
pkgdesc='Audio-only hall-based conferencing server' pkgdesc='Audio-only hall-based conferencing server'
arch=('x86_64' 'aarch64') arch=('x86_64' 'aarch64')
+3 -3
View File
@@ -62,9 +62,9 @@ that apply to the hall as a whole. Clicking on a different user opens
a *user menu*, a menu that applies to that specific user. a *user menu*, a menu that applies to that specific user.
For operators who are allowed to record, the hall menu includes the current For operators who are allowed to record, the hall menu includes the current
recording control and an *Open recordings* action. *Open recordings* opens recording control and an *Open recordings (opens in new tab)* action. *Open
the hall's recording archive, which lists completed recordings when there recordings (opens in new tab)* opens the hall's recording archive in a new tab,
are multiple files. which lists completed recordings when there are multiple files.
### Chat pane ### Chat pane
+2 -2
View File
@@ -1794,8 +1794,8 @@ function userMenu(elt) {
onClick: () => { onClick: () => {
serverConnection.hallAction(hallRecording ? 'unrecord' : 'record'); serverConnection.hallAction(hallRecording ? 'unrecord' : 'record');
}}); }});
items.push({label: 'Open recordings', onClick: () => { items.push({label: 'Open recordings (opens in new tab)', onClick: () => {
window.location.href = recordingsUrl(); window.open(recordingsUrl(), '_blank', 'noopener');
}}); }});
} }
if(findUpMedia('audio')) if(findUpMedia('audio'))
+2 -2
View File
@@ -116,6 +116,6 @@ func TestRecordingControlLivesInSelfMenu(t *testing.T) {
requireFunctionContains(t, js, "userMenu", "if(canRecordHall())") requireFunctionContains(t, js, "userMenu", "if(canRecordHall())")
requireFunctionContains(t, js, "userMenu", "hallRecording ? 'Stop recording' : 'Start recording'") requireFunctionContains(t, js, "userMenu", "hallRecording ? 'Stop recording' : 'Start recording'")
requireFunctionContains(t, js, "userMenu", "serverConnection.hallAction(hallRecording ? 'unrecord' : 'record')") requireFunctionContains(t, js, "userMenu", "serverConnection.hallAction(hallRecording ? 'unrecord' : 'record')")
requireFunctionContains(t, js, "userMenu", "Open recordings") requireFunctionContains(t, js, "userMenu", "Open recordings (opens in new tab)")
requireFunctionContains(t, js, "userMenu", "window.location.href = recordingsUrl()") requireFunctionContains(t, js, "userMenu", "window.open(recordingsUrl(), '_blank', 'noopener')")
} }