[general]
name=Spatial Bookmark Extents
description=Displays QGIS spatial bookmark extents as toggleable map-canvas rectangles with buffered, overlap-aware bookmark names, and exports extents to GeoPackage and other vector formats.
version=0.3.2
qgisMinimumVersion=3.10
qgisMaximumVersion=4.99
author=Ian Hay
email=sirianhay@gmail.com
about=Adds a toolbar toggle that displays spatial bookmarks from the current project and the application bookmark store as transient canvas overlays. No temporary layers are added to the project. An export action saves bookmark extents as polygons to GeoPackage, Shapefile, GeoJSON, or KML.
tracker=https://github.com/ianhay/spatial-bookmark-extents/issues
repository=https://github.com/ianhay/spatial-bookmark-extents
homepage=https://github.com/ianhay/spatial-bookmark-extents
changelog=0.3.2
      - Fixed QGIS 3 bookmark drawing and export when QgsReferencedRectangle does not provide isValid() or isEmpty().
      - Added version-independent finite and non-zero extent validation.
      0.3.1
      - Added QGIS 3.10-3.18 export fallbacks for writer APIs predating writeAsVectorFormatV3.
      - Removed the Python dataclasses dependency for older QGIS 3 Python environments.
      - Made QVariant, QMetaType, message-level, geometry-type, and writer enums safe across Qt 5/Qt 6 and QGIS 3/QGIS 4.
      0.3.0
      - Labels now render as antialiased pixmaps (fixes blocky text regardless of canvas render hints; HiDPI-aware).
      - Halved label halo thickness and label-to-rectangle gap.
      0.2.0
      - Removed organisation-specific contact details.
      - Improved label font legibility (system UI font, larger size, antialiasing hints).
      - Added export of bookmark extents to GeoPackage, Shapefile, GeoJSON, and KML.
      - Security and code review pass for plugin repository compliance.
      0.1.2
      - Buffered text halos and overlap-aware label placement.
category=Vector
tags=bookmark,extent,overlay,canvas,label,export,geopackage
icon=icon.svg
license=GPL-3.0-or-later
experimental=False
deprecated=False
hasProcessingProvider=False
