diff -r 6bd37fe6d905 -r ee4e4742391e application/application.c --- a/application/application.c Wed Oct 23 21:46:43 2024 +0200 +++ b/application/application.c Sun Oct 27 18:24:37 2024 +0100 @@ -36,9 +36,12 @@ #include "window.h" #include "config.h" #include "davcontroller.h" +#include "settings.h" static DavContext* davctx; +static DavApp *app; + void application_init(void) { davctx = dav_context_new(); dav_context_set_mtsafe(davctx, true); @@ -46,6 +49,9 @@ application_create_menu(); } +DavApp* get_application(void) { + return app; +} void application_startup(UiEvent* event, void* data) { if (load_config(davctx)) { @@ -56,7 +62,7 @@ window_init(); // create document for global settings (repolist, ...) - DavApp *app = application_create_app_document(); + app = application_create_app_document(); UiContext *global = ui_global_context(); ui_attach_document(global, app); @@ -135,13 +141,14 @@ void application_update_repolist(DavApp *app) { DavConfig *config = get_config(); - DavCfgRepository *repo = config->repositories; ui_list_clear(app->repos); for (DavCfgRepository *repo = config->repositories; repo; repo = repo->next) { ui_list_append(app->repos, repo); } + + ui_notify(app->repos->observers, NULL); } @@ -307,7 +314,7 @@ } void action_open_settings(UiEvent *event, void *data) { - + settings_window_open(); } void action_open_properties(UiEvent *event, void *data) {