diff --git a/assets/settings/default.json b/assets/settings/default.json index 1ef2ac8a16..6c784a067c 100644 --- a/assets/settings/default.json +++ b/assets/settings/default.json @@ -20,6 +20,8 @@ // Whether to pop the completions menu while typing in an editor without // explicitly requesting it. "show_completions_on_input": true, + // Whether the screen sharing icon is showed in the os status bar. + "show_call_status_icon": true, // Whether new projects should start out 'online'. Online projects // appear in the contacts panel under your name, so that your contacts // can see which projects you are working on. Regardless of this diff --git a/crates/call/src/call.rs b/crates/call/src/call.rs index 834c4949d7..c34d124162 100644 --- a/crates/call/src/call.rs +++ b/crates/call/src/call.rs @@ -2,19 +2,23 @@ mod indicator; pub mod participant; pub mod room; +use std::sync::Arc; + use anyhow::{anyhow, Result}; use client::{proto, Client, TypedEnvelope, User, UserStore}; use collections::HashSet; +use postage::watch; + use gpui::{ actions, AppContext, AsyncAppContext, Entity, ModelContext, ModelHandle, MutableAppContext, Subscription, Task, ViewHandle, WeakModelHandle, }; +use project::Project; +use settings::Settings; + use indicator::SharingStatusIndicator; pub use participant::ParticipantLocation; -use postage::watch; -use project::Project; pub use room::Room; -use std::sync::Arc; actions!(collab, [ToggleScreenSharing]); @@ -315,7 +319,9 @@ impl ActiveCall { pub fn set_sharing_status(&mut self, is_screen_sharing: bool, cx: &mut MutableAppContext) { if is_screen_sharing { - if self.sharing_status_indicator.is_none() { + if self.sharing_status_indicator.is_none() + && cx.global::().show_call_status_icon + { self.sharing_status_indicator = Some(cx.add_status_bar_item(|_| SharingStatusIndicator)); }