Skip to content

Commit 7271b21

Browse files
committed
better recover after crash sorting
1 parent f05c07e commit 7271b21

File tree

3 files changed

+14
-19
lines changed

3 files changed

+14
-19
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
- implement program window menu
1313
- program displays info for builtins
1414
- generic load/save/open/replace/close for filemodel
15+
- better recover after crash sorting
16+
- fix an infobar race
1517

1618
## 9.0.12 2025/08/21
1719

TODO

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,4 @@
11

2-
- recover after crash should sort by date, then by PID
3-
4-
blank line between days?
5-
6-
implement click on column name to sort by that col
7-
82
- program: ^W should parse the text and block on error
93

104
- program: don't get save-before-close box for modified toolkits?

src/recover.c

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -386,13 +386,12 @@ recover_refresh(Recover *recover)
386386
(void) path_map_dir(PATH_TMP, "*.ws",
387387
(path_map_fn) store_add_file, model);
388388

389-
// sort by PID, then date, then time
389+
// sort by date, then time
390+
// we can't sort by PID easily -- they are not numeric on all
391+
// platforms
390392
GtkMultiSorter *multi = gtk_multi_sorter_new();
391393
GtkExpression *expression;
392394
GtkSorter *sorter;
393-
expression = gtk_property_expression_new(RECOVERFILE_TYPE, NULL, "pid");
394-
sorter = GTK_SORTER(gtk_string_sorter_new(expression));
395-
gtk_multi_sorter_append(multi, sorter);
396395
expression = gtk_property_expression_new(RECOVERFILE_TYPE, NULL, "date");
397396
sorter = GTK_SORTER(gtk_string_sorter_new(expression));
398397
gtk_multi_sorter_append(multi, sorter);
@@ -512,15 +511,6 @@ recover_init(Recover *recover)
512511
gtk_column_view_column_set_expand(GTK_COLUMN_VIEW_COLUMN(column), TRUE);
513512
gtk_column_view_append_column(GTK_COLUMN_VIEW(recover->table), column);
514513

515-
factory = gtk_signal_list_item_factory_new();
516-
g_object_set_qdata(G_OBJECT(factory), recover_quark, recover);
517-
g_signal_connect(factory, "setup",
518-
G_CALLBACK(recover_setup_item), "pid");
519-
g_signal_connect(factory, "bind",
520-
G_CALLBACK(recover_bind_item), "pid");
521-
column = gtk_column_view_column_new("Process ID", factory);
522-
gtk_column_view_append_column(GTK_COLUMN_VIEW(recover->table), column);
523-
524514
factory = gtk_signal_list_item_factory_new();
525515
g_object_set_qdata(G_OBJECT(factory), recover_quark, recover);
526516
g_signal_connect(factory, "setup",
@@ -539,6 +529,15 @@ recover_init(Recover *recover)
539529
column = gtk_column_view_column_new("HH:MM.ss", factory);
540530
gtk_column_view_append_column(GTK_COLUMN_VIEW(recover->table), column);
541531

532+
factory = gtk_signal_list_item_factory_new();
533+
g_object_set_qdata(G_OBJECT(factory), recover_quark, recover);
534+
g_signal_connect(factory, "setup",
535+
G_CALLBACK(recover_setup_item), "pid");
536+
g_signal_connect(factory, "bind",
537+
G_CALLBACK(recover_bind_item), "pid");
538+
column = gtk_column_view_column_new("Process ID", factory);
539+
gtk_column_view_append_column(GTK_COLUMN_VIEW(recover->table), column);
540+
542541
factory = gtk_signal_list_item_factory_new();
543542
g_object_set_qdata(G_OBJECT(factory), recover_quark, recover);
544543
g_signal_connect(factory, "setup",

0 commit comments

Comments
 (0)