Skip to content

Commit 9120846

Browse files
committed
Version 2.4.0
1 parent 0b2138d commit 9120846

File tree

13 files changed

+34
-59
lines changed

13 files changed

+34
-59
lines changed

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,18 @@
1+
## [2.4.0](https://github.com/suterma/replayer-pwa/compare/v2.3.0...v2.4.0) (2023-07-03)
2+
3+
This release adds PDF display, improved fade- and preroll-handling, and tag-based filtering.
4+
5+
## What's Changed
6+
7+
- Added tags for display and filtering
8+
- Added omittable fades and pre-roll for cues
9+
- No fades on loop (configurable)
10+
- Updated filename handling when saving compilations
11+
- Various bugfixes
12+
- minor UI improvements
13+
14+
**Full Changelog**: https://github.com/suterma/replayer-pwa/compare/v2.3.0...v2.4.0
15+
116
## [2.3.0](https://github.com/suterma/replayer-pwa/compare/v2.1.0...v2.3.0) (2023-03-30)
217

318
This release adds a playback rate setting, fixes some storage issues and implements various UI improvements.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "replayer",
3-
"version": "2.3.0",
3+
"version": "2.4.0",
44
"description": "Replayer is a free, cue-based media player for rehearsals with playback music. By the click of a button, Replayer starts to play at predefined times in the audio or video file.",
55
"homepage": "https://replayer.app",
66
"main": "./public/index.html",

src/App.vue

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,11 @@ function handleAppUpdate() {
140140
'Version 2.3.0: Storage bugfixes and minor UI improvements\r\n' +
141141
updateText;
142142
}
143+
if (compare(previousVersion, '2.4.0', '<')) {
144+
updateText =
145+
'Version 2.4.0: PDF display, improved fade- and preroll-handling, and tag-based filtering\r\n' +
146+
updateText;
147+
}
143148
144149
acknowledgeVersion(currentVersion, updateText).then(() => {
145150
app.updateAcknowledgedVersion(currentVersion);

src/components/Compilation.vue

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@
1616

1717
<!-- Selectable tags -->
1818
<TagsSelector
19-
v-if="compilationHasTags && experimentalUseTags"
20-
v-experiment="experimentalUseTags"
19+
v-if="compilationHasTags"
2120
:all-tags="getAllTags"
2221
:selected-tags="selectedTags"
2322
@selected="selectTag"
@@ -105,7 +104,6 @@ const {
105104
hasSingleMediaTrack,
106105
allTracks,
107106
getAllTags,
108-
playbackMode,
109107
trackViewMode,
110108
isTrackEditable,
111109
isTrackMixable,
@@ -115,7 +113,7 @@ const {
115113
const noSleep: NoSleep = new NoSleep();
116114
117115
const settings = useSettingsStore();
118-
const { preventScreenTimeout, experimentalUseTags } = storeToRefs(settings);
116+
const { preventScreenTimeout } = storeToRefs(settings);
119117
120118
/** Handle scrolling to the changed active track.
121119
* @remarks This is intentionally only invoked on when the active track changes (and it's not the only audio track).

src/components/SetlistItem.vue

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,7 @@
2323
<TrackTitleName :name="track.Name"></TrackTitleName>
2424
</h2>
2525
<TagsDisplay
26-
v-if="trackHasTags && experimentalUseTags"
27-
v-experiment="experimentalUseTags"
26+
v-if="trackHasTags"
2827
class="ml-2"
2928
small
3029
readonly
@@ -162,8 +161,6 @@ const { experimentalUseMeter } = storeToRefs(settings);
162161
163162
// --- Tag handling ---
164163
165-
const { experimentalUseTags } = storeToRefs(settings);
166-
167164
const trackHasTags = computed(() => {
168165
return props.track.Tags.size > 0;
169166
});

src/components/track/MediaTrack.vue

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,6 @@
134134

135135
<TagsDisplay
136136
v-if="!isTrackEditable && trackHasTags"
137-
v-experiment="experimentalUseTags"
138137
:tags="props.track.Tags"
139138
small
140139
readonly
@@ -1043,7 +1042,6 @@ const {
10431042
showOverviewWaveformOnEdit,
10441043
useFadingOnLoopBoundaries,
10451044
experimentalUseMeter,
1046-
experimentalUseTags,
10471045
} = storeToRefs(settings);
10481046
10491047
const {

src/components/track/PdfTrack.vue

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,6 @@
8282
</p>
8383
<TagsDisplay
8484
v-if="!isTrackEditable && trackHasTags"
85-
v-experiment="experimentalUseTags"
8685
class="ml-2"
8786
:tags="props.track.Tags"
8887
small
@@ -138,20 +137,14 @@
138137
</LabeledInput>
139138
</div>
140139
<!-- Tags -->
141-
<CoveredPanel
142-
v-if="experimentalUseTags"
143-
v-experiment="experimentalUseTags"
144-
title="Tag"
145-
class="level-item"
146-
>
140+
<CoveredPanel title="Tag" class="level-item">
147141
<template #caption
148142
><span class="label">Tags</span></template
149143
>
150144
<TagInput @new-tag="addNewTag"></TagInput>
151145
</CoveredPanel>
152146
<TagsDisplay
153-
v-if="trackHasTags && experimentalUseTags"
154-
v-experiment="experimentalUseTags"
147+
v-if="trackHasTags"
155148
class="level-item"
156149
:tags="props.track.Tags"
157150
@remove="removeTag"
@@ -248,7 +241,7 @@ const app = useAppStore();
248241
const { isTrackEditable } = storeToRefs(app);
249242
250243
const settings = useSettingsStore();
251-
const { showPdfInline, experimentalUseTags } = storeToRefs(settings);
244+
const { showPdfInline } = storeToRefs(settings);
252245
253246
/** Whether the pdf is currently expanded */
254247
const isExpanded = ref(false);

src/components/track/TrackHeader.vue

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -209,20 +209,14 @@
209209
</CoveredPanel>
210210

211211
<!-- Tags -->
212-
<CoveredPanel
213-
v-if="experimentalUseTags"
214-
v-experiment="experimentalUseTags"
215-
title="Tag"
216-
class="level-item"
217-
>
212+
<CoveredPanel title="Tag" class="level-item">
218213
<template #caption
219214
><span class="label">Tags</span></template
220215
>
221216
<TagInput @new-tag="addNewTag"></TagInput>
222217
</CoveredPanel>
223218
<TagsDisplay
224-
v-if="trackHasTags && experimentalUseTags"
225-
v-experiment="experimentalUseTags"
219+
v-if="trackHasTags"
226220
class="level-item"
227221
:tags="props.track.Tags"
228222
@remove="removeTag"
@@ -354,11 +348,8 @@ const app = useAppStore();
354348
const { isTrackEditable } = storeToRefs(app);
355349
356350
const settings = useSettingsStore();
357-
const {
358-
experimentalUseMeter,
359-
experimentalAllowTrackSharingByLink,
360-
experimentalUseTags,
361-
} = storeToRefs(settings);
351+
const { experimentalUseMeter, experimentalAllowTrackSharingByLink } =
352+
storeToRefs(settings);
362353
363354
const useMeasureNumbers = inject(useMeasureNumbersInjectionKey);
364355

src/store/app/getters.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,11 +100,10 @@ export const getters = {
100100

101101
// specifically handle the experiment - remove after official release of tags
102102
const settings = useSettingsStore();
103-
const { experimentalUseTags } = storeToRefs(settings);
104103

105104
let tracks = new Array<ITrack>();
106105
// if any tag is selected, filter by these selected tags
107-
if (isAnyTagSelected && experimentalUseTags.value) {
106+
if (isAnyTagSelected) {
108107
console.debug('app::allTracks:selectedTags', selectedTags);
109108
tracks =
110109
state.compilation.value.Tracks?.filter((track) => {

src/store/settings/index.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -180,11 +180,6 @@ export const useSettingsStore = defineStore(Store.Settings, () => {
180180
*/
181181
const experimentalUseMeter = useLocalStorage('experimentalUseMeter', false);
182182

183-
/** EXPERIMENTAL: Whether to show tags
184-
* @remarks Default is false
185-
*/
186-
const experimentalUseTags = useLocalStorage('experimentalUseTags', false);
187-
188183
/** EXPERIMENTAL: Whether to hide the stage mark
189184
* @remarks This is not persisted to keep the user still informed after any restart
190185
*/
@@ -215,7 +210,6 @@ export const useSettingsStore = defineStore(Store.Settings, () => {
215210
experimentalMultitrack.value = false;
216211
experimentalUseQueueCueMode.value = false;
217212
experimentalUseMeter.value = false;
218-
experimentalUseTags.value = false;
219213
experimentalHideStageMark.value = false;
220214
}
221215

@@ -245,7 +239,6 @@ export const useSettingsStore = defineStore(Store.Settings, () => {
245239
experimentalMultitrack,
246240
experimentalUseQueueCueMode,
247241
experimentalUseMeter,
248-
experimentalUseTags,
249242
experimentalHideStageMark,
250243
$reset,
251244
};

0 commit comments

Comments
 (0)