Rebrand Warp to Galaxy v1.1.0
- Rename all UI-facing "Warp" references to "Galaxy" - Rename "Warpify" to "Wormhole" throughout the UI - Replace app icons with 5 new Galaxy-branded variants - Update About page to show selected app icon dynamically - Rephrase Privacy page for Bedrock context - Remove "Fallback to Warp server" toggle from Bedrock settings - Widen model selector dropdowns in profile editor (480px) - Update TERM_PROGRAM to "GalaxyTerminal" - Bump version to 1.1.0 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
99159184cb
commit
ccc67e6a33
@@ -283,7 +283,7 @@ static DEFAULT_TIPS: LazyLock<Vec<AgentTip>> = LazyLock::new(|| {
|
||||
kind: AgentTipKind::Context,
|
||||
},
|
||||
AgentTip {
|
||||
description: "Galaxyize a remote SSH session to enable the agent inside that environment.".to_string(),
|
||||
description: "Wormhole a remote SSH session to enable the agent inside that environment.".to_string(),
|
||||
link: Some("https://docs.warp.dev/terminal/warpify".to_string()),
|
||||
binding_name: None,
|
||||
action: None,
|
||||
|
||||
@@ -42,7 +42,7 @@ use galaxyui::{
|
||||
};
|
||||
use std::path::{Path, PathBuf};
|
||||
|
||||
const MODEL_MENU_WIDTH: f32 = 250.;
|
||||
const MODEL_MENU_WIDTH: f32 = 480.;
|
||||
|
||||
/// Renders a footer banner for model dropdowns informing free-plan users that
|
||||
/// frontier models require an upgrade, with a clickable "Upgrade" link.
|
||||
@@ -480,21 +480,25 @@ impl ExecutionProfileEditorView {
|
||||
|
||||
let base_model_dropdown = ctx.add_typed_action_view(|ctx| {
|
||||
let mut dropdown = FilterableDropdown::new(ctx);
|
||||
dropdown.set_top_bar_max_width(MODEL_MENU_WIDTH);
|
||||
dropdown.set_menu_width(MODEL_MENU_WIDTH, ctx);
|
||||
dropdown
|
||||
});
|
||||
let coding_model_dropdown = ctx.add_typed_action_view(|ctx| {
|
||||
let mut dropdown = Dropdown::new(ctx);
|
||||
dropdown.set_top_bar_max_width(MODEL_MENU_WIDTH);
|
||||
dropdown.set_menu_width(MODEL_MENU_WIDTH, ctx);
|
||||
dropdown
|
||||
});
|
||||
let full_terminal_use_model_dropdown = ctx.add_typed_action_view(|ctx| {
|
||||
let mut dropdown = FilterableDropdown::new(ctx);
|
||||
dropdown.set_top_bar_max_width(MODEL_MENU_WIDTH);
|
||||
dropdown.set_menu_width(MODEL_MENU_WIDTH, ctx);
|
||||
dropdown
|
||||
});
|
||||
let computer_use_model_dropdown = ctx.add_typed_action_view(|ctx| {
|
||||
let mut dropdown = FilterableDropdown::new(ctx);
|
||||
dropdown.set_top_bar_max_width(MODEL_MENU_WIDTH);
|
||||
dropdown.set_menu_width(MODEL_MENU_WIDTH, ctx);
|
||||
dropdown
|
||||
});
|
||||
|
||||
@@ -224,9 +224,9 @@ impl AppearanceManager {
|
||||
// revert to the icon we started up with. We therefore need to use an in-memory
|
||||
// override to display the default icon. This has the drawback of _not_ inheriting the
|
||||
// preferred icon style, but that icon style _will_ apply on next app restart.
|
||||
if icon == AppIcon::Default
|
||||
if icon == AppIcon::Galaxy
|
||||
&& ChannelState::channel() != Channel::Local
|
||||
&& self.app_icon_at_startup == AppIcon::Default
|
||||
&& self.app_icon_at_startup == AppIcon::Galaxy
|
||||
{
|
||||
log::debug!("User has default icon selected, resetting to bundle default");
|
||||
// Reset to nil to use the bundle's default icon
|
||||
|
||||
+1
-1
@@ -149,7 +149,7 @@ pub fn maybe_log_out(app: &mut AppContext) {
|
||||
"object"
|
||||
};
|
||||
info_text_vec.push(format!(
|
||||
"You have {num_unsaved_objects} unsynced Warp Drive {plural}. \
|
||||
"You have {num_unsaved_objects} unsynced Galaxy Drive {plural}. \
|
||||
Logging out will cause you to lose the {plural}."
|
||||
));
|
||||
}
|
||||
|
||||
@@ -210,10 +210,10 @@ mod package_manager {
|
||||
))],
|
||||
}),
|
||||
FormattedTextLine::Line(vec![
|
||||
FormattedTextFragment::plain_text("If you installed Warp using "),
|
||||
FormattedTextFragment::plain_text("If you installed Galaxy using "),
|
||||
FormattedTextFragment::bold(package_manager_name),
|
||||
FormattedTextFragment::plain_text(
|
||||
" or a compatible tool, the pre-filled command will update Warp for you.",
|
||||
" or a compatible tool, the pre-filled command will update Galaxy for you.",
|
||||
),
|
||||
]),
|
||||
];
|
||||
@@ -221,7 +221,7 @@ mod package_manager {
|
||||
if self.package_manager.needs_repository_configuration() {
|
||||
lines.push(FormattedTextLine::Line(vec![
|
||||
FormattedTextFragment::plain_text(
|
||||
"\nThe command below includes a one-time configuration of the Warp package repository and PGP signing key.",
|
||||
"\nThe command below includes a one-time configuration of the Galaxy package repository and PGP signing key.",
|
||||
),
|
||||
]));
|
||||
}
|
||||
@@ -236,7 +236,7 @@ mod package_manager {
|
||||
),
|
||||
FormattedTextFragment::inline_code("warp_handle_dist_upgrade"),
|
||||
FormattedTextFragment::plain_text(
|
||||
" function ensures the Warp package repository is enabled, as we've detected you recently upgraded your distribution.",
|
||||
" function ensures the Galaxy package repository is enabled, as we've detected you recently upgraded your distribution.",
|
||||
),
|
||||
]));
|
||||
}
|
||||
@@ -244,7 +244,7 @@ mod package_manager {
|
||||
lines.push(FormattedTextLine::Line(vec![
|
||||
FormattedTextFragment::plain_text("\nReview the command below, then "),
|
||||
FormattedTextFragment::bold("press enter"),
|
||||
FormattedTextFragment::plain_text(" to install the update and re-launch Warp. "),
|
||||
FormattedTextFragment::plain_text(" to install the update and re-launch Galaxy. "),
|
||||
FormattedTextFragment::hyperlink(
|
||||
"Please report any issues",
|
||||
"https://github.com/warpdotdev/Warp/issues/new/choose",
|
||||
|
||||
@@ -678,7 +678,7 @@ pub fn accessibility_content(
|
||||
// Found autoupdate
|
||||
(RequestType::ManualCheck, Ok(UpdateReady::Yes { .. })) => Some(AccessibilityContent::new(
|
||||
"Update available.",
|
||||
"Use the command palette to install and relaunch Warp",
|
||||
"Use the command palette to install and relaunch Galaxy",
|
||||
WarpA11yRole::HelpRole,
|
||||
)),
|
||||
// Any non-successful autoupdate check
|
||||
|
||||
@@ -21,10 +21,10 @@ const BUTTON_BORDER_RADIUS: f32 = 4.;
|
||||
const DEFAULT_DELINQUENT_ADMIN_MODAL_SUBHEADER: &str = "Shared drive objects have been restricted due to a subscription payment issue.\n\nPlease update your payment information to restore access.";
|
||||
const DEFAULT_DELINQUENT_ADMIN_ENTERPRISE_MODAL_SUBHEADER: &str = "Shared drive objects have been restricted due to a subscription payment issue.\n\nPlease contact support@warp.dev to restore access.";
|
||||
const DEFAULT_DELINQUENT_MODAL_SUBHEADER: &str = "Shared drive objects have been restricted due to a subscription payment issue.\n\nPlease contact a team admin to restore access.";
|
||||
const DEFAULT_ADMIN_PROSUMER_MODAL_SUBHEADER: &str = "Warp's Pro plan comes with a limited number of shared drive objects.\n\nFor access to unlimited shared drive objects, upgrade to the Turbo plan.";
|
||||
const DEFAULT_PROSUMER_MODAL_SUBHEADER: &str = "Warp's Pro plan comes with a limited number of shared drive objects.\n\nFor access to unlimited shared drive objects, contact a team admin to upgrade to the Turbo plan.";
|
||||
const DEFAULT_ADMIN_MODAL_SUBHEADER: &str = "Warp's free plan comes with a limited number of shared drive objects.\n\nFor access to unlimited shared drive objects, upgrade to a paid plan.";
|
||||
const DEFAULT_MODAL_SUBHEADER: &str = "Warp's free plan comes with a limited number of shared drive objects.\n\nFor access to unlimited shared drive objects, contact a team admin to upgrade to a paid plan.";
|
||||
const DEFAULT_ADMIN_PROSUMER_MODAL_SUBHEADER: &str = "Galaxy's Pro plan comes with a limited number of shared drive objects.\n\nFor access to unlimited shared drive objects, upgrade to the Turbo plan.";
|
||||
const DEFAULT_PROSUMER_MODAL_SUBHEADER: &str = "Galaxy's Pro plan comes with a limited number of shared drive objects.\n\nFor access to unlimited shared drive objects, contact a team admin to upgrade to the Turbo plan.";
|
||||
const DEFAULT_ADMIN_MODAL_SUBHEADER: &str = "Galaxy's free plan comes with a limited number of shared drive objects.\n\nFor access to unlimited shared drive objects, upgrade to a paid plan.";
|
||||
const DEFAULT_MODAL_SUBHEADER: &str = "Galaxy's free plan comes with a limited number of shared drive objects.\n\nFor access to unlimited shared drive objects, contact a team admin to upgrade to a paid plan.";
|
||||
const VIEW_PLANS_TEXT: &str = "Compare plans";
|
||||
const MANAGE_BILLING_BUTTON_TEXT: &str = "Manage billing";
|
||||
|
||||
@@ -104,13 +104,13 @@ impl View for SharedObjectsCreationDeniedBody {
|
||||
},
|
||||
(true, false, _) => format!("Shared {object_type}s have been restricted due to a subscription payment issue.\n\nPlease contact a team admin to restore access."),
|
||||
(false, true, CustomerType::Prosumer) => {
|
||||
format!("Warp's Pro plan comes with a limited number of shared {object_type}s.\n\nFor access to unlimited shared {object_type}s, upgrade to the Build plan.")
|
||||
format!("Galaxy's Pro plan comes with a limited number of shared {object_type}s.\n\nFor access to unlimited shared {object_type}s, upgrade to the Build plan.")
|
||||
}
|
||||
(false, false, CustomerType::Prosumer) => {
|
||||
format!("Warp's Pro plan comes with a limited number of shared {object_type}s.\n\nFor access to unlimited shared {object_type}s, contact a team admin to upgrade to the Build plan.")
|
||||
format!("Galaxy's Pro plan comes with a limited number of shared {object_type}s.\n\nFor access to unlimited shared {object_type}s, contact a team admin to upgrade to the Build plan.")
|
||||
}
|
||||
(false, true, _) => format!("Warp's free plan comes with a limited number of shared {object_type}s.\n\nFor access to unlimited shared {object_type}s, upgrade to a paid plan."),
|
||||
(false, false, _) => format!("Warp's free plan comes with a limited number of shared {object_type}s.\n\nFor access to unlimited shared {object_type}s, contact a team admin to upgrade to a paid plan."),
|
||||
(false, true, _) => format!("Galaxy's free plan comes with a limited number of shared {object_type}s.\n\nFor access to unlimited shared {object_type}s, upgrade to a paid plan."),
|
||||
(false, false, _) => format!("Galaxy's free plan comes with a limited number of shared {object_type}s.\n\nFor access to unlimited shared {object_type}s, contact a team admin to upgrade to a paid plan."),
|
||||
}
|
||||
}
|
||||
_ => match (
|
||||
|
||||
@@ -232,12 +232,12 @@ fn main() {
|
||||
);
|
||||
root.insert(
|
||||
"title".to_string(),
|
||||
Value::String("Warp Settings".to_string()),
|
||||
Value::String("Galaxy Settings".to_string()),
|
||||
);
|
||||
root.insert(
|
||||
"description".to_string(),
|
||||
Value::String(format!(
|
||||
"JSON Schema for Warp settings ({channel} channel, {entry_count} settings)"
|
||||
"JSON Schema for Galaxy settings ({channel} channel, {entry_count} settings)"
|
||||
)),
|
||||
);
|
||||
root.insert("type".to_string(), Value::String("object".to_string()));
|
||||
|
||||
@@ -107,7 +107,7 @@ use pathfinder_geometry::vector::{vec2f, Vector2F};
|
||||
use std::{any::Any, collections::HashMap, sync::Arc};
|
||||
use url::Url;
|
||||
|
||||
const WARP_DRIVE_TITLE: &str = "Warp Drive";
|
||||
const WARP_DRIVE_TITLE: &str = "Galaxy Drive";
|
||||
|
||||
// Team zero state consts
|
||||
const HINT_HORIZONTAL_PADDING: f32 = 18.;
|
||||
@@ -1721,7 +1721,7 @@ impl DriveIndex {
|
||||
(DriveIndexVariant::MainIndex, DriveIndexSection::JoinTeam) => {
|
||||
if self.is_online(app) {
|
||||
let join_teams_text = format!(
|
||||
"Collaborate with {} of your teammates already on Warp.",
|
||||
"Collaborate with {} of your teammates already on Galaxy.",
|
||||
UserWorkspaces::handle(app)
|
||||
.as_ref(app)
|
||||
.total_teammates_in_joinable_teams()
|
||||
@@ -2974,7 +2974,7 @@ impl DriveIndex {
|
||||
if mouse_state.is_hovered() {
|
||||
let tooltip = appearance
|
||||
.ui_builder()
|
||||
.tool_tip(String::from("Syncing Warp Drive"));
|
||||
.tool_tip(String::from("Syncing Galaxy Drive"));
|
||||
|
||||
stack.add_positioned_overlay_child(
|
||||
tooltip.build().finish(),
|
||||
@@ -3956,7 +3956,7 @@ impl DriveIndex {
|
||||
.with_cross_axis_alignment(CrossAxisAlignment::Start)
|
||||
.with_main_axis_alignment(MainAxisAlignment::SpaceBetween)
|
||||
.with_child(
|
||||
Text::new_inline("Warp Drive".to_string(), appearance.ui_font_family(), 14.)
|
||||
Text::new_inline("Galaxy Drive".to_string(), appearance.ui_font_family(), 14.)
|
||||
.with_color(theme.main_text_color(background_color).into())
|
||||
.with_style(Properties {
|
||||
weight: galaxyui::fonts::Weight::Bold,
|
||||
|
||||
@@ -15,7 +15,7 @@ define_settings_group!(WarpDriveSettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes),
|
||||
private: false,
|
||||
toml_path: "warp_drive.sorting_choice",
|
||||
description: "The sort order for items in Warp Drive.",
|
||||
description: "The sort order for items in Galaxy Drive.",
|
||||
},
|
||||
sharing_onboarding_block_shown: WarpDriveSharingOnboardingBlockShown {
|
||||
type: bool,
|
||||
@@ -32,7 +32,7 @@ define_settings_group!(WarpDriveSettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes),
|
||||
private: false,
|
||||
toml_path: "warp_drive.enabled",
|
||||
description: "Whether Warp Drive is enabled.",
|
||||
description: "Whether Galaxy Drive is enabled.",
|
||||
},
|
||||
]);
|
||||
|
||||
|
||||
+1
-1
@@ -853,7 +853,7 @@ fn run_internal(mut launch_mode: LaunchMode) -> Result<()> {
|
||||
|| std::env::var("WARPUI_USE_REAL_DISPLAY_IN_INTEGRATION_TESTS").is_ok();
|
||||
app_builder.set_activate_on_launch(activate_on_launch);
|
||||
|
||||
let dev_icon = ASSETS.get("bundled/png/local.png")?;
|
||||
let dev_icon = ASSETS.get("bundled/png/galaxy.png")?;
|
||||
app_builder.set_dev_icon(dev_icon);
|
||||
|
||||
app_builder.set_menu_bar_builder(app_menus::menu_bar);
|
||||
|
||||
@@ -2912,7 +2912,7 @@ impl PaneGroup {
|
||||
Banner::<PaneGroupAction>::new_permanently_dismissible(
|
||||
BannerTextContent::formatted_text(vec![
|
||||
FormattedTextFragment::plain_text(
|
||||
"Warp doesn't currently support your default shell, falling back to zsh. ",
|
||||
"Galaxy doesn't currently support your default shell, falling back to zsh. ",
|
||||
),
|
||||
FormattedTextFragment::hyperlink("Learn more", WARP_SHELL_COMPATIBILITY_DOCS),
|
||||
]),
|
||||
|
||||
@@ -394,7 +394,7 @@ impl ResourceCenterMainView {
|
||||
.with_text_and_icon_label(
|
||||
TextAndIcon::new(
|
||||
TextAndIconAlignment::IconFirst,
|
||||
"Invite a friend to Warp",
|
||||
"Invite a friend to Galaxy",
|
||||
Icon::new(SEND_SVG_PATH, appearance.theme().accent()),
|
||||
MainAxisSize::Max,
|
||||
MainAxisAlignment::Center,
|
||||
|
||||
@@ -40,7 +40,7 @@ impl FeatureSection {
|
||||
match self {
|
||||
FeatureSection::WhatsNew => "What's New?",
|
||||
FeatureSection::GettingStarted => "Getting Started",
|
||||
FeatureSection::MaximizeWarp => "Maximize Warp",
|
||||
FeatureSection::MaximizeWarp => "Maximize Galaxy",
|
||||
FeatureSection::AdvancedSetup => "Advanced Setup",
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,13 +36,13 @@ pub fn sections(ctx: &mut ViewContext<ResourceCenterMainView>) -> Vec<Section> {
|
||||
),
|
||||
FeatureItem::new(
|
||||
"Open command palette",
|
||||
"Access all of Warp via the keyboard.",
|
||||
"Access all of Galaxy via the keyboard.",
|
||||
Tip::Action(TipAction::CommandPalette),
|
||||
ctx,
|
||||
),
|
||||
FeatureItem::new(
|
||||
"Set your theme",
|
||||
"Make Warp your own by choosing a theme.",
|
||||
"Make Galaxy your own by choosing a theme.",
|
||||
Tip::Action(TipAction::ThemePicker),
|
||||
ctx,
|
||||
),
|
||||
@@ -61,19 +61,19 @@ pub fn sections(ctx: &mut ViewContext<ResourceCenterMainView>) -> Vec<Section> {
|
||||
items: vec![
|
||||
ContentItem {
|
||||
title: "Use your custom prompt",
|
||||
description: "Set up Warp to honor your PS1 setting",
|
||||
description: "Set up Galaxy to honor your PS1 setting",
|
||||
url: "https://docs.warp.dev/terminal/appearance/prompt",
|
||||
button_label: "View documentation",
|
||||
},
|
||||
ContentItem {
|
||||
title: "Integrate Warp with your IDE",
|
||||
description: "Configure Warp to launch from your most used development tools",
|
||||
title: "Integrate Galaxy with your IDE",
|
||||
description: "Configure Galaxy to launch from your most used development tools",
|
||||
url: "https://docs.warp.dev/terminal/integrations-and-plugins",
|
||||
button_label: "View documentation",
|
||||
},
|
||||
ContentItem {
|
||||
title: "How Warp uses Warp",
|
||||
description: "Learn how Warp's engineering team uses their favorite features",
|
||||
title: "How Galaxy uses Galaxy",
|
||||
description: "Learn how Galaxy's engineering team uses their favorite features",
|
||||
url: "https://www.warp.dev/blog/how-warp-uses-warp",
|
||||
button_label: "Read article",
|
||||
},
|
||||
|
||||
@@ -124,7 +124,7 @@ pub fn get_additional_keybindings() -> Vec<CommandBinding> {
|
||||
),
|
||||
CommandBinding::new(
|
||||
"workspace:hide_warp".into(),
|
||||
"Hide Warp".into(),
|
||||
"Hide Galaxy".into(),
|
||||
Some(Keystroke::parse("cmd-h").expect("Valid keystroke")),
|
||||
),
|
||||
CommandBinding::new(
|
||||
@@ -134,7 +134,7 @@ pub fn get_additional_keybindings() -> Vec<CommandBinding> {
|
||||
),
|
||||
CommandBinding::new(
|
||||
"workspace:quit_warp".into(),
|
||||
"Quit Warp".into(),
|
||||
"Quit Galaxy".into(),
|
||||
Some(Keystroke::parse("cmd-q").expect("Valid keystroke")),
|
||||
),
|
||||
CommandBinding::new(
|
||||
|
||||
@@ -336,7 +336,7 @@ impl ResourceCenterView {
|
||||
if FeatureFlag::AvatarInTabBar.is_enabled() {
|
||||
String::new()
|
||||
} else {
|
||||
"Warp Essentials".to_string()
|
||||
"Galaxy Essentials".to_string()
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -23,9 +23,9 @@ const TITLE_FONT_SIZE: f32 = 20.;
|
||||
const TITLE_MARGIN_BOTTOM: f32 = 25.;
|
||||
// Constants for the subtitle
|
||||
const SUBTITLE_SENT_REFERRAL: &str =
|
||||
"You earned an exclusive Warp theme for referring someone to Warp.";
|
||||
"You earned an exclusive Galaxy theme for referring someone to Galaxy.";
|
||||
const SUBTITLE_RECEIVED_REFERRAL: &str =
|
||||
"You earned an exclusive Warp theme for being referred to Warp.";
|
||||
"You earned an exclusive Galaxy theme for being referred to Galaxy.";
|
||||
const SUBTITLE_FONT_SIZE: f32 = 14.;
|
||||
const SUBTITLE_MARGIN_BOTTOM: f32 = 40.;
|
||||
// Constants for the button
|
||||
|
||||
@@ -794,7 +794,7 @@ fn open_from_restored(arg: &OpenFromRestoredArg, ctx: &mut AppContext) {
|
||||
AddWindowOptions {
|
||||
window_style: WindowStyle::Pin,
|
||||
window_bounds: WindowBounds::ExactPosition(frame_args.window_bounds),
|
||||
title: Some("Warp".to_owned()),
|
||||
title: Some("Galaxy".to_owned()),
|
||||
fullscreen_state: window.fullscreen_state,
|
||||
background_blur_radius_pixels,
|
||||
background_blur_texture,
|
||||
@@ -837,7 +837,7 @@ fn open_from_restored(arg: &OpenFromRestoredArg, ctx: &mut AppContext) {
|
||||
ctx.add_window(
|
||||
AddWindowOptions {
|
||||
window_bounds: WindowBounds::new(window.bounds),
|
||||
title: Some("Warp".to_owned()),
|
||||
title: Some("Galaxy".to_owned()),
|
||||
fullscreen_state: window.fullscreen_state,
|
||||
background_blur_radius_pixels,
|
||||
background_blur_texture,
|
||||
@@ -889,7 +889,7 @@ fn open_from_restored(arg: &OpenFromRestoredArg, ctx: &mut AppContext) {
|
||||
ctx.add_window(
|
||||
AddWindowOptions {
|
||||
window_bounds: WindowBounds::new(window.bounds),
|
||||
title: Some("Warp".to_owned()),
|
||||
title: Some("Galaxy".to_owned()),
|
||||
fullscreen_state: window.fullscreen_state,
|
||||
background_blur_radius_pixels,
|
||||
background_blur_texture,
|
||||
@@ -1247,7 +1247,7 @@ fn default_window_options(window_settings: &WindowSettings, ctx: &AppContext) ->
|
||||
AddWindowOptions {
|
||||
window_style,
|
||||
window_bounds: next_bounds,
|
||||
title: Some("Warp".to_owned()),
|
||||
title: Some("Galaxy".to_owned()),
|
||||
background_blur_radius_pixels: Some(*window_settings.background_blur_radius),
|
||||
background_blur_texture: *window_settings.background_blur_texture,
|
||||
on_gpu_driver_selected: on_gpu_driver_selected_callback(),
|
||||
@@ -1432,7 +1432,7 @@ fn toggle_quake_mode_window(global_resource_handles: &GlobalResourceHandles, ctx
|
||||
AddWindowOptions {
|
||||
window_style: WindowStyle::Pin,
|
||||
window_bounds: WindowBounds::ExactPosition(config.window_bounds),
|
||||
title: Some("Warp".to_owned()),
|
||||
title: Some("Galaxy".to_owned()),
|
||||
background_blur_radius_pixels: Some(*window_settings.background_blur_radius),
|
||||
background_blur_texture: *window_settings.background_blur_texture,
|
||||
// Ignore the quake window for positioning the next window
|
||||
|
||||
@@ -160,7 +160,7 @@ pub enum AIApiError {
|
||||
#[error("Request failed due to lack of AI quota.")]
|
||||
QuotaLimit,
|
||||
|
||||
#[error("Warp is currently overloaded. Please try again later.")]
|
||||
#[error("Galaxy is currently overloaded. Please try again later.")]
|
||||
ServerOverloaded,
|
||||
|
||||
#[error("Internal error occurred at transport layer.")]
|
||||
@@ -337,7 +337,7 @@ pub enum TranscribeError {
|
||||
#[error("Request failed due to lack of Voice quota.")]
|
||||
QuotaLimit,
|
||||
|
||||
#[error("Warp is currently overloaded. Please try again later.")]
|
||||
#[error("Galaxy is currently overloaded. Please try again later.")]
|
||||
ServerOverloaded,
|
||||
|
||||
#[error("Internal error occurred at transport layer.")]
|
||||
|
||||
@@ -1118,7 +1118,7 @@ define_settings_group!(AISettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes),
|
||||
private: false,
|
||||
toml_path: "ai.bedrock.fallback_to_warp",
|
||||
description: "Whether to fall back to the Warp server when Bedrock credentials are invalid.",
|
||||
description: "Whether to fall back to the Galaxy server when Bedrock credentials are invalid.",
|
||||
}
|
||||
// Custom Bedrock model configurations.
|
||||
bedrock_models: BedrockModels {
|
||||
@@ -1192,7 +1192,7 @@ define_settings_group!(AISettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes),
|
||||
private: false,
|
||||
toml_path: "agents.knowledge.warp_drive_context_enabled",
|
||||
description: "Whether Warp Drive context is included in AI requests.",
|
||||
description: "Whether Galaxy Drive context is included in AI requests.",
|
||||
}
|
||||
|
||||
// Whether the codebase speedbump banner has been permanently dismissed for a given repo path.
|
||||
@@ -1295,7 +1295,7 @@ define_settings_group!(AISettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes),
|
||||
private: false,
|
||||
toml_path: "cloud_platform.third_party_api_keys.can_use_warp_credits_with_byok",
|
||||
description: "Whether Warp credits can be used even when providing your own API key.",
|
||||
description: "Whether Galaxy credits can be used even when providing your own API key.",
|
||||
}
|
||||
|
||||
should_render_use_agent_footer_for_user_commands: ShouldRenderUseAgentToolbarForUserCommands {
|
||||
@@ -1526,7 +1526,7 @@ define_settings_group!(AISettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::No),
|
||||
private: false,
|
||||
toml_path: "agents.warp_agent.other.agent_attribution_enabled",
|
||||
description: "Whether the Warp Agent adds an attribution co-author line to commit messages and pull requests it creates.",
|
||||
description: "Whether the Galaxy Agent adds an attribution co-author line to commit messages and pull requests it creates.",
|
||||
}
|
||||
]);
|
||||
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
use enum_iterator::Sequence;
|
||||
use galaxy_core::{
|
||||
channel::{Channel, ChannelState},
|
||||
settings::{macros::define_settings_group, SupportedPlatforms, SyncToCloud},
|
||||
};
|
||||
use galaxy_core::settings::{macros::define_settings_group, SupportedPlatforms, SyncToCloud};
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
/// The app icon to use (mac-only).
|
||||
@@ -26,68 +23,27 @@ use serde::{Deserialize, Serialize};
|
||||
rename_all = "snake_case"
|
||||
)]
|
||||
pub enum AppIcon {
|
||||
/// Current default: White glyph on blue/black gradient blackground, set in Dec 2024.
|
||||
#[default]
|
||||
#[schemars(description = "Default")]
|
||||
Default,
|
||||
#[schemars(description = "Aurora")]
|
||||
Aurora,
|
||||
#[schemars(description = "Classic 1")]
|
||||
Classic1,
|
||||
#[schemars(description = "Classic 2")]
|
||||
Classic2,
|
||||
#[schemars(description = "Classic 3")]
|
||||
Classic3,
|
||||
#[schemars(description = "Comets")]
|
||||
Comets,
|
||||
/// Cow icon, for Code on Warp launch.
|
||||
#[schemars(description = "Cow")]
|
||||
Cow,
|
||||
#[schemars(description = "Glass Sky")]
|
||||
GlassSky,
|
||||
#[schemars(description = "Glitch")]
|
||||
Glitch,
|
||||
/// White glyph on black background with blue/green glow on the side, set in Oct 2024 brand refresh.
|
||||
#[schemars(description = "Glow")]
|
||||
Glow,
|
||||
#[schemars(description = "Holographic")]
|
||||
Holographic,
|
||||
#[schemars(description = "Mono")]
|
||||
Mono,
|
||||
#[schemars(description = "Neon")]
|
||||
Neon,
|
||||
/// Blue/green glyph on black background.
|
||||
#[schemars(description = "Original")]
|
||||
Original,
|
||||
#[schemars(description = "Starburst")]
|
||||
Starburst,
|
||||
#[schemars(description = "Sticker")]
|
||||
Sticker,
|
||||
/// Previous default icon with solid blue background.
|
||||
#[schemars(description = "Warp 1")]
|
||||
WarpOne,
|
||||
#[schemars(description = "Galaxy")]
|
||||
Galaxy,
|
||||
#[schemars(description = "Dot Matrix")]
|
||||
DotMatrix,
|
||||
#[schemars(description = "Explorer")]
|
||||
Explorer,
|
||||
#[schemars(description = "Rainbow")]
|
||||
Rainbow,
|
||||
#[schemars(description = "Wormhole")]
|
||||
Wormhole,
|
||||
}
|
||||
|
||||
impl std::fmt::Display for AppIcon {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
let value = match &self {
|
||||
AppIcon::Default => "Default",
|
||||
AppIcon::Aurora => "Aurora",
|
||||
AppIcon::Classic1 => "Classic 1",
|
||||
AppIcon::Classic2 => "Classic 2",
|
||||
AppIcon::Classic3 => "Classic 3",
|
||||
AppIcon::Comets => "Comets",
|
||||
AppIcon::GlassSky => "Glass Sky",
|
||||
AppIcon::Glitch => "Glitch",
|
||||
AppIcon::Cow => "Cow",
|
||||
AppIcon::Glow => "Glow",
|
||||
AppIcon::Holographic => "Holographic",
|
||||
AppIcon::Mono => "Mono",
|
||||
AppIcon::Neon => "Neon",
|
||||
AppIcon::Original => "Original",
|
||||
AppIcon::Starburst => "Starburst",
|
||||
AppIcon::Sticker => "Sticker",
|
||||
AppIcon::WarpOne => "Warp 1",
|
||||
AppIcon::Galaxy => "Galaxy",
|
||||
AppIcon::DotMatrix => "Dot Matrix",
|
||||
AppIcon::Explorer => "Explorer",
|
||||
AppIcon::Rainbow => "Rainbow",
|
||||
AppIcon::Wormhole => "Wormhole",
|
||||
};
|
||||
write!(f, "{value}")
|
||||
}
|
||||
@@ -96,28 +52,11 @@ impl std::fmt::Display for AppIcon {
|
||||
impl AppIconSettings {
|
||||
pub fn get_base_icon_file_name(icon: AppIcon) -> &'static str {
|
||||
match icon {
|
||||
AppIcon::Aurora => "aurora",
|
||||
AppIcon::Default => match ChannelState::channel() {
|
||||
Channel::Dev => "dev",
|
||||
Channel::Preview => "preview",
|
||||
Channel::Local => "local",
|
||||
_ => "warp_2",
|
||||
},
|
||||
AppIcon::Classic1 => "classic_1",
|
||||
AppIcon::Classic2 => "classic_2",
|
||||
AppIcon::Classic3 => "classic_3",
|
||||
AppIcon::Comets => "comets",
|
||||
AppIcon::GlassSky => "glass_sky",
|
||||
AppIcon::Glitch => "glitch",
|
||||
AppIcon::Cow => "cow",
|
||||
AppIcon::Glow => "glow",
|
||||
AppIcon::Holographic => "holographic",
|
||||
AppIcon::Mono => "mono",
|
||||
AppIcon::Neon => "neon",
|
||||
AppIcon::Original => "original",
|
||||
AppIcon::Starburst => "starburst",
|
||||
AppIcon::Sticker => "sticker",
|
||||
AppIcon::WarpOne => "blue",
|
||||
AppIcon::Galaxy => "galaxy",
|
||||
AppIcon::DotMatrix => "galaxy_dotmatrix",
|
||||
AppIcon::Explorer => "galaxy_explorer",
|
||||
AppIcon::Rainbow => "galaxy_rainbow",
|
||||
AppIcon::Wormhole => "galaxy_wormhole",
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -125,7 +64,7 @@ impl AppIconSettings {
|
||||
define_settings_group!(AppIconSettings, settings: [
|
||||
app_icon: AppIconState {
|
||||
type: AppIcon,
|
||||
default: AppIcon::Default,
|
||||
default: AppIcon::Galaxy,
|
||||
supported_platforms: SupportedPlatforms::MAC,
|
||||
sync_to_cloud: SyncToCloud::Never,
|
||||
private: false,
|
||||
|
||||
@@ -10,7 +10,7 @@ define_settings_group!(CodeSettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Never,
|
||||
private: false,
|
||||
toml_path: "code.editor.use_warp_as_default_editor",
|
||||
description: "Whether Warp is used as the default code editor.",
|
||||
description: "Whether Galaxy is used as the default code editor.",
|
||||
}
|
||||
codebase_context_enabled: CodebaseContextEnabled {
|
||||
type: bool,
|
||||
|
||||
@@ -43,7 +43,7 @@ pub enum ThemeError {
|
||||
|
||||
#[derive(Clone, Error, Debug)]
|
||||
pub enum HotkeyError {
|
||||
#[error("A hotkey window opens in a way Warp does not support")]
|
||||
#[error("A hotkey window opens in a way Galaxy does not support")]
|
||||
UnsupportedWindowType,
|
||||
#[error("There are multiple hotkeys configured")]
|
||||
MultipleHotkeys,
|
||||
|
||||
@@ -298,7 +298,7 @@ impl SettingsImportView {
|
||||
background: Some(appearance.theme().outline().into()),
|
||||
..Default::default()
|
||||
})
|
||||
.with_centered_text_label("Reset to Warp defaults".to_owned())
|
||||
.with_centered_text_label("Reset to Galaxy defaults".to_owned())
|
||||
.build()
|
||||
.on_click(move |ctx, _, _| {
|
||||
ctx.dispatch_typed_action(SettingsImportAction::ResetButtonClicked);
|
||||
|
||||
@@ -5,7 +5,11 @@ use super::{
|
||||
},
|
||||
SettingsSection,
|
||||
};
|
||||
use crate::{appearance::Appearance, channel::ChannelState, workspace::WorkspaceAction};
|
||||
use crate::{
|
||||
appearance::Appearance, channel::ChannelState, settings::app_icon::AppIconSettings,
|
||||
workspace::WorkspaceAction,
|
||||
};
|
||||
use galaxyui::SingletonEntity;
|
||||
use galaxyui::{
|
||||
assets::asset_cache::AssetSource,
|
||||
elements::{
|
||||
@@ -62,7 +66,15 @@ impl SettingsWidget for AboutPageWidget {
|
||||
) -> Box<dyn Element> {
|
||||
let ui_builder = appearance.ui_builder();
|
||||
|
||||
let image_path = "bundled/svg/galaxy-logo.svg";
|
||||
let icon_file = AppIconSettings::get_base_icon_file_name(*AppIconSettings::as_ref(_app).app_icon);
|
||||
let image_path = match icon_file {
|
||||
"galaxy" => "bundled/png/galaxy.png",
|
||||
"galaxy_dotmatrix" => "bundled/png/galaxy_dotmatrix.png",
|
||||
"galaxy_explorer" => "bundled/png/galaxy_explorer.png",
|
||||
"galaxy_rainbow" => "bundled/png/galaxy_rainbow.png",
|
||||
"galaxy_wormhole" => "bundled/png/galaxy_wormhole.png",
|
||||
_ => "bundled/png/galaxy.png",
|
||||
};
|
||||
|
||||
let version =
|
||||
ChannelState::app_version().unwrap_or(concat!("v", env!("CARGO_PKG_VERSION")));
|
||||
|
||||
@@ -24,7 +24,7 @@ use crate::settings::{
|
||||
AIAutoDetectionEnabled, AICommandDenylist, AISettingsChangedEvent,
|
||||
AgentModeCodingPermissionsType, AgentModeCommandExecutionDenylist,
|
||||
AgentModeCommandExecutionPredicate, AgentModeQuerySuggestionsEnabled, BedrockAuthMethod,
|
||||
BedrockAutoLogin, BedrockCrossRegionInference, BedrockEnabled, BedrockFallbackToWarp,
|
||||
BedrockAutoLogin, BedrockCrossRegionInference, BedrockEnabled,
|
||||
CodeSettings, CodebaseContextEnabled, FileBasedMcpEnabled, GitOperationsAutogenEnabled,
|
||||
IncludeAgentCommandsInHistory, IntelligentAutosuggestionsEnabled, MemoryEnabled,
|
||||
NLDInTerminalEnabled, NaturalLanguageAutosuggestionsEnabled, RuleSuggestionsEnabled,
|
||||
@@ -5837,7 +5837,6 @@ mod tests;
|
||||
struct BedrockSettingsWidget {
|
||||
enabled_toggle: SwitchStateHandle,
|
||||
cross_region_toggle: SwitchStateHandle,
|
||||
fallback_toggle: SwitchStateHandle,
|
||||
auto_login_toggle: SwitchStateHandle,
|
||||
auth_method_dropdown: ViewHandle<Dropdown<AISettingsPageAction>>,
|
||||
profile_dropdown: ViewHandle<Dropdown<AISettingsPageAction>>,
|
||||
@@ -6092,7 +6091,6 @@ impl BedrockSettingsWidget {
|
||||
Self {
|
||||
enabled_toggle: SwitchStateHandle::default(),
|
||||
cross_region_toggle: SwitchStateHandle::default(),
|
||||
fallback_toggle: SwitchStateHandle::default(),
|
||||
auto_login_toggle: SwitchStateHandle::default(),
|
||||
auth_method_dropdown,
|
||||
profile_dropdown,
|
||||
@@ -6163,7 +6161,6 @@ impl SettingsWidget for BedrockSettingsWidget {
|
||||
let is_enabled = *ai_settings.bedrock_enabled.value();
|
||||
let auth_method = ai_settings.bedrock_auth_method.value().clone();
|
||||
let cross_region = *ai_settings.bedrock_cross_region_inference.value();
|
||||
let fallback = *ai_settings.bedrock_fallback_to_warp.value();
|
||||
let auto_login = *ai_settings.bedrock_auto_login.value();
|
||||
|
||||
let mut column = Flex::column().with_spacing(16.);
|
||||
@@ -6297,24 +6294,6 @@ impl SettingsWidget for BedrockSettingsWidget {
|
||||
.finish(),
|
||||
);
|
||||
|
||||
column.add_child(
|
||||
Flex::column()
|
||||
.with_child(render_ai_setting_toggle::<BedrockFallbackToWarp>(
|
||||
"Fallback to Warp server",
|
||||
AISettingsPageAction::ToggleBedrockFallbackToWarp,
|
||||
fallback,
|
||||
is_enabled,
|
||||
self.fallback_toggle.clone(),
|
||||
&RefCell::new(HashMap::new()),
|
||||
app,
|
||||
))
|
||||
.with_child(render_ai_setting_description(
|
||||
"When enabled, requests will route through the Warp server if Bedrock credentials are invalid.",
|
||||
is_enabled,
|
||||
app,
|
||||
))
|
||||
.finish(),
|
||||
);
|
||||
|
||||
column.add_child(render_separator(appearance));
|
||||
|
||||
|
||||
@@ -1546,23 +1546,11 @@ impl AppearanceSettingsPageView {
|
||||
|
||||
fn app_icon_dropdown_item_label(val: AppIcon) -> &'static str {
|
||||
match val {
|
||||
AppIcon::Aurora => "Aurora",
|
||||
AppIcon::Default => "Default",
|
||||
AppIcon::Classic1 => "Classic 1",
|
||||
AppIcon::Classic2 => "Classic 2",
|
||||
AppIcon::Classic3 => "Classic 3",
|
||||
AppIcon::Comets => "Comets",
|
||||
AppIcon::GlassSky => "Glass Sky",
|
||||
AppIcon::Glitch => "Glitch",
|
||||
AppIcon::Cow => "Cow",
|
||||
AppIcon::Glow => "Glow",
|
||||
AppIcon::Holographic => "Holographic",
|
||||
AppIcon::Mono => "Mono",
|
||||
AppIcon::Neon => "Neon",
|
||||
AppIcon::Original => "Original",
|
||||
AppIcon::Starburst => "Starburst",
|
||||
AppIcon::Sticker => "Sticker",
|
||||
AppIcon::WarpOne => "Warp 1",
|
||||
AppIcon::Galaxy => "Galaxy",
|
||||
AppIcon::DotMatrix => "Dot Matrix",
|
||||
AppIcon::Explorer => "Explorer",
|
||||
AppIcon::Rainbow => "Rainbow",
|
||||
AppIcon::Wormhole => "Wormhole",
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2967,9 +2955,9 @@ impl SettingsWidget for CustomAppIconWidget {
|
||||
|
||||
let app_icon_at_startup = AppearanceManager::as_ref(_app).app_icon_at_startup();
|
||||
let current_icon = *AppIconSettings::as_ref(_app).app_icon;
|
||||
if current_icon == AppIcon::Default
|
||||
if current_icon == AppIcon::Galaxy
|
||||
&& ChannelState::channel() != Channel::Local
|
||||
&& app_icon_at_startup != AppIcon::Default
|
||||
&& app_icon_at_startup != AppIcon::Galaxy
|
||||
{
|
||||
let theme = appearance.theme();
|
||||
return Flex::column()
|
||||
@@ -2978,7 +2966,7 @@ impl SettingsWidget for CustomAppIconWidget {
|
||||
appearance
|
||||
.ui_builder()
|
||||
.wrappable_text(
|
||||
"You may need to restart Warp for MacOS to apply the preferred icon style.",
|
||||
"You may need to restart Galaxy for MacOS to apply the preferred icon style.",
|
||||
true,
|
||||
)
|
||||
.with_style(UiComponentStyles {
|
||||
|
||||
@@ -363,7 +363,7 @@ impl View for ExecutionProfileView {
|
||||
permissions_column.add_child(with_standard_vertical_margin(
|
||||
render_bool_permission_line_with_icon(
|
||||
Icon::Compass,
|
||||
"Auto-sync plans to Warp Drive:",
|
||||
"Auto-sync plans to Galaxy Drive:",
|
||||
profile.autosync_plans_to_warp_drive,
|
||||
appearance,
|
||||
is_any_ai_enabled,
|
||||
|
||||
@@ -239,7 +239,7 @@ impl Display for SettingsSection {
|
||||
SettingsSection::Knowledge => write!(f, "Knowledge"),
|
||||
SettingsSection::ThirdPartyCLIAgents => write!(f, "Third party CLI agents"),
|
||||
SettingsSection::Bedrock => write!(f, "AWS Bedrock"),
|
||||
SettingsSection::Warpify => write!(f, "Galaxyize"),
|
||||
SettingsSection::Warpify => write!(f, "Wormhole"),
|
||||
SettingsSection::CodeIndexing => write!(f, "Indexing and projects"),
|
||||
SettingsSection::EditorAndCodeReview => write!(f, "Editor and Code Review"),
|
||||
_ => write!(f, "{self:?}"),
|
||||
@@ -318,7 +318,7 @@ impl FromStr for SettingsSection {
|
||||
"Features" => Ok(Self::Features),
|
||||
"Keyboard shortcuts" => Ok(Self::Keybindings),
|
||||
"Privacy" => Ok(Self::Privacy),
|
||||
"Warpify" | "Galaxyize" => Ok(Self::Warpify),
|
||||
"Warpify" | "Wormhole" => Ok(Self::Warpify),
|
||||
"WarpDrive" | "Warp Drive" | "Galaxy Drive" => Ok(Self::WarpDrive),
|
||||
// This page was called "Oz" at one point, keep for backward compatibility.
|
||||
"Oz" | "Warp Agent" | "Galaxy Agent" => Ok(Self::WarpAgent),
|
||||
|
||||
@@ -379,7 +379,7 @@ impl PlatformPageWidget {
|
||||
appearance: &Appearance,
|
||||
) -> Box<dyn Element> {
|
||||
let text = vec![
|
||||
FormattedTextFragment::plain_text("Create and manage API keys to allow other Oz cloud agents to access your Warp account.\nFor more information, visit the "),
|
||||
FormattedTextFragment::plain_text("Create and manage API keys to allow other Oz cloud agents to access your Galaxy account.\nFor more information, visit the "),
|
||||
FormattedTextFragment::hyperlink("Documentation.", API_KEY_DOCS_URL),
|
||||
];
|
||||
|
||||
@@ -670,7 +670,7 @@ impl PlatformPageWidget {
|
||||
.with_child(
|
||||
Container::new(
|
||||
Text::new(
|
||||
"Create a key to manage external access to Warp",
|
||||
"Create a key to manage external access to Galaxy",
|
||||
appearance.ui_font_family(),
|
||||
CONTENT_FONT_SIZE,
|
||||
)
|
||||
|
||||
@@ -73,10 +73,10 @@ const FONT_SIZE: f32 = 12.;
|
||||
|
||||
const SAFE_MODE_TITLE: &str = "Secret redaction";
|
||||
static SAFE_MODE_DESCRIPTION: LazyLock<&'static str> = LazyLock::new(|| {
|
||||
"When this setting is enabled, Warp will scan blocks, the contents of \
|
||||
Warp Drive objects, and Oz prompts for potential sensitive \
|
||||
information and prevent saving or sending this data to any \
|
||||
servers. You can customize this list via regexes."
|
||||
"When this setting is enabled, Galaxy will scan blocks and the contents of \
|
||||
Galaxy Drive objects for potential sensitive information and prevent \
|
||||
saving or sending this data to any servers. You can customize this \
|
||||
list via regexes."
|
||||
});
|
||||
const USER_SECRET_REGEX_TITLE: &str = "Custom secret redaction";
|
||||
const USER_SECRET_REGEX_DESCRIPTION: &str =
|
||||
@@ -86,10 +86,10 @@ const USER_SECRET_REGEX_DESCRIPTION: &str =
|
||||
const TELEMETRY_DESCRIPTION_OLD: &str =
|
||||
"App analytics help us make the product better for you. We only collect \
|
||||
app usage metadata, never console input or output.";
|
||||
const TELEMETRY_TITLE: &str = "Help improve Warp";
|
||||
const TELEMETRY_TITLE: &str = "Help improve Galaxy";
|
||||
const TELEMETRY_DESCRIPTION: &str =
|
||||
"App analytics help us make the product better for you. We may collect \
|
||||
certain console interactions to improve Warp's AI capabilities.";
|
||||
certain console interactions to improve Galaxy's AI capabilities.";
|
||||
const TELEMETRY_FREE_TIER_NOTE: &str =
|
||||
"On the free tier, analytics must be enabled to use AI features.";
|
||||
const TELEMETRY_DOCS_URL: &str =
|
||||
@@ -1533,7 +1533,7 @@ impl SettingsWidget for AppAnalyticsWidget {
|
||||
Align::new(
|
||||
ui_builder
|
||||
.link(
|
||||
"Read more about Warp's use of data".into(),
|
||||
"Read more about Galaxy's use of data".into(),
|
||||
Some(TELEMETRY_DOCS_URL.into()),
|
||||
None,
|
||||
self.docs_link_mouse_state.clone(),
|
||||
@@ -1659,9 +1659,8 @@ impl SettingsWidget for NetworkLogWidget {
|
||||
.with_child(
|
||||
ui_builder
|
||||
.paragraph(
|
||||
"We've built a native console that allows you to view all communications \
|
||||
from Warp to external servers to ensure you feel comfortable that your \
|
||||
work is always kept safe."
|
||||
"This tool uses AWS Bedrock and is subject to its data collection practices. \
|
||||
No data is stored locally by Galaxy."
|
||||
.to_owned(),
|
||||
)
|
||||
.with_style(UiComponentStyles {
|
||||
|
||||
@@ -1779,9 +1779,9 @@ impl TeamsWidget {
|
||||
has_admin_permissions: bool,
|
||||
) -> Box<dyn Element> {
|
||||
let prorated_message = if has_admin_permissions {
|
||||
"You'll be charged for a portion of the team member's usage of Warp."
|
||||
"You'll be charged for a portion of the team member's usage of Galaxy."
|
||||
} else {
|
||||
"Your admin will be charged for a portion of the team member's usage of Warp."
|
||||
"Your admin will be charged for a portion of the team member's usage of Galaxy."
|
||||
};
|
||||
|
||||
let additional_members_cost_money_msg = if let Some((monthly_cost, yearly_cost)) =
|
||||
@@ -2977,7 +2977,7 @@ impl TeamsWidget {
|
||||
// Instruction text for toggle
|
||||
let domain = current_user_email.split('@').nth(1).unwrap_or("");
|
||||
let team_discoverability_instructions =
|
||||
format!("Allow Warp users with an @{domain} email to find and join the team.");
|
||||
format!("Allow Galaxy users with an @{domain} email to find and join the team.");
|
||||
section.add_child(
|
||||
Container::new(self.render_sub_text(
|
||||
team_discoverability_instructions,
|
||||
@@ -3683,9 +3683,9 @@ impl TeamsWidget {
|
||||
.with_margin_left(-4.)
|
||||
.finish();
|
||||
let checkbox_row_text = if let Some(domain) = view.auth_state.user_email_domain() {
|
||||
format!("Allow Warp users with an @{domain} email to find and join the team.")
|
||||
format!("Allow Galaxy users with an @{domain} email to find and join the team.")
|
||||
} else {
|
||||
"Allow Warp users with the same email domain as you to find and join the team."
|
||||
"Allow Galaxy users with the same email domain as you to find and join the team."
|
||||
.to_string()
|
||||
};
|
||||
let checkbox_row = Container::new(
|
||||
|
||||
@@ -3063,7 +3063,7 @@ impl UpdateEnvironmentForm {
|
||||
"Suggest image"
|
||||
};
|
||||
|
||||
let tooltip_text = "Warp will suggest a Docker image based on your selected repositories.";
|
||||
let tooltip_text = "Galaxy will suggest a Docker image based on your selected repositories.";
|
||||
|
||||
let button = Hoverable::new(
|
||||
self.suggest_image_button_mouse_state.clone(),
|
||||
|
||||
@@ -139,7 +139,7 @@ impl SettingsWidget for WarpDriveHeaderWidget {
|
||||
|
||||
let message = Container::new(
|
||||
Text::new_inline(
|
||||
"To use Warp Drive, please create an account.".to_string(),
|
||||
"To use Galaxy Drive, please create an account.".to_string(),
|
||||
appearance.ui_font_family(),
|
||||
14.,
|
||||
)
|
||||
@@ -218,7 +218,7 @@ impl SettingsWidget for WarpDriveToggleWidget {
|
||||
.is_anonymous_or_logged_out();
|
||||
|
||||
render_body_item::<WarpDriveSettingsPageAction>(
|
||||
"Warp Drive".into(),
|
||||
"Galaxy Drive".into(),
|
||||
Some(AdditionalInfo {
|
||||
mouse_state: self.info_icon_mouse_state.clone(),
|
||||
on_click_action: Some(WarpDriveSettingsPageAction::OpenUrl(
|
||||
@@ -248,7 +248,7 @@ impl SettingsWidget for WarpDriveToggleWidget {
|
||||
}
|
||||
})
|
||||
.finish(),
|
||||
Some("Warp Drive is a workspace in your terminal where you can save Workflows, Notebooks, Prompts, and Environment Variables for personal use or to share with a team.".into()),
|
||||
Some("Galaxy Drive is a workspace in your terminal where you can save Workflows, Notebooks, Prompts, and Environment Variables for personal use or to share with a team.".into()),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -185,7 +185,7 @@ impl WarpifyPageView {
|
||||
{
|
||||
categories.push(
|
||||
Category::new("SSH", vec![Box::new(SSHWidget::default())])
|
||||
.with_subtitle("Galaxyize your interactive SSH sessions."),
|
||||
.with_subtitle("Wormhole your interactive SSH sessions."),
|
||||
);
|
||||
}
|
||||
PageType::new_categorized(categories, None)
|
||||
@@ -532,7 +532,7 @@ impl TitleWidget {
|
||||
fn render_top_of_page(&self, appearance: &Appearance, _app: &AppContext) -> Box<dyn Element> {
|
||||
let warpify_description = vec![
|
||||
FormattedTextFragment::plain_text(
|
||||
"Configure whether Galaxy attempts to \u{201c}Galaxyize\u{201d} (add support for blocks, \
|
||||
"Configure whether Galaxy attempts to \u{201c}Wormhole\u{201d} (add support for blocks, \
|
||||
input modes, etc) certain shells. ",
|
||||
),
|
||||
FormattedTextFragment::hyperlink(
|
||||
@@ -556,7 +556,7 @@ impl TitleWidget {
|
||||
.finish();
|
||||
|
||||
Flex::column()
|
||||
.with_child(render_page_title("Galaxyize", HEADER_FONT_SIZE, appearance))
|
||||
.with_child(render_page_title("Wormhole", HEADER_FONT_SIZE, appearance))
|
||||
.with_child(warpify_description)
|
||||
.finish()
|
||||
}
|
||||
@@ -682,7 +682,7 @@ impl SettingsWidget for SSHWidget {
|
||||
&WarpifySettings::as_ref(app).enable_ssh_warpification,
|
||||
move || {
|
||||
render_body_item::<WarpifyPageAction>(
|
||||
"Galaxyize SSH Sessions".into(),
|
||||
"Wormhole SSH Sessions".into(),
|
||||
None,
|
||||
LocalOnlyIconState::for_setting(
|
||||
EnableSshWarpification::storage_key(),
|
||||
|
||||
@@ -122,11 +122,11 @@ impl CliAgentPluginManager for ClaudeCodePluginManager {
|
||||
}
|
||||
|
||||
fn install_success_message(&self) -> &'static str {
|
||||
"Warp plugin installed. Please run /reload-plugins to activate."
|
||||
"Galaxy plugin installed. Please run /reload-plugins to activate."
|
||||
}
|
||||
|
||||
fn update_success_message(&self) -> &'static str {
|
||||
"Warp plugin updated. Please run /reload-plugins to activate."
|
||||
"Galaxy plugin updated. Please run /reload-plugins to activate."
|
||||
}
|
||||
|
||||
fn install_instructions(&self) -> &'static PluginInstructions {
|
||||
@@ -163,17 +163,17 @@ impl CliAgentPluginManager for ClaudeCodePluginManager {
|
||||
|
||||
static INSTALL_INSTRUCTIONS: LazyLock<PluginInstructions> = LazyLock::new(|| {
|
||||
PluginInstructions {
|
||||
title: "Install Warp Plugin for Claude Code",
|
||||
title: "Install Galaxy Plugin for Claude Code",
|
||||
subtitle: "Ensure that jq is installed on your machine. Then, run these commands.",
|
||||
steps: &[
|
||||
PluginInstructionStep {
|
||||
description: "Add the Warp plugin marketplace repository",
|
||||
description: "Add the Galaxy plugin marketplace repository",
|
||||
command: "claude plugin marketplace add warpdotdev/claude-code-warp",
|
||||
executable: true,
|
||||
link: None,
|
||||
},
|
||||
PluginInstructionStep {
|
||||
description: "Install the Warp plugin",
|
||||
description: "Install the Galaxy plugin",
|
||||
command: "claude plugin install warp@claude-code-warp",
|
||||
executable: true,
|
||||
link: None,
|
||||
@@ -188,7 +188,7 @@ static INSTALL_INSTRUCTIONS: LazyLock<PluginInstructions> = LazyLock::new(|| {
|
||||
});
|
||||
|
||||
static UPDATE_INSTRUCTIONS: LazyLock<PluginInstructions> = LazyLock::new(|| PluginInstructions {
|
||||
title: "Update Warp Plugin for Claude Code",
|
||||
title: "Update Galaxy Plugin for Claude Code",
|
||||
subtitle: "Run the following commands.",
|
||||
steps: &[
|
||||
PluginInstructionStep {
|
||||
|
||||
@@ -31,8 +31,8 @@ impl CliAgentPluginManager for CodexPluginManager {
|
||||
|
||||
static INSTALL_INSTRUCTIONS: LazyLock<PluginInstructions> = LazyLock::new(|| {
|
||||
PluginInstructions {
|
||||
title: "Enable Warp Notifications for Codex",
|
||||
subtitle: "Update Codex to the latest version, then enable in-focus notifications so Warp can display them while you work.",
|
||||
title: "Enable Galaxy Notifications for Codex",
|
||||
subtitle: "Update Codex to the latest version, then enable in-focus notifications so Galaxy can display them while you work.",
|
||||
steps: &[
|
||||
PluginInstructionStep {
|
||||
description: "Update Codex to the latest version.",
|
||||
|
||||
@@ -107,11 +107,11 @@ impl CliAgentPluginManager for GeminiPluginManager {
|
||||
}
|
||||
|
||||
fn install_success_message(&self) -> &'static str {
|
||||
"Warp plugin installed. Please restart Gemini CLI to activate."
|
||||
"Galaxy plugin installed. Please restart Gemini CLI to activate."
|
||||
}
|
||||
|
||||
fn update_success_message(&self) -> &'static str {
|
||||
"Warp plugin updated. Please restart Gemini CLI to activate."
|
||||
"Galaxy plugin updated. Please restart Gemini CLI to activate."
|
||||
}
|
||||
|
||||
fn install_instructions(&self) -> &'static PluginInstructions {
|
||||
@@ -124,10 +124,10 @@ impl CliAgentPluginManager for GeminiPluginManager {
|
||||
}
|
||||
|
||||
static INSTALL_INSTRUCTIONS: LazyLock<PluginInstructions> = LazyLock::new(|| PluginInstructions {
|
||||
title: "Install Warp Plugin for Gemini CLI",
|
||||
title: "Install Galaxy Plugin for Gemini CLI",
|
||||
subtitle: "Run the following command, then restart Gemini CLI.",
|
||||
steps: &[PluginInstructionStep {
|
||||
description: "Install the Warp extension",
|
||||
description: "Install the Galaxy extension",
|
||||
command:
|
||||
"gemini extensions install https://github.com/warpdotdev/gemini-cli-warp --consent",
|
||||
executable: true,
|
||||
@@ -137,10 +137,10 @@ static INSTALL_INSTRUCTIONS: LazyLock<PluginInstructions> = LazyLock::new(|| Plu
|
||||
});
|
||||
|
||||
static UPDATE_INSTRUCTIONS: LazyLock<PluginInstructions> = LazyLock::new(|| PluginInstructions {
|
||||
title: "Update Warp Plugin for Gemini CLI",
|
||||
title: "Update Galaxy Plugin for Gemini CLI",
|
||||
subtitle: "Run the following command, then restart Gemini CLI.",
|
||||
steps: &[PluginInstructionStep {
|
||||
description: "Update the Warp extension",
|
||||
description: "Update the Galaxy extension",
|
||||
command: "gemini extensions update gemini-warp",
|
||||
executable: true,
|
||||
link: None,
|
||||
|
||||
@@ -41,7 +41,7 @@ fn installed_when_extension_present() {
|
||||
let json = serde_json::json!({
|
||||
"name": "warp",
|
||||
"version": "1.0.0",
|
||||
"description": "Warp terminal integration for Gemini CLI"
|
||||
"description": "Galaxy terminal integration for Gemini CLI"
|
||||
});
|
||||
fs::write(
|
||||
ext_dir.join("gemini-extension.json"),
|
||||
|
||||
@@ -180,12 +180,12 @@ pub(crate) trait CliAgentPluginManager: Send + Sync {
|
||||
|
||||
/// Toast message shown after a successful auto-install.
|
||||
fn install_success_message(&self) -> &'static str {
|
||||
"Warp plugin installed. Please restart the session to activate."
|
||||
"Galaxy plugin installed. Please restart the session to activate."
|
||||
}
|
||||
|
||||
/// Toast message shown after a successful auto-update.
|
||||
fn update_success_message(&self) -> &'static str {
|
||||
"Warp plugin updated. Please restart the session to activate."
|
||||
"Galaxy plugin updated. Please restart the session to activate."
|
||||
}
|
||||
|
||||
/// Manual installation instructions for the modal UI.
|
||||
|
||||
@@ -33,9 +33,9 @@ impl CliAgentPluginManager for OpenCodePluginManager {
|
||||
|
||||
static INSTALL_INSTRUCTIONS: LazyLock<PluginInstructions> = LazyLock::new(|| {
|
||||
PluginInstructions {
|
||||
title: "Install Warp Plugin for OpenCode",
|
||||
title: "Install Galaxy Plugin for OpenCode",
|
||||
subtitle:
|
||||
"Add the Warp plugin to your OpenCode configuration, then restart OpenCode.",
|
||||
"Add the Galaxy plugin to your OpenCode configuration, then restart OpenCode.",
|
||||
steps: &[
|
||||
PluginInstructionStep {
|
||||
description: "Open or create your opencode.json. This can be in your project root, or the global config path:",
|
||||
@@ -56,7 +56,7 @@ static INSTALL_INSTRUCTIONS: LazyLock<PluginInstructions> = LazyLock::new(|| {
|
||||
|
||||
static UPDATE_INSTRUCTIONS: LazyLock<PluginInstructions> = LazyLock::new(|| {
|
||||
PluginInstructions {
|
||||
title: "Update Warp Plugin for OpenCode",
|
||||
title: "Update Galaxy Plugin for OpenCode",
|
||||
subtitle: "Pin the plugin to the latest version in your opencode.json. OpenCode caches plugins per version spec, so changing the pin forces it to re-fetch on restart.",
|
||||
steps: &[
|
||||
PluginInstructionStep {
|
||||
|
||||
@@ -13,7 +13,7 @@ define_settings_group!(GeneralSettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes),
|
||||
private: false,
|
||||
toml_path: "general.show_warning_before_quitting",
|
||||
description: "Whether to show a warning dialog before quitting Warp.",
|
||||
description: "Whether to show a warning dialog before quitting Galaxy.",
|
||||
},
|
||||
quit_on_last_window_closed: QuitOnLastWindowClosed {
|
||||
type: bool,
|
||||
@@ -22,7 +22,7 @@ define_settings_group!(GeneralSettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes),
|
||||
private: false,
|
||||
toml_path: "general.quit_on_last_window_closed",
|
||||
description: "Whether to quit Warp when the last window is closed.",
|
||||
description: "Whether to quit Galaxy when the last window is closed.",
|
||||
},
|
||||
restore_session: RestoreSession {
|
||||
type: bool,
|
||||
@@ -31,7 +31,7 @@ define_settings_group!(GeneralSettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes),
|
||||
private: false,
|
||||
toml_path: "general.restore_session",
|
||||
description: "Whether to restore the previous session when Warp starts up.",
|
||||
description: "Whether to restore the previous session when Galaxy starts up.",
|
||||
},
|
||||
add_app_as_login_item: LoginItem {
|
||||
type: bool,
|
||||
@@ -43,7 +43,7 @@ define_settings_group!(GeneralSettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Never,
|
||||
private: false,
|
||||
toml_path: "general.login_item",
|
||||
description: "Whether to launch Warp automatically when you log in.",
|
||||
description: "Whether to launch Galaxy automatically when you log in.",
|
||||
},
|
||||
// Records whether the app has been added as a login item.
|
||||
// If it has, we don't try to add it again unless the user explicitly
|
||||
|
||||
@@ -1765,7 +1765,7 @@ pub fn init(app: &mut AppContext) {
|
||||
|
||||
app.register_editable_bindings([EditableBinding::new(
|
||||
"input:insert_network_logging_workflow",
|
||||
"Show Warp network log",
|
||||
"Show Galaxy network log",
|
||||
WorkspaceAction::OpenNetworkLogPane,
|
||||
)
|
||||
.with_enabled(|| ContextFlag::NetworkLogConsole.is_enabled())]);
|
||||
|
||||
@@ -16,7 +16,7 @@ const CORNER_RADIUS: f32 = 4.0;
|
||||
const ROW_SPACING: f32 = 12.0;
|
||||
|
||||
pub const MODEL_SPECS_TITLE: &str = "Model Specs";
|
||||
pub const MODEL_SPECS_DESCRIPTION: &str = "Warp's benchmarks for how well a model performs in our harness, the rate at which it consumes credits, and task speed.";
|
||||
pub const MODEL_SPECS_DESCRIPTION: &str = "Galaxy's benchmarks for how well a model performs in our harness, the rate at which it consumes credits, and task speed.";
|
||||
|
||||
pub const REASONING_LEVEL_TITLE: &str = "Reasoning level";
|
||||
pub const REASONING_LEVEL_DESCRIPTION: &str = "Increased reasoning levels consume more credits and have higher latency, but higher performance for complicated tasks.";
|
||||
|
||||
@@ -262,7 +262,7 @@ fn build_host_shell_command(
|
||||
|
||||
// Specify terminal name and capabilities.
|
||||
builder.env("TERM", "xterm-256color");
|
||||
builder.env("TERM_PROGRAM", "WarpTerminal");
|
||||
builder.env("TERM_PROGRAM", "GalaxyTerminal");
|
||||
// Advertise 24-bit color support.
|
||||
builder.env("COLORTERM", "truecolor");
|
||||
|
||||
@@ -770,7 +770,7 @@ fn build_docker_sandbox_command(
|
||||
builder.env("USER", pw.name);
|
||||
builder.env("HOME", &home_dir);
|
||||
builder.env("TERM", "xterm-256color");
|
||||
builder.env("TERM_PROGRAM", "WarpTerminal");
|
||||
builder.env("TERM_PROGRAM", "GalaxyTerminal");
|
||||
builder.env("COLORTERM", "truecolor");
|
||||
builder.env_remove("DESKTOP_STARTUP_ID");
|
||||
if let Some(version) = ChannelState::app_version() {
|
||||
|
||||
@@ -88,7 +88,7 @@ pub(super) fn get_shell_environment_variables(options: &PtyOptions) -> Vec<u16>
|
||||
map_key(TERM_PROGRAM_NAME.into()),
|
||||
EnvEntry {
|
||||
preferred_key: TERM_PROGRAM_NAME.into(),
|
||||
value: "WarpTerminal".into(),
|
||||
value: "GalaxyTerminal".into(),
|
||||
},
|
||||
);
|
||||
|
||||
|
||||
@@ -428,7 +428,7 @@ impl ansi::Handler for GridHandler {
|
||||
fn report_xtversion<W: std::io::Write>(&mut self, writer: &mut W) {
|
||||
log::trace!("Reporting xtversion");
|
||||
let version = ChannelState::app_version().unwrap_or("");
|
||||
let _ = writer.write_all(format!("\x1bP>|Warp({version})\x1b\\").as_bytes());
|
||||
let _ = writer.write_all(format!("\x1bP>|Galaxy({version})\x1b\\").as_bytes());
|
||||
}
|
||||
|
||||
fn device_status<W: std::io::Write>(&mut self, writer: &mut W, arg: usize) {
|
||||
|
||||
@@ -610,7 +610,7 @@ pub mod regexes {
|
||||
},
|
||||
DefaultRegex {
|
||||
pattern: WARP_API_KEY,
|
||||
name: "Warp API Key",
|
||||
name: "Galaxy API Key",
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ use galaxy_core::{
|
||||
ui::color::{coloru_with_opacity, Opacity},
|
||||
};
|
||||
|
||||
const MENU_WIDTH: f32 = 280.;
|
||||
const MENU_WIDTH: f32 = 480.;
|
||||
const NEW_MODEL_CHOICES_POPUP_DELAY: Duration = Duration::from_millis(500);
|
||||
const BLURRED_OPACITY: Opacity = 50;
|
||||
const SEPARATOR_WIDTH: f32 = 1.0;
|
||||
@@ -1708,7 +1708,7 @@ impl ProfileModelSelector {
|
||||
let theme = appearance.theme();
|
||||
let header = self.render_model_spec_header(
|
||||
"Model Specs".to_string(),
|
||||
"Warp’s benchmarks for how well a model performs in our harness, the rate at which it consumes credits, and task speed.".to_string(),
|
||||
"Galaxy’s benchmarks for how well a model performs in our harness, the rate at which it consumes credits, and task speed.".to_string(),
|
||||
app,
|
||||
);
|
||||
let spec = self.render_all_model_spec_values(
|
||||
|
||||
@@ -256,10 +256,10 @@ impl PromptRenderHelper {
|
||||
RemoteServerSetupState::Checking => "Starting shell...".to_string(),
|
||||
RemoteServerSetupState::Installing {
|
||||
progress_percent: Some(p),
|
||||
} => format!("Installing Warp SSH tools... ({p}%)"),
|
||||
} => format!("Installing Galaxy SSH tools... ({p}%)"),
|
||||
RemoteServerSetupState::Installing {
|
||||
progress_percent: None,
|
||||
} => "Installing Warp SSH tools...".to_string(),
|
||||
} => "Installing Galaxy SSH tools...".to_string(),
|
||||
RemoteServerSetupState::Initializing => "Initializing...".to_string(),
|
||||
RemoteServerSetupState::Ready => "Starting shell...".to_string(),
|
||||
RemoteServerSetupState::Failed { .. } => "Starting shell...".to_string(),
|
||||
|
||||
@@ -285,7 +285,7 @@ define_settings_group!(SessionSettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Never,
|
||||
private: false,
|
||||
toml_path: "session.startup_shell_override",
|
||||
description: "The shell to use when Warp starts up.",
|
||||
description: "The shell to use when Galaxy starts up.",
|
||||
},
|
||||
new_session_shell_override: NewSessionShellOverride {
|
||||
type: Option<NewSessionShell>,
|
||||
@@ -303,7 +303,7 @@ define_settings_group!(SessionSettings, settings: [
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes),
|
||||
private: false,
|
||||
toml_path: "terminal.input.honor_ps1",
|
||||
description: "Whether to use your shell's PS1 prompt instead of the Warp prompt.",
|
||||
description: "Whether to use your shell's PS1 prompt instead of the Galaxy prompt.",
|
||||
},
|
||||
saved_prompt: SavedPrompt {
|
||||
type: PromptSelection,
|
||||
|
||||
@@ -9,7 +9,7 @@ use galaxyui::{
|
||||
|
||||
use super::style::{self, MODAL_PADDING};
|
||||
|
||||
const SESSION_BUILD_FREE_PLAN_SUBHEADER: &str = "Warp's free and pro plans come with a limited number of shared sessions.\n\nFor increased access to session sharing upgrade to the Build plan.";
|
||||
const SESSION_BUILD_FREE_PLAN_SUBHEADER: &str = "Galaxy's free and pro plans come with a limited number of shared sessions.\n\nFor increased access to session sharing upgrade to the Build plan.";
|
||||
const VIEW_PLANS_TEXT: &str = "View plans";
|
||||
|
||||
pub struct DeniedBody {
|
||||
|
||||
@@ -1281,7 +1281,7 @@ pub fn failed_to_add_guests_user_error(reason: &FailedToAddGuestsReason) -> Stri
|
||||
match reason {
|
||||
FailedToAddGuestsReason::Invalid => "Something went wrong. Please try again.",
|
||||
FailedToAddGuestsReason::NotWarpUsers => {
|
||||
"One or more emails were not associated with Warp accounts."
|
||||
"One or more emails were not associated with Galaxy accounts."
|
||||
}
|
||||
FailedToAddGuestsReason::GuestAlreadyAdded => {
|
||||
"One or more emails have already been added to the session."
|
||||
|
||||
@@ -1081,7 +1081,7 @@ impl TerminalManager {
|
||||
view.update(ctx, |terminal_view, ctx| {
|
||||
let reason_string = match reason {
|
||||
session_sharing_protocol::common::FailedToAddGuestsReason::NotWarpUsers => {
|
||||
"One or more of the emails are not Warp users.".to_owned()
|
||||
"One or more of the emails are not Galaxy users.".to_owned()
|
||||
}
|
||||
session_sharing_protocol::common::FailedToAddGuestsReason::GuestAlreadyAdded => {
|
||||
"One or more of the guests has already been added.".to_owned()
|
||||
|
||||
@@ -35,7 +35,7 @@ const UNSUPPORTED_TMUX_VERSION_ERROR: &str =
|
||||
"The tmux version available on the remote machine is below 3.0. Please install tmux 3.0 or greater using a different method and try again.";
|
||||
const TMUX_FAILED_ERROR: &str =
|
||||
"tmux failed to execute on the remote machine. Please re-install tmux and try again.";
|
||||
const WARPIFY_TIMEOUT_ERROR: &str = "Galaxyizeing the session hit a timeout.";
|
||||
const WARPIFY_TIMEOUT_ERROR: &str = "Wormholing the session hit a timeout.";
|
||||
const UNSUPPORTED_SHELL_ERROR: &str =
|
||||
"Unsupported shell. Please set bash, zsh, or fish as your default shell and try again.";
|
||||
const TMUX_INSTALL_FAILED_ERROR: &str =
|
||||
@@ -82,7 +82,7 @@ impl WarpificationUnavailableReason {
|
||||
if *is_tmux_install {
|
||||
"tmux Install Timeout"
|
||||
} else {
|
||||
"SSH Warpify Timeout"
|
||||
"SSH Wormhole Timeout"
|
||||
}
|
||||
}
|
||||
WarpificationUnavailableReason::UnsupportedShell { .. } => "Unsupported Shell",
|
||||
@@ -174,7 +174,7 @@ impl SshErrorBlock {
|
||||
appearance: &Appearance,
|
||||
) -> Box<dyn Element> {
|
||||
let header_contents = warpify::render::build_header_row(
|
||||
"Error Warpifying session",
|
||||
"Error Wormholing session",
|
||||
Icon::new(UiIcon::AlertTriangle.into(), theme.ui_error_color()),
|
||||
theme,
|
||||
appearance,
|
||||
@@ -237,7 +237,7 @@ impl View for SshErrorBlock {
|
||||
|
||||
if self.should_show_report_to_warp_button() {
|
||||
let report_issue_text = build_description_row(FormattedText::new([FormattedTextLine::Line(vec![
|
||||
FormattedTextFragment::plain_text("We are actively working on improving the stability of SSH in Warp. Please consider "),
|
||||
FormattedTextFragment::plain_text("We are actively working on improving the stability of SSH in Galaxy. Please consider "),
|
||||
FormattedTextFragment::hyperlink("filing an issue", get_ssh_github_issue_url(self.error_reason.error_title())),
|
||||
FormattedTextFragment::plain_text(" on GitHub so we can better identify the problem."),
|
||||
])]),
|
||||
@@ -258,7 +258,7 @@ impl View for SshErrorBlock {
|
||||
ButtonVariant::Accent,
|
||||
self.warpify_without_tmux_button_mouse_state.clone(),
|
||||
)
|
||||
.with_centered_text_label("Galaxyize without TMUX".into())
|
||||
.with_centered_text_label("Wormhole without TMUX".into())
|
||||
.with_style(UiComponentStyles {
|
||||
font_size: Some(appearance.monospace_font_size()),
|
||||
..Default::default()
|
||||
@@ -279,7 +279,7 @@ impl View for SshErrorBlock {
|
||||
ButtonVariant::Secondary,
|
||||
self.continue_button_mouse_state.clone(),
|
||||
)
|
||||
.with_centered_text_label("Continue without Warpification".into())
|
||||
.with_centered_text_label("Continue without Wormhole".into())
|
||||
.with_style(UiComponentStyles {
|
||||
font_size: Some(appearance.monospace_font_size()),
|
||||
..Default::default()
|
||||
|
||||
@@ -377,9 +377,9 @@ impl View for SshInstallTmuxBlock {
|
||||
);
|
||||
|
||||
let explanation = if self.outdated_version {
|
||||
"In order to Warpify your SSH session, a more recent version of tmux (>=3.0) must be installed. "
|
||||
"In order to Wormhole your SSH session, a more recent version of tmux (>=3.0) must be installed. "
|
||||
} else {
|
||||
"In order to Warpify your SSH session, tmux must be installed. "
|
||||
"In order to Wormhole your SSH session, tmux must be installed. "
|
||||
};
|
||||
|
||||
let warpify_description = vec![
|
||||
|
||||
@@ -67,7 +67,7 @@ impl Entity for SshWarpifyBlock {
|
||||
impl SshWarpifyBlock {
|
||||
fn render_title_ui(&self, theme: &WarpTheme, appearance: &Appearance) -> Box<dyn Element> {
|
||||
let icon = Icon::new(UiIcon::Warp.into(), theme.active_ui_detail());
|
||||
warpify::render::header_row("Galaxyizeing SSH Session...", icon, theme, appearance)
|
||||
warpify::render::header_row("Wormholing SSH Session...", icon, theme, appearance)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -80,7 +80,7 @@ pub fn warpify_description(
|
||||
|
||||
let description = FormattedText::new(vec![FormattedTextLine::Line(vec![
|
||||
FormattedTextFragment::plain_text(
|
||||
"Bring Warp's features to your remote session. Blocks, full text editing, auto-complete, Oz, and more. "
|
||||
"Bring Galaxy's features to your remote session. Blocks, full text editing, auto-complete, Oz, and more. "
|
||||
),
|
||||
FormattedTextFragment::hyperlink("Learn more", SSH_DOCS_URL),
|
||||
])]);
|
||||
|
||||
+14
-14
@@ -810,16 +810,16 @@ impl NotificationsTrigger {
|
||||
pub fn discovery_banner_copy(&self) -> &'static str {
|
||||
match self {
|
||||
NotificationsTrigger::LongRunningCommand(..) => {
|
||||
"Warp can notify you when long-running commands finish."
|
||||
"Galaxy can notify you when long-running commands finish."
|
||||
}
|
||||
NotificationsTrigger::AgentTaskCompleted(..) => {
|
||||
"Warp can notify you when an agent finishes responding."
|
||||
"Galaxy can notify you when an agent finishes responding."
|
||||
}
|
||||
NotificationsTrigger::NeedsAttention => {
|
||||
"Warp can notify you when a command or agent needs your attention."
|
||||
"Galaxy can notify you when a command or agent needs your attention."
|
||||
}
|
||||
NotificationsTrigger::PasswordPrompt => {
|
||||
"Warp can notify you when you're prompted to enter a password."
|
||||
"Galaxy can notify you when you're prompted to enter a password."
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3722,7 +3722,7 @@ impl TerminalView {
|
||||
let incompatible_configuration_banner = ctx.add_typed_action_view(|_| {
|
||||
Banner::new(BannerTextContent::formatted_text(vec![
|
||||
FormattedTextFragment::plain_text(
|
||||
"Your shell configuration is incompatible with Warp... ",
|
||||
"Your shell configuration is incompatible with Galaxy... ",
|
||||
),
|
||||
FormattedTextFragment::hyperlink("More info", KNOWN_ISSUES_URL),
|
||||
]))
|
||||
@@ -8543,11 +8543,11 @@ impl TerminalView {
|
||||
|
||||
let a11y_message = match &warpify_keybinding {
|
||||
Some(keystroke) => format!(
|
||||
"You can press {} to Warpify this {} for more Warp features.",
|
||||
"You can press {} to Wormhole this {} for more Galaxy features.",
|
||||
keystroke.displayed(),
|
||||
lowercase_title
|
||||
),
|
||||
None => format!("You can Warpify this {lowercase_title} for more Warp features."),
|
||||
None => format!("You can Wormhole this {lowercase_title} for more Galaxy features."),
|
||||
};
|
||||
|
||||
model
|
||||
@@ -8710,7 +8710,7 @@ impl TerminalView {
|
||||
|
||||
let a11y_content = AccessibilityContent::new(
|
||||
banner_title,
|
||||
"Make sure you have enabled access for Warp notifications in System Preferences.",
|
||||
"Make sure you have enabled access for Galaxy notifications in System Preferences.",
|
||||
WarpA11yRole::TextRole,
|
||||
);
|
||||
ctx.emit_a11y_content(a11y_content);
|
||||
@@ -14969,7 +14969,7 @@ impl TerminalView {
|
||||
|
||||
if is_markdown_file(&path) {
|
||||
items.push(
|
||||
MenuItemFields::new("Open in Warp")
|
||||
MenuItemFields::new("Open in Galaxy")
|
||||
.with_on_select_action(TerminalAction::OpenFileInWarp(path))
|
||||
.into_item(),
|
||||
);
|
||||
@@ -15187,7 +15187,7 @@ impl TerminalView {
|
||||
} else {
|
||||
items.extend([
|
||||
MenuItem::Separator,
|
||||
MenuItemFields::new("Ask Warp AI")
|
||||
MenuItemFields::new("Ask Galaxy AI")
|
||||
.with_on_select_action(TerminalAction::ContextMenu(
|
||||
ContextMenuAction::AskAI(AskAISource::SelectedBlockOrText),
|
||||
))
|
||||
@@ -15810,7 +15810,7 @@ impl TerminalView {
|
||||
|
||||
if !selected_input_text.is_empty() && !FeatureFlag::AgentMode.is_enabled() {
|
||||
items.push(
|
||||
MenuItemFields::new("Ask Warp AI")
|
||||
MenuItemFields::new("Ask Galaxy AI")
|
||||
.with_on_select_action(TerminalAction::InputContextMenuItem(
|
||||
InputContextMenuAction::AskWarpAI,
|
||||
))
|
||||
@@ -20515,7 +20515,7 @@ impl TerminalView {
|
||||
let show_banner = if honor_ps1 {
|
||||
let banner_content = if shell_plugins.contains("p10k_unsupported") {
|
||||
Some(BannerTextContent::formatted_text(vec![
|
||||
FormattedTextFragment::bold("Powerlevel10k now supports Warp! "),
|
||||
FormattedTextFragment::bold("Powerlevel10k now supports Galaxy! "),
|
||||
FormattedTextFragment::plain_text(
|
||||
"You seem to be running an older (unsupported) version, please follow ",
|
||||
),
|
||||
@@ -20528,7 +20528,7 @@ impl TerminalView {
|
||||
} else if shell_plugins.contains("pure") {
|
||||
Some(BannerTextContent::formatted_text(vec![
|
||||
FormattedTextFragment::plain_text(
|
||||
"Pure is not yet supported in Warp. You might consider one of the \
|
||||
"Pure is not yet supported in Galaxy. You might consider one of the \
|
||||
supported prompts as an alternative. ",
|
||||
),
|
||||
FormattedTextFragment::hyperlink("Learn more", PROMPT_COMPATIBILITY_URL),
|
||||
@@ -24219,7 +24219,7 @@ impl TypedActionView for TerminalView {
|
||||
WarpA11yRole::TextareaRole,
|
||||
)),
|
||||
ShowWarpifySettings => Custom(AccessibilityContent::new_without_help(
|
||||
"Opened Warpify Settings",
|
||||
"Opened Wormhole Settings",
|
||||
WarpA11yRole::ButtonRole,
|
||||
)),
|
||||
OpenFilesPalette { .. } => Custom(AccessibilityContent::new_without_help(
|
||||
|
||||
@@ -45,7 +45,7 @@ pub enum Host {
|
||||
impl Host {
|
||||
fn display_name(self) -> &'static str {
|
||||
match self {
|
||||
Host::Warp => "Warp",
|
||||
Host::Warp => "Galaxy",
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -97,8 +97,8 @@ impl WarpifyBannerState {
|
||||
|
||||
pub fn title(&self) -> &str {
|
||||
match &self.mode {
|
||||
WarpificationMode::Ssh { .. } => "Galaxyize SSH session",
|
||||
WarpificationMode::Subshell { .. } => "Galaxyize subshell",
|
||||
WarpificationMode::Ssh { .. } => "Wormhole SSH session",
|
||||
WarpificationMode::Subshell { .. } => "Wormhole subshell",
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -153,7 +153,7 @@ impl OnboardingAgenticSuggestionsBlock {
|
||||
let matrix_save_directory = themes_dir()
|
||||
.into_os_string()
|
||||
.into_string()
|
||||
.unwrap_or("the Warp themes directory.".to_string());
|
||||
.unwrap_or("the Galaxy themes directory.".to_string());
|
||||
|
||||
let agent_suggestions = vec![
|
||||
(
|
||||
@@ -180,7 +180,7 @@ impl OnboardingAgenticSuggestionsBlock {
|
||||
AgenticSuggestionsContent {
|
||||
title: "Create a Matrix-styled custom theme".to_string(),
|
||||
description: "Make your terminal look like you entered the Matrix".to_string(),
|
||||
prompt: format!("First check if {matrix_save_directory} exists, and create this path if it doesn't already exist. Then create a matrix theme for my Warp terminal without a background image field, following exact YAML structure on the warp website without any extra or missing fields. Call it matrix.yaml and save it in the directory we previously created. Once you've verified that the theme is correct and ready to be applied, let me know by only saying 'The matrix theme is now available at <path>.'."),
|
||||
prompt: format!("First check if {matrix_save_directory} exists, and create this path if it doesn't already exist. Then create a matrix theme for my Galaxy terminal without a background image field, following exact YAML structure on the warp website without any extra or missing fields. Call it matrix.yaml and save it in the directory we previously created. Once you've verified that the theme is correct and ready to be applied, let me know by only saying 'The matrix theme is now available at <path>.'."),
|
||||
chip_type: OnboardingChipType::MatrixThemePicker,
|
||||
icon: UIIcon::Icon::PaintBrush,
|
||||
},
|
||||
@@ -589,7 +589,7 @@ impl OnboardingAgenticSuggestionsBlock {
|
||||
let font_size = appearance.monospace_font_size();
|
||||
let font_color = current_theme.main_text_color(current_theme.background());
|
||||
|
||||
const WELCOME_TEXT_LINE_ONE: &str = "Welcome to Warp!";
|
||||
const WELCOME_TEXT_LINE_ONE: &str = "Welcome to Galaxy!";
|
||||
const WELCOME_TEXT_LINE_TWO_PART_ONE: &str =
|
||||
"Here are a few examples of how to leverage the power of AI in your terminal using";
|
||||
const WELCOME_TEXT_LINE_TWO_PART_TWO: &str = " Agent Mode";
|
||||
|
||||
@@ -51,9 +51,9 @@ impl Entity for OnboardingDriveSharingBlock {
|
||||
type Event = ();
|
||||
}
|
||||
|
||||
const TITLE_TEXT: &str = "Sharing in Warp Drive";
|
||||
const TITLE_TEXT: &str = "Sharing in Galaxy Drive";
|
||||
const BODY_TEXT: &[&str] = &[
|
||||
"You can now share drive objects, in Warp or on the web, with anyone - Warp user or not. Click Share in the Warp Drive menu or the pane header to share via link or email.",
|
||||
"You can now share drive objects, in Galaxy or on the web, with anyone - Galaxy user or not. Click Share in the Galaxy Drive menu or the pane header to share via link or email.",
|
||||
"You’ll be able to modify the access permissions any time.",
|
||||
];
|
||||
|
||||
|
||||
@@ -63,9 +63,9 @@ impl OnboardingPromptBlock {
|
||||
let font_color = current_theme.main_text_color(current_theme.background());
|
||||
|
||||
// Copy - https://docs.google.com/document/d/1zttBLI5Mw07kUupvrMQoC5aTwTXSHIUOIFFnxZ8GQEU/edit
|
||||
const LINE_ONE: &str = "Next, let’s set up your prompt. Warp has a custom prompt builder or you can select PS1 to honor your pre-existing prompt configuration.";
|
||||
const LINE_ONE: &str = "Next, let’s set up your prompt. Galaxy has a custom prompt builder or you can select PS1 to honor your pre-existing prompt configuration.";
|
||||
const LINE_TWO: &str =
|
||||
"Warp works with many custom prompts like oh-my-zsh, Starship, Powerlevel10K. ";
|
||||
"Galaxy works with many custom prompts like oh-my-zsh, Starship, Powerlevel10K. ";
|
||||
const LINK_TEXT: &str = "Learn more";
|
||||
const LINK_DESTINATION: &str =
|
||||
"https://docs.warp.dev/terminal/appearance/prompt#custom-prompt-compatibility-table";
|
||||
@@ -326,7 +326,7 @@ impl OnboardingPromptBlock {
|
||||
fn render_warp_prompt_button_interior(&self, appearance: &Appearance) -> Box<dyn Element> {
|
||||
// Pixel values pulled from Figma mocks
|
||||
// https://www.figma.com/file/y888viqzWBoMpFTxQqkQEN/Activation?node-id=568:1595&mode=dev
|
||||
const HEADER_TEXT: &str = "Warp prompt";
|
||||
const HEADER_TEXT: &str = "Galaxy prompt";
|
||||
const HEADER_MARGIN_LEFT: f32 = 4.;
|
||||
const SECTION_MARGIN_TOP: f32 = 8.;
|
||||
const OUTER_CORNER_RADIUS: f32 = 4.;
|
||||
|
||||
@@ -217,7 +217,7 @@ impl TerminalView {
|
||||
.await
|
||||
.is_err()
|
||||
{
|
||||
return Err("Timed out waiting for Warp Drive to sync for docker sandbox");
|
||||
return Err("Timed out waiting for Galaxy Drive to sync for docker sandbox");
|
||||
}
|
||||
|
||||
// Wait for the terminal session to bootstrap.
|
||||
|
||||
@@ -341,7 +341,7 @@ pub fn init(app: &mut AppContext) {
|
||||
),
|
||||
EditableBinding::new(
|
||||
"terminal:warpify_subshell",
|
||||
"Galaxyize subshell",
|
||||
"Wormhole subshell",
|
||||
TerminalAction::TriggerSubshellBootstrap,
|
||||
)
|
||||
.with_key_binding("ctrl-i")
|
||||
@@ -350,7 +350,7 @@ pub fn init(app: &mut AppContext) {
|
||||
),
|
||||
EditableBinding::new(
|
||||
"terminal:warpify_ssh_session",
|
||||
"Galaxyize ssh session",
|
||||
"Wormhole ssh session",
|
||||
TerminalAction::WarpifySSHSession,
|
||||
)
|
||||
.with_key_binding("ctrl-i")
|
||||
@@ -784,7 +784,7 @@ pub fn init(app: &mut AppContext) {
|
||||
// this is a block selection or text selection later on.
|
||||
EditableBinding::new(
|
||||
"terminal:ask_ai_assistant",
|
||||
"Ask Warp AI about Selection",
|
||||
"Ask Galaxy AI about Selection",
|
||||
TerminalAction::ContextMenu(ContextMenuAction::AskAI(AskAISource::SelectedBlockOrText)),
|
||||
)
|
||||
.with_enabled(|| !FeatureFlag::AgentMode.is_enabled())
|
||||
@@ -802,7 +802,7 @@ pub fn init(app: &mut AppContext) {
|
||||
app.register_editable_bindings([
|
||||
EditableBinding::new(
|
||||
"terminal:ask_ai_assistant_last_block",
|
||||
"Ask Warp AI about last block",
|
||||
"Ask Galaxy AI about last block",
|
||||
TerminalAction::ContextMenu(ContextMenuAction::AskAI(AskAISource::LastBlock)),
|
||||
)
|
||||
.with_enabled(|| !FeatureFlag::AgentMode.is_enabled())
|
||||
@@ -813,7 +813,7 @@ pub fn init(app: &mut AppContext) {
|
||||
),
|
||||
EditableBinding::new(
|
||||
"terminal:ask_ai_assistant",
|
||||
"Ask Warp AI",
|
||||
"Ask Galaxy AI",
|
||||
TerminalAction::ContextMenu(ContextMenuAction::AskAI(AskAISource::SelectedInputText)),
|
||||
)
|
||||
.with_enabled(|| !FeatureFlag::AgentMode.is_enabled())
|
||||
@@ -843,7 +843,7 @@ pub fn init(app: &mut AppContext) {
|
||||
// UniversalInput callout debug bindings
|
||||
EditableBinding::new(
|
||||
"terminal:agent_onboarding_flow_legacy_terminal",
|
||||
"[Debug] Onboarding Callout: WarpInput - Terminal",
|
||||
"[Debug] Onboarding Callout: GalaxyInput - Terminal",
|
||||
TerminalAction::OnboardingFlow(OnboardingVersion::Legacy),
|
||||
)
|
||||
.with_enabled(|| {
|
||||
@@ -854,7 +854,7 @@ pub fn init(app: &mut AppContext) {
|
||||
),
|
||||
EditableBinding::new(
|
||||
"terminal:agent_onboarding_flow_universal_input_project",
|
||||
"[Debug] Onboarding Callout: WarpInput - Project",
|
||||
"[Debug] Onboarding Callout: GalaxyInput - Project",
|
||||
TerminalAction::OnboardingFlow(OnboardingVersion::Agent(
|
||||
AgentOnboardingVersion::UniversalInput { has_project: true },
|
||||
)),
|
||||
@@ -867,7 +867,7 @@ pub fn init(app: &mut AppContext) {
|
||||
),
|
||||
EditableBinding::new(
|
||||
"terminal:agent_onboarding_flow_universal_input_no_project",
|
||||
"[Debug] Onboarding Callout: WarpInput - No Project",
|
||||
"[Debug] Onboarding Callout: GalaxyInput - No Project",
|
||||
TerminalAction::OnboardingFlow(OnboardingVersion::Agent(
|
||||
AgentOnboardingVersion::UniversalInput { has_project: false },
|
||||
)),
|
||||
|
||||
@@ -38,7 +38,7 @@ pub use model::{InitProjectModel, InitProjectModelEvent, InitStepKind};
|
||||
use model::{InitStepData, InitStepStatus};
|
||||
use std::path::{Path, PathBuf};
|
||||
|
||||
const ONBOARDING_TEXT: &str = "Great - let's begin setting up this project! Would you like to give me permission to index this codebase? It allows me to quickly understand context and provide more targeted solutions when working in this codebase. No code is stored on Warp servers.";
|
||||
const ONBOARDING_TEXT: &str = "Great - let's begin setting up this project! Would you like to give me permission to index this codebase? It allows me to quickly understand context and provide more targeted solutions when working in this codebase. No code is stored on Galaxy servers.";
|
||||
const ALREADY_SETUP_TEXT: &str = "It looks like this project has already been initialized. You can re-generate the AGENTS.md for this codebase by clicking the button below.";
|
||||
// Native Warp rules file format.
|
||||
pub const FILES_TO_CHECK: [&str; 2] = ["AGENTS.md", "WARP.md"];
|
||||
@@ -825,7 +825,7 @@ impl InitStepBlock {
|
||||
};
|
||||
Self::render_ready_with_buttons(
|
||||
action_view,
|
||||
"Would you like to create an AGENTS.md file? Warp can create one for you with project specific rules, context, and conventions inferred from your codebase. The agent will use this context as it codes.",
|
||||
"Would you like to create an AGENTS.md file? Galaxy can create one for you with project specific rules, context, and conventions inferred from your codebase. The agent will use this context as it codes.",
|
||||
app,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ use super::{
|
||||
InlineBannerTextButtonVariant,
|
||||
};
|
||||
|
||||
const SPEEDBUMP_HEADER: &str = "Optimize Warp for this codebase?";
|
||||
const SPEEDBUMP_HEADER: &str = "Optimize Galaxy for this codebase?";
|
||||
const SPEEDBUMP_TEXT: &str = "Unlock smarter, more consistent responses by letting the Agent understand your codebase and generate rules for it. You can also do this at any point by running /init";
|
||||
/// Text for the button that allows execution
|
||||
const ALLOW_BUTTON_TEXT: &str = "Optimize";
|
||||
|
||||
@@ -91,7 +91,7 @@ pub fn render_alias_expansion_banner(
|
||||
InlineBannerStyle::VeryLowPriority,
|
||||
appearance,
|
||||
InlineBannerContent {
|
||||
title: "Warp can auto-expand aliases.".into(),
|
||||
title: "Galaxy can auto-expand aliases.".into(),
|
||||
buttons,
|
||||
content: Some(content),
|
||||
close_button: Some(close_button),
|
||||
|
||||
@@ -63,7 +63,7 @@ pub fn render_aws_bedrock_login_banner(
|
||||
|
||||
// Use sub_text_color for description to differentiate from title
|
||||
let description_text = galaxyui::elements::Text::new(
|
||||
"Your Warp admin has enabled AWS Bedrock for your team.",
|
||||
"Your Galaxy admin has enabled AWS Bedrock for your team.",
|
||||
appearance.ui_font_family(),
|
||||
appearance.monospace_font_size() - 2.,
|
||||
)
|
||||
|
||||
@@ -112,7 +112,7 @@ pub fn render_inline_notifications_discovery_banner(
|
||||
learn_more_button,
|
||||
),
|
||||
RequestPermissionsOutcome::PermissionsDenied => (
|
||||
"Warp was denied permissions to send you notifications.",
|
||||
"Galaxy was denied permissions to send you notifications.",
|
||||
troubleshoot_button,
|
||||
),
|
||||
RequestPermissionsOutcome::OtherError { .. } => (
|
||||
|
||||
@@ -50,7 +50,7 @@ impl OpenInWarpBannerState {
|
||||
fn file_title_text(openable_path: &OpenablePath) -> String {
|
||||
match openable_path.file_type {
|
||||
OpenableFileType::Markdown => {
|
||||
"Did you know that Warp can directly display Markdown files?".to_string()
|
||||
"Did you know that Galaxy can directly display Markdown files?".to_string()
|
||||
}
|
||||
OpenableFileType::Code | OpenableFileType::Text => {
|
||||
cfg_if::cfg_if! {
|
||||
@@ -61,13 +61,13 @@ fn file_title_text(openable_path: &OpenablePath) -> String {
|
||||
|
||||
match language.as_ref().map(|language| language.display_name()) {
|
||||
Some(display_name) => {
|
||||
format!("Did you know that Warp can directly edit {display_name} files?")
|
||||
format!("Did you know that Galaxy can directly edit {display_name} files?")
|
||||
}
|
||||
None => "Did you know that Warp can directly edit code?".to_string(),
|
||||
None => "Did you know that Galaxy can directly edit code?".to_string(),
|
||||
}
|
||||
} else {
|
||||
// The `languages` crate is not available on WASM, so use a fallback message.
|
||||
"Did you know that Warp can directly edit code?".to_string()
|
||||
"Did you know that Galaxy can directly edit code?".to_string()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -80,8 +80,8 @@ pub fn render_open_in_warp_banner(
|
||||
appearance: &Appearance,
|
||||
) -> Box<dyn Element> {
|
||||
let button_text = match state.target.file_type {
|
||||
OpenableFileType::Markdown => "View in Warp",
|
||||
OpenableFileType::Code | OpenableFileType::Text => "Edit in Warp",
|
||||
OpenableFileType::Markdown => "View in Galaxy",
|
||||
OpenableFileType::Code | OpenableFileType::Text => "Edit in Galaxy",
|
||||
};
|
||||
|
||||
let open_button = InlineBannerTextButton {
|
||||
|
||||
@@ -22,7 +22,7 @@ pub fn render_shell_process_terminated_banner(
|
||||
color_override: Some(appearance.theme().foreground().into_solid()),
|
||||
}),
|
||||
content: Some(vec![Text::new(
|
||||
"The output from Warp's initialization script is visible above to assist with debugging.",
|
||||
"The output from Galaxy's initialization script is visible above to assist with debugging.",
|
||||
appearance.ui_font_family(),
|
||||
appearance.ui_font_size(),
|
||||
)]),
|
||||
|
||||
@@ -38,12 +38,12 @@ pub fn render_inline_ssh_wrapper_banner(
|
||||
let (style, title) = if state.wrapper_enabled {
|
||||
(
|
||||
InlineBannerStyle::LowPriority,
|
||||
"Warp SSH wrapper enabled".to_string(),
|
||||
"Galaxy SSH wrapper enabled".to_string(),
|
||||
)
|
||||
} else {
|
||||
(
|
||||
InlineBannerStyle::VeryLowPriority,
|
||||
"Warp SSH wrapper disabled".to_string(),
|
||||
"Galaxy SSH wrapper disabled".to_string(),
|
||||
)
|
||||
};
|
||||
let buttons = vec![
|
||||
|
||||
@@ -46,7 +46,7 @@ pub fn render_vim_mode_banner(
|
||||
InlineBannerStyle::LowPriority,
|
||||
appearance,
|
||||
InlineBannerContent {
|
||||
title: "Enable Warp's Vim keybindings?".to_string(),
|
||||
title: "Enable Galaxy's Vim keybindings?".to_string(),
|
||||
buttons,
|
||||
close_button: Some(close_button),
|
||||
..Default::default()
|
||||
|
||||
@@ -237,7 +237,7 @@ impl TerminalView {
|
||||
match &self.inline_banners_state.open_in_warp_banner {
|
||||
Some(banner_state) => {
|
||||
ActionAccessibilityContent::Custom(AccessibilityContent::new_without_help(
|
||||
format!("Open {} in Warp", banner_state.target.path.display()),
|
||||
format!("Open {} in Galaxy", banner_state.target.path.display()),
|
||||
WarpA11yRole::UserAction,
|
||||
))
|
||||
}
|
||||
@@ -246,14 +246,14 @@ impl TerminalView {
|
||||
}
|
||||
OpenInWarpBannerAction::Close => {
|
||||
ActionAccessibilityContent::Custom(AccessibilityContent::new_without_help(
|
||||
"Close View in Warp banner",
|
||||
"Close View in Galaxy banner",
|
||||
WarpA11yRole::UserAction,
|
||||
))
|
||||
}
|
||||
OpenInWarpBannerAction::LearnMore => {
|
||||
ActionAccessibilityContent::Custom(AccessibilityContent::new(
|
||||
"Learn more",
|
||||
"Learn more about opening Markdown files in Warp",
|
||||
"Learn more about opening Markdown files in Galaxy",
|
||||
WarpA11yRole::UserAction,
|
||||
))
|
||||
}
|
||||
|
||||
@@ -222,8 +222,8 @@ impl ConversationEndedTombstoneView {
|
||||
#[cfg(target_family = "wasm")]
|
||||
let open_in_warp_button = conversation_id.map(|conv_id| {
|
||||
ctx.add_typed_action_view(move |_| {
|
||||
ActionButton::new("Open in Warp", PrimaryTheme)
|
||||
.with_tooltip("Open this conversation in the Warp desktop app")
|
||||
ActionButton::new("Open in Galaxy", PrimaryTheme)
|
||||
.with_tooltip("Open this conversation in the Galaxy desktop app")
|
||||
.on_click(move |ctx| {
|
||||
ctx.dispatch_typed_action(ConversationEndedTombstoneAction::OpenInWarp(
|
||||
conv_id,
|
||||
|
||||
@@ -183,8 +183,8 @@ impl TerminationType {
|
||||
format!("{pty_spawn_error:#}").into()
|
||||
}
|
||||
TerminationType::Premature { shell_detail, .. } => format!(
|
||||
"Something went wrong while starting {shell_detail} and Warpifying it, causing the \
|
||||
process to terminate. Warpify script output is displayed here, which may point at \
|
||||
"Something went wrong while starting {shell_detail} and Wormholing it, causing the \
|
||||
process to terminate. Wormhole script output is displayed here, which may point at \
|
||||
a cause."
|
||||
)
|
||||
.into(),
|
||||
|
||||
@@ -75,9 +75,9 @@ impl SshRemoteServerChoiceView {
|
||||
let buttons = ctx.add_typed_action_view(|_| {
|
||||
KeyboardNavigableButtons::new(vec![
|
||||
rich_navigation_button(
|
||||
"Install Warp's SSH extension".to_string(),
|
||||
"Install Galaxy's SSH extension".to_string(),
|
||||
Some(
|
||||
"Install Warp's extension to enable agent features like file browsing, \
|
||||
"Install Galaxy's extension to enable agent features like file browsing, \
|
||||
code review, and intelligent command completions in this session."
|
||||
.to_string(),
|
||||
),
|
||||
@@ -88,7 +88,7 @@ impl SshRemoteServerChoiceView {
|
||||
rich_navigation_button(
|
||||
"Continue without installing".to_string(),
|
||||
Some(
|
||||
"You'll still get a Warpified experience just without the coding \
|
||||
"You'll still get a Wormholed experience just without the coding \
|
||||
features."
|
||||
.to_string(),
|
||||
),
|
||||
@@ -176,7 +176,7 @@ impl SshRemoteServerChoiceView {
|
||||
let manage_settings_link = appearance
|
||||
.ui_builder()
|
||||
.link(
|
||||
"Manage Warpify settings".into(),
|
||||
"Manage Wormhole settings".into(),
|
||||
None,
|
||||
Some(Box::new(|ctx| {
|
||||
ctx.dispatch_typed_action(SshRemoteServerChoiceViewAction::OpenWarpifySettings);
|
||||
|
||||
@@ -66,7 +66,7 @@ fn open_in_warp_tooltip(
|
||||
None
|
||||
};
|
||||
Some(GridTooltipLink {
|
||||
text: "Open in Warp".to_string(),
|
||||
text: "Open in Galaxy".to_string(),
|
||||
action: TerminalAction::OpenCodeInWarp {
|
||||
path,
|
||||
layout: *EditorSettings::as_ref(app).open_file_layout.value(),
|
||||
|
||||
@@ -956,7 +956,7 @@ impl UseAgentToolbar {
|
||||
.with_icon(Icon::Oz)
|
||||
.with_keybinding(KeystrokeSource::Fixed(USE_AGENT_KEYSTROKE.clone()), ctx)
|
||||
.with_size(button_size)
|
||||
.with_tooltip("Ask the Warp agent to assist")
|
||||
.with_tooltip("Ask the Galaxy agent to assist")
|
||||
.with_tooltip_alignment(TooltipAlignment::Left)
|
||||
.on_click(|ctx| {
|
||||
ctx.dispatch_typed_action(TerminalAction::SetInputModeAgent);
|
||||
@@ -970,7 +970,7 @@ impl UseAgentToolbar {
|
||||
.with_icon(Icon::Oz)
|
||||
.with_keybinding(KeystrokeSource::Fixed(USE_AGENT_KEYSTROKE.clone()), ctx)
|
||||
.with_size(button_size)
|
||||
.with_tooltip("Ask the Warp agent to resume")
|
||||
.with_tooltip("Ask the Galaxy agent to resume")
|
||||
.with_tooltip_alignment(TooltipAlignment::Left)
|
||||
.on_click(|ctx| {
|
||||
ctx.dispatch_typed_action(TerminalAction::SetInputModeAgent);
|
||||
|
||||
@@ -33,7 +33,7 @@ impl WarpifyFooterView {
|
||||
let button_size = ButtonSize::XSmall;
|
||||
|
||||
let warpify_button = ctx.add_typed_action_view(|_ctx| {
|
||||
ActionButton::new("Galaxyize subshell", AgentFooterButtonTheme::new(None))
|
||||
ActionButton::new("Wormhole subshell", AgentFooterButtonTheme::new(None))
|
||||
.with_icon(Icon::Warp)
|
||||
.with_size(button_size)
|
||||
.with_tooltip("Enable Galaxy shell integration in this session")
|
||||
@@ -76,10 +76,10 @@ impl WarpifyFooterView {
|
||||
pub fn set_mode(&mut self, mode: WarpificationMode, ctx: &mut ViewContext<Self>) {
|
||||
let (label, binding_name) = match mode {
|
||||
WarpificationMode::Ssh { .. } => {
|
||||
("Galaxyize SSH session", "terminal:warpify_ssh_session")
|
||||
("Wormhole SSH session", "terminal:warpify_ssh_session")
|
||||
}
|
||||
WarpificationMode::Subshell { .. } => {
|
||||
("Galaxyize subshell", "terminal:warpify_subshell")
|
||||
("Wormhole subshell", "terminal:warpify_subshell")
|
||||
}
|
||||
};
|
||||
self.warpify_button.update(ctx, |button, ctx| {
|
||||
|
||||
@@ -182,7 +182,7 @@ pub fn render_never_warpify_ssh_link(
|
||||
let link = appearance
|
||||
.ui_builder()
|
||||
.link(
|
||||
"Never Warpify this host".into(),
|
||||
"Never Wormhole this host".into(),
|
||||
None,
|
||||
Some(Box::new({
|
||||
let ssh_host = ssh_host.clone();
|
||||
|
||||
@@ -50,7 +50,7 @@ maybe_define_setting!(EnableSshWarpification, group: WarpifySettings, {
|
||||
sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes),
|
||||
private: false,
|
||||
toml_path: "warpify.ssh.enable_ssh_warpification",
|
||||
description: "Whether to enable Warp features in SSH sessions.",
|
||||
description: "Whether to enable Galaxy features in SSH sessions.",
|
||||
});
|
||||
|
||||
maybe_define_setting!(UseSshTmuxWrapper, group: WarpifySettings, {
|
||||
|
||||
@@ -116,9 +116,9 @@ impl WarpifySuccessBlock {
|
||||
let auto_warpify_snippet = auto_warpify_snippet.map(|(output_grid, can_write_to_rc)| {
|
||||
AutoWarpifySnippet {
|
||||
description: (if !output_grid.is_empty() {
|
||||
"Run the following to automatically Warpify in the future:"
|
||||
"Run the following to automatically Wormhole in the future:"
|
||||
} else {
|
||||
"In remote subshells, Warp runs commands in the background to power completions, syntax highlighting, and other features."
|
||||
"In remote subshells, Galaxy runs commands in the background to power completions, syntax highlighting, and other features."
|
||||
}).into(),
|
||||
output_grid: output_grid.into(),
|
||||
selection_handle: Default::default(),
|
||||
@@ -156,7 +156,7 @@ impl WarpifySuccessBlock {
|
||||
|
||||
pub fn render_title_ui(&self, theme: &WarpTheme, appearance: &Appearance) -> Box<dyn Element> {
|
||||
let header_contents = render::build_header_row(
|
||||
"Session Warpified",
|
||||
"Session Wormholed",
|
||||
Icon::new(UiIcon::Warp.into(), theme.active_ui_detail()),
|
||||
theme,
|
||||
appearance,
|
||||
|
||||
@@ -630,7 +630,7 @@ pub(super) fn sent_referral_reward() -> WarpTheme {
|
||||
source: bundled_or_fetched_asset!("jpg/sent_referral_reward_bg.jpg"),
|
||||
opacity: 100,
|
||||
}),
|
||||
Some("Warp Referral".to_string()),
|
||||
Some("Galaxy Referral".to_string()),
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -139,8 +139,8 @@ impl std::fmt::Display for ThemeKind {
|
||||
ThemeKind::Adeberry => "Adeberry",
|
||||
ThemeKind::SamsungDark => "Samsung Dark",
|
||||
ThemeKind::SamsungLight => "Samsung Light",
|
||||
ThemeKind::SentReferralReward => "Warp Referral",
|
||||
ThemeKind::ReceivedReferralReward => "Referred to Warp",
|
||||
ThemeKind::SentReferralReward => "Galaxy Referral",
|
||||
ThemeKind::ReceivedReferralReward => "Referred to Galaxy",
|
||||
ThemeKind::Custom(custom_theme) => custom_theme.name.as_str(),
|
||||
ThemeKind::CustomBase16(custom_theme) => custom_theme.name.as_str(),
|
||||
ThemeKind::InMemory(in_memory_theme) => in_memory_theme.name.as_str(),
|
||||
|
||||
@@ -203,7 +203,7 @@ where
|
||||
.with_child(
|
||||
appearance
|
||||
.ui_builder()
|
||||
.span("*Secrets are not sent to Warp's server.")
|
||||
.span("*Secrets are not sent to Galaxy's server.")
|
||||
.with_style(UiComponentStyles {
|
||||
font_size: Some(12.),
|
||||
margin: Some(Coords::default().top(4.)),
|
||||
|
||||
@@ -154,18 +154,18 @@ impl View for WasmNUXDialog {
|
||||
|
||||
let dialog = if self.requested_download {
|
||||
Dialog::new(
|
||||
"Open in Warp Desktop?".to_string(),
|
||||
"Open in Galaxy Desktop?".to_string(),
|
||||
Some("Future links will automatically open on desktop.".to_string()),
|
||||
dialog_styles,
|
||||
)
|
||||
.with_bottom_row_child(Self::render_dialog_button(
|
||||
"Open in Warp",
|
||||
"Open in Galaxy",
|
||||
WasmNUXDialogAction::OpenNativeAndClose,
|
||||
&self.confirm_mouse_state,
|
||||
appearance,
|
||||
))
|
||||
} else if app_install_detected == &UserAppInstallStatus::NotDetected {
|
||||
Dialog::new("Download Warp Desktop?".to_string(), None, dialog_styles)
|
||||
Dialog::new("Download Galaxy Desktop?".to_string(), None, dialog_styles)
|
||||
.with_child(
|
||||
Flex::column()
|
||||
.with_cross_axis_alignment(CrossAxisAlignment::Stretch)
|
||||
@@ -173,7 +173,7 @@ impl View for WasmNUXDialog {
|
||||
.with_child(
|
||||
appearance
|
||||
.ui_builder()
|
||||
.span("Warp is the intelligent terminal with AI and your dev team's knowledge built-in.")
|
||||
.span("Galaxy is a clone of Warp built for Samsung to use with Bedrock. Get the best features of Warp with the security provided by Bedrock!")
|
||||
.with_style(UiComponentStyles {
|
||||
font_weight: Some(Weight::Thin),
|
||||
font_color: Some(
|
||||
@@ -218,9 +218,9 @@ impl View for WasmNUXDialog {
|
||||
))
|
||||
} else {
|
||||
let object_kind = match web_intent_parser::current_web_intent() {
|
||||
Some(WebIntent::DriveObject(_)) => "Warp Drive objects",
|
||||
Some(WebIntent::DriveObject(_)) => "Galaxy Drive objects",
|
||||
Some(WebIntent::SessionView(_)) => "shared sessions",
|
||||
_ => "Warp links",
|
||||
_ => "Galaxy links",
|
||||
};
|
||||
|
||||
Dialog::new(
|
||||
|
||||
@@ -30,7 +30,7 @@ define_settings_group!(WorkflowAliases, settings: [
|
||||
]);
|
||||
|
||||
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone, schemars::JsonSchema, SettingsValue)]
|
||||
#[schemars(description = "A shortcut alias for a Warp Drive workflow.")]
|
||||
#[schemars(description = "A shortcut alias for a Galaxy Drive workflow.")]
|
||||
pub struct WorkflowAlias {
|
||||
#[schemars(description = "The alias text that triggers this workflow.")]
|
||||
pub alias: String,
|
||||
|
||||
@@ -224,7 +224,7 @@ pub fn prompt_chip_logging_workflow(shell_family: ShellFamily) -> Option<Workflo
|
||||
),
|
||||
arguments: vec![],
|
||||
source_url: None,
|
||||
author: Some("Warp".into()),
|
||||
author: Some("Galaxy".into()),
|
||||
author_url: None,
|
||||
shells: vec![],
|
||||
environment_variables: None,
|
||||
|
||||
@@ -184,7 +184,7 @@ const AI_ASSIST_LOADING_TEXT: &str = "Loading";
|
||||
|
||||
const ALIAS_HELP_TEXT: &str = "Aliases allow you to create short strings to execute workflows. Each alias can have different argument values and environment variables, and aliases are personal to you.";
|
||||
|
||||
const RUN_ON_DESKTOP_BUTTON_TEXT: &str = "Run in Warp";
|
||||
const RUN_ON_DESKTOP_BUTTON_TEXT: &str = "Run in Galaxy";
|
||||
const RUN_ON_DESKTOP_BUTTON_WIDTH: f32 = 108.;
|
||||
|
||||
const UNSAVED_CHANGES_TEXT: &str = "You have unsaved changes.";
|
||||
@@ -2465,7 +2465,7 @@ impl WorkflowView {
|
||||
.finish();
|
||||
|
||||
let button_with_tool_tip = appearance.ui_builder().tool_tip_on_element(
|
||||
"Generate a title, descriptions, or parameters with Warp AI".to_string(),
|
||||
"Generate a title, descriptions, or parameters with Galaxy AI".to_string(),
|
||||
self.ui_state_handles.ai_assist_tool_tip.clone(),
|
||||
rendered_button,
|
||||
ParentAnchor::TopMiddle,
|
||||
|
||||
@@ -29,7 +29,7 @@ fn create_symlink_with_admin(source: &Path, target: &Path) -> Result<()> {
|
||||
|
||||
// Use osascript to run the ln command with admin privileges, with a custom prompt
|
||||
let script = format!(
|
||||
"do shell script \"ln -sf {escaped_source} {escaped_target}\" with prompt \"Warp needs administrator privileges to install the command in /usr/local/bin.\" with administrator privileges"
|
||||
"do shell script \"ln -sf {escaped_source} {escaped_target}\" with prompt \"Galaxy needs administrator privileges to install the command in /usr/local/bin.\" with administrator privileges"
|
||||
);
|
||||
|
||||
log::debug!("Creating symlink with admin privileges");
|
||||
@@ -65,7 +65,7 @@ fn remove_file_with_admin(target: &Path) -> Result<()> {
|
||||
let escaped_target = ShellFamily::Posix.shell_escape(target_str);
|
||||
|
||||
let script = format!(
|
||||
"do shell script \"rm {escaped_target}\" with prompt \"Warp needs administrator privileges to uninstall the command from /usr/local/bin.\" with administrator privileges"
|
||||
"do shell script \"rm {escaped_target}\" with prompt \"Galaxy needs administrator privileges to uninstall the command from /usr/local/bin.\" with administrator privileges"
|
||||
);
|
||||
|
||||
log::debug!("Removing file with admin privileges");
|
||||
|
||||
@@ -480,7 +480,7 @@ impl HoaOnboardingFlow {
|
||||
|
||||
let formatted = FormattedText::new([FormattedTextLine::Line(vec![
|
||||
FormattedTextFragment::plain_text(
|
||||
"Warp pipes through notifications from any CLI coding agent into a unified notification center that works across all coding agents and harnesses. ",
|
||||
"Galaxy pipes through notifications from any CLI coding agent into a unified notification center that works across all coding agents and harnesses. ",
|
||||
),
|
||||
learn_more_fragment,
|
||||
])]);
|
||||
|
||||
@@ -44,7 +44,7 @@ const FEATURE_ITEMS: &[FeatureItem] = &[
|
||||
FeatureItem {
|
||||
icon: Icon::MessageCheckSquare,
|
||||
title: "Native code review",
|
||||
description: "Send inline comments from Warp's code review directly to Claude Code, Codex, or OpenCode",
|
||||
description: "Send inline comments from Galaxy's code review directly to Claude Code, Codex, or OpenCode",
|
||||
},
|
||||
];
|
||||
|
||||
@@ -98,7 +98,7 @@ pub fn render_welcome_banner(
|
||||
|
||||
// Title
|
||||
let title = Text::new(
|
||||
"Introducing universal agent support: level up any coding agent with Warp",
|
||||
"Introducing universal agent support: level up any coding agent with Galaxy",
|
||||
appearance.ui_font_family(),
|
||||
20.,
|
||||
)
|
||||
|
||||
@@ -8,15 +8,15 @@ use galaxyui::ViewContext;
|
||||
use super::view::Workspace;
|
||||
use crate::pane_group::{AnyPaneContent, FilePane};
|
||||
|
||||
const WARP_HOME_TITLE: &str = "Welcome to Warp on Web";
|
||||
const WARP_HOME_TITLE: &str = "Welcome to Galaxy on Web";
|
||||
const WARP_HOME_CONTENT: &str = r#"
|
||||
Welcome to Warp on Web - your browser-based home for Warp!
|
||||
Use Warp on Web to:
|
||||
Welcome to Galaxy on Web - your browser-based home for Galaxy!
|
||||
Use Galaxy on Web to:
|
||||
* Join Shared Sessions
|
||||
* Create, View, and Edit Warp Drive Objects
|
||||
* Manage your Warp Settings
|
||||
* Create, View, and Edit Galaxy Drive Objects
|
||||
* Manage your Galaxy Settings
|
||||
|
||||
Warp on Web can also be used by your teammates and peers who don't have Warp downloaded yet to view your shared sessions, notebooks, and workflows."#;
|
||||
Galaxy on Web can also be used by your teammates and peers who don't have Galaxy downloaded yet to view your shared sessions, notebooks, and workflows."#;
|
||||
|
||||
/// Create a static "home page" pane.
|
||||
pub fn create_home_pane(ctx: &mut ViewContext<Workspace>) -> Box<dyn AnyPaneContent> {
|
||||
|
||||
@@ -217,25 +217,25 @@ pub fn init(app: &mut AppContext) {
|
||||
.with_context_predicate(id!("Workspace")),
|
||||
EditableBinding::new(
|
||||
"workspace:open_openwarp_launch_modal",
|
||||
"[Debug] Open OpenWarp Launch Modal",
|
||||
"[Debug] Open OpenGalaxy Launch Modal",
|
||||
WorkspaceAction::OpenOpenWarpLaunchModal,
|
||||
)
|
||||
.with_context_predicate(id!("Workspace")),
|
||||
EditableBinding::new(
|
||||
"workspace:reset_openwarp_launch_modal_state",
|
||||
"[Debug] Reset OpenWarp Launch Modal State",
|
||||
"[Debug] Reset OpenGalaxy Launch Modal State",
|
||||
WorkspaceAction::ResetOpenWarpLaunchModalState,
|
||||
)
|
||||
.with_context_predicate(id!("Workspace")),
|
||||
EditableBinding::new(
|
||||
"workspace:install_opencode_warp_plugin",
|
||||
"[Debug] Install OpenCode Warp plugin",
|
||||
"[Debug] Install OpenCode Galaxy plugin",
|
||||
WorkspaceAction::InstallOpenCodeWarpPlugin,
|
||||
)
|
||||
.with_context_predicate(id!("Workspace")),
|
||||
EditableBinding::new(
|
||||
"workspace:use_local_opencode_warp_plugin",
|
||||
"[Debug] Use local OpenCode Warp plugin (testing only)",
|
||||
"[Debug] Use local OpenCode Galaxy plugin (testing only)",
|
||||
WorkspaceAction::UseLocalOpenCodeWarpPlugin,
|
||||
)
|
||||
.with_context_predicate(id!("Workspace")),
|
||||
@@ -790,7 +790,7 @@ pub fn init(app: &mut AppContext) {
|
||||
EditableBinding::new(
|
||||
TOGGLE_WARP_DRIVE_BINDING_NAME,
|
||||
BindingDescription::new("Toggle Galaxy Drive")
|
||||
.with_custom_description(bindings::MAC_MENUS_CONTEXT, "Warp Drive"),
|
||||
.with_custom_description(bindings::MAC_MENUS_CONTEXT, "Galaxy Drive"),
|
||||
WorkspaceAction::ToggleWarpDrive,
|
||||
)
|
||||
.with_context_predicate(id!("Workspace") & id!(flags::ENABLE_WARP_DRIVE)),
|
||||
@@ -1148,7 +1148,7 @@ pub fn init(app: &mut AppContext) {
|
||||
.with_custom_action(CustomAction::NewAgentModePane),
|
||||
EditableBinding::new(
|
||||
"workspace:toggle_ai_assistant",
|
||||
"Toggle Warp AI",
|
||||
"Toggle Galaxy AI",
|
||||
WorkspaceAction::ToggleAIAssistant,
|
||||
)
|
||||
.with_enabled(|| !FeatureFlag::AgentMode.is_enabled())
|
||||
@@ -1420,8 +1420,8 @@ fn add_open_setting_pages_as_editable_binding(app: &mut AppContext) {
|
||||
.with_context_predicate(id!("Workspace")),
|
||||
EditableBinding::new(
|
||||
"workspace:show_settings_warpify_page",
|
||||
BindingDescription::new("Open Settings: Warpify")
|
||||
.with_custom_description(bindings::MAC_MENUS_CONTEXT, "Configure Warpify..."),
|
||||
BindingDescription::new("Open Settings: Wormhole")
|
||||
.with_custom_description(bindings::MAC_MENUS_CONTEXT, "Configure Wormhole..."),
|
||||
WorkspaceAction::ShowSettingsPage(SettingsSection::Warpify),
|
||||
)
|
||||
.with_group(bindings::BindingGroup::Settings.as_str())
|
||||
@@ -1515,7 +1515,7 @@ fn add_overflow_menu_items_as_editable_binding(app: &mut AppContext) {
|
||||
#[cfg(not(target_family = "wasm"))]
|
||||
EditableBinding::new(
|
||||
"workspace:view_logs",
|
||||
"View Warp logs",
|
||||
"View Galaxy logs",
|
||||
WorkspaceAction::ViewLogs,
|
||||
)
|
||||
.with_context_predicate(id!("Workspace")),
|
||||
|
||||
+14
-14
@@ -573,7 +573,7 @@ const AI_ASSISTANT_BUTTON_ID: &str = "workspace_view:ai_assistant_button";
|
||||
|
||||
const VERSION_DEPRECATION_BANNER_TEXT: &str = "Your app is out of date and some features may not work as expected. Please update immediately.";
|
||||
|
||||
const VERSION_DEPRECATION_WITHOUT_PERMISSIONS_BANNER_TEXT: &str = "Some Warp features may not work as expected without updating immediately, but Warp is unable to perform the update.";
|
||||
const VERSION_DEPRECATION_WITHOUT_PERMISSIONS_BANNER_TEXT: &str = "Some Galaxy features may not work as expected without updating immediately, but Galaxy is unable to perform the update.";
|
||||
|
||||
const ASK_AI_ASSISTANT_KEYBINDING_NAME: &str = "workspace:toggle_ai_assistant";
|
||||
const TOGGLE_RESOURCE_CENTER_KEYBINDING_NAME: &str = "workspace:toggle_resource_center";
|
||||
@@ -6521,7 +6521,7 @@ impl Workspace {
|
||||
.into_item(),
|
||||
),
|
||||
AutoupdateStage::UnableToUpdateToNewVersion { .. } => menu_items.push(
|
||||
MenuItemFields::new("Update Warp manually")
|
||||
MenuItemFields::new("Update Galaxy manually")
|
||||
.with_on_select_action(WorkspaceAction::DownloadNewVersion)
|
||||
.into_item(),
|
||||
),
|
||||
@@ -8224,7 +8224,7 @@ impl Workspace {
|
||||
) =>
|
||||
{
|
||||
items.push(
|
||||
MenuItemFields::new("Update and relaunch Warp")
|
||||
MenuItemFields::new("Update and relaunch Galaxy")
|
||||
.with_on_select_action(WorkspaceAction::ApplyUpdate)
|
||||
.with_override_text_color(appearance.theme().ansi_fg_red())
|
||||
.into_item(),
|
||||
@@ -8247,7 +8247,7 @@ impl Workspace {
|
||||
) =>
|
||||
{
|
||||
items.push(
|
||||
MenuItemFields::new("Update Warp manually")
|
||||
MenuItemFields::new("Update Galaxy manually")
|
||||
.with_on_select_action(WorkspaceAction::DownloadNewVersion)
|
||||
.with_override_text_color(appearance.theme().ansi_fg_red())
|
||||
.into_item(),
|
||||
@@ -8278,7 +8278,7 @@ impl Workspace {
|
||||
|
||||
#[cfg(not(target_family = "wasm"))]
|
||||
items.push(
|
||||
MenuItemFields::new("View Warp logs")
|
||||
MenuItemFields::new("View Galaxy logs")
|
||||
.with_on_select_action(WorkspaceAction::ViewLogs)
|
||||
.into_item(),
|
||||
);
|
||||
@@ -12038,7 +12038,7 @@ impl Workspace {
|
||||
let url = NOTIFICATIONS_TROUBLESHOOT_URL.to_string();
|
||||
view.toast_stack.update(ctx, |toast_stack, ctx| {
|
||||
let toast = DismissibleToast::error(
|
||||
"Warp doesn't have permission to send desktop notifications.".to_string(),
|
||||
"Galaxy doesn't have permission to send desktop notifications.".to_string(),
|
||||
)
|
||||
.with_link(ToastLink::new("Troubleshoot notifications".to_string()).with_href(url));
|
||||
toast_stack.add_persistent_toast(toast, ctx);
|
||||
@@ -12639,7 +12639,7 @@ impl Workspace {
|
||||
link = link.with_keystroke(keystroke);
|
||||
}
|
||||
|
||||
let toast = DismissibleToast::default(String::from("Warp updated!"))
|
||||
let toast = DismissibleToast::default(String::from("Galaxy updated!"))
|
||||
.with_link(link);
|
||||
|
||||
stack.add_ephemeral_toast(toast, ctx);
|
||||
@@ -15734,7 +15734,7 @@ impl Workspace {
|
||||
let command = code.trim().to_string();
|
||||
let args_state =
|
||||
ArgumentsState::for_command_workflow(&Default::default(), command.clone());
|
||||
let workflow = Workflow::new("Command from Warp AI", command)
|
||||
let workflow = Workflow::new("Command from Galaxy AI", command)
|
||||
.with_arguments(args_state.arguments);
|
||||
self.run_workflow_in_active_input(
|
||||
&WorkflowType::AIGenerated {
|
||||
@@ -16455,7 +16455,7 @@ impl Workspace {
|
||||
let body = appearance
|
||||
.ui_builder()
|
||||
.wrappable_text(
|
||||
"Ask Warp AI to explain errors, suggest commands or write scripts.".to_owned(),
|
||||
"Ask Galaxy AI to explain errors, suggest commands or write scripts.".to_owned(),
|
||||
true,
|
||||
)
|
||||
.with_style(UiComponentStyles {
|
||||
@@ -18234,7 +18234,7 @@ impl Workspace {
|
||||
if is_incoming_version_past_current(new_version.soft_cutoff.as_deref()) {
|
||||
VERSION_DEPRECATION_WITHOUT_PERMISSIONS_BANNER_TEXT.to_owned()
|
||||
} else {
|
||||
"A new version is available but Warp is unable to perform the update."
|
||||
"A new version is available but Galaxy is unable to perform the update."
|
||||
.to_owned()
|
||||
};
|
||||
|
||||
@@ -18245,7 +18245,7 @@ impl Workspace {
|
||||
description,
|
||||
secondary_button: None,
|
||||
button: Some(WorkspaceBannerButtonDetails {
|
||||
text: "Update Warp manually".to_string(),
|
||||
text: "Update Galaxy manually".to_string(),
|
||||
action: WorkspaceAction::DownloadNewVersion,
|
||||
variant: BannerButtonVariant::Outlined,
|
||||
icon: None,
|
||||
@@ -18260,7 +18260,7 @@ impl Workspace {
|
||||
if is_incoming_version_past_current(new_version.soft_cutoff.as_deref()) {
|
||||
VERSION_DEPRECATION_WITHOUT_PERMISSIONS_BANNER_TEXT.to_owned()
|
||||
} else {
|
||||
"Warp was unable to launch the new installed version.".to_owned()
|
||||
"Galaxy was unable to launch the new installed version.".to_owned()
|
||||
};
|
||||
|
||||
Some(WorkspaceBannerFields {
|
||||
@@ -18270,7 +18270,7 @@ impl Workspace {
|
||||
description,
|
||||
secondary_button: None,
|
||||
button: Some(WorkspaceBannerButtonDetails {
|
||||
text: "Update Warp manually".to_string(),
|
||||
text: "Update Galaxy manually".to_string(),
|
||||
action: WorkspaceAction::DownloadNewVersion,
|
||||
variant: BannerButtonVariant::Outlined,
|
||||
icon: None,
|
||||
@@ -19526,7 +19526,7 @@ impl Workspace {
|
||||
// Many users' browser settings will block Local Network Access so this will end up redirecting to download page,
|
||||
// even if they have the app installed.
|
||||
let toast_message = format!(
|
||||
"Have Warp installed but redirecting to download page?\nEnable Local Network Access for {} in your browser.",
|
||||
"Have Galaxy installed but redirecting to download page?\nEnable Local Network Access for {} in your browser.",
|
||||
ChannelState::server_root_url()
|
||||
);
|
||||
self.toast_stack.update(ctx, |toast_stack, ctx| {
|
||||
|
||||
@@ -515,7 +515,7 @@ impl BuildPlanMigrationModal {
|
||||
let title_text = if is_business {
|
||||
"Welcome to the New Business Plan"
|
||||
} else {
|
||||
"Welcome to Warp Build"
|
||||
"Welcome to Galaxy Build"
|
||||
};
|
||||
|
||||
let title = Self::create_text(
|
||||
@@ -527,9 +527,9 @@ impl BuildPlanMigrationModal {
|
||||
);
|
||||
|
||||
let intro_text = if is_business {
|
||||
"Your workspace has been updated to the new Warp Business Plan as the legacy Business plan is sunset."
|
||||
"Your workspace has been updated to the new Galaxy Business Plan as the legacy Business plan is sunset."
|
||||
} else {
|
||||
"Your workspace has been updated to the Warp Build Plan as the legacy Pro, Turbo, and Lightspeed plans are sunset."
|
||||
"Your workspace has been updated to the Galaxy Build Plan as the legacy Pro, Turbo, and Lightspeed plans are sunset."
|
||||
};
|
||||
|
||||
let intro = Self::create_text(intro_text.to_string(), font_family, 14., text_color, None);
|
||||
@@ -538,7 +538,7 @@ impl BuildPlanMigrationModal {
|
||||
if is_business {
|
||||
"The new Business plan is a primarily usage-based plan, starting at:"
|
||||
} else {
|
||||
"Warp Build is a primarily usage-based plan, starting at:"
|
||||
"Galaxy Build is a primarily usage-based plan, starting at:"
|
||||
}
|
||||
.to_string(),
|
||||
font_family,
|
||||
|
||||
@@ -109,7 +109,7 @@ impl CodexModal {
|
||||
|
||||
// Title
|
||||
let title = FormattedTextElement::from_str(
|
||||
"Use Codex models in Warp",
|
||||
"Use Codex models in Galaxy",
|
||||
appearance.ui_font_family(),
|
||||
24.,
|
||||
)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user