Repository navigation
feat(settings): add location search to theme & gamma coordinates - #3010
Conversation
purian23
left a comment
There was a problem hiding this comment.
Thanks for the PR, and good idea!
One ask before merge: after the lat/lon fields are edited, the SessionData binding can break so search/cross-tab updates don’t refresh the visible text. Matching weather’s pattern (set .text on select + Connections) in SettingsLocationSection would fix that.
Happy to re-review once that’s in and the dank-qml-common follow-ups are fine separately.
|
Hi @purian23 , thanks for your time!
One more thing: the "Share Gamma Control Settings" toggle only affects the time schedule — coordinates and the IP-location flag are always shared by design (there are no theme-specific coordinate fields). I kept that behavior unchanged. |
…labs-dev#3010) * feat(settings): add location search to theme & gamma coordinates * fix(settings): refresh coordinate fields after manual edits
Description
Adds a searchable location picker to the automatic location sections of Theme & Colors (Color Mode) and Gamma Control, so users can search for a city and auto-fill the latitude/longitude coordinates (like the weather setting do) instead of typing them by hand.
Extracts the previously duplicated "Use IP Location + manual coordinates" UI into a new shared
SettingsLocationSectioncomponent used by both tabs. The existing weather location search is left unchanged.Tested on hardware: search → auto-fill coordinates, cross-tab sync (both tabs share the same coordinates), and the "Share Gamma Control Settings" toggle all work as before. No backend changes.
Follow-ups: While working on this, I spotted two minor things to address later: remembering and displaying the user's last selection in the search field, and fixing a visual glitch where the error icon flashes post-selection. Since both touch the shared DankLocationSearch component, I'll handle them in a separate PR over at dank-qml-common(maybe later).
Type of change
Related issues
Screenshots / video
Checklist
I18n.tr()with translator context, reusing existing terms where possiblemake fmt, added/updated tests,make testpasses, andgo mod tidyis cleanmake lint-qmlwith no new warnings