From 0749430a3c384af5a15dd9504d1054d8f3ce4812 Mon Sep 17 00:00:00 2001 From: Ivan Ivanov Date: Thu, 4 Jan 2024 01:26:52 +0200 Subject: [PATCH] Make QFieldSync work with older QGIS versions prior to 3.30 --- libqfieldsync/offline_converter.py | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/libqfieldsync/offline_converter.py b/libqfieldsync/offline_converter.py index 2d5f42e..43c2bef 100644 --- a/libqfieldsync/offline_converter.py +++ b/libqfieldsync/offline_converter.py @@ -254,10 +254,20 @@ def _convert(self, project: QgsProject) -> None: if layer_action == SyncAction.OFFLINE: if self.project_configuration.offline_copy_only_aoi: - if ( - layer.geometryType() is not Qgis.GeometryType.Null - and layer.geometryType() is not Qgis.GeometryType.Unknown - ): + if Qgis.QGIS_VERSION_INT >= 33000: + no_geometry_types = [ + Qgis.GeometryType.Null, + Qgis.GeometryType.Unknown, + ] + else: + from qgis.core import QgsWkbTypes + + no_geometry_types = [ + QgsWkbTypes.GeometryType.Null, + QgsWkbTypes.GeometryType.Unknown, + ] + + if layer.geometryType() not in no_geometry_types: try: extent = QgsCoordinateTransform( QgsCoordinateReferenceSystem(self.area_of_interest_crs),