tazweb rev 64

Clean-up main() and rename draw_loader since it's standard functions not a callback
author Christophe Lincoln <pankso@slitaz.org>
date Fri Apr 22 08:57:59 2011 +0200 (2011-04-22)
parents 8389defee9b9
children 0b5ed969f4f2
files src/main.c
line diff
     1.1 --- a/src/main.c	Fri Apr 22 08:48:23 2011 +0200
     1.2 +++ b/src/main.c	Fri Apr 22 08:57:59 2011 +0200
     1.3 @@ -36,17 +36,9 @@
     1.4  	return pixbuf;
     1.5  }
     1.6  
     1.7 -/* Get a default home.html if missing */
     1.8 -static void
     1.9 -get_config ()
    1.10 -{
    1.11 -	if (! g_file_test (CONFIG, G_FILE_TEST_EXISTS))
    1.12 -		system ("cp -r /usr/share/tazweb $HOME/.config/tazweb");
    1.13 -}
    1.14 -
    1.15  /* Loader area */
    1.16  static void
    1.17 -draw_loader_cb ()
    1.18 +draw_loader ()
    1.19  {
    1.20  	GdkGC *gc = gdk_gc_new (loader->window);
    1.21  	GdkColor fg;
    1.22 @@ -64,6 +56,14 @@
    1.23  	g_object_unref (gc);
    1.24  }
    1.25  
    1.26 +/* Loader progress */
    1.27 +static gboolean
    1.28 +expose_loader_cb (GtkWidget *area, GdkEventExpose *event, gpointer data)
    1.29 +{
    1.30 +	draw_loader();
    1.31 +	return TRUE;
    1.32 +}
    1.33 +
    1.34  /* Update title and loader */
    1.35  static void
    1.36  update ()
    1.37 @@ -71,14 +71,14 @@
    1.38  	title = g_strdup (main_title);
    1.39  	if (! main_title)
    1.40  		title = g_strdup_printf ("Unknow - TazWeb", main_title);
    1.41 -	draw_loader_cb ();
    1.42 +	draw_loader ();
    1.43  	gtk_window_set_title (GTK_WINDOW (main_window), title);
    1.44  	g_free (title);
    1.45  }
    1.46  
    1.47  /* Get the page title */
    1.48  static void
    1.49 -notify_title_cb (WebKitWebView *web_view, WebKitWebFrame *frame)
    1.50 +notify_title_cb (WebKitWebView* web_view, GParamSpec* pspec, gpointer data)
    1.51  {
    1.52  	main_title = g_strdup (webkit_web_view_get_title (web_view));
    1.53  	update ();
    1.54 @@ -92,14 +92,6 @@
    1.55  	update ();
    1.56  }
    1.57  
    1.58 -/* Loader progress */
    1.59 -static gboolean
    1.60 -expose_loader_cb (GtkWidget *area, GdkEventExpose *event, gpointer data)
    1.61 -{
    1.62 -	draw_loader_cb();
    1.63 -	return TRUE;
    1.64 -}
    1.65 -
    1.66  /* Notify loader and url entry */
    1.67  static void
    1.68  notify_load_status_cb (WebKitWebView* web_view, GParamSpec* pspec, gpointer data)
    1.69 @@ -360,7 +352,7 @@
    1.70  	gtk_widget_set_name (window, "TazWeb");
    1.71  	g_signal_connect (window, "destroy", G_CALLBACK (destroy_cb), NULL);
    1.72  
    1.73 -	/* Pack box and caontainer */
    1.74 +	/* Pack box and container */
    1.75  	gtk_box_pack_start (GTK_BOX (vbox), create_browser (), TRUE, TRUE, 0);
    1.76  	gtk_container_add (GTK_CONTAINER (vbox), create_loader());
    1.77  	gtk_box_set_child_packing (GTK_BOX (vbox), loader,
    1.78 @@ -379,16 +371,18 @@
    1.79  	if (!g_thread_supported ())
    1.80  		g_thread_init (NULL);
    1.81  
    1.82 -	get_config ();
    1.83 -	create_window ();
    1.84 -	
    1.85 -	/* Start page url or file */
    1.86 +	/* Get a default home.html if missing */
    1.87 +	if (! g_file_test (CONFIG, G_FILE_TEST_EXISTS))
    1.88 +		system ("cp -r /usr/share/tazweb $HOME/.config/tazweb");
    1.89 +
    1.90 +	/* Load the start page file or the url in argument */
    1.91  	uri = (gchar*) (argc > 1 ? argv[1] :
    1.92  			"file:///usr/share/webhome/index.html");
    1.93  	
    1.94 +	create_window ();
    1.95  	webkit_web_view_load_uri (web_view, uri);
    1.96  	gtk_widget_grab_focus (GTK_WIDGET (web_view));
    1.97 +	gtk_main ();
    1.98  	
    1.99 -	gtk_main ();
   1.100  	return 0;
   1.101  }