Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 49564 | Differences between
and this patch

Collapse All | Expand All

(-)/home/zoe/work/kazehakase-0.1.7/src/kz-bookmark-item.c (-3 / +5 lines)
Lines 18-24 Link Here
18
 *  along with this program; if not, write to the Free Software
18
 *  along with this program; if not, write to the Free Software
19
 *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19
 *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20
 *
20
 *
21
 *  $Id: kz-bookmark-item.c,v 1.19 2004/06/14 13:44:15 ikezoe Exp $
21
 *  $Id: kz-bookmark-item.c,v 1.20 2004/06/30 15:36:02 ikezoe Exp $
22
 */
22
 */
23
23
24
#include "kz-bookmark-item.h"
24
#include "kz-bookmark-item.h"
Lines 491-497 Link Here
491
	kz = menu->kz;
491
	kz = menu->kz;
492
492
493
	event_button = (GdkEventButton *)event;
493
	event_button = (GdkEventButton *)event;
494
	
494
495
	switch(event_button->button)
495
	switch(event_button->button)
496
	{
496
	{
497
	case 1:
497
	case 1:
Lines 503-509 Link Here
503
			gtk_menu_popup(GTK_MENU(menu->sub_menu), NULL, NULL, 
503
			gtk_menu_popup(GTK_MENU(menu->sub_menu), NULL, NULL, 
504
				       gtkutil_menu_position_under_widget,
504
				       gtkutil_menu_position_under_widget,
505
				       GTK_WIDGET(menu),
505
				       GTK_WIDGET(menu),
506
				       event_button->button, event_button->time);
506
				       0, event_button->time);
507
		}
507
		}
508
		else
508
		else
509
		{
509
		{
Lines 535-540 Link Here
535
						     event->button,
535
						     event->button,
536
						     event->time);
536
						     event->time);
537
		break;
537
		break;
538
	default:
539
		break;
538
	}
540
	}
539
541
540
	return TRUE;
542
	return TRUE;
(-)/home/zoe/work/kazehakase-0.1.7/src/kz-bookmark-menu.c (-32 / +66 lines)
Lines 18-24 Link Here
18
 *  along with this program; if not, write to the Free Software
18
 *  along with this program; if not, write to the Free Software
19
 *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19
 *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20
 *
20
 *
21
 *  $Id: kz-bookmark-menu.c,v 1.33 2004/06/14 05:43:08 ikezoe Exp $
21
 *  $Id: kz-bookmark-menu.c,v 1.36 2004/06/30 02:24:35 ikezoe Exp $
22
 */
22
 */
23
23
24
#include "kz-bookmark-menu.h"
24
#include "kz-bookmark-menu.h"
Lines 35-40 Link Here
35
#define KZ_BOOKMARK_MENU_TOOLTIP_KEY  "KzBookmarkMenu::ToolTips"
35
#define KZ_BOOKMARK_MENU_TOOLTIP_KEY  "KzBookmarkMenu::ToolTips"
36
#define KZ_BOOKMARK_MENU_EMPTY_KEY    "KzBookmarkMEnu::Empty"
36
#define KZ_BOOKMARK_MENU_EMPTY_KEY    "KzBookmarkMEnu::Empty"
37
#define KZ_BOOKMARK_MENU_PROXY_KEY    "KzBookmarkMenu::IsFolderProxy"
37
#define KZ_BOOKMARK_MENU_PROXY_KEY    "KzBookmarkMenu::IsFolderProxy"
38
#define KZ_BOOKMARK_MENU_BUTTON_KEY   "KzBookmarkMenu::MouseButton"
38
39
39
40
40
static gboolean   cb_menu_item_button_press      (GtkWidget      *widget,
41
static gboolean   cb_menu_item_button_press      (GtkWidget      *widget,
Lines 167-173 Link Here
167
kz_bookmark_menu_create_submenu (KzBookmark *folder, KzWindow *kz)
168
kz_bookmark_menu_create_submenu (KzBookmark *folder, KzWindow *kz)
168
{
169
{
169
	GtkWidget *submenu, *menu_item;
170
	GtkWidget *submenu, *menu_item;
170
	const gchar *link, *title;
171
171
172
	g_return_val_if_fail(KZ_IS_BOOKMARK(folder), NULL);
172
	g_return_val_if_fail(KZ_IS_BOOKMARK(folder), NULL);
173
	g_return_val_if_fail(kz_bookmark_is_folder(folder), NULL);
173
	g_return_val_if_fail(kz_bookmark_is_folder(folder), NULL);
Lines 176-186 Link Here
176
	/* create submenu  */
176
	/* create submenu  */
177
	submenu = gtk_menu_new();
177
	submenu = gtk_menu_new();
178
178
179
	/* channel link */
180
	link  = kz_bookmark_get_link(folder);
181
	title = kz_bookmark_get_document_title(folder);
182
	if (!title || !* title) title = kz_bookmark_get_title(folder);
183
184
	menu_item = kz_bookmark_menu_create_menuitem(folder, kz, TRUE);
179
	menu_item = kz_bookmark_menu_create_menuitem(folder, kz, TRUE);
185
	if (menu_item)
180
	if (menu_item)
186
	{
181
	{
Lines 423-428 Link Here
423
{
418
{
424
	KzBookmark *item;
419
	KzBookmark *item;
425
	const gchar *uri;
420
	const gchar *uri;
421
	gint button;
422
	gboolean is_folder_proxy;
426
423
427
	g_return_if_fail(KZ_IS_WINDOW(kz));
424
	g_return_if_fail(KZ_IS_WINDOW(kz));
428
425
Lines 430-443 Link Here
430
				 KZ_BOOKMARK_MENU_BOOKMARK_KEY);
427
				 KZ_BOOKMARK_MENU_BOOKMARK_KEY);
431
	g_return_if_fail(item);
428
	g_return_if_fail(item);
432
429
433
	if (kz_bookmark_is_folder(item)) return;
430
	button = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(widget),
431
				   KZ_BOOKMARK_MENU_BUTTON_KEY));
434
432
435
	uri = kz_bookmark_get_link(item);
433
	is_folder_proxy = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(widget),
434
			      KZ_BOOKMARK_MENU_PROXY_KEY));
436
435
437
	if (uri)
436
	if (kz_bookmark_is_folder(item) && !is_folder_proxy)
437
		return;
438
439
	uri = kz_bookmark_get_link(item);
440
	
441
	switch (button)
438
	{
442
	{
439
		kz_window_load_url(kz, uri);
443
	case 2:
444
		if (kz_bookmark_is_folder(item))
445
		{
446
			EggAction *action;
447
			kz_actions_set_bookmark_for_action(kz, item);
448
			action = egg_action_group_get_action(kz->actions,
449
							     "OpenAllBookmarks");
450
			if (action)
451
				egg_action_activate(action);
452
			kz_actions_set_bookmark_for_action(kz, NULL);
453
		}
454
		else if (uri)
455
			kz_window_open_new_tab(kz, uri);
456
		break;
457
	default:
458
		if (uri)
459
		{
460
			kz_window_load_url(kz, uri);
461
		}
462
		else if (kz_bookmark_is_folder(item))
463
		{
464
			GtkWidget *editor;
465
466
			editor = kz_bookmark_editor_new(kz_bookmarks->menu);
467
			kz_bookmark_editor_folder_view_select
468
				(KZ_BOOKMARK_EDITOR(editor), item);
469
			gtk_widget_show(editor);
470
		}
471
		break;
440
	}
472
	}
473
474
	button = 0;
475
	g_object_set_data(G_OBJECT(widget),
476
			  KZ_BOOKMARK_MENU_BUTTON_KEY,
477
			  GINT_TO_POINTER(button));
441
}
478
}
442
479
443
480
Lines 446-452 Link Here
446
cb_menu_item_button_press (GtkWidget *widget, GdkEventButton *event,
483
cb_menu_item_button_press (GtkWidget *widget, GdkEventButton *event,
447
			   KzWindow *kz)
484
			   KzWindow *kz)
448
{
485
{
449
	return FALSE;	
486
	return FALSE;
450
}
487
}
451
488
452
489
Lines 457-462 Link Here
457
	KzBookmark *item;
494
	KzBookmark *item;
458
	const gchar *uri;
495
	const gchar *uri;
459
	gboolean keep = FALSE;
496
	gboolean keep = FALSE;
497
	gint button = event->button;
460
498
461
	g_return_val_if_fail(KZ_IS_WINDOW(kz), FALSE);
499
	g_return_val_if_fail(KZ_IS_WINDOW(kz), FALSE);
462
500
Lines 466-489 Link Here
466
504
467
	uri = kz_bookmark_get_link(item);
505
	uri = kz_bookmark_get_link(item);
468
506
469
	switch (event->button)
507
	g_object_set_data(G_OBJECT(widget),
470
	{
508
			  KZ_BOOKMARK_MENU_BUTTON_KEY,
471
	case 1:
509
			  GINT_TO_POINTER(button));
472
		if (uri)
473
		{
474
			kz_window_load_url(kz, uri);
475
		}
476
		else if (kz_bookmark_is_folder(item))
477
		{
478
			GtkWidget *editor;
479
510
480
			editor = kz_bookmark_editor_new(kz_bookmarks->menu);
511
	switch (button)
481
			kz_bookmark_editor_folder_view_select
512
	{
482
				(KZ_BOOKMARK_EDITOR(editor), item);
483
			gtk_widget_show(editor);
484
		}
485
		break;
486
	case 2:
513
	case 2:
514
		KZ_CONF_GET("Global", "keep_bookmark_menu", keep, BOOL);
515
		if (!keep)
516
			return FALSE;
517
487
		if (kz_bookmark_is_folder(item))
518
		if (kz_bookmark_is_folder(item))
488
		{
519
		{
489
			EggAction *action;
520
			EggAction *action;
Lines 496-505 Link Here
496
		}
527
		}
497
		else if (uri)
528
		else if (uri)
498
			kz_window_open_new_tab(kz, uri);
529
			kz_window_open_new_tab(kz, uri);
499
		KZ_CONF_GET("Global", "keep_bookmark_menu", keep, BOOL);
530
		/* reset release button state */
500
		if (keep)
531
		button = 0;
501
			return TRUE;
532
		g_object_set_data(G_OBJECT(widget),
502
		return FALSE;
533
				  KZ_BOOKMARK_MENU_BUTTON_KEY,
534
				  GINT_TO_POINTER(button));
535
536
		return TRUE;
503
		break;
537
		break;
504
	case 3:
538
	case 3:
505
		kz_actions_popup_bookmark_menu_modal(kz, item,
539
		kz_actions_popup_bookmark_menu_modal(kz, item,

Return to bug 49564