Store argument vector and display it in about:version

This commit is contained in:
Christian Dywan 2010-01-12 23:22:50 +01:00
parent 03450316b0
commit dab3505e0c
4 changed files with 32 additions and 0 deletions

View file

@ -1763,6 +1763,9 @@ main (int argc,
#endif #endif
#endif #endif
/* Preserve argument vector */
sokoke_get_argv (argv);
/* Parse cli options */ /* Parse cli options */
webapp = NULL; webapp = NULL;
config = NULL; config = NULL;

View file

@ -3226,6 +3226,8 @@ midori_view_set_uri (MidoriView* view,
} }
else if (!strcmp (uri, "about:version")) else if (!strcmp (uri, "about:version"))
{ {
gchar** argument_vector = sokoke_get_argv (NULL);
gchar* command_line = g_strjoinv (" ", argument_vector);
gchar* ident = katze_object_get_string (view->settings, "ident-string"); gchar* ident = katze_object_get_string (view->settings, "ident-string");
#if defined (G_OS_WIN32) #if defined (G_OS_WIN32)
gchar* sys_name = g_strdup ("Windows"); gchar* sys_name = g_strdup ("Windows");
@ -3261,6 +3263,7 @@ midori_view_set_uri (MidoriView* view,
"<img src=\"res://logo-shade.png\" " "<img src=\"res://logo-shade.png\" "
"style=\"position: absolute; right: 15px; bottom: 15px; z-index: -9;\">" "style=\"position: absolute; right: 15px; bottom: 15px; z-index: -9;\">"
"<table>" "<table>"
"<tr><td>Command line</td><td>%s</td></tr>"
"<tr><td>Midori</td><td>" PACKAGE_VERSION "%s</td></tr>" "<tr><td>Midori</td><td>" PACKAGE_VERSION "%s</td></tr>"
"<tr><td>WebKitGTK+</td><td>%d.%d.%d (%d.%d.%d)</td></tr>" "<tr><td>WebKitGTK+</td><td>%d.%d.%d (%d.%d.%d)</td></tr>"
"<tr><td>GTK+</td><td>%d.%d.%d (%d.%d.%d)</td></tr>" "<tr><td>GTK+</td><td>%d.%d.%d (%d.%d.%d)</td></tr>"
@ -3275,6 +3278,7 @@ midori_view_set_uri (MidoriView* view,
"<tr><td>Identification</td><td>%s</td></tr>" "<tr><td>Identification</td><td>%s</td></tr>"
"</table>" "</table>"
"</body></html>", "</body></html>",
command_line,
DEBUGGING, DEBUGGING,
WEBKIT_MAJOR_VERSION, WEBKIT_MAJOR_VERSION,
WEBKIT_MINOR_VERSION, WEBKIT_MINOR_VERSION,
@ -3293,6 +3297,9 @@ midori_view_set_uri (MidoriView* view,
HAVE_UNIQUE ? "Yes" : "No", HAVE_UNIQUE ? "Yes" : "No",
HAVE_HILDON ? "Yes" : "No", HAVE_HILDON ? "Yes" : "No",
sys_name, ident); sys_name, ident);
g_free (command_line);
g_free (ident);
g_free (sys_name);
} }
else else
{ {

View file

@ -1384,6 +1384,25 @@ sokoke_find_data_filename (const gchar* filename)
return g_build_filename (MDATADIR, filename, NULL); return g_build_filename (MDATADIR, filename, NULL);
} }
/**
* sokoke_get_argv:
* @argument_vector: %NULL
*
* Retrieves the argument vector passed at program startup.
*
* Return value: the argument vector
**/
gchar**
sokoke_get_argv (gchar** argument_vector)
{
static gchar** stored_argv = NULL;
if (!stored_argv)
stored_argv = g_strdupv (argument_vector);
return stored_argv;
}
#if !WEBKIT_CHECK_VERSION (1, 1, 14) #if !WEBKIT_CHECK_VERSION (1, 1, 14)
static void static void
res_server_handler_cb (SoupServer* res_server, res_server_handler_cb (SoupServer* res_server,

View file

@ -183,6 +183,9 @@ sokoke_find_config_filename (const gchar* folder,
gchar* gchar*
sokoke_find_data_filename (const gchar* filename); sokoke_find_data_filename (const gchar* filename);
gchar**
sokoke_get_argv (gchar** argument_vector);
#if !WEBKIT_CHECK_VERSION (1, 1, 14) #if !WEBKIT_CHECK_VERSION (1, 1, 14)
SoupServer* SoupServer*
sokoke_get_res_server (void); sokoke_get_res_server (void);