diff --git a/Cargo.lock b/Cargo.lock index 7256782e31..55e56af234 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -9838,6 +9838,7 @@ dependencies = [ name = "theme_selector" version = "0.1.0" dependencies = [ + "client", "editor", "feature_flags", "fs", @@ -9858,6 +9859,7 @@ dependencies = [ name = "theme_selector2" version = "0.1.0" dependencies = [ + "client2", "editor2", "feature_flags2", "fs2", diff --git a/crates/assistant2/src/assistant_panel.rs b/crates/assistant2/src/assistant_panel.rs index 73b0afee8f..7b19ad130c 100644 --- a/crates/assistant2/src/assistant_panel.rs +++ b/crates/assistant2/src/assistant_panel.rs @@ -1281,6 +1281,10 @@ impl Panel for AssistantPanel { Some(Icon::Ai) } + fn icon_tooltip(&self, _cx: &WindowContext) -> Option<&'static str> { + Some("Assistant Panel") + } + fn toggle_action(&self) -> Box { Box::new(ToggleFocus) } diff --git a/crates/client/src/telemetry.rs b/crates/client/src/telemetry.rs index 49cb9843f0..a0aab3de36 100644 --- a/crates/client/src/telemetry.rs +++ b/crates/client/src/telemetry.rs @@ -113,6 +113,11 @@ pub enum ClickhouseEvent { operation: &'static str, milliseconds_since_first_event: i64, }, + Setting { + setting: &'static str, + value: String, + milliseconds_since_first_event: i64, + }, } #[cfg(debug_assertions)] @@ -354,6 +359,21 @@ impl Telemetry { self.report_clickhouse_event(event, telemetry_settings, immediate_flush) } + pub fn report_setting_event( + self: &Arc, + telemetry_settings: TelemetrySettings, + setting: &'static str, + value: String, + ) { + let event = ClickhouseEvent::Setting { + setting, + value, + milliseconds_since_first_event: self.milliseconds_since_first_event(), + }; + + self.report_clickhouse_event(event, telemetry_settings, false) + } + fn milliseconds_since_first_event(&self) -> i64 { let mut state = self.state.lock(); match state.first_event_datetime { diff --git a/crates/client2/src/telemetry.rs b/crates/client2/src/telemetry.rs index 9587bd9a0b..789b627fb0 100644 --- a/crates/client2/src/telemetry.rs +++ b/crates/client2/src/telemetry.rs @@ -28,6 +28,7 @@ struct TelemetryState { app_metadata: AppMetadata, architecture: &'static str, clickhouse_events_queue: Vec, + flush_clickhouse_events_task: Option>, log_file: Option, is_staff: Option, first_event_datetime: Option>, @@ -111,6 +112,11 @@ pub enum ClickhouseEvent { operation: &'static str, milliseconds_since_first_event: i64, }, + Setting { + setting: &'static str, + value: String, + milliseconds_since_first_event: i64, + }, } #[cfg(debug_assertions)] @@ -119,6 +125,12 @@ const MAX_QUEUE_LEN: usize = 1; #[cfg(not(debug_assertions))] const MAX_QUEUE_LEN: usize = 50; +#[cfg(debug_assertions)] +const DEBOUNCE_INTERVAL: Duration = Duration::from_secs(1); + +#[cfg(not(debug_assertions))] +const DEBOUNCE_INTERVAL: Duration = Duration::from_secs(60 * 5); + impl Telemetry { pub fn new(client: Arc, cx: &mut AppContext) -> Arc { let release_channel = if cx.has_global::() { @@ -139,6 +151,7 @@ impl Telemetry { metrics_id: None, session_id: None, clickhouse_events_queue: Default::default(), + flush_clickhouse_events_task: Default::default(), log_file: None, is_staff: None, first_event_datetime: None, @@ -370,6 +383,21 @@ impl Telemetry { self.report_clickhouse_event(event, telemetry_settings, immediate_flush) } + pub fn report_setting_event( + self: &Arc, + telemetry_settings: TelemetrySettings, + setting: &'static str, + value: String, + ) { + let event = ClickhouseEvent::Setting { + setting, + value, + milliseconds_since_first_event: self.milliseconds_since_first_event(), + }; + + self.report_clickhouse_event(event, telemetry_settings, false) + } + fn milliseconds_since_first_event(&self) -> i64 { let mut state = self.state.lock(); match state.first_event_datetime { @@ -404,6 +432,13 @@ impl Telemetry { if immediate_flush || state.clickhouse_events_queue.len() >= MAX_QUEUE_LEN { drop(state); self.flush_clickhouse_events(); + } else { + let this = self.clone(); + let executor = self.executor.clone(); + state.flush_clickhouse_events_task = Some(self.executor.spawn(async move { + executor.timer(DEBOUNCE_INTERVAL).await; + this.flush_clickhouse_events(); + })); } } } @@ -424,6 +459,7 @@ impl Telemetry { let mut state = self.state.lock(); state.first_event_datetime = None; let mut events = mem::take(&mut state.clickhouse_events_queue); + state.flush_clickhouse_events_task.take(); drop(state); let this = self.clone(); diff --git a/crates/collab/k8s b/crates/collab/k8s new file mode 120000 index 0000000000..21ce7e2abd --- /dev/null +++ b/crates/collab/k8s @@ -0,0 +1 @@ +../collab2/k8s \ No newline at end of file diff --git a/crates/collab/k8s/environments/production.sh b/crates/collab/k8s/environments/production.sh deleted file mode 100644 index cb1d4b4de7..0000000000 --- a/crates/collab/k8s/environments/production.sh +++ /dev/null @@ -1,4 +0,0 @@ -ZED_ENVIRONMENT=production -RUST_LOG=info -INVITE_LINK_PREFIX=https://zed.dev/invites/ -DATABASE_MAX_CONNECTIONS=85 diff --git a/crates/collab/k8s/environments/staging.sh b/crates/collab/k8s/environments/staging.sh deleted file mode 100644 index b9689ccb19..0000000000 --- a/crates/collab/k8s/environments/staging.sh +++ /dev/null @@ -1,4 +0,0 @@ -ZED_ENVIRONMENT=staging -RUST_LOG=info -INVITE_LINK_PREFIX=https://staging.zed.dev/invites/ -DATABASE_MAX_CONNECTIONS=5 diff --git a/crates/collab/k8s/manifest.template.yml b/crates/collab/k8s/manifest.template.yml deleted file mode 100644 index d4a7a7033e..0000000000 --- a/crates/collab/k8s/manifest.template.yml +++ /dev/null @@ -1,177 +0,0 @@ ---- -apiVersion: v1 -kind: Namespace -metadata: - name: ${ZED_KUBE_NAMESPACE} - ---- -kind: Service -apiVersion: v1 -metadata: - namespace: ${ZED_KUBE_NAMESPACE} - name: collab - annotations: - service.beta.kubernetes.io/do-loadbalancer-tls-ports: "443" - service.beta.kubernetes.io/do-loadbalancer-certificate-id: ${ZED_DO_CERTIFICATE_ID} -spec: - type: LoadBalancer - selector: - app: collab - ports: - - name: web - protocol: TCP - port: 443 - targetPort: 8080 - ---- -kind: Service -apiVersion: v1 -metadata: - namespace: ${ZED_KUBE_NAMESPACE} - name: pgadmin - annotations: - service.beta.kubernetes.io/do-loadbalancer-tls-ports: "443" - service.beta.kubernetes.io/do-loadbalancer-certificate-id: ${ZED_DO_CERTIFICATE_ID} -spec: - type: LoadBalancer - selector: - app: postgrest - ports: - - name: web - protocol: TCP - port: 443 - targetPort: 8080 - ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - namespace: ${ZED_KUBE_NAMESPACE} - name: collab - -spec: - replicas: 1 - selector: - matchLabels: - app: collab - template: - metadata: - labels: - app: collab - annotations: - ad.datadoghq.com/collab.check_names: | - ["openmetrics"] - ad.datadoghq.com/collab.init_configs: | - [{}] - ad.datadoghq.com/collab.instances: | - [ - { - "openmetrics_endpoint": "http://%%host%%:%%port%%/metrics", - "namespace": "collab_${ZED_KUBE_NAMESPACE}", - "metrics": [".*"] - } - ] - spec: - containers: - - name: collab - image: "${ZED_IMAGE_ID}" - args: - - serve - ports: - - containerPort: 8080 - protocol: TCP - livenessProbe: - httpGet: - path: /healthz - port: 8080 - initialDelaySeconds: 5 - periodSeconds: 5 - timeoutSeconds: 5 - readinessProbe: - httpGet: - path: / - port: 8080 - initialDelaySeconds: 1 - periodSeconds: 1 - env: - - name: HTTP_PORT - value: "8080" - - name: DATABASE_URL - valueFrom: - secretKeyRef: - name: database - key: url - - name: DATABASE_MAX_CONNECTIONS - value: "${DATABASE_MAX_CONNECTIONS}" - - name: API_TOKEN - valueFrom: - secretKeyRef: - name: api - key: token - - name: LIVE_KIT_SERVER - valueFrom: - secretKeyRef: - name: livekit - key: server - - name: LIVE_KIT_KEY - valueFrom: - secretKeyRef: - name: livekit - key: key - - name: LIVE_KIT_SECRET - valueFrom: - secretKeyRef: - name: livekit - key: secret - - name: INVITE_LINK_PREFIX - value: ${INVITE_LINK_PREFIX} - - name: RUST_BACKTRACE - value: "1" - - name: RUST_LOG - value: ${RUST_LOG} - - name: LOG_JSON - value: "true" - - name: ZED_ENVIRONMENT - value: ${ZED_ENVIRONMENT} - securityContext: - capabilities: - # FIXME - Switch to the more restrictive `PERFMON` capability. - # This capability isn't yet available in a stable version of Debian. - add: ["SYS_ADMIN"] - ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - namespace: ${ZED_KUBE_NAMESPACE} - name: postgrest - -spec: - replicas: 1 - selector: - matchLabels: - app: postgrest - template: - metadata: - labels: - app: postgrest - spec: - containers: - - name: postgrest - image: "postgrest/postgrest" - ports: - - containerPort: 8080 - protocol: TCP - env: - - name: PGRST_SERVER_PORT - value: "8080" - - name: PGRST_DB_URI - valueFrom: - secretKeyRef: - name: database - key: url - - name: PGRST_JWT_SECRET - valueFrom: - secretKeyRef: - name: postgrest - key: jwt_secret diff --git a/crates/collab/k8s/migrate.template.yml b/crates/collab/k8s/migrate.template.yml deleted file mode 100644 index c890d7b330..0000000000 --- a/crates/collab/k8s/migrate.template.yml +++ /dev/null @@ -1,21 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - namespace: ${ZED_KUBE_NAMESPACE} - name: ${ZED_MIGRATE_JOB_NAME} -spec: - template: - spec: - restartPolicy: Never - containers: - - name: migrator - imagePullPolicy: Always - image: ${ZED_IMAGE_ID} - args: - - migrate - env: - - name: DATABASE_URL - valueFrom: - secretKeyRef: - name: database - key: url diff --git a/crates/collab2/k8s/manifest.template.yml b/crates/collab2/k8s/collab.template.yml similarity index 72% rename from crates/collab2/k8s/manifest.template.yml rename to crates/collab2/k8s/collab.template.yml index d4a7a7033e..e406bf4630 100644 --- a/crates/collab2/k8s/manifest.template.yml +++ b/crates/collab2/k8s/collab.template.yml @@ -23,25 +23,6 @@ spec: port: 443 targetPort: 8080 ---- -kind: Service -apiVersion: v1 -metadata: - namespace: ${ZED_KUBE_NAMESPACE} - name: pgadmin - annotations: - service.beta.kubernetes.io/do-loadbalancer-tls-ports: "443" - service.beta.kubernetes.io/do-loadbalancer-certificate-id: ${ZED_DO_CERTIFICATE_ID} -spec: - type: LoadBalancer - selector: - app: postgrest - ports: - - name: web - protocol: TCP - port: 443 - targetPort: 8080 - --- apiVersion: apps/v1 kind: Deployment @@ -138,40 +119,3 @@ spec: # FIXME - Switch to the more restrictive `PERFMON` capability. # This capability isn't yet available in a stable version of Debian. add: ["SYS_ADMIN"] - ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - namespace: ${ZED_KUBE_NAMESPACE} - name: postgrest - -spec: - replicas: 1 - selector: - matchLabels: - app: postgrest - template: - metadata: - labels: - app: postgrest - spec: - containers: - - name: postgrest - image: "postgrest/postgrest" - ports: - - containerPort: 8080 - protocol: TCP - env: - - name: PGRST_SERVER_PORT - value: "8080" - - name: PGRST_DB_URI - valueFrom: - secretKeyRef: - name: database - key: url - - name: PGRST_JWT_SECRET - valueFrom: - secretKeyRef: - name: postgrest - key: jwt_secret diff --git a/crates/collab/k8s/environments/preview.sh b/crates/collab2/k8s/environments/nightly.sh similarity index 78% rename from crates/collab/k8s/environments/preview.sh rename to crates/collab2/k8s/environments/nightly.sh index 132a1ef53c..49c562437b 100644 --- a/crates/collab/k8s/environments/preview.sh +++ b/crates/collab2/k8s/environments/nightly.sh @@ -1,4 +1,4 @@ -ZED_ENVIRONMENT=preview +ZED_ENVIRONMENT=nightly RUST_LOG=info INVITE_LINK_PREFIX=https://zed.dev/invites/ DATABASE_MAX_CONNECTIONS=10 diff --git a/crates/collab2/k8s/postgrest.template.yml b/crates/collab2/k8s/postgrest.template.yml new file mode 100644 index 0000000000..e2d11a2cd2 --- /dev/null +++ b/crates/collab2/k8s/postgrest.template.yml @@ -0,0 +1,55 @@ +--- +kind: Service +apiVersion: v1 +metadata: + namespace: ${ZED_KUBE_NAMESPACE} + name: postgrest + annotations: + service.beta.kubernetes.io/do-loadbalancer-tls-ports: "443" + service.beta.kubernetes.io/do-loadbalancer-certificate-id: ${ZED_DO_CERTIFICATE_ID} +spec: + type: LoadBalancer + selector: + app: postgrest + ports: + - name: web + protocol: TCP + port: 443 + targetPort: 8080 + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + namespace: ${ZED_KUBE_NAMESPACE} + name: postgrest + +spec: + replicas: 1 + selector: + matchLabels: + app: postgrest + template: + metadata: + labels: + app: postgrest + spec: + containers: + - name: postgrest + image: "postgrest/postgrest" + ports: + - containerPort: 8080 + protocol: TCP + env: + - name: PGRST_SERVER_PORT + value: "8080" + - name: PGRST_DB_URI + valueFrom: + secretKeyRef: + name: database + key: url + - name: PGRST_JWT_SECRET + valueFrom: + secretKeyRef: + name: postgrest + key: jwt_secret diff --git a/crates/collab_ui2/src/chat_panel.rs b/crates/collab_ui2/src/chat_panel.rs index 30b33e54c2..19acb17673 100644 --- a/crates/collab_ui2/src/chat_panel.rs +++ b/crates/collab_ui2/src/chat_panel.rs @@ -611,6 +611,10 @@ impl Panel for ChatPanel { Some(ui::Icon::MessageBubbles) } + fn icon_tooltip(&self, _cx: &WindowContext) -> Option<&'static str> { + Some("Chat Panel") + } + fn toggle_action(&self) -> Box { Box::new(ToggleFocus) } diff --git a/crates/collab_ui2/src/collab_panel.rs b/crates/collab_ui2/src/collab_panel.rs index a5c5755915..283b556800 100644 --- a/crates/collab_ui2/src/collab_panel.rs +++ b/crates/collab_ui2/src/collab_panel.rs @@ -2163,40 +2163,71 @@ impl CollabPanel { .child( h_stack() .id(channel_id as usize) + // HACK: This is a dirty hack to help with the positioning of the button container. + // + // We're using a pixel width for the elements but then allowing the contents to + // overflow. This means that the label and facepile will be shown, but will not + // push the button container off the edge of the panel. + .w_px() .child(Label::new(channel.name.clone())) .children(face_pile.map(|face_pile| face_pile.render(cx))), ) .end_slot( h_stack() + .absolute() + // We're using a negative coordinate for the right anchor to + // counteract the padding of the `ListItem`. + // + // This prevents a gap from showing up between the background + // of this element and the edge of the collab panel. + .right(rems(-0.5)) + // HACK: Without this the channel name clips on top of the icons, but I'm not sure why. + .z_index(10) + .bg(cx.theme().colors().panel_background) + .when(is_selected || is_active, |this| { + this.bg(cx.theme().colors().ghost_element_selected) + }) .child( - IconButton::new("channel_chat", Icon::MessageBubbles) - .icon_size(IconSize::Small) - .icon_color(if has_messages_notification { - Color::Default - } else { - Color::Muted + h_stack() + .px_1() + // The element hover background has a slight transparency to it, so we + // need to apply it to the inner element so that it blends with the solid + // background color of the absolutely-positioned element. + .group_hover("", |style| { + style.bg(cx.theme().colors().ghost_element_hover) }) - .when(!has_messages_notification, |this| { - this.visible_on_hover("") - }) - .on_click(cx.listener(move |this, _, cx| { - this.join_channel_chat(channel_id, cx) - })) - .tooltip(|cx| Tooltip::text("Open channel chat", cx)), - ) - .child( - IconButton::new("channel_notes", Icon::File) - .icon_size(IconSize::Small) - .icon_color(if has_notes_notification { - Color::Default - } else { - Color::Muted - }) - .when(!has_notes_notification, |this| this.visible_on_hover("")) - .on_click(cx.listener(move |this, _, cx| { - this.open_channel_notes(channel_id, cx) - })) - .tooltip(|cx| Tooltip::text("Open channel notes", cx)), + .child( + IconButton::new("channel_chat", Icon::MessageBubbles) + .icon_size(IconSize::Small) + .icon_color(if has_messages_notification { + Color::Default + } else { + Color::Muted + }) + .when(!has_messages_notification, |this| { + this.visible_on_hover("") + }) + .on_click(cx.listener(move |this, _, cx| { + this.join_channel_chat(channel_id, cx) + })) + .tooltip(|cx| Tooltip::text("Open channel chat", cx)), + ) + .child( + IconButton::new("channel_notes", Icon::File) + .icon_size(IconSize::Small) + .icon_color(if has_notes_notification { + Color::Default + } else { + Color::Muted + }) + .when(!has_notes_notification, |this| { + this.visible_on_hover("") + }) + .on_click(cx.listener(move |this, _, cx| { + this.open_channel_notes(channel_id, cx) + })) + .tooltip(|cx| Tooltip::text("Open channel notes", cx)), + ), ), ), ) @@ -2331,6 +2362,10 @@ impl Panel for CollabPanel { .then(|| ui::Icon::Collab) } + fn icon_tooltip(&self, _cx: &WindowContext) -> Option<&'static str> { + Some("Collab Panel") + } + fn toggle_action(&self) -> Box { Box::new(ToggleFocus) } diff --git a/crates/collab_ui2/src/notification_panel.rs b/crates/collab_ui2/src/notification_panel.rs index 8ebc86b996..b7a18365be 100644 --- a/crates/collab_ui2/src/notification_panel.rs +++ b/crates/collab_ui2/src/notification_panel.rs @@ -661,6 +661,10 @@ impl Panel for NotificationPanel { .then(|| Icon::Bell) } + fn icon_tooltip(&self, _cx: &WindowContext) -> Option<&'static str> { + Some("Notification Panel") + } + fn icon_label(&self, cx: &WindowContext) -> Option { let count = self.notification_store.read(cx).unread_notification_count(); if count == 0 { diff --git a/crates/diagnostics2/src/diagnostics.rs b/crates/diagnostics2/src/diagnostics.rs index bd262e8bbf..77e6a7673f 100644 --- a/crates/diagnostics2/src/diagnostics.rs +++ b/crates/diagnostics2/src/diagnostics.rs @@ -13,7 +13,7 @@ use editor::{ }; use futures::future::try_join_all; use gpui::{ - actions, div, AnyElement, AnyView, AppContext, Context, EventEmitter, FocusHandle, + actions, div, svg, AnyElement, AnyView, AppContext, Context, EventEmitter, FocusHandle, FocusableView, HighlightStyle, InteractiveElement, IntoElement, Model, ParentElement, Render, SharedString, Styled, StyledText, Subscription, Task, View, ViewContext, VisualContext, WeakView, WindowContext, @@ -663,6 +663,7 @@ impl Item for ProjectDiagnosticsEditor { .when(self.summary.warning_count > 0, |then| { then.child( h_stack() + .gap_1() .child( IconElement::new(Icon::ExclamationTriangle).color(Color::Warning), ) @@ -799,12 +800,20 @@ fn diagnostic_header_renderer(diagnostic: Diagnostic) -> RenderBlock { h_stack() .gap_3() .map(|stack| { - let icon = if diagnostic.severity == DiagnosticSeverity::ERROR { - IconElement::new(Icon::XCircle).color(Color::Error) - } else { - IconElement::new(Icon::ExclamationTriangle).color(Color::Warning) - }; - stack.child(icon) + stack.child( + svg() + .size(cx.text_style().font_size) + .flex_none() + .map(|icon| { + if diagnostic.severity == DiagnosticSeverity::ERROR { + icon.path(Icon::XCircle.path()) + .text_color(Color::Error.color(cx)) + } else { + icon.path(Icon::ExclamationTriangle.path()) + .text_color(Color::Warning.color(cx)) + } + }), + ) }) .child( h_stack() @@ -818,7 +827,11 @@ fn diagnostic_header_renderer(diagnostic: Diagnostic) -> RenderBlock { ), ) .when_some(diagnostic.code.as_ref(), |stack, code| { - stack.child(Label::new(format!("({code})")).color(Color::Muted)) + stack.child( + div() + .child(SharedString::from(format!("({code})"))) + .text_color(cx.theme().colors().text_muted), + ) }), ), ) @@ -826,7 +839,11 @@ fn diagnostic_header_renderer(diagnostic: Diagnostic) -> RenderBlock { h_stack() .gap_1() .when_some(diagnostic.source.as_ref(), |stack, source| { - stack.child(Label::new(format!("{source}")).color(Color::Muted)) + stack.child( + div() + .child(SharedString::from(source.clone())) + .text_color(cx.theme().colors().text_muted), + ) }), ) .into_any_element() diff --git a/crates/editor2/src/display_map.rs b/crates/editor2/src/display_map.rs index 74daf8ba89..8703f1ba40 100644 --- a/crates/editor2/src/display_map.rs +++ b/crates/editor2/src/display_map.rs @@ -536,7 +536,7 @@ impl DisplaySnapshot { // Omit underlines for HINT/INFO diagnostics on 'unnecessary' code. if severity <= DiagnosticSeverity::WARNING || !chunk.is_unnecessary { let diagnostic_color = - super::diagnostic_style(severity, true, &editor_style.diagnostic_style); + super::diagnostic_style(severity, true, &editor_style.status); diagnostic_highlight.underline = Some(UnderlineStyle { color: Some(diagnostic_color), thickness: 1.0.into(), diff --git a/crates/editor2/src/editor.rs b/crates/editor2/src/editor.rs index a84d1e50d2..d370ba4277 100644 --- a/crates/editor2/src/editor.rs +++ b/crates/editor2/src/editor.rs @@ -97,7 +97,7 @@ use std::{ pub use sum_tree::Bias; use sum_tree::TreeMap; use text::{OffsetUtf16, Rope}; -use theme::{ActiveTheme, DiagnosticStyle, PlayerColor, SyntaxTheme, ThemeColors, ThemeSettings}; +use theme::{ActiveTheme, PlayerColor, StatusColors, SyntaxTheme, ThemeColors, ThemeSettings}; use ui::{h_stack, ButtonSize, ButtonStyle, Icon, IconButton, Popover, Tooltip}; use ui::{prelude::*, IconSize}; use util::{post_inc, RangeExt, ResultExt, TryFutureExt}; @@ -512,7 +512,7 @@ pub struct EditorStyle { pub text: TextStyle, pub scrollbar_width: Pixels, pub syntax: Arc, - pub diagnostic_style: DiagnosticStyle, + pub status: StatusColors, pub inlays_style: HighlightStyle, pub suggestions_style: HighlightStyle, } @@ -1195,7 +1195,6 @@ impl CompletionsMenu { .min_w(px(260.)) .max_w(px(640.)) .w(px(500.)) - .text_ui() .overflow_y_scroll() // Prevent a mouse down on documentation from being propagated to the editor, // because that would move the cursor. @@ -1251,7 +1250,6 @@ impl CompletionsMenu { .max_w(px(540.)) .whitespace_nowrap() .overflow_hidden() - .text_ui() .px_1() .rounded(px(4.)) .bg(cx.theme().colors().ghost_element_background) @@ -1425,7 +1423,6 @@ impl CodeActionsMenu { let colors = cx.theme().colors(); div() .px_2() - .text_ui() .text_color(colors.text) .when(selected, |style| { style @@ -7662,10 +7659,7 @@ impl Editor { text: text_style, scrollbar_width: cx.editor_style.scrollbar_width, syntax: cx.editor_style.syntax.clone(), - diagnostic_style: cx - .editor_style - .diagnostic_style - .clone(), + status: cx.editor_style.status.clone(), // todo!("what about the rest of the highlight style parts for inlays and suggestions?") inlays_style: HighlightStyle { color: Some(cx.theme().status().hint), @@ -9335,7 +9329,7 @@ impl Render for Editor { text: text_style, scrollbar_width: px(12.), syntax: cx.theme().syntax().clone(), - diagnostic_style: cx.theme().diagnostic_style(), + status: cx.theme().status().clone(), // todo!("what about the rest of the highlight style parts?") inlays_style: HighlightStyle { color: Some(cx.theme().status().hint), @@ -9789,21 +9783,17 @@ pub fn highlight_diagnostic_message(diagnostic: &Diagnostic) -> (SharedString, V (text_without_backticks.into(), code_ranges) } -pub fn diagnostic_style( - severity: DiagnosticSeverity, - valid: bool, - style: &DiagnosticStyle, -) -> Hsla { +pub fn diagnostic_style(severity: DiagnosticSeverity, valid: bool, colors: &StatusColors) -> Hsla { match (severity, valid) { - (DiagnosticSeverity::ERROR, true) => style.error, - (DiagnosticSeverity::ERROR, false) => style.error, - (DiagnosticSeverity::WARNING, true) => style.warning, - (DiagnosticSeverity::WARNING, false) => style.warning, - (DiagnosticSeverity::INFORMATION, true) => style.info, - (DiagnosticSeverity::INFORMATION, false) => style.info, - (DiagnosticSeverity::HINT, true) => style.info, - (DiagnosticSeverity::HINT, false) => style.info, - _ => style.ignored, + (DiagnosticSeverity::ERROR, true) => colors.error, + (DiagnosticSeverity::ERROR, false) => colors.error, + (DiagnosticSeverity::WARNING, true) => colors.warning, + (DiagnosticSeverity::WARNING, false) => colors.warning, + (DiagnosticSeverity::INFORMATION, true) => colors.info, + (DiagnosticSeverity::INFORMATION, false) => colors.info, + (DiagnosticSeverity::HINT, true) => colors.info, + (DiagnosticSeverity::HINT, false) => colors.info, + _ => colors.ignored, } } diff --git a/crates/editor2/src/element.rs b/crates/editor2/src/element.rs index da7428a8e0..2b5c97bac5 100644 --- a/crates/editor2/src/element.rs +++ b/crates/editor2/src/element.rs @@ -52,7 +52,7 @@ use std::{ use sum_tree::Bias; use theme::{ActiveTheme, PlayerColor}; use ui::prelude::*; -use ui::{h_stack, ButtonLike, ButtonStyle, IconButton, Label, Tooltip}; +use ui::{h_stack, ButtonLike, ButtonStyle, IconButton, Tooltip}; use util::ResultExt; use workspace::item::Item; @@ -2305,13 +2305,17 @@ impl EditorElement { h_stack().gap_3().child( h_stack() .gap_2() - .child(Label::new( + .child( filename .map(SharedString::from) .unwrap_or_else(|| "untitled".into()), - )) + ) .when_some(parent_path, |then, path| { - then.child(Label::new(path).color(Color::Muted)) + then.child( + div().child(path).text_color( + cx.theme().colors().text_muted, + ), + ) }), ), ) @@ -2373,8 +2377,6 @@ impl EditorElement { this.child(div().size_full().bg(gpui::green())) } }) - // .child("⋯") - // .children(jump_icon) // .p_x(gutter_padding) }; element.into_any() } @@ -2811,50 +2813,65 @@ impl Element for EditorElement { ) { let editor = self.editor.clone(); - let mut layout = self.compute_layout(bounds, cx); - let gutter_bounds = Bounds { - origin: bounds.origin, - size: layout.gutter_size, - }; - let text_bounds = Bounds { - origin: gutter_bounds.upper_right(), - size: layout.text_size, - }; + cx.with_text_style( + Some(gpui::TextStyleRefinement { + font_size: Some(self.style.text.font_size), + ..Default::default() + }), + |cx| { + let mut layout = self.compute_layout(bounds, cx); + let gutter_bounds = Bounds { + origin: bounds.origin, + size: layout.gutter_size, + }; + let text_bounds = Bounds { + origin: gutter_bounds.upper_right(), + size: layout.text_size, + }; - let focus_handle = editor.focus_handle(cx); - let key_context = self.editor.read(cx).key_context(cx); - cx.with_key_dispatch(Some(key_context), Some(focus_handle.clone()), |_, cx| { - self.register_actions(cx); - self.register_key_listeners(cx); + let focus_handle = editor.focus_handle(cx); + let key_context = self.editor.read(cx).key_context(cx); + cx.with_key_dispatch(Some(key_context), Some(focus_handle.clone()), |_, cx| { + self.register_actions(cx); + self.register_key_listeners(cx); - cx.with_content_mask(Some(ContentMask { bounds }), |cx| { - let input_handler = ElementInputHandler::new(bounds, self.editor.clone(), cx); - cx.handle_input(&focus_handle, input_handler); + cx.with_content_mask(Some(ContentMask { bounds }), |cx| { + let input_handler = + ElementInputHandler::new(bounds, self.editor.clone(), cx); + cx.handle_input(&focus_handle, input_handler); - self.paint_background(gutter_bounds, text_bounds, &layout, cx); - if layout.gutter_size.width > Pixels::ZERO { - self.paint_gutter(gutter_bounds, &mut layout, cx); - } - self.paint_text(text_bounds, &mut layout, cx); + self.paint_background(gutter_bounds, text_bounds, &layout, cx); + if layout.gutter_size.width > Pixels::ZERO { + self.paint_gutter(gutter_bounds, &mut layout, cx); + } + self.paint_text(text_bounds, &mut layout, cx); - cx.with_z_index(0, |cx| { - self.paint_mouse_listeners(bounds, gutter_bounds, text_bounds, &layout, cx); - }); - if !layout.blocks.is_empty() { - cx.with_z_index(0, |cx| { - cx.with_element_id(Some("editor_blocks"), |cx| { - self.paint_blocks(bounds, &mut layout, cx); + cx.with_z_index(0, |cx| { + self.paint_mouse_listeners( + bounds, + gutter_bounds, + text_bounds, + &layout, + cx, + ); }); - }) - } + if !layout.blocks.is_empty() { + cx.with_z_index(0, |cx| { + cx.with_element_id(Some("editor_blocks"), |cx| { + self.paint_blocks(bounds, &mut layout, cx); + }); + }) + } - cx.with_z_index(1, |cx| { - self.paint_overlays(text_bounds, &mut layout, cx); - }); + cx.with_z_index(1, |cx| { + self.paint_overlays(text_bounds, &mut layout, cx); + }); - cx.with_z_index(2, |cx| self.paint_scrollbar(bounds, &mut layout, cx)); - }); - }) + cx.with_z_index(2, |cx| self.paint_scrollbar(bounds, &mut layout, cx)); + }); + }) + }, + ); } } diff --git a/crates/editor2/src/hover_popover.rs b/crates/editor2/src/hover_popover.rs index ca2fc4e9b2..6fdd53f43a 100644 --- a/crates/editor2/src/hover_popover.rs +++ b/crates/editor2/src/hover_popover.rs @@ -6,12 +6,13 @@ use crate::{ }; use futures::FutureExt; use gpui::{ - actions, div, px, AnyElement, CursorStyle, InteractiveElement, IntoElement, Model, MouseButton, - ParentElement, Pixels, SharedString, Size, StatefulInteractiveElement, Styled, Task, - ViewContext, WeakView, + actions, div, px, AnyElement, CursorStyle, Hsla, InteractiveElement, IntoElement, Model, + MouseButton, ParentElement, Pixels, SharedString, Size, StatefulInteractiveElement, Styled, + Task, ViewContext, WeakView, }; use language::{markdown, Bias, DiagnosticEntry, Language, LanguageRegistry, ParsedMarkdown}; +use lsp::DiagnosticSeverity; use project::{HoverBlock, HoverBlockKind, InlayHintLabelPart, Project}; use settings::Settings; use std::{ops::Range, sync::Arc, time::Duration}; @@ -477,7 +478,6 @@ impl InfoPopover { div() .id("info_popover") .elevation_2(cx) - .text_ui() .p_2() .overflow_y_scroll() .max_w(max_size.width) @@ -514,16 +514,50 @@ impl DiagnosticPopover { None => self.local_diagnostic.diagnostic.message.clone(), }; - let container_bg = crate::diagnostic_style( - self.local_diagnostic.diagnostic.severity, - true, - &style.diagnostic_style, - ); + struct DiagnosticColors { + pub text: Hsla, + pub background: Hsla, + pub border: Hsla, + } + + let diagnostic_colors = match self.local_diagnostic.diagnostic.severity { + DiagnosticSeverity::ERROR => DiagnosticColors { + text: style.status.error, + background: style.status.error_background, + border: style.status.error_border, + }, + DiagnosticSeverity::WARNING => DiagnosticColors { + text: style.status.warning, + background: style.status.warning_background, + border: style.status.warning_border, + }, + DiagnosticSeverity::INFORMATION => DiagnosticColors { + text: style.status.info, + background: style.status.info_background, + border: style.status.info_border, + }, + DiagnosticSeverity::HINT => DiagnosticColors { + text: style.status.hint, + background: style.status.hint_background, + border: style.status.hint_border, + }, + _ => DiagnosticColors { + text: style.status.ignored, + background: style.status.ignored_background, + border: style.status.ignored_border, + }, + }; div() .id("diagnostic") .overflow_y_scroll() - .bg(container_bg) + .px_2() + .py_1() + .bg(diagnostic_colors.background) + .text_color(diagnostic_colors.text) + .border_1() + .border_color(diagnostic_colors.border) + .rounded_md() .max_w(max_size.width) .max_h(max_size.height) .cursor(CursorStyle::PointingHand) diff --git a/crates/gpui/src/platform/mac/renderer.rs b/crates/gpui/src/platform/mac/renderer.rs index 85f0af1ffd..2eaaf6db8e 100644 --- a/crates/gpui/src/platform/mac/renderer.rs +++ b/crates/gpui/src/platform/mac/renderer.rs @@ -162,7 +162,7 @@ impl Renderer { "underline_fragment", PIXEL_FORMAT, ); - let cv_texture_cache = CVMetalTextureCache::new(device.as_ptr()).unwrap(); + let cv_texture_cache = unsafe { CVMetalTextureCache::new(device.as_ptr()).unwrap() }; Self { layer, command_queue: device.new_command_queue(), @@ -887,28 +887,30 @@ impl Renderer { core_video::kCVPixelFormatType_420YpCbCr8BiPlanarFullRange ); - let y_texture = self - .cv_texture_cache - .create_texture_from_image( - surface.image_buffer.as_concrete_TypeRef(), - ptr::null(), - MTLPixelFormat::R8Unorm, - surface.image_buffer.plane_width(0), - surface.image_buffer.plane_height(0), - 0, - ) - .unwrap(); - let cb_cr_texture = self - .cv_texture_cache - .create_texture_from_image( - surface.image_buffer.as_concrete_TypeRef(), - ptr::null(), - MTLPixelFormat::RG8Unorm, - surface.image_buffer.plane_width(1), - surface.image_buffer.plane_height(1), - 1, - ) - .unwrap(); + let y_texture = unsafe { + self.cv_texture_cache + .create_texture_from_image( + surface.image_buffer.as_concrete_TypeRef(), + ptr::null(), + MTLPixelFormat::R8Unorm, + surface.image_buffer.plane_width(0), + surface.image_buffer.plane_height(0), + 0, + ) + .unwrap() + }; + let cb_cr_texture = unsafe { + self.cv_texture_cache + .create_texture_from_image( + surface.image_buffer.as_concrete_TypeRef(), + ptr::null(), + MTLPixelFormat::RG8Unorm, + surface.image_buffer.plane_width(1), + surface.image_buffer.plane_height(1), + 1, + ) + .unwrap() + }; align_offset(offset); let next_offset = *offset + mem::size_of::(); diff --git a/crates/gpui2/src/app.rs b/crates/gpui2/src/app.rs index fd03d886b8..f8da622b53 100644 --- a/crates/gpui2/src/app.rs +++ b/crates/gpui2/src/app.rs @@ -52,7 +52,7 @@ pub struct AppCell { impl AppCell { #[track_caller] pub fn borrow(&self) -> AppRef { - if let Some(_) = option_env!("TRACK_THREAD_BORROWS") { + if option_env!("TRACK_THREAD_BORROWS").is_some() { let thread_id = std::thread::current().id(); eprintln!("borrowed {thread_id:?}"); } @@ -61,7 +61,7 @@ impl AppCell { #[track_caller] pub fn borrow_mut(&self) -> AppRefMut { - if let Some(_) = option_env!("TRACK_THREAD_BORROWS") { + if option_env!("TRACK_THREAD_BORROWS").is_some() { let thread_id = std::thread::current().id(); eprintln!("borrowed {thread_id:?}"); } @@ -74,7 +74,7 @@ pub struct AppRef<'a>(Ref<'a, AppContext>); impl<'a> Drop for AppRef<'a> { fn drop(&mut self) { - if let Some(_) = option_env!("TRACK_THREAD_BORROWS") { + if option_env!("TRACK_THREAD_BORROWS").is_some() { let thread_id = std::thread::current().id(); eprintln!("dropped borrow from {thread_id:?}"); } @@ -86,7 +86,7 @@ pub struct AppRefMut<'a>(RefMut<'a, AppContext>); impl<'a> Drop for AppRefMut<'a> { fn drop(&mut self) { - if let Some(_) = option_env!("TRACK_THREAD_BORROWS") { + if option_env!("TRACK_THREAD_BORROWS").is_some() { let thread_id = std::thread::current().id(); eprintln!("dropped {thread_id:?}"); } @@ -130,7 +130,7 @@ impl App { let this = Rc::downgrade(&self.0); self.0.borrow().platform.on_open_urls(Box::new(move |urls| { if let Some(app) = this.upgrade() { - callback(urls, &mut *app.borrow_mut()); + callback(urls, &mut app.borrow_mut()); } })); self @@ -280,7 +280,7 @@ impl AppContext { }), }); - init_app_menus(platform.as_ref(), &mut *app.borrow_mut()); + init_app_menus(platform.as_ref(), &mut app.borrow_mut()); platform.on_quit(Box::new({ let cx = app.clone(); @@ -428,7 +428,7 @@ impl AppContext { pub fn windows(&self) -> Vec { self.windows .values() - .filter_map(|window| Some(window.as_ref()?.handle.clone())) + .filter_map(|window| Some(window.as_ref()?.handle)) .collect() } @@ -808,7 +808,7 @@ impl AppContext { self.push_effect(Effect::NotifyGlobalObservers { global_type }); self.globals_by_type .entry(global_type) - .or_insert_with(|| Box::new(G::default())) + .or_insert_with(|| Box::::default()) .downcast_mut::() .unwrap() } @@ -993,7 +993,7 @@ impl AppContext { (), Box::new(move |cx| { let future = on_quit(cx); - async move { future.await }.boxed_local() + future.boxed_local() }), ); activate(); diff --git a/crates/gpui2/src/app/async_context.rs b/crates/gpui2/src/app/async_context.rs index d60393ccc8..475ef76ef2 100644 --- a/crates/gpui2/src/app/async_context.rs +++ b/crates/gpui2/src/app/async_context.rs @@ -106,7 +106,7 @@ impl AsyncAppContext { .upgrade() .ok_or_else(|| anyhow!("app was released"))?; let mut lock = app.borrow_mut(); - Ok(f(&mut *lock)) + Ok(f(&mut lock)) } pub fn open_window( diff --git a/crates/gpui2/src/app/entity_map.rs b/crates/gpui2/src/app/entity_map.rs index 99d8542eba..f71cfbdebc 100644 --- a/crates/gpui2/src/app/entity_map.rs +++ b/crates/gpui2/src/app/entity_map.rs @@ -327,9 +327,9 @@ impl Model { cx.entities.read(self) } - pub fn read_with<'a, R, C: Context>( + pub fn read_with( &self, - cx: &'a C, + cx: &C, f: impl FnOnce(&T, &AppContext) -> R, ) -> C::Result { cx.read_model(self, f) diff --git a/crates/gpui2/src/app/model_context.rs b/crates/gpui2/src/app/model_context.rs index 1aee20b598..63db0ee1cb 100644 --- a/crates/gpui2/src/app/model_context.rs +++ b/crates/gpui2/src/app/model_context.rs @@ -262,12 +262,12 @@ impl<'a, T> Context for ModelContext<'a, T> { impl Borrow for ModelContext<'_, T> { fn borrow(&self) -> &AppContext { - &self.app + self.app } } impl BorrowMut for ModelContext<'_, T> { fn borrow_mut(&mut self) -> &mut AppContext { - &mut self.app + self.app } } diff --git a/crates/gpui2/src/color.rs b/crates/gpui2/src/color.rs index d5514d900f..df16d2c0b5 100644 --- a/crates/gpui2/src/color.rs +++ b/crates/gpui2/src/color.rs @@ -34,7 +34,7 @@ impl fmt::Debug for Rgba { impl Rgba { pub fn blend(&self, other: Rgba) -> Self { if other.a >= 1.0 { - return other; + other } else if other.a <= 0.0 { return *self; } else { @@ -117,7 +117,7 @@ impl TryFrom<&'_ str> for Rgba { const RRGGBB: usize = "rrggbb".len(); const RRGGBBAA: usize = "rrggbbaa".len(); - const EXPECTED_FORMATS: &'static str = "Expected #rgb, #rgba, #rrggbb, or #rrggbbaa"; + const EXPECTED_FORMATS: &str = "Expected #rgb, #rgba, #rrggbb, or #rrggbbaa"; let Some(("", hex)) = value.trim().split_once('#') else { bail!("invalid RGBA hex color: '{value}'. {EXPECTED_FORMATS}"); @@ -328,7 +328,7 @@ impl Hsla { let alpha = other.a; if alpha >= 1.0 { - return other; + other } else if alpha <= 0.0 { return self; } else { diff --git a/crates/gpui2/src/elements/div.rs b/crates/gpui2/src/elements/div.rs index fd789f1ac7..45097411d1 100644 --- a/crates/gpui2/src/elements/div.rs +++ b/crates/gpui2/src/elements/div.rs @@ -176,21 +176,20 @@ impl Interactivity { { self.mouse_move_listeners .push(Box::new(move |event, bounds, phase, cx| { - if phase == DispatchPhase::Capture { - if cx + if phase == DispatchPhase::Capture + && cx .active_drag .as_ref() .is_some_and(|drag| drag.value.as_ref().type_id() == TypeId::of::()) - { - (listener)( - &DragMoveEvent { - event: event.clone(), - bounds: bounds.bounds, - drag: PhantomData, - }, - cx, - ); - } + { + (listener)( + &DragMoveEvent { + event: event.clone(), + bounds: bounds.bounds, + drag: PhantomData, + }, + cx, + ); } })); } @@ -236,7 +235,7 @@ impl Interactivity { pub fn on_boxed_action( &mut self, - action: &Box, + action: &dyn Action, listener: impl Fn(&Box, &mut WindowContext) + 'static, ) { let action = action.boxed_clone(); @@ -511,7 +510,7 @@ pub trait InteractiveElement: Sized { fn on_boxed_action( mut self, - action: &Box, + action: &dyn Action, listener: impl Fn(&Box, &mut WindowContext) + 'static, ) -> Self { self.interactivity().on_boxed_action(action, listener); @@ -878,6 +877,7 @@ impl DivState { } } +#[derive(Default)] pub struct Interactivity { pub element_id: Option, pub key_context: Option, @@ -921,12 +921,12 @@ pub struct InteractiveBounds { impl InteractiveBounds { pub fn visibly_contains(&self, point: &Point, cx: &WindowContext) -> bool { - self.bounds.contains(point) && cx.was_top_layer(&point, &self.stacking_order) + self.bounds.contains(point) && cx.was_top_layer(point, &self.stacking_order) } pub fn drag_target_contains(&self, point: &Point, cx: &WindowContext) -> bool { self.bounds.contains(point) - && cx.was_top_layer_under_active_drag(&point, &self.stacking_order) + && cx.was_top_layer_under_active_drag(point, &self.stacking_order) } } @@ -1009,8 +1009,7 @@ impl Interactivity { None, ) .ok() - .map(|mut text| text.pop()) - .flatten() + .and_then(|mut text| text.pop()) { text.paint(bounds.origin, FONT_SIZE, cx).ok(); @@ -1024,7 +1023,6 @@ impl Interactivity { { let command_held = cx.modifiers().command; cx.on_key_event({ - let text_bounds = text_bounds.clone(); move |e: &crate::ModifiersChangedEvent, _phase, cx| { if e.modifiers.command != command_held && text_bounds.contains(&cx.mouse_position()) @@ -1037,17 +1035,16 @@ impl Interactivity { let hovered = bounds.contains(&cx.mouse_position()); cx.on_mouse_event( move |event: &MouseMoveEvent, phase, cx| { - if phase == DispatchPhase::Capture { - if bounds.contains(&event.position) != hovered { - cx.notify(); - } + if phase == DispatchPhase::Capture + && bounds.contains(&event.position) != hovered + { + cx.notify(); } }, ); cx.on_mouse_event({ - let location = self.location.clone().unwrap(); - let text_bounds = text_bounds.clone(); + let location = self.location.unwrap(); move |e: &crate::MouseDownEvent, phase, cx| { if text_bounds.contains(&e.position) && phase.capture() @@ -1188,10 +1185,10 @@ impl Interactivity { if let Some(group_bounds) = hover_group_bounds { let hovered = group_bounds.contains(&cx.mouse_position()); cx.on_mouse_event(move |event: &MouseMoveEvent, phase, cx| { - if phase == DispatchPhase::Capture { - if group_bounds.contains(&event.position) != hovered { - cx.notify(); - } + if phase == DispatchPhase::Capture + && group_bounds.contains(&event.position) != hovered + { + cx.notify(); } }); } @@ -1203,10 +1200,10 @@ impl Interactivity { let bounds = bounds.intersect(&cx.content_mask().bounds); let hovered = bounds.contains(&cx.mouse_position()); cx.on_mouse_event(move |event: &MouseMoveEvent, phase, cx| { - if phase == DispatchPhase::Capture { - if bounds.contains(&event.position) != hovered { - cx.notify(); - } + if phase == DispatchPhase::Capture + && bounds.contains(&event.position) != hovered + { + cx.notify(); } }); } @@ -1366,7 +1363,7 @@ impl Interactivity { && !cx.has_active_drag(); let mut was_hovered = was_hovered.borrow_mut(); - if is_hovered != was_hovered.clone() { + if is_hovered != *was_hovered { *was_hovered = is_hovered; drop(was_hovered); @@ -1693,46 +1690,6 @@ impl Interactivity { } } -impl Default for Interactivity { - fn default() -> Self { - Self { - element_id: None, - key_context: None, - focusable: false, - tracked_focus_handle: None, - scroll_handle: None, - // scroll_offset: Point::default(), - group: None, - base_style: Box::new(StyleRefinement::default()), - focus_style: None, - in_focus_style: None, - hover_style: None, - group_hover_style: None, - active_style: None, - group_active_style: None, - drag_over_styles: Vec::new(), - group_drag_over_styles: Vec::new(), - mouse_down_listeners: Vec::new(), - mouse_up_listeners: Vec::new(), - mouse_move_listeners: Vec::new(), - scroll_wheel_listeners: Vec::new(), - key_down_listeners: Vec::new(), - key_up_listeners: Vec::new(), - action_listeners: Vec::new(), - drop_listeners: Vec::new(), - can_drop_predicate: None, - click_listeners: Vec::new(), - drag_listener: None, - hover_listener: None, - tooltip_builder: None, - block_mouse: false, - - #[cfg(debug_assertions)] - location: None, - } - } -} - #[derive(Default)] pub struct InteractiveElementState { pub focus_handle: Option, @@ -1942,13 +1899,19 @@ struct ScrollHandleState { #[derive(Clone)] pub struct ScrollHandle(Rc>); +impl Default for ScrollHandle { + fn default() -> Self { + Self::new() + } +} + impl ScrollHandle { pub fn new() -> Self { Self(Rc::default()) } pub fn offset(&self) -> Point { - self.0.borrow().offset.borrow().clone() + *self.0.borrow().offset.borrow() } pub fn top_item(&self) -> usize { diff --git a/crates/gpui2/src/elements/overlay.rs b/crates/gpui2/src/elements/overlay.rs index 6ece891708..eab3ee60b4 100644 --- a/crates/gpui2/src/elements/overlay.rs +++ b/crates/gpui2/src/elements/overlay.rs @@ -71,9 +71,11 @@ impl Element for Overlay { .map(|child| child.request_layout(cx)) .collect::>(); - let mut overlay_style = Style::default(); - overlay_style.position = Position::Absolute; - overlay_style.display = Display::Flex; + let overlay_style = Style { + position: Position::Absolute, + display: Display::Flex, + ..Style::default() + }; let layout_id = cx.request_layout(&overlay_style, child_layout_ids.iter().copied()); @@ -147,7 +149,9 @@ impl Element for Overlay { desired.origin.y = limits.origin.y; } - cx.with_element_offset(desired.origin - bounds.origin, |cx| { + let mut offset = cx.element_offset() + desired.origin - bounds.origin; + offset = point(offset.x.round(), offset.y.round()); + cx.with_absolute_element_offset(offset, |cx| { cx.break_content_mask(|cx| { for child in &mut self.children { child.paint(cx); diff --git a/crates/gpui2/src/elements/text.rs b/crates/gpui2/src/elements/text.rs index 91ec8045ad..29c93fd19e 100644 --- a/crates/gpui2/src/elements/text.rs +++ b/crates/gpui2/src/elements/text.rs @@ -171,7 +171,6 @@ impl TextState { let line_height = text_style .line_height .to_pixels(font_size.into(), cx.rem_size()); - let text = SharedString::from(text); let runs = if let Some(runs) = runs { runs diff --git a/crates/gpui2/src/elements/uniform_list.rs b/crates/gpui2/src/elements/uniform_list.rs index 390a10021e..ffa678e9e5 100644 --- a/crates/gpui2/src/elements/uniform_list.rs +++ b/crates/gpui2/src/elements/uniform_list.rs @@ -41,7 +41,7 @@ where item_to_measure_index: 0, render_items: Box::new(render_range), interactivity: Interactivity { - element_id: Some(id.into()), + element_id: Some(id), base_style: Box::new(base_style), #[cfg(debug_assertions)] diff --git a/crates/gpui2/src/executor.rs b/crates/gpui2/src/executor.rs index 81fa6e64ca..589493b4bb 100644 --- a/crates/gpui2/src/executor.rs +++ b/crates/gpui2/src/executor.rs @@ -80,6 +80,12 @@ impl Future for Task { #[derive(Clone, Copy, PartialEq, Eq, Hash, Debug)] pub struct TaskLabel(NonZeroUsize); +impl Default for TaskLabel { + fn default() -> Self { + Self::new() + } +} + impl TaskLabel { pub fn new() -> Self { static NEXT_TASK_LABEL: AtomicUsize = AtomicUsize::new(1); diff --git a/crates/gpui2/src/geometry.rs b/crates/gpui2/src/geometry.rs index 6b4d9ae807..4d2137c257 100644 --- a/crates/gpui2/src/geometry.rs +++ b/crates/gpui2/src/geometry.rs @@ -1601,13 +1601,13 @@ impl Edges { } } -impl Into> for f32 { - fn into(self) -> Edges { +impl From for Edges { + fn from(val: f32) -> Self { Edges { - top: self.into(), - right: self.into(), - bottom: self.into(), - left: self.into(), + top: val.into(), + right: val.into(), + bottom: val.into(), + left: val.into(), } } } @@ -1840,24 +1840,24 @@ where impl Copy for Corners where T: Copy + Clone + Default + Debug {} -impl Into> for f32 { - fn into(self) -> Corners { +impl From for Corners { + fn from(val: f32) -> Self { Corners { - top_left: self.into(), - top_right: self.into(), - bottom_right: self.into(), - bottom_left: self.into(), + top_left: val.into(), + top_right: val.into(), + bottom_right: val.into(), + bottom_left: val.into(), } } } -impl Into> for Pixels { - fn into(self) -> Corners { +impl From for Corners { + fn from(val: Pixels) -> Self { Corners { - top_left: self, - top_right: self, - bottom_right: self, - bottom_left: self, + top_left: val, + top_right: val, + bottom_right: val, + bottom_left: val, } } } @@ -1896,7 +1896,6 @@ impl Into> for Pixels { Div, DivAssign, PartialEq, - PartialOrd, Serialize, Deserialize, )] @@ -2039,9 +2038,15 @@ impl Mul for Pixels { impl Eq for Pixels {} +impl PartialOrd for Pixels { + fn partial_cmp(&self, other: &Self) -> Option { + self.0.partial_cmp(&other.0) + } +} + impl Ord for Pixels { fn cmp(&self, other: &Self) -> cmp::Ordering { - self.0.partial_cmp(&other.0).unwrap() + self.partial_cmp(other).unwrap() } } @@ -2517,12 +2522,12 @@ impl Debug for Length { /// /// A `DefiniteLength` representing the relative length as a fraction of the parent's size. pub fn relative(fraction: f32) -> DefiniteLength { - DefiniteLength::Fraction(fraction).into() + DefiniteLength::Fraction(fraction) } /// Returns the Golden Ratio, i.e. `~(1.0 + sqrt(5.0)) / 2.0`. pub fn phi() -> DefiniteLength { - relative(1.61803398875) + relative(1.618_034) } /// Constructs a `Rems` value representing a length in rems. diff --git a/crates/gpui2/src/interactive.rs b/crates/gpui2/src/interactive.rs index a9cbaa7fcf..6fc7cfc8e8 100644 --- a/crates/gpui2/src/interactive.rs +++ b/crates/gpui2/src/interactive.rs @@ -258,7 +258,7 @@ impl InputEvent { } } - pub fn mouse_event<'a>(&'a self) -> Option<&'a dyn Any> { + pub fn mouse_event(&self) -> Option<&dyn Any> { match self { InputEvent::KeyDown { .. } => None, InputEvent::KeyUp { .. } => None, @@ -272,7 +272,7 @@ impl InputEvent { } } - pub fn keyboard_event<'a>(&'a self) -> Option<&'a dyn Any> { + pub fn keyboard_event(&self) -> Option<&dyn Any> { match self { InputEvent::KeyDown(event) => Some(event), InputEvent::KeyUp(event) => Some(event), diff --git a/crates/gpui2/src/key_dispatch.rs b/crates/gpui2/src/key_dispatch.rs index a9d717ea1a..ade52a1314 100644 --- a/crates/gpui2/src/key_dispatch.rs +++ b/crates/gpui2/src/key_dispatch.rs @@ -200,7 +200,7 @@ impl DispatchTree { return true; } } - return false; + false }) .cloned() .collect() diff --git a/crates/gpui2/src/keymap/binding.rs b/crates/gpui2/src/keymap/binding.rs index 4b677b3071..2439410784 100644 --- a/crates/gpui2/src/keymap/binding.rs +++ b/crates/gpui2/src/keymap/binding.rs @@ -54,7 +54,7 @@ impl KeyBinding { pending_keystrokes: &[Keystroke], contexts: &[KeyContext], ) -> KeyMatch { - if self.keystrokes.as_ref().starts_with(&pending_keystrokes) + if self.keystrokes.as_ref().starts_with(pending_keystrokes) && self.matches_context(contexts) { // If the binding is completed, push it onto the matches list diff --git a/crates/gpui2/src/keymap/context.rs b/crates/gpui2/src/keymap/context.rs index fb90a0c764..bfa97b7afe 100644 --- a/crates/gpui2/src/keymap/context.rs +++ b/crates/gpui2/src/keymap/context.rs @@ -24,7 +24,7 @@ impl KeyContext { pub fn parse(source: &str) -> Result { let mut context = Self::default(); let source = skip_whitespace(source); - Self::parse_expr(&source, &mut context)?; + Self::parse_expr(source, &mut context)?; Ok(context) } @@ -220,7 +220,7 @@ impl KeyBindingContextPredicate { } '!' => { let source = skip_whitespace(&source[1..]); - let (predicate, source) = Self::parse_expr(&source, PRECEDENCE_NOT)?; + let (predicate, source) = Self::parse_expr(source, PRECEDENCE_NOT)?; Ok((KeyBindingContextPredicate::Not(Box::new(predicate)), source)) } _ if is_identifier_char(next) => { diff --git a/crates/gpui2/src/platform/mac.rs b/crates/gpui2/src/platform/mac.rs index 336679dc9f..d10793a618 100644 --- a/crates/gpui2/src/platform/mac.rs +++ b/crates/gpui2/src/platform/mac.rs @@ -1,5 +1,5 @@ -///! Macos screen have a y axis that goings up from the bottom of the screen and -///! an origin at the bottom left of the main display. +//! Macos screen have a y axis that goings up from the bottom of the screen and +//! an origin at the bottom left of the main display. mod dispatcher; mod display; mod display_linker; diff --git a/crates/gpui2/src/platform/mac/dispatcher.rs b/crates/gpui2/src/platform/mac/dispatcher.rs index 2fb0eef3e5..feb8925426 100644 --- a/crates/gpui2/src/platform/mac/dispatcher.rs +++ b/crates/gpui2/src/platform/mac/dispatcher.rs @@ -23,6 +23,12 @@ pub struct MacDispatcher { parker: Arc>, } +impl Default for MacDispatcher { + fn default() -> Self { + Self::new() + } +} + impl MacDispatcher { pub fn new() -> Self { MacDispatcher { diff --git a/crates/gpui2/src/platform/mac/display.rs b/crates/gpui2/src/platform/mac/display.rs index b326eaa66d..2458533f6a 100644 --- a/crates/gpui2/src/platform/mac/display.rs +++ b/crates/gpui2/src/platform/mac/display.rs @@ -41,7 +41,7 @@ impl MacDisplay { CGGetActiveDisplayList(display_count, displays.as_mut_ptr(), &mut display_count); displays.set_len(display_count as usize); - displays.into_iter().map(|display| MacDisplay(display)) + displays.into_iter().map(MacDisplay) } else { panic!("Failed to get active display list"); } diff --git a/crates/gpui2/src/platform/mac/display_linker.rs b/crates/gpui2/src/platform/mac/display_linker.rs index d8f5a675a5..e367d22b3d 100644 --- a/crates/gpui2/src/platform/mac/display_linker.rs +++ b/crates/gpui2/src/platform/mac/display_linker.rs @@ -49,7 +49,6 @@ impl MacDisplayLinker { ); } else { log::warn!("DisplayLink could not be obtained for {:?}", display_id); - return; } } diff --git a/crates/gpui2/src/platform/mac/metal_atlas.rs b/crates/gpui2/src/platform/mac/metal_atlas.rs index 2110815d9f..10ca53530e 100644 --- a/crates/gpui2/src/platform/mac/metal_atlas.rs +++ b/crates/gpui2/src/platform/mac/metal_atlas.rs @@ -64,7 +64,7 @@ impl PlatformAtlas for MetalAtlas { ) -> Result { let mut lock = self.0.lock(); if let Some(tile) = lock.tiles_by_key.get(key) { - return Ok(tile.clone()); + Ok(tile.clone()) } else { let (size, bytes) = build()?; let tile = lock.allocate(size, key.texture_kind()); @@ -203,7 +203,7 @@ impl MetalAtlasTexture { region, 0, bytes.as_ptr() as *const _, - u32::from(bounds.size.width.to_bytes(self.bytes_per_pixel())) as u64, + bounds.size.width.to_bytes(self.bytes_per_pixel()) as u64, ); } diff --git a/crates/gpui2/src/platform/mac/metal_renderer.rs b/crates/gpui2/src/platform/mac/metal_renderer.rs index 68768521ee..a6cdd166d3 100644 --- a/crates/gpui2/src/platform/mac/metal_renderer.rs +++ b/crates/gpui2/src/platform/mac/metal_renderer.rs @@ -66,12 +66,10 @@ impl MetalRenderer { .expect("error building metal library"); fn to_float2_bits(point: crate::PointF) -> u64 { - unsafe { - let mut output = mem::transmute::<_, u32>(point.y.to_bits()) as u64; - output <<= 32; - output |= mem::transmute::<_, u32>(point.x.to_bits()) as u64; - output - } + let mut output = point.y.to_bits() as u64; + output <<= 32; + output |= point.x.to_bits() as u64; + output } let unit_vertices = [ @@ -174,12 +172,12 @@ impl MetalRenderer { unit_vertices, instances, sprite_atlas, - core_video_texture_cache: CVMetalTextureCache::new(device.as_ptr()).unwrap(), + core_video_texture_cache: unsafe { CVMetalTextureCache::new(device.as_ptr()).unwrap() }, } } pub fn layer(&self) -> &metal::MetalLayerRef { - &*self.layer + &self.layer } pub fn sprite_atlas(&self) -> &Arc { @@ -206,7 +204,7 @@ impl MetalRenderer { let command_buffer = command_queue.new_command_buffer(); let mut instance_offset = 0; - let path_tiles = self.rasterize_paths(scene.paths(), &mut instance_offset, &command_buffer); + let path_tiles = self.rasterize_paths(scene.paths(), &mut instance_offset, command_buffer); let render_pass_descriptor = metal::RenderPassDescriptor::new(); let color_attachment = render_pass_descriptor @@ -429,7 +427,7 @@ impl MetalRenderer { &viewport_size as *const Size as *const _, ); - let shadow_bytes_len = mem::size_of::() * shadows.len(); + let shadow_bytes_len = std::mem::size_of_val(shadows); let buffer_contents = unsafe { (self.instances.contents() as *mut u8).add(*offset) }; unsafe { ptr::copy_nonoverlapping( @@ -489,7 +487,7 @@ impl MetalRenderer { &viewport_size as *const Size as *const _, ); - let quad_bytes_len = mem::size_of::() * quads.len(); + let quad_bytes_len = std::mem::size_of_val(quads); let buffer_contents = unsafe { (self.instances.contents() as *mut u8).add(*offset) }; unsafe { ptr::copy_nonoverlapping(quads.as_ptr() as *const u8, buffer_contents, quad_bytes_len); @@ -537,7 +535,7 @@ impl MetalRenderer { let mut prev_texture_id = None; let mut sprites = SmallVec::<[_; 1]>::new(); let mut paths_and_tiles = paths - .into_iter() + .iter() .map(|path| (path, tiles_by_path_id.get(&path.id).unwrap())) .peekable(); @@ -652,7 +650,7 @@ impl MetalRenderer { &viewport_size as *const Size as *const _, ); - let quad_bytes_len = mem::size_of::() * underlines.len(); + let quad_bytes_len = std::mem::size_of_val(underlines); let buffer_contents = unsafe { (self.instances.contents() as *mut u8).add(*offset) }; unsafe { ptr::copy_nonoverlapping( @@ -723,7 +721,7 @@ impl MetalRenderer { ); command_encoder.set_fragment_texture(SpriteInputIndex::AtlasTexture as u64, Some(&texture)); - let sprite_bytes_len = mem::size_of::() * sprites.len(); + let sprite_bytes_len = std::mem::size_of_val(sprites); let buffer_contents = unsafe { (self.instances.contents() as *mut u8).add(*offset) }; unsafe { ptr::copy_nonoverlapping( @@ -794,7 +792,7 @@ impl MetalRenderer { ); command_encoder.set_fragment_texture(SpriteInputIndex::AtlasTexture as u64, Some(&texture)); - let sprite_bytes_len = mem::size_of::() * sprites.len(); + let sprite_bytes_len = std::mem::size_of_val(sprites); let buffer_contents = unsafe { (self.instances.contents() as *mut u8).add(*offset) }; unsafe { ptr::copy_nonoverlapping( @@ -849,28 +847,30 @@ impl MetalRenderer { media::core_video::kCVPixelFormatType_420YpCbCr8BiPlanarFullRange ); - let y_texture = self - .core_video_texture_cache - .create_texture_from_image( - surface.image_buffer.as_concrete_TypeRef(), - ptr::null(), - MTLPixelFormat::R8Unorm, - surface.image_buffer.plane_width(0), - surface.image_buffer.plane_height(0), - 0, - ) - .unwrap(); - let cb_cr_texture = self - .core_video_texture_cache - .create_texture_from_image( - surface.image_buffer.as_concrete_TypeRef(), - ptr::null(), - MTLPixelFormat::RG8Unorm, - surface.image_buffer.plane_width(1), - surface.image_buffer.plane_height(1), - 1, - ) - .unwrap(); + let y_texture = unsafe { + self.core_video_texture_cache + .create_texture_from_image( + surface.image_buffer.as_concrete_TypeRef(), + ptr::null(), + MTLPixelFormat::R8Unorm, + surface.image_buffer.plane_width(0), + surface.image_buffer.plane_height(0), + 0, + ) + .unwrap() + }; + let cb_cr_texture = unsafe { + self.core_video_texture_cache + .create_texture_from_image( + surface.image_buffer.as_concrete_TypeRef(), + ptr::null(), + MTLPixelFormat::RG8Unorm, + surface.image_buffer.plane_width(1), + surface.image_buffer.plane_height(1), + 1, + ) + .unwrap() + }; align_offset(offset); let next_offset = *offset + mem::size_of::(); diff --git a/crates/gpui2/src/platform/mac/platform.rs b/crates/gpui2/src/platform/mac/platform.rs index 2dcfb1a58d..153736870a 100644 --- a/crates/gpui2/src/platform/mac/platform.rs +++ b/crates/gpui2/src/platform/mac/platform.rs @@ -166,6 +166,12 @@ pub struct MacPlatformState { finish_launching: Option>, } +impl Default for MacPlatform { + fn default() -> Self { + Self::new() + } +} + impl MacPlatform { pub fn new() -> Self { let dispatcher = Arc::new(MacDispatcher::new()); @@ -219,7 +225,12 @@ impl MacPlatform { menu.setDelegate_(delegate); for item_config in menu_config.items { - menu.addItem_(self.create_menu_item(item_config, delegate, actions, keymap)); + menu.addItem_(Self::create_menu_item( + item_config, + delegate, + actions, + keymap, + )); } let menu_item = NSMenuItem::new(nil).autorelease(); @@ -236,7 +247,6 @@ impl MacPlatform { } unsafe fn create_menu_item( - &self, item: MenuItem, delegate: id, actions: &mut Vec>, @@ -342,7 +352,7 @@ impl MacPlatform { let submenu = NSMenu::new(nil).autorelease(); submenu.setDelegate_(delegate); for item in items { - submenu.addItem_(self.create_menu_item(item, delegate, actions, keymap)); + submenu.addItem_(Self::create_menu_item(item, delegate, actions, keymap)); } item.setSubmenu_(submenu); item.setTitle_(ns_string(name)); @@ -475,7 +485,6 @@ impl Platform for MacPlatform { fn displays(&self) -> Vec> { MacDisplay::all() - .into_iter() .map(|screen| Rc::new(screen) as Rc<_>) .collect() } @@ -1035,7 +1044,6 @@ extern "C" fn will_terminate(this: &mut Object, _: Sel, _: id) { extern "C" fn open_urls(this: &mut Object, _: Sel, _: id, urls: id) { let urls = unsafe { (0..urls.count()) - .into_iter() .filter_map(|i| { let url = urls.objectAtIndex(i); match CStr::from_ptr(url.absoluteString().UTF8String() as *mut c_char).to_str() { diff --git a/crates/gpui2/src/platform/mac/text_system.rs b/crates/gpui2/src/platform/mac/text_system.rs index 9ef0f321b6..88ebfd8351 100644 --- a/crates/gpui2/src/platform/mac/text_system.rs +++ b/crates/gpui2/src/platform/mac/text_system.rs @@ -335,7 +335,7 @@ impl MacTextSystemState { } } - Ok((bitmap_size.into(), bytes)) + Ok((bitmap_size, bytes)) } } @@ -343,10 +343,10 @@ impl MacTextSystemState { // Construct the attributed string, converting UTF8 ranges to UTF16 ranges. let mut string = CFMutableAttributedString::new(); { - string.replace_str(&CFString::new(text.as_ref()), CFRange::init(0, 0)); + string.replace_str(&CFString::new(text), CFRange::init(0, 0)); let utf16_line_len = string.char_len() as usize; - let mut ix_converter = StringIndexConverter::new(text.as_ref()); + let mut ix_converter = StringIndexConverter::new(text); for run in font_runs { let utf8_end = ix_converter.utf8_ix + run.len; let utf16_start = ix_converter.utf16_ix; @@ -390,7 +390,7 @@ impl MacTextSystemState { }; let font_id = self.id_for_native_font(font); - let mut ix_converter = StringIndexConverter::new(text.as_ref()); + let mut ix_converter = StringIndexConverter::new(text); let mut glyphs = SmallVec::new(); for ((glyph_id, position), glyph_utf16_ix) in run .glyphs() @@ -453,7 +453,7 @@ impl MacTextSystemState { if ix_converter.utf8_ix >= text.len() { break; } - break_indices.push(ix_converter.utf8_ix as usize); + break_indices.push(ix_converter.utf8_ix); } break_indices } diff --git a/crates/gpui2/src/platform/mac/window.rs b/crates/gpui2/src/platform/mac/window.rs index c75bb21399..2dd77446a3 100644 --- a/crates/gpui2/src/platform/mac/window.rs +++ b/crates/gpui2/src/platform/mac/window.rs @@ -487,7 +487,7 @@ impl MacWindow { let display = options .display_id .and_then(|display_id| MacDisplay::all().find(|display| display.id() == display_id)) - .unwrap_or_else(|| MacDisplay::primary()); + .unwrap_or_else(MacDisplay::primary); let mut target_screen = nil; let screens = NSScreen::screens(nil); @@ -701,7 +701,7 @@ impl PlatformWindow for MacWindow { } fn content_size(&self) -> Size { - self.0.as_ref().lock().content_size().into() + self.0.as_ref().lock().content_size() } fn scale_factor(&self) -> f32 { @@ -1338,12 +1338,10 @@ extern "C" fn window_did_change_key_status(this: &Object, selector: Sel, _: id) // The following code detects the spurious event and invokes `resignKeyWindow`: // in theory, we're not supposed to invoke this method manually but it balances out // the spurious `becomeKeyWindow` event and helps us work around that bug. - if selector == sel!(windowDidBecomeKey:) { - if !is_active { - unsafe { - let _: () = msg_send![lock.native_window, resignKeyWindow]; - return; - } + if selector == sel!(windowDidBecomeKey:) && !is_active { + unsafe { + let _: () = msg_send![lock.native_window, resignKeyWindow]; + return; } } @@ -1664,11 +1662,11 @@ extern "C" fn accepts_first_mouse(this: &Object, _: Sel, _: id) -> BOOL { unsafe { let state = get_window_state(this); let lock = state.as_ref().lock(); - return if lock.kind == WindowKind::PopUp { + if lock.kind == WindowKind::PopUp { YES } else { NO - }; + } } } diff --git a/crates/gpui2/src/scene.rs b/crates/gpui2/src/scene.rs index 03d557b84d..e922c11f53 100644 --- a/crates/gpui2/src/scene.rs +++ b/crates/gpui2/src/scene.rs @@ -14,6 +14,7 @@ pub type LayerId = u32; pub type DrawOrder = u32; +#[derive(Default)] pub(crate) struct SceneBuilder { last_order: Option<(StackingOrder, LayerId)>, layers_by_order: BTreeMap, @@ -26,22 +27,6 @@ pub(crate) struct SceneBuilder { surfaces: Vec, } -impl Default for SceneBuilder { - fn default() -> Self { - SceneBuilder { - last_order: None, - layers_by_order: BTreeMap::new(), - shadows: Vec::new(), - quads: Vec::new(), - paths: Vec::new(), - underlines: Vec::new(), - monochrome_sprites: Vec::new(), - polychrome_sprites: Vec::new(), - surfaces: Vec::new(), - } - } -} - impl SceneBuilder { pub fn build(&mut self) -> Scene { let mut orders = vec![0; self.layers_by_order.len()]; diff --git a/crates/gpui2/src/shared_string.rs b/crates/gpui2/src/shared_string.rs index c19d439e31..97db4bd191 100644 --- a/crates/gpui2/src/shared_string.rs +++ b/crates/gpui2/src/shared_string.rs @@ -60,9 +60,9 @@ impl<'a> PartialEq<&'a str> for SharedString { } } -impl Into> for SharedString { - fn into(self) -> Arc { - match self.0 { +impl From for Arc { + fn from(val: SharedString) -> Self { + match val.0 { ArcCow::Borrowed(borrowed) => Arc::from(borrowed), ArcCow::Owned(owned) => owned.clone(), } @@ -75,9 +75,9 @@ impl>> From for SharedString { } } -impl Into for SharedString { - fn into(self) -> String { - self.0.to_string() +impl From for String { + fn from(val: SharedString) -> Self { + val.0.to_string() } } diff --git a/crates/gpui2/src/style.rs b/crates/gpui2/src/style.rs index c281818c0f..7e9504d434 100644 --- a/crates/gpui2/src/style.rs +++ b/crates/gpui2/src/style.rs @@ -210,7 +210,7 @@ impl TextStyle { pub fn font(&self) -> Font { Font { family: self.font_family.clone(), - features: self.font_features.clone(), + features: self.font_features, weight: self.font_weight, style: self.font_style, } @@ -232,7 +232,7 @@ impl TextStyle { }, color: self.color, background_color: self.background_color, - underline: self.underline.clone(), + underline: self.underline, } } } @@ -386,12 +386,14 @@ impl Style { let background_color = self.background.as_ref().and_then(Fill::color); if background_color.map_or(false, |color| !color.is_transparent()) { cx.with_z_index(1, |cx| { + let mut border_color = background_color.unwrap_or_default(); + border_color.a = 0.; cx.paint_quad(quad( bounds, self.corner_radii.to_pixels(bounds.size, rem_size), background_color.unwrap_or_default(), Edges::default(), - Hsla::transparent_black(), + border_color, )); }); } @@ -426,10 +428,12 @@ impl Style { bottom_bounds.upper_right(), ); + let mut background = self.border_color.unwrap_or_default(); + background.a = 0.; let quad = quad( bounds, corner_radii, - Hsla::transparent_black(), + background, border_widths, self.border_color.unwrap_or_default(), ); @@ -570,7 +574,7 @@ impl From<&TextStyle> for HighlightStyle { font_weight: Some(other.font_weight), font_style: Some(other.font_style), background_color: other.background_color, - underline: other.underline.clone(), + underline: other.underline, fade_out: None, } } diff --git a/crates/gpui2/src/subscription.rs b/crates/gpui2/src/subscription.rs index 867c83fcbb..b56c9a1ccd 100644 --- a/crates/gpui2/src/subscription.rs +++ b/crates/gpui2/src/subscription.rs @@ -53,7 +53,7 @@ where lock.subscribers .entry(emitter_key.clone()) .or_default() - .get_or_insert_with(|| Default::default()) + .get_or_insert_with(Default::default) .insert( subscriber_id, Subscriber { @@ -90,7 +90,7 @@ where } pub fn remove(&self, emitter: &EmitterKey) -> impl IntoIterator { - let subscribers = self.0.lock().subscribers.remove(&emitter); + let subscribers = self.0.lock().subscribers.remove(emitter); subscribers .unwrap_or_default() .map(|s| s.into_values()) @@ -131,7 +131,7 @@ where let mut lock = self.0.lock(); // Add any new subscribers that were added while invoking the callback. - if let Some(Some(new_subscribers)) = lock.subscribers.remove(&emitter) { + if let Some(Some(new_subscribers)) = lock.subscribers.remove(emitter) { subscribers.extend(new_subscribers); } diff --git a/crates/gpui2/src/taffy.rs b/crates/gpui2/src/taffy.rs index 88fb8e8814..0ebd394217 100644 --- a/crates/gpui2/src/taffy.rs +++ b/crates/gpui2/src/taffy.rs @@ -29,8 +29,7 @@ pub struct TaffyLayoutEngine { >, } -static EXPECT_MESSAGE: &'static str = - "we should avoid taffy layout errors by construction if possible"; +static EXPECT_MESSAGE: &str = "we should avoid taffy layout errors by construction if possible"; impl TaffyLayoutEngine { pub fn new() -> Self { @@ -246,7 +245,7 @@ impl ToTaffy for Style { fn to_taffy(&self, rem_size: Pixels) -> taffy::style::Style { taffy::style::Style { display: self.display, - overflow: self.overflow.clone().into(), + overflow: self.overflow.into(), scrollbar_width: self.scrollbar_width, position: self.position, inset: self.inset.to_taffy(rem_size), @@ -378,14 +377,14 @@ where } } -impl Into> for Point +impl From> for TaffyPoint where T: Into + Clone + Default + Debug, { - fn into(self) -> TaffyPoint { + fn from(val: Point) -> Self { TaffyPoint { - x: self.x.into(), - y: self.y.into(), + x: val.x.into(), + y: val.y.into(), } } } @@ -396,8 +395,8 @@ where { fn to_taffy(&self, rem_size: Pixels) -> TaffySize { TaffySize { - width: self.width.to_taffy(rem_size).into(), - height: self.height.to_taffy(rem_size).into(), + width: self.width.to_taffy(rem_size), + height: self.height.to_taffy(rem_size), } } } @@ -408,10 +407,10 @@ where { fn to_taffy(&self, rem_size: Pixels) -> TaffyRect { TaffyRect { - top: self.top.to_taffy(rem_size).into(), - right: self.right.to_taffy(rem_size).into(), - bottom: self.bottom.to_taffy(rem_size).into(), - left: self.left.to_taffy(rem_size).into(), + top: self.top.to_taffy(rem_size), + right: self.right.to_taffy(rem_size), + bottom: self.bottom.to_taffy(rem_size), + left: self.left.to_taffy(rem_size), } } } diff --git a/crates/gpui2/src/text_system.rs b/crates/gpui2/src/text_system.rs index ad82c41082..944a9b78be 100644 --- a/crates/gpui2/src/text_system.rs +++ b/crates/gpui2/src/text_system.rs @@ -106,7 +106,7 @@ impl TextSystem { } pub fn units_per_em(&self, font_id: FontId) -> u32 { - self.read_metrics(font_id, |metrics| metrics.units_per_em as u32) + self.read_metrics(font_id, |metrics| metrics.units_per_em) } pub fn cap_height(&self, font_id: FontId, font_size: Pixels) -> Pixels { @@ -174,7 +174,7 @@ impl TextSystem { let layout = self .line_layout_cache - .layout_line(&text, font_size, &font_runs); + .layout_line(text, font_size, &font_runs); font_runs.clear(); self.font_runs_pool.lock().push(font_runs); @@ -208,7 +208,7 @@ impl TextSystem { len: run.len as u32, color: run.color, background_color: run.background_color, - underline: run.underline.clone(), + underline: run.underline, }); } @@ -268,7 +268,7 @@ impl TextSystem { len: run_len_within_line as u32, color: run.color, background_color: run.background_color, - underline: run.underline.clone(), + underline: run.underline, }); } @@ -287,7 +287,7 @@ impl TextSystem { lines.push(WrappedLine { layout, decoration_runs, - text: SharedString::from(line_text), + text: line_text, }); // Skip `\n` character. @@ -338,7 +338,7 @@ impl TextSystem { pub fn raster_bounds(&self, params: &RenderGlyphParams) -> Result> { let raster_bounds = self.raster_bounds.upgradable_read(); if let Some(bounds) = raster_bounds.get(params) { - Ok(bounds.clone()) + Ok(*bounds) } else { let mut raster_bounds = RwLockUpgradableReadGuard::upgrade(raster_bounds); let bounds = self.platform_text_system.glyph_raster_bounds(params)?; @@ -374,7 +374,7 @@ impl Drop for LineWrapperHandle { let wrapper = self.wrapper.take().unwrap(); state .get_mut(&FontIdWithSize { - font_id: wrapper.font_id.clone(), + font_id: wrapper.font_id, font_size: wrapper.font_size, }) .unwrap() @@ -438,9 +438,10 @@ impl FontWeight { } /// Allows italic or oblique faces to be selected. -#[derive(Clone, Copy, Eq, PartialEq, Debug, Hash)] +#[derive(Clone, Copy, Eq, PartialEq, Debug, Hash, Default)] pub enum FontStyle { /// A face that is neither italic not obliqued. + #[default] Normal, /// A form that is generally cursive in nature. Italic, @@ -448,12 +449,6 @@ pub enum FontStyle { Oblique, } -impl Default for FontStyle { - fn default() -> FontStyle { - FontStyle::Normal - } -} - impl Display for FontStyle { fn fmt(&self, f: &mut Formatter) -> fmt::Result { Debug::fmt(self, f) diff --git a/crates/gpui2/src/text_system/line_wrapper.rs b/crates/gpui2/src/text_system/line_wrapper.rs index 99950fbe10..e2f0a8a5fd 100644 --- a/crates/gpui2/src/text_system/line_wrapper.rs +++ b/crates/gpui2/src/text_system/line_wrapper.rs @@ -97,14 +97,12 @@ impl LineWrapper { self.cached_ascii_char_widths[c as usize] = Some(width); width } + } else if let Some(cached_width) = self.cached_other_char_widths.get(&c) { + *cached_width } else { - if let Some(cached_width) = self.cached_other_char_widths.get(&c) { - *cached_width - } else { - let width = self.compute_width_for_char(c); - self.cached_other_char_widths.insert(c, width); - width - } + let width = self.compute_width_for_char(c); + self.cached_other_char_widths.insert(c, width); + width } } diff --git a/crates/gpui2/src/view.rs b/crates/gpui2/src/view.rs index 64959cd1d4..6b9b452cbb 100644 --- a/crates/gpui2/src/view.rs +++ b/crates/gpui2/src/view.rs @@ -221,7 +221,7 @@ impl From> for AnyView { AnyView { model: value.model.into_any(), layout: any_view::layout::, - paint: any_view::paint::, + paint: any_view::paint, } } } @@ -243,7 +243,7 @@ impl Element for AnyView { state.is_some(), "state is None. Did you include an AnyView twice in the tree?" ); - (self.paint)(&self, state.as_mut().unwrap(), cx) + (self.paint)(self, state.as_mut().unwrap(), cx) } } @@ -293,7 +293,7 @@ impl From> for AnyWeakView { Self { model: view.model.into(), layout: any_view::layout::, - paint: any_view::paint::, + paint: any_view::paint, } } } @@ -325,11 +325,7 @@ mod any_view { (layout_id, element) } - pub(crate) fn paint( - _view: &AnyView, - element: &mut AnyElement, - cx: &mut WindowContext, - ) { + pub(crate) fn paint(_view: &AnyView, element: &mut AnyElement, cx: &mut WindowContext) { element.paint(cx); } } diff --git a/crates/gpui2/src/window.rs b/crates/gpui2/src/window.rs index 9fdcd87139..7b6541c937 100644 --- a/crates/gpui2/src/window.rs +++ b/crates/gpui2/src/window.rs @@ -26,6 +26,7 @@ use std::{ any::{Any, TypeId}, borrow::{Borrow, BorrowMut, Cow}, cell::RefCell, + collections::hash_map::Entry, fmt::Debug, future::Future, hash::{Hash, Hasher}, @@ -403,7 +404,7 @@ impl Window { element_id_stack: GlobalElementId::default(), rendered_frame: Frame::new(DispatchTree::new(cx.keymap.clone(), cx.actions.clone())), next_frame: Frame::new(DispatchTree::new(cx.keymap.clone(), cx.actions.clone())), - frame_arena: Arena::new(1 * 1024 * 1024), + frame_arena: Arena::new(1024 * 1024), focus_handles: Arc::new(RwLock::new(SlotMap::with_key())), focus_listeners: SubscriberSet::new(), blur_listeners: SubscriberSet::new(), @@ -637,7 +638,8 @@ impl<'a> WindowContext<'a> { let handle = self.window.handle; let display_id = self.window.display_id; - if !self.frame_consumers.contains_key(&display_id) { + let mut frame_consumers = std::mem::take(&mut self.app.frame_consumers); + if let Entry::Vacant(e) = frame_consumers.entry(display_id) { let (tx, mut rx) = mpsc::unbounded::<()>(); self.platform.set_display_link_output_callback( display_id, @@ -669,8 +671,10 @@ impl<'a> WindowContext<'a> { .ok(); } }); - self.frame_consumers.insert(display_id, consumer_task); + e.insert(consumer_task); } + debug_assert!(self.app.frame_consumers.is_empty()); + self.app.frame_consumers = frame_consumers; if self.next_frame_callbacks.is_empty() { self.platform.start_display_link(display_id); @@ -718,7 +722,7 @@ impl<'a> WindowContext<'a> { children: impl IntoIterator, ) -> LayoutId { self.app.layout_id_buffer.clear(); - self.app.layout_id_buffer.extend(children.into_iter()); + self.app.layout_id_buffer.extend(children); let rem_size = self.rem_size(); self.window.layout_engine.as_mut().unwrap().request_layout( @@ -844,7 +848,7 @@ impl<'a> WindowContext<'a> { let text_style = self.text_style(); text_style .line_height - .to_pixels(text_style.font_size.into(), rem_size) + .to_pixels(text_style.font_size, rem_size) } /// Call to prevent the default action of an event. Currently only used to prevent @@ -966,7 +970,7 @@ impl<'a> WindowContext<'a> { pub fn add_opaque_layer(&mut self, bounds: Bounds) { let stacking_order = self.window.next_frame.z_index_stack.clone(); let depth_map = &mut self.window.next_frame.depth_map; - match depth_map.binary_search_by(|(level, _)| stacking_order.cmp(&level)) { + match depth_map.binary_search_by(|(level, _)| stacking_order.cmp(level)) { Ok(i) | Err(i) => depth_map.insert(i, (stacking_order, bounds)), } } @@ -1886,7 +1890,7 @@ impl Context for WindowContext<'_> { T: 'static, { let entity = self.entities.read(handle); - read(&*entity, &*self.app) + read(entity, &*self.app) } fn read_window( @@ -1946,7 +1950,7 @@ impl VisualContext for WindowContext<'_> { update: impl FnOnce(&mut T, &mut ViewContext<'_, T>) -> R, ) -> Self::Result { let mut lease = self.app.entities.lease(&view.model); - let mut cx = ViewContext::new(&mut *self.app, &mut *self.window, &view); + let mut cx = ViewContext::new(&mut *self.app, &mut *self.window, view); let result = update(&mut *lease, &mut cx); cx.app.entities.end_lease(lease); result @@ -1983,25 +1987,25 @@ impl<'a> std::ops::Deref for WindowContext<'a> { type Target = AppContext; fn deref(&self) -> &Self::Target { - &self.app + self.app } } impl<'a> std::ops::DerefMut for WindowContext<'a> { fn deref_mut(&mut self) -> &mut Self::Target { - &mut self.app + self.app } } impl<'a> Borrow for WindowContext<'a> { fn borrow(&self) -> &AppContext { - &self.app + self.app } } impl<'a> BorrowMut for WindowContext<'a> { fn borrow_mut(&mut self) -> &mut AppContext { - &mut self.app + self.app } } @@ -2033,7 +2037,7 @@ pub trait BorrowWindow: BorrowMut + BorrowMut { ) -> R { if let Some(id) = id.map(Into::into) { let window = self.window_mut(); - window.element_id_stack.push(id.into()); + window.element_id_stack.push(id); let result = f(self); let window: &mut Window = self.borrow_mut(); window.element_id_stack.pop(); @@ -2255,13 +2259,13 @@ pub trait BorrowWindow: BorrowMut + BorrowMut { impl Borrow for WindowContext<'_> { fn borrow(&self) -> &Window { - &self.window + self.window } } impl BorrowMut for WindowContext<'_> { fn borrow_mut(&mut self) -> &mut Window { - &mut self.window + self.window } } @@ -2915,10 +2919,7 @@ impl Copy for WindowHandle {} impl Clone for WindowHandle { fn clone(&self) -> Self { - WindowHandle { - any_handle: self.any_handle, - state_type: PhantomData, - } + *self } } @@ -2936,9 +2937,9 @@ impl Hash for WindowHandle { } } -impl Into for WindowHandle { - fn into(self) -> AnyWindowHandle { - self.any_handle +impl From> for AnyWindowHandle { + fn from(val: WindowHandle) -> Self { + val.any_handle } } diff --git a/crates/gpui2_macros/src/style_helpers.rs b/crates/gpui2_macros/src/style_helpers.rs index 181311807c..b86bb2dfa6 100644 --- a/crates/gpui2_macros/src/style_helpers.rs +++ b/crates/gpui2_macros/src/style_helpers.rs @@ -102,7 +102,7 @@ fn generate_methods() -> Vec { fn generate_predefined_setter( name: &'static str, length: &'static str, - fields: &Vec, + fields: &[TokenStream2], length_tokens: &TokenStream2, negate: bool, doc_string: &str, @@ -143,12 +143,12 @@ fn generate_predefined_setter( fn generate_custom_value_setter( prefix: &'static str, length_type: TokenStream2, - fields: &Vec, + fields: &[TokenStream2], doc_string: &str, ) -> TokenStream2 { let method_name = format_ident!("{}", prefix); - let mut iter = fields.into_iter(); + let mut iter = fields.iter(); let last = iter.next_back().unwrap(); let field_assignments = iter .map(|field_tokens| { diff --git a/crates/media/src/media.rs b/crates/media/src/media.rs index 1c76e6befb..650af06c37 100644 --- a/crates/media/src/media.rs +++ b/crates/media/src/media.rs @@ -108,25 +108,23 @@ pub mod core_video { impl_CFTypeDescription!(CVMetalTextureCache); impl CVMetalTextureCache { - pub fn new(metal_device: *mut MTLDevice) -> Result { - unsafe { - let mut this = ptr::null(); - let result = CVMetalTextureCacheCreate( - kCFAllocatorDefault, - ptr::null(), - metal_device, - ptr::null(), - &mut this, - ); - if result == kCVReturnSuccess { - Ok(CVMetalTextureCache::wrap_under_create_rule(this)) - } else { - Err(anyhow!("could not create texture cache, code: {}", result)) - } + pub unsafe fn new(metal_device: *mut MTLDevice) -> Result { + let mut this = ptr::null(); + let result = CVMetalTextureCacheCreate( + kCFAllocatorDefault, + ptr::null(), + metal_device, + ptr::null(), + &mut this, + ); + if result == kCVReturnSuccess { + Ok(CVMetalTextureCache::wrap_under_create_rule(this)) + } else { + Err(anyhow!("could not create texture cache, code: {}", result)) } } - pub fn create_texture_from_image( + pub unsafe fn create_texture_from_image( &self, source: CVImageBufferRef, texture_attributes: CFDictionaryRef, @@ -135,24 +133,22 @@ pub mod core_video { height: usize, plane_index: usize, ) -> Result { - unsafe { - let mut this = ptr::null(); - let result = CVMetalTextureCacheCreateTextureFromImage( - kCFAllocatorDefault, - self.as_concrete_TypeRef(), - source, - texture_attributes, - pixel_format, - width, - height, - plane_index, - &mut this, - ); - if result == kCVReturnSuccess { - Ok(CVMetalTexture::wrap_under_create_rule(this)) - } else { - Err(anyhow!("could not create texture, code: {}", result)) - } + let mut this = ptr::null(); + let result = CVMetalTextureCacheCreateTextureFromImage( + kCFAllocatorDefault, + self.as_concrete_TypeRef(), + source, + texture_attributes, + pixel_format, + width, + height, + plane_index, + &mut this, + ); + if result == kCVReturnSuccess { + Ok(CVMetalTexture::wrap_under_create_rule(this)) + } else { + Err(anyhow!("could not create texture, code: {}", result)) } } } @@ -438,60 +434,56 @@ pub mod video_toolbox { impl_CFTypeDescription!(VTCompressionSession); impl VTCompressionSession { - pub fn new( + pub unsafe fn new( width: usize, height: usize, codec: CMVideoCodecType, callback: VTCompressionOutputCallback, callback_data: *const c_void, ) -> Result { - unsafe { - let mut this = ptr::null(); - let result = VTCompressionSessionCreate( - ptr::null(), - width as i32, - height as i32, - codec, - ptr::null(), - ptr::null(), - ptr::null(), - callback, - callback_data, - &mut this, - ); + let mut this = ptr::null(); + let result = VTCompressionSessionCreate( + ptr::null(), + width as i32, + height as i32, + codec, + ptr::null(), + ptr::null(), + ptr::null(), + callback, + callback_data, + &mut this, + ); - if result == 0 { - Ok(Self::wrap_under_create_rule(this)) - } else { - Err(anyhow!( - "error creating compression session, code {}", - result - )) - } + if result == 0 { + Ok(Self::wrap_under_create_rule(this)) + } else { + Err(anyhow!( + "error creating compression session, code {}", + result + )) } } - pub fn encode_frame( + pub unsafe fn encode_frame( &self, buffer: CVImageBufferRef, presentation_timestamp: CMTime, duration: CMTime, ) -> Result<()> { - unsafe { - let result = VTCompressionSessionEncodeFrame( - self.as_concrete_TypeRef(), - buffer, - presentation_timestamp, - duration, - ptr::null(), - ptr::null(), - ptr::null_mut(), - ); - if result == 0 { - Ok(()) - } else { - Err(anyhow!("error encoding frame, code {}", result)) - } + let result = VTCompressionSessionEncodeFrame( + self.as_concrete_TypeRef(), + buffer, + presentation_timestamp, + duration, + ptr::null(), + ptr::null(), + ptr::null_mut(), + ); + if result == 0 { + Ok(()) + } else { + Err(anyhow!("error encoding frame, code {}", result)) } } } diff --git a/crates/project_panel2/src/project_panel.rs b/crates/project_panel2/src/project_panel.rs index 7ac9006c87..8ab364e0c1 100644 --- a/crates/project_panel2/src/project_panel.rs +++ b/crates/project_panel2/src/project_panel.rs @@ -1612,6 +1612,10 @@ impl Panel for ProjectPanel { Some(ui::Icon::FileTree) } + fn icon_tooltip(&self, _cx: &WindowContext) -> Option<&'static str> { + Some("Project Panel") + } + fn toggle_action(&self) -> Box { Box::new(ToggleFocus) } diff --git a/crates/refineable/derive_refineable/src/derive_refineable.rs b/crates/refineable/derive_refineable/src/derive_refineable.rs index 15293d866a..ad7678b58f 100644 --- a/crates/refineable/derive_refineable/src/derive_refineable.rs +++ b/crates/refineable/derive_refineable/src/derive_refineable.rs @@ -85,9 +85,7 @@ pub fn derive_refineable(input: TokenStream) -> TokenStream { // Append to where_clause or create a new one if it doesn't exist let where_clause = match where_clause.cloned() { Some(mut where_clause) => { - where_clause - .predicates - .extend(type_param_bounds.into_iter()); + where_clause.predicates.extend(type_param_bounds); where_clause.clone() } None => WhereClause { diff --git a/crates/refineable/src/refineable.rs b/crates/refineable/src/refineable.rs index b588b5b9d8..93e2e40ac6 100644 --- a/crates/refineable/src/refineable.rs +++ b/crates/refineable/src/refineable.rs @@ -27,7 +27,7 @@ pub struct CascadeSlot(usize); impl Cascade { pub fn reserve(&mut self) -> CascadeSlot { self.0.push(None); - return CascadeSlot(self.0.len() - 1); + CascadeSlot(self.0.len() - 1) } pub fn base(&mut self) -> &mut S::Refinement { @@ -40,10 +40,8 @@ impl Cascade { pub fn merged(&self) -> S::Refinement { let mut merged = self.0[0].clone().unwrap(); - for refinement in self.0.iter().skip(1) { - if let Some(refinement) = refinement { - merged.refine(refinement); - } + for refinement in self.0.iter().skip(1).flatten() { + merged.refine(refinement); } merged } diff --git a/crates/rope2/src/rope2.rs b/crates/rope2/src/rope2.rs index 4cea1d4759..adfcd19a6c 100644 --- a/crates/rope2/src/rope2.rs +++ b/crates/rope2/src/rope2.rs @@ -906,7 +906,7 @@ impl Chunk { fn clip_offset_utf16(&self, target: OffsetUtf16, bias: Bias) -> OffsetUtf16 { let mut code_units = self.0.encode_utf16(); - let mut offset = code_units.by_ref().take(target.0 as usize).count(); + let mut offset = code_units.by_ref().take(target.0).count(); if char::decode_utf16(code_units).next().transpose().is_err() { match bias { Bias::Left => offset -= 1, diff --git a/crates/sqlez/src/migrations.rs b/crates/sqlez/src/migrations.rs index b8e589e268..c0d125d4df 100644 --- a/crates/sqlez/src/migrations.rs +++ b/crates/sqlez/src/migrations.rs @@ -20,8 +20,8 @@ impl Connection { self.sqlite3, sql_str.as_c_str().as_ptr(), None, - 0 as *mut _, - 0 as *mut _, + std::ptr::null_mut(), + std::ptr::null_mut(), ); } self.last_error() @@ -59,10 +59,10 @@ impl Connection { if completed_migration != migration { return Err(anyhow!(formatdoc! {" Migration changed for {} at step {} - + Stored migration: {} - + Proposed migration: {}", domain, index, completed_migration, migration})); } else { diff --git a/crates/sqlez/src/statement.rs b/crates/sqlez/src/statement.rs index de0ad626a5..122b6d0c58 100644 --- a/crates/sqlez/src/statement.rs +++ b/crates/sqlez/src/statement.rs @@ -232,13 +232,13 @@ impl<'a> Statement<'a> { .last_error() .with_context(|| format!("Failed to read text length at {index}"))?; - let slice = unsafe { slice::from_raw_parts(pointer as *const u8, len) }; + let slice = unsafe { slice::from_raw_parts(pointer, len) }; Ok(str::from_utf8(slice)?) } pub fn bind(&self, value: &T, index: i32) -> Result { debug_assert!(index > 0); - Ok(value.bind(self, index)?) + value.bind(self, index) } pub fn column(&mut self) -> Result { diff --git a/crates/sqlez/src/thread_safe_connection.rs b/crates/sqlez/src/thread_safe_connection.rs index 54241b6d72..98402df108 100644 --- a/crates/sqlez/src/thread_safe_connection.rs +++ b/crates/sqlez/src/thread_safe_connection.rs @@ -10,14 +10,14 @@ use crate::{connection::Connection, domain::Migrator, util::UnboundedSyncSender} const MIGRATION_RETRIES: usize = 10; type QueuedWrite = Box; -type WriteQueueConstructor = - Box Box>; +type WriteQueue = Box; +type WriteQueueConstructor = Box WriteQueue>; lazy_static! { /// List of queues of tasks by database uri. This lets us serialize writes to the database /// and have a single worker thread per db file. This means many thread safe connections /// (possibly with different migrations) could all be communicating with the same background /// thread. - static ref QUEUES: RwLock, Box>> = + static ref QUEUES: RwLock, WriteQueue>> = Default::default(); } diff --git a/crates/sum_tree/src/tree_map.rs b/crates/sum_tree/src/tree_map.rs index edb9010e50..f39e3ed19a 100644 --- a/crates/sum_tree/src/tree_map.rs +++ b/crates/sum_tree/src/tree_map.rs @@ -40,7 +40,7 @@ impl TreeMap { self.0.is_empty() } - pub fn get<'a>(&self, key: &'a K) -> Option<&V> { + pub fn get(&self, key: &K) -> Option<&V> { let mut cursor = self.0.cursor::>(); cursor.seek(&MapKeyRef(Some(key)), Bias::Left, &()); if let Some(item) = cursor.item() { @@ -98,9 +98,7 @@ impl TreeMap { let from_key = MapKeyRef(Some(from)); cursor.seek(&from_key, Bias::Left, &()); - cursor - .into_iter() - .map(|map_entry| (&map_entry.key, &map_entry.value)) + cursor.map(|map_entry| (&map_entry.key, &map_entry.value)) } pub fn update(&mut self, key: &K, f: F) -> Option diff --git a/crates/terminal_view2/src/terminal_panel.rs b/crates/terminal_view2/src/terminal_panel.rs index 0b1f19126e..9e193e83b7 100644 --- a/crates/terminal_view2/src/terminal_panel.rs +++ b/crates/terminal_view2/src/terminal_panel.rs @@ -419,6 +419,10 @@ impl Panel for TerminalPanel { Some(Icon::Terminal) } + fn icon_tooltip(&self, _cx: &WindowContext) -> Option<&'static str> { + Some("Terminal Panel") + } + fn toggle_action(&self) -> Box { Box::new(ToggleFocus) } diff --git a/crates/text2/src/locator.rs b/crates/text2/src/locator.rs index 07b73ace05..0fb2fa5d16 100644 --- a/crates/text2/src/locator.rs +++ b/crates/text2/src/locator.rs @@ -20,11 +20,11 @@ impl Locator { } pub fn min_ref() -> &'static Self { - &*MIN + &MIN } pub fn max_ref() -> &'static Self { - &*MAX + &MAX } pub fn assign(&mut self, other: &Self) { diff --git a/crates/text2/src/subscription.rs b/crates/text2/src/subscription.rs index b636dfcc92..878e8a2cfe 100644 --- a/crates/text2/src/subscription.rs +++ b/crates/text2/src/subscription.rs @@ -18,7 +18,7 @@ impl Topic { } pub fn publish(&self, edits: impl Clone + IntoIterator>) { - publish(&mut *self.0.lock(), edits); + publish(&mut self.0.lock(), edits); } pub fn publish_mut(&mut self, edits: impl Clone + IntoIterator>) { diff --git a/crates/text2/src/text2.rs b/crates/text2/src/text2.rs index b615d58c22..fd23d3dca4 100644 --- a/crates/text2/src/text2.rs +++ b/crates/text2/src/text2.rs @@ -2652,7 +2652,7 @@ impl LineEnding { max_ix -= 1; } - if let Some(ix) = text[..max_ix].find(&['\n']) { + if let Some(ix) = text[..max_ix].find(['\n']) { if ix > 0 && text.as_bytes()[ix - 1] == b'\r' { Self::Windows } else { diff --git a/crates/theme/src/theme.rs b/crates/theme/src/theme.rs index e4b8c02eca..766cf70800 100644 --- a/crates/theme/src/theme.rs +++ b/crates/theme/src/theme.rs @@ -8,7 +8,7 @@ use components::{ }; use gpui::{ color::Color, - elements::{Border, ContainerStyle, ImageStyle, LabelStyle, Shadow, SvgStyle, TooltipStyle}, + elements::{Border, ContainerStyle, ImageStyle, LabelStyle, SvgStyle, TooltipStyle}, fonts::{HighlightStyle, TextStyle}, platform, AppContext, AssetSource, MouseState, }; @@ -1276,15 +1276,9 @@ pub struct WelcomeStyle { pub struct ColorScheme { pub name: String, pub is_light: bool, - pub ramps: RampSet, pub lowest: Layer, pub middle: Layer, pub highest: Layer, - - pub popover_shadow: Shadow, - pub modal_shadow: Shadow, - - pub players: Vec, } #[derive(Clone, Deserialize, Default, JsonSchema)] diff --git a/crates/theme2/src/default_colors.rs b/crates/theme2/src/default_colors.rs index 8150015311..8cbfc23fa3 100644 --- a/crates/theme2/src/default_colors.rs +++ b/crates/theme2/src/default_colors.rs @@ -13,91 +13,82 @@ impl ThemeColors { let system = SystemColors::default(); Self { - background: neutral().light().step_1(), border: neutral().light().step_6(), - border_disabled: neutral().light().step_3(), + border_variant: neutral().light().step_5(), border_focused: blue().light().step_5(), border_selected: blue().light().step_5(), border_transparent: system.transparent, - border_variant: neutral().light().step_5(), - code_block_background: gpui::transparent_black(), - code_block_border: gpui::transparent_black(), - drop_target_background: blue().light_alpha().step_2(), - editor_active_line_background: neutral().light_alpha().step_3(), - editor_active_line_number: neutral().light().step_11(), - editor_active_wrap_guide: neutral().light_alpha().step_8(), // todo!("pick the right colors") - editor_foreground: neutral().light().step_12(), - editor_background: neutral().light().step_1(), - editor_document_highlight_read_background: neutral().light_alpha().step_3(), // todo!("pick the right colors") - editor_document_highlight_write_background: neutral().light_alpha().step_4(), // todo!("pick the right colors") - editor_gutter_background: neutral().light().step_1(), // todo!("pick the right colors") - editor_highlighted_line_background: neutral().light_alpha().step_3(), - editor_invisible: neutral().light().step_10(), - editor_line_number: neutral().light().step_10(), - editor_subheader_background: neutral().light().step_2(), - editor_wrap_guide: neutral().light_alpha().step_7(), - element_active: neutral().light_alpha().step_5(), - element_background: neutral().light().step_3(), - element_disabled: neutral().light_alpha().step_3(), - element_hover: neutral().light_alpha().step_4(), - element_selected: neutral().light_alpha().step_5(), + border_disabled: neutral().light().step_3(), elevated_surface_background: neutral().light().step_2(), - emphasis: neutral().light().step_12(), - ghost_element_active: neutral().light_alpha().step_4(), - ghost_element_background: system.transparent, - ghost_element_disabled: neutral().light_alpha().step_3(), - ghost_element_hover: neutral().light_alpha().step_3(), - ghost_element_selected: neutral().light_alpha().step_5(), - headline: blue().light().step_9(), - icon: neutral().light().step_11(), - icon_accent: blue().light().step_11(), - icon_disabled: neutral().light().step_9(), - icon_muted: neutral().light().step_10(), - icon_placeholder: neutral().light().step_10(), - inline_code_background: gpui::transparent_black(), - inline_code_border: gpui::transparent_black(), - link_text: orange().light().step_9(), - link_text_hover: orange().light().step_10(), - link_uri: green().light().step_9(), - pane_focused_border: blue().light().step_5(), - panel_background: neutral().light().step_2(), - panel_focused_border: blue().light().step_5(), - paragraph: neutral().light().step_12(), - scrollbar_thumb_background: neutral().light_alpha().step_3(), - scrollbar_thumb_border: gpui::transparent_black(), - scrollbar_thumb_hover_background: neutral().light_alpha().step_4(), - scrollbar_track_background: gpui::transparent_black(), - scrollbar_track_border: neutral().light().step_5(), - search_match_background: neutral().light().step_2(), // todo!(this was inserted by Mikayla) - status_bar_background: neutral().light().step_2(), surface_background: neutral().light().step_2(), - tab_active_background: neutral().light().step_1(), - tab_bar_background: neutral().light().step_2(), - tab_inactive_background: neutral().light().step_2(), - terminal_ansi_black: black().light().step_12(), - terminal_ansi_blue: blue().light().step_11(), - terminal_ansi_bright_black: black().light().step_11(), - terminal_ansi_bright_blue: blue().light().step_10(), - terminal_ansi_bright_cyan: cyan().light().step_10(), - terminal_ansi_bright_green: green().light().step_10(), - terminal_ansi_bright_magenta: violet().light().step_10(), - terminal_ansi_bright_red: red().light().step_10(), - terminal_ansi_bright_white: neutral().light().step_11(), - terminal_ansi_bright_yellow: yellow().light().step_10(), - terminal_ansi_cyan: cyan().light().step_11(), - terminal_ansi_green: green().light().step_11(), - terminal_ansi_magenta: violet().light().step_11(), - terminal_ansi_red: red().light().step_11(), - terminal_ansi_white: neutral().light().step_12(), - terminal_ansi_yellow: yellow().light().step_11(), - terminal_background: neutral().light().step_1(), + background: neutral().light().step_1(), + element_background: neutral().light().step_3(), + element_hover: neutral().light_alpha().step_4(), // todo!("pick the right colors") + element_active: neutral().light_alpha().step_5(), + element_selected: neutral().light_alpha().step_5(), + element_disabled: neutral().light_alpha().step_3(), // todo!("pick the right colors") + drop_target_background: blue().light_alpha().step_2(), // todo!("pick the right colors") + ghost_element_background: system.transparent, // todo!("pick the right colors") + ghost_element_hover: neutral().light_alpha().step_3(), + ghost_element_active: neutral().light_alpha().step_4(), + ghost_element_selected: neutral().light_alpha().step_5(), + ghost_element_disabled: neutral().light_alpha().step_3(), text: neutral().light().step_12(), - text_accent: blue().light().step_11(), - text_disabled: neutral().light().step_9(), text_muted: neutral().light().step_10(), text_placeholder: neutral().light().step_10(), + text_disabled: neutral().light().step_9(), + text_accent: blue().light().step_11(), + icon: neutral().light().step_11(), + icon_muted: neutral().light().step_10(), + icon_disabled: neutral().light().step_9(), + icon_placeholder: neutral().light().step_10(), + icon_accent: blue().light().step_11(), + status_bar_background: neutral().light().step_2(), title_bar_background: neutral().light().step_2(), toolbar_background: neutral().light().step_1(), + tab_bar_background: neutral().light().step_2(), + tab_inactive_background: neutral().light().step_2(), + tab_active_background: neutral().light().step_1(), + search_match_background: neutral().light().step_2(), + panel_background: neutral().light().step_2(), + panel_focused_border: blue().light().step_5(), + pane_focused_border: blue().light().step_5(), + scrollbar_thumb_background: neutral().light_alpha().step_3(), + scrollbar_thumb_hover_background: neutral().light_alpha().step_4(), + scrollbar_thumb_border: gpui::transparent_black(), + scrollbar_track_background: gpui::transparent_black(), + scrollbar_track_border: neutral().light().step_5(), + editor_foreground: neutral().light().step_12(), + editor_background: neutral().light().step_1(), // todo!(this was inserted by Mikayla) + editor_gutter_background: neutral().light().step_1(), + editor_subheader_background: neutral().light().step_2(), + editor_active_line_background: neutral().light_alpha().step_3(), + editor_highlighted_line_background: neutral().light_alpha().step_3(), + editor_line_number: neutral().light().step_10(), + editor_active_line_number: neutral().light().step_11(), + editor_invisible: neutral().light().step_10(), + editor_wrap_guide: neutral().light_alpha().step_7(), + editor_active_wrap_guide: neutral().light_alpha().step_8(), + editor_document_highlight_read_background: neutral().light_alpha().step_3(), + editor_document_highlight_write_background: neutral().light_alpha().step_4(), + terminal_background: neutral().light().step_1(), + terminal_ansi_bright_black: black().light().step_11(), + terminal_ansi_bright_red: red().light().step_10(), + terminal_ansi_bright_green: green().light().step_10(), + terminal_ansi_bright_yellow: yellow().light().step_10(), + terminal_ansi_bright_blue: blue().light().step_10(), + terminal_ansi_bright_magenta: violet().light().step_10(), + terminal_ansi_bright_cyan: cyan().light().step_10(), + terminal_ansi_bright_white: neutral().light().step_11(), + terminal_ansi_black: black().light().step_12(), + terminal_ansi_red: red().light().step_11(), + terminal_ansi_green: green().light().step_11(), + terminal_ansi_yellow: yellow().light().step_11(), + terminal_ansi_blue: blue().light().step_11(), + terminal_ansi_magenta: violet().light().step_11(), + terminal_ansi_cyan: cyan().light().step_11(), + terminal_ansi_white: neutral().light().step_12(), + link_text_hover: orange().light().step_10(), } } @@ -105,91 +96,82 @@ impl ThemeColors { let system = SystemColors::default(); Self { - background: neutral().dark().step_1(), border: neutral().dark().step_6(), - border_disabled: neutral().dark().step_3(), + border_variant: neutral().dark().step_5(), border_focused: blue().dark().step_5(), border_selected: blue().dark().step_5(), border_transparent: system.transparent, - border_variant: neutral().dark().step_5(), - code_block_background: gpui::transparent_black(), - code_block_border: gpui::transparent_black(), - drop_target_background: blue().dark_alpha().step_2(), - editor_active_line_background: neutral().dark_alpha().step_3(), - editor_active_line_number: neutral().dark_alpha().step_12(), - editor_active_wrap_guide: neutral().dark_alpha().step_4(), // todo!("pick the right colors") - editor_background: neutral().dark().step_1(), - editor_document_highlight_read_background: neutral().dark_alpha().step_4(), // todo!("pick the right colors") - editor_document_highlight_write_background: neutral().dark_alpha().step_4(), // todo!("pick the right colors") - editor_foreground: neutral().dark().step_12(), - editor_gutter_background: neutral().dark().step_1(), - editor_highlighted_line_background: neutral().dark_alpha().step_4(), // todo!("pick the right colors") - editor_invisible: neutral().dark_alpha().step_4(), // todo!("pick the right colors") - editor_line_number: neutral().dark_alpha().step_10(), - editor_subheader_background: neutral().dark().step_3(), - editor_wrap_guide: neutral().dark_alpha().step_4(), // todo!("pick the right colors") - element_active: neutral().dark_alpha().step_5(), - element_background: neutral().dark().step_3(), - element_disabled: neutral().dark_alpha().step_3(), - element_hover: neutral().dark_alpha().step_4(), - element_selected: neutral().dark_alpha().step_5(), + border_disabled: neutral().dark().step_3(), elevated_surface_background: neutral().dark().step_2(), - emphasis: neutral().dark().step_12(), - ghost_element_active: neutral().dark_alpha().step_5(), - ghost_element_background: system.transparent, - ghost_element_disabled: neutral().dark_alpha().step_3(), - ghost_element_hover: neutral().dark_alpha().step_4(), - ghost_element_selected: neutral().dark_alpha().step_5(), - headline: blue().dark().step_9(), - icon: neutral().dark().step_11(), - icon_accent: blue().dark().step_11(), - icon_disabled: neutral().dark().step_9(), - icon_muted: neutral().dark().step_10(), - icon_placeholder: neutral().dark().step_10(), - inline_code_background: gpui::transparent_black(), - inline_code_border: gpui::transparent_black(), - link_text: orange().dark().step_9(), - link_text_hover: orange().dark().step_10(), - link_uri: green().dark().step_9(), - pane_focused_border: blue().dark().step_5(), - panel_background: neutral().dark().step_2(), - panel_focused_border: blue().dark().step_5(), - paragraph: neutral().dark().step_12(), - scrollbar_thumb_background: neutral().dark_alpha().step_3(), - scrollbar_thumb_border: gpui::transparent_black(), - scrollbar_thumb_hover_background: neutral().dark_alpha().step_4(), - scrollbar_track_background: gpui::transparent_black(), - scrollbar_track_border: neutral().dark().step_5(), - search_match_background: neutral().dark().step_2(), // todo!(this was inserted by Mikayla) - status_bar_background: neutral().dark().step_2(), surface_background: neutral().dark().step_2(), - tab_active_background: neutral().dark().step_1(), - tab_bar_background: neutral().dark().step_2(), - tab_inactive_background: neutral().dark().step_2(), - terminal_ansi_black: black().dark().step_12(), - terminal_ansi_blue: blue().dark().step_11(), - terminal_ansi_bright_black: black().dark().step_11(), - terminal_ansi_bright_blue: blue().dark().step_10(), - terminal_ansi_bright_cyan: cyan().dark().step_10(), - terminal_ansi_bright_green: green().dark().step_10(), - terminal_ansi_bright_magenta: violet().dark().step_10(), - terminal_ansi_bright_red: red().dark().step_10(), - terminal_ansi_bright_white: neutral().dark().step_11(), - terminal_ansi_bright_yellow: yellow().dark().step_10(), - terminal_ansi_cyan: cyan().dark().step_11(), - terminal_ansi_green: green().dark().step_11(), - terminal_ansi_magenta: violet().dark().step_11(), - terminal_ansi_red: red().dark().step_11(), - terminal_ansi_white: neutral().dark().step_12(), - terminal_ansi_yellow: yellow().dark().step_11(), - terminal_background: neutral().dark().step_1(), - text: neutral().dark().step_12(), - text_accent: blue().dark().step_11(), - text_disabled: neutral().dark().step_9(), + background: neutral().dark().step_1(), + element_background: neutral().dark().step_3(), + element_hover: neutral().dark_alpha().step_4(), // todo!("pick the right colors") + element_active: neutral().dark_alpha().step_5(), + element_selected: neutral().dark_alpha().step_5(), // todo!("pick the right colors") + element_disabled: neutral().dark_alpha().step_3(), // todo!("pick the right colors") + drop_target_background: blue().dark_alpha().step_2(), + ghost_element_background: system.transparent, + ghost_element_hover: neutral().dark_alpha().step_4(), // todo!("pick the right colors") + ghost_element_active: neutral().dark_alpha().step_5(), // todo!("pick the right colors") + ghost_element_selected: neutral().dark_alpha().step_5(), + ghost_element_disabled: neutral().dark_alpha().step_3(), + text: neutral().dark().step_12(), // todo!("pick the right colors") text_muted: neutral().dark().step_11(), text_placeholder: neutral().dark().step_10(), + text_disabled: neutral().dark().step_9(), + text_accent: blue().dark().step_11(), + icon: neutral().dark().step_11(), + icon_muted: neutral().dark().step_10(), + icon_disabled: neutral().dark().step_9(), + icon_placeholder: neutral().dark().step_10(), + icon_accent: blue().dark().step_11(), + status_bar_background: neutral().dark().step_2(), title_bar_background: neutral().dark().step_2(), toolbar_background: neutral().dark().step_1(), + tab_bar_background: neutral().dark().step_2(), + tab_inactive_background: neutral().dark().step_2(), + tab_active_background: neutral().dark().step_1(), + search_match_background: neutral().dark().step_2(), + panel_background: neutral().dark().step_2(), + panel_focused_border: blue().dark().step_5(), + pane_focused_border: blue().dark().step_5(), + scrollbar_thumb_background: neutral().dark_alpha().step_3(), + scrollbar_thumb_hover_background: neutral().dark_alpha().step_4(), + scrollbar_thumb_border: gpui::transparent_black(), + scrollbar_track_background: gpui::transparent_black(), + scrollbar_track_border: neutral().dark().step_5(), // todo!(this was inserted by Mikayla) + editor_foreground: neutral().dark().step_12(), + editor_background: neutral().dark().step_1(), + editor_gutter_background: neutral().dark().step_1(), + editor_subheader_background: neutral().dark().step_3(), + editor_active_line_background: neutral().dark_alpha().step_3(), + editor_highlighted_line_background: neutral().dark_alpha().step_4(), + editor_line_number: neutral().dark_alpha().step_10(), + editor_active_line_number: neutral().dark_alpha().step_12(), + editor_invisible: neutral().dark_alpha().step_4(), + editor_wrap_guide: neutral().dark_alpha().step_4(), + editor_active_wrap_guide: neutral().dark_alpha().step_4(), + editor_document_highlight_read_background: neutral().dark_alpha().step_4(), + editor_document_highlight_write_background: neutral().dark_alpha().step_4(), + terminal_background: neutral().dark().step_1(), + terminal_ansi_bright_black: black().dark().step_11(), + terminal_ansi_bright_red: red().dark().step_10(), + terminal_ansi_bright_green: green().dark().step_10(), + terminal_ansi_bright_yellow: yellow().dark().step_10(), + terminal_ansi_bright_blue: blue().dark().step_10(), + terminal_ansi_bright_magenta: violet().dark().step_10(), + terminal_ansi_bright_cyan: cyan().dark().step_10(), + terminal_ansi_bright_white: neutral().dark().step_11(), + terminal_ansi_black: black().dark().step_12(), + terminal_ansi_red: red().dark().step_11(), + terminal_ansi_green: green().dark().step_11(), + terminal_ansi_yellow: yellow().dark().step_11(), + terminal_ansi_blue: blue().dark().step_11(), + terminal_ansi_magenta: violet().dark().step_11(), + terminal_ansi_cyan: cyan().dark().step_11(), + terminal_ansi_white: neutral().dark().step_12(), + link_text_hover: orange().dark().step_10(), } } } diff --git a/crates/theme2/src/one_themes.rs b/crates/theme2/src/one_themes.rs index 72411dc40c..d0bae590f6 100644 --- a/crates/theme2/src/one_themes.rs +++ b/crates/theme2/src/one_themes.rs @@ -23,7 +23,6 @@ pub(crate) fn one_dark() -> Theme { let elevated_surface = hsla(225. / 360., 12. / 100., 17. / 100., 1.); let blue = hsla(207.8 / 360., 81. / 100., 66. / 100., 1.0); - let light_gray = hsla(218.8 / 360., 14. / 100., 71. / 100., 1.0); let gray = hsla(218.8 / 360., 10. / 100., 40. / 100., 1.0); let green = hsla(95. / 360., 38. / 100., 62. / 100., 1.0); let orange = hsla(29. / 360., 54. / 100., 61. / 100., 1.0); @@ -123,32 +122,51 @@ pub(crate) fn one_dark() -> Theme { scrollbar_track_background: gpui::transparent_black(), scrollbar_track_border: hsla(228. / 360., 8. / 100., 25. / 100., 1.), editor_foreground: hsla(218. / 360., 14. / 100., 71. / 100., 1.), - headline: hsla(355. / 360., 65. / 100., 65. / 100., 1.), - paragraph: light_gray, - link_text: blue, link_text_hover: blue, - link_uri: teal, - inline_code_background: gpui::transparent_black(), - inline_code_border: gpui::transparent_black(), - code_block_background: gpui::transparent_black(), - code_block_border: gpui::transparent_black(), - emphasis: orange, }, status: StatusColors { conflict: yellow, + conflict_background: yellow, + conflict_border: yellow, created: green, + created_background: green, + created_border: green, deleted: red, + deleted_background: red, + deleted_border: red, error: red, + error_background: red, + error_border: red, hidden: gray, + hidden_background: gray, + hidden_border: gray, hint: blue, + hint_background: blue, + hint_border: blue, ignored: gray, + ignored_background: gray, + ignored_border: gray, info: blue, + info_background: blue, + info_border: blue, modified: yellow, + modified_background: yellow, + modified_border: yellow, predictive: gray, + predictive_background: gray, + predictive_border: gray, renamed: blue, + renamed_background: blue, + renamed_border: blue, success: green, + success_background: green, + success_border: green, unreachable: gray, + unreachable_background: gray, + unreachable_border: gray, warning: yellow, + warning_background: yellow, + warning_border: yellow, }, player: PlayerColors::dark(), syntax: Arc::new(SyntaxTheme { diff --git a/crates/theme2/src/styles/colors.rs b/crates/theme2/src/styles/colors.rs index 0b548c5a74..5f22958665 100644 --- a/crates/theme2/src/styles/colors.rs +++ b/crates/theme2/src/styles/colors.rs @@ -206,16 +206,7 @@ pub struct ThemeColors { // === // UI/Rich Text // === - pub headline: Hsla, - pub paragraph: Hsla, - pub link_text: Hsla, pub link_text_hover: Hsla, - pub link_uri: Hsla, - pub inline_code_background: Hsla, - pub inline_code_border: Hsla, - pub code_block_background: Hsla, - pub code_block_border: Hsla, - pub emphasis: Hsla, } #[derive(Refineable, Clone)] diff --git a/crates/theme2/src/styles/status.rs b/crates/theme2/src/styles/status.rs index db0f475825..0ce166deb5 100644 --- a/crates/theme2/src/styles/status.rs +++ b/crates/theme2/src/styles/status.rs @@ -9,45 +9,73 @@ pub struct StatusColors { /// Indicates some kind of conflict, like a file changed on disk while it was open, or /// merge conflicts in a Git repository. pub conflict: Hsla, + pub conflict_background: Hsla, + pub conflict_border: Hsla, /// Indicates something new, like a new file added to a Git repository. pub created: Hsla, + pub created_background: Hsla, + pub created_border: Hsla, /// Indicates that something no longer exists, like a deleted file. pub deleted: Hsla, + pub deleted_background: Hsla, + pub deleted_border: Hsla, /// Indicates a system error, a failed operation or a diagnostic error. pub error: Hsla, + pub error_background: Hsla, + pub error_border: Hsla, /// Represents a hidden status, such as a file being hidden in a file tree. pub hidden: Hsla, + pub hidden_background: Hsla, + pub hidden_border: Hsla, /// Indicates a hint or some kind of additional information. pub hint: Hsla, + pub hint_background: Hsla, + pub hint_border: Hsla, /// Indicates that something is deliberately ignored, such as a file or operation ignored by Git. pub ignored: Hsla, + pub ignored_background: Hsla, + pub ignored_border: Hsla, /// Represents informational status updates or messages. pub info: Hsla, + pub info_background: Hsla, + pub info_border: Hsla, /// Indicates a changed or altered status, like a file that has been edited. pub modified: Hsla, + pub modified_background: Hsla, + pub modified_border: Hsla, /// Indicates something that is predicted, like automatic code completion, or generated code. pub predictive: Hsla, + pub predictive_background: Hsla, + pub predictive_border: Hsla, /// Represents a renamed status, such as a file that has been renamed. pub renamed: Hsla, + pub renamed_background: Hsla, + pub renamed_border: Hsla, /// Indicates a successful operation or task completion. pub success: Hsla, + pub success_background: Hsla, + pub success_border: Hsla, /// Indicates some kind of unreachable status, like a block of code that can never be reached. pub unreachable: Hsla, + pub unreachable_background: Hsla, + pub unreachable_border: Hsla, /// Represents a warning status, like an operation that is about to fail. pub warning: Hsla, + pub warning_background: Hsla, + pub warning_border: Hsla, } impl Default for StatusColors { @@ -78,38 +106,94 @@ impl StatusColors { pub fn dark() -> Self { Self { conflict: red().dark().step_9(), + conflict_background: red().dark().step_9(), + conflict_border: red().dark().step_9(), created: grass().dark().step_9(), + created_background: grass().dark().step_9(), + created_border: grass().dark().step_9(), deleted: red().dark().step_9(), + deleted_background: red().dark().step_9(), + deleted_border: red().dark().step_9(), error: red().dark().step_9(), + error_background: red().dark().step_9(), + error_border: red().dark().step_9(), hidden: neutral().dark().step_9(), + hidden_background: neutral().dark().step_9(), + hidden_border: neutral().dark().step_9(), hint: blue().dark().step_9(), + hint_background: blue().dark().step_9(), + hint_border: blue().dark().step_9(), ignored: neutral().dark().step_9(), + ignored_background: neutral().dark().step_9(), + ignored_border: neutral().dark().step_9(), info: blue().dark().step_9(), + info_background: blue().dark().step_9(), + info_border: blue().dark().step_9(), modified: yellow().dark().step_9(), + modified_background: yellow().dark().step_9(), + modified_border: yellow().dark().step_9(), predictive: neutral().dark_alpha().step_9(), + predictive_background: neutral().dark_alpha().step_9(), + predictive_border: neutral().dark_alpha().step_9(), renamed: blue().dark().step_9(), + renamed_background: blue().dark().step_9(), + renamed_border: blue().dark().step_9(), success: grass().dark().step_9(), + success_background: grass().dark().step_9(), + success_border: grass().dark().step_9(), unreachable: neutral().dark().step_10(), + unreachable_background: neutral().dark().step_10(), + unreachable_border: neutral().dark().step_10(), warning: yellow().dark().step_9(), + warning_background: yellow().dark().step_9(), + warning_border: yellow().dark().step_9(), } } pub fn light() -> Self { Self { conflict: red().light().step_9(), + conflict_background: red().light().step_9(), + conflict_border: red().light().step_9(), created: grass().light().step_9(), + created_background: grass().light().step_9(), + created_border: grass().light().step_9(), deleted: red().light().step_9(), + deleted_background: red().light().step_9(), + deleted_border: red().light().step_9(), error: red().light().step_9(), + error_background: red().light().step_9(), + error_border: red().light().step_9(), hidden: neutral().light().step_9(), + hidden_background: neutral().light().step_9(), + hidden_border: neutral().light().step_9(), hint: blue().light().step_9(), + hint_background: blue().light().step_9(), + hint_border: blue().light().step_9(), ignored: neutral().light().step_9(), + ignored_background: neutral().light().step_9(), + ignored_border: neutral().light().step_9(), info: blue().light().step_9(), + info_background: blue().light().step_9(), + info_border: blue().light().step_9(), modified: yellow().light().step_9(), + modified_background: yellow().light().step_9(), + modified_border: yellow().light().step_9(), predictive: neutral().light_alpha().step_9(), + predictive_background: neutral().light_alpha().step_9(), + predictive_border: neutral().light_alpha().step_9(), renamed: blue().light().step_9(), + renamed_background: blue().light().step_9(), + renamed_border: blue().light().step_9(), success: grass().light().step_9(), + success_background: grass().light().step_9(), + success_border: grass().light().step_9(), unreachable: neutral().light().step_10(), + unreachable_background: neutral().light().step_10(), + unreachable_border: neutral().light().step_10(), warning: yellow().light().step_9(), + warning_background: yellow().light().step_9(), + warning_border: yellow().light().step_9(), } } diff --git a/crates/theme2/src/theme2.rs b/crates/theme2/src/theme2.rs index fc6253d010..c526a381b7 100644 --- a/crates/theme2/src/theme2.rs +++ b/crates/theme2/src/theme2.rs @@ -134,18 +134,6 @@ impl Theme { self.syntax().color(name) } - /// Returns the [`DiagnosticStyle`] for the theme. - #[inline(always)] - pub fn diagnostic_style(&self) -> DiagnosticStyle { - DiagnosticStyle { - error: self.status().error, - warning: self.status().warning, - info: self.status().info, - hint: self.status().info, - ignored: self.status().ignored, - } - } - /// Returns the [`Appearance`] for the theme. #[inline(always)] pub fn appearance(&self) -> Appearance { @@ -153,15 +141,6 @@ impl Theme { } } -#[derive(Clone, Debug, Default)] -pub struct DiagnosticStyle { - pub error: Hsla, - pub warning: Hsla, - pub info: Hsla, - pub hint: Hsla, - pub ignored: Hsla, -} - pub fn color_alpha(color: Hsla, alpha: f32) -> Hsla { let mut color = color; color.a = alpha; diff --git a/crates/theme2/src/themes/andromeda.rs b/crates/theme2/src/themes/andromeda.rs index 0c4e03ccdd..327c6f668f 100644 --- a/crates/theme2/src/themes/andromeda.rs +++ b/crates/theme2/src/themes/andromeda.rs @@ -19,36 +19,61 @@ pub fn andromeda() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x252931ff).into()), - border_variant: Some(rgba(0x21232aff).into()), + border: Some(rgba(0x2b2f39ff).into()), + border_variant: Some(rgba(0x2b2f39ff).into()), + border_focused: Some(rgba(0x183a34ff).into()), + border_selected: Some(rgba(0x183a34ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x292d37ff).into()), elevated_surface_background: Some(rgba(0x21242bff).into()), + surface_background: Some(rgba(0x21242bff).into()), background: Some(rgba(0x262a33ff).into()), panel_background: Some(rgba(0x21242bff).into()), - element_hover: Some(rgba(0x2b2f3980).into()), - element_selected: Some(rgba(0x383b4580).into()), + element_background: Some(rgba(0x21242bff).into()), + element_hover: Some(rgba(0x252931ff).into()), + element_active: Some(rgba(0x2a2f39ff).into()), + element_selected: Some(rgba(0x2a2f39ff).into()), + element_disabled: Some(rgba(0x21242bff).into()), drop_target_background: Some(rgba(0xaca8ae80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x252931ff).into()), + ghost_element_active: Some(rgba(0x2a2f39ff).into()), + ghost_element_selected: Some(rgba(0x2a2f39ff).into()), + ghost_element_disabled: Some(rgba(0x21242bff).into()), text: Some(rgba(0xf7f7f8ff).into()), text_muted: Some(rgba(0xaca8aeff).into()), - text_placeholder: Some(rgba(0x474a53ff).into()), - text_disabled: Some(rgba(0xf7f7f8ff).into()), + text_placeholder: Some(rgba(0x6b6b73ff).into()), + text_disabled: Some(rgba(0x6b6b73ff).into()), text_accent: Some(rgba(0x11a793ff).into()), + icon: Some(rgba(0xf7f7f8ff).into()), + icon_muted: Some(rgba(0xaca8aeff).into()), + icon_disabled: Some(rgba(0x6b6b73ff).into()), + icon_placeholder: Some(rgba(0xaca8aeff).into()), + icon_accent: Some(rgba(0x11a793ff).into()), status_bar_background: Some(rgba(0x262a33ff).into()), title_bar_background: Some(rgba(0x262a33ff).into()), toolbar_background: Some(rgba(0x1e2025ff).into()), tab_bar_background: Some(rgba(0x21242bff).into()), tab_inactive_background: Some(rgba(0x21242bff).into()), tab_active_background: Some(rgba(0x1e2025ff).into()), - scrollbar_thumb_background: Some(rgba(0xf7f7f84d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xf7f7f84d).into()), - scrollbar_thumb_border: Some(rgba(0x21232aff).into()), + scrollbar_thumb_background: Some(rgba(0xf7f7f84c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x252931ff).into()), + scrollbar_thumb_border: Some(rgba(0x252931ff).into()), + scrollbar_track_background: Some(rgba(0x1e2025ff).into()), scrollbar_track_border: Some(rgba(0x21232aff).into()), editor_foreground: Some(rgba(0xf7f7f8ff).into()), editor_background: Some(rgba(0x1e2025ff).into()), editor_gutter_background: Some(rgba(0x1e2025ff).into()), + editor_subheader_background: Some(rgba(0x21242bff).into()), + editor_active_line_background: Some(rgba(0x21242bbf).into()), + editor_highlighted_line_background: Some(rgba(0x21242bff).into()), editor_line_number: Some(rgba(0xf7f7f859).into()), editor_active_line_number: Some(rgba(0xf7f7f8ff).into()), + editor_invisible: Some(rgba(0xaca8aeff).into()), editor_wrap_guide: Some(rgba(0xf7f7f80d).into()), editor_active_wrap_guide: Some(rgba(0xf7f7f81a).into()), + editor_document_highlight_read_background: Some(rgba(0x11a7931a).into()), + editor_document_highlight_write_background: Some(rgba(0x64646d66).into()), terminal_background: Some(rgba(0x1e2025ff).into()), terminal_ansi_bright_black: Some(rgba(0x40434cff).into()), terminal_ansi_bright_red: Some(rgba(0x8e103aff).into()), @@ -66,16 +91,52 @@ pub fn andromeda() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xc74decff).into()), terminal_ansi_cyan: Some(rgba(0x09e7c6ff).into()), terminal_ansi_white: Some(rgba(0xf7f7f8ff).into()), + link_text_hover: Some(rgba(0x11a793ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xfee56dff).into()), + conflict_background: Some(rgba(0x5c5015ff).into()), + conflict_border: Some(rgba(0x796b26ff).into()), created: Some(rgba(0x96df72ff).into()), - deleted: Some(rgba(0xcd1d5aff).into()), + created_background: Some(rgba(0x194618ff).into()), + created_border: Some(rgba(0x306129ff).into()), + deleted: Some(rgba(0xf82872ff).into()), + deleted_background: Some(rgba(0x55051bff).into()), + deleted_border: Some(rgba(0x720a2bff).into()), error: Some(rgba(0xf82872ff).into()), + error_background: Some(rgba(0x55051bff).into()), + error_border: Some(rgba(0x720a2bff).into()), + hidden: Some(rgba(0x6b6b73ff).into()), + hidden_background: Some(rgba(0x262a33ff).into()), + hidden_border: Some(rgba(0x292d37ff).into()), hint: Some(rgba(0x618399ff).into()), + hint_background: Some(rgba(0x122420ff).into()), + hint_border: Some(rgba(0x183a34ff).into()), + ignored: Some(rgba(0xaca8aeff).into()), + ignored_background: Some(rgba(0x262a33ff).into()), + ignored_border: Some(rgba(0x2b2f39ff).into()), + info: Some(rgba(0x11a793ff).into()), + info_background: Some(rgba(0x122420ff).into()), + info_border: Some(rgba(0x183a34ff).into()), modified: Some(rgba(0xfee56dff).into()), - success: Some(rgba(0xf7f7f8ff).into()), + modified_background: Some(rgba(0x5c5015ff).into()), + modified_border: Some(rgba(0x796b26ff).into()), + predictive: Some(rgba(0x96df72ff).into()), + predictive_background: Some(rgba(0x194618ff).into()), + predictive_border: Some(rgba(0x306129ff).into()), + renamed: Some(rgba(0x11a793ff).into()), + renamed_background: Some(rgba(0x122420ff).into()), + renamed_border: Some(rgba(0x183a34ff).into()), + success: Some(rgba(0x96df72ff).into()), + success_background: Some(rgba(0x194618ff).into()), + success_border: Some(rgba(0x306129ff).into()), + unreachable: Some(rgba(0xaca8aeff).into()), + unreachable_background: Some(rgba(0x262a33ff).into()), + unreachable_border: Some(rgba(0x2b2f39ff).into()), warning: Some(rgba(0xfee56dff).into()), + warning_background: Some(rgba(0x5c5015ff).into()), + warning_border: Some(rgba(0x796b26ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ diff --git a/crates/theme2/src/themes/atelier.rs b/crates/theme2/src/themes/atelier.rs index 48ff6bfa8a..42756a8d3f 100644 --- a/crates/theme2/src/themes/atelier.rs +++ b/crates/theme2/src/themes/atelier.rs @@ -20,36 +20,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xd1d0c6ff).into()), - border_variant: Some(rgba(0xedece5ff).into()), + border: Some(rgba(0x969585ff).into()), + border_variant: Some(rgba(0x969585ff).into()), + border_focused: Some(rgba(0xbbddc6ff).into()), + border_selected: Some(rgba(0xbbddc6ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xadac9fff).into()), elevated_surface_background: Some(rgba(0xebeae3ff).into()), + surface_background: Some(rgba(0xebeae3ff).into()), background: Some(rgba(0xc5c4b9ff).into()), panel_background: Some(rgba(0xebeae3ff).into()), - element_hover: Some(rgba(0x96958580).into()), - element_selected: Some(rgba(0x8b8a7880).into()), + element_background: Some(rgba(0xebeae3ff).into()), + element_hover: Some(rgba(0xd1d0c6ff).into()), + element_active: Some(rgba(0x989788ff).into()), + element_selected: Some(rgba(0x989788ff).into()), + element_disabled: Some(rgba(0xebeae3ff).into()), drop_target_background: Some(rgba(0x61604f80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xd1d0c6ff).into()), + ghost_element_active: Some(rgba(0x989788ff).into()), + ghost_element_selected: Some(rgba(0x989788ff).into()), + ghost_element_disabled: Some(rgba(0xebeae3ff).into()), text: Some(rgba(0x22221bff).into()), text_muted: Some(rgba(0x61604fff).into()), - text_placeholder: Some(rgba(0x878573ff).into()), - text_disabled: Some(rgba(0x22221bff).into()), + text_placeholder: Some(rgba(0x767463ff).into()), + text_disabled: Some(rgba(0x767463ff).into()), text_accent: Some(rgba(0x38a166ff).into()), + icon: Some(rgba(0x22221bff).into()), + icon_muted: Some(rgba(0x61604fff).into()), + icon_disabled: Some(rgba(0x767463ff).into()), + icon_placeholder: Some(rgba(0x61604fff).into()), + icon_accent: Some(rgba(0x38a166ff).into()), status_bar_background: Some(rgba(0xc5c4b9ff).into()), title_bar_background: Some(rgba(0xc5c4b9ff).into()), toolbar_background: Some(rgba(0xf4f3ecff).into()), tab_bar_background: Some(rgba(0xebeae3ff).into()), tab_inactive_background: Some(rgba(0xebeae3ff).into()), tab_active_background: Some(rgba(0xf4f3ecff).into()), - scrollbar_thumb_background: Some(rgba(0x22221b4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x22221b4d).into()), - scrollbar_thumb_border: Some(rgba(0xedece5ff).into()), + scrollbar_thumb_background: Some(rgba(0x22221b4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xd1d0c6ff).into()), + scrollbar_thumb_border: Some(rgba(0xd1d0c6ff).into()), + scrollbar_track_background: Some(rgba(0xf4f3ecff).into()), scrollbar_track_border: Some(rgba(0xedece5ff).into()), editor_foreground: Some(rgba(0x302f27ff).into()), editor_background: Some(rgba(0xf4f3ecff).into()), editor_gutter_background: Some(rgba(0xf4f3ecff).into()), + editor_subheader_background: Some(rgba(0xebeae3ff).into()), + editor_active_line_background: Some(rgba(0xebeae3bf).into()), + editor_highlighted_line_background: Some(rgba(0xebeae3ff).into()), editor_line_number: Some(rgba(0x22221b59).into()), editor_active_line_number: Some(rgba(0x22221bff).into()), + editor_invisible: Some(rgba(0x61604fff).into()), editor_wrap_guide: Some(rgba(0x22221b0d).into()), editor_active_wrap_guide: Some(rgba(0x22221b1a).into()), + editor_document_highlight_read_background: Some(rgba(0x38a1661a).into()), + editor_document_highlight_write_background: Some(rgba(0x7a786766).into()), terminal_background: Some(rgba(0xf4f3ecff).into()), terminal_ansi_bright_black: Some(rgba(0x898775ff).into()), terminal_ansi_bright_red: Some(rgba(0xe4af96ff).into()), @@ -67,16 +92,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x9d6c7cff).into()), terminal_ansi_cyan: Some(rgba(0x5c9d49ff).into()), terminal_ansi_white: Some(rgba(0x22221bff).into()), + link_text_hover: Some(rgba(0x38a166ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x98ab54ff).into()), + conflict: Some(rgba(0xa59810ff).into()), + conflict_background: Some(rgba(0xf0e9d1ff).into()), + conflict_border: Some(rgba(0xe3d8adff).into()), + created: Some(rgba(0x7d9728ff).into()), + created_background: Some(rgba(0xe6e9d3ff).into()), + created_border: Some(rgba(0xd2d8b1ff).into()), deleted: Some(rgba(0xba6337ff).into()), + deleted_background: Some(rgba(0xf6ded4ff).into()), + deleted_border: Some(rgba(0xedc5b3ff).into()), error: Some(rgba(0xba6337ff).into()), + error_background: Some(rgba(0xf6ded4ff).into()), + error_border: Some(rgba(0xedc5b3ff).into()), + hidden: Some(rgba(0x767463ff).into()), + hidden_background: Some(rgba(0xc5c4b9ff).into()), + hidden_border: Some(rgba(0xadac9fff).into()), hint: Some(rgba(0x768962ff).into()), + hint_background: Some(rgba(0xd9ecdfff).into()), + hint_border: Some(rgba(0xbbddc6ff).into()), + ignored: Some(rgba(0x61604fff).into()), + ignored_background: Some(rgba(0xc5c4b9ff).into()), + ignored_border: Some(rgba(0x969585ff).into()), + info: Some(rgba(0x38a166ff).into()), + info_background: Some(rgba(0xd9ecdfff).into()), + info_border: Some(rgba(0xbbddc6ff).into()), modified: Some(rgba(0xa59810ff).into()), - success: Some(rgba(0x22221bff).into()), + modified_background: Some(rgba(0xf0e9d1ff).into()), + modified_border: Some(rgba(0xe3d8adff).into()), + predictive: Some(rgba(0x7d9728ff).into()), + predictive_background: Some(rgba(0xe6e9d3ff).into()), + predictive_border: Some(rgba(0xd2d8b1ff).into()), + renamed: Some(rgba(0x38a166ff).into()), + renamed_background: Some(rgba(0xd9ecdfff).into()), + renamed_border: Some(rgba(0xbbddc6ff).into()), + success: Some(rgba(0x7d9728ff).into()), + success_background: Some(rgba(0xe6e9d3ff).into()), + success_border: Some(rgba(0xd2d8b1ff).into()), + unreachable: Some(rgba(0x61604fff).into()), + unreachable_background: Some(rgba(0xc5c4b9ff).into()), + unreachable_border: Some(rgba(0x969585ff).into()), warning: Some(rgba(0xa59810ff).into()), + warning_background: Some(rgba(0xf0e9d1ff).into()), + warning_border: Some(rgba(0xe3d8adff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -424,36 +485,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x3b3431ff).into()), - border_variant: Some(rgba(0x251f1dff).into()), + border: Some(rgba(0x665f5cff).into()), + border_variant: Some(rgba(0x665f5cff).into()), + border_focused: Some(rgba(0x192e5bff).into()), + border_selected: Some(rgba(0x192e5bff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x554e4bff).into()), elevated_surface_background: Some(rgba(0x27211eff).into()), + surface_background: Some(rgba(0x27211eff).into()), background: Some(rgba(0x443c39ff).into()), panel_background: Some(rgba(0x27211eff).into()), - element_hover: Some(rgba(0x665f5c80).into()), - element_selected: Some(rgba(0x71696680).into()), + element_background: Some(rgba(0x27211eff).into()), + element_hover: Some(rgba(0x3b3431ff).into()), + element_active: Some(rgba(0x645d5aff).into()), + element_selected: Some(rgba(0x645d5aff).into()), + element_disabled: Some(rgba(0x27211eff).into()), drop_target_background: Some(rgba(0xa79f9d80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x3b3431ff).into()), + ghost_element_active: Some(rgba(0x645d5aff).into()), + ghost_element_selected: Some(rgba(0x645d5aff).into()), + ghost_element_disabled: Some(rgba(0x27211eff).into()), text: Some(rgba(0xf1efeeff).into()), text_muted: Some(rgba(0xa79f9dff).into()), - text_placeholder: Some(rgba(0x766e6bff).into()), - text_disabled: Some(rgba(0xf1efeeff).into()), + text_placeholder: Some(rgba(0x8e8683ff).into()), + text_disabled: Some(rgba(0x8e8683ff).into()), text_accent: Some(rgba(0x417ee6ff).into()), + icon: Some(rgba(0xf1efeeff).into()), + icon_muted: Some(rgba(0xa79f9dff).into()), + icon_disabled: Some(rgba(0x8e8683ff).into()), + icon_placeholder: Some(rgba(0xa79f9dff).into()), + icon_accent: Some(rgba(0x417ee6ff).into()), status_bar_background: Some(rgba(0x443c39ff).into()), title_bar_background: Some(rgba(0x443c39ff).into()), toolbar_background: Some(rgba(0x1b1918ff).into()), tab_bar_background: Some(rgba(0x27211eff).into()), tab_inactive_background: Some(rgba(0x27211eff).into()), tab_active_background: Some(rgba(0x1b1918ff).into()), - scrollbar_thumb_background: Some(rgba(0xf1efee4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xf1efee4d).into()), - scrollbar_thumb_border: Some(rgba(0x251f1dff).into()), + scrollbar_thumb_background: Some(rgba(0xf1efee4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x3b3431ff).into()), + scrollbar_thumb_border: Some(rgba(0x3b3431ff).into()), + scrollbar_track_background: Some(rgba(0x1b1918ff).into()), scrollbar_track_border: Some(rgba(0x251f1dff).into()), editor_foreground: Some(rgba(0xe6e2e0ff).into()), editor_background: Some(rgba(0x1b1918ff).into()), editor_gutter_background: Some(rgba(0x1b1918ff).into()), + editor_subheader_background: Some(rgba(0x27211eff).into()), + editor_active_line_background: Some(rgba(0x27211ebf).into()), + editor_highlighted_line_background: Some(rgba(0x27211eff).into()), editor_line_number: Some(rgba(0xf1efee59).into()), editor_active_line_number: Some(rgba(0xf1efeeff).into()), + editor_invisible: Some(rgba(0xa79f9dff).into()), editor_wrap_guide: Some(rgba(0xf1efee0d).into()), editor_active_wrap_guide: Some(rgba(0xf1efee1a).into()), + editor_document_highlight_read_background: Some(rgba(0x417ee61a).into()), + editor_document_highlight_write_background: Some(rgba(0x89817e66).into()), terminal_background: Some(rgba(0x1b1918ff).into()), terminal_ansi_bright_black: Some(rgba(0x746c69ff).into()), terminal_ansi_bright_red: Some(rgba(0x8c1223ff).into()), @@ -471,16 +557,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xc340f2ff).into()), terminal_ansi_cyan: Some(rgba(0x3e97b8ff).into()), terminal_ansi_white: Some(rgba(0xf1efeeff).into()), + link_text_hover: Some(rgba(0x417ee6ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xc38419ff).into()), + conflict_background: Some(rgba(0x371d0dff).into()), + conflict_border: Some(rgba(0x4f2f12ff).into()), created: Some(rgba(0x7b9727ff).into()), - deleted: Some(rgba(0xc82234ff).into()), + created_background: Some(rgba(0x1d2110ff).into()), + created_border: Some(rgba(0x2e3516ff).into()), + deleted: Some(rgba(0xf22d40ff).into()), + deleted_background: Some(rgba(0x550512ff).into()), + deleted_border: Some(rgba(0x710c1bff).into()), error: Some(rgba(0xf22d40ff).into()), + error_background: Some(rgba(0x550512ff).into()), + error_border: Some(rgba(0x710c1bff).into()), + hidden: Some(rgba(0x8e8683ff).into()), + hidden_background: Some(rgba(0x443c39ff).into()), + hidden_border: Some(rgba(0x554e4bff).into()), hint: Some(rgba(0xa87187ff).into()), + hint_background: Some(rgba(0x0f1d3dff).into()), + hint_border: Some(rgba(0x192e5bff).into()), + ignored: Some(rgba(0xa79f9dff).into()), + ignored_background: Some(rgba(0x443c39ff).into()), + ignored_border: Some(rgba(0x665f5cff).into()), + info: Some(rgba(0x417ee6ff).into()), + info_background: Some(rgba(0x0f1d3dff).into()), + info_border: Some(rgba(0x192e5bff).into()), modified: Some(rgba(0xc38419ff).into()), - success: Some(rgba(0xf1efeeff).into()), + modified_background: Some(rgba(0x371d0dff).into()), + modified_border: Some(rgba(0x4f2f12ff).into()), + predictive: Some(rgba(0x7b9727ff).into()), + predictive_background: Some(rgba(0x1d2110ff).into()), + predictive_border: Some(rgba(0x2e3516ff).into()), + renamed: Some(rgba(0x417ee6ff).into()), + renamed_background: Some(rgba(0x0f1d3dff).into()), + renamed_border: Some(rgba(0x192e5bff).into()), + success: Some(rgba(0x7b9727ff).into()), + success_background: Some(rgba(0x1d2110ff).into()), + success_border: Some(rgba(0x2e3516ff).into()), + unreachable: Some(rgba(0xa79f9dff).into()), + unreachable_background: Some(rgba(0x443c39ff).into()), + unreachable_border: Some(rgba(0x665f5cff).into()), warning: Some(rgba(0xc38419ff).into()), + warning_background: Some(rgba(0x371d0dff).into()), + warning_border: Some(rgba(0x4f2f12ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -828,36 +950,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xc8d1cbff).into()), - border_variant: Some(rgba(0xe5ede7ff).into()), + border: Some(rgba(0x8b968eff).into()), + border_variant: Some(rgba(0x8b968eff).into()), + border_focused: Some(rgba(0xbed4d6ff).into()), + border_selected: Some(rgba(0xbed4d6ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xa3ada6ff).into()), elevated_surface_background: Some(rgba(0xe3ebe6ff).into()), + surface_background: Some(rgba(0xe3ebe6ff).into()), background: Some(rgba(0xbcc5bfff).into()), panel_background: Some(rgba(0xe3ebe6ff).into()), - element_hover: Some(rgba(0x8b968e80).into()), - element_selected: Some(rgba(0x7e8b8280).into()), + element_background: Some(rgba(0xe3ebe6ff).into()), + element_hover: Some(rgba(0xc8d1cbff).into()), + element_active: Some(rgba(0x8d9890ff).into()), + element_selected: Some(rgba(0x8d9890ff).into()), + element_disabled: Some(rgba(0xe3ebe6ff).into()), drop_target_background: Some(rgba(0x54625980).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xc8d1cbff).into()), + ghost_element_active: Some(rgba(0x8d9890ff).into()), + ghost_element_selected: Some(rgba(0x8d9890ff).into()), + ghost_element_disabled: Some(rgba(0xe3ebe6ff).into()), text: Some(rgba(0x171c19ff).into()), text_muted: Some(rgba(0x546259ff).into()), - text_placeholder: Some(rgba(0x79877dff).into()), - text_disabled: Some(rgba(0x171c19ff).into()), + text_placeholder: Some(rgba(0x68766dff).into()), + text_disabled: Some(rgba(0x68766dff).into()), text_accent: Some(rgba(0x488c90ff).into()), + icon: Some(rgba(0x171c19ff).into()), + icon_muted: Some(rgba(0x546259ff).into()), + icon_disabled: Some(rgba(0x68766dff).into()), + icon_placeholder: Some(rgba(0x546259ff).into()), + icon_accent: Some(rgba(0x488c90ff).into()), status_bar_background: Some(rgba(0xbcc5bfff).into()), title_bar_background: Some(rgba(0xbcc5bfff).into()), toolbar_background: Some(rgba(0xecf4eeff).into()), tab_bar_background: Some(rgba(0xe3ebe6ff).into()), tab_inactive_background: Some(rgba(0xe3ebe6ff).into()), tab_active_background: Some(rgba(0xecf4eeff).into()), - scrollbar_thumb_background: Some(rgba(0x171c194d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x171c194d).into()), - scrollbar_thumb_border: Some(rgba(0xe5ede7ff).into()), + scrollbar_thumb_background: Some(rgba(0x171c194c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xc8d1cbff).into()), + scrollbar_thumb_border: Some(rgba(0xc8d1cbff).into()), + scrollbar_track_background: Some(rgba(0xecf4eeff).into()), scrollbar_track_border: Some(rgba(0xe5ede7ff).into()), editor_foreground: Some(rgba(0x232a25ff).into()), editor_background: Some(rgba(0xecf4eeff).into()), editor_gutter_background: Some(rgba(0xecf4eeff).into()), + editor_subheader_background: Some(rgba(0xe3ebe6ff).into()), + editor_active_line_background: Some(rgba(0xe3ebe6bf).into()), + editor_highlighted_line_background: Some(rgba(0xe3ebe6ff).into()), editor_line_number: Some(rgba(0x171c1959).into()), editor_active_line_number: Some(rgba(0x171c19ff).into()), + editor_invisible: Some(rgba(0x546259ff).into()), editor_wrap_guide: Some(rgba(0x171c190d).into()), editor_active_wrap_guide: Some(rgba(0x171c191a).into()), + editor_document_highlight_read_background: Some(rgba(0x488c901a).into()), + editor_document_highlight_write_background: Some(rgba(0x6c7a7166).into()), terminal_background: Some(rgba(0xecf4eeff).into()), terminal_ansi_bright_black: Some(rgba(0x7b897fff).into()), terminal_ansi_bright_red: Some(rgba(0xdeae97ff).into()), @@ -875,16 +1022,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x867469ff).into()), terminal_ansi_cyan: Some(rgba(0x1f9aa0ff).into()), terminal_ansi_white: Some(rgba(0x171c19ff).into()), + link_text_hover: Some(rgba(0x488c90ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x6fae80ff).into()), + conflict: Some(rgba(0xa07e3cff).into()), + conflict_background: Some(rgba(0xeee4d5ff).into()), + conflict_border: Some(rgba(0xdfcfb6ff).into()), + created: Some(rgba(0x499963ff).into()), + created_background: Some(rgba(0xdaeadeff).into()), + created_border: Some(rgba(0xbedac5ff).into()), deleted: Some(rgba(0xb1623aff).into()), + deleted_background: Some(rgba(0xf3ded4ff).into()), + deleted_border: Some(rgba(0xe8c5b4ff).into()), error: Some(rgba(0xb1623aff).into()), + error_background: Some(rgba(0xf3ded4ff).into()), + error_border: Some(rgba(0xe8c5b4ff).into()), + hidden: Some(rgba(0x68766dff).into()), + hidden_background: Some(rgba(0xbcc5bfff).into()), + hidden_border: Some(rgba(0xa3ada6ff).into()), hint: Some(rgba(0x66847cff).into()), + hint_background: Some(rgba(0xdae7e8ff).into()), + hint_border: Some(rgba(0xbed4d6ff).into()), + ignored: Some(rgba(0x546259ff).into()), + ignored_background: Some(rgba(0xbcc5bfff).into()), + ignored_border: Some(rgba(0x8b968eff).into()), + info: Some(rgba(0x488c90ff).into()), + info_background: Some(rgba(0xdae7e8ff).into()), + info_border: Some(rgba(0xbed4d6ff).into()), modified: Some(rgba(0xa07e3cff).into()), - success: Some(rgba(0x171c19ff).into()), + modified_background: Some(rgba(0xeee4d5ff).into()), + modified_border: Some(rgba(0xdfcfb6ff).into()), + predictive: Some(rgba(0x499963ff).into()), + predictive_background: Some(rgba(0xdaeadeff).into()), + predictive_border: Some(rgba(0xbedac5ff).into()), + renamed: Some(rgba(0x488c90ff).into()), + renamed_background: Some(rgba(0xdae7e8ff).into()), + renamed_border: Some(rgba(0xbed4d6ff).into()), + success: Some(rgba(0x499963ff).into()), + success_background: Some(rgba(0xdaeadeff).into()), + success_border: Some(rgba(0xbedac5ff).into()), + unreachable: Some(rgba(0x546259ff).into()), + unreachable_background: Some(rgba(0xbcc5bfff).into()), + unreachable_border: Some(rgba(0x8b968eff).into()), warning: Some(rgba(0xa07e3cff).into()), + warning_background: Some(rgba(0xeee4d5ff).into()), + warning_border: Some(rgba(0xdfcfb6ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -1232,36 +1415,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x332f38ff).into()), - border_variant: Some(rgba(0x201e24ff).into()), + border: Some(rgba(0x56505eff).into()), + border_variant: Some(rgba(0x56505eff).into()), + border_focused: Some(rgba(0x222953ff).into()), + border_selected: Some(rgba(0x222953ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x48434fff).into()), elevated_surface_background: Some(rgba(0x221f26ff).into()), + surface_background: Some(rgba(0x221f26ff).into()), background: Some(rgba(0x3a353fff).into()), panel_background: Some(rgba(0x221f26ff).into()), - element_hover: Some(rgba(0x56505e80).into()), - element_selected: Some(rgba(0x605a6880).into()), + element_background: Some(rgba(0x221f26ff).into()), + element_hover: Some(rgba(0x332f38ff).into()), + element_active: Some(rgba(0x544f5cff).into()), + element_selected: Some(rgba(0x544f5cff).into()), + element_disabled: Some(rgba(0x221f26ff).into()), drop_target_background: Some(rgba(0x89859180).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x332f38ff).into()), + ghost_element_active: Some(rgba(0x544f5cff).into()), + ghost_element_selected: Some(rgba(0x544f5cff).into()), + ghost_element_disabled: Some(rgba(0x221f26ff).into()), text: Some(rgba(0xefecf4ff).into()), text_muted: Some(rgba(0x898591ff).into()), - text_placeholder: Some(rgba(0x655f6dff).into()), - text_disabled: Some(rgba(0xefecf4ff).into()), + text_placeholder: Some(rgba(0x756f7eff).into()), + text_disabled: Some(rgba(0x756f7eff).into()), text_accent: Some(rgba(0x576ddaff).into()), + icon: Some(rgba(0xefecf4ff).into()), + icon_muted: Some(rgba(0x898591ff).into()), + icon_disabled: Some(rgba(0x756f7eff).into()), + icon_placeholder: Some(rgba(0x898591ff).into()), + icon_accent: Some(rgba(0x576ddaff).into()), status_bar_background: Some(rgba(0x3a353fff).into()), title_bar_background: Some(rgba(0x3a353fff).into()), toolbar_background: Some(rgba(0x19171cff).into()), tab_bar_background: Some(rgba(0x221f26ff).into()), tab_inactive_background: Some(rgba(0x221f26ff).into()), tab_active_background: Some(rgba(0x19171cff).into()), - scrollbar_thumb_background: Some(rgba(0xefecf44d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xefecf44d).into()), - scrollbar_thumb_border: Some(rgba(0x201e24ff).into()), + scrollbar_thumb_background: Some(rgba(0xefecf44c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x332f38ff).into()), + scrollbar_thumb_border: Some(rgba(0x332f38ff).into()), + scrollbar_track_background: Some(rgba(0x19171cff).into()), scrollbar_track_border: Some(rgba(0x201e24ff).into()), editor_foreground: Some(rgba(0xe2dfe7ff).into()), editor_background: Some(rgba(0x19171cff).into()), editor_gutter_background: Some(rgba(0x19171cff).into()), + editor_subheader_background: Some(rgba(0x221f26ff).into()), + editor_active_line_background: Some(rgba(0x221f26bf).into()), + editor_highlighted_line_background: Some(rgba(0x221f26ff).into()), editor_line_number: Some(rgba(0xefecf459).into()), editor_active_line_number: Some(rgba(0xefecf4ff).into()), + editor_invisible: Some(rgba(0x898591ff).into()), editor_wrap_guide: Some(rgba(0xefecf40d).into()), editor_active_wrap_guide: Some(rgba(0xefecf41a).into()), + editor_document_highlight_read_background: Some(rgba(0x576dda1a).into()), + editor_document_highlight_write_background: Some(rgba(0x726c7a66).into()), terminal_background: Some(rgba(0x19171cff).into()), terminal_ansi_bright_black: Some(rgba(0x635d6bff).into()), terminal_ansi_bright_red: Some(rgba(0x5c283cff).into()), @@ -1279,16 +1487,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xbf41bfff).into()), terminal_ansi_cyan: Some(rgba(0x3a8bc6ff).into()), terminal_ansi_white: Some(rgba(0xefecf4ff).into()), + link_text_hover: Some(rgba(0x576ddaff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xa06e3bff).into()), + conflict_background: Some(rgba(0x231a12ff).into()), + conflict_border: Some(rgba(0x392a1aff).into()), created: Some(rgba(0x2c9292ff).into()), - deleted: Some(rgba(0x953a5fff).into()), + created_background: Some(rgba(0x132020ff).into()), + created_border: Some(rgba(0x1a3434ff).into()), + deleted: Some(rgba(0xbe4678ff).into()), + deleted_background: Some(rgba(0x28151cff).into()), + deleted_border: Some(rgba(0x421f2dff).into()), error: Some(rgba(0xbe4678ff).into()), + error_background: Some(rgba(0x28151cff).into()), + error_border: Some(rgba(0x421f2dff).into()), + hidden: Some(rgba(0x756f7eff).into()), + hidden_background: Some(rgba(0x3a353fff).into()), + hidden_border: Some(rgba(0x48434fff).into()), hint: Some(rgba(0x716998ff).into()), + hint_background: Some(rgba(0x161a36ff).into()), + hint_border: Some(rgba(0x222953ff).into()), + ignored: Some(rgba(0x898591ff).into()), + ignored_background: Some(rgba(0x3a353fff).into()), + ignored_border: Some(rgba(0x56505eff).into()), + info: Some(rgba(0x576ddaff).into()), + info_background: Some(rgba(0x161a36ff).into()), + info_border: Some(rgba(0x222953ff).into()), modified: Some(rgba(0xa06e3bff).into()), - success: Some(rgba(0xefecf4ff).into()), + modified_background: Some(rgba(0x231a12ff).into()), + modified_border: Some(rgba(0x392a1aff).into()), + predictive: Some(rgba(0x2c9292ff).into()), + predictive_background: Some(rgba(0x132020ff).into()), + predictive_border: Some(rgba(0x1a3434ff).into()), + renamed: Some(rgba(0x576ddaff).into()), + renamed_background: Some(rgba(0x161a36ff).into()), + renamed_border: Some(rgba(0x222953ff).into()), + success: Some(rgba(0x2c9292ff).into()), + success_background: Some(rgba(0x132020ff).into()), + success_border: Some(rgba(0x1a3434ff).into()), + unreachable: Some(rgba(0x898591ff).into()), + unreachable_background: Some(rgba(0x3a353fff).into()), + unreachable_border: Some(rgba(0x56505eff).into()), warning: Some(rgba(0xa06e3bff).into()), + warning_background: Some(rgba(0x231a12ff).into()), + warning_border: Some(rgba(0x392a1aff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -1636,36 +1880,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x3c3b31ff).into()), - border_variant: Some(rgba(0x2a2922ff).into()), + border: Some(rgba(0x5d5c4cff).into()), + border_variant: Some(rgba(0x5d5c4cff).into()), + border_focused: Some(rgba(0x1c3927ff).into()), + border_selected: Some(rgba(0x1c3927ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x504f41ff).into()), elevated_surface_background: Some(rgba(0x2c2b23ff).into()), + surface_background: Some(rgba(0x2c2b23ff).into()), background: Some(rgba(0x424136ff).into()), panel_background: Some(rgba(0x2c2b23ff).into()), - element_hover: Some(rgba(0x5d5c4c80).into()), - element_selected: Some(rgba(0x67665580).into()), + element_background: Some(rgba(0x2c2b23ff).into()), + element_hover: Some(rgba(0x3c3b31ff).into()), + element_active: Some(rgba(0x5c5b4bff).into()), + element_selected: Some(rgba(0x5c5b4bff).into()), + element_disabled: Some(rgba(0x2c2b23ff).into()), drop_target_background: Some(rgba(0x91907f80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x3c3b31ff).into()), + ghost_element_active: Some(rgba(0x5c5b4bff).into()), + ghost_element_selected: Some(rgba(0x5c5b4bff).into()), + ghost_element_disabled: Some(rgba(0x2c2b23ff).into()), text: Some(rgba(0xf4f3ecff).into()), text_muted: Some(rgba(0x91907fff).into()), - text_placeholder: Some(rgba(0x6c6b5aff).into()), - text_disabled: Some(rgba(0xf4f3ecff).into()), + text_placeholder: Some(rgba(0x7d7c6aff).into()), + text_disabled: Some(rgba(0x7d7c6aff).into()), text_accent: Some(rgba(0x37a166ff).into()), + icon: Some(rgba(0xf4f3ecff).into()), + icon_muted: Some(rgba(0x91907fff).into()), + icon_disabled: Some(rgba(0x7d7c6aff).into()), + icon_placeholder: Some(rgba(0x91907fff).into()), + icon_accent: Some(rgba(0x37a166ff).into()), status_bar_background: Some(rgba(0x424136ff).into()), title_bar_background: Some(rgba(0x424136ff).into()), toolbar_background: Some(rgba(0x22221bff).into()), tab_bar_background: Some(rgba(0x2c2b23ff).into()), tab_inactive_background: Some(rgba(0x2c2b23ff).into()), tab_active_background: Some(rgba(0x22221bff).into()), - scrollbar_thumb_background: Some(rgba(0xf4f3ec4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xf4f3ec4d).into()), - scrollbar_thumb_border: Some(rgba(0x2a2922ff).into()), + scrollbar_thumb_background: Some(rgba(0xf4f3ec4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x3c3b31ff).into()), + scrollbar_thumb_border: Some(rgba(0x3c3b31ff).into()), + scrollbar_track_background: Some(rgba(0x22221bff).into()), scrollbar_track_border: Some(rgba(0x2a2922ff).into()), editor_foreground: Some(rgba(0xe7e6dfff).into()), editor_background: Some(rgba(0x22221bff).into()), editor_gutter_background: Some(rgba(0x22221bff).into()), + editor_subheader_background: Some(rgba(0x2c2b23ff).into()), + editor_active_line_background: Some(rgba(0x2c2b23bf).into()), + editor_highlighted_line_background: Some(rgba(0x2c2b23ff).into()), editor_line_number: Some(rgba(0xf4f3ec59).into()), editor_active_line_number: Some(rgba(0xf4f3ecff).into()), + editor_invisible: Some(rgba(0x91907fff).into()), editor_wrap_guide: Some(rgba(0xf4f3ec0d).into()), editor_active_wrap_guide: Some(rgba(0xf4f3ec1a).into()), + editor_document_highlight_read_background: Some(rgba(0x37a1661a).into()), + editor_document_highlight_write_background: Some(rgba(0x7a786766).into()), terminal_background: Some(rgba(0x22221bff).into()), terminal_ansi_bright_black: Some(rgba(0x6a6958ff).into()), terminal_ansi_bright_red: Some(rgba(0x5c331fff).into()), @@ -1683,16 +1952,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x9d6c7cff).into()), terminal_ansi_cyan: Some(rgba(0x5b9d48ff).into()), terminal_ansi_white: Some(rgba(0xf4f3ecff).into()), + link_text_hover: Some(rgba(0x37a166ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xa59810ff).into()), + conflict_background: Some(rgba(0x25210dff).into()), + conflict_border: Some(rgba(0x3b3612ff).into()), created: Some(rgba(0x7d9727ff).into()), - deleted: Some(rgba(0x934e2dff).into()), + created_background: Some(rgba(0x1e2110ff).into()), + created_border: Some(rgba(0x2f3516ff).into()), + deleted: Some(rgba(0xba6237ff).into()), + deleted_background: Some(rgba(0x2b1811ff).into()), + deleted_border: Some(rgba(0x442619ff).into()), error: Some(rgba(0xba6237ff).into()), + error_background: Some(rgba(0x2b1811ff).into()), + error_border: Some(rgba(0x442619ff).into()), + hidden: Some(rgba(0x7d7c6aff).into()), + hidden_background: Some(rgba(0x424136ff).into()), + hidden_border: Some(rgba(0x504f41ff).into()), hint: Some(rgba(0x70825bff).into()), + hint_background: Some(rgba(0x142319ff).into()), + hint_border: Some(rgba(0x1c3927ff).into()), + ignored: Some(rgba(0x91907fff).into()), + ignored_background: Some(rgba(0x424136ff).into()), + ignored_border: Some(rgba(0x5d5c4cff).into()), + info: Some(rgba(0x37a166ff).into()), + info_background: Some(rgba(0x142319ff).into()), + info_border: Some(rgba(0x1c3927ff).into()), modified: Some(rgba(0xa59810ff).into()), - success: Some(rgba(0xf4f3ecff).into()), + modified_background: Some(rgba(0x25210dff).into()), + modified_border: Some(rgba(0x3b3612ff).into()), + predictive: Some(rgba(0x7d9727ff).into()), + predictive_background: Some(rgba(0x1e2110ff).into()), + predictive_border: Some(rgba(0x2f3516ff).into()), + renamed: Some(rgba(0x37a166ff).into()), + renamed_background: Some(rgba(0x142319ff).into()), + renamed_border: Some(rgba(0x1c3927ff).into()), + success: Some(rgba(0x7d9727ff).into()), + success_background: Some(rgba(0x1e2110ff).into()), + success_border: Some(rgba(0x2f3516ff).into()), + unreachable: Some(rgba(0x91907fff).into()), + unreachable_background: Some(rgba(0x424136ff).into()), + unreachable_border: Some(rgba(0x5d5c4cff).into()), warning: Some(rgba(0xa59810ff).into()), + warning_background: Some(rgba(0x25210dff).into()), + warning_border: Some(rgba(0x3b3612ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -2040,36 +2345,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x363f62ff).into()), - border_variant: Some(rgba(0x252d4fff).into()), + border: Some(rgba(0x5c6485ff).into()), + border_variant: Some(rgba(0x5c6485ff).into()), + border_focused: Some(rgba(0x203348ff).into()), + border_selected: Some(rgba(0x203348ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x4d5577ff).into()), elevated_surface_background: Some(rgba(0x262f51ff).into()), + surface_background: Some(rgba(0x262f51ff).into()), background: Some(rgba(0x3e4769ff).into()), panel_background: Some(rgba(0x262f51ff).into()), - element_hover: Some(rgba(0x5c648580).into()), - element_selected: Some(rgba(0x666e8f80).into()), + element_background: Some(rgba(0x262f51ff).into()), + element_hover: Some(rgba(0x363f62ff).into()), + element_active: Some(rgba(0x5a6284ff).into()), + element_selected: Some(rgba(0x5a6284ff).into()), + element_disabled: Some(rgba(0x262f51ff).into()), drop_target_background: Some(rgba(0x959bb280).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x363f62ff).into()), + ghost_element_active: Some(rgba(0x5a6284ff).into()), + ghost_element_selected: Some(rgba(0x5a6284ff).into()), + ghost_element_disabled: Some(rgba(0x262f51ff).into()), text: Some(rgba(0xf5f7ffff).into()), text_muted: Some(rgba(0x959bb2ff).into()), - text_placeholder: Some(rgba(0x6b7394ff).into()), - text_disabled: Some(rgba(0xf5f7ffff).into()), + text_placeholder: Some(rgba(0x7e849eff).into()), + text_disabled: Some(rgba(0x7e849eff).into()), text_accent: Some(rgba(0x3e8fd0ff).into()), + icon: Some(rgba(0xf5f7ffff).into()), + icon_muted: Some(rgba(0x959bb2ff).into()), + icon_disabled: Some(rgba(0x7e849eff).into()), + icon_placeholder: Some(rgba(0x959bb2ff).into()), + icon_accent: Some(rgba(0x3e8fd0ff).into()), status_bar_background: Some(rgba(0x3e4769ff).into()), title_bar_background: Some(rgba(0x3e4769ff).into()), toolbar_background: Some(rgba(0x202746ff).into()), tab_bar_background: Some(rgba(0x262f51ff).into()), tab_inactive_background: Some(rgba(0x262f51ff).into()), tab_active_background: Some(rgba(0x202746ff).into()), - scrollbar_thumb_background: Some(rgba(0xf5f7ff4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xf5f7ff4d).into()), - scrollbar_thumb_border: Some(rgba(0x252d4fff).into()), + scrollbar_thumb_background: Some(rgba(0xf5f7ff4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x363f62ff).into()), + scrollbar_thumb_border: Some(rgba(0x363f62ff).into()), + scrollbar_track_background: Some(rgba(0x202746ff).into()), scrollbar_track_border: Some(rgba(0x252d4fff).into()), editor_foreground: Some(rgba(0xdfe2f1ff).into()), editor_background: Some(rgba(0x202746ff).into()), editor_gutter_background: Some(rgba(0x202746ff).into()), + editor_subheader_background: Some(rgba(0x262f51ff).into()), + editor_active_line_background: Some(rgba(0x262f51bf).into()), + editor_highlighted_line_background: Some(rgba(0x262f51ff).into()), editor_line_number: Some(rgba(0xf5f7ff59).into()), editor_active_line_number: Some(rgba(0xf5f7ffff).into()), + editor_invisible: Some(rgba(0x959bb2ff).into()), editor_wrap_guide: Some(rgba(0xf5f7ff0d).into()), editor_active_wrap_guide: Some(rgba(0xf5f7ff1a).into()), + editor_document_highlight_read_background: Some(rgba(0x3e8fd01a).into()), + editor_document_highlight_write_background: Some(rgba(0x7a819c66).into()), terminal_background: Some(rgba(0x202746ff).into()), terminal_ansi_bright_black: Some(rgba(0x697192ff).into()), terminal_ansi_bright_red: Some(rgba(0x6d2616ff).into()), @@ -2087,16 +2417,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x9c637aff).into()), terminal_ansi_cyan: Some(rgba(0x25a2c9ff).into()), terminal_ansi_white: Some(rgba(0xf5f7ffff).into()), + link_text_hover: Some(rgba(0x3e8fd0ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xc08b31ff).into()), + conflict_background: Some(rgba(0x311e11ff).into()), + conflict_border: Some(rgba(0x4b3218ff).into()), created: Some(rgba(0xac973aff).into()), - deleted: Some(rgba(0xa33a1eff).into()), + created_background: Some(rgba(0x252113ff).into()), + created_border: Some(rgba(0x3d351bff).into()), + deleted: Some(rgba(0xc94923ff).into()), + deleted_background: Some(rgba(0x3c120dff).into()), + deleted_border: Some(rgba(0x551c13ff).into()), error: Some(rgba(0xc94923ff).into()), + error_background: Some(rgba(0x3c120dff).into()), + error_border: Some(rgba(0x551c13ff).into()), + hidden: Some(rgba(0x7e849eff).into()), + hidden_background: Some(rgba(0x3e4769ff).into()), + hidden_border: Some(rgba(0x4d5577ff).into()), hint: Some(rgba(0x6d82a6ff).into()), + hint_background: Some(rgba(0x161f2bff).into()), + hint_border: Some(rgba(0x203348ff).into()), + ignored: Some(rgba(0x959bb2ff).into()), + ignored_background: Some(rgba(0x3e4769ff).into()), + ignored_border: Some(rgba(0x5c6485ff).into()), + info: Some(rgba(0x3e8fd0ff).into()), + info_background: Some(rgba(0x161f2bff).into()), + info_border: Some(rgba(0x203348ff).into()), modified: Some(rgba(0xc08b31ff).into()), - success: Some(rgba(0xf5f7ffff).into()), + modified_background: Some(rgba(0x311e11ff).into()), + modified_border: Some(rgba(0x4b3218ff).into()), + predictive: Some(rgba(0xac973aff).into()), + predictive_background: Some(rgba(0x252113ff).into()), + predictive_border: Some(rgba(0x3d351bff).into()), + renamed: Some(rgba(0x3e8fd0ff).into()), + renamed_background: Some(rgba(0x161f2bff).into()), + renamed_border: Some(rgba(0x203348ff).into()), + success: Some(rgba(0xac973aff).into()), + success_background: Some(rgba(0x252113ff).into()), + success_border: Some(rgba(0x3d351bff).into()), + unreachable: Some(rgba(0x959bb2ff).into()), + unreachable_background: Some(rgba(0x3e4769ff).into()), + unreachable_border: Some(rgba(0x5c6485ff).into()), warning: Some(rgba(0xc08b31ff).into()), + warning_background: Some(rgba(0x311e11ff).into()), + warning_border: Some(rgba(0x4b3218ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -2444,36 +2810,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xccd0e1ff).into()), - border_variant: Some(rgba(0xe9ebf7ff).into()), + border: Some(rgba(0x9a9fb6ff).into()), + border_variant: Some(rgba(0x9a9fb6ff).into()), + border_focused: Some(rgba(0xc2d5efff).into()), + border_selected: Some(rgba(0xc2d5efff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xaeb3c7ff).into()), elevated_surface_background: Some(rgba(0xe5e8f5ff).into()), + surface_background: Some(rgba(0xe5e8f5ff).into()), background: Some(rgba(0xc2c6d9ff).into()), panel_background: Some(rgba(0xe5e8f5ff).into()), - element_hover: Some(rgba(0x9a9fb680).into()), - element_selected: Some(rgba(0x8e94aa80).into()), + element_background: Some(rgba(0xe5e8f5ff).into()), + element_hover: Some(rgba(0xccd0e1ff).into()), + element_active: Some(rgba(0x9ca1b8ff).into()), + element_selected: Some(rgba(0x9ca1b8ff).into()), + element_disabled: Some(rgba(0xe5e8f5ff).into()), drop_target_background: Some(rgba(0x60688980).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xccd0e1ff).into()), + ghost_element_active: Some(rgba(0x9ca1b8ff).into()), + ghost_element_selected: Some(rgba(0x9ca1b8ff).into()), + ghost_element_disabled: Some(rgba(0xe5e8f5ff).into()), text: Some(rgba(0x202746ff).into()), text_muted: Some(rgba(0x606889ff).into()), - text_placeholder: Some(rgba(0x898fa5ff).into()), - text_disabled: Some(rgba(0x202746ff).into()), + text_placeholder: Some(rgba(0x767d9aff).into()), + text_disabled: Some(rgba(0x767d9aff).into()), text_accent: Some(rgba(0x3f8fd0ff).into()), + icon: Some(rgba(0x202746ff).into()), + icon_muted: Some(rgba(0x606889ff).into()), + icon_disabled: Some(rgba(0x767d9aff).into()), + icon_placeholder: Some(rgba(0x606889ff).into()), + icon_accent: Some(rgba(0x3f8fd0ff).into()), status_bar_background: Some(rgba(0xc2c6d9ff).into()), title_bar_background: Some(rgba(0xc2c6d9ff).into()), toolbar_background: Some(rgba(0xf5f7ffff).into()), tab_bar_background: Some(rgba(0xe5e8f5ff).into()), tab_inactive_background: Some(rgba(0xe5e8f5ff).into()), tab_active_background: Some(rgba(0xf5f7ffff).into()), - scrollbar_thumb_background: Some(rgba(0x2027464d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x2027464d).into()), - scrollbar_thumb_border: Some(rgba(0xe9ebf7ff).into()), + scrollbar_thumb_background: Some(rgba(0x2027464c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xccd0e1ff).into()), + scrollbar_thumb_border: Some(rgba(0xccd0e1ff).into()), + scrollbar_track_background: Some(rgba(0xf5f7ffff).into()), scrollbar_track_border: Some(rgba(0xe9ebf7ff).into()), editor_foreground: Some(rgba(0x293256ff).into()), editor_background: Some(rgba(0xf5f7ffff).into()), editor_gutter_background: Some(rgba(0xf5f7ffff).into()), + editor_subheader_background: Some(rgba(0xe5e8f5ff).into()), + editor_active_line_background: Some(rgba(0xe5e8f5bf).into()), + editor_highlighted_line_background: Some(rgba(0xe5e8f5ff).into()), editor_line_number: Some(rgba(0x20274659).into()), editor_active_line_number: Some(rgba(0x202746ff).into()), + editor_invisible: Some(rgba(0x606889ff).into()), editor_wrap_guide: Some(rgba(0x2027460d).into()), editor_active_wrap_guide: Some(rgba(0x2027461a).into()), + editor_document_highlight_read_background: Some(rgba(0x3f8fd01a).into()), + editor_document_highlight_write_background: Some(rgba(0x7a819c66).into()), terminal_background: Some(rgba(0xf5f7ffff).into()), terminal_ansi_bright_black: Some(rgba(0x8b91a7ff).into()), terminal_ansi_bright_red: Some(rgba(0xefa58cff).into()), @@ -2491,16 +2882,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x9c637aff).into()), terminal_ansi_cyan: Some(rgba(0x25a2c9ff).into()), terminal_ansi_white: Some(rgba(0x202746ff).into()), + link_text_hover: Some(rgba(0x3f8fd0ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0xbfab61ff).into()), + conflict: Some(rgba(0xc08b31ff).into()), + conflict_background: Some(rgba(0xf6e6d4ff).into()), + conflict_border: Some(rgba(0xeed4b3ff).into()), + created: Some(rgba(0xac973aff).into()), + created_background: Some(rgba(0xf1e9d6ff).into()), + created_border: Some(rgba(0xe4d8b7ff).into()), deleted: Some(rgba(0xc94a23ff).into()), + deleted_background: Some(rgba(0xfcdad0ff).into()), + deleted_border: Some(rgba(0xf6beabff).into()), error: Some(rgba(0xc94a23ff).into()), + error_background: Some(rgba(0xfcdad0ff).into()), + error_border: Some(rgba(0xf6beabff).into()), + hidden: Some(rgba(0x767d9aff).into()), + hidden_background: Some(rgba(0xc2c6d9ff).into()), + hidden_border: Some(rgba(0xaeb3c7ff).into()), hint: Some(rgba(0x7087b2ff).into()), + hint_background: Some(rgba(0xdde7f6ff).into()), + hint_border: Some(rgba(0xc2d5efff).into()), + ignored: Some(rgba(0x606889ff).into()), + ignored_background: Some(rgba(0xc2c6d9ff).into()), + ignored_border: Some(rgba(0x9a9fb6ff).into()), + info: Some(rgba(0x3f8fd0ff).into()), + info_background: Some(rgba(0xdde7f6ff).into()), + info_border: Some(rgba(0xc2d5efff).into()), modified: Some(rgba(0xc08b31ff).into()), - success: Some(rgba(0x202746ff).into()), + modified_background: Some(rgba(0xf6e6d4ff).into()), + modified_border: Some(rgba(0xeed4b3ff).into()), + predictive: Some(rgba(0xac973aff).into()), + predictive_background: Some(rgba(0xf1e9d6ff).into()), + predictive_border: Some(rgba(0xe4d8b7ff).into()), + renamed: Some(rgba(0x3f8fd0ff).into()), + renamed_background: Some(rgba(0xdde7f6ff).into()), + renamed_border: Some(rgba(0xc2d5efff).into()), + success: Some(rgba(0xac973aff).into()), + success_background: Some(rgba(0xf1e9d6ff).into()), + success_border: Some(rgba(0xe4d8b7ff).into()), + unreachable: Some(rgba(0x606889ff).into()), + unreachable_background: Some(rgba(0xc2c6d9ff).into()), + unreachable_border: Some(rgba(0x9a9fb6ff).into()), warning: Some(rgba(0xc08b31ff).into()), + warning_background: Some(rgba(0xf6e6d4ff).into()), + warning_border: Some(rgba(0xeed4b3ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -2848,36 +3275,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x3b3933ff).into()), - border_variant: Some(rgba(0x252521ff).into()), + border: Some(rgba(0x6c695cff).into()), + border_variant: Some(rgba(0x6c695cff).into()), + border_focused: Some(rgba(0x263056ff).into()), + border_selected: Some(rgba(0x263056ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x58564bff).into()), elevated_surface_background: Some(rgba(0x262622ff).into()), + surface_background: Some(rgba(0x262622ff).into()), background: Some(rgba(0x45433bff).into()), panel_background: Some(rgba(0x262622ff).into()), - element_hover: Some(rgba(0x6c695c80).into()), - element_selected: Some(rgba(0x77746480).into()), + element_background: Some(rgba(0x262622ff).into()), + element_hover: Some(rgba(0x3b3933ff).into()), + element_active: Some(rgba(0x6a675aff).into()), + element_selected: Some(rgba(0x6a675aff).into()), + element_disabled: Some(rgba(0x262622ff).into()), drop_target_background: Some(rgba(0xa4a08b80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x3b3933ff).into()), + ghost_element_active: Some(rgba(0x6a675aff).into()), + ghost_element_selected: Some(rgba(0x6a675aff).into()), + ghost_element_disabled: Some(rgba(0x262622ff).into()), text: Some(rgba(0xfefbecff).into()), text_muted: Some(rgba(0xa4a08bff).into()), - text_placeholder: Some(rgba(0x7c7968ff).into()), - text_disabled: Some(rgba(0xfefbecff).into()), + text_placeholder: Some(rgba(0x8f8b77ff).into()), + text_disabled: Some(rgba(0x8f8b77ff).into()), text_accent: Some(rgba(0x6684e0ff).into()), + icon: Some(rgba(0xfefbecff).into()), + icon_muted: Some(rgba(0xa4a08bff).into()), + icon_disabled: Some(rgba(0x8f8b77ff).into()), + icon_placeholder: Some(rgba(0xa4a08bff).into()), + icon_accent: Some(rgba(0x6684e0ff).into()), status_bar_background: Some(rgba(0x45433bff).into()), title_bar_background: Some(rgba(0x45433bff).into()), toolbar_background: Some(rgba(0x20201dff).into()), tab_bar_background: Some(rgba(0x262622ff).into()), tab_inactive_background: Some(rgba(0x262622ff).into()), tab_active_background: Some(rgba(0x20201dff).into()), - scrollbar_thumb_background: Some(rgba(0xfefbec4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xfefbec4d).into()), - scrollbar_thumb_border: Some(rgba(0x252521ff).into()), + scrollbar_thumb_background: Some(rgba(0xfefbec4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x3b3933ff).into()), + scrollbar_thumb_border: Some(rgba(0x3b3933ff).into()), + scrollbar_track_background: Some(rgba(0x20201dff).into()), scrollbar_track_border: Some(rgba(0x252521ff).into()), editor_foreground: Some(rgba(0xe8e4cfff).into()), editor_background: Some(rgba(0x20201dff).into()), editor_gutter_background: Some(rgba(0x20201dff).into()), + editor_subheader_background: Some(rgba(0x262622ff).into()), + editor_active_line_background: Some(rgba(0x262622bf).into()), + editor_highlighted_line_background: Some(rgba(0x262622ff).into()), editor_line_number: Some(rgba(0xfefbec59).into()), editor_active_line_number: Some(rgba(0xfefbecff).into()), + editor_invisible: Some(rgba(0xa4a08bff).into()), editor_wrap_guide: Some(rgba(0xfefbec0d).into()), editor_active_wrap_guide: Some(rgba(0xfefbec1a).into()), + editor_document_highlight_read_background: Some(rgba(0x6684e01a).into()), + editor_document_highlight_write_background: Some(rgba(0x8b887466).into()), terminal_background: Some(rgba(0x20201dff).into()), terminal_ansi_bright_black: Some(rgba(0x7a7766ff).into()), terminal_ansi_bright_red: Some(rgba(0x781c1fff).into()), @@ -2895,16 +3347,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xd43652ff).into()), terminal_ansi_cyan: Some(rgba(0x21ad83ff).into()), terminal_ansi_white: Some(rgba(0xfefbecff).into()), + link_text_hover: Some(rgba(0x6684e0ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xae9515ff).into()), + conflict_background: Some(rgba(0x2a200eff).into()), + conflict_border: Some(rgba(0x413513ff).into()), created: Some(rgba(0x60ac3aff).into()), - deleted: Some(rgba(0xaf2c2eff).into()), + created_background: Some(rgba(0x1a2413ff).into()), + created_border: Some(rgba(0x273c1bff).into()), + deleted: Some(rgba(0xd73837ff).into()), + deleted_background: Some(rgba(0x450d11ff).into()), + deleted_border: Some(rgba(0x5f1519ff).into()), error: Some(rgba(0xd73837ff).into()), + error_background: Some(rgba(0x450d11ff).into()), + error_border: Some(rgba(0x5f1519ff).into()), + hidden: Some(rgba(0x8f8b77ff).into()), + hidden_background: Some(rgba(0x45433bff).into()), + hidden_border: Some(rgba(0x58564bff).into()), hint: Some(rgba(0xb17272ff).into()), + hint_background: Some(rgba(0x171e39ff).into()), + hint_border: Some(rgba(0x263056ff).into()), + ignored: Some(rgba(0xa4a08bff).into()), + ignored_background: Some(rgba(0x45433bff).into()), + ignored_border: Some(rgba(0x6c695cff).into()), + info: Some(rgba(0x6684e0ff).into()), + info_background: Some(rgba(0x171e39ff).into()), + info_border: Some(rgba(0x263056ff).into()), modified: Some(rgba(0xae9515ff).into()), - success: Some(rgba(0xfefbecff).into()), + modified_background: Some(rgba(0x2a200eff).into()), + modified_border: Some(rgba(0x413513ff).into()), + predictive: Some(rgba(0x60ac3aff).into()), + predictive_background: Some(rgba(0x1a2413ff).into()), + predictive_border: Some(rgba(0x273c1bff).into()), + renamed: Some(rgba(0x6684e0ff).into()), + renamed_background: Some(rgba(0x171e39ff).into()), + renamed_border: Some(rgba(0x263056ff).into()), + success: Some(rgba(0x60ac3aff).into()), + success_background: Some(rgba(0x1a2413ff).into()), + success_border: Some(rgba(0x273c1bff).into()), + unreachable: Some(rgba(0xa4a08bff).into()), + unreachable_background: Some(rgba(0x45433bff).into()), + unreachable_border: Some(rgba(0x6c695cff).into()), warning: Some(rgba(0xae9515ff).into()), + warning_background: Some(rgba(0x2a200eff).into()), + warning_border: Some(rgba(0x413513ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -3252,36 +3740,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x333b33ff).into()), - border_variant: Some(rgba(0x1d201dff).into()), + border: Some(rgba(0x5c6c5cff).into()), + border_variant: Some(rgba(0x5c6c5cff).into()), + border_focused: Some(rgba(0x102668ff).into()), + border_selected: Some(rgba(0x102668ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x4b584bff).into()), elevated_surface_background: Some(rgba(0x1f231fff).into()), + surface_background: Some(rgba(0x1f231fff).into()), background: Some(rgba(0x3b453bff).into()), panel_background: Some(rgba(0x1f231fff).into()), - element_hover: Some(rgba(0x5c6c5c80).into()), - element_selected: Some(rgba(0x64776480).into()), + element_background: Some(rgba(0x1f231fff).into()), + element_hover: Some(rgba(0x333b33ff).into()), + element_active: Some(rgba(0x5a6a5aff).into()), + element_selected: Some(rgba(0x5a6a5aff).into()), + element_disabled: Some(rgba(0x1f231fff).into()), drop_target_background: Some(rgba(0x8ba48b80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x333b33ff).into()), + ghost_element_active: Some(rgba(0x5a6a5aff).into()), + ghost_element_selected: Some(rgba(0x5a6a5aff).into()), + ghost_element_disabled: Some(rgba(0x1f231fff).into()), text: Some(rgba(0xf4fbf4ff).into()), text_muted: Some(rgba(0x8ba48bff).into()), - text_placeholder: Some(rgba(0x687c68ff).into()), - text_disabled: Some(rgba(0xf4fbf4ff).into()), + text_placeholder: Some(rgba(0x778f77ff).into()), + text_disabled: Some(rgba(0x778f77ff).into()), text_accent: Some(rgba(0x3e62f4ff).into()), + icon: Some(rgba(0xf4fbf4ff).into()), + icon_muted: Some(rgba(0x8ba48bff).into()), + icon_disabled: Some(rgba(0x778f77ff).into()), + icon_placeholder: Some(rgba(0x8ba48bff).into()), + icon_accent: Some(rgba(0x3e62f4ff).into()), status_bar_background: Some(rgba(0x3b453bff).into()), title_bar_background: Some(rgba(0x3b453bff).into()), toolbar_background: Some(rgba(0x131513ff).into()), tab_bar_background: Some(rgba(0x1f231fff).into()), tab_inactive_background: Some(rgba(0x1f231fff).into()), tab_active_background: Some(rgba(0x131513ff).into()), - scrollbar_thumb_background: Some(rgba(0xf4fbf44d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xf4fbf44d).into()), - scrollbar_thumb_border: Some(rgba(0x1d201dff).into()), + scrollbar_thumb_background: Some(rgba(0xf4fbf44c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x333b33ff).into()), + scrollbar_thumb_border: Some(rgba(0x333b33ff).into()), + scrollbar_track_background: Some(rgba(0x131513ff).into()), scrollbar_track_border: Some(rgba(0x1d201dff).into()), editor_foreground: Some(rgba(0xcfe8cfff).into()), editor_background: Some(rgba(0x131513ff).into()), editor_gutter_background: Some(rgba(0x131513ff).into()), + editor_subheader_background: Some(rgba(0x1f231fff).into()), + editor_active_line_background: Some(rgba(0x1f231fbf).into()), + editor_highlighted_line_background: Some(rgba(0x1f231fff).into()), editor_line_number: Some(rgba(0xf4fbf459).into()), editor_active_line_number: Some(rgba(0xf4fbf4ff).into()), + editor_invisible: Some(rgba(0x8ba48bff).into()), editor_wrap_guide: Some(rgba(0xf4fbf40d).into()), editor_active_wrap_guide: Some(rgba(0xf4fbf41a).into()), + editor_document_highlight_read_background: Some(rgba(0x3e62f41a).into()), + editor_document_highlight_write_background: Some(rgba(0x748b7466).into()), terminal_background: Some(rgba(0x131513ff).into()), terminal_ansi_bright_black: Some(rgba(0x667a66ff).into()), terminal_ansi_bright_red: Some(rgba(0x840b21ff).into()), @@ -3299,16 +3812,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xe61cc3ff).into()), terminal_ansi_cyan: Some(rgba(0x1c99b3ff).into()), terminal_ansi_white: Some(rgba(0xf4fbf4ff).into()), + link_text_hover: Some(rgba(0x3e62f4ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0x98981cff).into()), + conflict_background: Some(rgba(0x22210fff).into()), + conflict_border: Some(rgba(0x373614ff).into()), created: Some(rgba(0x2ba32aff).into()), - deleted: Some(rgba(0xbd1331ff).into()), + created_background: Some(rgba(0x142310ff).into()), + created_border: Some(rgba(0x1b3917ff).into()), + deleted: Some(rgba(0xe61c3cff).into()), + deleted_background: Some(rgba(0x500412ff).into()), + deleted_border: Some(rgba(0x6b071aff).into()), error: Some(rgba(0xe61c3cff).into()), + error_background: Some(rgba(0x500412ff).into()), + error_border: Some(rgba(0x6b071aff).into()), + hidden: Some(rgba(0x778f77ff).into()), + hidden_background: Some(rgba(0x3b453bff).into()), + hidden_border: Some(rgba(0x4b584bff).into()), hint: Some(rgba(0x008b9fff).into()), + hint_background: Some(rgba(0x061949ff).into()), + hint_border: Some(rgba(0x102668ff).into()), + ignored: Some(rgba(0x8ba48bff).into()), + ignored_background: Some(rgba(0x3b453bff).into()), + ignored_border: Some(rgba(0x5c6c5cff).into()), + info: Some(rgba(0x3e62f4ff).into()), + info_background: Some(rgba(0x061949ff).into()), + info_border: Some(rgba(0x102668ff).into()), modified: Some(rgba(0x98981cff).into()), - success: Some(rgba(0xf4fbf4ff).into()), + modified_background: Some(rgba(0x22210fff).into()), + modified_border: Some(rgba(0x373614ff).into()), + predictive: Some(rgba(0x2ba32aff).into()), + predictive_background: Some(rgba(0x142310ff).into()), + predictive_border: Some(rgba(0x1b3917ff).into()), + renamed: Some(rgba(0x3e62f4ff).into()), + renamed_background: Some(rgba(0x061949ff).into()), + renamed_border: Some(rgba(0x102668ff).into()), + success: Some(rgba(0x2ba32aff).into()), + success_background: Some(rgba(0x142310ff).into()), + success_border: Some(rgba(0x1b3917ff).into()), + unreachable: Some(rgba(0x8ba48bff).into()), + unreachable_background: Some(rgba(0x3b453bff).into()), + unreachable_border: Some(rgba(0x5c6c5cff).into()), warning: Some(rgba(0x98981cff).into()), + warning_background: Some(rgba(0x22210fff).into()), + warning_border: Some(rgba(0x373614ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -3656,36 +4205,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xcbc8d1ff).into()), - border_variant: Some(rgba(0xe8e5edff).into()), + border: Some(rgba(0x8f8b96ff).into()), + border_variant: Some(rgba(0x8f8b96ff).into()), + border_focused: Some(rgba(0xc9c8f3ff).into()), + border_selected: Some(rgba(0xc9c8f3ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xa7a3adff).into()), elevated_surface_background: Some(rgba(0xe6e3ebff).into()), + surface_background: Some(rgba(0xe6e3ebff).into()), background: Some(rgba(0xbfbcc5ff).into()), panel_background: Some(rgba(0xe6e3ebff).into()), - element_hover: Some(rgba(0x8f8b9680).into()), - element_selected: Some(rgba(0x837e8b80).into()), + element_background: Some(rgba(0xe6e3ebff).into()), + element_hover: Some(rgba(0xcbc8d1ff).into()), + element_active: Some(rgba(0x918d98ff).into()), + element_selected: Some(rgba(0x918d98ff).into()), + element_disabled: Some(rgba(0xe6e3ebff).into()), drop_target_background: Some(rgba(0x5a546280).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xcbc8d1ff).into()), + ghost_element_active: Some(rgba(0x918d98ff).into()), + ghost_element_selected: Some(rgba(0x918d98ff).into()), + ghost_element_disabled: Some(rgba(0xe6e3ebff).into()), text: Some(rgba(0x19171cff).into()), text_muted: Some(rgba(0x5a5462ff).into()), - text_placeholder: Some(rgba(0x7e7987ff).into()), - text_disabled: Some(rgba(0x19171cff).into()), + text_placeholder: Some(rgba(0x6e6876ff).into()), + text_disabled: Some(rgba(0x6e6876ff).into()), text_accent: Some(rgba(0x586ddaff).into()), + icon: Some(rgba(0x19171cff).into()), + icon_muted: Some(rgba(0x5a5462ff).into()), + icon_disabled: Some(rgba(0x6e6876ff).into()), + icon_placeholder: Some(rgba(0x5a5462ff).into()), + icon_accent: Some(rgba(0x586ddaff).into()), status_bar_background: Some(rgba(0xbfbcc5ff).into()), title_bar_background: Some(rgba(0xbfbcc5ff).into()), toolbar_background: Some(rgba(0xefecf4ff).into()), tab_bar_background: Some(rgba(0xe6e3ebff).into()), tab_inactive_background: Some(rgba(0xe6e3ebff).into()), tab_active_background: Some(rgba(0xefecf4ff).into()), - scrollbar_thumb_background: Some(rgba(0x19171c4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x19171c4d).into()), - scrollbar_thumb_border: Some(rgba(0xe8e5edff).into()), + scrollbar_thumb_background: Some(rgba(0x19171c4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xcbc8d1ff).into()), + scrollbar_thumb_border: Some(rgba(0xcbc8d1ff).into()), + scrollbar_track_background: Some(rgba(0xefecf4ff).into()), scrollbar_track_border: Some(rgba(0xe8e5edff).into()), editor_foreground: Some(rgba(0x26232aff).into()), editor_background: Some(rgba(0xefecf4ff).into()), editor_gutter_background: Some(rgba(0xefecf4ff).into()), + editor_subheader_background: Some(rgba(0xe6e3ebff).into()), + editor_active_line_background: Some(rgba(0xe6e3ebbf).into()), + editor_highlighted_line_background: Some(rgba(0xe6e3ebff).into()), editor_line_number: Some(rgba(0x19171c59).into()), editor_active_line_number: Some(rgba(0x19171cff).into()), + editor_invisible: Some(rgba(0x5a5462ff).into()), editor_wrap_guide: Some(rgba(0x19171c0d).into()), editor_active_wrap_guide: Some(rgba(0x19171c1a).into()), + editor_document_highlight_read_background: Some(rgba(0x586dda1a).into()), + editor_document_highlight_write_background: Some(rgba(0x726c7a66).into()), terminal_background: Some(rgba(0xefecf4ff).into()), terminal_ansi_bright_black: Some(rgba(0x807b89ff).into()), terminal_ansi_bright_red: Some(rgba(0xe3a4b9ff).into()), @@ -3703,16 +4277,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xbf41bfff).into()), terminal_ansi_cyan: Some(rgba(0x3b8bc6ff).into()), terminal_ansi_white: Some(rgba(0x19171cff).into()), + link_text_hover: Some(rgba(0x586ddaff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x5fa8a7ff).into()), + conflict: Some(rgba(0xa06e3cff).into()), + conflict_background: Some(rgba(0xeee0d5ff).into()), + conflict_border: Some(rgba(0xe0c9b5ff).into()), + created: Some(rgba(0x2c9292ff).into()), + created_background: Some(rgba(0xd7e9e8ff).into()), + created_border: Some(rgba(0xb9d7d6ff).into()), deleted: Some(rgba(0xbe4778ff).into()), + deleted_background: Some(rgba(0xf5dae2ff).into()), + deleted_border: Some(rgba(0xecbecdff).into()), error: Some(rgba(0xbe4778ff).into()), + error_background: Some(rgba(0xf5dae2ff).into()), + error_border: Some(rgba(0xecbecdff).into()), + hidden: Some(rgba(0x6e6876ff).into()), + hidden_background: Some(rgba(0xbfbcc5ff).into()), + hidden_border: Some(rgba(0xa7a3adff).into()), hint: Some(rgba(0x786e9dff).into()), + hint_background: Some(rgba(0xe1e0f9ff).into()), + hint_border: Some(rgba(0xc9c8f3ff).into()), + ignored: Some(rgba(0x5a5462ff).into()), + ignored_background: Some(rgba(0xbfbcc5ff).into()), + ignored_border: Some(rgba(0x8f8b96ff).into()), + info: Some(rgba(0x586ddaff).into()), + info_background: Some(rgba(0xe1e0f9ff).into()), + info_border: Some(rgba(0xc9c8f3ff).into()), modified: Some(rgba(0xa06e3cff).into()), - success: Some(rgba(0x19171cff).into()), + modified_background: Some(rgba(0xeee0d5ff).into()), + modified_border: Some(rgba(0xe0c9b5ff).into()), + predictive: Some(rgba(0x2c9292ff).into()), + predictive_background: Some(rgba(0xd7e9e8ff).into()), + predictive_border: Some(rgba(0xb9d7d6ff).into()), + renamed: Some(rgba(0x586ddaff).into()), + renamed_background: Some(rgba(0xe1e0f9ff).into()), + renamed_border: Some(rgba(0xc9c8f3ff).into()), + success: Some(rgba(0x2c9292ff).into()), + success_background: Some(rgba(0xd7e9e8ff).into()), + success_border: Some(rgba(0xb9d7d6ff).into()), + unreachable: Some(rgba(0x5a5462ff).into()), + unreachable_background: Some(rgba(0xbfbcc5ff).into()), + unreachable_border: Some(rgba(0x8f8b96ff).into()), warning: Some(rgba(0xa06e3cff).into()), + warning_background: Some(rgba(0xeee0d5ff).into()), + warning_border: Some(rgba(0xe0c9b5ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -4060,36 +4670,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x352f2fff).into()), - border_variant: Some(rgba(0x231f1fff).into()), + border: Some(rgba(0x564e4eff).into()), + border_variant: Some(rgba(0x564e4eff).into()), + border_focused: Some(rgba(0x2c2b45ff).into()), + border_selected: Some(rgba(0x2c2b45ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x494242ff).into()), elevated_surface_background: Some(rgba(0x252020ff).into()), + surface_background: Some(rgba(0x252020ff).into()), background: Some(rgba(0x3b3535ff).into()), panel_background: Some(rgba(0x252020ff).into()), - element_hover: Some(rgba(0x564e4e80).into()), - element_selected: Some(rgba(0x60585880).into()), + element_background: Some(rgba(0x252020ff).into()), + element_hover: Some(rgba(0x352f2fff).into()), + element_active: Some(rgba(0x554d4dff).into()), + element_selected: Some(rgba(0x554d4dff).into()), + element_disabled: Some(rgba(0x252020ff).into()), drop_target_background: Some(rgba(0x89838380).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x352f2fff).into()), + ghost_element_active: Some(rgba(0x554d4dff).into()), + ghost_element_selected: Some(rgba(0x554d4dff).into()), + ghost_element_disabled: Some(rgba(0x252020ff).into()), text: Some(rgba(0xf4ececff).into()), text_muted: Some(rgba(0x898383ff).into()), - text_placeholder: Some(rgba(0x655d5dff).into()), - text_disabled: Some(rgba(0xf4ececff).into()), + text_placeholder: Some(rgba(0x756e6eff).into()), + text_disabled: Some(rgba(0x756e6eff).into()), text_accent: Some(rgba(0x7272caff).into()), + icon: Some(rgba(0xf4ececff).into()), + icon_muted: Some(rgba(0x898383ff).into()), + icon_disabled: Some(rgba(0x756e6eff).into()), + icon_placeholder: Some(rgba(0x898383ff).into()), + icon_accent: Some(rgba(0x7272caff).into()), status_bar_background: Some(rgba(0x3b3535ff).into()), title_bar_background: Some(rgba(0x3b3535ff).into()), toolbar_background: Some(rgba(0x1b1818ff).into()), tab_bar_background: Some(rgba(0x252020ff).into()), tab_inactive_background: Some(rgba(0x252020ff).into()), tab_active_background: Some(rgba(0x1b1818ff).into()), - scrollbar_thumb_background: Some(rgba(0xf4ecec4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xf4ecec4d).into()), - scrollbar_thumb_border: Some(rgba(0x231f1fff).into()), + scrollbar_thumb_background: Some(rgba(0xf4ecec4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x352f2fff).into()), + scrollbar_thumb_border: Some(rgba(0x352f2fff).into()), + scrollbar_track_background: Some(rgba(0x1b1818ff).into()), scrollbar_track_border: Some(rgba(0x231f1fff).into()), editor_foreground: Some(rgba(0xe7dfdfff).into()), editor_background: Some(rgba(0x1b1818ff).into()), editor_gutter_background: Some(rgba(0x1b1818ff).into()), + editor_subheader_background: Some(rgba(0x252020ff).into()), + editor_active_line_background: Some(rgba(0x252020bf).into()), + editor_highlighted_line_background: Some(rgba(0x252020ff).into()), editor_line_number: Some(rgba(0xf4ecec59).into()), editor_active_line_number: Some(rgba(0xf4ececff).into()), + editor_invisible: Some(rgba(0x898383ff).into()), editor_wrap_guide: Some(rgba(0xf4ecec0d).into()), editor_active_wrap_guide: Some(rgba(0xf4ecec1a).into()), + editor_document_highlight_read_background: Some(rgba(0x7272ca1a).into()), + editor_document_highlight_write_background: Some(rgba(0x726a6a66).into()), terminal_background: Some(rgba(0x1b1818ff).into()), terminal_ansi_bright_black: Some(rgba(0x635b5bff).into()), terminal_ansi_bright_red: Some(rgba(0x692727ff).into()), @@ -4107,16 +4742,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xbd5187ff).into()), terminal_ansi_cyan: Some(rgba(0x5485b6ff).into()), terminal_ansi_white: Some(rgba(0xf4ececff).into()), + link_text_hover: Some(rgba(0x7272caff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xa06e3bff).into()), + conflict_background: Some(rgba(0x231a12ff).into()), + conflict_border: Some(rgba(0x392a1aff).into()), created: Some(rgba(0x4b8b8bff).into()), - deleted: Some(rgba(0xa23b3bff).into()), + created_background: Some(rgba(0x161f1fff).into()), + created_border: Some(rgba(0x203232ff).into()), + deleted: Some(rgba(0xca4949ff).into()), + deleted_background: Some(rgba(0x361414ff).into()), + deleted_border: Some(rgba(0x501e1eff).into()), error: Some(rgba(0xca4949ff).into()), + error_background: Some(rgba(0x361414ff).into()), + error_border: Some(rgba(0x501e1eff).into()), + hidden: Some(rgba(0x756e6eff).into()), + hidden_background: Some(rgba(0x3b3535ff).into()), + hidden_border: Some(rgba(0x494242ff).into()), hint: Some(rgba(0x8a647aff).into()), + hint_background: Some(rgba(0x1c1b29ff).into()), + hint_border: Some(rgba(0x2c2b45ff).into()), + ignored: Some(rgba(0x898383ff).into()), + ignored_background: Some(rgba(0x3b3535ff).into()), + ignored_border: Some(rgba(0x564e4eff).into()), + info: Some(rgba(0x7272caff).into()), + info_background: Some(rgba(0x1c1b29ff).into()), + info_border: Some(rgba(0x2c2b45ff).into()), modified: Some(rgba(0xa06e3bff).into()), - success: Some(rgba(0xf4ececff).into()), + modified_background: Some(rgba(0x231a12ff).into()), + modified_border: Some(rgba(0x392a1aff).into()), + predictive: Some(rgba(0x4b8b8bff).into()), + predictive_background: Some(rgba(0x161f1fff).into()), + predictive_border: Some(rgba(0x203232ff).into()), + renamed: Some(rgba(0x7272caff).into()), + renamed_background: Some(rgba(0x1c1b29ff).into()), + renamed_border: Some(rgba(0x2c2b45ff).into()), + success: Some(rgba(0x4b8b8bff).into()), + success_background: Some(rgba(0x161f1fff).into()), + success_border: Some(rgba(0x203232ff).into()), + unreachable: Some(rgba(0x898383ff).into()), + unreachable_background: Some(rgba(0x3b3535ff).into()), + unreachable_border: Some(rgba(0x564e4eff).into()), warning: Some(rgba(0xa06e3bff).into()), + warning_background: Some(rgba(0x231a12ff).into()), + warning_border: Some(rgba(0x392a1aff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -4464,36 +5135,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x393239ff).into()), - border_variant: Some(rgba(0x231e23ff).into()), + border: Some(rgba(0x675b67ff).into()), + border_variant: Some(rgba(0x675b67ff).into()), + border_focused: Some(rgba(0x1a2961ff).into()), + border_selected: Some(rgba(0x1a2961ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x554a55ff).into()), elevated_surface_background: Some(rgba(0x252025ff).into()), + surface_background: Some(rgba(0x252025ff).into()), background: Some(rgba(0x433a43ff).into()), panel_background: Some(rgba(0x252025ff).into()), - element_hover: Some(rgba(0x675b6780).into()), - element_selected: Some(rgba(0x72647280).into()), + element_background: Some(rgba(0x252025ff).into()), + element_hover: Some(rgba(0x393239ff).into()), + element_active: Some(rgba(0x655965ff).into()), + element_selected: Some(rgba(0x655965ff).into()), + element_disabled: Some(rgba(0x252025ff).into()), drop_target_background: Some(rgba(0xa99aa980).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x393239ff).into()), + ghost_element_active: Some(rgba(0x655965ff).into()), + ghost_element_selected: Some(rgba(0x655965ff).into()), + ghost_element_disabled: Some(rgba(0x252025ff).into()), text: Some(rgba(0xf7f3f7ff).into()), text_muted: Some(rgba(0xa99aa9ff).into()), - text_placeholder: Some(rgba(0x776977ff).into()), - text_disabled: Some(rgba(0xf7f3f7ff).into()), + text_placeholder: Some(rgba(0x908190ff).into()), + text_disabled: Some(rgba(0x908190ff).into()), text_accent: Some(rgba(0x526aebff).into()), + icon: Some(rgba(0xf7f3f7ff).into()), + icon_muted: Some(rgba(0xa99aa9ff).into()), + icon_disabled: Some(rgba(0x908190ff).into()), + icon_placeholder: Some(rgba(0xa99aa9ff).into()), + icon_accent: Some(rgba(0x526aebff).into()), status_bar_background: Some(rgba(0x433a43ff).into()), title_bar_background: Some(rgba(0x433a43ff).into()), toolbar_background: Some(rgba(0x1b181bff).into()), tab_bar_background: Some(rgba(0x252025ff).into()), tab_inactive_background: Some(rgba(0x252025ff).into()), tab_active_background: Some(rgba(0x1b181bff).into()), - scrollbar_thumb_background: Some(rgba(0xf7f3f74d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xf7f3f74d).into()), - scrollbar_thumb_border: Some(rgba(0x231e23ff).into()), + scrollbar_thumb_background: Some(rgba(0xf7f3f74c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x393239ff).into()), + scrollbar_thumb_border: Some(rgba(0x393239ff).into()), + scrollbar_track_background: Some(rgba(0x1b181bff).into()), scrollbar_track_border: Some(rgba(0x231e23ff).into()), editor_foreground: Some(rgba(0xd8cad8ff).into()), editor_background: Some(rgba(0x1b181bff).into()), editor_gutter_background: Some(rgba(0x1b181bff).into()), + editor_subheader_background: Some(rgba(0x252025ff).into()), + editor_active_line_background: Some(rgba(0x252025bf).into()), + editor_highlighted_line_background: Some(rgba(0x252025ff).into()), editor_line_number: Some(rgba(0xf7f3f759).into()), editor_active_line_number: Some(rgba(0xf7f3f7ff).into()), + editor_invisible: Some(rgba(0xa99aa9ff).into()), editor_wrap_guide: Some(rgba(0xf7f3f70d).into()), editor_active_wrap_guide: Some(rgba(0xf7f3f71a).into()), + editor_document_highlight_read_background: Some(rgba(0x526aeb1a).into()), + editor_document_highlight_write_background: Some(rgba(0x8b7c8b66).into()), terminal_background: Some(rgba(0x1b181bff).into()), terminal_ansi_bright_black: Some(rgba(0x756775ff).into()), terminal_ansi_bright_red: Some(rgba(0x6d221aff).into()), @@ -4511,16 +5207,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xcc34ccff).into()), terminal_ansi_cyan: Some(rgba(0x189393ff).into()), terminal_ansi_white: Some(rgba(0xf7f3f7ff).into()), + link_text_hover: Some(rgba(0x526aebff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xbb8a36ff).into()), + conflict_background: Some(rgba(0x2d1e12ff).into()), + conflict_border: Some(rgba(0x463219ff).into()), created: Some(rgba(0x918b3bff).into()), - deleted: Some(rgba(0xa43424ff).into()), + created_background: Some(rgba(0x211f12ff).into()), + created_border: Some(rgba(0x34321bff).into()), + deleted: Some(rgba(0xca402cff).into()), + deleted_background: Some(rgba(0x3c110eff).into()), + deleted_border: Some(rgba(0x551a15ff).into()), error: Some(rgba(0xca402cff).into()), + error_background: Some(rgba(0x3c110eff).into()), + error_border: Some(rgba(0x551a15ff).into()), + hidden: Some(rgba(0x908190ff).into()), + hidden_background: Some(rgba(0x433a43ff).into()), + hidden_border: Some(rgba(0x554a55ff).into()), hint: Some(rgba(0x8d70a8ff).into()), + hint_background: Some(rgba(0x0e1a43ff).into()), + hint_border: Some(rgba(0x1a2961ff).into()), + ignored: Some(rgba(0xa99aa9ff).into()), + ignored_background: Some(rgba(0x433a43ff).into()), + ignored_border: Some(rgba(0x675b67ff).into()), + info: Some(rgba(0x526aebff).into()), + info_background: Some(rgba(0x0e1a43ff).into()), + info_border: Some(rgba(0x1a2961ff).into()), modified: Some(rgba(0xbb8a36ff).into()), - success: Some(rgba(0xf7f3f7ff).into()), + modified_background: Some(rgba(0x2d1e12ff).into()), + modified_border: Some(rgba(0x463219ff).into()), + predictive: Some(rgba(0x918b3bff).into()), + predictive_background: Some(rgba(0x211f12ff).into()), + predictive_border: Some(rgba(0x34321bff).into()), + renamed: Some(rgba(0x526aebff).into()), + renamed_background: Some(rgba(0x0e1a43ff).into()), + renamed_border: Some(rgba(0x1a2961ff).into()), + success: Some(rgba(0x918b3bff).into()), + success_background: Some(rgba(0x211f12ff).into()), + success_border: Some(rgba(0x34321bff).into()), + unreachable: Some(rgba(0xa99aa9ff).into()), + unreachable_background: Some(rgba(0x433a43ff).into()), + unreachable_border: Some(rgba(0x675b67ff).into()), warning: Some(rgba(0xbb8a36ff).into()), + warning_background: Some(rgba(0x2d1e12ff).into()), + warning_border: Some(rgba(0x463219ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -4868,36 +5600,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x2c3b42ff).into()), - border_variant: Some(rgba(0x1b2327ff).into()), + border: Some(rgba(0x4f6b78ff).into()), + border_variant: Some(rgba(0x4f6b78ff).into()), + border_focused: Some(rgba(0x1a2f3cff).into()), + border_selected: Some(rgba(0x1a2f3cff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x415763ff).into()), elevated_surface_background: Some(rgba(0x1c2529ff).into()), + surface_background: Some(rgba(0x1c2529ff).into()), background: Some(rgba(0x33444dff).into()), panel_background: Some(rgba(0x1c2529ff).into()), - element_hover: Some(rgba(0x4f6b7880).into()), - element_selected: Some(rgba(0x57768580).into()), + element_background: Some(rgba(0x1c2529ff).into()), + element_hover: Some(rgba(0x2c3b42ff).into()), + element_active: Some(rgba(0x4d6976ff).into()), + element_selected: Some(rgba(0x4d6976ff).into()), + element_disabled: Some(rgba(0x1c2529ff).into()), drop_target_background: Some(rgba(0x7ca0b380).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x2c3b42ff).into()), + ghost_element_active: Some(rgba(0x4d6976ff).into()), + ghost_element_selected: Some(rgba(0x4d6976ff).into()), + ghost_element_disabled: Some(rgba(0x1c2529ff).into()), text: Some(rgba(0xebf8ffff).into()), text_muted: Some(rgba(0x7ca0b3ff).into()), - text_placeholder: Some(rgba(0x5a7b8bff).into()), - text_disabled: Some(rgba(0xebf8ffff).into()), + text_placeholder: Some(rgba(0x698c9eff).into()), + text_disabled: Some(rgba(0x698c9eff).into()), text_accent: Some(rgba(0x277fadff).into()), + icon: Some(rgba(0xebf8ffff).into()), + icon_muted: Some(rgba(0x7ca0b3ff).into()), + icon_disabled: Some(rgba(0x698c9eff).into()), + icon_placeholder: Some(rgba(0x7ca0b3ff).into()), + icon_accent: Some(rgba(0x277fadff).into()), status_bar_background: Some(rgba(0x33444dff).into()), title_bar_background: Some(rgba(0x33444dff).into()), toolbar_background: Some(rgba(0x161b1dff).into()), tab_bar_background: Some(rgba(0x1c2529ff).into()), tab_inactive_background: Some(rgba(0x1c2529ff).into()), tab_active_background: Some(rgba(0x161b1dff).into()), - scrollbar_thumb_background: Some(rgba(0xebf8ff4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xebf8ff4d).into()), - scrollbar_thumb_border: Some(rgba(0x1b2327ff).into()), + scrollbar_thumb_background: Some(rgba(0xebf8ff4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x2c3b42ff).into()), + scrollbar_thumb_border: Some(rgba(0x2c3b42ff).into()), + scrollbar_track_background: Some(rgba(0x161b1dff).into()), scrollbar_track_border: Some(rgba(0x1b2327ff).into()), editor_foreground: Some(rgba(0xc1e4f6ff).into()), editor_background: Some(rgba(0x161b1dff).into()), editor_gutter_background: Some(rgba(0x161b1dff).into()), + editor_subheader_background: Some(rgba(0x1c2529ff).into()), + editor_active_line_background: Some(rgba(0x1c2529bf).into()), + editor_highlighted_line_background: Some(rgba(0x1c2529ff).into()), editor_line_number: Some(rgba(0xebf8ff59).into()), editor_active_line_number: Some(rgba(0xebf8ffff).into()), + editor_invisible: Some(rgba(0x7ca0b3ff).into()), editor_wrap_guide: Some(rgba(0xebf8ff0d).into()), editor_active_wrap_guide: Some(rgba(0xebf8ff1a).into()), + editor_document_highlight_read_background: Some(rgba(0x277fad1a).into()), + editor_document_highlight_write_background: Some(rgba(0x66889a66).into()), terminal_background: Some(rgba(0x161b1dff).into()), terminal_ansi_bright_black: Some(rgba(0x587989ff).into()), terminal_ansi_bright_red: Some(rgba(0x6f1c3aff).into()), @@ -4915,16 +5672,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xb72ed2ff).into()), terminal_ansi_cyan: Some(rgba(0x2e8f6fff).into()), terminal_ansi_white: Some(rgba(0xebf8ffff).into()), + link_text_hover: Some(rgba(0x277fadff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0x8a8a11ff).into()), + conflict_background: Some(rgba(0x201f0cff).into()), + conflict_border: Some(rgba(0x333211ff).into()), created: Some(rgba(0x568c3bff).into()), - deleted: Some(rgba(0xa9275aff).into()), + created_background: Some(rgba(0x171f12ff).into()), + created_border: Some(rgba(0x23321bff).into()), + deleted: Some(rgba(0xd22e72ff).into()), + deleted_background: Some(rgba(0x3a101bff).into()), + deleted_border: Some(rgba(0x55162bff).into()), error: Some(rgba(0xd22e72ff).into()), + error_background: Some(rgba(0x3a101bff).into()), + error_border: Some(rgba(0x55162bff).into()), + hidden: Some(rgba(0x698c9eff).into()), + hidden_background: Some(rgba(0x33444dff).into()), + hidden_border: Some(rgba(0x415763ff).into()), hint: Some(rgba(0x52809aff).into()), + hint_background: Some(rgba(0x131d24ff).into()), + hint_border: Some(rgba(0x1a2f3cff).into()), + ignored: Some(rgba(0x7ca0b3ff).into()), + ignored_background: Some(rgba(0x33444dff).into()), + ignored_border: Some(rgba(0x4f6b78ff).into()), + info: Some(rgba(0x277fadff).into()), + info_background: Some(rgba(0x131d24ff).into()), + info_border: Some(rgba(0x1a2f3cff).into()), modified: Some(rgba(0x8a8a11ff).into()), - success: Some(rgba(0xebf8ffff).into()), + modified_background: Some(rgba(0x201f0cff).into()), + modified_border: Some(rgba(0x333211ff).into()), + predictive: Some(rgba(0x568c3bff).into()), + predictive_background: Some(rgba(0x171f12ff).into()), + predictive_border: Some(rgba(0x23321bff).into()), + renamed: Some(rgba(0x277fadff).into()), + renamed_background: Some(rgba(0x131d24ff).into()), + renamed_border: Some(rgba(0x1a2f3cff).into()), + success: Some(rgba(0x568c3bff).into()), + success_background: Some(rgba(0x171f12ff).into()), + success_border: Some(rgba(0x23321bff).into()), + unreachable: Some(rgba(0x7ca0b3ff).into()), + unreachable_background: Some(rgba(0x33444dff).into()), + unreachable_border: Some(rgba(0x4f6b78ff).into()), warning: Some(rgba(0x8a8a11ff).into()), + warning_background: Some(rgba(0x201f0cff).into()), + warning_border: Some(rgba(0x333211ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -5272,36 +6065,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xd6d1cfff).into()), - border_variant: Some(rgba(0xebe8e6ff).into()), + border: Some(rgba(0xaaa3a1ff).into()), + border_variant: Some(rgba(0xaaa3a1ff).into()), + border_focused: Some(rgba(0xc6cef7ff).into()), + border_selected: Some(rgba(0xc6cef7ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xbcb6b4ff).into()), elevated_surface_background: Some(rgba(0xe9e6e4ff).into()), + surface_background: Some(rgba(0xe9e6e4ff).into()), background: Some(rgba(0xcdc8c6ff).into()), panel_background: Some(rgba(0xe9e6e4ff).into()), - element_hover: Some(rgba(0xaaa3a180).into()), - element_selected: Some(rgba(0xa1999680).into()), + element_background: Some(rgba(0xe9e6e4ff).into()), + element_hover: Some(rgba(0xd6d1cfff).into()), + element_active: Some(rgba(0xaca5a3ff).into()), + element_selected: Some(rgba(0xaca5a3ff).into()), + element_disabled: Some(rgba(0xe9e6e4ff).into()), drop_target_background: Some(rgba(0x6a636080).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xd6d1cfff).into()), + ghost_element_active: Some(rgba(0xaca5a3ff).into()), + ghost_element_selected: Some(rgba(0xaca5a3ff).into()), + ghost_element_disabled: Some(rgba(0xe9e6e4ff).into()), text: Some(rgba(0x1b1918ff).into()), text_muted: Some(rgba(0x6a6360ff).into()), - text_placeholder: Some(rgba(0x9c9491ff).into()), - text_disabled: Some(rgba(0x1b1918ff).into()), + text_placeholder: Some(rgba(0x847c79ff).into()), + text_disabled: Some(rgba(0x847c79ff).into()), text_accent: Some(rgba(0x417ee6ff).into()), + icon: Some(rgba(0x1b1918ff).into()), + icon_muted: Some(rgba(0x6a6360ff).into()), + icon_disabled: Some(rgba(0x847c79ff).into()), + icon_placeholder: Some(rgba(0x6a6360ff).into()), + icon_accent: Some(rgba(0x417ee6ff).into()), status_bar_background: Some(rgba(0xcdc8c6ff).into()), title_bar_background: Some(rgba(0xcdc8c6ff).into()), toolbar_background: Some(rgba(0xf1efeeff).into()), tab_bar_background: Some(rgba(0xe9e6e4ff).into()), tab_inactive_background: Some(rgba(0xe9e6e4ff).into()), tab_active_background: Some(rgba(0xf1efeeff).into()), - scrollbar_thumb_background: Some(rgba(0x1b19184d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x1b19184d).into()), - scrollbar_thumb_border: Some(rgba(0xebe8e6ff).into()), + scrollbar_thumb_background: Some(rgba(0x1b19184c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xd6d1cfff).into()), + scrollbar_thumb_border: Some(rgba(0xd6d1cfff).into()), + scrollbar_track_background: Some(rgba(0xf1efeeff).into()), scrollbar_track_border: Some(rgba(0xebe8e6ff).into()), editor_foreground: Some(rgba(0x2c2421ff).into()), editor_background: Some(rgba(0xf1efeeff).into()), editor_gutter_background: Some(rgba(0xf1efeeff).into()), + editor_subheader_background: Some(rgba(0xe9e6e4ff).into()), + editor_active_line_background: Some(rgba(0xe9e6e4bf).into()), + editor_highlighted_line_background: Some(rgba(0xe9e6e4ff).into()), editor_line_number: Some(rgba(0x1b191859).into()), editor_active_line_number: Some(rgba(0x1b1918ff).into()), + editor_invisible: Some(rgba(0x6a6360ff).into()), editor_wrap_guide: Some(rgba(0x1b19180d).into()), editor_active_wrap_guide: Some(rgba(0x1b19181a).into()), + editor_document_highlight_read_background: Some(rgba(0x417ee61a).into()), + editor_document_highlight_write_background: Some(rgba(0x89817e66).into()), terminal_background: Some(rgba(0xf1efeeff).into()), terminal_ansi_bright_black: Some(rgba(0x9e9693ff).into()), terminal_ansi_bright_red: Some(rgba(0xffa29aff).into()), @@ -5319,16 +6137,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xc340f2ff).into()), terminal_ansi_cyan: Some(rgba(0x3f97b8ff).into()), terminal_ansi_white: Some(rgba(0x1b1918ff).into()), + link_text_hover: Some(rgba(0x417ee6ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x97ab54ff).into()), + conflict: Some(rgba(0xc3841aff).into()), + conflict_background: Some(rgba(0xf8e5d1ff).into()), + conflict_border: Some(rgba(0xf0d1adff).into()), + created: Some(rgba(0x7b9728ff).into()), + created_background: Some(rgba(0xe5e9d3ff).into()), + created_border: Some(rgba(0xd1d8b1ff).into()), deleted: Some(rgba(0xf22e41ff).into()), + deleted_background: Some(rgba(0xffdad5ff).into()), + deleted_border: Some(rgba(0xffbdb6ff).into()), error: Some(rgba(0xf22e41ff).into()), + error_background: Some(rgba(0xffdad5ff).into()), + error_border: Some(rgba(0xffbdb6ff).into()), + hidden: Some(rgba(0x847c79ff).into()), + hidden_background: Some(rgba(0xcdc8c6ff).into()), + hidden_border: Some(rgba(0xbcb6b4ff).into()), hint: Some(rgba(0xa67287ff).into()), + hint_background: Some(rgba(0xdfe3fbff).into()), + hint_border: Some(rgba(0xc6cef7ff).into()), + ignored: Some(rgba(0x6a6360ff).into()), + ignored_background: Some(rgba(0xcdc8c6ff).into()), + ignored_border: Some(rgba(0xaaa3a1ff).into()), + info: Some(rgba(0x417ee6ff).into()), + info_background: Some(rgba(0xdfe3fbff).into()), + info_border: Some(rgba(0xc6cef7ff).into()), modified: Some(rgba(0xc3841aff).into()), - success: Some(rgba(0x1b1918ff).into()), + modified_background: Some(rgba(0xf8e5d1ff).into()), + modified_border: Some(rgba(0xf0d1adff).into()), + predictive: Some(rgba(0x7b9728ff).into()), + predictive_background: Some(rgba(0xe5e9d3ff).into()), + predictive_border: Some(rgba(0xd1d8b1ff).into()), + renamed: Some(rgba(0x417ee6ff).into()), + renamed_background: Some(rgba(0xdfe3fbff).into()), + renamed_border: Some(rgba(0xc6cef7ff).into()), + success: Some(rgba(0x7b9728ff).into()), + success_background: Some(rgba(0xe5e9d3ff).into()), + success_border: Some(rgba(0xd1d8b1ff).into()), + unreachable: Some(rgba(0x6a6360ff).into()), + unreachable_background: Some(rgba(0xcdc8c6ff).into()), + unreachable_border: Some(rgba(0xaaa3a1ff).into()), warning: Some(rgba(0xc3841aff).into()), + warning_background: Some(rgba(0xf8e5d1ff).into()), + warning_border: Some(rgba(0xf0d1adff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -5676,36 +6530,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xd7d3beff).into()), - border_variant: Some(rgba(0xf2eedcff).into()), + border: Some(rgba(0xa8a48eff).into()), + border_variant: Some(rgba(0xa8a48eff).into()), + border_focused: Some(rgba(0xcdd1f5ff).into()), + border_selected: Some(rgba(0xcdd1f5ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xbbb7a1ff).into()), elevated_surface_background: Some(rgba(0xeeebd7ff).into()), + surface_background: Some(rgba(0xeeebd7ff).into()), background: Some(rgba(0xcecab4ff).into()), panel_background: Some(rgba(0xeeebd7ff).into()), - element_hover: Some(rgba(0xa8a48e80).into()), - element_selected: Some(rgba(0x9e9a8580).into()), + element_background: Some(rgba(0xeeebd7ff).into()), + element_hover: Some(rgba(0xd7d3beff).into()), + element_active: Some(rgba(0xaaa690ff).into()), + element_selected: Some(rgba(0xaaa690ff).into()), + element_disabled: Some(rgba(0xeeebd7ff).into()), drop_target_background: Some(rgba(0x706d5f80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xd7d3beff).into()), + ghost_element_active: Some(rgba(0xaaa690ff).into()), + ghost_element_selected: Some(rgba(0xaaa690ff).into()), + ghost_element_disabled: Some(rgba(0xeeebd7ff).into()), text: Some(rgba(0x20201dff).into()), text_muted: Some(rgba(0x706d5fff).into()), - text_placeholder: Some(rgba(0x999580ff).into()), - text_disabled: Some(rgba(0x20201dff).into()), + text_placeholder: Some(rgba(0x878471ff).into()), + text_disabled: Some(rgba(0x878471ff).into()), text_accent: Some(rgba(0x6784e0ff).into()), + icon: Some(rgba(0x20201dff).into()), + icon_muted: Some(rgba(0x706d5fff).into()), + icon_disabled: Some(rgba(0x878471ff).into()), + icon_placeholder: Some(rgba(0x706d5fff).into()), + icon_accent: Some(rgba(0x6784e0ff).into()), status_bar_background: Some(rgba(0xcecab4ff).into()), title_bar_background: Some(rgba(0xcecab4ff).into()), toolbar_background: Some(rgba(0xfefbecff).into()), tab_bar_background: Some(rgba(0xeeebd7ff).into()), tab_inactive_background: Some(rgba(0xeeebd7ff).into()), tab_active_background: Some(rgba(0xfefbecff).into()), - scrollbar_thumb_background: Some(rgba(0x20201d4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x20201d4d).into()), - scrollbar_thumb_border: Some(rgba(0xf2eedcff).into()), + scrollbar_thumb_background: Some(rgba(0x20201d4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xd7d3beff).into()), + scrollbar_thumb_border: Some(rgba(0xd7d3beff).into()), + scrollbar_track_background: Some(rgba(0xfefbecff).into()), scrollbar_track_border: Some(rgba(0xf2eedcff).into()), editor_foreground: Some(rgba(0x292824ff).into()), editor_background: Some(rgba(0xfefbecff).into()), editor_gutter_background: Some(rgba(0xfefbecff).into()), + editor_subheader_background: Some(rgba(0xeeebd7ff).into()), + editor_active_line_background: Some(rgba(0xeeebd7bf).into()), + editor_highlighted_line_background: Some(rgba(0xeeebd7ff).into()), editor_line_number: Some(rgba(0x20201d59).into()), editor_active_line_number: Some(rgba(0x20201dff).into()), + editor_invisible: Some(rgba(0x706d5fff).into()), editor_wrap_guide: Some(rgba(0x20201d0d).into()), editor_active_wrap_guide: Some(rgba(0x20201d1a).into()), + editor_document_highlight_read_background: Some(rgba(0x6784e01a).into()), + editor_document_highlight_write_background: Some(rgba(0x8b887466).into()), terminal_background: Some(rgba(0xfefbecff).into()), terminal_ansi_bright_black: Some(rgba(0x9b9782ff).into()), terminal_ansi_bright_red: Some(rgba(0xf7a195ff).into()), @@ -5723,16 +6602,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xd43753ff).into()), terminal_ansi_cyan: Some(rgba(0x22ad83ff).into()), terminal_ansi_white: Some(rgba(0x20201dff).into()), + link_text_hover: Some(rgba(0x6784e0ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x83bd62ff).into()), + conflict: Some(rgba(0xae9515ff).into()), + conflict_background: Some(rgba(0xf2e8d1ff).into()), + conflict_border: Some(rgba(0xe7d7aeff).into()), + created: Some(rgba(0x61ac3aff).into()), + created_background: Some(rgba(0xe0eed6ff).into()), + created_border: Some(rgba(0xc9e1b7ff).into()), deleted: Some(rgba(0xd73838ff).into()), + deleted_background: Some(rgba(0xffd9d4ff).into()), + deleted_border: Some(rgba(0xfcbcb2ff).into()), error: Some(rgba(0xd73838ff).into()), + error_background: Some(rgba(0xffd9d4ff).into()), + error_border: Some(rgba(0xfcbcb2ff).into()), + hidden: Some(rgba(0x878471ff).into()), + hidden_background: Some(rgba(0xcecab4ff).into()), + hidden_border: Some(rgba(0xbbb7a1ff).into()), hint: Some(rgba(0xb37979ff).into()), + hint_background: Some(rgba(0xe3e5faff).into()), + hint_border: Some(rgba(0xcdd1f5ff).into()), + ignored: Some(rgba(0x706d5fff).into()), + ignored_background: Some(rgba(0xcecab4ff).into()), + ignored_border: Some(rgba(0xa8a48eff).into()), + info: Some(rgba(0x6784e0ff).into()), + info_background: Some(rgba(0xe3e5faff).into()), + info_border: Some(rgba(0xcdd1f5ff).into()), modified: Some(rgba(0xae9515ff).into()), - success: Some(rgba(0x20201dff).into()), + modified_background: Some(rgba(0xf2e8d1ff).into()), + modified_border: Some(rgba(0xe7d7aeff).into()), + predictive: Some(rgba(0x61ac3aff).into()), + predictive_background: Some(rgba(0xe0eed6ff).into()), + predictive_border: Some(rgba(0xc9e1b7ff).into()), + renamed: Some(rgba(0x6784e0ff).into()), + renamed_background: Some(rgba(0xe3e5faff).into()), + renamed_border: Some(rgba(0xcdd1f5ff).into()), + success: Some(rgba(0x61ac3aff).into()), + success_background: Some(rgba(0xe0eed6ff).into()), + success_border: Some(rgba(0xc9e1b7ff).into()), + unreachable: Some(rgba(0x706d5fff).into()), + unreachable_background: Some(rgba(0xcecab4ff).into()), + unreachable_border: Some(rgba(0xa8a48eff).into()), warning: Some(rgba(0xae9515ff).into()), + warning_background: Some(rgba(0xf2e8d1ff).into()), + warning_border: Some(rgba(0xe7d7aeff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -6080,36 +6995,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xcfc7c7ff).into()), - border_variant: Some(rgba(0xede5e5ff).into()), + border: Some(rgba(0x8e8989ff).into()), + border_variant: Some(rgba(0x8e8989ff).into()), + border_focused: Some(rgba(0xcecaecff).into()), + border_selected: Some(rgba(0xcecaecff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xa8a2a2ff).into()), elevated_surface_background: Some(rgba(0xebe3e3ff).into()), + surface_background: Some(rgba(0xebe3e3ff).into()), background: Some(rgba(0xc1bbbbff).into()), panel_background: Some(rgba(0xebe3e3ff).into()), - element_hover: Some(rgba(0x8e898980).into()), - element_selected: Some(rgba(0x837c7c80).into()), + element_background: Some(rgba(0xebe3e3ff).into()), + element_hover: Some(rgba(0xcfc7c7ff).into()), + element_active: Some(rgba(0x908b8bff).into()), + element_selected: Some(rgba(0x908b8bff).into()), + element_disabled: Some(rgba(0xebe3e3ff).into()), drop_target_background: Some(rgba(0x5a525280).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xcfc7c7ff).into()), + ghost_element_active: Some(rgba(0x908b8bff).into()), + ghost_element_selected: Some(rgba(0x908b8bff).into()), + ghost_element_disabled: Some(rgba(0xebe3e3ff).into()), text: Some(rgba(0x1b1818ff).into()), text_muted: Some(rgba(0x5a5252ff).into()), - text_placeholder: Some(rgba(0x7e7777ff).into()), - text_disabled: Some(rgba(0x1b1818ff).into()), + text_placeholder: Some(rgba(0x6e6666ff).into()), + text_disabled: Some(rgba(0x6e6666ff).into()), text_accent: Some(rgba(0x7372caff).into()), + icon: Some(rgba(0x1b1818ff).into()), + icon_muted: Some(rgba(0x5a5252ff).into()), + icon_disabled: Some(rgba(0x6e6666ff).into()), + icon_placeholder: Some(rgba(0x5a5252ff).into()), + icon_accent: Some(rgba(0x7372caff).into()), status_bar_background: Some(rgba(0xc1bbbbff).into()), title_bar_background: Some(rgba(0xc1bbbbff).into()), toolbar_background: Some(rgba(0xf4ececff).into()), tab_bar_background: Some(rgba(0xebe3e3ff).into()), tab_inactive_background: Some(rgba(0xebe3e3ff).into()), tab_active_background: Some(rgba(0xf4ececff).into()), - scrollbar_thumb_background: Some(rgba(0x1b18184d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x1b18184d).into()), - scrollbar_thumb_border: Some(rgba(0xede5e5ff).into()), + scrollbar_thumb_background: Some(rgba(0x1b18184c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xcfc7c7ff).into()), + scrollbar_thumb_border: Some(rgba(0xcfc7c7ff).into()), + scrollbar_track_background: Some(rgba(0xf4ececff).into()), scrollbar_track_border: Some(rgba(0xede5e5ff).into()), editor_foreground: Some(rgba(0x292424ff).into()), editor_background: Some(rgba(0xf4ececff).into()), editor_gutter_background: Some(rgba(0xf4ececff).into()), + editor_subheader_background: Some(rgba(0xebe3e3ff).into()), + editor_active_line_background: Some(rgba(0xebe3e3bf).into()), + editor_highlighted_line_background: Some(rgba(0xebe3e3ff).into()), editor_line_number: Some(rgba(0x1b181859).into()), editor_active_line_number: Some(rgba(0x1b1818ff).into()), + editor_invisible: Some(rgba(0x5a5252ff).into()), editor_wrap_guide: Some(rgba(0x1b18180d).into()), editor_active_wrap_guide: Some(rgba(0x1b18181a).into()), + editor_document_highlight_read_background: Some(rgba(0x7372ca1a).into()), + editor_document_highlight_write_background: Some(rgba(0x726a6a66).into()), terminal_background: Some(rgba(0xf4ececff).into()), terminal_ansi_bright_black: Some(rgba(0x807979ff).into()), terminal_ansi_bright_red: Some(rgba(0xeda69fff).into()), @@ -6127,16 +7067,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xbd5287ff).into()), terminal_ansi_cyan: Some(rgba(0x5585b6ff).into()), terminal_ansi_white: Some(rgba(0x1b1818ff).into()), + link_text_hover: Some(rgba(0x7372caff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x70a2a1ff).into()), + conflict: Some(rgba(0xa06e3cff).into()), + conflict_background: Some(rgba(0xeee0d5ff).into()), + conflict_border: Some(rgba(0xe0c9b5ff).into()), + created: Some(rgba(0x4c8b8bff).into()), + created_background: Some(rgba(0xdae7e7ff).into()), + created_border: Some(rgba(0xbfd4d4ff).into()), deleted: Some(rgba(0xca4a4aff).into()), + deleted_background: Some(rgba(0xfadbd7ff).into()), + deleted_border: Some(rgba(0xf4bfbaff).into()), error: Some(rgba(0xca4a4aff).into()), + error_background: Some(rgba(0xfadbd7ff).into()), + error_border: Some(rgba(0xf4bfbaff).into()), + hidden: Some(rgba(0x6e6666ff).into()), + hidden_background: Some(rgba(0xc1bbbbff).into()), + hidden_border: Some(rgba(0xa8a2a2ff).into()), hint: Some(rgba(0x916a80ff).into()), + hint_background: Some(rgba(0xe4e1f5ff).into()), + hint_border: Some(rgba(0xcecaecff).into()), + ignored: Some(rgba(0x5a5252ff).into()), + ignored_background: Some(rgba(0xc1bbbbff).into()), + ignored_border: Some(rgba(0x8e8989ff).into()), + info: Some(rgba(0x7372caff).into()), + info_background: Some(rgba(0xe4e1f5ff).into()), + info_border: Some(rgba(0xcecaecff).into()), modified: Some(rgba(0xa06e3cff).into()), - success: Some(rgba(0x1b1818ff).into()), + modified_background: Some(rgba(0xeee0d5ff).into()), + modified_border: Some(rgba(0xe0c9b5ff).into()), + predictive: Some(rgba(0x4c8b8bff).into()), + predictive_background: Some(rgba(0xdae7e7ff).into()), + predictive_border: Some(rgba(0xbfd4d4ff).into()), + renamed: Some(rgba(0x7372caff).into()), + renamed_background: Some(rgba(0xe4e1f5ff).into()), + renamed_border: Some(rgba(0xcecaecff).into()), + success: Some(rgba(0x4c8b8bff).into()), + success_background: Some(rgba(0xdae7e7ff).into()), + success_border: Some(rgba(0xbfd4d4ff).into()), + unreachable: Some(rgba(0x5a5252ff).into()), + unreachable_background: Some(rgba(0xc1bbbbff).into()), + unreachable_border: Some(rgba(0x8e8989ff).into()), warning: Some(rgba(0xa06e3cff).into()), + warning_background: Some(rgba(0xeee0d5ff).into()), + warning_border: Some(rgba(0xe0c9b5ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -6484,36 +7460,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xbed7beff).into()), - border_variant: Some(rgba(0xdff0dfff).into()), + border: Some(rgba(0x8ea88eff).into()), + border_variant: Some(rgba(0x8ea88eff).into()), + border_focused: Some(rgba(0xc9c4fdff).into()), + border_selected: Some(rgba(0xc9c4fdff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xa1bba1ff).into()), elevated_surface_background: Some(rgba(0xdaeedaff).into()), + surface_background: Some(rgba(0xdaeedaff).into()), background: Some(rgba(0xb4ceb4ff).into()), panel_background: Some(rgba(0xdaeedaff).into()), - element_hover: Some(rgba(0x8ea88e80).into()), - element_selected: Some(rgba(0x859e8580).into()), + element_background: Some(rgba(0xdaeedaff).into()), + element_hover: Some(rgba(0xbed7beff).into()), + element_active: Some(rgba(0x90aa90ff).into()), + element_selected: Some(rgba(0x90aa90ff).into()), + element_disabled: Some(rgba(0xdaeedaff).into()), drop_target_background: Some(rgba(0x5f705f80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xbed7beff).into()), + ghost_element_active: Some(rgba(0x90aa90ff).into()), + ghost_element_selected: Some(rgba(0x90aa90ff).into()), + ghost_element_disabled: Some(rgba(0xdaeedaff).into()), text: Some(rgba(0x131513ff).into()), text_muted: Some(rgba(0x5f705fff).into()), - text_placeholder: Some(rgba(0x809980ff).into()), - text_disabled: Some(rgba(0x131513ff).into()), + text_placeholder: Some(rgba(0x718771ff).into()), + text_disabled: Some(rgba(0x718771ff).into()), text_accent: Some(rgba(0x3f62f4ff).into()), + icon: Some(rgba(0x131513ff).into()), + icon_muted: Some(rgba(0x5f705fff).into()), + icon_disabled: Some(rgba(0x718771ff).into()), + icon_placeholder: Some(rgba(0x5f705fff).into()), + icon_accent: Some(rgba(0x3f62f4ff).into()), status_bar_background: Some(rgba(0xb4ceb4ff).into()), title_bar_background: Some(rgba(0xb4ceb4ff).into()), toolbar_background: Some(rgba(0xf4fbf4ff).into()), tab_bar_background: Some(rgba(0xdaeedaff).into()), tab_inactive_background: Some(rgba(0xdaeedaff).into()), tab_active_background: Some(rgba(0xf4fbf4ff).into()), - scrollbar_thumb_background: Some(rgba(0x1315134d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x1315134d).into()), - scrollbar_thumb_border: Some(rgba(0xdff0dfff).into()), + scrollbar_thumb_background: Some(rgba(0x1315134c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xbed7beff).into()), + scrollbar_thumb_border: Some(rgba(0xbed7beff).into()), + scrollbar_track_background: Some(rgba(0xf4fbf4ff).into()), scrollbar_track_border: Some(rgba(0xdff0dfff).into()), editor_foreground: Some(rgba(0x242924ff).into()), editor_background: Some(rgba(0xf4fbf4ff).into()), editor_gutter_background: Some(rgba(0xf4fbf4ff).into()), + editor_subheader_background: Some(rgba(0xdaeedaff).into()), + editor_active_line_background: Some(rgba(0xdaeedabf).into()), + editor_highlighted_line_background: Some(rgba(0xdaeedaff).into()), editor_line_number: Some(rgba(0x13151359).into()), editor_active_line_number: Some(rgba(0x131513ff).into()), + editor_invisible: Some(rgba(0x5f705fff).into()), editor_wrap_guide: Some(rgba(0x1315130d).into()), editor_active_wrap_guide: Some(rgba(0x1315131a).into()), + editor_document_highlight_read_background: Some(rgba(0x3f62f41a).into()), + editor_document_highlight_write_background: Some(rgba(0x748b7466).into()), terminal_background: Some(rgba(0xf4fbf4ff).into()), terminal_ansi_bright_black: Some(rgba(0x829b82ff).into()), terminal_ansi_bright_red: Some(rgba(0xff9d98ff).into()), @@ -6531,16 +7532,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xe61dc3ff).into()), terminal_ansi_cyan: Some(rgba(0x1d99b3ff).into()), terminal_ansi_white: Some(rgba(0x131513ff).into()), + link_text_hover: Some(rgba(0x3f62f4ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x61b656ff).into()), + conflict: Some(rgba(0x98981dff).into()), + conflict_background: Some(rgba(0xede9d2ff).into()), + conflict_border: Some(rgba(0xddd8afff).into()), + created: Some(rgba(0x2ba32bff).into()), + created_background: Some(rgba(0xd9edd4ff).into()), + created_border: Some(rgba(0xbbdeb2ff).into()), deleted: Some(rgba(0xe61c3dff).into()), + deleted_background: Some(rgba(0xffd8d4ff).into()), + deleted_border: Some(rgba(0xffb9b4ff).into()), error: Some(rgba(0xe61c3dff).into()), + error_background: Some(rgba(0xffd8d4ff).into()), + error_border: Some(rgba(0xffb9b4ff).into()), + hidden: Some(rgba(0x718771ff).into()), + hidden_background: Some(rgba(0xb4ceb4ff).into()), + hidden_border: Some(rgba(0xa1bba1ff).into()), hint: Some(rgba(0x008fa1ff).into()), + hint_background: Some(rgba(0xe1ddfeff).into()), + hint_border: Some(rgba(0xc9c4fdff).into()), + ignored: Some(rgba(0x5f705fff).into()), + ignored_background: Some(rgba(0xb4ceb4ff).into()), + ignored_border: Some(rgba(0x8ea88eff).into()), + info: Some(rgba(0x3f62f4ff).into()), + info_background: Some(rgba(0xe1ddfeff).into()), + info_border: Some(rgba(0xc9c4fdff).into()), modified: Some(rgba(0x98981dff).into()), - success: Some(rgba(0x131513ff).into()), + modified_background: Some(rgba(0xede9d2ff).into()), + modified_border: Some(rgba(0xddd8afff).into()), + predictive: Some(rgba(0x2ba32bff).into()), + predictive_background: Some(rgba(0xd9edd4ff).into()), + predictive_border: Some(rgba(0xbbdeb2ff).into()), + renamed: Some(rgba(0x3f62f4ff).into()), + renamed_background: Some(rgba(0xe1ddfeff).into()), + renamed_border: Some(rgba(0xc9c4fdff).into()), + success: Some(rgba(0x2ba32bff).into()), + success_background: Some(rgba(0xd9edd4ff).into()), + success_border: Some(rgba(0xbbdeb2ff).into()), + unreachable: Some(rgba(0x5f705fff).into()), + unreachable_background: Some(rgba(0xb4ceb4ff).into()), + unreachable_border: Some(rgba(0x8ea88eff).into()), warning: Some(rgba(0x98981dff).into()), + warning_background: Some(rgba(0xede9d2ff).into()), + warning_border: Some(rgba(0xddd8afff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -6888,36 +7925,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x2f3832ff).into()), - border_variant: Some(rgba(0x1e2420ff).into()), + border: Some(rgba(0x505e55ff).into()), + border_variant: Some(rgba(0x505e55ff).into()), + border_focused: Some(rgba(0x1f3233ff).into()), + border_selected: Some(rgba(0x1f3233ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x434f47ff).into()), elevated_surface_background: Some(rgba(0x1f2621ff).into()), + surface_background: Some(rgba(0x1f2621ff).into()), background: Some(rgba(0x353f39ff).into()), panel_background: Some(rgba(0x1f2621ff).into()), - element_hover: Some(rgba(0x505e5580).into()), - element_selected: Some(rgba(0x5a685f80).into()), + element_background: Some(rgba(0x1f2621ff).into()), + element_hover: Some(rgba(0x2f3832ff).into()), + element_active: Some(rgba(0x4f5c53ff).into()), + element_selected: Some(rgba(0x4f5c53ff).into()), + element_disabled: Some(rgba(0x1f2621ff).into()), drop_target_background: Some(rgba(0x85918880).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x2f3832ff).into()), + ghost_element_active: Some(rgba(0x4f5c53ff).into()), + ghost_element_selected: Some(rgba(0x4f5c53ff).into()), + ghost_element_disabled: Some(rgba(0x1f2621ff).into()), text: Some(rgba(0xecf4eeff).into()), text_muted: Some(rgba(0x859188ff).into()), - text_placeholder: Some(rgba(0x5f6d64ff).into()), - text_disabled: Some(rgba(0xecf4eeff).into()), + text_placeholder: Some(rgba(0x6f7e74ff).into()), + text_disabled: Some(rgba(0x6f7e74ff).into()), text_accent: Some(rgba(0x478c90ff).into()), + icon: Some(rgba(0xecf4eeff).into()), + icon_muted: Some(rgba(0x859188ff).into()), + icon_disabled: Some(rgba(0x6f7e74ff).into()), + icon_placeholder: Some(rgba(0x859188ff).into()), + icon_accent: Some(rgba(0x478c90ff).into()), status_bar_background: Some(rgba(0x353f39ff).into()), title_bar_background: Some(rgba(0x353f39ff).into()), toolbar_background: Some(rgba(0x171c19ff).into()), tab_bar_background: Some(rgba(0x1f2621ff).into()), tab_inactive_background: Some(rgba(0x1f2621ff).into()), tab_active_background: Some(rgba(0x171c19ff).into()), - scrollbar_thumb_background: Some(rgba(0xecf4ee4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xecf4ee4d).into()), - scrollbar_thumb_border: Some(rgba(0x1e2420ff).into()), + scrollbar_thumb_background: Some(rgba(0xecf4ee4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x2f3832ff).into()), + scrollbar_thumb_border: Some(rgba(0x2f3832ff).into()), + scrollbar_track_background: Some(rgba(0x171c19ff).into()), scrollbar_track_border: Some(rgba(0x1e2420ff).into()), editor_foreground: Some(rgba(0xdfe7e2ff).into()), editor_background: Some(rgba(0x171c19ff).into()), editor_gutter_background: Some(rgba(0x171c19ff).into()), + editor_subheader_background: Some(rgba(0x1f2621ff).into()), + editor_active_line_background: Some(rgba(0x1f2621bf).into()), + editor_highlighted_line_background: Some(rgba(0x1f2621ff).into()), editor_line_number: Some(rgba(0xecf4ee59).into()), editor_active_line_number: Some(rgba(0xecf4eeff).into()), + editor_invisible: Some(rgba(0x859188ff).into()), editor_wrap_guide: Some(rgba(0xecf4ee0d).into()), editor_active_wrap_guide: Some(rgba(0xecf4ee1a).into()), + editor_document_highlight_read_background: Some(rgba(0x478c901a).into()), + editor_document_highlight_write_background: Some(rgba(0x6c7a7166).into()), terminal_background: Some(rgba(0x171c19ff).into()), terminal_ansi_bright_black: Some(rgba(0x5d6b62ff).into()), terminal_ansi_bright_red: Some(rgba(0x563220ff).into()), @@ -6935,16 +7997,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x867469ff).into()), terminal_ansi_cyan: Some(rgba(0x1e9aa0ff).into()), terminal_ansi_white: Some(rgba(0xecf4eeff).into()), + link_text_hover: Some(rgba(0x478c90ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xa07e3bff).into()), + conflict_background: Some(rgba(0x231d12ff).into()), + conflict_border: Some(rgba(0x392e1aff).into()), created: Some(rgba(0x489963ff).into()), - deleted: Some(rgba(0x8b4d2fff).into()), + created_background: Some(rgba(0x162119ff).into()), + created_border: Some(rgba(0x203626ff).into()), + deleted: Some(rgba(0xb16139ff).into()), + deleted_background: Some(rgba(0x261811ff).into()), + deleted_border: Some(rgba(0x3f2619ff).into()), error: Some(rgba(0xb16139ff).into()), + error_background: Some(rgba(0x261811ff).into()), + error_border: Some(rgba(0x3f2619ff).into()), + hidden: Some(rgba(0x6f7e74ff).into()), + hidden_background: Some(rgba(0x353f39ff).into()), + hidden_border: Some(rgba(0x434f47ff).into()), hint: Some(rgba(0x607e76ff).into()), + hint_background: Some(rgba(0x151f20ff).into()), + hint_border: Some(rgba(0x1f3233ff).into()), + ignored: Some(rgba(0x859188ff).into()), + ignored_background: Some(rgba(0x353f39ff).into()), + ignored_border: Some(rgba(0x505e55ff).into()), + info: Some(rgba(0x478c90ff).into()), + info_background: Some(rgba(0x151f20ff).into()), + info_border: Some(rgba(0x1f3233ff).into()), modified: Some(rgba(0xa07e3bff).into()), - success: Some(rgba(0xecf4eeff).into()), + modified_background: Some(rgba(0x231d12ff).into()), + modified_border: Some(rgba(0x392e1aff).into()), + predictive: Some(rgba(0x489963ff).into()), + predictive_background: Some(rgba(0x162119ff).into()), + predictive_border: Some(rgba(0x203626ff).into()), + renamed: Some(rgba(0x478c90ff).into()), + renamed_background: Some(rgba(0x151f20ff).into()), + renamed_border: Some(rgba(0x1f3233ff).into()), + success: Some(rgba(0x489963ff).into()), + success_background: Some(rgba(0x162119ff).into()), + success_border: Some(rgba(0x203626ff).into()), + unreachable: Some(rgba(0x859188ff).into()), + unreachable_background: Some(rgba(0x353f39ff).into()), + unreachable_border: Some(rgba(0x505e55ff).into()), warning: Some(rgba(0xa07e3bff).into()), + warning_background: Some(rgba(0x231d12ff).into()), + warning_border: Some(rgba(0x392e1aff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -7292,36 +8390,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xcdbecdff).into()), - border_variant: Some(rgba(0xe5dce5ff).into()), + border: Some(rgba(0xad9dadff).into()), + border_variant: Some(rgba(0xad9dadff).into()), + border_focused: Some(rgba(0xcac7faff).into()), + border_selected: Some(rgba(0xcac7faff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xbaaabaff).into()), elevated_surface_background: Some(rgba(0xe1d6e1ff).into()), + surface_background: Some(rgba(0xe1d6e1ff).into()), background: Some(rgba(0xc6b8c6ff).into()), panel_background: Some(rgba(0xe1d6e1ff).into()), - element_hover: Some(rgba(0xad9dad80).into()), - element_selected: Some(rgba(0xa394a380).into()), + element_background: Some(rgba(0xe1d6e1ff).into()), + element_hover: Some(rgba(0xcdbecdff).into()), + element_active: Some(rgba(0xae9eaeff).into()), + element_selected: Some(rgba(0xae9eaeff).into()), + element_disabled: Some(rgba(0xe1d6e1ff).into()), drop_target_background: Some(rgba(0x6b5e6b80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xcdbecdff).into()), + ghost_element_active: Some(rgba(0xae9eaeff).into()), + ghost_element_selected: Some(rgba(0xae9eaeff).into()), + ghost_element_disabled: Some(rgba(0xe1d6e1ff).into()), text: Some(rgba(0x1b181bff).into()), text_muted: Some(rgba(0x6b5e6bff).into()), - text_placeholder: Some(rgba(0x9e8f9eff).into()), - text_disabled: Some(rgba(0x1b181bff).into()), + text_placeholder: Some(rgba(0x857785ff).into()), + text_disabled: Some(rgba(0x857785ff).into()), text_accent: Some(rgba(0x526aebff).into()), + icon: Some(rgba(0x1b181bff).into()), + icon_muted: Some(rgba(0x6b5e6bff).into()), + icon_disabled: Some(rgba(0x857785ff).into()), + icon_placeholder: Some(rgba(0x6b5e6bff).into()), + icon_accent: Some(rgba(0x526aebff).into()), status_bar_background: Some(rgba(0xc6b8c6ff).into()), title_bar_background: Some(rgba(0xc6b8c6ff).into()), toolbar_background: Some(rgba(0xf7f3f7ff).into()), tab_bar_background: Some(rgba(0xe1d6e1ff).into()), tab_inactive_background: Some(rgba(0xe1d6e1ff).into()), tab_active_background: Some(rgba(0xf7f3f7ff).into()), - scrollbar_thumb_background: Some(rgba(0x1b181b4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x1b181b4d).into()), - scrollbar_thumb_border: Some(rgba(0xe5dce5ff).into()), + scrollbar_thumb_background: Some(rgba(0x1b181b4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xcdbecdff).into()), + scrollbar_thumb_border: Some(rgba(0xcdbecdff).into()), + scrollbar_track_background: Some(rgba(0xf7f3f7ff).into()), scrollbar_track_border: Some(rgba(0xe5dce5ff).into()), editor_foreground: Some(rgba(0x292329ff).into()), editor_background: Some(rgba(0xf7f3f7ff).into()), editor_gutter_background: Some(rgba(0xf7f3f7ff).into()), + editor_subheader_background: Some(rgba(0xe1d6e1ff).into()), + editor_active_line_background: Some(rgba(0xe1d6e1bf).into()), + editor_highlighted_line_background: Some(rgba(0xe1d6e1ff).into()), editor_line_number: Some(rgba(0x1b181b59).into()), editor_active_line_number: Some(rgba(0x1b181bff).into()), + editor_invisible: Some(rgba(0x6b5e6bff).into()), editor_wrap_guide: Some(rgba(0x1b181b0d).into()), editor_active_wrap_guide: Some(rgba(0x1b181b1a).into()), + editor_document_highlight_read_background: Some(rgba(0x526aeb1a).into()), + editor_document_highlight_write_background: Some(rgba(0x8b7c8b66).into()), terminal_background: Some(rgba(0xf7f3f7ff).into()), terminal_ansi_bright_black: Some(rgba(0xa091a0ff).into()), terminal_ansi_bright_red: Some(rgba(0xf0a28fff).into()), @@ -7339,16 +8462,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xcc35ccff).into()), terminal_ansi_cyan: Some(rgba(0x199393ff).into()), terminal_ansi_white: Some(rgba(0x1b181bff).into()), + link_text_hover: Some(rgba(0x526aebff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0xa8a161ff).into()), + conflict: Some(rgba(0xbb8a36ff).into()), + conflict_background: Some(rgba(0xf5e6d5ff).into()), + conflict_border: Some(rgba(0xebd3b5ff).into()), + created: Some(rgba(0x918b3cff).into()), + created_background: Some(rgba(0xeae6d6ff).into()), + created_border: Some(rgba(0xd9d4b6ff).into()), deleted: Some(rgba(0xca412cff).into()), + deleted_background: Some(rgba(0xfcd9d1ff).into()), + deleted_border: Some(rgba(0xf7bcaeff).into()), error: Some(rgba(0xca412cff).into()), + error_background: Some(rgba(0xfcd9d1ff).into()), + error_border: Some(rgba(0xf7bcaeff).into()), + hidden: Some(rgba(0x857785ff).into()), + hidden_background: Some(rgba(0xc6b8c6ff).into()), + hidden_border: Some(rgba(0xbaaabaff).into()), hint: Some(rgba(0x8c70a6ff).into()), + hint_background: Some(rgba(0xe2dffcff).into()), + hint_border: Some(rgba(0xcac7faff).into()), + ignored: Some(rgba(0x6b5e6bff).into()), + ignored_background: Some(rgba(0xc6b8c6ff).into()), + ignored_border: Some(rgba(0xad9dadff).into()), + info: Some(rgba(0x526aebff).into()), + info_background: Some(rgba(0xe2dffcff).into()), + info_border: Some(rgba(0xcac7faff).into()), modified: Some(rgba(0xbb8a36ff).into()), - success: Some(rgba(0x1b181bff).into()), + modified_background: Some(rgba(0xf5e6d5ff).into()), + modified_border: Some(rgba(0xebd3b5ff).into()), + predictive: Some(rgba(0x918b3cff).into()), + predictive_background: Some(rgba(0xeae6d6ff).into()), + predictive_border: Some(rgba(0xd9d4b6ff).into()), + renamed: Some(rgba(0x526aebff).into()), + renamed_background: Some(rgba(0xe2dffcff).into()), + renamed_border: Some(rgba(0xcac7faff).into()), + success: Some(rgba(0x918b3cff).into()), + success_background: Some(rgba(0xeae6d6ff).into()), + success_border: Some(rgba(0xd9d4b6ff).into()), + unreachable: Some(rgba(0x6b5e6bff).into()), + unreachable_background: Some(rgba(0xc6b8c6ff).into()), + unreachable_border: Some(rgba(0xad9dadff).into()), warning: Some(rgba(0xbb8a36ff).into()), + warning_background: Some(rgba(0xf5e6d5ff).into()), + warning_border: Some(rgba(0xebd3b5ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -7696,36 +8855,61 @@ pub fn atelier() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xb0d3e5ff).into()), - border_variant: Some(rgba(0xd3edfaff).into()), + border: Some(rgba(0x80a4b6ff).into()), + border_variant: Some(rgba(0x80a4b6ff).into()), + border_focused: Some(rgba(0xbacfe1ff).into()), + border_selected: Some(rgba(0xbacfe1ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x93b7c9ff).into()), elevated_surface_background: Some(rgba(0xcdeaf9ff).into()), + surface_background: Some(rgba(0xcdeaf9ff).into()), background: Some(rgba(0xa6cadcff).into()), panel_background: Some(rgba(0xcdeaf9ff).into()), - element_hover: Some(rgba(0x80a4b680).into()), - element_selected: Some(rgba(0x769aad80).into()), + element_background: Some(rgba(0xcdeaf9ff).into()), + element_hover: Some(rgba(0xb0d3e5ff).into()), + element_active: Some(rgba(0x82a6b8ff).into()), + element_selected: Some(rgba(0x82a6b8ff).into()), + element_disabled: Some(rgba(0xcdeaf9ff).into()), drop_target_background: Some(rgba(0x526f7d80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xb0d3e5ff).into()), + ghost_element_active: Some(rgba(0x82a6b8ff).into()), + ghost_element_selected: Some(rgba(0x82a6b8ff).into()), + ghost_element_disabled: Some(rgba(0xcdeaf9ff).into()), text: Some(rgba(0x161b1dff).into()), text_muted: Some(rgba(0x526f7dff).into()), - text_placeholder: Some(rgba(0x7195a8ff).into()), - text_disabled: Some(rgba(0x161b1dff).into()), + text_placeholder: Some(rgba(0x628496ff).into()), + text_disabled: Some(rgba(0x628496ff).into()), text_accent: Some(rgba(0x277fadff).into()), + icon: Some(rgba(0x161b1dff).into()), + icon_muted: Some(rgba(0x526f7dff).into()), + icon_disabled: Some(rgba(0x628496ff).into()), + icon_placeholder: Some(rgba(0x526f7dff).into()), + icon_accent: Some(rgba(0x277fadff).into()), status_bar_background: Some(rgba(0xa6cadcff).into()), title_bar_background: Some(rgba(0xa6cadcff).into()), toolbar_background: Some(rgba(0xebf8ffff).into()), tab_bar_background: Some(rgba(0xcdeaf9ff).into()), tab_inactive_background: Some(rgba(0xcdeaf9ff).into()), tab_active_background: Some(rgba(0xebf8ffff).into()), - scrollbar_thumb_background: Some(rgba(0x161b1d4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x161b1d4d).into()), - scrollbar_thumb_border: Some(rgba(0xd3edfaff).into()), + scrollbar_thumb_background: Some(rgba(0x161b1d4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xb0d3e5ff).into()), + scrollbar_thumb_border: Some(rgba(0xb0d3e5ff).into()), + scrollbar_track_background: Some(rgba(0xebf8ffff).into()), scrollbar_track_border: Some(rgba(0xd3edfaff).into()), editor_foreground: Some(rgba(0x1f292eff).into()), editor_background: Some(rgba(0xebf8ffff).into()), editor_gutter_background: Some(rgba(0xebf8ffff).into()), + editor_subheader_background: Some(rgba(0xcdeaf9ff).into()), + editor_active_line_background: Some(rgba(0xcdeaf9bf).into()), + editor_highlighted_line_background: Some(rgba(0xcdeaf9ff).into()), editor_line_number: Some(rgba(0x161b1d59).into()), editor_active_line_number: Some(rgba(0x161b1dff).into()), + editor_invisible: Some(rgba(0x526f7dff).into()), editor_wrap_guide: Some(rgba(0x161b1d0d).into()), editor_active_wrap_guide: Some(rgba(0x161b1d1a).into()), + editor_document_highlight_read_background: Some(rgba(0x277fad1a).into()), + editor_document_highlight_write_background: Some(rgba(0x66889a66).into()), terminal_background: Some(rgba(0xebf8ffff).into()), terminal_ansi_bright_black: Some(rgba(0x7397aaff).into()), terminal_ansi_bright_red: Some(rgba(0xf09fb6ff).into()), @@ -7743,16 +8927,52 @@ pub fn atelier() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xb72fd2ff).into()), terminal_ansi_cyan: Some(rgba(0x2f8f6fff).into()), terminal_ansi_white: Some(rgba(0x161b1dff).into()), + link_text_hover: Some(rgba(0x277fadff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x78a361ff).into()), + conflict: Some(rgba(0x8a8a11ff).into()), + conflict_background: Some(rgba(0xeae6d0ff).into()), + conflict_border: Some(rgba(0xd8d3abff).into()), + created: Some(rgba(0x578c3cff).into()), + created_background: Some(rgba(0xdde7d5ff).into()), + created_border: Some(rgba(0xc2d5b6ff).into()), deleted: Some(rgba(0xd22f72ff).into()), + deleted_background: Some(rgba(0xfbd8e1ff).into()), + deleted_border: Some(rgba(0xf6bacaff).into()), error: Some(rgba(0xd22f72ff).into()), + error_background: Some(rgba(0xfbd8e1ff).into()), + error_border: Some(rgba(0xf6bacaff).into()), + hidden: Some(rgba(0x628496ff).into()), + hidden_background: Some(rgba(0xa6cadcff).into()), + hidden_border: Some(rgba(0x93b7c9ff).into()), hint: Some(rgba(0x5a87a0ff).into()), + hint_background: Some(rgba(0xd8e4eeff).into()), + hint_border: Some(rgba(0xbacfe1ff).into()), + ignored: Some(rgba(0x526f7dff).into()), + ignored_background: Some(rgba(0xa6cadcff).into()), + ignored_border: Some(rgba(0x80a4b6ff).into()), + info: Some(rgba(0x277fadff).into()), + info_background: Some(rgba(0xd8e4eeff).into()), + info_border: Some(rgba(0xbacfe1ff).into()), modified: Some(rgba(0x8a8a11ff).into()), - success: Some(rgba(0x161b1dff).into()), + modified_background: Some(rgba(0xeae6d0ff).into()), + modified_border: Some(rgba(0xd8d3abff).into()), + predictive: Some(rgba(0x578c3cff).into()), + predictive_background: Some(rgba(0xdde7d5ff).into()), + predictive_border: Some(rgba(0xc2d5b6ff).into()), + renamed: Some(rgba(0x277fadff).into()), + renamed_background: Some(rgba(0xd8e4eeff).into()), + renamed_border: Some(rgba(0xbacfe1ff).into()), + success: Some(rgba(0x578c3cff).into()), + success_background: Some(rgba(0xdde7d5ff).into()), + success_border: Some(rgba(0xc2d5b6ff).into()), + unreachable: Some(rgba(0x526f7dff).into()), + unreachable_background: Some(rgba(0xa6cadcff).into()), + unreachable_border: Some(rgba(0x80a4b6ff).into()), warning: Some(rgba(0x8a8a11ff).into()), + warning_background: Some(rgba(0xeae6d0ff).into()), + warning_border: Some(rgba(0xd8d3abff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ diff --git a/crates/theme2/src/themes/ayu.rs b/crates/theme2/src/themes/ayu.rs index 96f8a609de..63d8711d57 100644 --- a/crates/theme2/src/themes/ayu.rs +++ b/crates/theme2/src/themes/ayu.rs @@ -20,36 +20,61 @@ pub fn ayu() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x2d2f34ff).into()), - border_variant: Some(rgba(0x1b1e24ff).into()), + border: Some(rgba(0x3f4043ff).into()), + border_variant: Some(rgba(0x3f4043ff).into()), + border_focused: Some(rgba(0x1b4a6eff).into()), + border_selected: Some(rgba(0x1b4a6eff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x383a3eff).into()), elevated_surface_background: Some(rgba(0x1f2127ff).into()), + surface_background: Some(rgba(0x1f2127ff).into()), background: Some(rgba(0x313337ff).into()), panel_background: Some(rgba(0x1f2127ff).into()), - element_hover: Some(rgba(0x3f404380).into()), - element_selected: Some(rgba(0x50515280).into()), + element_background: Some(rgba(0x1f2127ff).into()), + element_hover: Some(rgba(0x2d2f34ff).into()), + element_active: Some(rgba(0x3e4043ff).into()), + element_selected: Some(rgba(0x3e4043ff).into()), + element_disabled: Some(rgba(0x1f2127ff).into()), drop_target_background: Some(rgba(0x8a898680).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x2d2f34ff).into()), + ghost_element_active: Some(rgba(0x3e4043ff).into()), + ghost_element_selected: Some(rgba(0x3e4043ff).into()), + ghost_element_disabled: Some(rgba(0x1f2127ff).into()), text: Some(rgba(0xbfbdb6ff).into()), text_muted: Some(rgba(0x8a8986ff).into()), - text_placeholder: Some(rgba(0x58595aff).into()), - text_disabled: Some(rgba(0xbfbdb6ff).into()), + text_placeholder: Some(rgba(0x696a6aff).into()), + text_disabled: Some(rgba(0x696a6aff).into()), text_accent: Some(rgba(0x5ac2feff).into()), + icon: Some(rgba(0xbfbdb6ff).into()), + icon_muted: Some(rgba(0x8a8986ff).into()), + icon_disabled: Some(rgba(0x696a6aff).into()), + icon_placeholder: Some(rgba(0x8a8986ff).into()), + icon_accent: Some(rgba(0x5ac2feff).into()), status_bar_background: Some(rgba(0x313337ff).into()), title_bar_background: Some(rgba(0x313337ff).into()), toolbar_background: Some(rgba(0x0d1017ff).into()), tab_bar_background: Some(rgba(0x1f2127ff).into()), tab_inactive_background: Some(rgba(0x1f2127ff).into()), tab_active_background: Some(rgba(0x0d1017ff).into()), - scrollbar_thumb_background: Some(rgba(0xbfbdb64d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xbfbdb64d).into()), - scrollbar_thumb_border: Some(rgba(0x1b1e24ff).into()), + scrollbar_thumb_background: Some(rgba(0xbfbdb64c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x2d2f34ff).into()), + scrollbar_thumb_border: Some(rgba(0x2d2f34ff).into()), + scrollbar_track_background: Some(rgba(0x0d1017ff).into()), scrollbar_track_border: Some(rgba(0x1b1e24ff).into()), editor_foreground: Some(rgba(0xbfbdb6ff).into()), editor_background: Some(rgba(0x0d1017ff).into()), editor_gutter_background: Some(rgba(0x0d1017ff).into()), + editor_subheader_background: Some(rgba(0x1f2127ff).into()), + editor_active_line_background: Some(rgba(0x1f2127bf).into()), + editor_highlighted_line_background: Some(rgba(0x1f2127ff).into()), editor_line_number: Some(rgba(0xbfbdb659).into()), editor_active_line_number: Some(rgba(0xbfbdb6ff).into()), + editor_invisible: Some(rgba(0x8a8986ff).into()), editor_wrap_guide: Some(rgba(0xbfbdb60d).into()), editor_active_wrap_guide: Some(rgba(0xbfbdb61a).into()), + editor_document_highlight_read_background: Some(rgba(0x5ac2fe1a).into()), + editor_document_highlight_write_background: Some(rgba(0x66676766).into()), terminal_background: Some(rgba(0x0d1017ff).into()), terminal_ansi_bright_black: Some(rgba(0x545557ff).into()), terminal_ansi_bright_red: Some(rgba(0x83363cff).into()), @@ -67,16 +92,52 @@ pub fn ayu() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x3abae5ff).into()), terminal_ansi_cyan: Some(rgba(0x95e5cbff).into()), terminal_ansi_white: Some(rgba(0xbfbdb6ff).into()), + link_text_hover: Some(rgba(0x5ac2feff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xfeb454ff).into()), + conflict_background: Some(rgba(0x572916ff).into()), + conflict_border: Some(rgba(0x754221ff).into()), created: Some(rgba(0xaad84cff).into()), - deleted: Some(rgba(0xc3595fff).into()), + created_background: Some(rgba(0x294113ff).into()), + created_border: Some(rgba(0x405c1dff).into()), + deleted: Some(rgba(0xef7178ff).into()), + deleted_background: Some(rgba(0x48171cff).into()), + deleted_border: Some(rgba(0x66272dff).into()), error: Some(rgba(0xef7178ff).into()), + error_background: Some(rgba(0x48171cff).into()), + error_border: Some(rgba(0x66272dff).into()), + hidden: Some(rgba(0x696a6aff).into()), + hidden_background: Some(rgba(0x313337ff).into()), + hidden_border: Some(rgba(0x383a3eff).into()), hint: Some(rgba(0x638c81ff).into()), + hint_background: Some(rgba(0x0d304fff).into()), + hint_border: Some(rgba(0x1b4a6eff).into()), + ignored: Some(rgba(0x8a8986ff).into()), + ignored_background: Some(rgba(0x313337ff).into()), + ignored_border: Some(rgba(0x3f4043ff).into()), + info: Some(rgba(0x5ac2feff).into()), + info_background: Some(rgba(0x0d304fff).into()), + info_border: Some(rgba(0x1b4a6eff).into()), modified: Some(rgba(0xfeb454ff).into()), - success: Some(rgba(0xbfbdb6ff).into()), + modified_background: Some(rgba(0x572916ff).into()), + modified_border: Some(rgba(0x754221ff).into()), + predictive: Some(rgba(0xaad84cff).into()), + predictive_background: Some(rgba(0x294113ff).into()), + predictive_border: Some(rgba(0x405c1dff).into()), + renamed: Some(rgba(0x5ac2feff).into()), + renamed_background: Some(rgba(0x0d304fff).into()), + renamed_border: Some(rgba(0x1b4a6eff).into()), + success: Some(rgba(0xaad84cff).into()), + success_background: Some(rgba(0x294113ff).into()), + success_border: Some(rgba(0x405c1dff).into()), + unreachable: Some(rgba(0x8a8986ff).into()), + unreachable_background: Some(rgba(0x313337ff).into()), + unreachable_border: Some(rgba(0x3f4043ff).into()), warning: Some(rgba(0xfeb454ff).into()), + warning_background: Some(rgba(0x572916ff).into()), + warning_border: Some(rgba(0x754221ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -403,36 +464,61 @@ pub fn ayu() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xdfe0e1ff).into()), - border_variant: Some(rgba(0xefeff0ff).into()), + border: Some(rgba(0xcfd1d2ff).into()), + border_variant: Some(rgba(0xcfd1d2ff).into()), + border_focused: Some(rgba(0xc4daf6ff).into()), + border_selected: Some(rgba(0xc4daf6ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xd5d6d8ff).into()), elevated_surface_background: Some(rgba(0xececedff).into()), + surface_background: Some(rgba(0xececedff).into()), background: Some(rgba(0xdcdddeff).into()), panel_background: Some(rgba(0xececedff).into()), - element_hover: Some(rgba(0xcfd1d280).into()), - element_selected: Some(rgba(0xc0c2c480).into()), + element_background: Some(rgba(0xececedff).into()), + element_hover: Some(rgba(0xdfe0e1ff).into()), + element_active: Some(rgba(0xd0d1d3ff).into()), + element_selected: Some(rgba(0xd0d1d3ff).into()), + element_disabled: Some(rgba(0xececedff).into()), drop_target_background: Some(rgba(0x8c8f9380).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xdfe0e1ff).into()), + ghost_element_active: Some(rgba(0xd0d1d3ff).into()), + ghost_element_selected: Some(rgba(0xd0d1d3ff).into()), + ghost_element_disabled: Some(rgba(0xececedff).into()), text: Some(rgba(0x5c6166ff).into()), text_muted: Some(rgba(0x8c8f93ff).into()), - text_placeholder: Some(rgba(0xb9bbbdff).into()), - text_disabled: Some(rgba(0x5c6166ff).into()), + text_placeholder: Some(rgba(0xa9acaeff).into()), + text_disabled: Some(rgba(0xa9acaeff).into()), text_accent: Some(rgba(0x3b9ee5ff).into()), + icon: Some(rgba(0x5c6166ff).into()), + icon_muted: Some(rgba(0x8c8f93ff).into()), + icon_disabled: Some(rgba(0xa9acaeff).into()), + icon_placeholder: Some(rgba(0x8c8f93ff).into()), + icon_accent: Some(rgba(0x3b9ee5ff).into()), status_bar_background: Some(rgba(0xdcdddeff).into()), title_bar_background: Some(rgba(0xdcdddeff).into()), toolbar_background: Some(rgba(0xfcfcfcff).into()), tab_bar_background: Some(rgba(0xececedff).into()), tab_inactive_background: Some(rgba(0xececedff).into()), tab_active_background: Some(rgba(0xfcfcfcff).into()), - scrollbar_thumb_background: Some(rgba(0x5c61664d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x5c61664d).into()), - scrollbar_thumb_border: Some(rgba(0xefeff0ff).into()), + scrollbar_thumb_background: Some(rgba(0x5c61664c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xdfe0e1ff).into()), + scrollbar_thumb_border: Some(rgba(0xdfe0e1ff).into()), + scrollbar_track_background: Some(rgba(0xfcfcfcff).into()), scrollbar_track_border: Some(rgba(0xefeff0ff).into()), editor_foreground: Some(rgba(0x5c6166ff).into()), editor_background: Some(rgba(0xfcfcfcff).into()), editor_gutter_background: Some(rgba(0xfcfcfcff).into()), + editor_subheader_background: Some(rgba(0xececedff).into()), + editor_active_line_background: Some(rgba(0xececedbf).into()), + editor_highlighted_line_background: Some(rgba(0xececedff).into()), editor_line_number: Some(rgba(0x5c616659).into()), editor_active_line_number: Some(rgba(0x5c6166ff).into()), + editor_invisible: Some(rgba(0x8c8f93ff).into()), editor_wrap_guide: Some(rgba(0x5c61660d).into()), editor_active_wrap_guide: Some(rgba(0x5c61661a).into()), + editor_document_highlight_read_background: Some(rgba(0x3b9ee51a).into()), + editor_document_highlight_write_background: Some(rgba(0xacafb166).into()), terminal_background: Some(rgba(0xfcfcfcff).into()), terminal_ansi_bright_black: Some(rgba(0xbcbec0ff).into()), terminal_ansi_bright_red: Some(rgba(0xfebab6ff).into()), @@ -450,16 +536,52 @@ pub fn ayu() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x56b4d3ff).into()), terminal_ansi_cyan: Some(rgba(0x4dbf99ff).into()), terminal_ansi_white: Some(rgba(0x5c6166ff).into()), + link_text_hover: Some(rgba(0x3b9ee5ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0xa1c24bff).into()), + conflict: Some(rgba(0xf1ae4aff).into()), + conflict_background: Some(rgba(0xffeedaff).into()), + conflict_border: Some(rgba(0xffe1beff).into()), + created: Some(rgba(0x86b305ff).into()), + created_background: Some(rgba(0xe9efd2ff).into()), + created_border: Some(rgba(0xd7e3aeff).into()), deleted: Some(rgba(0xef7271ff).into()), + deleted_background: Some(rgba(0xffe3e1ff).into()), + deleted_border: Some(rgba(0xffcdcaff).into()), error: Some(rgba(0xef7271ff).into()), + error_background: Some(rgba(0xffe3e1ff).into()), + error_border: Some(rgba(0xffcdcaff).into()), + hidden: Some(rgba(0xa9acaeff).into()), + hidden_background: Some(rgba(0xdcdddeff).into()), + hidden_border: Some(rgba(0xd5d6d8ff).into()), hint: Some(rgba(0x8ca7c2ff).into()), + hint_background: Some(rgba(0xdeebfaff).into()), + hint_border: Some(rgba(0xc4daf6ff).into()), + ignored: Some(rgba(0x8c8f93ff).into()), + ignored_background: Some(rgba(0xdcdddeff).into()), + ignored_border: Some(rgba(0xcfd1d2ff).into()), + info: Some(rgba(0x3b9ee5ff).into()), + info_background: Some(rgba(0xdeebfaff).into()), + info_border: Some(rgba(0xc4daf6ff).into()), modified: Some(rgba(0xf1ae4aff).into()), - success: Some(rgba(0x5c6166ff).into()), + modified_background: Some(rgba(0xffeedaff).into()), + modified_border: Some(rgba(0xffe1beff).into()), + predictive: Some(rgba(0x86b305ff).into()), + predictive_background: Some(rgba(0xe9efd2ff).into()), + predictive_border: Some(rgba(0xd7e3aeff).into()), + renamed: Some(rgba(0x3b9ee5ff).into()), + renamed_background: Some(rgba(0xdeebfaff).into()), + renamed_border: Some(rgba(0xc4daf6ff).into()), + success: Some(rgba(0x86b305ff).into()), + success_background: Some(rgba(0xe9efd2ff).into()), + success_border: Some(rgba(0xd7e3aeff).into()), + unreachable: Some(rgba(0x8c8f93ff).into()), + unreachable_background: Some(rgba(0xdcdddeff).into()), + unreachable_border: Some(rgba(0xcfd1d2ff).into()), warning: Some(rgba(0xf1ae4aff).into()), + warning_background: Some(rgba(0xffeedaff).into()), + warning_border: Some(rgba(0xffe1beff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -786,36 +908,61 @@ pub fn ayu() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x43464fff).into()), - border_variant: Some(rgba(0x323641ff).into()), + border: Some(rgba(0x53565dff).into()), + border_variant: Some(rgba(0x53565dff).into()), + border_focused: Some(rgba(0x24556fff).into()), + border_selected: Some(rgba(0x24556fff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x4d5058ff).into()), elevated_surface_background: Some(rgba(0x353944ff).into()), + surface_background: Some(rgba(0x353944ff).into()), background: Some(rgba(0x464a52ff).into()), panel_background: Some(rgba(0x353944ff).into()), - element_hover: Some(rgba(0x53565d80).into()), - element_selected: Some(rgba(0x63656a80).into()), + element_background: Some(rgba(0x353944ff).into()), + element_hover: Some(rgba(0x43464fff).into()), + element_active: Some(rgba(0x53565dff).into()), + element_selected: Some(rgba(0x53565dff).into()), + element_disabled: Some(rgba(0x353944ff).into()), drop_target_background: Some(rgba(0x9a9a9880).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x43464fff).into()), + ghost_element_active: Some(rgba(0x53565dff).into()), + ghost_element_selected: Some(rgba(0x53565dff).into()), + ghost_element_disabled: Some(rgba(0x353944ff).into()), text: Some(rgba(0xcccac2ff).into()), text_muted: Some(rgba(0x9a9a98ff).into()), - text_placeholder: Some(rgba(0x6b6d71ff).into()), - text_disabled: Some(rgba(0xcccac2ff).into()), + text_placeholder: Some(rgba(0x7b7d7fff).into()), + text_disabled: Some(rgba(0x7b7d7fff).into()), text_accent: Some(rgba(0x73cffeff).into()), + icon: Some(rgba(0xcccac2ff).into()), + icon_muted: Some(rgba(0x9a9a98ff).into()), + icon_disabled: Some(rgba(0x7b7d7fff).into()), + icon_placeholder: Some(rgba(0x9a9a98ff).into()), + icon_accent: Some(rgba(0x73cffeff).into()), status_bar_background: Some(rgba(0x464a52ff).into()), title_bar_background: Some(rgba(0x464a52ff).into()), toolbar_background: Some(rgba(0x242936ff).into()), tab_bar_background: Some(rgba(0x353944ff).into()), tab_inactive_background: Some(rgba(0x353944ff).into()), tab_active_background: Some(rgba(0x242936ff).into()), - scrollbar_thumb_background: Some(rgba(0xcccac24d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xcccac24d).into()), - scrollbar_thumb_border: Some(rgba(0x323641ff).into()), + scrollbar_thumb_background: Some(rgba(0xcccac24c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x43464fff).into()), + scrollbar_thumb_border: Some(rgba(0x43464fff).into()), + scrollbar_track_background: Some(rgba(0x242936ff).into()), scrollbar_track_border: Some(rgba(0x323641ff).into()), editor_foreground: Some(rgba(0xcccac2ff).into()), editor_background: Some(rgba(0x242936ff).into()), editor_gutter_background: Some(rgba(0x242936ff).into()), + editor_subheader_background: Some(rgba(0x353944ff).into()), + editor_active_line_background: Some(rgba(0x353944bf).into()), + editor_highlighted_line_background: Some(rgba(0x353944ff).into()), editor_line_number: Some(rgba(0xcccac259).into()), editor_active_line_number: Some(rgba(0xcccac2ff).into()), + editor_invisible: Some(rgba(0x9a9a98ff).into()), editor_wrap_guide: Some(rgba(0xcccac20d).into()), editor_active_wrap_guide: Some(rgba(0xcccac21a).into()), + editor_document_highlight_read_background: Some(rgba(0x73cffe1a).into()), + editor_document_highlight_write_background: Some(rgba(0x787a7c66).into()), terminal_background: Some(rgba(0x242936ff).into()), terminal_ansi_bright_black: Some(rgba(0x67696eff).into()), terminal_ansi_bright_red: Some(rgba(0x83403dff).into()), @@ -833,16 +980,52 @@ pub fn ayu() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x5ccee5ff).into()), terminal_ansi_cyan: Some(rgba(0x95e5cbff).into()), terminal_ansi_white: Some(rgba(0xcccac2ff).into()), + link_text_hover: Some(rgba(0x73cffeff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xfed073ff).into()), + conflict_background: Some(rgba(0x584018ff).into()), + conflict_border: Some(rgba(0x765a29ff).into()), created: Some(rgba(0xd5fe80ff).into()), - deleted: Some(rgba(0xc46a60ff).into()), + created_background: Some(rgba(0x426118ff).into()), + created_border: Some(rgba(0x5d7e2cff).into()), + deleted: Some(rgba(0xf18779ff).into()), + deleted_background: Some(rgba(0x481b1cff).into()), + deleted_border: Some(rgba(0x662e2dff).into()), error: Some(rgba(0xf18779ff).into()), + error_background: Some(rgba(0x481b1cff).into()), + error_border: Some(rgba(0x662e2dff).into()), + hidden: Some(rgba(0x7b7d7fff).into()), + hidden_background: Some(rgba(0x464a52ff).into()), + hidden_border: Some(rgba(0x4d5058ff).into()), hint: Some(rgba(0x7399a3ff).into()), + hint_background: Some(rgba(0x123a50ff).into()), + hint_border: Some(rgba(0x24556fff).into()), + ignored: Some(rgba(0x9a9a98ff).into()), + ignored_background: Some(rgba(0x464a52ff).into()), + ignored_border: Some(rgba(0x53565dff).into()), + info: Some(rgba(0x73cffeff).into()), + info_background: Some(rgba(0x123a50ff).into()), + info_border: Some(rgba(0x24556fff).into()), modified: Some(rgba(0xfed073ff).into()), - success: Some(rgba(0xcccac2ff).into()), + modified_background: Some(rgba(0x584018ff).into()), + modified_border: Some(rgba(0x765a29ff).into()), + predictive: Some(rgba(0xd5fe80ff).into()), + predictive_background: Some(rgba(0x426118ff).into()), + predictive_border: Some(rgba(0x5d7e2cff).into()), + renamed: Some(rgba(0x73cffeff).into()), + renamed_background: Some(rgba(0x123a50ff).into()), + renamed_border: Some(rgba(0x24556fff).into()), + success: Some(rgba(0xd5fe80ff).into()), + success_background: Some(rgba(0x426118ff).into()), + success_border: Some(rgba(0x5d7e2cff).into()), + unreachable: Some(rgba(0x9a9a98ff).into()), + unreachable_background: Some(rgba(0x464a52ff).into()), + unreachable_border: Some(rgba(0x53565dff).into()), warning: Some(rgba(0xfed073ff).into()), + warning_background: Some(rgba(0x584018ff).into()), + warning_border: Some(rgba(0x765a29ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ diff --git a/crates/theme2/src/themes/gruvbox.rs b/crates/theme2/src/themes/gruvbox.rs index e893f0df72..7bc8ef8064 100644 --- a/crates/theme2/src/themes/gruvbox.rs +++ b/crates/theme2/src/themes/gruvbox.rs @@ -20,36 +20,61 @@ pub fn gruvbox() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xddcca7ff).into()), - border_variant: Some(rgba(0xefe2bcff).into()), + border: Some(rgba(0xc9b99aff).into()), + border_variant: Some(rgba(0xc9b99aff).into()), + border_focused: Some(rgba(0xaec6cdff).into()), + border_selected: Some(rgba(0xaec6cdff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xd1c09eff).into()), elevated_surface_background: Some(rgba(0xecddb5ff).into()), + surface_background: Some(rgba(0xecddb5ff).into()), background: Some(rgba(0xd9c8a4ff).into()), panel_background: Some(rgba(0xecddb5ff).into()), - element_hover: Some(rgba(0xc9b99a80).into()), - element_selected: Some(rgba(0xb5a68e80).into()), + element_background: Some(rgba(0xecddb5ff).into()), + element_hover: Some(rgba(0xddcca7ff).into()), + element_active: Some(rgba(0xc9b99aff).into()), + element_selected: Some(rgba(0xc9b99aff).into()), + element_disabled: Some(rgba(0xecddb5ff).into()), drop_target_background: Some(rgba(0x5f565080).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xddcca7ff).into()), + ghost_element_active: Some(rgba(0xc9b99aff).into()), + ghost_element_selected: Some(rgba(0xc9b99aff).into()), + ghost_element_disabled: Some(rgba(0xecddb5ff).into()), text: Some(rgba(0x282828ff).into()), text_muted: Some(rgba(0x5f5650ff).into()), - text_placeholder: Some(rgba(0xad9e87ff).into()), - text_disabled: Some(rgba(0x282828ff).into()), + text_placeholder: Some(rgba(0x8a7c6fff).into()), + text_disabled: Some(rgba(0x8a7c6fff).into()), text_accent: Some(rgba(0x0b6678ff).into()), + icon: Some(rgba(0x282828ff).into()), + icon_muted: Some(rgba(0x5f5650ff).into()), + icon_disabled: Some(rgba(0x8a7c6fff).into()), + icon_placeholder: Some(rgba(0x5f5650ff).into()), + icon_accent: Some(rgba(0x0b6678ff).into()), status_bar_background: Some(rgba(0xd9c8a4ff).into()), title_bar_background: Some(rgba(0xd9c8a4ff).into()), toolbar_background: Some(rgba(0xf9f5d7ff).into()), tab_bar_background: Some(rgba(0xecddb5ff).into()), tab_inactive_background: Some(rgba(0xecddb5ff).into()), tab_active_background: Some(rgba(0xf9f5d7ff).into()), - scrollbar_thumb_background: Some(rgba(0x2828284d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x2828284d).into()), - scrollbar_thumb_border: Some(rgba(0xefe2bcff).into()), + scrollbar_thumb_background: Some(rgba(0x2828284c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xddcca7ff).into()), + scrollbar_thumb_border: Some(rgba(0xddcca7ff).into()), + scrollbar_track_background: Some(rgba(0xf9f5d7ff).into()), scrollbar_track_border: Some(rgba(0xefe2bcff).into()), editor_foreground: Some(rgba(0x282828ff).into()), editor_background: Some(rgba(0xf9f5d7ff).into()), editor_gutter_background: Some(rgba(0xf9f5d7ff).into()), + editor_subheader_background: Some(rgba(0xecddb5ff).into()), + editor_active_line_background: Some(rgba(0xecddb5bf).into()), + editor_highlighted_line_background: Some(rgba(0xecddb5ff).into()), editor_line_number: Some(rgba(0x28282859).into()), editor_active_line_number: Some(rgba(0x282828ff).into()), + editor_invisible: Some(rgba(0x5f5650ff).into()), editor_wrap_guide: Some(rgba(0x2828280d).into()), editor_active_wrap_guide: Some(rgba(0x2828281a).into()), + editor_document_highlight_read_background: Some(rgba(0x0b66781a).into()), + editor_document_highlight_write_background: Some(rgba(0x92847466).into()), terminal_background: Some(rgba(0xf9f5d7ff).into()), terminal_ansi_bright_black: Some(rgba(0xb1a28aff).into()), terminal_ansi_bright_red: Some(rgba(0xdc8c7bff).into()), @@ -67,16 +92,52 @@ pub fn gruvbox() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x7c6f64ff).into()), terminal_ansi_cyan: Some(rgba(0x437b59ff).into()), terminal_ansi_white: Some(rgba(0x282828ff).into()), + link_text_hover: Some(rgba(0x0b6678ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x958e43ff).into()), + conflict: Some(rgba(0xb57616ff).into()), + conflict_background: Some(rgba(0xf5e2d0ff).into()), + conflict_border: Some(rgba(0xebccabff).into()), + created: Some(rgba(0x797410ff).into()), + created_background: Some(rgba(0xe5e1ceff).into()), + created_border: Some(rgba(0xd1cba8ff).into()), deleted: Some(rgba(0x9d0408ff).into()), + deleted_background: Some(rgba(0xf4d1c9ff).into()), + deleted_border: Some(rgba(0xe8ac9eff).into()), error: Some(rgba(0x9d0408ff).into()), + error_background: Some(rgba(0xf4d1c9ff).into()), + error_border: Some(rgba(0xe8ac9eff).into()), + hidden: Some(rgba(0x8a7c6fff).into()), + hidden_background: Some(rgba(0xd9c8a4ff).into()), + hidden_border: Some(rgba(0xd1c09eff).into()), hint: Some(rgba(0x677562ff).into()), + hint_background: Some(rgba(0xd2dee2ff).into()), + hint_border: Some(rgba(0xaec6cdff).into()), + ignored: Some(rgba(0x5f5650ff).into()), + ignored_background: Some(rgba(0xd9c8a4ff).into()), + ignored_border: Some(rgba(0xc9b99aff).into()), + info: Some(rgba(0x0b6678ff).into()), + info_background: Some(rgba(0xd2dee2ff).into()), + info_border: Some(rgba(0xaec6cdff).into()), modified: Some(rgba(0xb57616ff).into()), - success: Some(rgba(0x282828ff).into()), + modified_background: Some(rgba(0xf5e2d0ff).into()), + modified_border: Some(rgba(0xebccabff).into()), + predictive: Some(rgba(0x797410ff).into()), + predictive_background: Some(rgba(0xe5e1ceff).into()), + predictive_border: Some(rgba(0xd1cba8ff).into()), + renamed: Some(rgba(0x0b6678ff).into()), + renamed_background: Some(rgba(0xd2dee2ff).into()), + renamed_border: Some(rgba(0xaec6cdff).into()), + success: Some(rgba(0x797410ff).into()), + success_background: Some(rgba(0xe5e1ceff).into()), + success_border: Some(rgba(0xd1cba8ff).into()), + unreachable: Some(rgba(0x5f5650ff).into()), + unreachable_background: Some(rgba(0xd9c8a4ff).into()), + unreachable_border: Some(rgba(0xc9b99aff).into()), warning: Some(rgba(0xb57616ff).into()), + warning_background: Some(rgba(0xf5e2d0ff).into()), + warning_border: Some(rgba(0xebccabff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -410,36 +471,61 @@ pub fn gruvbox() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x494340ff).into()), - border_variant: Some(rgba(0x393634ff).into()), + border: Some(rgba(0x5b534dff).into()), + border_variant: Some(rgba(0x5b534dff).into()), + border_focused: Some(rgba(0x303a36ff).into()), + border_selected: Some(rgba(0x303a36ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x544c48ff).into()), elevated_surface_background: Some(rgba(0x3b3735ff).into()), + surface_background: Some(rgba(0x3b3735ff).into()), background: Some(rgba(0x4c4642ff).into()), panel_background: Some(rgba(0x3b3735ff).into()), - element_hover: Some(rgba(0x5b534d80).into()), - element_selected: Some(rgba(0x6e635a80).into()), + element_background: Some(rgba(0x3b3735ff).into()), + element_hover: Some(rgba(0x494340ff).into()), + element_active: Some(rgba(0x5b524cff).into()), + element_selected: Some(rgba(0x5b524cff).into()), + element_disabled: Some(rgba(0x3b3735ff).into()), drop_target_background: Some(rgba(0xc5b59780).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x494340ff).into()), + ghost_element_active: Some(rgba(0x5b524cff).into()), + ghost_element_selected: Some(rgba(0x5b524cff).into()), + ghost_element_disabled: Some(rgba(0x3b3735ff).into()), text: Some(rgba(0xfbf1c7ff).into()), text_muted: Some(rgba(0xc5b597ff).into()), - text_placeholder: Some(rgba(0x776b61ff).into()), - text_disabled: Some(rgba(0xfbf1c7ff).into()), + text_placeholder: Some(rgba(0x9a8c79ff).into()), + text_disabled: Some(rgba(0x9a8c79ff).into()), text_accent: Some(rgba(0x83a598ff).into()), + icon: Some(rgba(0xfbf1c7ff).into()), + icon_muted: Some(rgba(0xc5b597ff).into()), + icon_disabled: Some(rgba(0x9a8c79ff).into()), + icon_placeholder: Some(rgba(0xc5b597ff).into()), + icon_accent: Some(rgba(0x83a598ff).into()), status_bar_background: Some(rgba(0x4c4642ff).into()), title_bar_background: Some(rgba(0x4c4642ff).into()), toolbar_background: Some(rgba(0x32302fff).into()), tab_bar_background: Some(rgba(0x3b3735ff).into()), tab_inactive_background: Some(rgba(0x3b3735ff).into()), tab_active_background: Some(rgba(0x32302fff).into()), - scrollbar_thumb_background: Some(rgba(0xfbf1c74d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xfbf1c74d).into()), - scrollbar_thumb_border: Some(rgba(0x393634ff).into()), + scrollbar_thumb_background: Some(rgba(0xfbf1c74c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x494340ff).into()), + scrollbar_thumb_border: Some(rgba(0x494340ff).into()), + scrollbar_track_background: Some(rgba(0x32302fff).into()), scrollbar_track_border: Some(rgba(0x393634ff).into()), editor_foreground: Some(rgba(0xebdbb2ff).into()), editor_background: Some(rgba(0x32302fff).into()), editor_gutter_background: Some(rgba(0x32302fff).into()), + editor_subheader_background: Some(rgba(0x3b3735ff).into()), + editor_active_line_background: Some(rgba(0x3b3735bf).into()), + editor_highlighted_line_background: Some(rgba(0x3b3735ff).into()), editor_line_number: Some(rgba(0xfbf1c759).into()), editor_active_line_number: Some(rgba(0xfbf1c7ff).into()), + editor_invisible: Some(rgba(0xc5b597ff).into()), editor_wrap_guide: Some(rgba(0xfbf1c70d).into()), editor_active_wrap_guide: Some(rgba(0xfbf1c71a).into()), + editor_document_highlight_read_background: Some(rgba(0x83a5981a).into()), + editor_document_highlight_write_background: Some(rgba(0x92847466).into()), terminal_background: Some(rgba(0x32302fff).into()), terminal_ansi_bright_black: Some(rgba(0x73675eff).into()), terminal_ansi_bright_red: Some(rgba(0x93211eff).into()), @@ -457,16 +543,52 @@ pub fn gruvbox() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xa89984ff).into()), terminal_ansi_cyan: Some(rgba(0x8ec07cff).into()), terminal_ansi_white: Some(rgba(0xfbf1c7ff).into()), + link_text_hover: Some(rgba(0x83a598ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xf9bd30ff).into()), + conflict_background: Some(rgba(0x582f10ff).into()), + conflict_border: Some(rgba(0x754916ff).into()), created: Some(rgba(0xb8bb27ff).into()), - deleted: Some(rgba(0xd0382bff).into()), + created_background: Some(rgba(0x332b11ff).into()), + created_border: Some(rgba(0x4a4516ff).into()), + deleted: Some(rgba(0xfb4a35ff).into()), + deleted_background: Some(rgba(0x5a0a10ff).into()), + deleted_border: Some(rgba(0x771618ff).into()), error: Some(rgba(0xfb4a35ff).into()), + error_background: Some(rgba(0x5a0a10ff).into()), + error_border: Some(rgba(0x771618ff).into()), + hidden: Some(rgba(0x9a8c79ff).into()), + hidden_background: Some(rgba(0x4c4642ff).into()), + hidden_border: Some(rgba(0x544c48ff).into()), hint: Some(rgba(0x8d957eff).into()), + hint_background: Some(rgba(0x1e2321ff).into()), + hint_border: Some(rgba(0x303a36ff).into()), + ignored: Some(rgba(0xc5b597ff).into()), + ignored_background: Some(rgba(0x4c4642ff).into()), + ignored_border: Some(rgba(0x5b534dff).into()), + info: Some(rgba(0x83a598ff).into()), + info_background: Some(rgba(0x1e2321ff).into()), + info_border: Some(rgba(0x303a36ff).into()), modified: Some(rgba(0xf9bd30ff).into()), - success: Some(rgba(0xfbf1c7ff).into()), + modified_background: Some(rgba(0x582f10ff).into()), + modified_border: Some(rgba(0x754916ff).into()), + predictive: Some(rgba(0xb8bb27ff).into()), + predictive_background: Some(rgba(0x332b11ff).into()), + predictive_border: Some(rgba(0x4a4516ff).into()), + renamed: Some(rgba(0x83a598ff).into()), + renamed_background: Some(rgba(0x1e2321ff).into()), + renamed_border: Some(rgba(0x303a36ff).into()), + success: Some(rgba(0xb8bb27ff).into()), + success_background: Some(rgba(0x332b11ff).into()), + success_border: Some(rgba(0x4a4516ff).into()), + unreachable: Some(rgba(0xc5b597ff).into()), + unreachable_background: Some(rgba(0x4c4642ff).into()), + unreachable_border: Some(rgba(0x5b534dff).into()), warning: Some(rgba(0xf9bd30ff).into()), + warning_background: Some(rgba(0x582f10ff).into()), + warning_border: Some(rgba(0x754916ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -800,36 +922,61 @@ pub fn gruvbox() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xddcca7ff).into()), - border_variant: Some(rgba(0xefe1b8ff).into()), + border: Some(rgba(0xc9b99aff).into()), + border_variant: Some(rgba(0xc9b99aff).into()), + border_focused: Some(rgba(0xaec6cdff).into()), + border_selected: Some(rgba(0xaec6cdff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xd1c09eff).into()), elevated_surface_background: Some(rgba(0xecddb4ff).into()), + surface_background: Some(rgba(0xecddb4ff).into()), background: Some(rgba(0xd9c8a4ff).into()), panel_background: Some(rgba(0xecddb4ff).into()), - element_hover: Some(rgba(0xc9b99a80).into()), - element_selected: Some(rgba(0xb5a68e80).into()), + element_background: Some(rgba(0xecddb4ff).into()), + element_hover: Some(rgba(0xddcca7ff).into()), + element_active: Some(rgba(0xc9b99aff).into()), + element_selected: Some(rgba(0xc9b99aff).into()), + element_disabled: Some(rgba(0xecddb4ff).into()), drop_target_background: Some(rgba(0x5f565080).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xddcca7ff).into()), + ghost_element_active: Some(rgba(0xc9b99aff).into()), + ghost_element_selected: Some(rgba(0xc9b99aff).into()), + ghost_element_disabled: Some(rgba(0xecddb4ff).into()), text: Some(rgba(0x282828ff).into()), text_muted: Some(rgba(0x5f5650ff).into()), - text_placeholder: Some(rgba(0xad9e87ff).into()), - text_disabled: Some(rgba(0x282828ff).into()), + text_placeholder: Some(rgba(0x8a7c6fff).into()), + text_disabled: Some(rgba(0x8a7c6fff).into()), text_accent: Some(rgba(0x0b6678ff).into()), + icon: Some(rgba(0x282828ff).into()), + icon_muted: Some(rgba(0x5f5650ff).into()), + icon_disabled: Some(rgba(0x8a7c6fff).into()), + icon_placeholder: Some(rgba(0x5f5650ff).into()), + icon_accent: Some(rgba(0x0b6678ff).into()), status_bar_background: Some(rgba(0xd9c8a4ff).into()), title_bar_background: Some(rgba(0xd9c8a4ff).into()), toolbar_background: Some(rgba(0xfbf1c7ff).into()), tab_bar_background: Some(rgba(0xecddb4ff).into()), tab_inactive_background: Some(rgba(0xecddb4ff).into()), tab_active_background: Some(rgba(0xfbf1c7ff).into()), - scrollbar_thumb_background: Some(rgba(0x2828284d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x2828284d).into()), - scrollbar_thumb_border: Some(rgba(0xefe1b8ff).into()), + scrollbar_thumb_background: Some(rgba(0x2828284c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xddcca7ff).into()), + scrollbar_thumb_border: Some(rgba(0xddcca7ff).into()), + scrollbar_track_background: Some(rgba(0xfbf1c7ff).into()), scrollbar_track_border: Some(rgba(0xefe1b8ff).into()), editor_foreground: Some(rgba(0x282828ff).into()), editor_background: Some(rgba(0xfbf1c7ff).into()), editor_gutter_background: Some(rgba(0xfbf1c7ff).into()), + editor_subheader_background: Some(rgba(0xecddb4ff).into()), + editor_active_line_background: Some(rgba(0xecddb4bf).into()), + editor_highlighted_line_background: Some(rgba(0xecddb4ff).into()), editor_line_number: Some(rgba(0x28282859).into()), editor_active_line_number: Some(rgba(0x282828ff).into()), + editor_invisible: Some(rgba(0x5f5650ff).into()), editor_wrap_guide: Some(rgba(0x2828280d).into()), editor_active_wrap_guide: Some(rgba(0x2828281a).into()), + editor_document_highlight_read_background: Some(rgba(0x0b66781a).into()), + editor_document_highlight_write_background: Some(rgba(0x92847466).into()), terminal_background: Some(rgba(0xfbf1c7ff).into()), terminal_ansi_bright_black: Some(rgba(0xb1a28aff).into()), terminal_ansi_bright_red: Some(rgba(0xdc8c7bff).into()), @@ -847,16 +994,52 @@ pub fn gruvbox() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x7c6f64ff).into()), terminal_ansi_cyan: Some(rgba(0x437b59ff).into()), terminal_ansi_white: Some(rgba(0x282828ff).into()), + link_text_hover: Some(rgba(0x0b6678ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x958e43ff).into()), + conflict: Some(rgba(0xb57616ff).into()), + conflict_background: Some(rgba(0xf5e2d0ff).into()), + conflict_border: Some(rgba(0xebccabff).into()), + created: Some(rgba(0x797410ff).into()), + created_background: Some(rgba(0xe5e1ceff).into()), + created_border: Some(rgba(0xd1cba8ff).into()), deleted: Some(rgba(0x9d0408ff).into()), + deleted_background: Some(rgba(0xf4d1c9ff).into()), + deleted_border: Some(rgba(0xe8ac9eff).into()), error: Some(rgba(0x9d0408ff).into()), + error_background: Some(rgba(0xf4d1c9ff).into()), + error_border: Some(rgba(0xe8ac9eff).into()), + hidden: Some(rgba(0x8a7c6fff).into()), + hidden_background: Some(rgba(0xd9c8a4ff).into()), + hidden_border: Some(rgba(0xd1c09eff).into()), hint: Some(rgba(0x677562ff).into()), + hint_background: Some(rgba(0xd2dee2ff).into()), + hint_border: Some(rgba(0xaec6cdff).into()), + ignored: Some(rgba(0x5f5650ff).into()), + ignored_background: Some(rgba(0xd9c8a4ff).into()), + ignored_border: Some(rgba(0xc9b99aff).into()), + info: Some(rgba(0x0b6678ff).into()), + info_background: Some(rgba(0xd2dee2ff).into()), + info_border: Some(rgba(0xaec6cdff).into()), modified: Some(rgba(0xb57616ff).into()), - success: Some(rgba(0x282828ff).into()), + modified_background: Some(rgba(0xf5e2d0ff).into()), + modified_border: Some(rgba(0xebccabff).into()), + predictive: Some(rgba(0x797410ff).into()), + predictive_background: Some(rgba(0xe5e1ceff).into()), + predictive_border: Some(rgba(0xd1cba8ff).into()), + renamed: Some(rgba(0x0b6678ff).into()), + renamed_background: Some(rgba(0xd2dee2ff).into()), + renamed_border: Some(rgba(0xaec6cdff).into()), + success: Some(rgba(0x797410ff).into()), + success_background: Some(rgba(0xe5e1ceff).into()), + success_border: Some(rgba(0xd1cba8ff).into()), + unreachable: Some(rgba(0x5f5650ff).into()), + unreachable_background: Some(rgba(0xd9c8a4ff).into()), + unreachable_border: Some(rgba(0xc9b99aff).into()), warning: Some(rgba(0xb57616ff).into()), + warning_background: Some(rgba(0xf5e2d0ff).into()), + warning_border: Some(rgba(0xebccabff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -1190,36 +1373,61 @@ pub fn gruvbox() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x494340ff).into()), - border_variant: Some(rgba(0x373432ff).into()), + border: Some(rgba(0x5b534dff).into()), + border_variant: Some(rgba(0x5b534dff).into()), + border_focused: Some(rgba(0x303a36ff).into()), + border_selected: Some(rgba(0x303a36ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x544c48ff).into()), elevated_surface_background: Some(rgba(0x3a3735ff).into()), + surface_background: Some(rgba(0x3a3735ff).into()), background: Some(rgba(0x4c4642ff).into()), panel_background: Some(rgba(0x3a3735ff).into()), - element_hover: Some(rgba(0x5b534d80).into()), - element_selected: Some(rgba(0x6e635a80).into()), + element_background: Some(rgba(0x3a3735ff).into()), + element_hover: Some(rgba(0x494340ff).into()), + element_active: Some(rgba(0x5b524cff).into()), + element_selected: Some(rgba(0x5b524cff).into()), + element_disabled: Some(rgba(0x3a3735ff).into()), drop_target_background: Some(rgba(0xc5b59780).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x494340ff).into()), + ghost_element_active: Some(rgba(0x5b524cff).into()), + ghost_element_selected: Some(rgba(0x5b524cff).into()), + ghost_element_disabled: Some(rgba(0x3a3735ff).into()), text: Some(rgba(0xfbf1c7ff).into()), text_muted: Some(rgba(0xc5b597ff).into()), - text_placeholder: Some(rgba(0x776b61ff).into()), - text_disabled: Some(rgba(0xfbf1c7ff).into()), + text_placeholder: Some(rgba(0x9a8c79ff).into()), + text_disabled: Some(rgba(0x9a8c79ff).into()), text_accent: Some(rgba(0x83a598ff).into()), + icon: Some(rgba(0xfbf1c7ff).into()), + icon_muted: Some(rgba(0xc5b597ff).into()), + icon_disabled: Some(rgba(0x9a8c79ff).into()), + icon_placeholder: Some(rgba(0xc5b597ff).into()), + icon_accent: Some(rgba(0x83a598ff).into()), status_bar_background: Some(rgba(0x4c4642ff).into()), title_bar_background: Some(rgba(0x4c4642ff).into()), toolbar_background: Some(rgba(0x282828ff).into()), tab_bar_background: Some(rgba(0x3a3735ff).into()), tab_inactive_background: Some(rgba(0x3a3735ff).into()), tab_active_background: Some(rgba(0x282828ff).into()), - scrollbar_thumb_background: Some(rgba(0xfbf1c74d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xfbf1c74d).into()), - scrollbar_thumb_border: Some(rgba(0x373432ff).into()), + scrollbar_thumb_background: Some(rgba(0xfbf1c74c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x494340ff).into()), + scrollbar_thumb_border: Some(rgba(0x494340ff).into()), + scrollbar_track_background: Some(rgba(0x282828ff).into()), scrollbar_track_border: Some(rgba(0x373432ff).into()), editor_foreground: Some(rgba(0xebdbb2ff).into()), editor_background: Some(rgba(0x282828ff).into()), editor_gutter_background: Some(rgba(0x282828ff).into()), + editor_subheader_background: Some(rgba(0x3a3735ff).into()), + editor_active_line_background: Some(rgba(0x3a3735bf).into()), + editor_highlighted_line_background: Some(rgba(0x3a3735ff).into()), editor_line_number: Some(rgba(0xfbf1c759).into()), editor_active_line_number: Some(rgba(0xfbf1c7ff).into()), + editor_invisible: Some(rgba(0xc5b597ff).into()), editor_wrap_guide: Some(rgba(0xfbf1c70d).into()), editor_active_wrap_guide: Some(rgba(0xfbf1c71a).into()), + editor_document_highlight_read_background: Some(rgba(0x83a5981a).into()), + editor_document_highlight_write_background: Some(rgba(0x92847466).into()), terminal_background: Some(rgba(0x282828ff).into()), terminal_ansi_bright_black: Some(rgba(0x73675eff).into()), terminal_ansi_bright_red: Some(rgba(0x93211eff).into()), @@ -1237,16 +1445,52 @@ pub fn gruvbox() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xa89984ff).into()), terminal_ansi_cyan: Some(rgba(0x8ec07cff).into()), terminal_ansi_white: Some(rgba(0xfbf1c7ff).into()), + link_text_hover: Some(rgba(0x83a598ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xf9bd30ff).into()), + conflict_background: Some(rgba(0x582f10ff).into()), + conflict_border: Some(rgba(0x754916ff).into()), created: Some(rgba(0xb8bb27ff).into()), - deleted: Some(rgba(0xd0382bff).into()), + created_background: Some(rgba(0x332b11ff).into()), + created_border: Some(rgba(0x4a4516ff).into()), + deleted: Some(rgba(0xfb4a35ff).into()), + deleted_background: Some(rgba(0x5a0a10ff).into()), + deleted_border: Some(rgba(0x771618ff).into()), error: Some(rgba(0xfb4a35ff).into()), + error_background: Some(rgba(0x5a0a10ff).into()), + error_border: Some(rgba(0x771618ff).into()), + hidden: Some(rgba(0x9a8c79ff).into()), + hidden_background: Some(rgba(0x4c4642ff).into()), + hidden_border: Some(rgba(0x544c48ff).into()), hint: Some(rgba(0x8d957eff).into()), + hint_background: Some(rgba(0x1e2321ff).into()), + hint_border: Some(rgba(0x303a36ff).into()), + ignored: Some(rgba(0xc5b597ff).into()), + ignored_background: Some(rgba(0x4c4642ff).into()), + ignored_border: Some(rgba(0x5b534dff).into()), + info: Some(rgba(0x83a598ff).into()), + info_background: Some(rgba(0x1e2321ff).into()), + info_border: Some(rgba(0x303a36ff).into()), modified: Some(rgba(0xf9bd30ff).into()), - success: Some(rgba(0xfbf1c7ff).into()), + modified_background: Some(rgba(0x582f10ff).into()), + modified_border: Some(rgba(0x754916ff).into()), + predictive: Some(rgba(0xb8bb27ff).into()), + predictive_background: Some(rgba(0x332b11ff).into()), + predictive_border: Some(rgba(0x4a4516ff).into()), + renamed: Some(rgba(0x83a598ff).into()), + renamed_background: Some(rgba(0x1e2321ff).into()), + renamed_border: Some(rgba(0x303a36ff).into()), + success: Some(rgba(0xb8bb27ff).into()), + success_background: Some(rgba(0x332b11ff).into()), + success_border: Some(rgba(0x4a4516ff).into()), + unreachable: Some(rgba(0xc5b597ff).into()), + unreachable_background: Some(rgba(0x4c4642ff).into()), + unreachable_border: Some(rgba(0x5b534dff).into()), warning: Some(rgba(0xf9bd30ff).into()), + warning_background: Some(rgba(0x582f10ff).into()), + warning_border: Some(rgba(0x754916ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -1580,36 +1824,61 @@ pub fn gruvbox() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xddcca7ff).into()), - border_variant: Some(rgba(0xeddeb5ff).into()), + border: Some(rgba(0xc9b99aff).into()), + border_variant: Some(rgba(0xc9b99aff).into()), + border_focused: Some(rgba(0xaec6cdff).into()), + border_selected: Some(rgba(0xaec6cdff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xd1c09eff).into()), elevated_surface_background: Some(rgba(0xecdcb3ff).into()), + surface_background: Some(rgba(0xecdcb3ff).into()), background: Some(rgba(0xd9c8a4ff).into()), panel_background: Some(rgba(0xecdcb3ff).into()), - element_hover: Some(rgba(0xc9b99a80).into()), - element_selected: Some(rgba(0xb5a68e80).into()), + element_background: Some(rgba(0xecdcb3ff).into()), + element_hover: Some(rgba(0xddcca7ff).into()), + element_active: Some(rgba(0xc9b99aff).into()), + element_selected: Some(rgba(0xc9b99aff).into()), + element_disabled: Some(rgba(0xecdcb3ff).into()), drop_target_background: Some(rgba(0x5f565080).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xddcca7ff).into()), + ghost_element_active: Some(rgba(0xc9b99aff).into()), + ghost_element_selected: Some(rgba(0xc9b99aff).into()), + ghost_element_disabled: Some(rgba(0xecdcb3ff).into()), text: Some(rgba(0x282828ff).into()), text_muted: Some(rgba(0x5f5650ff).into()), - text_placeholder: Some(rgba(0xad9e87ff).into()), - text_disabled: Some(rgba(0x282828ff).into()), + text_placeholder: Some(rgba(0x8a7c6fff).into()), + text_disabled: Some(rgba(0x8a7c6fff).into()), text_accent: Some(rgba(0x0b6678ff).into()), + icon: Some(rgba(0x282828ff).into()), + icon_muted: Some(rgba(0x5f5650ff).into()), + icon_disabled: Some(rgba(0x8a7c6fff).into()), + icon_placeholder: Some(rgba(0x5f5650ff).into()), + icon_accent: Some(rgba(0x0b6678ff).into()), status_bar_background: Some(rgba(0xd9c8a4ff).into()), title_bar_background: Some(rgba(0xd9c8a4ff).into()), toolbar_background: Some(rgba(0xf2e5bcff).into()), tab_bar_background: Some(rgba(0xecdcb3ff).into()), tab_inactive_background: Some(rgba(0xecdcb3ff).into()), tab_active_background: Some(rgba(0xf2e5bcff).into()), - scrollbar_thumb_background: Some(rgba(0x2828284d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x2828284d).into()), - scrollbar_thumb_border: Some(rgba(0xeddeb5ff).into()), + scrollbar_thumb_background: Some(rgba(0x2828284c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xddcca7ff).into()), + scrollbar_thumb_border: Some(rgba(0xddcca7ff).into()), + scrollbar_track_background: Some(rgba(0xf2e5bcff).into()), scrollbar_track_border: Some(rgba(0xeddeb5ff).into()), editor_foreground: Some(rgba(0x282828ff).into()), editor_background: Some(rgba(0xf2e5bcff).into()), editor_gutter_background: Some(rgba(0xf2e5bcff).into()), + editor_subheader_background: Some(rgba(0xecdcb3ff).into()), + editor_active_line_background: Some(rgba(0xecdcb3bf).into()), + editor_highlighted_line_background: Some(rgba(0xecdcb3ff).into()), editor_line_number: Some(rgba(0x28282859).into()), editor_active_line_number: Some(rgba(0x282828ff).into()), + editor_invisible: Some(rgba(0x5f5650ff).into()), editor_wrap_guide: Some(rgba(0x2828280d).into()), editor_active_wrap_guide: Some(rgba(0x2828281a).into()), + editor_document_highlight_read_background: Some(rgba(0x0b66781a).into()), + editor_document_highlight_write_background: Some(rgba(0x92847466).into()), terminal_background: Some(rgba(0xf2e5bcff).into()), terminal_ansi_bright_black: Some(rgba(0xb1a28aff).into()), terminal_ansi_bright_red: Some(rgba(0xdc8c7bff).into()), @@ -1627,16 +1896,52 @@ pub fn gruvbox() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x7c6f64ff).into()), terminal_ansi_cyan: Some(rgba(0x437b59ff).into()), terminal_ansi_white: Some(rgba(0x282828ff).into()), + link_text_hover: Some(rgba(0x0b6678ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x958e43ff).into()), + conflict: Some(rgba(0xb57616ff).into()), + conflict_background: Some(rgba(0xf5e2d0ff).into()), + conflict_border: Some(rgba(0xebccabff).into()), + created: Some(rgba(0x797410ff).into()), + created_background: Some(rgba(0xe5e1ceff).into()), + created_border: Some(rgba(0xd1cba8ff).into()), deleted: Some(rgba(0x9d0408ff).into()), + deleted_background: Some(rgba(0xf4d1c9ff).into()), + deleted_border: Some(rgba(0xe8ac9eff).into()), error: Some(rgba(0x9d0408ff).into()), + error_background: Some(rgba(0xf4d1c9ff).into()), + error_border: Some(rgba(0xe8ac9eff).into()), + hidden: Some(rgba(0x8a7c6fff).into()), + hidden_background: Some(rgba(0xd9c8a4ff).into()), + hidden_border: Some(rgba(0xd1c09eff).into()), hint: Some(rgba(0x677562ff).into()), + hint_background: Some(rgba(0xd2dee2ff).into()), + hint_border: Some(rgba(0xaec6cdff).into()), + ignored: Some(rgba(0x5f5650ff).into()), + ignored_background: Some(rgba(0xd9c8a4ff).into()), + ignored_border: Some(rgba(0xc9b99aff).into()), + info: Some(rgba(0x0b6678ff).into()), + info_background: Some(rgba(0xd2dee2ff).into()), + info_border: Some(rgba(0xaec6cdff).into()), modified: Some(rgba(0xb57616ff).into()), - success: Some(rgba(0x282828ff).into()), + modified_background: Some(rgba(0xf5e2d0ff).into()), + modified_border: Some(rgba(0xebccabff).into()), + predictive: Some(rgba(0x797410ff).into()), + predictive_background: Some(rgba(0xe5e1ceff).into()), + predictive_border: Some(rgba(0xd1cba8ff).into()), + renamed: Some(rgba(0x0b6678ff).into()), + renamed_background: Some(rgba(0xd2dee2ff).into()), + renamed_border: Some(rgba(0xaec6cdff).into()), + success: Some(rgba(0x797410ff).into()), + success_background: Some(rgba(0xe5e1ceff).into()), + success_border: Some(rgba(0xd1cba8ff).into()), + unreachable: Some(rgba(0x5f5650ff).into()), + unreachable_background: Some(rgba(0xd9c8a4ff).into()), + unreachable_border: Some(rgba(0xc9b99aff).into()), warning: Some(rgba(0xb57616ff).into()), + warning_background: Some(rgba(0xf5e2d0ff).into()), + warning_border: Some(rgba(0xebccabff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -1970,36 +2275,61 @@ pub fn gruvbox() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x494340ff).into()), - border_variant: Some(rgba(0x343130ff).into()), + border: Some(rgba(0x5b534dff).into()), + border_variant: Some(rgba(0x5b534dff).into()), + border_focused: Some(rgba(0x303a36ff).into()), + border_selected: Some(rgba(0x303a36ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x544c48ff).into()), elevated_surface_background: Some(rgba(0x393634ff).into()), + surface_background: Some(rgba(0x393634ff).into()), background: Some(rgba(0x4c4642ff).into()), panel_background: Some(rgba(0x393634ff).into()), - element_hover: Some(rgba(0x5b534d80).into()), - element_selected: Some(rgba(0x6e635a80).into()), + element_background: Some(rgba(0x393634ff).into()), + element_hover: Some(rgba(0x494340ff).into()), + element_active: Some(rgba(0x5b524cff).into()), + element_selected: Some(rgba(0x5b524cff).into()), + element_disabled: Some(rgba(0x393634ff).into()), drop_target_background: Some(rgba(0xc5b59780).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x494340ff).into()), + ghost_element_active: Some(rgba(0x5b524cff).into()), + ghost_element_selected: Some(rgba(0x5b524cff).into()), + ghost_element_disabled: Some(rgba(0x393634ff).into()), text: Some(rgba(0xfbf1c7ff).into()), text_muted: Some(rgba(0xc5b597ff).into()), - text_placeholder: Some(rgba(0x776b61ff).into()), - text_disabled: Some(rgba(0xfbf1c7ff).into()), + text_placeholder: Some(rgba(0x9a8c79ff).into()), + text_disabled: Some(rgba(0x9a8c79ff).into()), text_accent: Some(rgba(0x83a598ff).into()), + icon: Some(rgba(0xfbf1c7ff).into()), + icon_muted: Some(rgba(0xc5b597ff).into()), + icon_disabled: Some(rgba(0x9a8c79ff).into()), + icon_placeholder: Some(rgba(0xc5b597ff).into()), + icon_accent: Some(rgba(0x83a598ff).into()), status_bar_background: Some(rgba(0x4c4642ff).into()), title_bar_background: Some(rgba(0x4c4642ff).into()), toolbar_background: Some(rgba(0x1d2021ff).into()), tab_bar_background: Some(rgba(0x393634ff).into()), tab_inactive_background: Some(rgba(0x393634ff).into()), tab_active_background: Some(rgba(0x1d2021ff).into()), - scrollbar_thumb_background: Some(rgba(0xfbf1c74d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xfbf1c74d).into()), - scrollbar_thumb_border: Some(rgba(0x343130ff).into()), + scrollbar_thumb_background: Some(rgba(0xfbf1c74c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x494340ff).into()), + scrollbar_thumb_border: Some(rgba(0x494340ff).into()), + scrollbar_track_background: Some(rgba(0x1d2021ff).into()), scrollbar_track_border: Some(rgba(0x343130ff).into()), editor_foreground: Some(rgba(0xebdbb2ff).into()), editor_background: Some(rgba(0x1d2021ff).into()), editor_gutter_background: Some(rgba(0x1d2021ff).into()), + editor_subheader_background: Some(rgba(0x393634ff).into()), + editor_active_line_background: Some(rgba(0x393634bf).into()), + editor_highlighted_line_background: Some(rgba(0x393634ff).into()), editor_line_number: Some(rgba(0xfbf1c759).into()), editor_active_line_number: Some(rgba(0xfbf1c7ff).into()), + editor_invisible: Some(rgba(0xc5b597ff).into()), editor_wrap_guide: Some(rgba(0xfbf1c70d).into()), editor_active_wrap_guide: Some(rgba(0xfbf1c71a).into()), + editor_document_highlight_read_background: Some(rgba(0x83a5981a).into()), + editor_document_highlight_write_background: Some(rgba(0x92847466).into()), terminal_background: Some(rgba(0x1d2021ff).into()), terminal_ansi_bright_black: Some(rgba(0x73675eff).into()), terminal_ansi_bright_red: Some(rgba(0x93211eff).into()), @@ -2017,16 +2347,52 @@ pub fn gruvbox() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xa89984ff).into()), terminal_ansi_cyan: Some(rgba(0x8ec07cff).into()), terminal_ansi_white: Some(rgba(0xfbf1c7ff).into()), + link_text_hover: Some(rgba(0x83a598ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xf9bd30ff).into()), + conflict_background: Some(rgba(0x582f10ff).into()), + conflict_border: Some(rgba(0x754916ff).into()), created: Some(rgba(0xb8bb27ff).into()), - deleted: Some(rgba(0xd0382bff).into()), + created_background: Some(rgba(0x332b11ff).into()), + created_border: Some(rgba(0x4a4516ff).into()), + deleted: Some(rgba(0xfb4a35ff).into()), + deleted_background: Some(rgba(0x5a0a10ff).into()), + deleted_border: Some(rgba(0x771618ff).into()), error: Some(rgba(0xfb4a35ff).into()), + error_background: Some(rgba(0x5a0a10ff).into()), + error_border: Some(rgba(0x771618ff).into()), + hidden: Some(rgba(0x9a8c79ff).into()), + hidden_background: Some(rgba(0x4c4642ff).into()), + hidden_border: Some(rgba(0x544c48ff).into()), hint: Some(rgba(0x8d957eff).into()), + hint_background: Some(rgba(0x1e2321ff).into()), + hint_border: Some(rgba(0x303a36ff).into()), + ignored: Some(rgba(0xc5b597ff).into()), + ignored_background: Some(rgba(0x4c4642ff).into()), + ignored_border: Some(rgba(0x5b534dff).into()), + info: Some(rgba(0x83a598ff).into()), + info_background: Some(rgba(0x1e2321ff).into()), + info_border: Some(rgba(0x303a36ff).into()), modified: Some(rgba(0xf9bd30ff).into()), - success: Some(rgba(0xfbf1c7ff).into()), + modified_background: Some(rgba(0x582f10ff).into()), + modified_border: Some(rgba(0x754916ff).into()), + predictive: Some(rgba(0xb8bb27ff).into()), + predictive_background: Some(rgba(0x332b11ff).into()), + predictive_border: Some(rgba(0x4a4516ff).into()), + renamed: Some(rgba(0x83a598ff).into()), + renamed_background: Some(rgba(0x1e2321ff).into()), + renamed_border: Some(rgba(0x303a36ff).into()), + success: Some(rgba(0xb8bb27ff).into()), + success_background: Some(rgba(0x332b11ff).into()), + success_border: Some(rgba(0x4a4516ff).into()), + unreachable: Some(rgba(0xc5b597ff).into()), + unreachable_background: Some(rgba(0x4c4642ff).into()), + unreachable_border: Some(rgba(0x5b534dff).into()), warning: Some(rgba(0xf9bd30ff).into()), + warning_background: Some(rgba(0x582f10ff).into()), + warning_border: Some(rgba(0x754916ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ diff --git a/crates/theme2/src/themes/one.rs b/crates/theme2/src/themes/one.rs index 8403892c05..0447306a2c 100644 --- a/crates/theme2/src/themes/one.rs +++ b/crates/theme2/src/themes/one.rs @@ -20,36 +20,61 @@ pub fn one() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xdfdfe0ff).into()), - border_variant: Some(rgba(0xeeeeeeff).into()), + border: Some(rgba(0xc9c9caff).into()), + border_variant: Some(rgba(0xc9c9caff).into()), + border_focused: Some(rgba(0xcbcdf6ff).into()), + border_selected: Some(rgba(0xcbcdf6ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xd3d3d4ff).into()), elevated_surface_background: Some(rgba(0xebebecff).into()), + surface_background: Some(rgba(0xebebecff).into()), background: Some(rgba(0xdcdcddff).into()), panel_background: Some(rgba(0xebebecff).into()), - element_hover: Some(rgba(0xc9c9ca80).into()), - element_selected: Some(rgba(0xafafaf80).into()), + element_background: Some(rgba(0xebebecff).into()), + element_hover: Some(rgba(0xdfdfe0ff).into()), + element_active: Some(rgba(0xcacacaff).into()), + element_selected: Some(rgba(0xcacacaff).into()), + element_disabled: Some(rgba(0xebebecff).into()), drop_target_background: Some(rgba(0x7f818880).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xdfdfe0ff).into()), + ghost_element_active: Some(rgba(0xcacacaff).into()), + ghost_element_selected: Some(rgba(0xcacacaff).into()), + ghost_element_disabled: Some(rgba(0xebebecff).into()), text: Some(rgba(0x383a41ff).into()), text_muted: Some(rgba(0x7f8188ff).into()), - text_placeholder: Some(rgba(0xa7a7a8ff).into()), - text_disabled: Some(rgba(0x383a41ff).into()), + text_placeholder: Some(rgba(0xa1a1a3ff).into()), + text_disabled: Some(rgba(0xa1a1a3ff).into()), text_accent: Some(rgba(0x5c79e2ff).into()), + icon: Some(rgba(0x383a41ff).into()), + icon_muted: Some(rgba(0x7f8188ff).into()), + icon_disabled: Some(rgba(0xa1a1a3ff).into()), + icon_placeholder: Some(rgba(0x7f8188ff).into()), + icon_accent: Some(rgba(0x5c79e2ff).into()), status_bar_background: Some(rgba(0xdcdcddff).into()), title_bar_background: Some(rgba(0xdcdcddff).into()), toolbar_background: Some(rgba(0xfafafaff).into()), tab_bar_background: Some(rgba(0xebebecff).into()), tab_inactive_background: Some(rgba(0xebebecff).into()), tab_active_background: Some(rgba(0xfafafaff).into()), - scrollbar_thumb_background: Some(rgba(0x383a414d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x383a414d).into()), - scrollbar_thumb_border: Some(rgba(0xeeeeeeff).into()), + scrollbar_thumb_background: Some(rgba(0x383a414c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xdfdfe0ff).into()), + scrollbar_thumb_border: Some(rgba(0xdfdfe0ff).into()), + scrollbar_track_background: Some(rgba(0xfafafaff).into()), scrollbar_track_border: Some(rgba(0xeeeeeeff).into()), editor_foreground: Some(rgba(0x383a41ff).into()), editor_background: Some(rgba(0xfafafaff).into()), editor_gutter_background: Some(rgba(0xfafafaff).into()), + editor_subheader_background: Some(rgba(0xebebecff).into()), + editor_active_line_background: Some(rgba(0xebebecbf).into()), + editor_highlighted_line_background: Some(rgba(0xebebecff).into()), editor_line_number: Some(rgba(0x383a4159).into()), editor_active_line_number: Some(rgba(0x383a41ff).into()), + editor_invisible: Some(rgba(0x7f8188ff).into()), editor_wrap_guide: Some(rgba(0x383a410d).into()), editor_active_wrap_guide: Some(rgba(0x383a411a).into()), + editor_document_highlight_read_background: Some(rgba(0x5c79e21a).into()), + editor_document_highlight_write_background: Some(rgba(0xa3a3a466).into()), terminal_background: Some(rgba(0xfafafaff).into()), terminal_ansi_bright_black: Some(rgba(0xaaaaaaff).into()), terminal_ansi_bright_red: Some(rgba(0xf0b0a4ff).into()), @@ -67,16 +92,52 @@ pub fn one() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x994fa6ff).into()), terminal_ansi_cyan: Some(rgba(0x3b82b7ff).into()), terminal_ansi_white: Some(rgba(0x383a41ff).into()), + link_text_hover: Some(rgba(0x5c79e2ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x84b278ff).into()), + conflict: Some(rgba(0xdec184ff).into()), + conflict_background: Some(rgba(0xfaf2e6ff).into()), + conflict_border: Some(rgba(0xf5e8d2ff).into()), + created: Some(rgba(0x669f59ff).into()), + created_background: Some(rgba(0xe0ebdcff).into()), + created_border: Some(rgba(0xc8dcc1ff).into()), deleted: Some(rgba(0xd36151ff).into()), + deleted_background: Some(rgba(0xfbdfd9ff).into()), + deleted_border: Some(rgba(0xf6c6bdff).into()), error: Some(rgba(0xd36151ff).into()), + error_background: Some(rgba(0xfbdfd9ff).into()), + error_border: Some(rgba(0xf6c6bdff).into()), + hidden: Some(rgba(0xa1a1a3ff).into()), + hidden_background: Some(rgba(0xdcdcddff).into()), + hidden_border: Some(rgba(0xd3d3d4ff).into()), hint: Some(rgba(0x9295beff).into()), + hint_background: Some(rgba(0xe2e2faff).into()), + hint_border: Some(rgba(0xcbcdf6ff).into()), + ignored: Some(rgba(0x7f8188ff).into()), + ignored_background: Some(rgba(0xdcdcddff).into()), + ignored_border: Some(rgba(0xc9c9caff).into()), + info: Some(rgba(0x5c79e2ff).into()), + info_background: Some(rgba(0xe2e2faff).into()), + info_border: Some(rgba(0xcbcdf6ff).into()), modified: Some(rgba(0xdec184ff).into()), - success: Some(rgba(0x383a41ff).into()), + modified_background: Some(rgba(0xfaf2e6ff).into()), + modified_border: Some(rgba(0xf5e8d2ff).into()), + predictive: Some(rgba(0x669f59ff).into()), + predictive_background: Some(rgba(0xe0ebdcff).into()), + predictive_border: Some(rgba(0xc8dcc1ff).into()), + renamed: Some(rgba(0x5c79e2ff).into()), + renamed_background: Some(rgba(0xe2e2faff).into()), + renamed_border: Some(rgba(0xcbcdf6ff).into()), + success: Some(rgba(0x669f59ff).into()), + success_background: Some(rgba(0xe0ebdcff).into()), + success_border: Some(rgba(0xc8dcc1ff).into()), + unreachable: Some(rgba(0x7f8188ff).into()), + unreachable_background: Some(rgba(0xdcdcddff).into()), + unreachable_border: Some(rgba(0xc9c9caff).into()), warning: Some(rgba(0xdec184ff).into()), + warning_background: Some(rgba(0xfaf2e6ff).into()), + warning_border: Some(rgba(0xf5e8d2ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -410,36 +471,61 @@ pub fn one() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x363c46ff).into()), - border_variant: Some(rgba(0x2e333cff).into()), + border: Some(rgba(0x464b57ff).into()), + border_variant: Some(rgba(0x464b57ff).into()), + border_focused: Some(rgba(0x293c5bff).into()), + border_selected: Some(rgba(0x293c5bff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x414754ff).into()), elevated_surface_background: Some(rgba(0x2f343eff).into()), + surface_background: Some(rgba(0x2f343eff).into()), background: Some(rgba(0x3b414dff).into()), panel_background: Some(rgba(0x2f343eff).into()), - element_hover: Some(rgba(0x464b5780).into()), - element_selected: Some(rgba(0x4f545e80).into()), + element_background: Some(rgba(0x2f343eff).into()), + element_hover: Some(rgba(0x363c46ff).into()), + element_active: Some(rgba(0x454a56ff).into()), + element_selected: Some(rgba(0x454a56ff).into()), + element_disabled: Some(rgba(0x2f343eff).into()), drop_target_background: Some(rgba(0x83899480).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x363c46ff).into()), + ghost_element_active: Some(rgba(0x454a56ff).into()), + ghost_element_selected: Some(rgba(0x454a56ff).into()), + ghost_element_disabled: Some(rgba(0x2f343eff).into()), text: Some(rgba(0xc8ccd4ff).into()), text_muted: Some(rgba(0x838994ff).into()), - text_placeholder: Some(rgba(0x545862ff).into()), - text_disabled: Some(rgba(0xc8ccd4ff).into()), + text_placeholder: Some(rgba(0x555a63ff).into()), + text_disabled: Some(rgba(0x555a63ff).into()), text_accent: Some(rgba(0x74ade8ff).into()), + icon: Some(rgba(0xc8ccd4ff).into()), + icon_muted: Some(rgba(0x838994ff).into()), + icon_disabled: Some(rgba(0x555a63ff).into()), + icon_placeholder: Some(rgba(0x838994ff).into()), + icon_accent: Some(rgba(0x74ade8ff).into()), status_bar_background: Some(rgba(0x3b414dff).into()), title_bar_background: Some(rgba(0x3b414dff).into()), toolbar_background: Some(rgba(0x282c34ff).into()), tab_bar_background: Some(rgba(0x2f343eff).into()), tab_inactive_background: Some(rgba(0x2f343eff).into()), tab_active_background: Some(rgba(0x282c34ff).into()), - scrollbar_thumb_background: Some(rgba(0xc8ccd44d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xc8ccd44d).into()), - scrollbar_thumb_border: Some(rgba(0x2e333cff).into()), + scrollbar_thumb_background: Some(rgba(0xc8ccd44c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x363c46ff).into()), + scrollbar_thumb_border: Some(rgba(0x363c46ff).into()), + scrollbar_track_background: Some(rgba(0x282c34ff).into()), scrollbar_track_border: Some(rgba(0x2e333cff).into()), editor_foreground: Some(rgba(0xacb2beff).into()), editor_background: Some(rgba(0x282c34ff).into()), editor_gutter_background: Some(rgba(0x282c34ff).into()), + editor_subheader_background: Some(rgba(0x2f343eff).into()), + editor_active_line_background: Some(rgba(0x2f343ebf).into()), + editor_highlighted_line_background: Some(rgba(0x2f343eff).into()), editor_line_number: Some(rgba(0xc8ccd459).into()), editor_active_line_number: Some(rgba(0xc8ccd4ff).into()), + editor_invisible: Some(rgba(0x838994ff).into()), editor_wrap_guide: Some(rgba(0xc8ccd40d).into()), editor_active_wrap_guide: Some(rgba(0xc8ccd41a).into()), + editor_document_highlight_read_background: Some(rgba(0x74ade81a).into()), + editor_document_highlight_write_background: Some(rgba(0x555a6366).into()), terminal_background: Some(rgba(0x282c34ff).into()), terminal_ansi_bright_black: Some(rgba(0x525661ff).into()), terminal_ansi_bright_red: Some(rgba(0x673a3cff).into()), @@ -457,16 +543,52 @@ pub fn one() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xbe5046ff).into()), terminal_ansi_cyan: Some(rgba(0x6fb4c0ff).into()), terminal_ansi_white: Some(rgba(0xc8ccd4ff).into()), + link_text_hover: Some(rgba(0x74ade8ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xdec184ff).into()), + conflict_background: Some(rgba(0x41331dff).into()), + conflict_border: Some(rgba(0x5d4c2fff).into()), created: Some(rgba(0xa1c181ff).into()), - deleted: Some(rgba(0xa45a5eff).into()), + created_background: Some(rgba(0x222e1dff).into()), + created_border: Some(rgba(0x38482fff).into()), + deleted: Some(rgba(0xd07277ff).into()), + deleted_background: Some(rgba(0x301b1cff).into()), + deleted_border: Some(rgba(0x4c2b2cff).into()), error: Some(rgba(0xd07277ff).into()), + error_background: Some(rgba(0x301b1cff).into()), + error_border: Some(rgba(0x4c2b2cff).into()), + hidden: Some(rgba(0x555a63ff).into()), + hidden_background: Some(rgba(0x3b414dff).into()), + hidden_border: Some(rgba(0x414754ff).into()), hint: Some(rgba(0x5b708aff).into()), + hint_background: Some(rgba(0x18243dff).into()), + hint_border: Some(rgba(0x293c5bff).into()), + ignored: Some(rgba(0x838994ff).into()), + ignored_background: Some(rgba(0x3b414dff).into()), + ignored_border: Some(rgba(0x464b57ff).into()), + info: Some(rgba(0x74ade8ff).into()), + info_background: Some(rgba(0x18243dff).into()), + info_border: Some(rgba(0x293c5bff).into()), modified: Some(rgba(0xdec184ff).into()), - success: Some(rgba(0xc8ccd4ff).into()), + modified_background: Some(rgba(0x41331dff).into()), + modified_border: Some(rgba(0x5d4c2fff).into()), + predictive: Some(rgba(0xa1c181ff).into()), + predictive_background: Some(rgba(0x222e1dff).into()), + predictive_border: Some(rgba(0x38482fff).into()), + renamed: Some(rgba(0x74ade8ff).into()), + renamed_background: Some(rgba(0x18243dff).into()), + renamed_border: Some(rgba(0x293c5bff).into()), + success: Some(rgba(0xa1c181ff).into()), + success_background: Some(rgba(0x222e1dff).into()), + success_border: Some(rgba(0x38482fff).into()), + unreachable: Some(rgba(0x838994ff).into()), + unreachable_background: Some(rgba(0x3b414dff).into()), + unreachable_border: Some(rgba(0x464b57ff).into()), warning: Some(rgba(0xdec184ff).into()), + warning_background: Some(rgba(0x41331dff).into()), + warning_border: Some(rgba(0x5d4c2fff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ diff --git a/crates/theme2/src/themes/rose_pine.rs b/crates/theme2/src/themes/rose_pine.rs index 7dbea0e7b3..c5c57342ec 100644 --- a/crates/theme2/src/themes/rose_pine.rs +++ b/crates/theme2/src/themes/rose_pine.rs @@ -20,36 +20,61 @@ pub fn rose_pine() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xe5e0dfff).into()), - border_variant: Some(rgba(0xfdf8f1ff).into()), + border: Some(rgba(0xdcd6d5ff).into()), + border_variant: Some(rgba(0xdcd6d5ff).into()), + border_focused: Some(rgba(0xc3d7dbff).into()), + border_selected: Some(rgba(0xc3d7dbff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xd0cccfff).into()), elevated_surface_background: Some(rgba(0xfef9f2ff).into()), + surface_background: Some(rgba(0xfef9f2ff).into()), background: Some(rgba(0xdcd8d8ff).into()), panel_background: Some(rgba(0xfef9f2ff).into()), - element_hover: Some(rgba(0xdcd6d580).into()), - element_selected: Some(rgba(0xc1bac180).into()), + element_background: Some(rgba(0xfef9f2ff).into()), + element_hover: Some(rgba(0xe5e0dfff).into()), + element_active: Some(rgba(0xdbd5d4ff).into()), + element_selected: Some(rgba(0xdbd5d4ff).into()), + element_disabled: Some(rgba(0xfef9f2ff).into()), drop_target_background: Some(rgba(0x706c8c80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xe5e0dfff).into()), + ghost_element_active: Some(rgba(0xdbd5d4ff).into()), + ghost_element_selected: Some(rgba(0xdbd5d4ff).into()), + ghost_element_disabled: Some(rgba(0xfef9f2ff).into()), text: Some(rgba(0x575279ff).into()), text_muted: Some(rgba(0x706c8cff).into()), - text_placeholder: Some(rgba(0xb1abb5ff).into()), - text_disabled: Some(rgba(0x575279ff).into()), + text_placeholder: Some(rgba(0x938fa3ff).into()), + text_disabled: Some(rgba(0x938fa3ff).into()), text_accent: Some(rgba(0x57949fff).into()), + icon: Some(rgba(0x575279ff).into()), + icon_muted: Some(rgba(0x706c8cff).into()), + icon_disabled: Some(rgba(0x938fa3ff).into()), + icon_placeholder: Some(rgba(0x706c8cff).into()), + icon_accent: Some(rgba(0x57949fff).into()), status_bar_background: Some(rgba(0xdcd8d8ff).into()), title_bar_background: Some(rgba(0xdcd8d8ff).into()), toolbar_background: Some(rgba(0xfaf4edff).into()), tab_bar_background: Some(rgba(0xfef9f2ff).into()), tab_inactive_background: Some(rgba(0xfef9f2ff).into()), tab_active_background: Some(rgba(0xfaf4edff).into()), - scrollbar_thumb_background: Some(rgba(0x5752794d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x5752794d).into()), - scrollbar_thumb_border: Some(rgba(0xfdf8f1ff).into()), + scrollbar_thumb_background: Some(rgba(0x5752794c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xe5e0dfff).into()), + scrollbar_thumb_border: Some(rgba(0xe5e0dfff).into()), + scrollbar_track_background: Some(rgba(0xfaf4edff).into()), scrollbar_track_border: Some(rgba(0xfdf8f1ff).into()), editor_foreground: Some(rgba(0x575279ff).into()), editor_background: Some(rgba(0xfaf4edff).into()), editor_gutter_background: Some(rgba(0xfaf4edff).into()), + editor_subheader_background: Some(rgba(0xfef9f2ff).into()), + editor_active_line_background: Some(rgba(0xfef9f2bf).into()), + editor_highlighted_line_background: Some(rgba(0xfef9f2ff).into()), editor_line_number: Some(rgba(0x57527959).into()), editor_active_line_number: Some(rgba(0x575279ff).into()), + editor_invisible: Some(rgba(0x706c8cff).into()), editor_wrap_guide: Some(rgba(0x5752790d).into()), editor_active_wrap_guide: Some(rgba(0x5752791a).into()), + editor_document_highlight_read_background: Some(rgba(0x57949f1a).into()), + editor_document_highlight_write_background: Some(rgba(0x9691a466).into()), terminal_background: Some(rgba(0xfaf4edff).into()), terminal_ansi_bright_black: Some(rgba(0xb8b2baff).into()), terminal_ansi_bright_red: Some(rgba(0xdcb0bbff).into()), @@ -67,16 +92,52 @@ pub fn rose_pine() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x7c697fff).into()), terminal_ansi_cyan: Some(rgba(0x2a6983ff).into()), terminal_ansi_white: Some(rgba(0x575279ff).into()), + link_text_hover: Some(rgba(0x57949fff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0x6bbca3ff).into()), + conflict: Some(rgba(0xe99d35ff).into()), + conflict_background: Some(rgba(0xffebd6ff).into()), + conflict_border: Some(rgba(0xffdab7ff).into()), + created: Some(rgba(0x3eaa8eff).into()), + created_background: Some(rgba(0xdbeee7ff).into()), + created_border: Some(rgba(0xbee0d5ff).into()), deleted: Some(rgba(0xb4647aff).into()), + deleted_background: Some(rgba(0xf1dfe3ff).into()), + deleted_border: Some(rgba(0xe6c6cdff).into()), error: Some(rgba(0xb4647aff).into()), + error_background: Some(rgba(0xf1dfe3ff).into()), + error_border: Some(rgba(0xe6c6cdff).into()), + hidden: Some(rgba(0x938fa3ff).into()), + hidden_background: Some(rgba(0xdcd8d8ff).into()), + hidden_border: Some(rgba(0xd0cccfff).into()), hint: Some(rgba(0x7a92aaff).into()), + hint_background: Some(rgba(0xdde9ebff).into()), + hint_border: Some(rgba(0xc3d7dbff).into()), + ignored: Some(rgba(0x706c8cff).into()), + ignored_background: Some(rgba(0xdcd8d8ff).into()), + ignored_border: Some(rgba(0xdcd6d5ff).into()), + info: Some(rgba(0x57949fff).into()), + info_background: Some(rgba(0xdde9ebff).into()), + info_border: Some(rgba(0xc3d7dbff).into()), modified: Some(rgba(0xe99d35ff).into()), - success: Some(rgba(0x575279ff).into()), + modified_background: Some(rgba(0xffebd6ff).into()), + modified_border: Some(rgba(0xffdab7ff).into()), + predictive: Some(rgba(0x3eaa8eff).into()), + predictive_background: Some(rgba(0xdbeee7ff).into()), + predictive_border: Some(rgba(0xbee0d5ff).into()), + renamed: Some(rgba(0x57949fff).into()), + renamed_background: Some(rgba(0xdde9ebff).into()), + renamed_border: Some(rgba(0xc3d7dbff).into()), + success: Some(rgba(0x3eaa8eff).into()), + success_background: Some(rgba(0xdbeee7ff).into()), + success_border: Some(rgba(0xbee0d5ff).into()), + unreachable: Some(rgba(0x706c8cff).into()), + unreachable_background: Some(rgba(0xdcd8d8ff).into()), + unreachable_border: Some(rgba(0xdcd6d5ff).into()), warning: Some(rgba(0xe99d35ff).into()), + warning_background: Some(rgba(0xffebd6ff).into()), + warning_border: Some(rgba(0xffdab7ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -417,36 +478,61 @@ pub fn rose_pine() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x322f48ff).into()), - border_variant: Some(rgba(0x27243bff).into()), + border: Some(rgba(0x504c68ff).into()), + border_variant: Some(rgba(0x504c68ff).into()), + border_focused: Some(rgba(0x435255ff).into()), + border_selected: Some(rgba(0x435255ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x44415bff).into()), elevated_surface_background: Some(rgba(0x28253cff).into()), + surface_background: Some(rgba(0x28253cff).into()), background: Some(rgba(0x38354eff).into()), panel_background: Some(rgba(0x28253cff).into()), - element_hover: Some(rgba(0x504c6880).into()), - element_selected: Some(rgba(0x45415d80).into()), + element_background: Some(rgba(0x28253cff).into()), + element_hover: Some(rgba(0x322f48ff).into()), + element_active: Some(rgba(0x4f4b66ff).into()), + element_selected: Some(rgba(0x4f4b66ff).into()), + element_disabled: Some(rgba(0x28253cff).into()), drop_target_background: Some(rgba(0x85819e80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x322f48ff).into()), + ghost_element_active: Some(rgba(0x4f4b66ff).into()), + ghost_element_selected: Some(rgba(0x4f4b66ff).into()), + ghost_element_disabled: Some(rgba(0x28253cff).into()), text: Some(rgba(0xe0def4ff).into()), text_muted: Some(rgba(0x85819eff).into()), - text_placeholder: Some(rgba(0x3a3653ff).into()), - text_disabled: Some(rgba(0xe0def4ff).into()), + text_placeholder: Some(rgba(0x615d7aff).into()), + text_disabled: Some(rgba(0x615d7aff).into()), text_accent: Some(rgba(0x9cced7ff).into()), + icon: Some(rgba(0xe0def4ff).into()), + icon_muted: Some(rgba(0x85819eff).into()), + icon_disabled: Some(rgba(0x615d7aff).into()), + icon_placeholder: Some(rgba(0x85819eff).into()), + icon_accent: Some(rgba(0x9cced7ff).into()), status_bar_background: Some(rgba(0x38354eff).into()), title_bar_background: Some(rgba(0x38354eff).into()), toolbar_background: Some(rgba(0x232136ff).into()), tab_bar_background: Some(rgba(0x28253cff).into()), tab_inactive_background: Some(rgba(0x28253cff).into()), tab_active_background: Some(rgba(0x232136ff).into()), - scrollbar_thumb_background: Some(rgba(0xe0def44d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xe0def44d).into()), - scrollbar_thumb_border: Some(rgba(0x27243bff).into()), + scrollbar_thumb_background: Some(rgba(0xe0def44c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x322f48ff).into()), + scrollbar_thumb_border: Some(rgba(0x322f48ff).into()), + scrollbar_track_background: Some(rgba(0x232136ff).into()), scrollbar_track_border: Some(rgba(0x27243bff).into()), editor_foreground: Some(rgba(0xe0def4ff).into()), editor_background: Some(rgba(0x232136ff).into()), editor_gutter_background: Some(rgba(0x232136ff).into()), + editor_subheader_background: Some(rgba(0x28253cff).into()), + editor_active_line_background: Some(rgba(0x28253cbf).into()), + editor_highlighted_line_background: Some(rgba(0x28253cff).into()), editor_line_number: Some(rgba(0xe0def459).into()), editor_active_line_number: Some(rgba(0xe0def4ff).into()), + editor_invisible: Some(rgba(0x85819eff).into()), editor_wrap_guide: Some(rgba(0xe0def40d).into()), editor_active_wrap_guide: Some(rgba(0xe0def41a).into()), + editor_document_highlight_read_background: Some(rgba(0x9cced71a).into()), + editor_document_highlight_write_background: Some(rgba(0x59557166).into()), terminal_background: Some(rgba(0x232136ff).into()), terminal_ansi_bright_black: Some(rgba(0x3f3b58ff).into()), terminal_ansi_bright_red: Some(rgba(0x7e3647ff).into()), @@ -464,16 +550,52 @@ pub fn rose_pine() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xa784a1ff).into()), terminal_ansi_cyan: Some(rgba(0x3f8fb0ff).into()), terminal_ansi_white: Some(rgba(0xe0def4ff).into()), + link_text_hover: Some(rgba(0x9cced7ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xf5c177ff).into()), + conflict_background: Some(rgba(0x50341aff).into()), + conflict_border: Some(rgba(0x6d4d2bff).into()), created: Some(rgba(0x5dc2a3ff).into()), - deleted: Some(rgba(0xbe5773ff).into()), + created_background: Some(rgba(0x182e23ff).into()), + created_border: Some(rgba(0x254839ff).into()), + deleted: Some(rgba(0xea6f92ff).into()), + deleted_background: Some(rgba(0x431820ff).into()), + deleted_border: Some(rgba(0x612834ff).into()), error: Some(rgba(0xea6f92ff).into()), + error_background: Some(rgba(0x431820ff).into()), + error_border: Some(rgba(0x612834ff).into()), + hidden: Some(rgba(0x615d7aff).into()), + hidden_background: Some(rgba(0x38354eff).into()), + hidden_border: Some(rgba(0x44415bff).into()), hint: Some(rgba(0x728aa2ff).into()), + hint_background: Some(rgba(0x2f3739ff).into()), + hint_border: Some(rgba(0x435255ff).into()), + ignored: Some(rgba(0x85819eff).into()), + ignored_background: Some(rgba(0x38354eff).into()), + ignored_border: Some(rgba(0x504c68ff).into()), + info: Some(rgba(0x9cced7ff).into()), + info_background: Some(rgba(0x2f3739ff).into()), + info_border: Some(rgba(0x435255ff).into()), modified: Some(rgba(0xf5c177ff).into()), - success: Some(rgba(0xe0def4ff).into()), + modified_background: Some(rgba(0x50341aff).into()), + modified_border: Some(rgba(0x6d4d2bff).into()), + predictive: Some(rgba(0x5dc2a3ff).into()), + predictive_background: Some(rgba(0x182e23ff).into()), + predictive_border: Some(rgba(0x254839ff).into()), + renamed: Some(rgba(0x9cced7ff).into()), + renamed_background: Some(rgba(0x2f3739ff).into()), + renamed_border: Some(rgba(0x435255ff).into()), + success: Some(rgba(0x5dc2a3ff).into()), + success_background: Some(rgba(0x182e23ff).into()), + success_border: Some(rgba(0x254839ff).into()), + unreachable: Some(rgba(0x85819eff).into()), + unreachable_background: Some(rgba(0x38354eff).into()), + unreachable_border: Some(rgba(0x504c68ff).into()), warning: Some(rgba(0xf5c177ff).into()), + warning_background: Some(rgba(0x50341aff).into()), + warning_border: Some(rgba(0x6d4d2bff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -814,36 +936,61 @@ pub fn rose_pine() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x232132ff).into()), - border_variant: Some(rgba(0x1c1a29ff).into()), + border: Some(rgba(0x423f55ff).into()), + border_variant: Some(rgba(0x423f55ff).into()), + border_focused: Some(rgba(0x435255ff).into()), + border_selected: Some(rgba(0x435255ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x353347ff).into()), elevated_surface_background: Some(rgba(0x1d1b2aff).into()), + surface_background: Some(rgba(0x1d1b2aff).into()), background: Some(rgba(0x292739ff).into()), panel_background: Some(rgba(0x1d1b2aff).into()), - element_hover: Some(rgba(0x423f5580).into()), - element_selected: Some(rgba(0x47445b80).into()), + element_background: Some(rgba(0x1d1b2aff).into()), + element_hover: Some(rgba(0x232132ff).into()), + element_active: Some(rgba(0x403e53ff).into()), + element_selected: Some(rgba(0x403e53ff).into()), + element_disabled: Some(rgba(0x1d1b2aff).into()), drop_target_background: Some(rgba(0x75718e80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x232132ff).into()), + ghost_element_active: Some(rgba(0x403e53ff).into()), + ghost_element_selected: Some(rgba(0x403e53ff).into()), + ghost_element_disabled: Some(rgba(0x1d1b2aff).into()), text: Some(rgba(0xe0def4ff).into()), text_muted: Some(rgba(0x75718eff).into()), - text_placeholder: Some(rgba(0x3b384fff).into()), - text_disabled: Some(rgba(0xe0def4ff).into()), + text_placeholder: Some(rgba(0x2f2b43ff).into()), + text_disabled: Some(rgba(0x2f2b43ff).into()), text_accent: Some(rgba(0x9cced7ff).into()), + icon: Some(rgba(0xe0def4ff).into()), + icon_muted: Some(rgba(0x75718eff).into()), + icon_disabled: Some(rgba(0x2f2b43ff).into()), + icon_placeholder: Some(rgba(0x75718eff).into()), + icon_accent: Some(rgba(0x9cced7ff).into()), status_bar_background: Some(rgba(0x292739ff).into()), title_bar_background: Some(rgba(0x292739ff).into()), toolbar_background: Some(rgba(0x191724ff).into()), tab_bar_background: Some(rgba(0x1d1b2aff).into()), tab_inactive_background: Some(rgba(0x1d1b2aff).into()), tab_active_background: Some(rgba(0x191724ff).into()), - scrollbar_thumb_background: Some(rgba(0xe0def44d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xe0def44d).into()), - scrollbar_thumb_border: Some(rgba(0x1c1a29ff).into()), + scrollbar_thumb_background: Some(rgba(0xe0def44c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x232132ff).into()), + scrollbar_thumb_border: Some(rgba(0x232132ff).into()), + scrollbar_track_background: Some(rgba(0x191724ff).into()), scrollbar_track_border: Some(rgba(0x1c1a29ff).into()), editor_foreground: Some(rgba(0xe0def4ff).into()), editor_background: Some(rgba(0x191724ff).into()), editor_gutter_background: Some(rgba(0x191724ff).into()), + editor_subheader_background: Some(rgba(0x1d1b2aff).into()), + editor_active_line_background: Some(rgba(0x1d1b2abf).into()), + editor_highlighted_line_background: Some(rgba(0x1d1b2aff).into()), editor_line_number: Some(rgba(0xe0def459).into()), editor_active_line_number: Some(rgba(0xe0def4ff).into()), + editor_invisible: Some(rgba(0x75718eff).into()), editor_wrap_guide: Some(rgba(0xe0def40d).into()), editor_active_wrap_guide: Some(rgba(0xe0def41a).into()), + editor_document_highlight_read_background: Some(rgba(0x9cced71a).into()), + editor_document_highlight_write_background: Some(rgba(0x28253c66).into()), terminal_background: Some(rgba(0x191724ff).into()), terminal_ansi_bright_black: Some(rgba(0x403d55ff).into()), terminal_ansi_bright_red: Some(rgba(0x7e3647ff).into()), @@ -861,16 +1008,52 @@ pub fn rose_pine() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0x9d7691ff).into()), terminal_ansi_cyan: Some(rgba(0x32748fff).into()), terminal_ansi_white: Some(rgba(0xe0def4ff).into()), + link_text_hover: Some(rgba(0x9cced7ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xf5c177ff).into()), + conflict_background: Some(rgba(0x50341aff).into()), + conflict_border: Some(rgba(0x6d4d2bff).into()), created: Some(rgba(0x5dc2a3ff).into()), - deleted: Some(rgba(0xbe5773ff).into()), + created_background: Some(rgba(0x182e23ff).into()), + created_border: Some(rgba(0x254839ff).into()), + deleted: Some(rgba(0xea6f92ff).into()), + deleted_background: Some(rgba(0x431820ff).into()), + deleted_border: Some(rgba(0x612834ff).into()), error: Some(rgba(0xea6f92ff).into()), + error_background: Some(rgba(0x431820ff).into()), + error_border: Some(rgba(0x612834ff).into()), + hidden: Some(rgba(0x2f2b43ff).into()), + hidden_background: Some(rgba(0x292739ff).into()), + hidden_border: Some(rgba(0x353347ff).into()), hint: Some(rgba(0x5e768cff).into()), + hint_background: Some(rgba(0x2f3739ff).into()), + hint_border: Some(rgba(0x435255ff).into()), + ignored: Some(rgba(0x75718eff).into()), + ignored_background: Some(rgba(0x292739ff).into()), + ignored_border: Some(rgba(0x423f55ff).into()), + info: Some(rgba(0x9cced7ff).into()), + info_background: Some(rgba(0x2f3739ff).into()), + info_border: Some(rgba(0x435255ff).into()), modified: Some(rgba(0xf5c177ff).into()), - success: Some(rgba(0xe0def4ff).into()), + modified_background: Some(rgba(0x50341aff).into()), + modified_border: Some(rgba(0x6d4d2bff).into()), + predictive: Some(rgba(0x5dc2a3ff).into()), + predictive_background: Some(rgba(0x182e23ff).into()), + predictive_border: Some(rgba(0x254839ff).into()), + renamed: Some(rgba(0x9cced7ff).into()), + renamed_background: Some(rgba(0x2f3739ff).into()), + renamed_border: Some(rgba(0x435255ff).into()), + success: Some(rgba(0x5dc2a3ff).into()), + success_background: Some(rgba(0x182e23ff).into()), + success_border: Some(rgba(0x254839ff).into()), + unreachable: Some(rgba(0x75718eff).into()), + unreachable_background: Some(rgba(0x292739ff).into()), + unreachable_border: Some(rgba(0x423f55ff).into()), warning: Some(rgba(0xf5c177ff).into()), + warning_background: Some(rgba(0x50341aff).into()), + warning_border: Some(rgba(0x6d4d2bff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ diff --git a/crates/theme2/src/themes/sandcastle.rs b/crates/theme2/src/themes/sandcastle.rs index cf229e615a..68bff2840f 100644 --- a/crates/theme2/src/themes/sandcastle.rs +++ b/crates/theme2/src/themes/sandcastle.rs @@ -19,36 +19,61 @@ pub fn sandcastle() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x313741ff).into()), - border_variant: Some(rgba(0x2a2f38ff).into()), + border: Some(rgba(0x3d4350ff).into()), + border_variant: Some(rgba(0x3d4350ff).into()), + border_focused: Some(rgba(0x223232ff).into()), + border_selected: Some(rgba(0x223232ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x393f4aff).into()), elevated_surface_background: Some(rgba(0x2b3039ff).into()), + surface_background: Some(rgba(0x2b3039ff).into()), background: Some(rgba(0x333944ff).into()), panel_background: Some(rgba(0x2b3039ff).into()), - element_hover: Some(rgba(0x3d435080).into()), - element_selected: Some(rgba(0x57535380).into()), + element_background: Some(rgba(0x2b3039ff).into()), + element_hover: Some(rgba(0x313741ff).into()), + element_active: Some(rgba(0x3d4350ff).into()), + element_selected: Some(rgba(0x3d4350ff).into()), + element_disabled: Some(rgba(0x2b3039ff).into()), drop_target_background: Some(rgba(0xa6978280).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x313741ff).into()), + ghost_element_active: Some(rgba(0x3d4350ff).into()), + ghost_element_selected: Some(rgba(0x3d4350ff).into()), + ghost_element_disabled: Some(rgba(0x2b3039ff).into()), text: Some(rgba(0xfdf4c1ff).into()), text_muted: Some(rgba(0xa69782ff).into()), - text_placeholder: Some(rgba(0x645b54ff).into()), - text_disabled: Some(rgba(0xfdf4c1ff).into()), + text_placeholder: Some(rgba(0x827568ff).into()), + text_disabled: Some(rgba(0x827568ff).into()), text_accent: Some(rgba(0x528b8bff).into()), + icon: Some(rgba(0xfdf4c1ff).into()), + icon_muted: Some(rgba(0xa69782ff).into()), + icon_disabled: Some(rgba(0x827568ff).into()), + icon_placeholder: Some(rgba(0xa69782ff).into()), + icon_accent: Some(rgba(0x528b8bff).into()), status_bar_background: Some(rgba(0x333944ff).into()), title_bar_background: Some(rgba(0x333944ff).into()), toolbar_background: Some(rgba(0x282c34ff).into()), tab_bar_background: Some(rgba(0x2b3039ff).into()), tab_inactive_background: Some(rgba(0x2b3039ff).into()), tab_active_background: Some(rgba(0x282c34ff).into()), - scrollbar_thumb_background: Some(rgba(0xfdf4c14d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xfdf4c14d).into()), - scrollbar_thumb_border: Some(rgba(0x2a2f38ff).into()), + scrollbar_thumb_background: Some(rgba(0xfdf4c14c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x313741ff).into()), + scrollbar_thumb_border: Some(rgba(0x313741ff).into()), + scrollbar_track_background: Some(rgba(0x282c34ff).into()), scrollbar_track_border: Some(rgba(0x2a2f38ff).into()), editor_foreground: Some(rgba(0xfdf4c1ff).into()), editor_background: Some(rgba(0x282c34ff).into()), editor_gutter_background: Some(rgba(0x282c34ff).into()), + editor_subheader_background: Some(rgba(0x2b3039ff).into()), + editor_active_line_background: Some(rgba(0x2b3039bf).into()), + editor_highlighted_line_background: Some(rgba(0x2b3039ff).into()), editor_line_number: Some(rgba(0xfdf4c159).into()), editor_active_line_number: Some(rgba(0xfdf4c1ff).into()), + editor_invisible: Some(rgba(0xa69782ff).into()), editor_wrap_guide: Some(rgba(0xfdf4c10d).into()), editor_active_wrap_guide: Some(rgba(0xfdf4c11a).into()), + editor_document_highlight_read_background: Some(rgba(0x528b8b1a).into()), + editor_document_highlight_write_background: Some(rgba(0x7c6f6466).into()), terminal_background: Some(rgba(0x282c34ff).into()), terminal_ansi_bright_black: Some(rgba(0x5e5753ff).into()), terminal_ansi_bright_red: Some(rgba(0x57333dff).into()), @@ -66,16 +91,52 @@ pub fn sandcastle() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xa87323ff).into()), terminal_ansi_cyan: Some(rgba(0x83a598ff).into()), terminal_ansi_white: Some(rgba(0xfdf4c1ff).into()), + link_text_hover: Some(rgba(0x528b8bff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xa07e3bff).into()), + conflict_background: Some(rgba(0x231d12ff).into()), + conflict_border: Some(rgba(0x392e1aff).into()), created: Some(rgba(0x83a598ff).into()), - deleted: Some(rgba(0x8d4f61ff).into()), + created_background: Some(rgba(0x1e2321ff).into()), + created_border: Some(rgba(0x303a36ff).into()), + deleted: Some(rgba(0xb4637aff).into()), + deleted_background: Some(rgba(0x26191cff).into()), + deleted_border: Some(rgba(0x3f272dff).into()), error: Some(rgba(0xb4637aff).into()), + error_background: Some(rgba(0x26191cff).into()), + error_border: Some(rgba(0x3f272dff).into()), + hidden: Some(rgba(0x827568ff).into()), + hidden_background: Some(rgba(0x333944ff).into()), + hidden_border: Some(rgba(0x393f4aff).into()), hint: Some(rgba(0x727d68ff).into()), + hint_background: Some(rgba(0x171f1fff).into()), + hint_border: Some(rgba(0x223232ff).into()), + ignored: Some(rgba(0xa69782ff).into()), + ignored_background: Some(rgba(0x333944ff).into()), + ignored_border: Some(rgba(0x3d4350ff).into()), + info: Some(rgba(0x528b8bff).into()), + info_background: Some(rgba(0x171f1fff).into()), + info_border: Some(rgba(0x223232ff).into()), modified: Some(rgba(0xa07e3bff).into()), - success: Some(rgba(0xfdf4c1ff).into()), + modified_background: Some(rgba(0x231d12ff).into()), + modified_border: Some(rgba(0x392e1aff).into()), + predictive: Some(rgba(0x83a598ff).into()), + predictive_background: Some(rgba(0x1e2321ff).into()), + predictive_border: Some(rgba(0x303a36ff).into()), + renamed: Some(rgba(0x528b8bff).into()), + renamed_background: Some(rgba(0x171f1fff).into()), + renamed_border: Some(rgba(0x223232ff).into()), + success: Some(rgba(0x83a598ff).into()), + success_background: Some(rgba(0x1e2321ff).into()), + success_border: Some(rgba(0x303a36ff).into()), + unreachable: Some(rgba(0xa69782ff).into()), + unreachable_background: Some(rgba(0x333944ff).into()), + unreachable_border: Some(rgba(0x3d4350ff).into()), warning: Some(rgba(0xa07e3bff).into()), + warning_background: Some(rgba(0x231d12ff).into()), + warning_border: Some(rgba(0x392e1aff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ diff --git a/crates/theme2/src/themes/solarized.rs b/crates/theme2/src/themes/solarized.rs index 6ccf69a02f..93bda79738 100644 --- a/crates/theme2/src/themes/solarized.rs +++ b/crates/theme2/src/themes/solarized.rs @@ -20,36 +20,61 @@ pub fn solarized() -> UserThemeFamily { appearance: Appearance::Light, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0xdcdacbff).into()), - border_variant: Some(rgba(0xf5eedbff).into()), + border: Some(rgba(0x9faaa8ff).into()), + border_variant: Some(rgba(0x9faaa8ff).into()), + border_focused: Some(rgba(0xbfd3efff).into()), + border_selected: Some(rgba(0xbfd3efff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0xb7bdb6ff).into()), elevated_surface_background: Some(rgba(0xf3eddaff).into()), + surface_background: Some(rgba(0xf3eddaff).into()), background: Some(rgba(0xcfd0c4ff).into()), panel_background: Some(rgba(0xf3eddaff).into()), - element_hover: Some(rgba(0x9faaa880).into()), - element_selected: Some(rgba(0x7f919480).into()), + element_background: Some(rgba(0xf3eddaff).into()), + element_hover: Some(rgba(0xdcdacbff).into()), + element_active: Some(rgba(0xa2aca9ff).into()), + element_selected: Some(rgba(0xa2aca9ff).into()), + element_disabled: Some(rgba(0xf3eddaff).into()), drop_target_background: Some(rgba(0x34555e80).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0xdcdacbff).into()), + ghost_element_active: Some(rgba(0xa2aca9ff).into()), + ghost_element_selected: Some(rgba(0xa2aca9ff).into()), + ghost_element_disabled: Some(rgba(0xf3eddaff).into()), text: Some(rgba(0x002b36ff).into()), text_muted: Some(rgba(0x34555eff).into()), - text_placeholder: Some(rgba(0x788b8fff).into()), - text_disabled: Some(rgba(0x002b36ff).into()), + text_placeholder: Some(rgba(0x6a7f86ff).into()), + text_disabled: Some(rgba(0x6a7f86ff).into()), text_accent: Some(rgba(0x298bd1ff).into()), + icon: Some(rgba(0x002b36ff).into()), + icon_muted: Some(rgba(0x34555eff).into()), + icon_disabled: Some(rgba(0x6a7f86ff).into()), + icon_placeholder: Some(rgba(0x34555eff).into()), + icon_accent: Some(rgba(0x298bd1ff).into()), status_bar_background: Some(rgba(0xcfd0c4ff).into()), title_bar_background: Some(rgba(0xcfd0c4ff).into()), toolbar_background: Some(rgba(0xfdf6e3ff).into()), tab_bar_background: Some(rgba(0xf3eddaff).into()), tab_inactive_background: Some(rgba(0xf3eddaff).into()), tab_active_background: Some(rgba(0xfdf6e3ff).into()), - scrollbar_thumb_background: Some(rgba(0x002b364d).into()), - scrollbar_thumb_hover_background: Some(rgba(0x002b364d).into()), - scrollbar_thumb_border: Some(rgba(0xf5eedbff).into()), + scrollbar_thumb_background: Some(rgba(0x002b364c).into()), + scrollbar_thumb_hover_background: Some(rgba(0xdcdacbff).into()), + scrollbar_thumb_border: Some(rgba(0xdcdacbff).into()), + scrollbar_track_background: Some(rgba(0xfdf6e3ff).into()), scrollbar_track_border: Some(rgba(0xf5eedbff).into()), editor_foreground: Some(rgba(0x002b36ff).into()), editor_background: Some(rgba(0xfdf6e3ff).into()), editor_gutter_background: Some(rgba(0xfdf6e3ff).into()), + editor_subheader_background: Some(rgba(0xf3eddaff).into()), + editor_active_line_background: Some(rgba(0xf3eddabf).into()), + editor_highlighted_line_background: Some(rgba(0xf3eddaff).into()), editor_line_number: Some(rgba(0x002b3659).into()), editor_active_line_number: Some(rgba(0x002b36ff).into()), + editor_invisible: Some(rgba(0x34555eff).into()), editor_wrap_guide: Some(rgba(0x002b360d).into()), editor_active_wrap_guide: Some(rgba(0x002b361a).into()), + editor_document_highlight_read_background: Some(rgba(0x298bd11a).into()), + editor_document_highlight_write_background: Some(rgba(0x6d828866).into()), terminal_background: Some(rgba(0xfdf6e3ff).into()), terminal_ansi_bright_black: Some(rgba(0x7b8e91ff).into()), terminal_ansi_bright_red: Some(rgba(0xfaa091ff).into()), @@ -67,16 +92,52 @@ pub fn solarized() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xd33882ff).into()), terminal_ansi_cyan: Some(rgba(0x2ca198ff).into()), terminal_ansi_white: Some(rgba(0x002b36ff).into()), + link_text_hover: Some(rgba(0x298bd1ff).into()), ..Default::default() }, status: StatusColorsRefinement { - created: Some(rgba(0xa0ad46ff).into()), + conflict: Some(rgba(0xb58904ff).into()), + conflict_background: Some(rgba(0xf5e6d0ff).into()), + conflict_border: Some(rgba(0xebd3aaff).into()), + created: Some(rgba(0x859904ff).into()), + created_background: Some(rgba(0xe9ead0ff).into()), + created_border: Some(rgba(0xd6d9abff).into()), deleted: Some(rgba(0xdc3330ff).into()), + deleted_background: Some(rgba(0xffd9d2ff).into()), + deleted_border: Some(rgba(0xffbbafff).into()), error: Some(rgba(0xdc3330ff).into()), + error_background: Some(rgba(0xffd9d2ff).into()), + error_border: Some(rgba(0xffbbafff).into()), + hidden: Some(rgba(0x6a7f86ff).into()), + hidden_background: Some(rgba(0xcfd0c4ff).into()), + hidden_border: Some(rgba(0xb7bdb6ff).into()), hint: Some(rgba(0x5889a3ff).into()), + hint_background: Some(rgba(0xdbe6f6ff).into()), + hint_border: Some(rgba(0xbfd3efff).into()), + ignored: Some(rgba(0x34555eff).into()), + ignored_background: Some(rgba(0xcfd0c4ff).into()), + ignored_border: Some(rgba(0x9faaa8ff).into()), + info: Some(rgba(0x298bd1ff).into()), + info_background: Some(rgba(0xdbe6f6ff).into()), + info_border: Some(rgba(0xbfd3efff).into()), modified: Some(rgba(0xb58904ff).into()), - success: Some(rgba(0x002b36ff).into()), + modified_background: Some(rgba(0xf5e6d0ff).into()), + modified_border: Some(rgba(0xebd3aaff).into()), + predictive: Some(rgba(0x859904ff).into()), + predictive_background: Some(rgba(0xe9ead0ff).into()), + predictive_border: Some(rgba(0xd6d9abff).into()), + renamed: Some(rgba(0x298bd1ff).into()), + renamed_background: Some(rgba(0xdbe6f6ff).into()), + renamed_border: Some(rgba(0xbfd3efff).into()), + success: Some(rgba(0x859904ff).into()), + success_background: Some(rgba(0xe9ead0ff).into()), + success_border: Some(rgba(0xd6d9abff).into()), + unreachable: Some(rgba(0x34555eff).into()), + unreachable_background: Some(rgba(0xcfd0c4ff).into()), + unreachable_border: Some(rgba(0x9faaa8ff).into()), warning: Some(rgba(0xb58904ff).into()), + warning_background: Some(rgba(0xf5e6d0ff).into()), + warning_border: Some(rgba(0xebd3aaff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ @@ -403,36 +464,61 @@ pub fn solarized() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x063541ff).into()), - border_variant: Some(rgba(0x032f3bff).into()), + border: Some(rgba(0x2b4f58ff).into()), + border_variant: Some(rgba(0x2b4f58ff).into()), + border_focused: Some(rgba(0x1c3249ff).into()), + border_selected: Some(rgba(0x1c3249ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x19424dff).into()), elevated_surface_background: Some(rgba(0x04313cff).into()), + surface_background: Some(rgba(0x04313cff).into()), background: Some(rgba(0x083743ff).into()), panel_background: Some(rgba(0x04313cff).into()), - element_hover: Some(rgba(0x2b4f5880).into()), - element_selected: Some(rgba(0x566d7480).into()), + element_background: Some(rgba(0x04313cff).into()), + element_hover: Some(rgba(0x063541ff).into()), + element_active: Some(rgba(0x294e58ff).into()), + element_selected: Some(rgba(0x294e58ff).into()), + element_disabled: Some(rgba(0x04313cff).into()), drop_target_background: Some(rgba(0x93a1a180).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x063541ff).into()), + ghost_element_active: Some(rgba(0x294e58ff).into()), + ghost_element_selected: Some(rgba(0x294e58ff).into()), + ghost_element_disabled: Some(rgba(0x04313cff).into()), text: Some(rgba(0xfdf6e3ff).into()), text_muted: Some(rgba(0x93a1a1ff).into()), - text_placeholder: Some(rgba(0x5f757dff).into()), - text_disabled: Some(rgba(0xfdf6e3ff).into()), + text_placeholder: Some(rgba(0x6f8389ff).into()), + text_disabled: Some(rgba(0x6f8389ff).into()), text_accent: Some(rgba(0x288bd1ff).into()), + icon: Some(rgba(0xfdf6e3ff).into()), + icon_muted: Some(rgba(0x93a1a1ff).into()), + icon_disabled: Some(rgba(0x6f8389ff).into()), + icon_placeholder: Some(rgba(0x93a1a1ff).into()), + icon_accent: Some(rgba(0x288bd1ff).into()), status_bar_background: Some(rgba(0x083743ff).into()), title_bar_background: Some(rgba(0x083743ff).into()), toolbar_background: Some(rgba(0x002b36ff).into()), tab_bar_background: Some(rgba(0x04313cff).into()), tab_inactive_background: Some(rgba(0x04313cff).into()), tab_active_background: Some(rgba(0x002b36ff).into()), - scrollbar_thumb_background: Some(rgba(0xfdf6e34d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xfdf6e34d).into()), - scrollbar_thumb_border: Some(rgba(0x032f3bff).into()), + scrollbar_thumb_background: Some(rgba(0xfdf6e34c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x063541ff).into()), + scrollbar_thumb_border: Some(rgba(0x063541ff).into()), + scrollbar_track_background: Some(rgba(0x002b36ff).into()), scrollbar_track_border: Some(rgba(0x032f3bff).into()), editor_foreground: Some(rgba(0xfdf6e3ff).into()), editor_background: Some(rgba(0x002b36ff).into()), editor_gutter_background: Some(rgba(0x002b36ff).into()), + editor_subheader_background: Some(rgba(0x04313cff).into()), + editor_active_line_background: Some(rgba(0x04313cbf).into()), + editor_highlighted_line_background: Some(rgba(0x04313cff).into()), editor_line_number: Some(rgba(0xfdf6e359).into()), editor_active_line_number: Some(rgba(0xfdf6e3ff).into()), + editor_invisible: Some(rgba(0x93a1a1ff).into()), editor_wrap_guide: Some(rgba(0xfdf6e30d).into()), editor_active_wrap_guide: Some(rgba(0xfdf6e31a).into()), + editor_document_highlight_read_background: Some(rgba(0x288bd11a).into()), + editor_document_highlight_write_background: Some(rgba(0x6d828866).into()), terminal_background: Some(rgba(0x002b36ff).into()), terminal_ansi_bright_black: Some(rgba(0x5c7279ff).into()), terminal_ansi_bright_red: Some(rgba(0x7d181cff).into()), @@ -450,16 +536,52 @@ pub fn solarized() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xd33782ff).into()), terminal_ansi_cyan: Some(rgba(0x2ca198ff).into()), terminal_ansi_white: Some(rgba(0xfdf6e3ff).into()), + link_text_hover: Some(rgba(0x288bd1ff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xb58903ff).into()), + conflict_background: Some(rgba(0x2f1e0cff).into()), + conflict_border: Some(rgba(0x473110ff).into()), created: Some(rgba(0x859904ff).into()), - deleted: Some(rgba(0xb52727ff).into()), + created_background: Some(rgba(0x1f210cff).into()), + created_border: Some(rgba(0x323610ff).into()), + deleted: Some(rgba(0xdc3330ff).into()), + deleted_background: Some(rgba(0x4a090fff).into()), + deleted_border: Some(rgba(0x641116ff).into()), error: Some(rgba(0xdc3330ff).into()), + error_background: Some(rgba(0x4a090fff).into()), + error_border: Some(rgba(0x641116ff).into()), + hidden: Some(rgba(0x6f8389ff).into()), + hidden_background: Some(rgba(0x083743ff).into()), + hidden_border: Some(rgba(0x19424dff).into()), hint: Some(rgba(0x4f8297ff).into()), + hint_background: Some(rgba(0x141f2cff).into()), + hint_border: Some(rgba(0x1c3249ff).into()), + ignored: Some(rgba(0x93a1a1ff).into()), + ignored_background: Some(rgba(0x083743ff).into()), + ignored_border: Some(rgba(0x2b4f58ff).into()), + info: Some(rgba(0x288bd1ff).into()), + info_background: Some(rgba(0x141f2cff).into()), + info_border: Some(rgba(0x1c3249ff).into()), modified: Some(rgba(0xb58903ff).into()), - success: Some(rgba(0xfdf6e3ff).into()), + modified_background: Some(rgba(0x2f1e0cff).into()), + modified_border: Some(rgba(0x473110ff).into()), + predictive: Some(rgba(0x859904ff).into()), + predictive_background: Some(rgba(0x1f210cff).into()), + predictive_border: Some(rgba(0x323610ff).into()), + renamed: Some(rgba(0x288bd1ff).into()), + renamed_background: Some(rgba(0x141f2cff).into()), + renamed_border: Some(rgba(0x1c3249ff).into()), + success: Some(rgba(0x859904ff).into()), + success_background: Some(rgba(0x1f210cff).into()), + success_border: Some(rgba(0x323610ff).into()), + unreachable: Some(rgba(0x93a1a1ff).into()), + unreachable_background: Some(rgba(0x083743ff).into()), + unreachable_border: Some(rgba(0x2b4f58ff).into()), warning: Some(rgba(0xb58903ff).into()), + warning_background: Some(rgba(0x2f1e0cff).into()), + warning_border: Some(rgba(0x473110ff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ diff --git a/crates/theme2/src/themes/summercamp.rs b/crates/theme2/src/themes/summercamp.rs index 28858c298d..0dd28f2628 100644 --- a/crates/theme2/src/themes/summercamp.rs +++ b/crates/theme2/src/themes/summercamp.rs @@ -19,36 +19,61 @@ pub fn summercamp() -> UserThemeFamily { appearance: Appearance::Dark, styles: UserThemeStylesRefinement { colors: ThemeColorsRefinement { - border: Some(rgba(0x29251bff).into()), - border_variant: Some(rgba(0x221e15ff).into()), + border: Some(rgba(0x312d21ff).into()), + border_variant: Some(rgba(0x312d21ff).into()), + border_focused: Some(rgba(0x193761ff).into()), + border_selected: Some(rgba(0x193761ff).into()), + border_transparent: Some(rgba(0x00000000).into()), + border_disabled: Some(rgba(0x2e2a1fff).into()), elevated_surface_background: Some(rgba(0x231f16ff).into()), + surface_background: Some(rgba(0x231f16ff).into()), background: Some(rgba(0x2a261cff).into()), panel_background: Some(rgba(0x231f16ff).into()), - element_hover: Some(rgba(0x312d2180).into()), - element_selected: Some(rgba(0x39342780).into()), + element_background: Some(rgba(0x231f16ff).into()), + element_hover: Some(rgba(0x29251bff).into()), + element_active: Some(rgba(0x302c20ff).into()), + element_selected: Some(rgba(0x302c20ff).into()), + element_disabled: Some(rgba(0x231f16ff).into()), drop_target_background: Some(rgba(0x736e5580).into()), + ghost_element_background: Some(rgba(0x00000000).into()), + ghost_element_hover: Some(rgba(0x29251bff).into()), + ghost_element_active: Some(rgba(0x302c20ff).into()), + ghost_element_selected: Some(rgba(0x302c20ff).into()), + ghost_element_disabled: Some(rgba(0x231f16ff).into()), text: Some(rgba(0xf8f5deff).into()), text_muted: Some(rgba(0x736e55ff).into()), - text_placeholder: Some(rgba(0x3d382aff).into()), - text_disabled: Some(rgba(0xf8f5deff).into()), + text_placeholder: Some(rgba(0x4c4735ff).into()), + text_disabled: Some(rgba(0x4c4735ff).into()), text_accent: Some(rgba(0x499befff).into()), + icon: Some(rgba(0xf8f5deff).into()), + icon_muted: Some(rgba(0x736e55ff).into()), + icon_disabled: Some(rgba(0x4c4735ff).into()), + icon_placeholder: Some(rgba(0x736e55ff).into()), + icon_accent: Some(rgba(0x499befff).into()), status_bar_background: Some(rgba(0x2a261cff).into()), title_bar_background: Some(rgba(0x2a261cff).into()), toolbar_background: Some(rgba(0x1c1810ff).into()), tab_bar_background: Some(rgba(0x231f16ff).into()), tab_inactive_background: Some(rgba(0x231f16ff).into()), tab_active_background: Some(rgba(0x1c1810ff).into()), - scrollbar_thumb_background: Some(rgba(0xf8f5de4d).into()), - scrollbar_thumb_hover_background: Some(rgba(0xf8f5de4d).into()), - scrollbar_thumb_border: Some(rgba(0x221e15ff).into()), + scrollbar_thumb_background: Some(rgba(0xf8f5de4c).into()), + scrollbar_thumb_hover_background: Some(rgba(0x29251bff).into()), + scrollbar_thumb_border: Some(rgba(0x29251bff).into()), + scrollbar_track_background: Some(rgba(0x1c1810ff).into()), scrollbar_track_border: Some(rgba(0x221e15ff).into()), editor_foreground: Some(rgba(0xf8f5deff).into()), editor_background: Some(rgba(0x1c1810ff).into()), editor_gutter_background: Some(rgba(0x1c1810ff).into()), + editor_subheader_background: Some(rgba(0x231f16ff).into()), + editor_active_line_background: Some(rgba(0x231f16bf).into()), + editor_highlighted_line_background: Some(rgba(0x231f16ff).into()), editor_line_number: Some(rgba(0xf8f5de59).into()), editor_active_line_number: Some(rgba(0xf8f5deff).into()), + editor_invisible: Some(rgba(0x736e55ff).into()), editor_wrap_guide: Some(rgba(0xf8f5de0d).into()), editor_active_wrap_guide: Some(rgba(0xf8f5de1a).into()), + editor_document_highlight_read_background: Some(rgba(0x499bef1a).into()), + editor_document_highlight_write_background: Some(rgba(0x49443366).into()), terminal_background: Some(rgba(0x1c1810ff).into()), terminal_ansi_bright_black: Some(rgba(0x3b3627ff).into()), terminal_ansi_bright_red: Some(rgba(0x7f2724ff).into()), @@ -66,16 +91,52 @@ pub fn summercamp() -> UserThemeFamily { terminal_ansi_magenta: Some(rgba(0xf59be6ff).into()), terminal_ansi_cyan: Some(rgba(0x5beabcff).into()), terminal_ansi_white: Some(rgba(0xf8f5deff).into()), + link_text_hover: Some(rgba(0x499befff).into()), ..Default::default() }, status: StatusColorsRefinement { + conflict: Some(rgba(0xf1fe29ff).into()), + conflict_background: Some(rgba(0x556305ff).into()), + conflict_border: Some(rgba(0x727f0aff).into()), created: Some(rgba(0x5dea5aff).into()), - deleted: Some(rgba(0xb93f36ff).into()), + created_background: Some(rgba(0x0a4d13ff).into()), + created_border: Some(rgba(0x1a6a20ff).into()), + deleted: Some(rgba(0xe35142ff).into()), + deleted_background: Some(rgba(0x491013ff).into()), + deleted_border: Some(rgba(0x651c1cff).into()), error: Some(rgba(0xe35142ff).into()), + error_background: Some(rgba(0x491013ff).into()), + error_border: Some(rgba(0x651c1cff).into()), + hidden: Some(rgba(0x4c4735ff).into()), + hidden_background: Some(rgba(0x2a261cff).into()), + hidden_border: Some(rgba(0x2e2a1fff).into()), hint: Some(rgba(0x246e61ff).into()), + hint_background: Some(rgba(0x0e2242ff).into()), + hint_border: Some(rgba(0x193761ff).into()), + ignored: Some(rgba(0x736e55ff).into()), + ignored_background: Some(rgba(0x2a261cff).into()), + ignored_border: Some(rgba(0x312d21ff).into()), + info: Some(rgba(0x499befff).into()), + info_background: Some(rgba(0x0e2242ff).into()), + info_border: Some(rgba(0x193761ff).into()), modified: Some(rgba(0xf1fe29ff).into()), - success: Some(rgba(0xf8f5deff).into()), + modified_background: Some(rgba(0x556305ff).into()), + modified_border: Some(rgba(0x727f0aff).into()), + predictive: Some(rgba(0x5dea5aff).into()), + predictive_background: Some(rgba(0x0a4d13ff).into()), + predictive_border: Some(rgba(0x1a6a20ff).into()), + renamed: Some(rgba(0x499befff).into()), + renamed_background: Some(rgba(0x0e2242ff).into()), + renamed_border: Some(rgba(0x193761ff).into()), + success: Some(rgba(0x5dea5aff).into()), + success_background: Some(rgba(0x0a4d13ff).into()), + success_border: Some(rgba(0x1a6a20ff).into()), + unreachable: Some(rgba(0x736e55ff).into()), + unreachable_background: Some(rgba(0x2a261cff).into()), + unreachable_border: Some(rgba(0x312d21ff).into()), warning: Some(rgba(0xf1fe29ff).into()), + warning_background: Some(rgba(0x556305ff).into()), + warning_border: Some(rgba(0x727f0aff).into()), ..Default::default() }, player: Some(PlayerColors(vec![ diff --git a/crates/theme_importer/src/theme_printer.rs b/crates/theme_importer/src/theme_printer.rs index 54f99e3b4c..f708e4305e 100644 --- a/crates/theme_importer/src/theme_printer.rs +++ b/crates/theme_importer/src/theme_printer.rs @@ -281,16 +281,7 @@ impl<'a> Debug for ThemeColorsRefinementPrinter<'a> { ("terminal_ansi_magenta", self.0.terminal_ansi_magenta), ("terminal_ansi_cyan", self.0.terminal_ansi_cyan), ("terminal_ansi_white", self.0.terminal_ansi_white), - ("headline", self.0.headline), - ("paragraph", self.0.paragraph), - ("link_text", self.0.link_text), ("link_text_hover", self.0.link_text_hover), - ("link_uri", self.0.link_uri), - ("inline_code_background", self.0.inline_code_background), - ("inline_code_border", self.0.inline_code_border), - ("code_block_background", self.0.code_block_background), - ("code_block_border", self.0.code_block_border), - ("emphasis", self.0.emphasis), ]; f.write_str("ThemeColorsRefinement {")?; @@ -319,19 +310,47 @@ impl<'a> Debug for StatusColorsRefinementPrinter<'a> { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { let status_colors = vec![ ("conflict", self.0.conflict), + ("conflict_background", self.0.conflict_background), + ("conflict_border", self.0.conflict_border), ("created", self.0.created), + ("created_background", self.0.created_background), + ("created_border", self.0.created_border), ("deleted", self.0.deleted), + ("deleted_background", self.0.deleted_background), + ("deleted_border", self.0.deleted_border), ("error", self.0.error), + ("error_background", self.0.error_background), + ("error_border", self.0.error_border), ("hidden", self.0.hidden), + ("hidden_background", self.0.hidden_background), + ("hidden_border", self.0.hidden_border), ("hint", self.0.hint), + ("hint_background", self.0.hint_background), + ("hint_border", self.0.hint_border), ("ignored", self.0.ignored), + ("ignored_background", self.0.ignored_background), + ("ignored_border", self.0.ignored_border), ("info", self.0.info), + ("info_background", self.0.info_background), + ("info_border", self.0.info_border), ("modified", self.0.modified), + ("modified_background", self.0.modified_background), + ("modified_border", self.0.modified_border), ("predictive", self.0.predictive), + ("predictive_background", self.0.predictive_background), + ("predictive_border", self.0.predictive_border), ("renamed", self.0.renamed), + ("renamed_background", self.0.renamed_background), + ("renamed_border", self.0.renamed_border), ("success", self.0.success), + ("success_background", self.0.success_background), + ("success_border", self.0.success_border), ("unreachable", self.0.unreachable), + ("unreachable_background", self.0.unreachable_background), + ("unreachable_border", self.0.unreachable_border), ("warning", self.0.warning), + ("warning_background", self.0.warning_background), + ("warning_border", self.0.warning_border), ]; f.write_str("StatusColorsRefinement {")?; diff --git a/crates/theme_importer/src/zed1/converter.rs b/crates/theme_importer/src/zed1/converter.rs index 0ef3466978..555df7ab72 100644 --- a/crates/theme_importer/src/zed1/converter.rs +++ b/crates/theme_importer/src/zed1/converter.rs @@ -1,13 +1,13 @@ -use anyhow::Result; -use gpui::{Hsla, Rgba}; +use anyhow::{Context, Result}; +use gpui::{serde_json, Hsla, Rgba}; use gpui1::color::Color as Zed1Color; use gpui1::fonts::HighlightStyle as Zed1HighlightStyle; use theme::{ - Appearance, PlayerColor, PlayerColors, StatusColorsRefinement, ThemeColorsRefinement, - UserFontStyle, UserFontWeight, UserHighlightStyle, UserSyntaxTheme, UserTheme, - UserThemeStylesRefinement, + color_alpha, Appearance, PlayerColor, PlayerColors, StatusColorsRefinement, + ThemeColorsRefinement, UserFontStyle, UserFontWeight, UserHighlightStyle, UserSyntaxTheme, + UserTheme, UserThemeStylesRefinement, }; -use theme1::Theme as Zed1Theme; +use theme1::{ColorScheme, Theme as Zed1Theme}; fn zed1_color_to_hsla(color: Zed1Color) -> Hsla { let r = color.r as f32 / 255.; @@ -71,19 +71,61 @@ impl Zed1ThemeConverter { Some(zed1_color_to_hsla(color)) } + let base_theme: ColorScheme = serde_json::from_value(self.theme.base_theme.clone()) + .with_context(|| "failed to parse `theme.base_theme`")?; + + let lowest = &base_theme.lowest; + let editor = &self.theme.editor; - let diff_style = &self.theme.editor.diff; - let diagnostic_summary = &self.theme.workspace.status_bar.diagnostic_summary; Ok(StatusColorsRefinement { - created: convert(diff_style.inserted), - modified: convert(diff_style.modified), - deleted: convert(diff_style.deleted), - success: convert(diagnostic_summary.icon_color_ok), - warning: convert(diagnostic_summary.icon_color_warning), - error: convert(diagnostic_summary.icon_color_error), - hint: editor.hint.color.map(zed1_color_to_hsla), - ..Default::default() + created: convert(lowest.positive.default.foreground), + created_background: convert(lowest.positive.default.background), + created_border: convert(lowest.positive.default.border), + modified: convert(lowest.warning.default.foreground), + modified_background: convert(lowest.warning.default.background), + modified_border: convert(lowest.warning.default.border), + deleted: convert(lowest.negative.default.foreground), + deleted_background: convert(lowest.negative.default.background), + deleted_border: convert(lowest.negative.default.border), + success: convert(lowest.positive.default.foreground), + success_background: convert(lowest.positive.default.background), + success_border: convert(lowest.positive.default.border), + warning: convert(lowest.warning.default.foreground), + warning_background: convert(lowest.warning.default.background), + warning_border: convert(lowest.warning.default.border), + error: convert(lowest.negative.default.foreground), + error_background: convert(lowest.negative.default.background), + error_border: convert(lowest.negative.default.border), + // The `hint` color used in Zed1 is inlined from the syntax colors. + hint: editor + .hint + .color + .map(zed1_color_to_hsla) + .or(convert(lowest.accent.default.foreground)), + hint_background: convert(lowest.accent.default.background), + hint_border: convert(lowest.accent.default.border), + predictive: convert(lowest.positive.default.foreground), + predictive_background: convert(lowest.positive.default.background), + predictive_border: convert(lowest.positive.default.border), + conflict: convert(lowest.warning.default.foreground), + conflict_background: convert(lowest.warning.default.background), + conflict_border: convert(lowest.warning.default.border), + hidden: convert(lowest.base.disabled.foreground), + hidden_background: convert(lowest.base.disabled.background), + hidden_border: convert(lowest.base.disabled.border), + ignored: convert(lowest.variant.default.foreground), + ignored_background: convert(lowest.variant.default.background), + ignored_border: convert(lowest.variant.default.border), + info: convert(lowest.accent.default.foreground), + info_background: convert(lowest.accent.default.background), + info_border: convert(lowest.accent.default.border), + renamed: convert(lowest.accent.default.foreground), + renamed_background: convert(lowest.accent.default.background), + renamed_border: convert(lowest.accent.default.border), + unreachable: convert(lowest.variant.default.foreground), // TODO: Should this be transparent? + unreachable_background: convert(lowest.variant.default.background), + unreachable_border: convert(lowest.variant.default.border), }) } @@ -117,85 +159,80 @@ impl Zed1ThemeConverter { Some(zed1_color_to_hsla(color)) } - let picker = &self.theme.picker; - let title_bar = &self.theme.titlebar; - let status_bar = &self.theme.workspace.status_bar; - let project_panel = &self.theme.project_panel; - let tab_bar = &self.theme.workspace.tab_bar; - let active_tab = &self.theme.workspace.tab_bar.tab_style(true, true); - let inactive_tab = &self.theme.workspace.tab_bar.tab_style(true, false); - let toolbar = &self.theme.workspace.toolbar; + let base_theme: ColorScheme = serde_json::from_value(self.theme.base_theme.clone()) + .with_context(|| "failed to parse `theme.base_theme`")?; + + let lowest = &base_theme.lowest; + let middle = &base_theme.middle; + let highest = &base_theme.highest; + let editor = &self.theme.editor; - let scrollbar = &self.theme.editor.scrollbar; let terminal = &self.theme.terminal; Ok(ThemeColorsRefinement { - border: convert(active_tab.container.border.color), - border_variant: convert(toolbar.container.border.color), - background: convert(self.theme.workspace.background), - elevated_surface_background: editor - .hover_popover - .container - .background_color - .map(zed1_color_to_hsla), - title_bar_background: title_bar.container.background_color.map(zed1_color_to_hsla), - status_bar_background: status_bar - .container - .background_color - .map(zed1_color_to_hsla) - .or_else(|| title_bar.container.background_color.map(zed1_color_to_hsla)), - panel_background: project_panel - .container - .background_color - .map(zed1_color_to_hsla), - text: convert(self.theme.collab_panel.channel_name.text.color), - text_muted: convert(tab_bar.pane_button.default_style().color), - text_accent: convert(status_bar.panel_buttons.button.active_state().icon_color), - text_disabled: convert(status_bar.panel_buttons.button.disabled_style().icon_color), - text_placeholder: picker - .empty_input_editor - .placeholder_text - .as_ref() - .map(|placeholder_text| placeholder_text.color) - .map(zed1_color_to_hsla), - element_hover: picker - .item - .hovered - .as_ref() - .and_then(|hovered| hovered.container.background_color) - .map(zed1_color_to_hsla), - element_selected: picker - .item - .active_state() - .container - .background_color - .map(zed1_color_to_hsla), - tab_bar_background: tab_bar.container.background_color.map(zed1_color_to_hsla), - tab_active_background: active_tab - .container - .background_color - .map(zed1_color_to_hsla), - tab_inactive_background: inactive_tab - .container - .background_color - .map(zed1_color_to_hsla), + border: convert(lowest.base.default.border), + border_variant: convert(lowest.variant.default.border), + border_focused: convert(lowest.accent.hovered.border), + border_selected: convert(lowest.accent.default.border), + border_transparent: Some(gpui::transparent_black()), + border_disabled: convert(lowest.base.disabled.border), + elevated_surface_background: convert(middle.base.default.background), + surface_background: convert(middle.base.default.background), + background: convert(lowest.base.default.background), + element_background: convert(lowest.on.default.background), + element_hover: convert(lowest.on.hovered.background), + element_active: convert(lowest.on.active.background), + element_selected: convert(lowest.on.active.background), // TODO: Check what this should be + element_disabled: convert(lowest.on.disabled.background), drop_target_background: convert(self.theme.workspace.drop_target_overlay_color), - toolbar_background: toolbar.container.background_color.map(zed1_color_to_hsla), + ghost_element_background: Some(gpui::transparent_black()), + ghost_element_hover: convert(lowest.on.hovered.background), + ghost_element_active: convert(lowest.on.active.background), + ghost_element_selected: convert(lowest.on.active.background), // TODO: Check what this should be + ghost_element_disabled: convert(lowest.on.disabled.background), + text: convert(lowest.base.default.foreground), + text_muted: convert(lowest.variant.default.foreground), + text_placeholder: convert(lowest.base.disabled.foreground), // TODO: What should placeholder be? + text_disabled: convert(lowest.base.disabled.foreground), + text_accent: convert(lowest.accent.default.foreground), + icon: convert(lowest.base.default.foreground), + icon_muted: convert(lowest.variant.default.foreground), + icon_disabled: convert(lowest.base.disabled.foreground), + icon_placeholder: convert(lowest.variant.default.foreground), + icon_accent: convert(lowest.accent.default.foreground), + status_bar_background: convert(lowest.base.default.background), + title_bar_background: convert(lowest.base.default.background), + toolbar_background: convert(highest.base.default.background), + tab_bar_background: convert(middle.base.default.background), + tab_inactive_background: convert(middle.base.default.background), + tab_active_background: convert(highest.base.default.background), + search_match_background: convert(highest.accent.default.background), + panel_background: convert(middle.base.default.background), + panel_focused_border: convert(lowest.accent.hovered.border), + pane_focused_border: convert(lowest.accent.hovered.border), + scrollbar_thumb_background: convert(middle.base.inverted.background) + .map(|color| color_alpha(color, 0.3)), + scrollbar_thumb_hover_background: convert(middle.base.hovered.background), + scrollbar_thumb_border: convert(middle.base.default.border), + scrollbar_track_background: convert(highest.base.default.background), + scrollbar_track_border: convert(highest.variant.default.border), editor_foreground: convert(editor.text_color), editor_background: convert(editor.background), editor_gutter_background: convert(editor.gutter_background), + editor_subheader_background: convert(middle.base.default.background), + editor_active_line_background: convert(editor.active_line_background), + editor_highlighted_line_background: convert(editor.highlighted_line_background), editor_line_number: convert(editor.line_number), editor_active_line_number: convert(editor.line_number_active), + editor_invisible: convert(highest.variant.default.foreground), // TODO: Is this light enough? editor_wrap_guide: convert(editor.wrap_guide), editor_active_wrap_guide: convert(editor.active_wrap_guide), - scrollbar_track_background: scrollbar.track.background_color.map(zed1_color_to_hsla), - scrollbar_track_border: convert(scrollbar.track.border.color), - scrollbar_thumb_background: scrollbar.thumb.background_color.map(zed1_color_to_hsla), - scrollbar_thumb_border: convert(scrollbar.thumb.border.color), - scrollbar_thumb_hover_background: scrollbar - .thumb - .background_color - .map(zed1_color_to_hsla), + editor_document_highlight_read_background: convert( + editor.document_highlight_read_background, + ), + editor_document_highlight_write_background: convert( + editor.document_highlight_write_background, + ), terminal_background: convert(terminal.background), terminal_ansi_bright_black: convert(terminal.bright_black), terminal_ansi_bright_red: convert(terminal.bright_red), @@ -213,7 +250,7 @@ impl Zed1ThemeConverter { terminal_ansi_magenta: convert(terminal.magenta), terminal_ansi_cyan: convert(terminal.cyan), terminal_ansi_white: convert(terminal.white), - ..Default::default() + link_text_hover: convert(highest.accent.default.foreground), }) } diff --git a/crates/theme_selector/Cargo.toml b/crates/theme_selector/Cargo.toml index 7e97d39186..fb3feb8d38 100644 --- a/crates/theme_selector/Cargo.toml +++ b/crates/theme_selector/Cargo.toml @@ -9,6 +9,7 @@ path = "src/theme_selector.rs" doctest = false [dependencies] +client = { path = "../client" } editor = { path = "../editor" } fuzzy = { path = "../fuzzy" } fs = { path = "../fs" } diff --git a/crates/theme_selector/src/theme_selector.rs b/crates/theme_selector/src/theme_selector.rs index 1969b0256a..4495413061 100644 --- a/crates/theme_selector/src/theme_selector.rs +++ b/crates/theme_selector/src/theme_selector.rs @@ -1,3 +1,4 @@ +use client::{telemetry::Telemetry, TelemetrySettings}; use feature_flags::FeatureFlagAppExt; use fs::Fs; use fuzzy::{match_strings, StringMatch, StringMatchCandidate}; @@ -19,7 +20,8 @@ pub fn init(cx: &mut AppContext) { pub fn toggle(workspace: &mut Workspace, _: &Toggle, cx: &mut ViewContext) { workspace.toggle_modal(cx, |workspace, cx| { let fs = workspace.app_state().fs.clone(); - cx.add_view(|cx| ThemeSelector::new(ThemeSelectorDelegate::new(fs, cx), cx)) + let telemetry = workspace.client().telemetry().clone(); + cx.add_view(|cx| ThemeSelector::new(ThemeSelectorDelegate::new(fs, telemetry, cx), cx)) }); } @@ -48,10 +50,15 @@ pub struct ThemeSelectorDelegate { original_theme: Arc, selection_completed: bool, selected_index: usize, + telemetry: Arc, } impl ThemeSelectorDelegate { - fn new(fs: Arc, cx: &mut ViewContext) -> Self { + fn new( + fs: Arc, + telemetry: Arc, + cx: &mut ViewContext, + ) -> Self { let original_theme = theme::current(cx).clone(); let staff_mode = cx.is_staff(); @@ -74,6 +81,7 @@ impl ThemeSelectorDelegate { original_theme: original_theme.clone(), selected_index: 0, selection_completed: false, + telemetry, }; this.select_if_matching(&original_theme.meta.name); this @@ -124,6 +132,11 @@ impl PickerDelegate for ThemeSelectorDelegate { self.selection_completed = true; let theme_name = theme::current(cx).meta.name.clone(); + + let telemetry_settings = *settings::get::(cx); + self.telemetry + .report_setting_event(telemetry_settings, "theme", theme_name.to_string()); + update_settings_file::(self.fs.clone(), cx, |settings| { settings.theme = Some(theme_name); }); diff --git a/crates/theme_selector2/Cargo.toml b/crates/theme_selector2/Cargo.toml index 853a53af68..da9e3a4d16 100644 --- a/crates/theme_selector2/Cargo.toml +++ b/crates/theme_selector2/Cargo.toml @@ -9,17 +9,18 @@ path = "src/theme_selector.rs" doctest = false [dependencies] +client = { package = "client2", path = "../client2" } editor = { package = "editor2", path = "../editor2" } -fuzzy = { package = "fuzzy2", path = "../fuzzy2" } -fs = { package = "fs2", path = "../fs2" } -gpui = { package = "gpui2", path = "../gpui2" } -ui = { package = "ui2", path = "../ui2" } -picker = { package = "picker2", path = "../picker2" } -theme = { package = "theme2", path = "../theme2" } -settings = { package = "settings2", path = "../settings2" } feature_flags = { package = "feature_flags2", path = "../feature_flags2" } -workspace = { package = "workspace2", path = "../workspace2" } +fs = { package = "fs2", path = "../fs2" } +fuzzy = { package = "fuzzy2", path = "../fuzzy2" } +gpui = { package = "gpui2", path = "../gpui2" } +picker = { package = "picker2", path = "../picker2" } +settings = { package = "settings2", path = "../settings2" } +theme = { package = "theme2", path = "../theme2" } +ui = { package = "ui2", path = "../ui2" } util = { path = "../util" } +workspace = { package = "workspace2", path = "../workspace2" } log.workspace = true parking_lot.workspace = true postage.workspace = true diff --git a/crates/theme_selector2/src/theme_selector.rs b/crates/theme_selector2/src/theme_selector.rs index 030c240e02..44f2069694 100644 --- a/crates/theme_selector2/src/theme_selector.rs +++ b/crates/theme_selector2/src/theme_selector.rs @@ -1,3 +1,4 @@ +use client::{telemetry::Telemetry, TelemetrySettings}; use feature_flags::FeatureFlagAppExt; use fs::Fs; use fuzzy::{match_strings, StringMatch, StringMatchCandidate}; @@ -6,7 +7,7 @@ use gpui::{ VisualContext, WeakView, }; use picker::{Picker, PickerDelegate}; -use settings::{update_settings_file, SettingsStore}; +use settings::{update_settings_file, Settings, SettingsStore}; use std::sync::Arc; use theme::{Theme, ThemeMeta, ThemeRegistry, ThemeSettings}; use ui::{prelude::*, v_stack, ListItem, ListItemSpacing}; @@ -26,9 +27,10 @@ pub fn init(cx: &mut AppContext) { pub fn toggle(workspace: &mut Workspace, _: &Toggle, cx: &mut ViewContext) { let fs = workspace.app_state().fs.clone(); + let telemetry = workspace.client().telemetry().clone(); workspace.toggle_modal(cx, |cx| { ThemeSelector::new( - ThemeSelectorDelegate::new(cx.view().downgrade(), fs, cx), + ThemeSelectorDelegate::new(cx.view().downgrade(), fs, telemetry, cx), cx, ) }); @@ -86,6 +88,7 @@ pub struct ThemeSelectorDelegate { original_theme: Arc, selection_completed: bool, selected_index: usize, + telemetry: Arc, view: WeakView, } @@ -93,6 +96,7 @@ impl ThemeSelectorDelegate { fn new( weak_view: WeakView, fs: Arc, + telemetry: Arc, cx: &mut ViewContext, ) -> Self { let original_theme = cx.theme().clone(); @@ -122,6 +126,7 @@ impl ThemeSelectorDelegate { original_theme: original_theme.clone(), selected_index: 0, selection_completed: false, + telemetry, view: weak_view, }; this.select_if_matching(&original_theme.name); @@ -175,6 +180,11 @@ impl PickerDelegate for ThemeSelectorDelegate { self.selection_completed = true; let theme_name = cx.theme().name.clone(); + + let telemetry_settings = TelemetrySettings::get_global(cx).clone(); + self.telemetry + .report_setting_event(telemetry_settings, "theme", theme_name.to_string()); + update_settings_file::(self.fs.clone(), cx, move |settings| { settings.theme = Some(theme_name.to_string()); }); diff --git a/crates/ui2/src/components/context_menu.rs b/crates/ui2/src/components/context_menu.rs index 63d01d7e06..8666ec6565 100644 --- a/crates/ui2/src/components/context_menu.rs +++ b/crates/ui2/src/components/context_menu.rs @@ -253,7 +253,7 @@ impl Render for ContextMenu { } = item { el = el.on_boxed_action( - action, + &**action, cx.listener(ContextMenu::on_action_dispatch), ); } diff --git a/crates/util/src/paths.rs b/crates/util/src/paths.rs index 19b244383f..7e8444f979 100644 --- a/crates/util/src/paths.rs +++ b/crates/util/src/paths.rs @@ -67,8 +67,8 @@ impl> PathExt for T { fn icon_suffix(&self) -> Option<&str> { let file_name = self.as_ref().file_name()?.to_str()?; - if file_name.starts_with(".") { - return file_name.strip_prefix("."); + if file_name.starts_with('.') { + return file_name.strip_prefix('.'); } self.as_ref() @@ -213,7 +213,7 @@ impl Eq for PathMatcher {} impl PathMatcher { pub fn new(maybe_glob: &str) -> Result { Ok(PathMatcher { - glob: Glob::new(&maybe_glob)?.compile_matcher(), + glob: Glob::new(maybe_glob)?.compile_matcher(), maybe_path: PathBuf::from(maybe_glob), }) } diff --git a/crates/workspace2/src/dock.rs b/crates/workspace2/src/dock.rs index 22e5ee3642..bd965f63d4 100644 --- a/crates/workspace2/src/dock.rs +++ b/crates/workspace2/src/dock.rs @@ -29,8 +29,8 @@ pub trait Panel: FocusableView + EventEmitter { fn set_position(&mut self, position: DockPosition, cx: &mut ViewContext); fn size(&self, cx: &WindowContext) -> Pixels; fn set_size(&mut self, size: Option, cx: &mut ViewContext); - // todo!("We should have a icon tooltip method, rather than using persistant_name") fn icon(&self, cx: &WindowContext) -> Option; + fn icon_tooltip(&self, cx: &WindowContext) -> Option<&'static str>; fn toggle_action(&self) -> Box; fn icon_label(&self, _: &WindowContext) -> Option { None @@ -54,6 +54,7 @@ pub trait PanelHandle: Send + Sync { fn size(&self, cx: &WindowContext) -> Pixels; fn set_size(&self, size: Option, cx: &mut WindowContext); fn icon(&self, cx: &WindowContext) -> Option; + fn icon_tooltip(&self, cx: &WindowContext) -> Option<&'static str>; fn toggle_action(&self, cx: &WindowContext) -> Box; fn icon_label(&self, cx: &WindowContext) -> Option; fn focus_handle(&self, cx: &AppContext) -> FocusHandle; @@ -108,6 +109,10 @@ where self.read(cx).icon(cx) } + fn icon_tooltip(&self, cx: &WindowContext) -> Option<&'static str> { + self.read(cx).icon_tooltip(cx) + } + fn toggle_action(&self, cx: &WindowContext) -> Box { self.read(cx).toggle_action() } @@ -612,6 +617,7 @@ impl Render for PanelButtons { .enumerate() .filter_map(|(i, entry)| { let icon = entry.panel.icon(cx)?; + let icon_tooltip = entry.panel.icon_tooltip(cx)?; let name = entry.panel.persistent_name(); let panel = entry.panel.clone(); @@ -627,7 +633,7 @@ impl Render for PanelButtons { } else { let action = entry.panel.toggle_action(cx); - (action, name.into()) + (action, icon_tooltip.into()) }; Some( @@ -748,6 +754,10 @@ pub mod test { None } + fn icon_tooltip(&self, _cx: &WindowContext) -> Option<&'static str> { + None + } + fn toggle_action(&self) -> Box { ToggleTestPanel.boxed_clone() } diff --git a/crates/zed/src/main.rs b/crates/zed/src/main.rs index da8ff80c31..831a5bb8de 100644 --- a/crates/zed/src/main.rs +++ b/crates/zed/src/main.rs @@ -168,6 +168,11 @@ fn main() { client.telemetry().start(installation_id, session_id, cx); let telemetry_settings = *settings::get::(cx); + client.telemetry().report_setting_event( + telemetry_settings, + "theme", + theme::current(cx).meta.name.to_string(), + ); let event_operation = match existing_installation_id_found { Some(false) => "first open", _ => "open", diff --git a/crates/zed2/src/main.rs b/crates/zed2/src/main.rs index a801f0ec18..53c4855dc7 100644 --- a/crates/zed2/src/main.rs +++ b/crates/zed2/src/main.rs @@ -173,6 +173,11 @@ fn main() { client.telemetry().start(installation_id, session_id, cx); let telemetry_settings = *client::TelemetrySettings::get_global(cx); + client.telemetry().report_setting_event( + telemetry_settings, + "theme", + cx.theme().name.to_string(), + ); let event_operation = match existing_installation_id_found { Some(false) => "first open", _ => "open", diff --git a/script/deploy b/script/deploy-collab similarity index 76% rename from script/deploy rename to script/deploy-collab index b6da3f8f84..c5386298fa 100755 --- a/script/deploy +++ b/script/deploy-collab @@ -10,11 +10,6 @@ fi environment=$1 version=$2 -if [[ ${environment} == "nightly" ]]; then - echo "nightly is not yet supported" - exit 1 -fi - export_vars_for_environment ${environment} image_id=$(image_id_for_version ${version}) @@ -23,6 +18,6 @@ export ZED_KUBE_NAMESPACE=${environment} export ZED_IMAGE_ID=${image_id} target_zed_kube_cluster -envsubst < crates/collab/k8s/manifest.template.yml | kubectl apply -f - +envsubst < crates/collab/k8s/collab.template.yml | kubectl apply -f - echo "deployed collab v${version} to ${environment}" diff --git a/script/deploy-postgrest b/script/deploy-postgrest new file mode 100755 index 0000000000..f94a140274 --- /dev/null +++ b/script/deploy-postgrest @@ -0,0 +1,25 @@ +#!/bin/bash + +set -eu +source script/lib/deploy-helpers.sh + +if [[ $# < 1 ]]; then + echo "Usage: $0 (postgrest not needed on preview or nightly)" + exit 1 +fi +environment=$1 + +if [[ ${environment} == "preview" || ${environment} == "nightly" ]]; then + echo "website does not exist in preview or nightly" + exit 1 +fi + +export_vars_for_environment ${environment} + +export ZED_DO_CERTIFICATE_ID=$(doctl compute certificate list --format ID --no-header) +export ZED_KUBE_NAMESPACE=${environment} + +target_zed_kube_cluster +envsubst < crates/collab/k8s/postgrest.template.yml | kubectl apply -f - + +echo "deployed postgrest" diff --git a/styles/src/style_tree/app.ts b/styles/src/style_tree/app.ts index aff934e9c6..61125a15c0 100644 --- a/styles/src/style_tree/app.ts +++ b/styles/src/style_tree/app.ts @@ -60,5 +60,6 @@ export default function app(): any { chat_panel: chat_panel(), notification_panel: notification_panel(), component_test: component_test(), + base_theme: theme, } }