]> git.street.me.uk Git - andy/viking.git/blobdiff - src/main.c
Refactor: TrackWaypoint sublayer menu callback functions.
[andy/viking.git] / src / main.c
index cc2e499d4f3c593751ce9d395931246889e6c556..f20fdcf8c67b693ebfa6e21248ccb362315ff9cb 100644 (file)
@@ -35,6 +35,7 @@
 #include "globals.h"
 #include "vikmapslayer.h"
 #include "vikrouting.h"
+#include "vikutils.h"
 
 #ifdef VIK_CONFIG_GEOCACHES
 void a_datasource_gc_init();
@@ -120,7 +121,9 @@ int main( int argc, char *argv[] )
   bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
   textdomain (GETTEXT_PACKAGE);
 
+#if ! GLIB_CHECK_VERSION (2, 32, 0)
   g_thread_init ( NULL );
+#endif
   gdk_threads_init ();
 
   gui_initialized = gtk_init_with_args (&argc, &argv, "files+", entries, NULL, &error);
@@ -161,6 +164,10 @@ int main( int argc, char *argv[] )
   XSetErrorHandler(myXErrorHandler);
 #endif
 
+  // Discover if this is the very first run
+  a_vik_very_first_run ();
+
+  a_settings_init ();
   a_preferences_init ();
 
   a_vik_preferences_init ();
@@ -191,9 +198,14 @@ int main( int argc, char *argv[] )
 
   gdk_threads_enter ();
 
+  // Ask for confirmation of default settings on first run
+  vu_set_auto_features_on_first_run ();
+
   /* Create the first window */
   first_window = vik_window_new_window();
 
+  vu_check_latest_version ( GTK_WINDOW(first_window) );
+
   while ( ++i < argc ) {
     if ( strcmp(argv[i],"--") == 0 && !dashdash_already )
       dashdash_already = TRUE; /* hack to open '-' */
@@ -211,6 +223,8 @@ int main( int argc, char *argv[] )
     }
   }
 
+  vik_window_new_window_finish ( first_window );
+
   gtk_main ();
   gdk_threads_leave ();
 
@@ -221,6 +235,7 @@ int main( int argc, char *argv[] )
   a_dems_uninit ();
   a_layer_defaults_uninit ();
   a_preferences_uninit ();
+  a_settings_uninit ();
 
   curl_download_uninit();