2026-04-26 16:06:49 +01:00
|
|
|
use crate::api;
|
2026-04-21 11:50:04 +01:00
|
|
|
use crate::query;
|
2026-04-20 15:13:26 +01:00
|
|
|
use crate::theme;
|
|
|
|
|
|
|
|
|
|
pub struct Global {
|
|
|
|
|
pub safe_area: gpui::Bounds<gpui::Pixels>,
|
2026-04-26 00:46:11 +01:00
|
|
|
pub theme_family: theme::ThemeFamily,
|
2026-04-20 15:13:26 +01:00
|
|
|
pub current_theme: theme::Theme,
|
2026-04-23 11:18:43 +01:00
|
|
|
pub rng: rand::prelude::ThreadRng,
|
2026-04-20 15:13:26 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
impl gpui::Global for Global {}
|
|
|
|
|
|
2026-04-23 11:18:43 +01:00
|
|
|
pub fn current_theme(cx: &gpui::App) -> &theme::Theme {
|
2026-04-20 15:13:26 +01:00
|
|
|
&cx.global::<Global>().current_theme
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-23 11:18:43 +01:00
|
|
|
pub fn rng(cx: &mut gpui::App) -> &mut rand::prelude::ThreadRng {
|
|
|
|
|
&mut cx.global_mut::<Global>().rng
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-24 19:22:25 +01:00
|
|
|
pub fn query_store(cx: &gpui::App) -> &query::Store<api::QueryContext> {
|
2026-04-21 11:50:04 +01:00
|
|
|
cx.global::<query::Store<api::QueryContext>>()
|
2026-04-20 15:13:26 +01:00
|
|
|
}
|