From b6ed449d35ba5539ca6166d2c8b3a89c11a86cb3 Mon Sep 17 00:00:00 2001 From: Thibault Duplessis Date: Tue, 13 Aug 2019 10:08:18 +0200 Subject: [PATCH] add member counter on palantir button --- ui/chat/css/_palantir.scss | 7 +++++++ ui/palantir/src/main.ts | 39 ++++++++++++++++++++------------------ 2 files changed, 28 insertions(+), 18 deletions(-) diff --git a/ui/chat/css/_palantir.scss b/ui/chat/css/_palantir.scss index 205e511e53..138d18c677 100644 --- a/ui/chat/css/_palantir.scss +++ b/ui/chat/css/_palantir.scss @@ -23,4 +23,11 @@ color: $c-bad-over !important; } } + &::after { + top: 1px; + left: 0; + right: auto; + background: none; + box-shadow: none; + } } diff --git a/ui/palantir/src/main.ts b/ui/palantir/src/main.ts index e4f778eaea..d3f9c4245f 100644 --- a/ui/palantir/src/main.ts +++ b/ui/palantir/src/main.ts @@ -173,24 +173,27 @@ export function palantir(opts: PalantirOpts) { }, 3000); return { - render: h => - devices ? h('div.mchat__tab.palantir.palantir-' + state, { - attrs: { - 'data-icon': '', - title: `Voice chat: ${state}` - }, - hook: { - insert(vnode) { - (vnode.elm as HTMLElement).addEventListener('click', () => peer ? stop() : start()); + render: h => { + const connections = allOpenConnections(); + return devices ? h('div.mchat__tab.palantir.data-count.palantir-' + state, { + attrs: { + 'data-icon': '', + title: `Voice chat: ${state}`, + 'data-count': state == 'on' ? connections.length + 1 : 0 + }, + hook: { + insert(vnode) { + (vnode.elm as HTMLElement).addEventListener('click', () => peer ? stop() : start()); + } } - } - }, state == 'on' ? - allOpenConnections().map(c => - h('audio.palantir__audio.' + c.peer, { - attrs: { autoplay: true }, - hook: { insert(vnode) { (vnode.elm as HTMLAudioElement).srcObject = c.remoteStream } } - }) - ) : [] - ) : null + }, state == 'on' ? + connections.map(c => + h('audio.palantir__audio.' + c.peer, { + attrs: { autoplay: true }, + hook: { insert(vnode) { (vnode.elm as HTMLAudioElement).srcObject = c.remoteStream } } + }) + ) : [] + ) : null; + } } }