fix: remove experimental useSystemPicker causing double-picker and no audio on macOS

useSystemPicker triggers applyConstraints to re-open the system picker
(Electron #44684) and doesn't reliably pass audio capture. All platforms
now use the custom Aether Drift picker with explicit loopback control.
This commit is contained in:
Jannis Braun
2026-03-16 19:13:14 +01:00
parent bda7930e61
commit 26f2e2a817
+2 -4
View File
@@ -598,9 +598,7 @@ if (!gotTheLock) {
await session.defaultSession.clearCache();
// Intercept getDisplayMedia() — show custom picker in renderer.
// useSystemPicker: on macOS 15+, the native system picker runs instead of
// our handler, allowing Chromium's restrictOwnAudio constraint to work
// natively (no audio feedback). On Windows/Linux the handler is called.
// Audio loopback controlled by user's shareAudio toggle.
session.defaultSession.setDisplayMediaRequestHandler(async (_request, callback) => {
console.log('[Main:ScreenShare] Handler invoked');
try {
@@ -658,7 +656,7 @@ if (!gotTheLock) {
// @ts-ignore — deny the request without crashing
callback();
}
}, { useSystemPicker: true });
});
registerIpcHandlers();
createWindow();