[gnome-music/wip/carlosg/tracker3: 49/68] Port to tracker3



commit 5176c94313629e5d274d57cffe4b64c5925516ea
Author: Jean Felder <jfelder src gnome org>
Date:   Mon May 25 20:23:35 2020 +0200

    Port to tracker3

 gnomemusic/coregrilo.py                       |  2 +-
 gnomemusic/grilowrappers/grltrackerwrapper.py |  2 +-
 gnomemusic/trackerwrapper.py                  | 18 +++++++++++-------
 gnomemusic/views/emptyview.py                 |  2 +-
 meson.build                                   |  2 +-
 5 files changed, 15 insertions(+), 11 deletions(-)
---
diff --git a/gnomemusic/coregrilo.py b/gnomemusic/coregrilo.py
index 501c09e8..a72aebba 100644
--- a/gnomemusic/coregrilo.py
+++ b/gnomemusic/coregrilo.py
@@ -161,7 +161,7 @@ class CoreGrilo(GObject.GObject):
         new_wrapper = None
 
         new_state = self._tracker_wrapper.props.tracker_available
-        if (source.props.source_id == "grl-tracker-source"
+        if (source.props.source_id == "grl-tracker3-source"
                 and self._tracker_wrapper.location_filter() is not None
                 and new_state == TrackerState.AVAILABLE):
             if source.props.source_id not in self._wrappers.keys():
diff --git a/gnomemusic/grilowrappers/grltrackerwrapper.py b/gnomemusic/grilowrappers/grltrackerwrapper.py
index 8b2d7427..7e9a9599 100644
--- a/gnomemusic/grilowrappers/grltrackerwrapper.py
+++ b/gnomemusic/grilowrappers/grltrackerwrapper.py
@@ -23,7 +23,7 @@
 # delete this exception statement from your version.
 
 import gi
-gi.require_versions({"Gfm": "0.1", "Grl": "0.3", 'Tracker': "2.0"})
+gi.require_versions({"Gfm": "0.1", "Grl": "0.3", 'Tracker': "3.0"})
 from gi.repository import Gfm, Grl, GLib, GObject, Tracker
 
 from gnomemusic.corealbum import CoreAlbum
diff --git a/gnomemusic/trackerwrapper.py b/gnomemusic/trackerwrapper.py
index e72c6613..5c085f53 100644
--- a/gnomemusic/trackerwrapper.py
+++ b/gnomemusic/trackerwrapper.py
@@ -62,21 +62,25 @@ class TrackerWrapper(GObject.GObject):
         self._tracker = None
         self._tracker_available = TrackerState.UNAVAILABLE
 
-        Tracker.SparqlConnection.get_async(None, self._connection_async_cb)
-
-    def _connection_async_cb(self, klass, result):
         try:
-            self._tracker = Tracker.SparqlConnection.get_finish(result)
+            self._tracker = Tracker.SparqlConnection.bus_new(
+                "org.freedesktop.Tracker3.Miner.Files", None, None)
         except GLib.Error as error:
             self._log.warning(
                 "Error: {}, {}".format(error.domain, error.message))
             self.notify("tracker-available")
             return
 
-        query = "SELECT ?e WHERE { ?e a tracker:ExternalReference . }"
+        query = """
+        SELECT
+            ?e
+        {
+            GRAPH tracker:Audio {
+                ?e a tracker:ExternalReference .
+            }
+        }""".replace("\n", "").strip()
 
-        self._tracker.query_async(
-            query, None, self._query_version_check)
+        self._tracker.query_async(query, None, self._query_version_check)
 
     def _query_version_check(self, klass, result):
         try:
diff --git a/gnomemusic/views/emptyview.py b/gnomemusic/views/emptyview.py
index b7efcd2a..d4836efa 100644
--- a/gnomemusic/views/emptyview.py
+++ b/gnomemusic/views/emptyview.py
@@ -143,7 +143,7 @@ class EmptyView(Gtk.Stack):
             "Your system Tracker version seems outdated")
         self._icon.props.margin_bottom = 18
         self._information_label.props.label = _(
-            "Music needs Tracker version 2.3.0 or higher")
+            "Music needs Tracker version 3.0.0 or higher")
 
         self._icon.props.icon_name = "dialog-error-symbolic"
 
diff --git a/meson.build b/meson.build
index e947fc32..a3208f59 100644
--- a/meson.build
+++ b/meson.build
@@ -42,7 +42,7 @@ dependency('gtk+-3.0', version: '>= 3.24.7')
 dependency('libdazzle-1.0', version: '>= 3.28.0')
 dependency('libmediaart-2.0', version: '>= 1.9.1')
 dependency('libsoup-2.4')
-dependency('tracker-sparql-2.0', version: '>= 2.3.0')
+dependency('tracker-sparql-3.0', version: '>= 2.99.1')
 dependency('pango', version: '>= 1.44.0')
 dependency('pygobject-3.0', version: '>= 3.36.1')
 dependency('py3cairo', version: '>= 1.14.0')


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]