use crate::api; use crate::query; use crate::theme; pub struct Global { pub safe_area: gpui::Bounds, pub theme_family: theme::ThemeFamily, pub current_theme: theme::Theme, pub rng: rand::prelude::ThreadRng, } impl gpui::Global for Global {} pub fn current_theme(cx: &gpui::App) -> &theme::Theme { &cx.global::().current_theme } pub fn rng(cx: &mut gpui::App) -> &mut rand::prelude::ThreadRng { &mut cx.global_mut::().rng } pub fn query_store(cx: &gpui::App) -> &query::Store { cx.global::>() }