Timer: Update times when location value is changed in settings
This commit is contained in:
@@ -131,6 +131,10 @@ export class Timer extends GObject.Object {
|
|||||||
settings: this.#locationSettings,
|
settings: this.#locationSettings,
|
||||||
id: this.#locationSettings.connect("changed::enabled", this.#onLocationStateChanged.bind(this)),
|
id: this.#locationSettings.connect("changed::enabled", this.#onLocationStateChanged.bind(this)),
|
||||||
});
|
});
|
||||||
|
this.#settingsConnections.push({
|
||||||
|
settings: this.#settings,
|
||||||
|
id: this.#settings.connect("changed::location", this.#onLocationSettingsChanged.bind(this)),
|
||||||
|
});
|
||||||
this.#settingsConnections.push({
|
this.#settingsConnections.push({
|
||||||
settings: this.#settings,
|
settings: this.#settings,
|
||||||
id: this.#settings.connect("changed::manual-schedule", this.#onManualScheduleStateChanged.bind(this)),
|
id: this.#settings.connect("changed::manual-schedule", this.#onManualScheduleStateChanged.bind(this)),
|
||||||
@@ -243,6 +247,10 @@ export class Timer extends GObject.Object {
|
|||||||
this.enable();
|
this.enable();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#onLocationSettingsChanged() {
|
||||||
|
this.#updateSuntimes();
|
||||||
|
}
|
||||||
|
|
||||||
#onManualScheduleStateChanged() {
|
#onManualScheduleStateChanged() {
|
||||||
this.disable();
|
this.disable();
|
||||||
this.enable();
|
this.enable();
|
||||||
@@ -303,9 +311,8 @@ export class Timer extends GObject.Object {
|
|||||||
#onLocationChanged(_geoclue, _location) {
|
#onLocationChanged(_geoclue, _location) {
|
||||||
debug.message("Location has changed.");
|
debug.message("Location has changed.");
|
||||||
const { latitude, longitude } = this.#geoclue.get_location();
|
const { latitude, longitude } = this.#geoclue.get_location();
|
||||||
this.#settings.set_value("location", new GLib.Variant("(dd)", [latitude, longitude]));
|
|
||||||
debug.message(`Current location: (${latitude};${longitude})`);
|
debug.message(`Current location: (${latitude};${longitude})`);
|
||||||
this.#updateSuntimes();
|
this.#settings.set_value("location", new GLib.Variant("(dd)", [latitude, longitude]));
|
||||||
}
|
}
|
||||||
|
|
||||||
#computeTime() {
|
#computeTime() {
|
||||||
|
|||||||
Reference in New Issue
Block a user