Polish provider setup and local-first settings
This commit is contained in:
@@ -1,6 +1,11 @@
|
||||
use galaxyui::elements::{
|
||||
Align, CacheOption, ConstrainedBox, Container, CrossAxisAlignment, Element, Flex,
|
||||
FormattedTextElement, Image, Padding, ParentElement, Text,
|
||||
};
|
||||
use galaxyui::fonts::Weight;
|
||||
use galaxyui::text_layout::TextAlignment;
|
||||
use galaxyui::{AppContext, Entity, SingletonEntity, View, ViewContext, ViewHandle};
|
||||
use warpui::assets::asset_cache::AssetSource;
|
||||
use warpui::elements::{Align, CacheOption, ConstrainedBox, Element, Image};
|
||||
|
||||
use super::settings_page::{
|
||||
MatchData, PageType, SettingsPageEvent, SettingsPageMeta, SettingsPageViewHandle,
|
||||
@@ -48,7 +53,7 @@ impl SettingsWidget for AboutPageWidget {
|
||||
fn render(
|
||||
&self,
|
||||
_view: &AboutPageView,
|
||||
_appearance: &Appearance,
|
||||
appearance: &Appearance,
|
||||
app: &AppContext,
|
||||
) -> Box<dyn Element> {
|
||||
let icon_file =
|
||||
@@ -62,16 +67,54 @@ impl SettingsWidget for AboutPageWidget {
|
||||
_ => "bundled/png/galaxy.png",
|
||||
};
|
||||
|
||||
let icon = ConstrainedBox::new(
|
||||
Image::new(
|
||||
AssetSource::Bundled { path: image_path },
|
||||
CacheOption::BySize,
|
||||
)
|
||||
.finish(),
|
||||
)
|
||||
.with_max_height(144.)
|
||||
.with_max_width(144.)
|
||||
.finish();
|
||||
let title = FormattedTextElement::from_str("Galaxy", appearance.ui_font_family(), 28.)
|
||||
.with_weight(Weight::Bold)
|
||||
.with_color(appearance.theme().active_ui_text_color().into_solid())
|
||||
.with_alignment(TextAlignment::Center)
|
||||
.finish();
|
||||
let version = Text::new(
|
||||
format!("Version {}", env!("CARGO_PKG_VERSION")),
|
||||
appearance.ui_font_family(),
|
||||
12.,
|
||||
)
|
||||
.with_color(appearance.theme().nonactive_ui_text_color().into())
|
||||
.finish();
|
||||
let description = FormattedTextElement::from_str(
|
||||
"Galaxy is a local-first terminal and AI workspace built for developers. Your settings, terminal data, conversations, and Galaxy Drive content stay on this machine in your Galaxy directory. Galaxy sends request data only to the AI providers you configure.",
|
||||
appearance.ui_font_family(),
|
||||
14.,
|
||||
)
|
||||
.with_color(appearance.theme().nonactive_ui_text_color().into_solid())
|
||||
.with_alignment(TextAlignment::Center)
|
||||
.with_line_height_ratio(1.35)
|
||||
.finish();
|
||||
|
||||
Align::new(
|
||||
ConstrainedBox::new(
|
||||
Image::new(
|
||||
AssetSource::Bundled { path: image_path },
|
||||
CacheOption::BySize,
|
||||
Container::new(
|
||||
Flex::column()
|
||||
.with_cross_axis_alignment(CrossAxisAlignment::Center)
|
||||
.with_spacing(12.)
|
||||
.with_child(icon)
|
||||
.with_child(title)
|
||||
.with_child(version)
|
||||
.with_child(description)
|
||||
.finish(),
|
||||
)
|
||||
.with_padding(Padding::uniform(24.))
|
||||
.finish(),
|
||||
)
|
||||
.with_max_height(144.)
|
||||
.with_max_width(144.)
|
||||
.with_max_width(560.)
|
||||
.finish(),
|
||||
)
|
||||
.finish()
|
||||
|
||||
Reference in New Issue
Block a user