tazweb rev 58
Move main window stuff to create_window and use shorter but clear name for some functions
author | Christophe Lincoln <pankso@slitaz.org> |
---|---|
date | Fri Apr 22 02:26:57 2011 +0200 (2011-04-22) |
parents | 3621164d6fc9 |
children | 1073112f24ce |
files | src/main.c |
line diff
1.1 --- a/src/main.c Fri Apr 22 01:43:51 2011 +0200 1.2 +++ b/src/main.c Fri Apr 22 02:26:57 2011 +0200 1.3 @@ -10,7 +10,7 @@ 1.4 #include <gtk/gtk.h> 1.5 #include <webkit/webkit.h> 1.6 1.7 -static GtkWidget *main_window, *uri_entry, *search_entry; 1.8 +static GtkWidget *main_window, *scrolled, *toolbar, *uri_entry, *search_entry; 1.9 static WebKitWebView* web_view; 1.10 static WebKitWebFrame* frame; 1.11 static gdouble load_progress; 1.12 @@ -103,7 +103,7 @@ 1.13 1.14 /* URL entry callback function */ 1.15 static void 1.16 -activate_uri_entry_cb (GtkWidget* entry, gpointer data) 1.17 +uri_entry_cb (GtkWidget* entry, gpointer data) 1.18 { 1.19 uri = gtk_entry_get_text (GTK_ENTRY (entry)); 1.20 g_assert (uri); 1.21 @@ -112,7 +112,7 @@ 1.22 1.23 /* Search entry callback function */ 1.24 static void 1.25 -activate_search_entry_cb (GtkWidget* entry, gpointer data) 1.26 +search_entry_cb (GtkWidget* entry, gpointer data) 1.27 { 1.28 uri = g_strdup_printf ("http://www.google.com/search?q=%s", 1.29 gtk_entry_get_text (GTK_ENTRY (entry))); 1.30 @@ -183,15 +183,16 @@ 1.31 gtk_widget_show_all (GTK_WIDGET (menu)); 1.32 } 1.33 1.34 +/* Scrolled window for the web_view */ 1.35 static GtkWidget* 1.36 create_browser () 1.37 { 1.38 - GtkWidget* scrolled_window = gtk_scrolled_window_new (NULL, NULL); 1.39 - gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), 1.40 + scrolled = gtk_scrolled_window_new (NULL, NULL); 1.41 + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled), 1.42 GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); 1.43 1.44 web_view = WEBKIT_WEB_VIEW (webkit_web_view_new ()); 1.45 - gtk_container_add (GTK_CONTAINER (scrolled_window), GTK_WIDGET (web_view)); 1.46 + gtk_container_add (GTK_CONTAINER (scrolled), GTK_WIDGET (web_view)); 1.47 1.48 /* Connect events */ 1.49 g_signal_connect (web_view, "notify::title", 1.50 @@ -207,7 +208,7 @@ 1.51 g_object_connect (G_OBJECT (web_view), "signal::populate-popup", 1.52 G_CALLBACK (populate_menu_cb), web_view, NULL); 1.53 1.54 - return scrolled_window; 1.55 + return scrolled; 1.56 } 1.57 1.58 static GtkWidget* 1.59 @@ -215,7 +216,7 @@ 1.60 { 1.61 GtkToolItem* item; 1.62 1.63 - GtkWidget* toolbar = gtk_toolbar_new (); 1.64 + toolbar = gtk_toolbar_new (); 1.65 gtk_widget_set_size_request (toolbar, 0, 31); 1.66 gtk_toolbar_set_orientation (GTK_TOOLBAR (toolbar), 1.67 GTK_ORIENTATION_HORIZONTAL); 1.68 @@ -234,7 +235,7 @@ 1.69 uri_entry = gtk_entry_new (); 1.70 gtk_container_add (GTK_CONTAINER (item), uri_entry); 1.71 g_signal_connect (G_OBJECT (uri_entry), "activate", 1.72 - G_CALLBACK (activate_uri_entry_cb), NULL); 1.73 + G_CALLBACK (uri_entry_cb), NULL); 1.74 gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1); 1.75 1.76 /* Separator */ 1.77 @@ -246,7 +247,7 @@ 1.78 search_entry = gtk_entry_new (); 1.79 gtk_container_add (GTK_CONTAINER (item), search_entry); 1.80 g_signal_connect (G_OBJECT (search_entry), "activate", 1.81 - G_CALLBACK (activate_search_entry_cb), NULL); 1.82 + G_CALLBACK (search_entry_cb), NULL); 1.83 gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1); 1.84 1.85 /* TazWeb doc button */ 1.86 @@ -264,19 +265,26 @@ 1.87 return toolbar; 1.88 } 1.89 1.90 +/* Main window */ 1.91 static GtkWidget* 1.92 create_window () 1.93 { 1.94 GtkWidget* window = gtk_window_new (GTK_WINDOW_TOPLEVEL); 1.95 - 1.96 - /* Default tazweb window size ratio to 3/4 --> 720, 540*/ 1.97 + GtkWidget* vbox = gtk_vbox_new (FALSE, 0); 1.98 + 1.99 + gtk_box_pack_start (GTK_BOX (vbox), create_browser (), TRUE, TRUE, 0); 1.100 + gtk_box_pack_start (GTK_BOX (vbox), create_toolbar (), FALSE, FALSE, 0); 1.101 + 1.102 + /* Default TazWeb window size ratio to 3/4 --> 720, 540*/ 1.103 gtk_window_set_default_size (GTK_WINDOW (window), 800, 600); 1.104 gtk_window_set_icon (GTK_WINDOW (window), 1.105 create_pixbuf ("/usr/share/pixmaps/tazweb.png")); 1.106 gtk_widget_set_name (window, "TazWeb"); 1.107 g_signal_connect (window, "destroy", G_CALLBACK (destroy_cb), NULL); 1.108 + gtk_container_add (GTK_CONTAINER (window), vbox); 1.109 1.110 - return window; 1.111 + main_window = window; 1.112 + gtk_widget_show_all (main_window); 1.113 } 1.114 1.115 int 1.116 @@ -287,22 +295,15 @@ 1.117 g_thread_init (NULL); 1.118 1.119 get_config (); 1.120 - 1.121 - GtkWidget* vbox = gtk_vbox_new (FALSE, 0); 1.122 - gtk_box_pack_start (GTK_BOX (vbox), create_browser (), TRUE, TRUE, 0); 1.123 - gtk_box_pack_start (GTK_BOX (vbox), create_toolbar (), FALSE, FALSE, 0); 1.124 - 1.125 - main_window = create_window (); 1.126 - gtk_container_add (GTK_CONTAINER (main_window), vbox); 1.127 - 1.128 + create_window (); 1.129 + 1.130 /* Start page url or file */ 1.131 uri = (gchar*) (argc > 1 ? argv[1] : 1.132 "file:///usr/share/webhome/index.html"); 1.133 1.134 webkit_web_view_load_uri (web_view, uri); 1.135 gtk_widget_grab_focus (GTK_WIDGET (web_view)); 1.136 - gtk_widget_show_all (main_window); 1.137 + 1.138 gtk_main (); 1.139 - 1.140 return 0; 1.141 }