nextcloud / photos

📸 Your memories under your control
GNU Affero General Public License v3.0
589 stars 62 forks source link

[Bug] Clicking on a photo in the photo viewer 2.0 opens a different photo from another folder #1488

Open albgus opened 2 years ago

albgus commented 2 years ago

Describe the bug Sometimes when I open a photo in the new photos app it opens a different photo with the same filename from another folder.

To Reproduce Steps to reproduce the behavior:

  1. Upload some pictures with the same filename into different folders / ??? (not sure what may have triggered this)
  2. Go to the new photos tab
  3. Click on the thumbnail of a picture
  4. The wrong picture is opened.

Expected behavior Clicking the thumbnail of a picture should open the same picture

Screenshots N/A

Desktop (please complete the following information):

Browser log

Expand ``` Refused to apply style from 'https://moln.online/apps/photos/css/icons.css?v=d233662f-0' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled. jquery-migrate.min.js:2 JQMIGRATE: Migrate is installed, version 3.4.0 ConsoleLogger.js:56 [INFO] viewer: No OCA.Files app found, viewer is now in standalone mode {level: 1, app: 'viewer', uid: 'albin'} ConsoleLogger.js:56 [INFO] viewer: 5 viewer handlers registered {level: 1, app: 'viewer', uid: 'albin', handlers: Array(5)} session-heartbeat.js:103 session heartbeat polling started 364720:1 GET https://moln.online/apps/photos/api/v1/preview/364720?x=64&y=64 404 Image (async) Gr @ vue.runtime.esm.js:7357 Hr @ vue.runtime.esm.js:7331 Ur @ vue.runtime.esm.js:7282 _ @ vue.runtime.esm.js:6640 f @ vue.runtime.esm.js:6531 (anonymous) @ vue.runtime.esm.js:6801 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 Ua.nodeOps @ vue.runtime.esm.js:7062 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ File.vue:163 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 Promise.then (async) f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 setTimeout (async) mounted @ File.vue:151 Rt @ vue.runtime.esm.js:3015 un @ vue.runtime.esm.js:4029 insert @ vue.runtime.esm.js:4421 C @ vue.runtime.esm.js:6927 Ua.nodeOps @ vue.runtime.esm.js:7138 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 (anonymous) @ vue.runtime.esm.js:788 (anonymous) @ FetchFilesMixin.js:92 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 fetchFiles @ FetchFilesMixin.js:60 getContent @ Timeline.vue:237 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 needContent @ FilesListViewer.vue:228 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 isNearBottom @ VirtualScrolling.vue:231 Rt @ vue.runtime.esm.js:3015 e.run @ vue.runtime.esm.js:3532 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ VirtualScrolling.vue:261 364720:1 GET https://moln.online/apps/photos/api/v1/preview/364720?x=512&y=512 404 Image (async) Gr @ vue.runtime.esm.js:7357 Hr @ vue.runtime.esm.js:7331 Ur @ vue.runtime.esm.js:7282 _ @ vue.runtime.esm.js:6640 f @ vue.runtime.esm.js:6531 (anonymous) @ vue.runtime.esm.js:6801 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 Ua.nodeOps @ vue.runtime.esm.js:7062 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ File.vue:163 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 Promise.then (async) f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 setTimeout (async) mounted @ File.vue:151 Rt @ vue.runtime.esm.js:3015 un @ vue.runtime.esm.js:4029 insert @ vue.runtime.esm.js:4421 C @ vue.runtime.esm.js:6927 Ua.nodeOps @ vue.runtime.esm.js:7138 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 (anonymous) @ vue.runtime.esm.js:788 (anonymous) @ FetchFilesMixin.js:92 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 fetchFiles @ FetchFilesMixin.js:60 getContent @ Timeline.vue:237 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 needContent @ FilesListViewer.vue:228 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 isNearBottom @ VirtualScrolling.vue:231 Rt @ vue.runtime.esm.js:3015 e.run @ vue.runtime.esm.js:3532 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ VirtualScrolling.vue:261 /apps/photos/api/v1/preview/364668?x=64&y=64:1 GET https://moln.online/apps/photos/api/v1/preview/364668?x=64&y=64 404 Image (async) Gr @ vue.runtime.esm.js:7357 Hr @ vue.runtime.esm.js:7331 Ur @ vue.runtime.esm.js:7282 _ @ vue.runtime.esm.js:6640 f @ vue.runtime.esm.js:6531 (anonymous) @ vue.runtime.esm.js:6801 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 Ua.nodeOps @ vue.runtime.esm.js:7062 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ File.vue:163 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 Promise.then (async) f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 setTimeout (async) mounted @ File.vue:151 Rt @ vue.runtime.esm.js:3015 un @ vue.runtime.esm.js:4029 insert @ vue.runtime.esm.js:4421 C @ vue.runtime.esm.js:6927 Ua.nodeOps @ vue.runtime.esm.js:7138 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 (anonymous) @ vue.runtime.esm.js:788 (anonymous) @ FetchFilesMixin.js:92 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 fetchFiles @ FetchFilesMixin.js:60 getContent @ Timeline.vue:237 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 needContent @ FilesListViewer.vue:228 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 isNearBottom @ VirtualScrolling.vue:231 Rt @ vue.runtime.esm.js:3015 e.run @ vue.runtime.esm.js:3532 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ VirtualScrolling.vue:261 364668:1 GET https://moln.online/apps/photos/api/v1/preview/364668?x=512&y=512 404 Image (async) Gr @ vue.runtime.esm.js:7357 Hr @ vue.runtime.esm.js:7331 Ur @ vue.runtime.esm.js:7282 _ @ vue.runtime.esm.js:6640 f @ vue.runtime.esm.js:6531 (anonymous) @ vue.runtime.esm.js:6801 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 Ua.nodeOps @ vue.runtime.esm.js:7062 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ File.vue:163 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 Promise.then (async) f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 setTimeout (async) mounted @ File.vue:151 Rt @ vue.runtime.esm.js:3015 un @ vue.runtime.esm.js:4029 insert @ vue.runtime.esm.js:4421 C @ vue.runtime.esm.js:6927 Ua.nodeOps @ vue.runtime.esm.js:7138 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 (anonymous) @ vue.runtime.esm.js:788 (anonymous) @ FetchFilesMixin.js:92 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 fetchFiles @ FetchFilesMixin.js:60 getContent @ Timeline.vue:237 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 needContent @ FilesListViewer.vue:228 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 isNearBottom @ VirtualScrolling.vue:231 Rt @ vue.runtime.esm.js:3015 e.run @ vue.runtime.esm.js:3532 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ VirtualScrolling.vue:261 364729:1 GET https://moln.online/apps/photos/api/v1/preview/364729?x=64&y=64 404 Image (async) Gr @ vue.runtime.esm.js:7357 Hr @ vue.runtime.esm.js:7331 Ur @ vue.runtime.esm.js:7282 _ @ vue.runtime.esm.js:6640 f @ vue.runtime.esm.js:6531 (anonymous) @ vue.runtime.esm.js:6801 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 Ua.nodeOps @ vue.runtime.esm.js:7062 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ File.vue:163 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 Promise.then (async) f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 setTimeout (async) mounted @ File.vue:151 Rt @ vue.runtime.esm.js:3015 un @ vue.runtime.esm.js:4029 insert @ vue.runtime.esm.js:4421 C @ vue.runtime.esm.js:6927 Ua.nodeOps @ vue.runtime.esm.js:7138 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 (anonymous) @ vue.runtime.esm.js:788 (anonymous) @ FetchFilesMixin.js:92 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 fetchFiles @ FetchFilesMixin.js:60 getContent @ Timeline.vue:237 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 needContent @ FilesListViewer.vue:228 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 isNearBottom @ VirtualScrolling.vue:231 Rt @ vue.runtime.esm.js:3015 e.run @ vue.runtime.esm.js:3532 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ VirtualScrolling.vue:261 364729:1 GET https://moln.online/apps/photos/api/v1/preview/364729?x=512&y=512 404 Image (async) Gr @ vue.runtime.esm.js:7357 Hr @ vue.runtime.esm.js:7331 Ur @ vue.runtime.esm.js:7282 _ @ vue.runtime.esm.js:6640 f @ vue.runtime.esm.js:6531 (anonymous) @ vue.runtime.esm.js:6801 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 (anonymous) @ vue.runtime.esm.js:6768 E @ vue.runtime.esm.js:6894 Ua.nodeOps @ vue.runtime.esm.js:7062 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ File.vue:163 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 Promise.then (async) f @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 r @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 (anonymous) @ File.vue?vue&type=template&id=14205f7c&scoped=true&:1 setTimeout (async) mounted @ File.vue:151 Rt @ vue.runtime.esm.js:3015 un @ vue.runtime.esm.js:4029 insert @ vue.runtime.esm.js:4421 C @ vue.runtime.esm.js:6927 Ua.nodeOps @ vue.runtime.esm.js:7138 e._update @ vue.runtime.esm.js:3767 r @ vue.runtime.esm.js:3873 e.get @ vue.runtime.esm.js:3444 e.run @ vue.runtime.esm.js:3520 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 (anonymous) @ vue.runtime.esm.js:788 (anonymous) @ FetchFilesMixin.js:92 u @ runtime.js:63 (anonymous) @ runtime.js:294 (anonymous) @ runtime.js:119 O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 Promise.then (async) O @ PhotoSearch.js:43 a @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 (anonymous) @ PhotoSearch.js:43 fetchFiles @ FetchFilesMixin.js:60 getContent @ Timeline.vue:237 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 needContent @ FilesListViewer.vue:228 Rt @ vue.runtime.esm.js:3015 n @ vue.runtime.esm.js:1813 Rt @ vue.runtime.esm.js:3015 e.$emit @ vue.runtime.esm.js:3714 isNearBottom @ VirtualScrolling.vue:231 Rt @ vue.runtime.esm.js:3015 e.run @ vue.runtime.esm.js:3532 An @ vue.runtime.esm.js:4119 (anonymous) @ vue.runtime.esm.js:3141 It @ vue.runtime.esm.js:3063 Promise.then (async) Bt @ vue.runtime.esm.js:3088 Gt @ vue.runtime.esm.js:3153 bn @ vue.runtime.esm.js:4205 e.update @ vue.runtime.esm.js:3511 e.notify @ vue.runtime.esm.js:720 set @ vue.runtime.esm.js:1035 Gn.set @ vue.runtime.esm.js:5341 (anonymous) @ VirtualScrolling.vue:261 ConsoleLogger.js:56 [INFO] viewer: Opening viewer for fileInfo {level: 1, app: 'viewer', uid: 'albin', fileInfo: {…}} ```

Additional context Link to the image: image

The actual image opened: image

Note that the file_id is different, but the filename is the same.

A possible cause of this is that when trying out the photo viewer I realized that it used the Photos folder which is synced to the entire Pictures folder on my computer, which in turn contains a lot of stuff (screenshots, etc) I didn't really want in the photos app. So moved around a bunch of stuff and moved most of the contents of the Photos folder into a Pictures folder on the Nextcloud server and re-created the sync with my computer. It still "remembers" all the pictures that has been moved out of the Photos folder though.

shoaib42 commented 2 years ago

Can second this, has been annoying. What works is if you click a picture to the left or right of it in the grid and then scroll left/right, that's when the right picture gets picked up.

gody01 commented 1 year ago

on NC 25.0.3 still same bug. Photos practicaly unusable with many pictures with same name (from different phones for example) on one instance.