aboutsummaryrefslogtreecommitdiffstats
path: root/src/ephy-tabs-menu.c
diff options
context:
space:
mode:
authorChristian Persch <chpe@cvs.gnome.org>2004-02-25 01:43:48 +0800
committerChristian Persch <chpe@src.gnome.org>2004-02-25 01:43:48 +0800
commit881bfd24e673370efefc8f5ceb3cec3afa9e44bc (patch)
tree49ade73b432ced4cc693e48ab9710999dc622286 /src/ephy-tabs-menu.c
parentcb176ab1f40f443c4051fb430c8b6ccb79290f67 (diff)
downloadgsoc2013-epiphany-881bfd24e673370efefc8f5ceb3cec3afa9e44bc.tar
gsoc2013-epiphany-881bfd24e673370efefc8f5ceb3cec3afa9e44bc.tar.gz
gsoc2013-epiphany-881bfd24e673370efefc8f5ceb3cec3afa9e44bc.tar.bz2
gsoc2013-epiphany-881bfd24e673370efefc8f5ceb3cec3afa9e44bc.tar.lz
gsoc2013-epiphany-881bfd24e673370efefc8f5ceb3cec3afa9e44bc.tar.xz
gsoc2013-epiphany-881bfd24e673370efefc8f5ceb3cec3afa9e44bc.tar.zst
gsoc2013-epiphany-881bfd24e673370efefc8f5ceb3cec3afa9e44bc.zip
Make EphyTab inherit from GtkBin, and contain the EphyEmbed as its child.
2004-02-24 Christian Persch <chpe@cvs.gnome.org> * src/ephy-nautilus-view.c: (gnv_embed_new_window_cb): * src/ephy-notebook.c: (ephy_notebook_class_init), (tab_label_size_request_cb), (ephy_notebook_move_tab), (move_tab), (motion_notify_cb), (move_tab_to_another_notebook), (button_release_cb), (ephy_notebook_switch_page_cb), (ephy_notebook_init), (close_button_clicked_cb), (build_tab_label), (ephy_notebook_insert_tab), (smart_tab_switching_on_closure), (ephy_notebook_remove_tab): * src/ephy-notebook.h: * src/ephy-session.c: (tab_added_cb), (tab_removed_cb): * src/ephy-shell.c: (ephy_shell_new_tab): * src/ephy-tab.c: (ephy_tab_get_type), (ephy_tab_size_allocate), (ephy_tab_parent_set), (ephy_tab_class_init), (ephy_tab_finalize), (ephy_tab_new), (ephy_tab_get_embed), (ephy_tab_for_embed), (ephy_tab_new_window_cb), (let_me_resize_hack), (ephy_tab_visibility_cb), (ephy_tab_size_to_cb), (ephy_tab_dom_mouse_click_cb), (ephy_tab_init), (ephy_tab_update_navigation_flags), (ephy_tab_set_title): * src/ephy-tab.h: * src/ephy-tabs-menu.c: (tab_added_cb), (tab_removed_cb), (tabs_reordered_cb), (ephy_tabs_menu_set_window), (ephy_tabs_menu_update): * src/ephy-window.c: (tab_added_cb), (tab_removed_cb), (tab_detached_cb), (tabs_reordered_cb), (tab_delete_cb), (setup_notebook), (ephy_window_add_tab), (ephy_window_jump_to_tab), (real_get_active_tab), (ephy_window_remove_tab), (ephy_window_get_active_tab), (ephy_window_get_active_embed), (ephy_window_get_tabs): * src/ephy-window.h: * src/window-commands.c: (window_cmd_tabs_move_left), (window_cmd_tabs_move_right), (window_cmd_tabs_detach): Make EphyTab inherit from GtkBin, and contain the EphyEmbed as its child.
Diffstat (limited to 'src/ephy-tabs-menu.c')
-rw-r--r--src/ephy-tabs-menu.c36
1 files changed, 13 insertions, 23 deletions
diff --git a/src/ephy-tabs-menu.c b/src/ephy-tabs-menu.c
index ffa4a7058..df6984627 100644
--- a/src/ephy-tabs-menu.c
+++ b/src/ephy-tabs-menu.c
@@ -38,10 +38,6 @@
#define MAX_LABEL_LENGTH 30
-/**
- * Private data
- */
-
#define EPHY_TABS_MENU_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), EPHY_TYPE_TABS_MENU, EphyTabsMenuPrivate))
struct _EphyTabsMenuPrivate
@@ -51,9 +47,6 @@ struct _EphyTabsMenuPrivate
guint ui_id;
};
-/**
- * Private functions, only availble from this file
- */
static void ephy_tabs_menu_class_init (EphyTabsMenuClass *klass);
static void ephy_tabs_menu_init (EphyTabsMenu *menu);
@@ -63,10 +56,6 @@ enum
PROP_WINDOW
};
-/**
- * EphyTabsMenu object
- */
-
GType
ephy_tabs_menu_get_type (void)
{
@@ -96,13 +85,11 @@ ephy_tabs_menu_get_type (void)
}
static void
-tab_added_cb (EphyNotebook *notebook, EphyEmbed *embed, EphyTabsMenu *menu)
+tab_added_cb (EphyNotebook *notebook, EphyTab *tab, EphyTabsMenu *menu)
{
- EphyTab *tab;
GtkAction *action;
- g_return_if_fail (EPHY_IS_EMBED (embed));
- tab = ephy_tab_for_embed (embed);
+ g_return_if_fail (EPHY_IS_TAB (tab));
action = GTK_ACTION (ephy_tab_get_action (tab));
gtk_action_group_add_action (menu->priv->action_group, action);
@@ -111,13 +98,11 @@ tab_added_cb (EphyNotebook *notebook, EphyEmbed *embed, EphyTabsMenu *menu)
}
static void
-tab_removed_cb (EphyNotebook *notebook, EphyEmbed *embed, EphyTabsMenu *menu)
+tab_removed_cb (EphyNotebook *notebook, EphyTab *tab, EphyTabsMenu *menu)
{
- EphyTab *tab;
GtkAction *action;
- g_return_if_fail (EPHY_IS_EMBED (embed));
- tab = ephy_tab_for_embed (embed);
+ g_return_if_fail (EPHY_IS_TAB (tab));
action = GTK_ACTION (ephy_tab_get_action (tab));
gtk_action_group_remove_action (menu->priv->action_group, action);
@@ -126,6 +111,12 @@ tab_removed_cb (EphyNotebook *notebook, EphyEmbed *embed, EphyTabsMenu *menu)
}
static void
+tabs_reordered_cb (EphyNotebook *notebook, EphyTabsMenu *menu)
+{
+ ephy_tabs_menu_update (menu);
+}
+
+static void
ephy_tabs_menu_set_window (EphyTabsMenu *menu, EphyWindow *window)
{
GtkWidget *notebook;
@@ -143,6 +134,8 @@ ephy_tabs_menu_set_window (EphyTabsMenu *menu, EphyWindow *window)
G_CALLBACK (tab_added_cb), menu, 0);
g_signal_connect_object (notebook, "tab_removed",
G_CALLBACK (tab_removed_cb), menu, 0);
+ g_signal_connect_object (notebook, "tabs_reordered",
+ G_CALLBACK (tabs_reordered_cb), menu, 0);
}
static void
@@ -281,7 +274,6 @@ ephy_tabs_menu_update (EphyTabsMenu *menu)
EphyTab *tab;
GtkAction *action;
guint i = 0;
- guint num = 0;
GList *tabs = NULL, *l;
g_return_if_fail (EPHY_IS_TABS_MENU (menu));
@@ -296,8 +288,7 @@ ephy_tabs_menu_update (EphyTabsMenu *menu)
tabs = ephy_window_get_tabs (p->window);
- num = g_list_length (tabs);
- if (num == 0) return;
+ if (g_list_length (tabs) == 0) return;
p->ui_id = gtk_ui_manager_new_merge_id (merge);
@@ -306,7 +297,6 @@ ephy_tabs_menu_update (EphyTabsMenu *menu)
const char *action_name;
char *name;
-
tab = (EphyTab *) l->data;
action = GTK_ACTION (ephy_tab_get_action (tab));
action_name = gtk_action_get_name (action);