]> Dogcows Code - chaz/tint2/blobdiff - src/tint.c
*add* real transparency is now supported... most systray applications work out of...
[chaz/tint2] / src / tint.c
index cdb72a88cfa70751b525e927e21895c6aec783a1..27458b8d87a4569c4487179012f391d81cf141e7 100644 (file)
@@ -61,7 +61,7 @@ void init (int argc, char *argv[])
                        printf("tint2 version 0.8\n");
                        exit(0);
                }
-               if (!strcmp(argv[i], "-c"))     {
+               if (!strcmp(argv[i], "-c")) {
                        i++;
                        if (i < argc)
                                config_path = strdup(argv[i]);
@@ -91,7 +91,7 @@ void init (int argc, char *argv[])
 
        // set global data
        memset(&server, 0, sizeof(Server_global));
-       memset(&systray, 0, sizeof(Systraybar));
+//     memset(&systray, 0, sizeof(Systraybar));
 
        server.dsp = XOpenDisplay (NULL);
        if (!server.dsp) {
@@ -101,17 +101,13 @@ void init (int argc, char *argv[])
        server_init_atoms ();
        server.screen = DefaultScreen (server.dsp);
        server.root_win = RootWindow(server.dsp, server.screen);
-       server.depth = DefaultDepth (server.dsp, server.screen);
-       server.visual = DefaultVisual (server.dsp, server.screen);
        server.desktop = server_get_current_desktop ();
-       XGCValues  gcv;
-       server.gc = XCreateGC (server.dsp, server.root_win, (unsigned long)0, &gcv);
-
+       server_init_visual();
        XSetErrorHandler ((XErrorHandler) server_catch_error);
 
        imlib_context_set_display (server.dsp);
        imlib_context_set_visual (server.visual);
-       imlib_context_set_colormap (DefaultColormap (server.dsp, server.screen));
+       imlib_context_set_colormap (server.colormap);
 
        /* Catch events */
        XSelectInput (server.dsp, server.root_win, PropertyChangeMask|StructureNotifyMask);
@@ -153,8 +149,7 @@ void cleanup()
        if (config_path) g_free(config_path);
        if (snapshot_path) g_free(snapshot_path);
 
-       if (server.monitor) free(server.monitor);
-       XFreeGC(server.dsp, server.gc);
+       cleanup_server();
        XCloseDisplay(server.dsp);
 }
 
@@ -684,10 +679,8 @@ int main (int argc, char *argv[])
        GSList *it;
        const struct timespec* timeout;
 
-       init (argc, argv);
-
-       i = 0;
        init_config();
+       i = 0;
        if (config_path)
                i = config_read_file (config_path);
        else
@@ -697,6 +690,9 @@ int main (int argc, char *argv[])
                cleanup();
                exit(1);
        }
+
+       init (argc, argv);
+
        init_panel();
        cleanup_config();
        if (snapshot_path) {
This page took 0.021974 seconds and 4 git commands to generate.