2024-01-30 23:33:07 +03:00
|
|
|
// GTK crates
|
2024-02-09 00:49:42 +03:00
|
|
|
use adw::prelude::*;
|
|
|
|
use adw::*;
|
|
|
|
use gdk::Display;
|
|
|
|
use glib::*;
|
2024-01-30 23:33:07 +03:00
|
|
|
/// Use all gtk4 libraries (gtk4 -> gtk because cargo)
|
|
|
|
/// Use all libadwaita libraries (libadwaita -> adw because cargo)
|
|
|
|
use gtk::prelude::*;
|
|
|
|
use gtk::*;
|
|
|
|
|
|
|
|
// application crates
|
|
|
|
mod build_ui;
|
|
|
|
use crate::build_ui::build_ui;
|
|
|
|
mod save_window_size;
|
|
|
|
use crate::save_window_size::save_window_size;
|
2024-02-02 16:49:18 +03:00
|
|
|
mod connection_check;
|
|
|
|
use crate::connection_check::check_internet_connection;
|
2024-01-31 21:48:55 +03:00
|
|
|
/// first setup crates
|
|
|
|
mod first_setup;
|
2024-01-30 23:33:07 +03:00
|
|
|
|
|
|
|
/// main function
|
|
|
|
fn main() {
|
2024-02-09 00:49:42 +03:00
|
|
|
let application = adw::Application::new(
|
|
|
|
Some("com.github.pikaos-linux.pikafirstsetup"),
|
|
|
|
Default::default(),
|
|
|
|
);
|
2024-01-30 23:33:07 +03:00
|
|
|
application.connect_startup(|app| {
|
|
|
|
// The CSS "magic" happens here.
|
|
|
|
let provider = CssProvider::new();
|
|
|
|
provider.load_from_string(include_str!("style.css"));
|
|
|
|
// We give the CssProvided to the default screen so the CSS rules we added
|
|
|
|
// can be applied to our window.
|
|
|
|
gtk::style_context_add_provider_for_display(
|
|
|
|
&Display::default().expect("Could not connect to a display."),
|
|
|
|
&provider,
|
|
|
|
STYLE_PROVIDER_PRIORITY_APPLICATION,
|
|
|
|
);
|
|
|
|
|
|
|
|
app.connect_activate(build_ui);
|
|
|
|
});
|
2024-02-09 00:49:42 +03:00
|
|
|
|
2024-01-30 23:33:07 +03:00
|
|
|
application.run();
|
|
|
|
}
|