void (*func)(void);
} uzbl_cmdprop;
-enum {TYPE_INT, TYPE_STR, TYPE_FLOAT};
+enum {TYPE_INT, TYPE_STR};
/* an abbreviation to help keep the table's width humane */
#define PTR(var, t, d, fun) { .ptr = (void*)&(var), .type = TYPE_##t, .dump = d, .func = fun }
{ "stop", {view_stop_loading, 0}, },
{ "zoom_in", {view_zoom_in, 0}, }, //Can crash (when max zoom reached?).
{ "zoom_out", {view_zoom_out, 0}, },
+ { "reset_zoom", {reset_zoom_level, 0}, },
{ "uri", {load_uri, NOSPLIT} },
{ "js", {run_js, NOSPLIT} },
{ "script", {run_external_js, 0} },
}
static void
+reset_zoom_level (WebKitWebView *page, GArray *argv) {
+ (void) argv;
+ webkit_web_view_set_zoom_level (page, 1.0);
+}
+
+static void
dehilight (WebKitWebView *page, GArray *argv) {
(void) argv;
webkit_web_view_set_highlight_text_matches (page, FALSE);
}
static void
-cmd_zoom_level() {
- webkit_web_view_set_zoom_level (uzbl.gui.web_view, uzbl.behave.zoom_level);
-}
-
-static void
cmd_disable_plugins() {
g_object_set (G_OBJECT(view_settings()), "enable-plugins",
!uzbl.behave.disable_plugins, NULL);
GError *error = NULL;
gchar *path = build_stream_name(FIFO, dir);
+ // This extra check is an alternative to recursively calling init_fifo() or using goto
+ if (file_exists(path)) {
+ if (unlink(path))
+ g_warning ("init_fifo: can't delete %s: %s", path, strerror(errno));
+ }
+
if (!file_exists(path)) {
if (mkfifo (path, 0666) == 0) {
// we don't really need to write to the file, but if we open the file as 'r' we will block here, waiting for a writer to open the file.
static
GtkWidget* create_window () {
GtkWidget* window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ gchar* uzbl_icon = find_xdg_file(1, "/uzbl/uzbl.png");
gtk_window_set_default_size (GTK_WINDOW (window), 800, 600);
gtk_widget_set_name (window, "Uzbl browser");
+ gtk_window_set_icon_from_file (GTK_WINDOW (window), uzbl_icon, NULL);
g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (destroy_cb), NULL);
g_signal_connect (G_OBJECT (window), "key-press-event", G_CALLBACK (key_press_cb), NULL);
+ g_free (uzbl_icon);
+
return window;
}
get_xdg_var (XDG_Var xdg) {
const gchar* actual_value = getenv (xdg.environmental);
const gchar* home = getenv ("HOME");
-
- gchar* return_value = str_replace ("~", home, actual_value);
+ gchar* return_value;
if (! actual_value || strcmp (actual_value, "") == 0) {
if (xdg.default_value) {
} else {
return_value = NULL;
}
+ } else {
+ return_value = str_replace("~", home, actual_value);
}
+
return return_value;
}
}
static gboolean
-inspector_dettach_window_cb (WebKitWebInspector* inspector){
+inspector_detach_window_cb (WebKitWebInspector* inspector){
(void) inspector;
return FALSE;
}
g_signal_connect (G_OBJECT (g->inspector), "show-window", G_CALLBACK (inspector_show_window_cb), NULL);
g_signal_connect (G_OBJECT (g->inspector), "close-window", G_CALLBACK (inspector_close_window_cb), NULL);
g_signal_connect (G_OBJECT (g->inspector), "attach-window", G_CALLBACK (inspector_attach_window_cb), NULL);
- g_signal_connect (G_OBJECT (g->inspector), "dettach-window", G_CALLBACK (inspector_dettach_window_cb), NULL);
- g_signal_connect (G_OBJECT (g->inspector), "destroy", G_CALLBACK (inspector_inspector_destroyed_cb), NULL);
+ g_signal_connect (G_OBJECT (g->inspector), "detach-window", G_CALLBACK (inspector_detach_window_cb), NULL);
+ g_signal_connect (G_OBJECT (g->inspector), "finished", G_CALLBACK (inspector_inspector_destroyed_cb), NULL);
g_signal_connect (G_OBJECT (g->inspector), "notify::inspected-uri", G_CALLBACK (inspector_uri_changed_cb), NULL);
}