Revert "fix(macos): keep sources visible when thumbnails are unavailable"

This reverts commit f3dca8a2bb.
This commit is contained in:
webadderall
2026-03-16 22:54:59 +11:00
parent f3dca8a2bb
commit b711fd20f2
2 changed files with 11 additions and 17 deletions
+6 -5
View File
@@ -1634,6 +1634,7 @@ export function registerIpcHandlers(
if (process.platform !== 'darwin' || !includeWindows) {
const windowSources = electronSources
.filter((source) => source.id.startsWith('window:'))
.filter((source) => hasUsableSourceThumbnail(source.thumbnail))
.filter((source) => {
const normalizedName = normalizeDesktopSourceName(source.name)
if (!normalizedName) {
@@ -1657,7 +1658,7 @@ export function registerIpcHandlers(
id: source.id,
name: source.name,
display_id: source.display_id,
thumbnail: hasUsableSourceThumbnail(source.thumbnail) ? source.thumbnail!.toDataURL() : null,
thumbnail: source.thumbnail ? source.thumbnail.toDataURL() : null,
appIcon: source.appIcon ? source.appIcon.toDataURL() : null,
}))
@@ -1704,14 +1705,13 @@ export function registerIpcHandlers(
id: source.id,
name: source.name,
display_id: source.display_id ?? electronWindowSource?.display_id ?? '',
thumbnail: hasUsableSourceThumbnail(electronWindowSource?.thumbnail)
? electronWindowSource!.thumbnail.toDataURL()
: null,
thumbnail: electronWindowSource?.thumbnail ? electronWindowSource.thumbnail.toDataURL() : null,
appIcon: source.appIcon ?? (electronWindowSource?.appIcon ? electronWindowSource.appIcon.toDataURL() : null),
appName: source.appName,
windowTitle: source.windowTitle,
}
})
.filter((source) => Boolean(source.thumbnail))
return [...screenSources, ...mergedWindowSources]
} catch (error) {
@@ -1719,6 +1719,7 @@ export function registerIpcHandlers(
const windowSources = electronSources
.filter((source) => source.id.startsWith('window:'))
.filter((source) => hasUsableSourceThumbnail(source.thumbnail))
.filter((source) => {
const normalizedName = normalizeDesktopSourceName(source.name)
if (!normalizedName) {
@@ -1742,7 +1743,7 @@ export function registerIpcHandlers(
id: source.id,
name: source.name,
display_id: source.display_id,
thumbnail: hasUsableSourceThumbnail(source.thumbnail) ? source.thumbnail!.toDataURL() : null,
thumbnail: source.thumbnail ? source.thumbnail.toDataURL() : null,
appIcon: source.appIcon ? source.appIcon.toDataURL() : null,
}))
+5 -12
View File
@@ -153,18 +153,11 @@ export function SourceSelector() {
>
<div className="p-1">
<div className="relative mb-1">
{source.thumbnail ? (
<img
src={source.thumbnail}
alt={source.name}
className="w-full aspect-video object-cover rounded border border-zinc-800"
/>
) : (
<div className="w-full aspect-video rounded border border-zinc-800 bg-zinc-900/80 flex flex-col items-center justify-center text-zinc-400 gap-2">
<div className="w-8 h-8 rounded-md bg-zinc-800 border border-zinc-700" />
<div className="text-[10px] uppercase tracking-[0.2em] text-zinc-500">{t('sourceSelector.screens')}</div>
</div>
)}
<img
src={source.thumbnail || ''}
alt={source.name}
className="w-full aspect-video object-cover rounded border border-zinc-800"
/>
{selectedSource?.id === source.id && (
<div className="absolute -top-1 -right-1">
<div className="w-4 h-4 bg-[#2563EB] rounded-full flex items-center justify-center shadow-md">