Skip to content

Migrate location widget to datacapture module - #32

Open
MeshackKangi wants to merge 5 commits into
ohs-foundation:mainfrom
MeshackKangi:feat/migrate-location-widget-to-datacapture
Open

Migrate location widget to datacapture module#32
MeshackKangi wants to merge 5 commits into
ohs-foundation:mainfrom
MeshackKangi:feat/migrate-location-widget-to-datacapture

Conversation

@MeshackKangi

Copy link
Copy Markdown

Move the location capture widget implementation from the :catalog module into :datacapture so it is available as a reusable component across all platforms.

  • Add LocationCaptureItemViewFactory, LocationCoordinateItemViewFactory, LocationEventBus, and Geolocator with platform actuals for Android, iOS, JVM, and wasmJs
  • Add ic_location_on and gm_location_on_24 drawable resources
  • Update QuestionnaireScreen to import matchers from :datacapture

Closes #10

Move the location capture widget implementation from the :catalog
module into :datacapture so it is available as a reusable component
across all platforms.

- Add LocationCaptureItemViewFactory, LocationCoordinateItemViewFactory,
  LocationEventBus, and Geolocator with platform actuals for
  Android, iOS, JVM, and wasmJs
- Add ic_location_on and gm_location_on_24 drawable resources
- Update QuestionnaireScreen to import matchers from :datacapture

Closes ohs-foundation#10
The location widget requires the compass geolocation library to
resolve GPS coordinates across all supported platforms.

- Add compass.geolocation to commonMain dependencies
- Add compass.geolocation.mobile to androidMain and iosMain
- Add compass.geolocation.browser to wasmJsMain
- Add record_gps_location string resource to strings.xml
- Increase Gradle JVM heap to 4g to prevent OOM daemon crashes
@ellykits
ellykits requested review from LZRS and ellykits July 6, 2026 09:52

@LZRS LZRS left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you also add a video demo, similar to #31?

Comment thread gradle.properties
Comment on lines +1 to +3
org.gradle.jvmargs=-Xmx6g -XX:MaxMetaspaceSize=512m
org.gradle.workers.max=2
org.gradle.parallel=true

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revert

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Comment thread gradle.properties
Comment thread gradle.properties
@MeshackKangi
MeshackKangi requested a review from LZRS July 7, 2026 09:12
@MeshackKangi

Copy link
Copy Markdown
Author
location-demo.mp4

@LZRS
LZRS requested a review from a team August 6, 2026 08:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Move the barcode and location widget implementation from catalog showcase into the datacapture library

2 participants