1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
|
From 303b072992542dfa9a7e2b2a9dc99120564a3f07 Mon Sep 17 00:00:00 2001
From: sun_hai_10 <sunhai10@huawei.com>
Date: Mon, 7 Nov 2022 14:23:04 +0800
Subject: [PATCH] modify timezone and delete datezone map
---
pyanaconda/modules/timezone/installation.py | 4 +-
pyanaconda/modules/timezone/timezone.py | 2 +-
pyanaconda/ui/gui/spokes/datetime_spoke.glade | 14 -------
pyanaconda/ui/gui/spokes/datetime_spoke.py | 38 +++----------------
4 files changed, 8 insertions(+), 50 deletions(-)
diff --git a/pyanaconda/modules/timezone/installation.py b/pyanaconda/modules/timezone/installation.py
index 08e24c0..f11874f 100644
--- a/pyanaconda/modules/timezone/installation.py
+++ b/pyanaconda/modules/timezone/installation.py
@@ -63,8 +63,8 @@ class ConfigureTimezoneTask(Task):
if not is_valid_timezone(self._timezone):
# this should never happen, but for pity's sake
log.warning("Timezone %s set in kickstart is not valid, "
- "falling back to default (America/New_York).", self._timezone)
- self._timezone = "America/New_York"
+ "falling back to default (Asia/Shanghai).", self._timezone)
+ self._timezone = "Asia/Shanghai"
def _make_timezone_symlink(self):
"""Create the symlink that actually defines timezone."""
diff --git a/pyanaconda/modules/timezone/timezone.py b/pyanaconda/modules/timezone/timezone.py
index b5d5f7b..2a328a3 100644
--- a/pyanaconda/modules/timezone/timezone.py
+++ b/pyanaconda/modules/timezone/timezone.py
@@ -44,7 +44,7 @@ class TimezoneService(KickstartService):
def __init__(self):
super().__init__()
self.timezone_changed = Signal()
- self._timezone = "America/New_York"
+ self._timezone = "Asia/Shanghai"
self.is_utc_changed = Signal()
self._is_utc = False
diff --git a/pyanaconda/ui/gui/spokes/datetime_spoke.glade b/pyanaconda/ui/gui/spokes/datetime_spoke.glade
index 188f93b..aa468d9 100644
--- a/pyanaconda/ui/gui/spokes/datetime_spoke.glade
+++ b/pyanaconda/ui/gui/spokes/datetime_spoke.glade
@@ -3,7 +3,6 @@
<interface>
<requires lib="gtk+" version="3.12"/>
<requires lib="AnacondaWidgets" version="1.0"/>
- <requires lib="TimezoneMap" version="0.4"/>
<object class="GtkListStore" id="cities">
<columns>
<!-- column-name name -->
@@ -314,19 +313,6 @@
<property name="position">0</property>
</packing>
</child>
- <child>
- <object class="CcTimezoneMap" id="tzmap">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <signal name="location-changed" handler="on_location_changed" swapped="no"/>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="padding">6</property>
- <property name="position">1</property>
- </packing>
- </child>
<child>
<object class="GtkAlignment" id="footerAlignment">
<property name="visible">True</property>
diff --git a/pyanaconda/ui/gui/spokes/datetime_spoke.py b/pyanaconda/ui/gui/spokes/datetime_spoke.py
index b21bbc3..c8416b4 100644
--- a/pyanaconda/ui/gui/spokes/datetime_spoke.py
+++ b/pyanaconda/ui/gui/spokes/datetime_spoke.py
@@ -50,15 +50,14 @@ from pyanaconda.threading import threadMgr, AnacondaThread
import gi
gi.require_version("Gdk", "3.0")
gi.require_version("Gtk", "3.0")
-gi.require_version("TimezoneMap", "1.0")
-from gi.repository import Gdk, Gtk, TimezoneMap
+from gi.repository import Gdk, Gtk
log = get_module_logger(__name__)
__all__ = ["DatetimeSpoke"]
-DEFAULT_TZ = "America/New_York"
+DEFAULT_TZ = "Asia/Shanghai"
SPLIT_NUMBER_SUFFIX_RE = re.compile(r'([^0-9]*)([-+])([0-9]+)')
@@ -168,11 +167,6 @@ class DatetimeSpoke(FirstbootSpokeMixIn, NormalSpoke):
icon = "preferences-system-time-symbolic"
title = CN_("GUI|Spoke", "_Time & Date")
- # Hack to get libtimezonemap loaded for GtkBuilder
- # see https://bugzilla.gnome.org/show_bug.cgi?id=712184
- _hack = TimezoneMap.TimezoneMap()
- del(_hack)
-
@staticmethod
def get_screen_id():
"""Return a unique id of this UI screen."""
@@ -211,7 +205,6 @@ class DatetimeSpoke(FirstbootSpokeMixIn, NormalSpoke):
self._yearsStore = self.builder.get_object("years")
self._regionsStore = self.builder.get_object("regions")
self._citiesStore = self.builder.get_object("cities")
- self._tzmap = self.builder.get_object("tzmap")
self._dateBox = self.builder.get_object("dateBox")
# we need to know it the new value is the same as previous or not
@@ -334,10 +327,6 @@ class DatetimeSpoke(FirstbootSpokeMixIn, NormalSpoke):
else:
return _("Invalid timezone")
else:
- location = self._tzmap.get_location()
- if location and location.get_property("zone"):
- return _("%s timezone") % get_xlated_timezone(location.get_property("zone"))
- else:
return _("Nothing selected")
def apply(self):
@@ -389,7 +378,6 @@ class DatetimeSpoke(FirstbootSpokeMixIn, NormalSpoke):
kickstart_timezone = self._timezone_module.Timezone
if is_valid_timezone(kickstart_timezone):
- self._tzmap.set_timezone(kickstart_timezone)
time.tzset()
self._update_datetime()
@@ -766,7 +754,6 @@ class DatetimeSpoke(FirstbootSpokeMixIn, NormalSpoke):
if region == "Etc":
# Etc timezones cannot be displayed on the map, so let's reset the
# location and manually set a highlight with no location pin.
- self._tzmap.clear_location()
# Some time zones are just the same default.
if city in ("GMT", "UTC", "UCT", "Greenwich", "Universal", "Zulu"):
offset = 0.0
@@ -780,13 +767,14 @@ class DatetimeSpoke(FirstbootSpokeMixIn, NormalSpoke):
else:
log.warning("Unknown time zone selected in GUI: Etc/%s", city)
- self._tzmap.set_selected_offset(offset)
time.tzset()
else:
# we don't want the timezone-changed signal to be emitted
- self._tzmap.set_timezone(timezone)
time.tzset()
+ self._tz = get_timezone(timezone)
+ self._update_datetime()
+
# update "old" values
self._old_city = city
@@ -836,22 +824,6 @@ class DatetimeSpoke(FirstbootSpokeMixIn, NormalSpoke):
self._stop_and_maybe_start_time_updating(interval=5)
self._daysFilter.refilter()
- def on_location_changed(self, tz_map, location):
- if not location:
- return
-
- timezone = location.get_property('zone')
-
- # Updating the timezone will update the region/city combo boxes to match.
- # The on_city_changed handler will attempt to convert the timezone back
- # to a location and set it in the map, which we don't want, since we
- # already have a location. That's why we're here.
- with blockedHandler(self._cityCombo, self.on_city_changed):
- if self._set_timezone(timezone):
- # timezone successfully set
- self._tz = get_timezone(timezone)
- self._update_datetime()
-
def on_timeformat_changed(self, button24h, *args):
hours = int(self._hoursLabel.get_text())
amPm = self._amPmLabel.get_text()
--
2.23.0
|