mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-12-25 13:11:13 +00:00
Use gtk_entry_set_positions() to update current_pos and selection_bound so
* gtk/gtkentry.c (gtk_entry_real_delete_text): Use gtk_entry_set_positions() to update current_pos and selection_bound so notifications are emitted (#90548)
This commit is contained in:
parent
f1bbefb45b
commit
f9038c03a5
@ -1,3 +1,9 @@
|
|||||||
|
2002-08-19 Padraig O'Briain <padraig.obriain@sun.com>
|
||||||
|
|
||||||
|
* gtk/gtkentry.c (gtk_entry_real_delete_text): Use
|
||||||
|
gtk_entry_set_positions() to update current_pos and selection_bound
|
||||||
|
so notifications are emitted (#90548)
|
||||||
|
|
||||||
2002-08-16 jacob berkman <jacob@ximian.com>
|
2002-08-16 jacob berkman <jacob@ximian.com>
|
||||||
|
|
||||||
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
2002-08-19 Padraig O'Briain <padraig.obriain@sun.com>
|
||||||
|
|
||||||
|
* gtk/gtkentry.c (gtk_entry_real_delete_text): Use
|
||||||
|
gtk_entry_set_positions() to update current_pos and selection_bound
|
||||||
|
so notifications are emitted (#90548)
|
||||||
|
|
||||||
2002-08-16 jacob berkman <jacob@ximian.com>
|
2002-08-16 jacob berkman <jacob@ximian.com>
|
||||||
|
|
||||||
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
2002-08-19 Padraig O'Briain <padraig.obriain@sun.com>
|
||||||
|
|
||||||
|
* gtk/gtkentry.c (gtk_entry_real_delete_text): Use
|
||||||
|
gtk_entry_set_positions() to update current_pos and selection_bound
|
||||||
|
so notifications are emitted (#90548)
|
||||||
|
|
||||||
2002-08-16 jacob berkman <jacob@ximian.com>
|
2002-08-16 jacob berkman <jacob@ximian.com>
|
||||||
|
|
||||||
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
2002-08-19 Padraig O'Briain <padraig.obriain@sun.com>
|
||||||
|
|
||||||
|
* gtk/gtkentry.c (gtk_entry_real_delete_text): Use
|
||||||
|
gtk_entry_set_positions() to update current_pos and selection_bound
|
||||||
|
so notifications are emitted (#90548)
|
||||||
|
|
||||||
2002-08-16 jacob berkman <jacob@ximian.com>
|
2002-08-16 jacob berkman <jacob@ximian.com>
|
||||||
|
|
||||||
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
2002-08-19 Padraig O'Briain <padraig.obriain@sun.com>
|
||||||
|
|
||||||
|
* gtk/gtkentry.c (gtk_entry_real_delete_text): Use
|
||||||
|
gtk_entry_set_positions() to update current_pos and selection_bound
|
||||||
|
so notifications are emitted (#90548)
|
||||||
|
|
||||||
2002-08-16 jacob berkman <jacob@ximian.com>
|
2002-08-16 jacob berkman <jacob@ximian.com>
|
||||||
|
|
||||||
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
2002-08-19 Padraig O'Briain <padraig.obriain@sun.com>
|
||||||
|
|
||||||
|
* gtk/gtkentry.c (gtk_entry_real_delete_text): Use
|
||||||
|
gtk_entry_set_positions() to update current_pos and selection_bound
|
||||||
|
so notifications are emitted (#90548)
|
||||||
|
|
||||||
2002-08-16 jacob berkman <jacob@ximian.com>
|
2002-08-16 jacob berkman <jacob@ximian.com>
|
||||||
|
|
||||||
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
* gtk/gtkdialog.h (struct _GtkDialog): switch vbox and action_area
|
||||||
|
@ -1943,16 +1943,23 @@ gtk_entry_real_delete_text (GtkEditable *editable,
|
|||||||
{
|
{
|
||||||
gint start_index = g_utf8_offset_to_pointer (entry->text, start_pos) - entry->text;
|
gint start_index = g_utf8_offset_to_pointer (entry->text, start_pos) - entry->text;
|
||||||
gint end_index = g_utf8_offset_to_pointer (entry->text, end_pos) - entry->text;
|
gint end_index = g_utf8_offset_to_pointer (entry->text, end_pos) - entry->text;
|
||||||
|
gint current_pos;
|
||||||
|
gint selection_bound;
|
||||||
|
|
||||||
g_memmove (entry->text + start_index, entry->text + end_index, entry->n_bytes + 1 - end_index);
|
g_memmove (entry->text + start_index, entry->text + end_index, entry->n_bytes + 1 - end_index);
|
||||||
entry->text_length -= (end_pos - start_pos);
|
entry->text_length -= (end_pos - start_pos);
|
||||||
entry->n_bytes -= (end_index - start_index);
|
entry->n_bytes -= (end_index - start_index);
|
||||||
|
|
||||||
if (entry->current_pos > start_pos)
|
current_pos = entry->current_pos;
|
||||||
entry->current_pos -= MIN (entry->current_pos, end_pos) - start_pos;
|
if (current_pos > start_pos)
|
||||||
|
current_pos -= MIN (current_pos, end_pos) - start_pos;
|
||||||
|
|
||||||
|
selection_bound = entry->selection_bound;
|
||||||
|
if (selection_bound > start_pos)
|
||||||
|
selection_bound -= MIN (selection_bound, end_pos) - start_pos;
|
||||||
|
|
||||||
|
gtk_entry_set_positions (entry, current_pos, selection_bound);
|
||||||
|
|
||||||
if (entry->selection_bound > start_pos)
|
|
||||||
entry->selection_bound -= MIN (entry->selection_bound, end_pos) - start_pos;
|
|
||||||
/* We might have deleted the selection
|
/* We might have deleted the selection
|
||||||
*/
|
*/
|
||||||
gtk_entry_update_primary_selection (entry);
|
gtk_entry_update_primary_selection (entry);
|
||||||
|
Loading…
Reference in New Issue
Block a user