light theme

This commit is contained in:
MeexReay 2025-04-16 03:48:40 +03:00
parent 4f78d48b10
commit c77d52e242
3 changed files with 22 additions and 11 deletions

View File

@ -18,7 +18,7 @@ gtk4 = { version = "0.9.6", optional = true }
cfg-if = "1.0.0"
[features]
default = ["ssl", "homedir", "pretty_tui"]
default = ["ssl", "homedir", "gtk_gui"]
ssl = ["dep:native-tls"]
pretty_tui = ["dep:crossterm"]
gtk_gui = ["dep:gtk4"]

View File

@ -39,21 +39,21 @@ cd bRAC
3. Build or run with Cargo
```bash
cargo build --release # build release (target/release/bRAC)
cargo run --release # run (builds and runs bRAC itself)
cargo build -r # build release (target/release/bRAC)
cargo run -r # run (builds and runs bRAC itself)
```
Minimal version:
```bash
cargo build --release --no-default-features
cargo run --release --no-default-features
cargo build -r --no-default-features
cargo run -r --no-default-features
```
GTK version:
```bash
cargo build --release --features gtk_gui
cargo run --release --features gtk_gui
cargo build -rF gtk_gui
cargo run -rF gtk_gui
```
### nix package

View File

@ -2,7 +2,7 @@ use std::sync::{Arc, RwLock};
use std::time::Duration;
use colored::{Color, Colorize};
use gtk4::gdk::Display;
use gtk4::gdk::{Cursor, Display};
use gtk4::gdk_pixbuf::PixbufLoader;
use gtk4::glib::clone::Downgrade;
use gtk4::glib::{idle_add_local, idle_add_local_once, ControlFlow, source::timeout_add_local_once};
@ -114,12 +114,14 @@ fn build_ui(ctx: Arc<Context>, app: &Application) {
let send_btn = Button::builder()
.label("Send")
.cursor(&Cursor::from_name("pointer", None).unwrap())
.build();
send_btn.connect_clicked(clone!(
#[weak] text_entry,
#[weak] ctx,
move |_| {
if text_entry.text().is_empty() { return; }
idle_add_local_once(clone!(
#[weak] text_entry,
move || {
@ -138,6 +140,7 @@ fn build_ui(ctx: Arc<Context>, app: &Application) {
#[weak] text_entry,
#[weak] ctx,
move |_| {
if text_entry.text().is_empty() { return; }
idle_add_local_once(clone!(
#[weak] text_entry,
move || {
@ -274,16 +277,20 @@ fn load_css() {
let provider = CssProvider::new();
provider.load_from_data("
* {
border-radius: 0;
}
.message-content {
color: #FFFFFF;
color: #000000;
}
.message-date {
color: #AAAAAA;
color: #555555;
}
.message-ip {
color: #AAAAAA;
color: #777777;
}
.message-name {
@ -361,6 +368,10 @@ fn load_css() {
&provider,
gtk4::STYLE_PROVIDER_PRIORITY_APPLICATION,
);
if let Some(settings) = gtk4::Settings::default() {
settings.set_gtk_application_prefer_dark_theme(false);
}
}
fn on_add_message(ctx: Arc<Context>, ui: &UiModel, message: String) {