mod clock;
mod config;
mod drag;
mod platform;
mod render;
mod state;
mod ui;
mod window;
use clap::Parser;
use config::{merge_config_and_args, Args};
use gtk::prelude::*;
use gtk::Application;
use log::LevelFilter;
fn main() {
let mut logger_builder = env_logger::Builder::from_default_env();
if std::env::var("RUST_LOG").is_err() {
logger_builder.filter_level(LevelFilter::Warn);
}
logger_builder.init();
let args = Args::parse();
let file_config = config::load_or_create_config();
let config = merge_config_and_args(file_config, args);
let app = Application::builder()
.application_id("com.github.reloj-wayland")
.build();
app.connect_activate(move |app| ui::run(app, config.clone()));
app.run_with_args::<&str>(&[]);
}