diff --git a/packages/frontend/src/pages/qr.read.raw-viewer.vue b/packages/frontend/src/pages/qr.read.raw-viewer.vue
index 5e8a32c17a..58fb460a16 100644
--- a/packages/frontend/src/pages/qr.read.raw-viewer.vue
+++ b/packages/frontend/src/pages/qr.read.raw-viewer.vue
@@ -4,22 +4,31 @@
+
+
+
-
+
-
@@ -37,7 +46,7 @@ const props = defineProps<{
data: string;
}>();
-const tab = ref<'mfm' | 'raw'>('raw');
const parsed = computed(() => mfm.parse(props.data));
const urls = computed(() => extractUrlFromMfm(parsed.value));
+const tab = ref<'urls' | 'mfm' | 'raw'>(urls.value.length > 0 ? 'urls' : 'mfm');
diff --git a/packages/frontend/src/pages/qr.read.vue b/packages/frontend/src/pages/qr.read.vue
index 20f9e82c93..3a2e00d63a 100644
--- a/packages/frontend/src/pages/qr.read.vue
+++ b/packages/frontend/src/pages/qr.read.vue
@@ -175,7 +175,8 @@ async function processResult(result: QrScanner.ScanResult) {
updateLists();
})
.catch(err => {
- return err;
+ tab.value = 'all';
+ throw err;
});
}