Merge branch 'develop' of github.com:thecodingmachine/workadventure

This commit is contained in:
_Bastler 2022-01-31 13:57:46 +01:00
commit 6cea6a3ce0
4 changed files with 15 additions and 3 deletions

View File

@ -15,7 +15,7 @@
if (stream) { if (stream) {
embedScreen = { embedScreen = {
type: "streamable", type: "streamable",
embed: stream as unknown as Streamable, embed: peer as unknown as Streamable,
}; };
} }
</script> </script>

View File

@ -31,10 +31,10 @@
<div class="rtc-error" /> <div class="rtc-error" />
{/if} {/if}
{#if $streamStore !== null} {#if $streamStore !== null}
<!-- svelte-ignore a11y-media-has-caption -->
<i class="container"> <i class="container">
<span style="background-color: {getColorByString(name)};">{name}</span> <span style="background-color: {getColorByString(name)};">{name}</span>
</i> </i>
<!-- svelte-ignore a11y-media-has-caption -->
<video <video
use:srcObject={$streamStore} use:srcObject={$streamStore}
autoplay autoplay

View File

@ -50,7 +50,12 @@
}); });
</script> </script>
<div class="video-container" class:no-clikable={!clickable} bind:this={videoContainer}> <div
class="video-container"
class:no-clikable={!clickable}
bind:this={videoContainer}
on:click={() => (clickable ? highlightedEmbedScreen.toggleHighlight(embedScreen) : null)}
>
{#if $statusStore === "connecting"} {#if $statusStore === "connecting"}
<div class="connecting-spinner" /> <div class="connecting-spinner" />
{/if} {/if}

View File

@ -2,6 +2,7 @@ import { derived, get, Readable } from "svelte/store";
import { ScreenSharingLocalMedia, screenSharingLocalMedia } from "./ScreenSharingStore"; import { ScreenSharingLocalMedia, screenSharingLocalMedia } from "./ScreenSharingStore";
import { peerStore, screenSharingStreamStore } from "./PeerStore"; import { peerStore, screenSharingStreamStore } from "./PeerStore";
import type { RemotePeer } from "../WebRtc/SimplePeer"; import type { RemotePeer } from "../WebRtc/SimplePeer";
import { highlightedEmbedScreen } from "./EmbedScreensStore";
export type Streamable = RemotePeer | ScreenSharingLocalMedia; export type Streamable = RemotePeer | ScreenSharingLocalMedia;
@ -25,6 +26,12 @@ function createStreamableCollectionStore(): Readable<Map<string, Streamable>> {
addPeer($screenSharingLocalMedia); addPeer($screenSharingLocalMedia);
} }
const $highlightedEmbedScreen = get(highlightedEmbedScreen);
if ($highlightedEmbedScreen?.type === "streamable" && !peers.has($highlightedEmbedScreen.embed.uniqueId)) {
highlightedEmbedScreen.removeHighlight();
}
set(peers); set(peers);
} }
); );