svnno****@sourc*****
svnno****@sourc*****
Wed Mar 12 18:47:55 JST 2008
Revision: 3482 http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=kazehakase&view=rev&rev=3482 Author: pal_gene Date: 2008-03-12 18:47:55 +0900 (Wed, 12 Mar 2008) Log Message: ----------- Add always open in new tab on bookmark. My body needed this really. Modified Paths: -------------- kazehakase/trunk/etc/kzrc kazehakase/trunk/src/bookmarks/kz-bookmark-menu-item.c kazehakase/trunk/src/prefs_ui/prefs_bookmark.c Modified: kazehakase/trunk/etc/kzrc =================================================================== --- kazehakase/trunk/etc/kzrc 2008-03-12 09:47:51 UTC (rev 3481) +++ kazehakase/trunk/etc/kzrc 2008-03-12 09:47:55 UTC (rev 3482) @@ -16,6 +16,9 @@ # When you click bookmark menu bymiddle mouse button, bookmark menu keeps popuping. keep_bookmark_menu=false +# When you click bookmark menu, always open in new tab +always_open_new=false + # When you click bookmark menu which indicates folder by middle mouse button, # confirmation dialog shows. confirm_open_bookmarks=true Modified: kazehakase/trunk/src/bookmarks/kz-bookmark-menu-item.c =================================================================== --- kazehakase/trunk/src/bookmarks/kz-bookmark-menu-item.c 2008-03-12 09:47:51 UTC (rev 3481) +++ kazehakase/trunk/src/bookmarks/kz-bookmark-menu-item.c 2008-03-12 09:47:55 UTC (rev 3482) @@ -215,15 +215,24 @@ const gchar *uri; KzBookmarkMenuItem *bitem; KzBookmarkBaseMenuItem *parent; - + gboolean open_new; + parent = KZ_BOOKMARK_BASE_MENU_ITEM(item); bitem = KZ_BOOKMARK_MENU_ITEM(item); if (!bitem->is_releasing_button) { uri = kz_bookmark_get_link(parent->bookmark); - - kz_window_load_url(parent->kz, uri); + + KZ_CONF_GET("Global", "always_open_new", open_new, BOOL); + if (open_new) + { + kz_window_open_new_tab(parent->kz, uri); + } + else + { + kz_window_load_url(parent->kz, uri); + } } bitem->is_releasing_button = FALSE; } Modified: kazehakase/trunk/src/prefs_ui/prefs_bookmark.c =================================================================== --- kazehakase/trunk/src/prefs_ui/prefs_bookmark.c 2008-03-12 09:47:51 UTC (rev 3481) +++ kazehakase/trunk/src/prefs_ui/prefs_bookmark.c 2008-03-12 09:47:55 UTC (rev 3482) @@ -51,6 +51,7 @@ GtkWidget *main_vbox; GtkWidget *bookmark_cutoff_strnum; GtkWidget *keep_bookmark_menu; + GtkWidget *always_open_new; GtkWidget *confirm_open_bookmarks; gboolean changed; } KzPrefsBookmark; @@ -79,7 +80,7 @@ GtkWidget *label, *check, *spin; GtkAdjustment *adj; gint bookmark_max_strnum; - gboolean keep = FALSE, confirm = TRUE; + gboolean keep = FALSE, open_new = FALSE, confirm = TRUE; main_vbox = gtk_vbox_new(FALSE, 0); prefsui->main_vbox = main_vbox; @@ -146,6 +147,15 @@ G_CALLBACK(cb_changed), prefsui); gtk_widget_show(check); + check = gtk_check_button_new_with_mnemonic(_("Always open in new tab")); + prefsui->always_open_new = check; + gtk_box_pack_start(GTK_BOX(vbox), check, FALSE, FALSE, 2); + KZ_CONF_GET("Global", "always_open_new", open_new, BOOL); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check), open_new); + g_signal_connect(check, "toggled", + G_CALLBACK(cb_changed), prefsui); + gtk_widget_show(check); + check = gtk_check_button_new_with_mnemonic(_("_Confirmation of opening all bookmarks in bookmark folder")); prefsui->confirm_open_bookmarks = check; gtk_box_pack_start(GTK_BOX(vbox), check, FALSE, FALSE, 2); @@ -189,6 +199,10 @@ KZ_CONF_SET("Global", "keep_bookmark_menu", keep, BOOL); keep = gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON(prefsui->always_open_new)); + KZ_CONF_SET("Global", "always_open_new", keep, BOOL); + + keep = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(prefsui->confirm_open_bookmarks)); KZ_CONF_SET("Global", "confirm_open_bookmarks", keep, BOOL);