Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
d590be2
feat: parameters to use marker in meters
LeonTenorio Jun 3, 2025
3bc637f
refactor: change positioned left, top, bottom and right variables cre…
LeonTenorio Jun 3, 2025
f1f8394
feat: width and height according the using meters implementation
LeonTenorio Jun 3, 2025
5f88ba8
feat: marker using size in meters example
LeonTenorio Jun 3, 2025
1d07e36
Merge branch 'feat/marker-in-meters'
LeonTenorio Jun 3, 2025
dbb1f99
feat: documentation of the new parameters
LeonTenorio Jun 3, 2025
5dd1c86
Merge branch 'master' into master
JaffaKetchup Jun 8, 2025
35e1f11
refactor: marker parameters to control the min and max height and wid…
LeonTenorio Jun 9, 2025
dd95b47
Merge remote-tracking branch 'origin/master'
LeonTenorio Jun 9, 2025
4a4f0b4
Merge branch 'master' into master
JaffaKetchup Apr 13, 2026
d24f8e1
Improved implementation and naming of marker meter sizing
JaffaKetchup Jun 30, 2026
481ea05
Collapse `useDimensionsInMeters` & `meterToPixelSizeConstraints` into…
JaffaKetchup Jun 30, 2026
89f95bd
Merge branch 'master' into master
JaffaKetchup Jul 1, 2026
d86b9ba
Fix support for Flutter 3.27
JaffaKetchup Jul 1, 2026
f2fe8f0
Minor fixes to workflows
JaffaKetchup Jul 1, 2026
d265978
Bump Windows workflow 3.29 matrix verison to 3.32 to attempt to resol…
JaffaKetchup Jul 1, 2026
4f0c90d
Revert changes to initial position on markers demo page
JaffaKetchup Jul 1, 2026
c8ca512
Minor typo fix
JaffaKetchup Jul 1, 2026
aab420e
Bump Windows workflow 3.32 matrix verison to 3.39 to attempt to resol…
JaffaKetchup Jul 1, 2026
5c060c0
Bump Windows workflow 3.39 matrix verison to 3.41 to attempt to resol…
JaffaKetchup Jul 1, 2026
44922d8
Minor documentation improvements
JaffaKetchup Jul 2, 2026
c587001
Improve efficiency by using cached projected marker points during met…
JaffaKetchup Jul 2, 2026
ddcdff4
Simplified internal calculations
JaffaKetchup Jul 2, 2026
42e95bf
Fixed bug
JaffaKetchup Jul 2, 2026
34fcd53
Revert inaccurate documentation fix
JaffaKetchup Jul 2, 2026
270896b
Cache projections used to calculate meter sizes
JaffaKetchup Jul 2, 2026
45ae43b
Minor performance improvement
JaffaKetchup Jul 2, 2026
8f5b33e
Discard changes to lib/src/layer/circle_layer/circle_layer.dart
JaffaKetchup Jul 2, 2026
21dfdb2
Merge branch 'master' into master
JaffaKetchup Jul 2, 2026
7fce640
Minor performance improvements
JaffaKetchup Jul 3, 2026
832a9f9
Fixed performance bug
JaffaKetchup Jul 8, 2026
ef11960
Improved example application
JaffaKetchup Jul 8, 2026
30b04dd
Use `HashMap` over `LinkedHashMap` to store projected meter cache
JaffaKetchup Jul 8, 2026
2de7cb8
Fix bug where a defined key on `Marker` would break across multiple w…
JaffaKetchup Jul 9, 2026
145fa7d
Revert previous commit
JaffaKetchup Jul 9, 2026
3fdb4fb
Minor fix to example app
JaffaKetchup Jul 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions .github/workflows/branch.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: "Branch & PR"
on:
push:
branches: [ "!master" ]
branches: ["!master"]
pull_request:
workflow_dispatch:

Expand Down Expand Up @@ -49,7 +49,7 @@ jobs:
strategy:
fail-fast: false
matrix:
sdk: [ "3.27.0", "" ]
sdk: ["3.27.0", ""]
steps:
- name: Checkout Repository
uses: actions/checkout@v7
Expand All @@ -72,7 +72,7 @@ jobs:
strategy:
fail-fast: false
matrix:
sdk: [ "3.27.0", "" ]
sdk: ["3.27.0", ""]
defaults:
run:
working-directory: ./example
Expand All @@ -91,7 +91,7 @@ jobs:
flutter-version: ${{ matrix.sdk }}
cache: true
- name: Build Android Application
run: flutter build apk --dart-define=COMMIT_SHA=${{ github.sha }} --dart-define=flutter.flutter_map.unblockOSM="${{ secrets.UNBLOCK_OSM }}"
run: flutter build apk --dart-define=COMMIT_SHA=${{ github.sha }}
- name: Archive Artifact
if: ${{ matrix.sdk == '' }}
uses: actions/upload-artifact@v7
Expand All @@ -106,7 +106,7 @@ jobs:
strategy:
fail-fast: false
matrix:
sdk: [ "3.27.0", "" ]
sdk: ["3.41.0", ""] # Can't use 3.27 on github because windows-latest is incompatible now
defaults:
run:
working-directory: ./example
Expand All @@ -119,7 +119,7 @@ jobs:
flutter-version: ${{ matrix.sdk }}
cache: true
- name: Build Windows Application
run: flutter build windows --dart-define=COMMIT_SHA=${{ github.sha }} --dart-define=flutter.flutter_map.unblockOSM="${{ secrets.UNBLOCK_OSM }}"
run: flutter build windows --dart-define=COMMIT_SHA=${{ github.sha }}
- name: Install Inno Setup
if: ${{ matrix.sdk == '' }}
run: choco install innosetup --yes --no-progress
Expand All @@ -141,7 +141,7 @@ jobs:
strategy:
fail-fast: false
matrix:
sdk: [ "3.27.0", "" ]
sdk: ["3.27.0", ""]
defaults:
run:
working-directory: ./example
Expand All @@ -154,7 +154,7 @@ jobs:
flutter-version: ${{ matrix.sdk }}
cache: true
- name: Build Web Application
run: flutter build web --wasm --dart-define=COMMIT_SHA=${{ github.sha }} --dart-define=flutter.flutter_map.unblockOSM="${{ secrets.UNBLOCK_OSM }}"
run: flutter build web --wasm --dart-define=COMMIT_SHA=${{ github.sha }}
- name: Archive Artifact
uses: actions/upload-artifact@v7
if: ${{ matrix.sdk == '' }}
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
build-android:
name: "Build Android Example App"
runs-on: ubuntu-latest
needs: [ run-tests ]
needs: [run-tests]
if: github.repository == 'fleaflet/flutter_map'
defaults:
run:
Expand All @@ -44,14 +44,14 @@ jobs:
with:
distribution: "temurin"
java-version: "21"
cache: 'gradle'
cache: "gradle"
- name: Setup Flutter Environment
uses: subosito/flutter-action@v2
with:
channel: "stable"
cache: true
- name: Build Android Application
run: flutter build apk --dart-define=COMMIT_SHA=${{ github.sha }} --dart-define=flutter.flutter_map.unblockOSM="${{ secrets.UNBLOCK_OSM }}"
run: flutter build apk --dart-define=COMMIT_SHA=${{ github.sha }}
- name: Archive Artifact
uses: actions/upload-artifact@v7
with:
Expand All @@ -62,7 +62,7 @@ jobs:
build-windows:
name: "Build Windows Example App"
runs-on: windows-latest
needs: [ run-tests ]
needs: [run-tests]
if: github.repository == 'fleaflet/flutter_map'
defaults:
run:
Expand All @@ -75,7 +75,7 @@ jobs:
with:
cache: true
- name: Build Windows Application
run: flutter build windows --dart-define=COMMIT_SHA=${{ github.sha }} --dart-define=flutter.flutter_map.unblockOSM="${{ secrets.UNBLOCK_OSM }}"
run: flutter build windows --dart-define=COMMIT_SHA=${{ github.sha }}
- name: Install Inno Setup
run: choco install innosetup --yes --no-progress
- name: Create Windows Application Installer
Expand All @@ -91,7 +91,7 @@ jobs:
build-web:
name: "Build & Deploy Web Example App"
runs-on: ubuntu-latest
needs: [ run-tests ]
needs: [run-tests]
if: github.repository == 'fleaflet/flutter_map'
defaults:
run:
Expand All @@ -105,7 +105,7 @@ jobs:
channel: "stable"
cache: true
- name: Build Web Application
run: flutter build web --wasm --dart-define=COMMIT_SHA=${{ github.sha }} --dart-define=flutter.flutter_map.unblockOSM="${{ secrets.UNBLOCK_OSM }}"
run: flutter build web --wasm --dart-define=COMMIT_SHA=${{ github.sha }}
- name: Archive Artifact
uses: actions/upload-artifact@v7
with:
Expand All @@ -118,4 +118,4 @@ jobs:
repoToken: "${{ secrets.GITHUB_TOKEN }}"
firebaseServiceAccount: "${{ secrets.FIREBASE_SERVICE_ACCOUNT_FLEAFLET }}"
channelId: live
projectId: fleaflet-firebase
projectId: fleaflet-firebase
131 changes: 65 additions & 66 deletions example/lib/pages/many_circles.dart
Original file line number Diff line number Diff line change
Expand Up @@ -99,14 +99,14 @@ class _ManyCirclesPageState extends State<ManyCirclesPage> {
right: 16,
child: RepaintBoundary(
child: Column(
spacing: 12,
children: [
NumberOfItemsSlider(
number: displayedCirclesCount,
onChanged: (v) => setState(() => displayedCirclesCount = v),
maxNumber: _maxCirclesCount,
itemDescription: 'Circle',
),
const SizedBox(height: 12),
UnconstrainedBox(
child: Container(
decoration: BoxDecoration(
Expand All @@ -117,71 +117,70 @@ class _ManyCirclesPageState extends State<ManyCirclesPage> {
vertical: 4,
horizontal: 16,
),
child: Row(
children: [
const Tooltip(
message: 'Use Borders',
child: Icon(Icons.circle_outlined),
),
const SizedBox(width: 8),
Switch.adaptive(
value: useBorders,
onChanged: (v) {
allCircles = allCircles
.map(
(c) => CircleMarker(
point: c.point,
radius: c.radius,
color: c.color,
useRadiusInMeter: c.useRadiusInMeter,
borderColor: c.borderColor,
borderStrokeWidth: v ? 5 : 0,
),
)
.toList(growable: false);
useBorders = v;
setState(() {});
},
),
const SizedBox(width: 16),
const Tooltip(
message: 'Use Radius In Meters',
child: Icon(Icons.straighten),
),
const SizedBox(width: 8),
Switch.adaptive(
value: useRadiusInMeters,
onChanged: (v) {
allCircles = allCircles
.map(
(c) => CircleMarker(
point: c.point,
radius: v ? 25000 : 5,
color: c.color,
useRadiusInMeter: v,
borderColor: c.borderColor,
borderStrokeWidth: c.borderStrokeWidth,
),
)
.toList(growable: false);
useRadiusInMeters = v;
setState(() {});
},
),
const SizedBox(width: 16),
const Tooltip(
message: 'Optimise Meters Radius',
child: Icon(Icons.speed_rounded),
),
const SizedBox(width: 8),
Switch.adaptive(
value: optimizeRadiusInMeters,
onChanged: useRadiusInMeters
? (v) =>
setState(() => optimizeRadiusInMeters = v)
: null,
),
],
child: IntrinsicHeight(
child: Row(
spacing: 8,
children: [
const Tooltip(
message: 'Use Borders',
child: Icon(Icons.circle_outlined),
),
Switch.adaptive(
value: useBorders,
onChanged: (v) {
allCircles = allCircles
.map(
(c) => CircleMarker(
point: c.point,
radius: c.radius,
color: c.color,
useRadiusInMeter: c.useRadiusInMeter,
borderColor: c.borderColor,
borderStrokeWidth: v ? 5 : 0,
),
)
.toList(growable: false);
useBorders = v;
setState(() {});
},
),
const VerticalDivider(),
const Tooltip(
message: 'Use Radius In Meters',
child: Icon(Icons.straighten),
),
Switch.adaptive(
value: useRadiusInMeters,
onChanged: (v) {
allCircles = allCircles
.map(
(c) => CircleMarker(
point: c.point,
radius: v ? 25000 : 5,
color: c.color,
useRadiusInMeter: v,
borderColor: c.borderColor,
borderStrokeWidth: c.borderStrokeWidth,
),
)
.toList(growable: false);
useRadiusInMeters = v;
setState(() {});
},
),
const Tooltip(
message: 'Optimise Meters Radius',
child: Icon(Icons.speed_rounded),
),
Switch.adaptive(
value: optimizeRadiusInMeters,
onChanged: useRadiusInMeters
? (v) =>
setState(() => optimizeRadiusInMeters = v)
: null,
),
],
),
),
),
),
Expand Down
Loading