isBluetooth -> isExternalHeadset

This commit is contained in:
Timo
2025-05-16 17:06:54 +02:00
parent 35963bbc9e
commit 7f4b0a33f6
3 changed files with 4 additions and 4 deletions

View File

@@ -12,7 +12,7 @@ A few aspects of Element Call's interface can be controlled through a global API
These functions must be used in conjunction with the `controlledOutput` URL parameter in order to have any effect. These functions must be used in conjunction with the `controlledOutput` URL parameter in order to have any effect.
- `controls.setAvailableOutputDevices(devices: { id: string, name: string, forEarpiece?: boolean, isEarpiece?: boolean isSpeaker?: boolean, isBluetooth?, boolean;}[]): void` Sets the list of available audio outputs. `forEarpiece` is used on ios only. - `controls.setAvailableOutputDevices(devices: { id: string, name: string, forEarpiece?: boolean, isEarpiece?: boolean isSpeaker?: boolean, isExternalHeadset?, boolean;}[]): void` Sets the list of available audio outputs. `forEarpiece` is used on ios only.
It flags the device that should be used if the user selects earpiece mode. This should be the main stereo loudspeaker of the device. It flags the device that should be used if the user selects earpiece mode. This should be the main stereo loudspeaker of the device.
- `controls.onOutputDeviceSelect: ((id: string) => void) | undefined` Callback called whenever the user or application selects a new audio output. - `controls.onOutputDeviceSelect: ((id: string) => void) | undefined` Callback called whenever the user or application selects a new audio output.
- `controls.setOutputDevice(id: string): void` Sets the selected audio device in EC menu. This should be used if the os decides to automatically switch to bluetooth. - `controls.setOutputDevice(id: string): void` Sets the selected audio device in EC menu. This should be used if the os decides to automatically switch to bluetooth.

View File

@@ -24,7 +24,7 @@ export interface OutputDevice {
forEarpiece?: boolean; forEarpiece?: boolean;
isEarpiece?: boolean; isEarpiece?: boolean;
isSpeaker?: boolean; isSpeaker?: boolean;
isBluetooth?: boolean; isExternalHeadset?: boolean;
} }
export const setPipEnabled$ = new Subject<boolean>(); export const setPipEnabled$ = new Subject<boolean>();

View File

@@ -328,9 +328,9 @@ function useControlledOutput(): MediaDeviceHandle {
map((devices) => { map((devices) => {
const deviceForEarpiece = devices.find((d) => d.forEarpiece); const deviceForEarpiece = devices.find((d) => d.forEarpiece);
const deviceMapTuple: [string, DeviceLabel][] = devices.map( const deviceMapTuple: [string, DeviceLabel][] = devices.map(
({ id, name, isEarpiece, isSpeaker /*,isBluetooth*/ }) => { ({ id, name, isEarpiece, isSpeaker /*,isExternalHeadset*/ }) => {
let deviceLabel: DeviceLabel = { type: "name", name }; let deviceLabel: DeviceLabel = { type: "name", name };
// if (isBluetooth) // Do we want this? // if (isExternalHeadset) // Do we want this?
if (isEarpiece) deviceLabel = { type: "earpiece" }; if (isEarpiece) deviceLabel = { type: "earpiece" };
if (isSpeaker) deviceLabel = { type: "default", name }; if (isSpeaker) deviceLabel = { type: "default", name };
return [id, deviceLabel]; return [id, deviceLabel];