From a8e7078308fc44418949b974d51d10dcba2ba8a7 Mon Sep 17 00:00:00 2001 From: Anna Schumaker Date: Sun, 25 Jun 2023 11:00:44 -0400 Subject: [PATCH] db: Disable incremental filtering This applies to both the Table and child Playlists models. I'm doing my own idle handling already for searching, so we can rely on that instead of needing Gtk to do it. The benefit to this is that we can select playlists programmatically during startup, since we don't need to worry about the Table not being fully loaded yet. Signed-off-by: Anna Schumaker --- emmental/db/playlist.py | 1 - emmental/db/table.py | 2 +- tests/db/test_playlist.py | 2 +- tests/db/test_table.py | 2 +- 4 files changed, 3 insertions(+), 4 deletions(-) diff --git a/emmental/db/playlist.py b/emmental/db/playlist.py index 2dee870..dfc7c71 100644 --- a/emmental/db/playlist.py +++ b/emmental/db/playlist.py @@ -55,7 +55,6 @@ class Playlist(table.Row): self.child_set = table.TableSubset(child_table, keys=child_keys) self.children = Gtk.FilterListModel.new(self.child_set, child_table.get_filter()) - self.children.set_incremental(True) def do_update(self, column: str) -> bool: """Update a Playlist object.""" diff --git a/emmental/db/table.py b/emmental/db/table.py index 920d6ff..a2bf685 100644 --- a/emmental/db/table.py +++ b/emmental/db/table.py @@ -149,7 +149,7 @@ class Table(Gtk.FilterListModel): filter: KeySet | None = None, queue: Queue | None = None, **kwargs): """Set up our Table object.""" - super().__init__(sql=sql, rows=dict(), incremental=True, + super().__init__(sql=sql, rows=dict(), store=store.SortedList(self.get_sort_key), filter=(filter if filter else KeySet()), queue=(queue if queue else Queue()), **kwargs) diff --git a/tests/db/test_playlist.py b/tests/db/test_playlist.py index 820a1a7..3f9bac9 100644 --- a/tests/db/test_playlist.py +++ b/tests/db/test_playlist.py @@ -82,7 +82,7 @@ class TestPlaylistRow(unittest.TestCase): table.get_filter()) self.assertEqual(self.playlist.children.get_model(), self.playlist.child_set) - self.assertTrue(self.playlist.children.get_incremental()) + self.assertFalse(self.playlist.children.get_incremental()) playlist2 = emmental.db.playlist.Playlist(table=self.table, propertyid=2, name="Plist2") diff --git a/tests/db/test_table.py b/tests/db/test_table.py index 1ee2f88..8977d76 100644 --- a/tests/db/test_table.py +++ b/tests/db/test_table.py @@ -233,7 +233,7 @@ class TestTable(tests.util.TestCase): self.assertEqual(self.table.get_model(), self.table.store) self.assertEqual(self.table.store.key_func, self.table.get_sort_key) self.assertDictEqual(self.table.rows, {}) - self.assertTrue(self.table.get_incremental()) + self.assertFalse(self.table.get_incremental()) filter2 = emmental.db.table.KeySet() queue2 = emmental.db.idle.Queue()