[epiphany] history-dialog:: Allow key (page)down to load further data
- From: Michael Catanzaro <mcatanzaro src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [epiphany] history-dialog:: Allow key (page)down to load further data
- Date: Sun, 7 Jul 2019 17:41:13 +0000 (UTC)
commit 3a8c801fdc0b353c199fd54606c34ed9c6e70915
Author: Jan-Michael Brummer <jan brummer tabos org>
Date: Sun Jul 7 13:37:15 2019 +0200
history-dialog:: Allow key (page)down to load further data
Fixes: https://gitlab.gnome.org/GNOME/epiphany/issues/840
src/ephy-history-dialog.c | 25 +++++++++++++++++++------
1 file changed, 19 insertions(+), 6 deletions(-)
---
diff --git a/src/ephy-history-dialog.c b/src/ephy-history-dialog.c
index c71d6097b..58c724098 100644
--- a/src/ephy-history-dialog.c
+++ b/src/ephy-history-dialog.c
@@ -498,6 +498,15 @@ on_search_entry_changed (GtkSearchEntry *entry,
filter_now (self);
}
+static void
+load_further_data (EphyHistoryDialog *self)
+{
+ remove_pending_sorter_source (self, FALSE);
+
+ self->num_fetch += NUM_FETCH_LIMIT;
+ self->sorter_source = g_idle_add ((GSourceFunc)add_urls_source, self);
+}
+
static gboolean
on_key_press_event (EphyHistoryDialog *self,
GdkEvent *event,
@@ -514,9 +523,16 @@ on_key_press_event (EphyHistoryDialog *self,
gtk_widget_destroy (GTK_WIDGET (self));
else
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (self->search_button), FALSE);
- }
- else if (isprint (key->keyval))
+ } else if (isprint (key->keyval)) {
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (self->search_button), TRUE);
+ } else if (key->keyval == GDK_KEY_Down || key->keyval == GDK_KEY_Page_Down) {
+ GList *childrens = gtk_container_get_children (GTK_CONTAINER (self->listbox));
+ GtkWidget *last = g_list_last (childrens)->data;
+ GtkWidget *focus = gtk_container_get_focus_child (GTK_CONTAINER (self->listbox));
+
+ if (focus == last)
+ load_further_data (self);
+ }
}
return ret;
@@ -720,10 +736,7 @@ on_edge_reached (GtkScrolledWindow *scrolled,
EphyHistoryDialog *self = EPHY_HISTORY_DIALOG (user_data);
if (pos == GTK_POS_BOTTOM) {
- remove_pending_sorter_source (self, FALSE);
-
- self->num_fetch += NUM_FETCH_LIMIT;
- self->sorter_source = g_idle_add ((GSourceFunc)add_urls_source, self);
+ load_further_data (self);
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]