diff --git a/CHANGELOG.md b/CHANGELOG.md
index 489fcff2cdd142797e0ea717ad3985f6c4cdca8d..5ac696c28c9f9dd4fe7132d74f2bd0c7229cb07e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,7 @@
 
 ### Improvements
 - feat: 検索画面の統合 (Khsmty)
+- photoswipe 表示時に戻る操作をしても前の画面に戻らないように
 
 ### Bugfixes
 -
diff --git a/packages/frontend/src/components/MkMediaList.vue b/packages/frontend/src/components/MkMediaList.vue
index a12bb78e351a1c37896b683ad653cd22466a1fde..fafa0bd232afde62a2f8daf8a6a7064e9078b7a5 100644
--- a/packages/frontend/src/components/MkMediaList.vue
+++ b/packages/frontend/src/components/MkMediaList.vue
@@ -113,6 +113,23 @@ onMounted(() => {
 	});
 
 	lightbox.init();
+	
+	window.addEventListener('popstate', () => {
+		if (lightbox.pswp && lightbox.pswp.isOpen === true) {
+			lightbox.pswp.close();
+			return;
+		}
+	});
+
+	lightbox.on('beforeOpen', () => {
+		history.pushState(null, '', '#pswp');
+	});
+
+	lightbox.on('close', () => {
+		if (window.location.hash === '#pswp') {
+			history.back();
+		}
+	});
 });
 
 const previewable = (file: misskey.entities.DriveFile): boolean => {