summaryrefslogtreecommitdiff
path: root/app/src/main.cpp
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2024-08-19 09:16:39 +0200
committerFelix Morgner <felix.morgner@gmail.com>2024-08-19 09:16:39 +0200
commit29af89fc6536de128a123566d2854350d00d150f (patch)
tree71c9487cefde54faa6730854be6ed8a407e0451a /app/src/main.cpp
parente2dad5f30ca4d8502558e0560d2059a51aae4c4c (diff)
downloadturns-29af89fc6536de128a123566d2854350d00d150f.tar.xz
turns-29af89fc6536de128a123566d2854350d00d150f.zip
app: pass down settings
Diffstat (limited to 'app/src/main.cpp')
-rw-r--r--app/src/main.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/app/src/main.cpp b/app/src/main.cpp
index f21dc20..88d3b6b 100644
--- a/app/src/main.cpp
+++ b/app/src/main.cpp
@@ -1,5 +1,6 @@
#include "turns/adw/application.hpp"
#include "turns/core/init.hpp"
+#include "turns/core/settings.hpp"
#include "turns/ui/init.hpp"
#include "turns/ui/windows/tracker.hpp"
@@ -8,6 +9,7 @@
#include <glibmm/refptr.h>
#include <giomm/application.h>
+#include <giomm/settings.h>
#include <gtkmm/builder.h>
@@ -17,9 +19,9 @@
#include <clocale>
#include <print>
-auto add_new_window(Glib::RefPtr<Gtk::Application> app, Glib::RefPtr<Gtk::Builder> builder)
+auto add_new_window(Glib::RefPtr<Gtk::Application> app, Glib::RefPtr<Gtk::Builder> builder, Glib::RefPtr<Gio::Settings> settings)
{
- auto window = Gtk::Builder::get_widget_derived<turns::ui::windows::tracker>(builder, "tracker");
+ auto window = Gtk::Builder::get_widget_derived<turns::ui::windows::tracker>(builder, "tracker", settings);
app->add_window(*window);
app->signal_shutdown().connect([window] {
window->close();
@@ -37,6 +39,7 @@ auto main(int argc, char * argv[]) -> int
auto app = turns::adw::Application::create("ch.arknet.Turns", Gio::Application::Flags::HANDLES_OPEN);
auto builder = Gtk::Builder::create_from_resource("/windows/tracker.ui");
+ auto settings = turns::core::get_settings();
app->signal_startup().connect([app] {
turns::core::register_types();
@@ -57,18 +60,18 @@ auto main(int argc, char * argv[]) -> int
app->set_accel_for_action("win.save-as", "<Primary><Shift>s");
});
- app->signal_activate().connect([app, builder] {
- auto window = add_new_window(app, builder);
+ app->signal_activate().connect([app, builder, settings] {
+ auto window = add_new_window(app, builder, settings);
window->present();
});
- app->signal_open().connect([app, builder](auto files, auto) {
+ app->signal_open().connect([app, builder, settings](auto files, auto) {
auto windows = app->get_windows();
auto window = static_cast<turns::ui::windows::tracker *>(nullptr);
if (windows.empty())
{
- window = add_new_window(app, builder);
+ window = add_new_window(app, builder, settings);
}
else
{