static void ephy_title_box_add_address_bar (EphyTitleBox *title_box) { title_box->entry = ephy_location_entry_new (); gtk_widget_show (title_box->entry); gtk_stack_add_named (GTK_STACK (title_box), title_box->entry, "address-bar"); }
static void ephy_toolbar_constructed (GObject *object) { EphyToolbarPrivate *priv = EPHY_TOOLBAR (object)->priv; GtkActionGroup *action_group; GtkAction *action; GtkToolItem *back_forward, *location_stop_reload, *tool_item; GtkWidget *tool_button, *box, *location, *toolbar; GtkSizeGroup *size; G_OBJECT_CLASS (ephy_toolbar_parent_class)->constructed (object); toolbar = GTK_WIDGET (object); /* Create a GtkSizeGroup to sync the height of the location entry, and * the stop/reload button. */ size = gtk_size_group_new (GTK_SIZE_GROUP_VERTICAL); /* Set the MENUBAR style class so it's possible to drag the app * using the toolbar. */ gtk_style_context_add_class (gtk_widget_get_style_context (toolbar), GTK_STYLE_CLASS_MENUBAR); /* Back and Forward */ back_forward = gtk_tool_item_new (); box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); /* Back */ tool_button = ephy_middle_clickable_button_new (); /* FIXME: apparently we need an image inside the button for the action * icon to appear. */ gtk_button_set_image (GTK_BUTTON (tool_button), gtk_image_new ()); action_group = ephy_window_get_toolbar_action_group (priv->window); action = gtk_action_group_get_action (action_group, "NavigationBack"); gtk_activatable_set_related_action (GTK_ACTIVATABLE (tool_button), action); gtk_button_set_label (GTK_BUTTON (tool_button), NULL); gtk_container_add (GTK_CONTAINER (box), GTK_WIDGET (tool_button)); /* Forward */ tool_button = ephy_middle_clickable_button_new (); /* FIXME: apparently we need an image inside the button for the action * icon to appear. */ gtk_button_set_image (GTK_BUTTON (tool_button), gtk_image_new ()); action = gtk_action_group_get_action (action_group, "NavigationForward"); gtk_activatable_set_related_action (GTK_ACTIVATABLE (tool_button), action); gtk_button_set_label (GTK_BUTTON (tool_button), NULL); gtk_container_add (GTK_CONTAINER (box), GTK_WIDGET (tool_button)); gtk_style_context_add_class (gtk_widget_get_style_context (box), "raised"); gtk_style_context_add_class (gtk_widget_get_style_context (box), "linked"); gtk_container_add (GTK_CONTAINER (back_forward), box); gtk_container_add (GTK_CONTAINER (toolbar), GTK_WIDGET (back_forward)); gtk_widget_show_all (GTK_WIDGET (back_forward)); if (gtk_widget_get_direction (GTK_WIDGET (back_forward)) == GTK_TEXT_DIR_RTL) gtk_widget_set_margin_left (GTK_WIDGET (back_forward), 12); else gtk_widget_set_margin_right (GTK_WIDGET (back_forward), 12); /* Location and Reload/Stop */ location_stop_reload = gtk_tool_item_new (); box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); /* Location */ priv->entry = location = ephy_location_entry_new (); gtk_box_pack_start (GTK_BOX (box), location, TRUE, TRUE, 0); gtk_style_context_add_class (gtk_widget_get_style_context (box), "location-entry"); /* Reload/Stop */ tool_button = gtk_button_new (); /* FIXME: apparently we need an image inside the button for the action * icon to appear. */ gtk_button_set_image (GTK_BUTTON (tool_button), gtk_image_new ()); action = gtk_action_group_get_action (action_group, "ViewCombinedStopReload"); gtk_activatable_set_related_action (GTK_ACTIVATABLE (tool_button), action); gtk_container_add (GTK_CONTAINER (box), GTK_WIDGET (tool_button)); gtk_container_add (GTK_CONTAINER (location_stop_reload), box); gtk_container_child_set (GTK_CONTAINER (toolbar), GTK_WIDGET (location_stop_reload), "expand", TRUE, NULL); gtk_container_add (GTK_CONTAINER (toolbar), GTK_WIDGET (location_stop_reload)); gtk_size_group_add_widget (size, tool_button); gtk_size_group_add_widget (size, location); g_object_unref (size); if (gtk_widget_get_direction (GTK_WIDGET (location_stop_reload)) == GTK_TEXT_DIR_RTL) gtk_widget_set_margin_left (GTK_WIDGET (location_stop_reload), 12); else gtk_widget_set_margin_right (GTK_WIDGET (location_stop_reload), 12); gtk_widget_show_all (GTK_WIDGET (location_stop_reload)); /* New Tab */ tool_item = gtk_tool_item_new (); tool_button = gtk_button_new (); /* FIXME: apparently we need an image inside the button for the action * icon to appear. */ gtk_button_set_image (GTK_BUTTON (tool_button), gtk_image_new ()); action = gtk_action_group_get_action (action_group, "FileNewTab"); gtk_activatable_set_related_action (GTK_ACTIVATABLE (tool_button), action); gtk_button_set_label (GTK_BUTTON (tool_button), NULL); gtk_container_add (GTK_CONTAINER (tool_item), tool_button); gtk_container_add (GTK_CONTAINER (toolbar), GTK_WIDGET (tool_item)); if (gtk_widget_get_direction (GTK_WIDGET (tool_item)) == GTK_TEXT_DIR_RTL) gtk_widget_set_margin_left (GTK_WIDGET (tool_item), 4); else gtk_widget_set_margin_right (GTK_WIDGET (tool_item), 4); gtk_widget_show_all (GTK_WIDGET (tool_item)); /* Page Menu */ tool_item = gtk_tool_item_new (); tool_button = gtk_button_new (); gtk_widget_set_name (GTK_WIDGET (tool_button), "ephy-page-menu-button"); /* FIXME: apparently we need an image inside the button for the action * icon to appear. */ gtk_button_set_image (GTK_BUTTON (tool_button), gtk_image_new ()); action = gtk_action_group_get_action (action_group, "PageMenu"); gtk_activatable_set_related_action (GTK_ACTIVATABLE (tool_button), action); gtk_container_add (GTK_CONTAINER (tool_item), tool_button); gtk_container_add (GTK_CONTAINER (toolbar), GTK_WIDGET (tool_item)); gtk_widget_show_all (GTK_WIDGET (tool_item)); }