[epiphany/wip/exalm/tabs] fixup! tmp
- From: Alexander Mikhaylenko <alexm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [epiphany/wip/exalm/tabs] fixup! tmp
- Date: Mon, 7 Sep 2020 16:22:59 +0000 (UTC)
commit bcfc67c125349bc89f15ac6c42dea07d6baa5038
Author: Alexander Mikhaylenko <alexm gnome org>
Date: Mon Sep 7 21:22:38 2020 +0500
fixup! tmp
src/ephy-window.c | 22 +++++++++++++++-------
1 file changed, 15 insertions(+), 7 deletions(-)
---
diff --git a/src/ephy-window.c b/src/ephy-window.c
index 1561a0f2a..4ce5a15b7 100644
--- a/src/ephy-window.c
+++ b/src/ephy-window.c
@@ -211,10 +211,16 @@ impl_add_child (EphyEmbedContainer *container,
gboolean jump_to)
{
EphyWindow *window = EPHY_WINDOW (container);
+ int ret;
g_assert (!window->is_popup || ephy_tab_view_get_n_pages (window->tab_view) < 1);
- return ephy_tab_view_add_tab (window->tab_view, child, position, jump_to);
+ ret = ephy_tab_view_add_tab (window->tab_view, child, position, jump_to);
+
+ if (jump_to)
+ ephy_window_update_entry_focus (window, ephy_embed_get_web_view (child));
+
+ return ret;
}
static void
@@ -2877,7 +2883,6 @@ ephy_window_close_tab (EphyWindow *window,
}
g_object_set_data (G_OBJECT (tab), "ephy-window-close-tab-closed", GINT_TO_POINTER (TRUE));
- gtk_widget_destroy (GTK_WIDGET (tab));
if (window->last_opened_embed)
g_clear_weak_pointer ((gpointer *)&window->last_opened_embed);
@@ -2941,7 +2946,8 @@ tab_has_modified_forms_cb (EphyWebView *view,
if (data->id != 0 &&
data->window != NULL &&
- data->embed != NULL) {
+ data->embed != NULL &&
+ data->page != NULL) {
HdyTabView *tab_view = ephy_tab_view_get_tab_view (data->window->tab_view);
if (!has_modified_forms || confirm_close_with_modified_forms (data->window)) {
@@ -2965,11 +2971,15 @@ tab_has_modified_forms_timeout_cb (TabHasModifiedFormsData *data)
* ephy_window_close_tab().
*/
data->id = 0;
- if (data->window != NULL && data->embed != NULL) {
+ if (data->window != NULL &&
+ data->embed != NULL &&
+ data->page != NULL) {
HdyTabView *tab_view = ephy_tab_view_get_tab_view (data->window->tab_view);
+ HdyTabPage *page = data->page;
ephy_window_close_tab (data->window, data->embed);
- hdy_tab_view_close_page_finish (tab_view, data->page, TRUE);
+
+ hdy_tab_view_close_page_finish (tab_view, page, TRUE);
}
return G_SOURCE_REMOVE;
@@ -3108,8 +3118,6 @@ tab_view_notify_selected_page_cb (EphyWindow *window)
ephy_window_set_active_tab (window, embed);
update_reader_mode (window, view);
-
- ephy_window_update_entry_focus (window, view);
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]