aboutsummaryrefslogtreecommitdiffstats
path: root/widgets
diff options
context:
space:
mode:
Diffstat (limited to 'widgets')
-rw-r--r--widgets/e-table/ChangeLog5
-rw-r--r--widgets/e-table/e-cell-text.c20
-rw-r--r--widgets/table/e-cell-text.c20
3 files changed, 29 insertions, 16 deletions
diff --git a/widgets/e-table/ChangeLog b/widgets/e-table/ChangeLog
index 13cef1b47c..19a60a1299 100644
--- a/widgets/e-table/ChangeLog
+++ b/widgets/e-table/ChangeLog
@@ -1,5 +1,10 @@
2000-02-24 Christopher James Lahey <clahey@helixcode.com>
+ * e-cell-text.c: Made carriage return stop editting instead of
+ inserting a carriage return.
+
+2000-02-24 Christopher James Lahey <clahey@helixcode.com>
+
* test-table.c: Added duplicate_value and add_value. Use the new
compare functions. Made it so we only create one model to better
test model view stuff. Changed the test to not have as many
diff --git a/widgets/e-table/e-cell-text.c b/widgets/e-table/e-cell-text.c
index fb33f10537..37213e3904 100644
--- a/widgets/e-table/e-cell-text.c
+++ b/widgets/e-table/e-cell-text.c
@@ -777,14 +777,18 @@ ect_event (ECellView *ecell_view, GdkEvent *event, int model_col, int view_col,
}
if (edit_display) {
GdkEventKey key = event->key;
- e_tep_event.key.time = key.time;
- e_tep_event.key.state = key.state;
- e_tep_event.key.keyval = key.keyval;
- e_tep_event.key.length = key.length;
- e_tep_event.key.string = key.string;
- _get_tep(edit);
- return e_text_event_processor_handle_event (edit->tep,
- &e_tep_event);
+ if ( key.keyval == GDK_KP_Enter || key.keyval == GDK_Return ) {
+ e_table_item_leave_edit (text_view->cell_view.e_table_item_view);
+ } else {
+ e_tep_event.key.time = key.time;
+ e_tep_event.key.state = key.state;
+ e_tep_event.key.keyval = key.keyval;
+ e_tep_event.key.length = key.length;
+ e_tep_event.key.string = key.string;
+ _get_tep(edit);
+ return e_text_event_processor_handle_event (edit->tep,
+ &e_tep_event);
+ }
}
else
diff --git a/widgets/table/e-cell-text.c b/widgets/table/e-cell-text.c
index fb33f10537..37213e3904 100644
--- a/widgets/table/e-cell-text.c
+++ b/widgets/table/e-cell-text.c
@@ -777,14 +777,18 @@ ect_event (ECellView *ecell_view, GdkEvent *event, int model_col, int view_col,
}
if (edit_display) {
GdkEventKey key = event->key;
- e_tep_event.key.time = key.time;
- e_tep_event.key.state = key.state;
- e_tep_event.key.keyval = key.keyval;
- e_tep_event.key.length = key.length;
- e_tep_event.key.string = key.string;
- _get_tep(edit);
- return e_text_event_processor_handle_event (edit->tep,
- &e_tep_event);
+ if ( key.keyval == GDK_KP_Enter || key.keyval == GDK_Return ) {
+ e_table_item_leave_edit (text_view->cell_view.e_table_item_view);
+ } else {
+ e_tep_event.key.time = key.time;
+ e_tep_event.key.state = key.state;
+ e_tep_event.key.keyval = key.keyval;
+ e_tep_event.key.length = key.length;
+ e_tep_event.key.string = key.string;
+ _get_tep(edit);
+ return e_text_event_processor_handle_event (edit->tep,
+ &e_tep_event);
+ }
}
else