Merge lp:~embik/switchboard-plug-locale/refine-localectl-call into lp:~elementary-apps/switchboard-plug-locale/trunk

Proposed by Marvin Beckers
Status: Needs review
Proposed branch: lp:~embik/switchboard-plug-locale/refine-localectl-call
Merge into: lp:~elementary-apps/switchboard-plug-locale/trunk
Diff against target: 101 lines (+15/-16)
2 files modified
src/LocaleManager.vala (+12/-9)
src/Widgets/LocaleSetting.vala (+3/-7)
To merge this branch: bzr merge lp:~embik/switchboard-plug-locale/refine-localectl-call
Reviewer Review Type Date Requested Status
Danielle Foré Needs Fixing
Review via email: mp+278911@code.launchpad.net

Commit message

Refine procedure to set system-wide locale settings

To post a comment you must log in.
Revision history for this message
Danielle Foré (danrabbit) :
review: Needs Fixing
Revision history for this message
Zisu Andrei (matzipan) wrote :

Hey Marvin,

This seems to be a quick fix and it's good to merge. Care to push the change?

Unmerged revisions

171. By Marvin Beckers

Refine procedure to set system-wide locale settings which includes the parameters expected by localectl_set_locale and the accuracy of debug messages

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/LocaleManager.vala'
2--- src/LocaleManager.vala 2015-11-29 18:25:11 +0000
3+++ src/LocaleManager.vala 2015-11-29 18:58:05 +0000
4@@ -264,7 +264,7 @@
5 * user related stuff
6 */
7 public void set_user_language (string language) {
8- debug("Setting user language to %s", language);
9+ debug("Setting user language to '%s'", language);
10
11 try {
12 account_proxy.set_language (language);
13@@ -278,7 +278,7 @@
14 }
15
16 public void set_user_format (string language) {
17- debug("Setting user format to %s", language);
18+ debug("Setting user format to '%s'", language);
19
20 try {
21 account_proxy.set_formats_locale (language);
22@@ -339,7 +339,10 @@
23 }
24
25 private void localectl_set_locale (string locale, string? format = null) throws GLib.Error {
26- debug ("setting system-wide locale via localectl");
27+ debug ("Setting system-wide language to '%s'".printf (locale));
28+ if (format != null)
29+ debug ("Setting system-wide format to '%s'".printf (format));
30+
31 if (Utils.get_permission ().allowed) {
32 string output;
33 int status;
34@@ -349,7 +352,7 @@
35 try {
36 if (format == null) {
37 Process.spawn_sync (null,
38- {"pkexec", cli, command, locale},
39+ {"pkexec", cli, command, "LANG=%s".printf (locale)},
40 Environ.get (),
41 SpawnFlags.SEARCH_PATH,
42 null, out output,
43@@ -358,9 +361,9 @@
44 critical ("localectl failed to set locale");
45 } else {
46 Process.spawn_sync (null,
47- {"pkexec", cli, command, locale, "LC_TIME=%s".printf (format),
48- "LC_NUMERIC=%s".printf (format), "LC_MONETARY=%s".printf (format),
49- "LC_MEASUREMENT=%s".printf (format)},
50+ {"pkexec", cli, command, "LANG=%s".printf (locale),
51+ "LC_TIME=%s".printf (format), "LC_NUMERIC=%s".printf (format),
52+ "LC_MONETARY=%s".printf (format), "LC_MEASUREMENT=%s".printf (format)},
53 Environ.get (),
54 SpawnFlags.SEARCH_PATH,
55 null, out output,
56@@ -425,9 +428,9 @@
57
58 try {
59 if (language.length == 2)
60- localectl_set_locale ("LANG=%s.UTF-8".printf (Utils.get_default_for_lang (language)), format);
61+ localectl_set_locale ("%s.UTF-8".printf (Utils.get_default_for_lang (language)), format);
62 else
63- localectl_set_locale ("LANG=%s.UTF-8".printf (language), format);
64+ localectl_set_locale ("%s.UTF-8".printf (language), format);
65 //locale_proxy.set_locale (list.to_array (), true);
66 } catch (Error e) {
67 warning (e.message);
68
69=== modified file 'src/Widgets/LocaleSetting.vala'
70--- src/Widgets/LocaleSetting.vala 2015-07-14 12:09:24 +0000
71+++ src/Widgets/LocaleSetting.vala 2015-11-29 18:58:05 +0000
72@@ -92,12 +92,10 @@
73
74 set_button.clicked.connect (() => {
75 if (!has_region) {
76- debug ("Setting user language to '%s'", language);
77 lm.set_user_language (language);
78 selected_language = language;
79 } else {
80 var region = get_region ();
81- debug ("Setting user language to '%s_%s'", language, region);
82 lm.set_user_language ("%s_%s".printf (language, region));
83 selected_language = "%s_%s".printf (language, region);
84 }
85@@ -267,13 +265,11 @@
86 }
87
88 private void on_applied_to_system () {
89- if (!has_region) {
90- debug ("Setting system language to '%s' and format to '%s'", language, get_format ());
91+ if (!has_region)
92 lm.apply_to_system (language, get_format ());
93- } else {
94- debug ("Setting system language to '%s_%s' and format to '%s'", language, get_region (), get_format ());
95+ else
96 lm.apply_to_system ("%s_%s".printf (language, get_region ()), get_format ());
97- }
98+
99 settings_changed ();
100 }
101 }

Subscribers

People subscribed via source and target branches