Rebrand to Galaxy, major improvements to Bedrock support, still needs some TLC though

This commit is contained in:
Ryan Ward
2026-05-07 11:29:34 -05:00
parent f4e2475c60
commit a41cbd8cc7
2433 changed files with 14208 additions and 9409 deletions
@@ -4,7 +4,7 @@ use crate::context_chips::{
prompt_type::PromptType,
ChipResult,
};
use warpui::{ModelHandle, ViewContext, ViewHandle};
use galaxyui::{ModelHandle, ViewContext, ViewHandle};
use super::{AgentInputFooter, AgentInputFooterEvent};
@@ -3,9 +3,9 @@
//! Uses the shared [`ChipConfigurator`] with `LeftRightZones` layout to let users
//! drag/drop chips between left, right, and unused banks.
use warpui::keymap::FixedBinding;
use galaxyui::keymap::FixedBinding;
use warpui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext};
use galaxyui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext};
use crate::chip_configurator::{
render_chip_editor_modal, render_chip_editor_sections, ChipConfigurator,
@@ -225,7 +225,7 @@ impl View for AgentToolbarInlineEditor {
}
pub fn init(app: &mut AppContext) {
use warpui::keymap::macros::*;
use galaxyui::keymap::macros::*;
app.register_fixed_bindings([FixedBinding::new(
"escape",
@@ -1,10 +1,10 @@
use pathfinder_color::ColorU;
use pathfinder_geometry::vector::vec2f;
use settings::Setting;
use warp_core::send_telemetry_from_ctx;
use warp_core::ui::color::blend::Blend;
use warp_core::ui::theme::Fill;
use warpui::{
use galaxy_core::send_telemetry_from_ctx;
use galaxy_core::ui::color::blend::Blend;
use galaxy_core::ui::theme::Fill;
use galaxyui::{
elements::{
ChildAnchor, ChildView, ConstrainedBox, OffsetPositioning, ParentAnchor, ParentElement,
ParentOffsetBounds, Stack,
@@ -87,7 +87,7 @@ impl GenericMenuItem for EnvironmentMenuItem {
let theme = Appearance::as_ref(app).theme();
let color = theme.main_text_color(theme.surface_2()).into_solid();
Some(
ConstrainedBox::new(Icon::Check.to_warpui_icon(Fill::Solid(color)).finish())
ConstrainedBox::new(Icon::Check.to_galaxyui_icon(Fill::Solid(color)).finish())
.with_width(ENV_MENU_CHECK_ICON_SIZE)
.with_height(ENV_MENU_CHECK_ICON_SIZE)
.finish(),
@@ -56,7 +56,7 @@ use crate::{
workspaces::user_workspaces::UserWorkspaces,
};
use toolbar_item::AgentToolbarItemKind;
use warp_cli::agent::Harness;
use galaxy_cli::agent::Harness;
use std::sync::Arc;
@@ -83,7 +83,7 @@ use tokio::fs;
#[cfg(feature = "voice_input")]
use voice_input::{StartListeningError, VoiceSessionResult};
use warp_core::{
use galaxy_core::{
context_flag::ContextFlag,
report_if_error,
ui::{
@@ -92,8 +92,8 @@ use warp_core::{
},
};
#[cfg(feature = "voice_input")]
use warpui::r#async::SpawnedFutureHandle;
use warpui::{
use galaxyui::r#async::SpawnedFutureHandle;
use galaxyui::{
elements::{
Border, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CornerRadius,
CrossAxisAlignment, DispatchEventResult, Element, EventHandler, Expanded, Flex,
@@ -106,7 +106,7 @@ use warpui::{
};
#[cfg(not(target_family = "wasm"))]
use warpui::r#async::Timer;
use galaxyui::r#async::Timer;
pub(crate) use self::environment_selector::{EnvironmentSelector, EnvironmentSelectorEvent};
#[cfg(not(target_family = "wasm"))]
@@ -874,7 +874,7 @@ impl AgentInputFooter {
fn select_cli_file(&mut self, ctx: &mut ViewContext<Self>) {
let window_id = ctx.window_id();
let view_id = ctx.view_id();
let file_picker_config = warpui::platform::FilePickerConfiguration::new();
let file_picker_config = galaxyui::platform::FilePickerConfiguration::new();
ctx.open_file_picker(
move |result, ctx| match result {
@@ -1364,7 +1364,7 @@ impl AgentInputFooter {
.unwrap_or_else(|| appearance.theme().foreground().into_solid());
left_buttons.add_child(
Container::new(
ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(icon_color)).finish())
ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(icon_color)).finish())
.with_width(cli_icon_size)
.with_height(cli_icon_size)
.finish(),
@@ -1571,8 +1571,8 @@ impl AgentInputFooter {
// For key-based toggling, validate the key state against current voice state.
if let voice_input::VoiceInputToggledFrom::Key { state } = source {
match (&self.cli_voice_input_state, state) {
(CLIVoiceInputState::Stopped, warpui::event::KeyState::Released) => return,
(CLIVoiceInputState::Listening, warpui::event::KeyState::Pressed) => return,
(CLIVoiceInputState::Stopped, galaxyui::event::KeyState::Released) => return,
(CLIVoiceInputState::Listening, galaxyui::event::KeyState::Pressed) => return,
_ => {}
}
}
@@ -1936,7 +1936,7 @@ impl View for AgentInputFooter {
"AgentViewFooter"
}
fn render(&self, app: &warpui::AppContext) -> Box<dyn warpui::Element> {
fn render(&self, app: &galaxyui::AppContext) -> Box<dyn galaxyui::Element> {
if self.should_render_cloud_mode_v2(app) {
return self.render_cloud_mode_v2_footer(app);
}
@@ -2098,7 +2098,7 @@ fn render_ftu_callout(
.with_child(
ConstrainedBox::new(
Icon::CalloutTriangleBorderDown
.to_warpui_icon(Fill::Solid(theme.accent().into_solid()))
.to_galaxyui_icon(Fill::Solid(theme.accent().into_solid()))
.finish(),
)
.with_width(24.)
@@ -2108,7 +2108,7 @@ fn render_ftu_callout(
.with_child(
ConstrainedBox::new(
Icon::CalloutTriangleFillDown
.to_warpui_icon(background)
.to_galaxyui_icon(background)
.finish(),
)
.with_width(24.)
@@ -2155,7 +2155,7 @@ pub enum AgentInputFooterAction {
impl TypedActionView for AgentInputFooter {
type Action = AgentInputFooterAction;
fn handle_action(&mut self, action: &Self::Action, ctx: &mut warpui::ViewContext<Self>) {
fn handle_action(&mut self, action: &Self::Action, ctx: &mut galaxyui::ViewContext<Self>) {
match action {
#[cfg(feature = "voice_input")]
AgentInputFooterAction::ToggleVoiceInput => {
@@ -2433,10 +2433,10 @@ impl ActionButtonTheme for AgentInputButtonTheme {
true
}
fn font_properties(&self) -> Option<warpui::fonts::Properties> {
fn font_properties(&self) -> Option<galaxyui::fonts::Properties> {
if crate::features::FeatureFlag::CloudModeInputV2.is_enabled() {
Some(warpui::fonts::Properties {
weight: warpui::fonts::Weight::Semibold,
Some(galaxyui::fonts::Properties {
weight: galaxyui::fonts::Weight::Semibold,
..Default::default()
})
} else {
@@ -2478,7 +2478,7 @@ impl ActionButtonTheme for ActiveMicButtonTheme {
true
}
fn font_properties(&self) -> Option<warpui::fonts::Properties> {
fn font_properties(&self) -> Option<galaxyui::fonts::Properties> {
AgentInputButtonTheme.font_properties()
}
}
@@ -1,14 +1,14 @@
use std::sync::Arc;
use parking_lot::FairMutex;
use warp_core::features::FeatureFlag;
use warp_core::ui::appearance::Appearance;
use warp_core::ui::theme::Fill;
use warpui::assets::asset_cache::AssetSource;
use warpui::elements::{Container, Element, Empty, MouseStateHandle};
use warpui::keymap::Keystroke;
use warpui::platform::OperatingSystem;
use warpui::{AppContext, Entity, ModelHandle, SingletonEntity, View, ViewContext};
use galaxy_core::features::FeatureFlag;
use galaxy_core::ui::appearance::Appearance;
use galaxy_core::ui::theme::Fill;
use galaxyui::assets::asset_cache::AssetSource;
use galaxyui::elements::{Container, Element, Empty, MouseStateHandle};
use galaxyui::keymap::Keystroke;
use galaxyui::platform::OperatingSystem;
use galaxyui::{AppContext, Entity, ModelHandle, SingletonEntity, View, ViewContext};
use super::{AgentViewState, EphemeralMessageModel, EphemeralMessageModelEvent};
use crate::ai::agent::conversation::AIConversation;
@@ -1,7 +1,7 @@
use pathfinder_color::ColorU;
use settings::Setting;
use warp_core::ui::{appearance::Appearance, Icon};
use warpui::{
use galaxy_core::ui::{appearance::Appearance, Icon};
use galaxyui::{
elements::{
ConstrainedBox, Container, CrossAxisAlignment, Empty, Flex, Hoverable, MainAxisSize,
MouseStateHandle, ParentElement, Shrinkable, Text,
@@ -197,7 +197,7 @@ impl View for AgentViewEntryBlock {
"EnterAgentBlock"
}
fn render(&self, app: &warpui::AppContext) -> Box<dyn warpui::Element> {
fn render(&self, app: &galaxyui::AppContext) -> Box<dyn galaxyui::Element> {
if self.agent_view_controller.as_ref(app).is_fullscreen() {
return Empty::new().finish();
}
@@ -321,7 +321,7 @@ impl View for AgentViewEntryBlock {
row.add_child(
ConstrainedBox::new(
Icon::ChevronRight
.to_warpui_icon(
.to_galaxyui_icon(
blended_colors::text_sub(
appearance.theme(),
appearance.theme().background(),
@@ -1,10 +1,10 @@
use std::collections::{HashMap, HashSet};
use warpui::elements::{Element, Empty, Flex, MouseStateHandle, ParentElement};
use warpui::platform::Cursor;
use warpui::prelude::Container;
use warpui::ui_components::components::UiComponent;
use warpui::{
use galaxyui::elements::{Element, Empty, Flex, MouseStateHandle, ParentElement};
use galaxyui::platform::Cursor;
use galaxyui::prelude::Container;
use galaxyui::ui_components::components::UiComponent;
use galaxyui::{
AppContext, Entity, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext,
};
@@ -218,7 +218,7 @@ impl View for ChildAgentStatusCard {
let dismiss_button = close_button(appearance, dismiss_mouse_state)
.build()
.on_click(move |ctx: &mut warpui::EventContext<'_>, _, _| {
.on_click(move |ctx: &mut galaxyui::EventContext<'_>, _, _| {
ctx.dispatch_typed_action(ChildAgentStatusCardAction::Dismiss(conversation_id));
})
.with_cursor(Cursor::PointingHand)
@@ -3,10 +3,10 @@ use std::{sync::Arc, time::Duration};
use instant::Instant;
use parking_lot::FairMutex;
use warp_core::ui::appearance::Appearance;
use warpui::keymap::Keystroke;
use warpui::AppContext;
use warpui::{
use galaxy_core::ui::appearance::Appearance;
use galaxyui::keymap::Keystroke;
use galaxyui::AppContext;
use galaxyui::{
r#async::SpawnedFutureHandle, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity,
};
@@ -413,7 +413,7 @@ impl AgentViewController {
/// and whether the escape keybinding should be displayed.
pub fn can_exit_agent_view(
&self,
ctx: &impl warpui::ModelAsRef,
ctx: &impl galaxyui::ModelAsRef,
) -> Result<(), ExitAgentViewError> {
let model = self.terminal_model.lock();
@@ -495,7 +495,7 @@ impl AgentViewController {
self.pending_confirmation = Some(pending_confirmation);
let abort_handle = ctx.spawn_abortable(
async move { warpui::r#async::Timer::after(ENTER_OR_EXIT_CONFIRMATION_WINDOW).await },
async move { galaxyui::r#async::Timer::after(ENTER_OR_EXIT_CONFIRMATION_WINDOW).await },
move |me, _, _ctx| {
me.pending_confirmation = None;
me.pending_confirmation_abort_handle = None;
@@ -1010,7 +1010,7 @@ fn exit_confirmation_message(
should_stop_and_exit: bool,
app: &AppContext,
) -> Message {
use warpui::SingletonEntity;
use galaxyui::SingletonEntity;
use crate::terminal::input::message_bar::{Message, MessageItem};
@@ -1,8 +1,8 @@
use std::borrow::Cow;
use std::time::Duration;
use warpui::r#async::SpawnedFutureHandle;
use warpui::{Entity, ModelContext};
use galaxyui::r#async::SpawnedFutureHandle;
use galaxyui::{Entity, ModelContext};
use crate::terminal::input::message_bar::{Message, MessageProvider};
@@ -93,7 +93,7 @@ impl EphemeralMessageModel {
// If we are dismissing via timer, start the timer.
if let DismissalStrategy::Timer(duration) = dismissal {
let abort_handle = ctx.spawn_abortable(
async move { warpui::r#async::Timer::after(duration).await },
async move { galaxyui::r#async::Timer::after(duration).await },
|me, _, ctx| {
me.current_message = None;
me.clear_timer_handle = None;
@@ -2,8 +2,8 @@ use std::sync::Arc;
use ai::agent::action::{AIAgentActionType, ShellCommandDelay};
use parking_lot::FairMutex;
use warp_core::ui::appearance::Appearance;
use warpui::{
use galaxy_core::ui::appearance::Appearance;
use galaxyui::{
elements::{CornerRadius, Radius},
AppContext, Element, Entity, EntityId, ModelHandle, SingletonEntity, View, ViewContext,
};
@@ -121,7 +121,7 @@ impl View for InlineAgentViewHeader {
};
if is_agent_tagged_in {
let header_background = appearance.theme().surface_2();
let icon = Icon::Oz.to_warpui_icon(
let icon = Icon::Oz.to_galaxyui_icon(
blended_colors::text_main(appearance.theme(), header_background).into(),
);
let message = if let Some(command) = top_level_command.as_deref() {
+5 -5
View File
@@ -16,16 +16,16 @@ pub use agent_view_block::*;
pub use controller::*;
pub use ephemeral_message_model::*;
pub use inline_agent_view_header::*;
use warpui::fonts::Properties;
use galaxyui::fonts::Properties;
pub use zero_state_block::*;
use std::sync::LazyLock;
use pathfinder_color::ColorU;
use warp_core::ui::theme::Fill;
use warp_core::ui::{appearance::Appearance, color::blend::Blend};
use warpui::keymap::Keystroke;
use warpui::{AppContext, SingletonEntity};
use galaxy_core::ui::theme::Fill;
use galaxy_core::ui::{appearance::Appearance, color::blend::Blend};
use galaxyui::keymap::Keystroke;
use galaxyui::{AppContext, SingletonEntity};
use crate::view_components::action_button::ActionButtonTheme;
@@ -1,8 +1,8 @@
use pathfinder_color::ColorU;
use pathfinder_geometry::vector::Vector2F;
use warp_core::ui::appearance::Appearance;
use warp_core::ui::theme::Fill;
use warpui::{
use galaxy_core::ui::appearance::Appearance;
use galaxy_core::ui::theme::Fill;
use galaxyui::{
elements::{
ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Expanded, Flex,
Hoverable, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text,
@@ -179,7 +179,7 @@ pub(crate) fn conversation_navigation_card_with_icon(
if let Some((icon, color)) = icon {
row.add_child(
Container::new(
ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(color)).finish())
ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(color)).finish())
.with_width(16.)
.with_height(16.)
.finish(),
@@ -199,7 +199,7 @@ pub(crate) fn conversation_navigation_card_with_icon(
Container::new(
ConstrainedBox::new(
Icon::ChevronRight
.to_warpui_icon(blended_colors::text_sub(theme, theme.background()).into())
.to_galaxyui_icon(blended_colors::text_sub(theme, theme.background()).into())
.finish(),
)
.with_height(20.)
@@ -5,8 +5,8 @@ use pathfinder_color::ColorU;
use std::borrow::Cow;
use warp_core::{features::FeatureFlag, ui::appearance::Appearance};
use warpui::{
use galaxy_core::{features::FeatureFlag, ui::appearance::Appearance};
use galaxyui::{
elements::{Border, Container, CrossAxisAlignment, Expanded, Flex, ParentElement, Text},
keymap::Keystroke,
ui_components::components::{Coords, UiComponent, UiComponentStyles},
@@ -267,7 +267,7 @@ pub fn render_agent_shortcuts_view(
}
pub mod styles {
use warp_core::ui::appearance::Appearance;
use galaxy_core::ui::appearance::Appearance;
pub fn keystroke_size(appearance: &Appearance) -> f32 {
font_size(appearance) + 2.
@@ -1,6 +1,6 @@
use warpui::{Entity, ModelContext, ModelHandle};
use galaxyui::{Entity, ModelContext, ModelHandle};
use warp_core::send_telemetry_from_ctx;
use galaxy_core::send_telemetry_from_ctx;
use crate::{
ai::blocklist::agent_view::{AgentViewController, AgentViewControllerEvent},
@@ -3,8 +3,8 @@ use markdown_parser::{parse_markdown, FormattedText, FormattedTextFragment, Form
use parking_lot::FairMutex;
use settings::Setting;
use std::{borrow::Cow, cmp::Reverse, path::Path, sync::Arc};
use warp_core::{features::FeatureFlag, report_if_error, ui::Icon};
use warpui::{
use galaxy_core::{features::FeatureFlag, report_if_error, ui::Icon};
use galaxyui::{
elements::{
Clipped, Container, CornerRadius, CrossAxisAlignment, Flex, FormattedTextElement,
HighlightedHyperlink, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable,
@@ -569,7 +569,7 @@ fn render_title_and_description(props: HeaderProps, app: &AppContext) -> Vec<Box
.with_child(
Container::new(
ConstrainedBox::new(
icon.to_warpui_icon(
icon.to_galaxyui_icon(
theme
.main_text_color(theme.background())
.into_solid()
@@ -1020,7 +1020,7 @@ fn render_oz_updates(props: OzUpdatesProps<'_>, app: &AppContext) -> Option<Box<
} else {
Icon::ChevronRight
}
.to_warpui_icon(theme.sub_text_color(theme.background()))
.to_galaxyui_icon(theme.sub_text_color(theme.background()))
.finish(),
)
.with_height(appearance.monospace_font_size())
@@ -1106,7 +1106,7 @@ fn render_oz_updates(props: OzUpdatesProps<'_>, app: &AppContext) -> Option<Box<
.with_child(
ConstrainedBox::new(
Icon::Share3
.to_warpui_icon(
.to_galaxyui_icon(
theme.sub_text_color(theme.background()),
)
.finish(),
@@ -1225,7 +1225,7 @@ pub fn render_ambient_credits_banner(credits: i32, app: &AppContext) -> Box<dyn
}
mod styles {
use warp_core::ui::appearance::Appearance;
use galaxy_core::ui::appearance::Appearance;
pub const CONTAINER_VERTICAL_PADDING: f32 = 16.;
pub const TITLE_MARGIN_BOTTOM: f32 = 8.;
@@ -8,7 +8,7 @@ use crate::terminal::{
event_listener::ChannelEventListener,
};
use std::{path::PathBuf, sync::Arc};
use warpui::r#async::executor::Background;
use galaxyui::r#async::executor::Background;
fn terminal_with_startup_path(startup_path: Option<&str>) -> TerminalModel {
TerminalModel::new_for_test(