[gtk+/gtk-2-24] Entry: Add newlines to ease reading huge switches
- From: Daniel Boles <dboles src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/gtk-2-24] Entry: Add newlines to ease reading huge switches
- Date: Sun, 19 Feb 2017 12:40:20 +0000 (UTC)
commit f318a4f8db99bedb8908879d9a90f92d181a3a2d
Author: Daniel Boles <dboles src gnome org>
Date: Sat Feb 18 22:50:00 2017 +0000
Entry: Add newlines to ease reading huge switches
These are monstrosities!
gtk/gtkentry.c | 23 ++++++++++++++++++++++-
1 files changed, 22 insertions(+), 1 deletions(-)
---
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
index e9cc564..da998fc 100644
--- a/gtk/gtkentry.c
+++ b/gtk/gtkentry.c
@@ -4774,24 +4774,29 @@ gtk_entry_move_cursor (GtkEntry *entry,
new_pos = current_x < bound_x ? entry->current_pos : entry->selection_bound;
else
new_pos = current_x > bound_x ? entry->current_pos : entry->selection_bound;
- break;
}
+ break;
+
case GTK_MOVEMENT_WORDS:
if (priv->resolved_dir == PANGO_DIRECTION_RTL)
count *= -1;
/* Fall through */
+
case GTK_MOVEMENT_LOGICAL_POSITIONS:
if (count < 0)
new_pos = MIN (entry->current_pos, entry->selection_bound);
else
new_pos = MAX (entry->current_pos, entry->selection_bound);
+
break;
+
case GTK_MOVEMENT_DISPLAY_LINE_ENDS:
case GTK_MOVEMENT_PARAGRAPH_ENDS:
case GTK_MOVEMENT_BUFFER_ENDS:
priv = GTK_ENTRY_GET_PRIVATE (entry);
new_pos = count < 0 ? 0 : gtk_entry_buffer_get_length (get_buffer (entry));
break;
+
case GTK_MOVEMENT_DISPLAY_LINES:
case GTK_MOVEMENT_PARAGRAPHS:
case GTK_MOVEMENT_PAGES:
@@ -4806,8 +4811,10 @@ gtk_entry_move_cursor (GtkEntry *entry,
case GTK_MOVEMENT_LOGICAL_POSITIONS:
new_pos = gtk_entry_move_logically (entry, new_pos, count);
break;
+
case GTK_MOVEMENT_VISUAL_POSITIONS:
new_pos = gtk_entry_move_visually (entry, new_pos, count);
+
if (entry->current_pos == new_pos)
{
if (!extend_selection)
@@ -4830,14 +4837,17 @@ gtk_entry_move_cursor (GtkEntry *entry,
}
}
break;
+
case GTK_MOVEMENT_WORDS:
if (priv->resolved_dir == PANGO_DIRECTION_RTL)
count *= -1;
+
while (count > 0)
{
new_pos = gtk_entry_move_forward_word (entry, new_pos, FALSE);
count--;
}
+
while (count < 0)
{
new_pos = gtk_entry_move_backward_word (entry, new_pos, FALSE);
@@ -4845,7 +4855,9 @@ gtk_entry_move_cursor (GtkEntry *entry,
}
if (entry->current_pos == new_pos)
gtk_widget_error_bell (GTK_WIDGET (entry));
+
break;
+
case GTK_MOVEMENT_DISPLAY_LINE_ENDS:
case GTK_MOVEMENT_PARAGRAPH_ENDS:
case GTK_MOVEMENT_BUFFER_ENDS:
@@ -4853,7 +4865,9 @@ gtk_entry_move_cursor (GtkEntry *entry,
new_pos = count < 0 ? 0 : gtk_entry_buffer_get_length (get_buffer (entry));
if (entry->current_pos == new_pos)
gtk_widget_error_bell (GTK_WIDGET (entry));
+
break;
+
case GTK_MOVEMENT_DISPLAY_LINES:
case GTK_MOVEMENT_PARAGRAPHS:
case GTK_MOVEMENT_PAGES:
@@ -4916,6 +4930,7 @@ gtk_entry_delete_from_cursor (GtkEntry *entry,
end_pos = gtk_entry_move_logically (entry, entry->current_pos, count);
gtk_editable_delete_text (editable, MIN (start_pos, end_pos), MAX (start_pos, end_pos));
break;
+
case GTK_DELETE_WORDS:
if (count < 0)
{
@@ -4937,24 +4952,30 @@ gtk_entry_delete_from_cursor (GtkEntry *entry,
start_pos = gtk_entry_move_backward_word (entry, start_pos, FALSE);
count++;
}
+
while (count > 0)
{
end_pos = gtk_entry_move_forward_word (entry, end_pos, FALSE);
count--;
}
+
gtk_editable_delete_text (editable, start_pos, end_pos);
break;
+
case GTK_DELETE_DISPLAY_LINE_ENDS:
case GTK_DELETE_PARAGRAPH_ENDS:
if (count < 0)
gtk_editable_delete_text (editable, 0, entry->current_pos);
else
gtk_editable_delete_text (editable, entry->current_pos, -1);
+
break;
+
case GTK_DELETE_DISPLAY_LINES:
case GTK_DELETE_PARAGRAPHS:
gtk_editable_delete_text (editable, 0, -1);
break;
+
case GTK_DELETE_WHITESPACE:
gtk_entry_delete_whitespace (entry);
break;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]