Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Menu items in album view to download all/selected photos do not show up #1942

Open
rzbrk opened this issue Jul 13, 2023 · 6 comments
Open

Menu items in album view to download all/selected photos do not show up #1942

rzbrk opened this issue Jul 13, 2023 · 6 comments
Labels
0. Needs triage Pending approval or rejection. This issue is pending approval. enhancement New feature or request

Comments

@rzbrk
Copy link

rzbrk commented Jul 13, 2023

Describe the bug
Not all menu items show up when clicking on "..." in the top-right corner of album view. In particular, the menu items to download all or the selected photos from the album is missing.

To Reproduce
Steps to reproduce the behavior:

  1. Open an album in the Photos app
  2. Select one, many or all photos in the album.
  3. Click on "..." in the top-right corner
  4. The following menu is visible:
    Screenshot_2023-07-10_21-20-05
  5. See error (expected menu items to download selected/all missing)

Expected behavior
When performing the above steps until step 3 a menu as following is expected:
image

In particular, menu items to be able to download all or the selected photos should show up.

In my case, I can only download the photos one by one.

Screenshots
See above

Desktop (please complete the following information):

  • OS: Arch Linux, Windows 10, Android
  • Browser: Brave v1.52.130 /Arch Linux), Edge v??? (Windows), Vanadium v114.0.5735.196 (Android)
  • Versions; see above

Browser log
From Brave browser under Arch Linux:

index.module.js:2 You need to fill either the text or the ariaLabel props in the button component. {text: undefined, ariaLabel: null} o {_uid: 239, _isVue: true, __v_skip: true, _scope: e, $options: {…}, …}
render @ index.module.js:2
e._render @ vue.runtime.esm.js:2684
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e @ vue.runtime.esm.js:3436
e @ vue.runtime.esm.js:3892
nr.$mount @ vue.runtime.esm.js:8772
init @ vue.runtime.esm.js:4407
(anonymous) @ vue.runtime.esm.js:6567
f @ vue.runtime.esm.js:6521
m @ vue.runtime.esm.js:6640
f @ vue.runtime.esm.js:6544
$a.nodeOps @ vue.runtime.esm.js:7071
e._update @ vue.runtime.esm.js:3765
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e @ vue.runtime.esm.js:3436
e @ vue.runtime.esm.js:3892
nr.$mount @ vue.runtime.esm.js:8772
init @ vue.runtime.esm.js:4407
(anonymous) @ vue.runtime.esm.js:6567
f @ vue.runtime.esm.js:6521
m @ vue.runtime.esm.js:6640
f @ vue.runtime.esm.js:6544
$a.nodeOps @ vue.runtime.esm.js:7071
e._update @ vue.runtime.esm.js:3765
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e @ vue.runtime.esm.js:3436
e @ vue.runtime.esm.js:3892
nr.$mount @ vue.runtime.esm.js:8772
init @ vue.runtime.esm.js:4407
(anonymous) @ vue.runtime.esm.js:6567
f @ vue.runtime.esm.js:6521
m @ vue.runtime.esm.js:6640
f @ vue.runtime.esm.js:6544
$a.nodeOps @ vue.runtime.esm.js:7071
e._update @ vue.runtime.esm.js:3765
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e @ vue.runtime.esm.js:3436
e @ vue.runtime.esm.js:3892
nr.$mount @ vue.runtime.esm.js:8772
init @ vue.runtime.esm.js:4407
n @ vue.runtime.esm.js:4561
(anonymous) @ vue.runtime.esm.js:6567
f @ vue.runtime.esm.js:6521
(anonymous) @ vue.runtime.esm.js:6816
E @ vue.runtime.esm.js:6909
$a.nodeOps @ vue.runtime.esm.js:7077
e._update @ vue.runtime.esm.js:3769
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
set @ vue.runtime.esm.js:963
(anonymous) @ vue-router.esm.js:3005
(anonymous) @ vue-router.esm.js:3004
Ht.updateRoute @ vue-router.esm.js:2414
(anonymous) @ vue-router.esm.js:2263
(anonymous) @ vue-router.esm.js:2402
r @ vue-router.esm.js:2084
r @ vue-router.esm.js:2091
jt @ vue-router.esm.js:2095
(anonymous) @ vue-router.esm.js:2397
r @ vue-router.esm.js:2084
(anonymous) @ vue-router.esm.js:2088
(anonymous) @ vue-router.esm.js:2384
(anonymous) @ vue-router.esm.js:2162
m @ vue-router.esm.js:2362
r @ vue-router.esm.js:2087
r @ vue-router.esm.js:2091
(anonymous) @ vue-router.esm.js:2088
(anonymous) @ vue-router.esm.js:2384
beforeRouteLeave @ AbortControllerMixin.js:39
(anonymous) @ vue-router.esm.js:2512
m @ vue-router.esm.js:2362
r @ vue-router.esm.js:2087
jt @ vue-router.esm.js:2095
Ht.confirmTransition @ vue-router.esm.js:2392
Ht.transitionTo @ vue-router.esm.js:2260
t.push @ vue-router.esm.js:2606
tn.push @ vue-router.esm.js:3039
_ @ vue-router.esm.js:1139
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
i._wrapper @ vue.runtime.esm.js:7473
index.module.js:2 You need to fill either the text or the ariaLabel props in the button component. {text: undefined, ariaLabel: null} o {_uid: 239, _isVue: true, __v_skip: true, _scope: e, $options: {…}, …}
render @ index.module.js:2
e._render @ vue.runtime.esm.js:2684
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
set @ vue.runtime.esm.js:963
zn.set @ vue.runtime.esm.js:5356
(anonymous) @ AlbumContent.vue:336
u @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
T @ AlbumContent.vue:156
a @ AlbumContent.vue:156
Promise.then (async)
T @ AlbumContent.vue:156
a @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
fetchAlbumContent @ AlbumContent.vue:327
mounted @ AlbumContent.vue:310
Bt @ vue.runtime.esm.js:3017
cn @ vue.runtime.esm.js:4031
insert @ vue.runtime.esm.js:4423
C @ vue.runtime.esm.js:6942
$a.nodeOps @ vue.runtime.esm.js:7153
e._update @ vue.runtime.esm.js:3769
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
set @ vue.runtime.esm.js:963
(anonymous) @ vue-router.esm.js:3005
(anonymous) @ vue-router.esm.js:3004
Ht.updateRoute @ vue-router.esm.js:2414
(anonymous) @ vue-router.esm.js:2263
(anonymous) @ vue-router.esm.js:2402
r @ vue-router.esm.js:2084
r @ vue-router.esm.js:2091
jt @ vue-router.esm.js:2095
(anonymous) @ vue-router.esm.js:2397
r @ vue-router.esm.js:2084
(anonymous) @ vue-router.esm.js:2088
(anonymous) @ vue-router.esm.js:2384
(anonymous) @ vue-router.esm.js:2162
m @ vue-router.esm.js:2362
r @ vue-router.esm.js:2087
r @ vue-router.esm.js:2091
(anonymous) @ vue-router.esm.js:2088
(anonymous) @ vue-router.esm.js:2384
beforeRouteLeave @ AbortControllerMixin.js:39
(anonymous) @ vue-router.esm.js:2512
m @ vue-router.esm.js:2362
r @ vue-router.esm.js:2087
jt @ vue-router.esm.js:2095
Ht.confirmTransition @ vue-router.esm.js:2392
Ht.transitionTo @ vue-router.esm.js:2260
t.push @ vue-router.esm.js:2606
tn.push @ vue-router.esm.js:3039
_ @ vue-router.esm.js:1139
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
i._wrapper @ vue.runtime.esm.js:7473
index.module.js:2 You need to fill either the text or the ariaLabel props in the button component. {text: undefined, ariaLabel: null} o {_uid: 239, _isVue: true, __v_skip: true, _scope: e, $options: {…}, …}
render @ index.module.js:2
e._render @ vue.runtime.esm.js:2684
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
set @ vue.runtime.esm.js:963
addAlbums @ albums.js:51
(anonymous) @ vuex.esm.js:844
(anonymous) @ vuex.esm.js:466
(anonymous) @ vuex.esm.js:465
p._withCommit @ vuex.esm.js:624
p.commit @ vuex.esm.js:464
commit @ vuex.esm.js:409
addAlbums @ albums.js:154
(anonymous) @ vuex.esm.js:851
p.dispatch @ vuex.esm.js:516
dispatch @ vuex.esm.js:406
C.forEach.n.<computed> @ vuex.esm.js:1064
(anonymous) @ FetchAlbumsMixin.js:70
p @ FetchAlbumsMixin.js:2
(anonymous) @ FetchAlbumsMixin.js:2
(anonymous) @ FetchAlbumsMixin.js:2
p @ FetchAlbumsMixin.js:2
i @ FetchAlbumsMixin.js:2
Promise.then (async)
p @ FetchAlbumsMixin.js:2
i @ FetchAlbumsMixin.js:2
(anonymous) @ FetchAlbumsMixin.js:2
(anonymous) @ FetchAlbumsMixin.js:2
fetchAlbums @ FetchAlbumsMixin.js:59
(anonymous) @ FetchAlbumsMixin.js:45
p @ FetchAlbumsMixin.js:2
(anonymous) @ FetchAlbumsMixin.js:2
(anonymous) @ FetchAlbumsMixin.js:2
p @ FetchAlbumsMixin.js:2
i @ FetchAlbumsMixin.js:2
(anonymous) @ FetchAlbumsMixin.js:2
(anonymous) @ FetchAlbumsMixin.js:2
beforeMount @ FetchAlbumsMixin.js:44
Bt @ vue.runtime.esm.js:3017
cn @ vue.runtime.esm.js:4031
e @ vue.runtime.esm.js:3854
nr.$mount @ vue.runtime.esm.js:8772
init @ vue.runtime.esm.js:4407
n @ vue.runtime.esm.js:4561
(anonymous) @ vue.runtime.esm.js:6567
f @ vue.runtime.esm.js:6521
(anonymous) @ vue.runtime.esm.js:6816
E @ vue.runtime.esm.js:6909
$a.nodeOps @ vue.runtime.esm.js:7077
e._update @ vue.runtime.esm.js:3769
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
set @ vue.runtime.esm.js:963
(anonymous) @ vue-router.esm.js:3005
(anonymous) @ vue-router.esm.js:3004
Ht.updateRoute @ vue-router.esm.js:2414
(anonymous) @ vue-router.esm.js:2263
(anonymous) @ vue-router.esm.js:2402
r @ vue-router.esm.js:2084
r @ vue-router.esm.js:2091
jt @ vue-router.esm.js:2095
(anonymous) @ vue-router.esm.js:2397
r @ vue-router.esm.js:2084
(anonymous) @ vue-router.esm.js:2088
(anonymous) @ vue-router.esm.js:2384
(anonymous) @ vue-router.esm.js:2162
m @ vue-router.esm.js:2362
r @ vue-router.esm.js:2087
r @ vue-router.esm.js:2091
(anonymous) @ vue-router.esm.js:2088
(anonymous) @ vue-router.esm.js:2384
beforeRouteLeave @ AbortControllerMixin.js:39
(anonymous) @ vue-router.esm.js:2512
m @ vue-router.esm.js:2362
r @ vue-router.esm.js:2087
jt @ vue-router.esm.js:2095
Ht.confirmTransition @ vue-router.esm.js:2392
Ht.transitionTo @ vue-router.esm.js:2260
t.push @ vue-router.esm.js:2606
tn.push @ vue-router.esm.js:3039
_ @ vue-router.esm.js:1139
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
i._wrapper @ vue.runtime.esm.js:7473
index.module.js:2 You need to fill either the text or the ariaLabel props in the button component. {text: undefined, ariaLabel: null} o {_uid: 239, _isVue: true, __v_skip: true, _scope: e, $options: {…}, …}
render @ index.module.js:2
e._render @ vue.runtime.esm.js:2684
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
set @ vue.runtime.esm.js:963
updateFiles @ files.js:74
(anonymous) @ vuex.esm.js:844
(anonymous) @ vuex.esm.js:466
(anonymous) @ vuex.esm.js:465
p._withCommit @ vuex.esm.js:624
p.commit @ vuex.esm.js:464
commit @ vuex.esm.js:409
appendFiles @ files.js:159
(anonymous) @ vuex.esm.js:851
p.dispatch @ vuex.esm.js:516
dispatch @ vuex.esm.js:406
C.forEach.n.<computed> @ vuex.esm.js:1064
(anonymous) @ AlbumContent.vue:355
u @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
T @ AlbumContent.vue:156
a @ AlbumContent.vue:156
Promise.then (async)
T @ AlbumContent.vue:156
a @ AlbumContent.vue:156
Promise.then (async)
T @ AlbumContent.vue:156
a @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
fetchAlbumContent @ AlbumContent.vue:327
mounted @ AlbumContent.vue:310
Bt @ vue.runtime.esm.js:3017
cn @ vue.runtime.esm.js:4031
insert @ vue.runtime.esm.js:4423
C @ vue.runtime.esm.js:6942
$a.nodeOps @ vue.runtime.esm.js:7153
e._update @ vue.runtime.esm.js:3769
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
set @ vue.runtime.esm.js:963
(anonymous) @ vue-router.esm.js:3005
(anonymous) @ vue-router.esm.js:3004
Ht.updateRoute @ vue-router.esm.js:2414
(anonymous) @ vue-router.esm.js:2263
(anonymous) @ vue-router.esm.js:2402
r @ vue-router.esm.js:2084
r @ vue-router.esm.js:2091
jt @ vue-router.esm.js:2095
(anonymous) @ vue-router.esm.js:2397
r @ vue-router.esm.js:2084
(anonymous) @ vue-router.esm.js:2088
(anonymous) @ vue-router.esm.js:2384
(anonymous) @ vue-router.esm.js:2162
m @ vue-router.esm.js:2362
r @ vue-router.esm.js:2087
r @ vue-router.esm.js:2091
(anonymous) @ vue-router.esm.js:2088
(anonymous) @ vue-router.esm.js:2384
beforeRouteLeave @ AbortControllerMixin.js:39
(anonymous) @ vue-router.esm.js:2512
m @ vue-router.esm.js:2362
r @ vue-router.esm.js:2087
jt @ vue-router.esm.js:2095
Ht.confirmTransition @ vue-router.esm.js:2392
Ht.transitionTo @ vue-router.esm.js:2260
t.push @ vue-router.esm.js:2606
tn.push @ vue-router.esm.js:3039
_ @ vue-router.esm.js:1139
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
i._wrapper @ vue.runtime.esm.js:7473
index.module.js:2 You need to fill either the text or the ariaLabel props in the button component. {text: undefined, ariaLabel: null} o {_uid: 239, _isVue: true, __v_skip: true, _scope: e, $options: {…}, …}
render @ index.module.js:2
e._render @ vue.runtime.esm.js:2684
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
set @ vue.runtime.esm.js:963
zn.set @ vue.runtime.esm.js:5356
(anonymous) @ AlbumContent.vue:373
u @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
T @ AlbumContent.vue:156
a @ AlbumContent.vue:156
Promise.then (async)
T @ AlbumContent.vue:156
a @ AlbumContent.vue:156
Promise.then (async)
T @ AlbumContent.vue:156
a @ AlbumContent.vue:156
Promise.then (async)
T @ AlbumContent.vue:156
a @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
(anonymous) @ AlbumContent.vue:156
fetchAlbumContent @ AlbumContent.vue:327
mounted @ AlbumContent.vue:310
Bt @ vue.runtime.esm.js:3017
cn @ vue.runtime.esm.js:4031
insert @ vue.runtime.esm.js:4423
C @ vue.runtime.esm.js:6942
$a.nodeOps @ vue.runtime.esm.js:7153
e._update @ vue.runtime.esm.js:3769
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
set @ vue.runtime.esm.js:963
(anonymous) @ vue-router.esm.js:3005
(anonymous) @ vue-router.esm.js:3004
Ht.updateRoute @ vue-router.esm.js:2414
(anonymous) @ vue-router.esm.js:2263
(anonymous) @ vue-router.esm.js:2402
r @ vue-router.esm.js:2084
r @ vue-router.esm.js:2091
jt @ vue-router.esm.js:2095
(anonymous) @ vue-router.esm.js:2397
r @ vue-router.esm.js:2084
(anonymous) @ vue-router.esm.js:2088
(anonymous) @ vue-router.esm.js:2384
(anonymous) @ vue-router.esm.js:2162
m @ vue-router.esm.js:2362
r @ vue-router.esm.js:2087
r @ vue-router.esm.js:2091
(anonymous) @ vue-router.esm.js:2088
(anonymous) @ vue-router.esm.js:2384
beforeRouteLeave @ AbortControllerMixin.js:39
(anonymous) @ vue-router.esm.js:2512
m @ vue-router.esm.js:2362
r @ vue-router.esm.js:2087
jt @ vue-router.esm.js:2095
Ht.confirmTransition @ vue-router.esm.js:2392
Ht.transitionTo @ vue-router.esm.js:2260
t.push @ vue-router.esm.js:2606
tn.push @ vue-router.esm.js:3039
_ @ vue-router.esm.js:1139
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
i._wrapper @ vue.runtime.esm.js:7473
index.module.js:2 You need to fill either the text or the ariaLabel props in the button component. {text: undefined, ariaLabel: null} o {_uid: 239, _isVue: true, __v_skip: true, _scope: e, $options: {…}, …}
render @ index.module.js:2
e._render @ vue.runtime.esm.js:2684
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
Me @ vue.runtime.esm.js:1012
onFileSelectToggle @ FilesSelectionMixin.js:35
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
Bt @ vue.runtime.esm.js:3017
e.$emit @ vue.runtime.esm.js:3716
onToggle @ File.vue:207
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
Bt @ vue.runtime.esm.js:3017
e.$emit @ vue.runtime.esm.js:3716
onToggle @ index.module.js:2
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
i._wrapper @ vue.runtime.esm.js:7473
index.module.js:2 You need to fill either the text or the ariaLabel props in the button component. {text: undefined, ariaLabel: null} o {_uid: 239, _isVue: true, __v_skip: true, _scope: e, $options: {…}, …}
render @ index.module.js:2
e._render @ vue.runtime.esm.js:2684
r @ vue.runtime.esm.js:3875
e.get @ vue.runtime.esm.js:3446
e.run @ vue.runtime.esm.js:3522
yn @ vue.runtime.esm.js:4121
(anonymous) @ vue.runtime.esm.js:3143
Zt @ vue.runtime.esm.js:3065
Promise.then (async)
jt @ vue.runtime.esm.js:3090
zt @ vue.runtime.esm.js:3155
vn @ vue.runtime.esm.js:4207
e.update @ vue.runtime.esm.js:3513
e.notify @ vue.runtime.esm.js:720
Me @ vue.runtime.esm.js:1012
onFileSelectToggle @ FilesSelectionMixin.js:35
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
Bt @ vue.runtime.esm.js:3017
e.$emit @ vue.runtime.esm.js:3716
onToggle @ File.vue:207
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
Bt @ vue.runtime.esm.js:3017
e.$emit @ vue.runtime.esm.js:3716
onToggle @ index.module.js:2
Bt @ vue.runtime.esm.js:3017
n @ vue.runtime.esm.js:1815
i._wrapper @ vue.runtime.esm.js:7473

Additional context
None

@rzbrk rzbrk added 0. Needs triage Pending approval or rejection. This issue is pending approval. bug Something isn't working labels Jul 13, 2023
@joshtrichards
Copy link
Member

Hi @rzbrk - Thanks for the report!

Reproduced and researched this a bit.

Unfortunately, for the time being, this is a expected behavior. The download from albums functionality was disabled in #1641 as a temporary fix for #1394. It was not actually working properly.

Hopefully one day it'll be possible to add that functionality!

So, for the time being, this is an enhancement request more so than a bug.

PRs are of course always welcome, if you found yourself so inclined, since this is a community open source project. :-)

-jr

@cichy1173
Copy link

It would be great if others could download the entire album (via a share link) with one button :-)

@rzbrk
Copy link
Author

rzbrk commented Aug 10, 2023

Just for your information: There is a work-around solution for downloading the pictures from an album using webdav and the public link for the album: https://help.nextcloud.com/t/how-to-dowload-a-public-photo-album-from-nexcloud/167737.

@sunnyd24
Copy link

sunnyd24 commented Oct 6, 2023

It would be great if others could download the entire album (via a share link) with one button :-)

Agreed, it would be great to have Google Photos like features via a toolbar, such as "download all" for public shared links or even in the photos album view for private view, similar to the attached screenshots from Google Photos. Have a quick look at the comparison:

Nextcloud Photos vs GPhotos

It's a real shame that due to #1394, #1641 reverted the option to download all.

@joshtrichards / @rzbrk Is it possible to change this to an enhancement and see if there is any support to update this in the near future?

Update:
It seems using the memories app that both public link and private album has a download button available, yay! See below screenshots.
However, it's interesting that this code cannot be ported over to the Photos app, or can it?

Memories Private album view

Screenshot 2023-10-06 141444

Memories Public shared link album view

Screenshot 2023-10-06 141517

@joshtrichards joshtrichards added enhancement New feature or request and removed bug Something isn't working labels Oct 6, 2023
@MeikelLP
Copy link

@joshtrichards for me this is a bug not an enhancement. It's a missing feature which was there before. Are you recommending me to downgrade?

@Alseenrodelap
Copy link

@joshtrichards this seems a bug to me also. And it's been almost a year now. Is the app stil maintained or is it dead?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0. Needs triage Pending approval or rejection. This issue is pending approval. enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

6 participants