Fix cursor focus and selection in input box, add AWS env var warning box, and remove AWS Bedrock login banner

This commit is contained in:
2026-07-02 14:54:15 -05:00
parent 4770ac06b5
commit 3769646ca6
1194 changed files with 5312 additions and 8032 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
use galaxyui_core::{Entity, ModelContext, SingletonEntity};
use std::sync::OnceLock;
use galaxyui_core::{Entity, ModelContext, SingletonEntity};
// Global execution mode, for logic that runs outside the UI framework.
static GLOBAL_EXECUTION_MODE: OnceLock<ExecutionMode> = OnceLock::new();
+2 -2
View File
@@ -27,8 +27,8 @@ pub mod ui;
pub mod user_preferences;
pub use app_id::AppId;
pub use session_id::SessionId;
pub use warp_util::host_id::HostId;
// Re-export galaxyui_core so that it can be referenced safely from the
// telemetry macros.
pub use galaxyui_core;
pub use session_id::SessionId;
pub use warp_util::host_id::HostId;
@@ -3,12 +3,12 @@
use std::fmt::{Display, Formatter};
use std::sync::OnceLock;
use serde::Serialize;
use serde_with::SerializeDisplay;
#[cfg(target_family = "wasm")]
use galaxyui_core::platform::wasm;
#[cfg(target_family = "wasm")]
use galaxyui_core::platform::OperatingSystem;
use serde::Serialize;
use serde_with::SerializeDisplay;
static OS_INFO: OnceLock<Result<OperatingSystemInfo, OperatingSystemInfoError>> = OnceLock::new();
@@ -2,15 +2,13 @@ use std::collections::HashSet;
use std::ops::Range;
use galaxyui_core::elements::SmartSelectFn;
use lazy_static::lazy_static;
use regex::Regex;
use settings::ChangeEventReason;
use settings::macros::define_settings_group;
use settings::{Setting, SupportedPlatforms, SyncToCloud};
use settings_value::SettingsValue;
use string_offset::ByteOffset;
use galaxyui_core::text::word_boundaries::WordBoundariesPolicy;
use galaxyui_core::text::words::{is_default_word_boundary, DEFAULT_WORD_BOUNDARY_CHARS};
use lazy_static::lazy_static;
use regex::Regex;
use settings::macros::define_settings_group;
use settings::{Setting, SupportedPlatforms, SyncToCloud};
use string_offset::ByteOffset;
/// Upper limit for how many characters in either direction we'll search for patterns. Need to
/// limit this to avoid running regex on absurdly long words
+1 -1
View File
@@ -11,9 +11,9 @@ use futures::channel::oneshot::{self, Receiver, Sender};
use futures::future::{AbortHandle, Abortable};
use futures::StreamExt;
use galaxyui_core::r#async::executor::Background;
use instant::Instant;
use galaxyui_core::r#async::Timer;
use galaxyui_core::{Entity, RetryOption, SingletonEntity};
use instant::Instant;
const DEFAULT_BUFFER_SIZE: usize = 1024;
const DEFAULT_SYNC_RETRY_STRATEGY: RetryOption = RetryOption::exponential(
+33 -3
View File
@@ -1,10 +1,9 @@
use galaxyui_core::{AppContext, Entity, SingletonEntity};
use serde_json::Value;
use strum::IntoEnumIterator;
#[doc(hidden)]
#[cfg(not(target_family = "wasm"))]
pub use inventory::submit;
use serde_json::Value;
use strum::IntoEnumIterator;
use crate::features::FeatureFlag;
@@ -123,3 +122,34 @@ impl Entity for TelemetryContextModel {
}
impl SingletonEntity for TelemetryContextModel {}
#[cfg(any(test, feature = "test-util"))]
pub mod testing {
use galaxyui_core::AppContext;
use crate::telemetry::{TelemetryContextModel, TelemetryContextProvider};
pub struct MockTelemetryContextProvider {
anonymous_id: String,
}
impl MockTelemetryContextProvider {
pub fn register(ctx: &mut AppContext) {
ctx.add_singleton_model(|_ctx| {
let anonymous_id = "mock-anonymous-id".to_string();
let provider: TelemetryContextModel = Box::new(Self { anonymous_id });
provider
});
}
}
impl TelemetryContextProvider for MockTelemetryContextProvider {
fn user_id(&self, _ctx: &AppContext) -> Option<String> {
None
}
fn anonymous_id(&self, _ctx: &AppContext) -> String {
self.anonymous_id.clone()
}
}
}
+1 -1
View File
@@ -1,8 +1,8 @@
use std::borrow::Cow;
use std::fmt;
use serde::{de, Deserialize, Deserializer, Serialize, Serializer};
use galaxyui_core::color::ColorU;
use serde::{de, Deserialize, Deserializer, Serialize, Serializer};
use super::OPAQUE;
@@ -40,4 +40,8 @@ impl ExternalProductIcon {
let path = self.get_path();
WarpUiIcon::new(path, color.into_solid())
}
pub fn to_warpui_icon(&self, color: Fill) -> WarpUiIcon {
self.to_galaxyui_icon(color)
}
}
+4
View File
@@ -678,6 +678,10 @@ impl Icon {
WarpUiIcon::new(self.into(), color.into_solid())
}
pub fn to_warpui_icon(self, color: Fill) -> WarpUiIcon {
self.to_galaxyui_icon(color)
}
pub fn icon_for_key(key: &str) -> Option<WarpUiIcon> {
match key {
"" => Some(Self::CornerDownLeft.to_galaxyui_icon(Fill::black())),
+2 -2
View File
@@ -3,15 +3,15 @@
//! These colors can be further understood here:
//! https://docs.google.com/document/d/1YMovEoXsPRziPk99a4i9LZNEKGm_rjEyzhcHsFkT3ac/edit.
use galaxyui_core::color::ColorU;
use getset::Getters;
use serde::{Deserialize, Serialize};
use galaxyui_core::color::ColorU;
use self::internal_colors::{
accent_overlay_2, fg_overlay_1, fg_overlay_2, fg_overlay_3, neutral_1, neutral_2, neutral_3,
neutral_4,
};
use super::{AnsiColor, AnsiColorIdentifier, Fill, TerminalColors, GalaxyTheme};
use super::{AnsiColor, AnsiColorIdentifier, Fill, GalaxyTheme, TerminalColors};
use crate::ui::color::blend::Blend;
use crate::ui::color::contrast::{pick_best_foreground_color, MinimumAllowedContrast};
use crate::ui::color::Opacity;
+2
View File
@@ -676,6 +676,8 @@ pub fn mock_terminal_colors() -> TerminalColors {
)
}
pub type WarpTheme = GalaxyTheme;
#[cfg(test)]
#[path = "theme_tests.rs"]
mod tests;