MantisBT - Doomseeker |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0003481 | Doomseeker | [All Projects] Suggestion | public | 2018-09-01 11:04 | 2018-10-27 22:54 |
|
Reporter | WubTheCaptain | |
Assigned To | Zalewa | |
Priority | normal | Severity | feature | Reproducibility | always |
Status | closed | Resolution | fixed | |
Platform | | OS | | OS Version | |
Product Version | 1.1 | |
Target Version | 1.2 | Fixed in Version | 1.2 | |
|
Summary | 0003481: Add "system default" locale to Appearance configuration |
Description | If the default locale of the operating system changes, and the user had chosen "system default" locale, then ideally Doomseeker should also change its locale without intervention (after program restart, at least), unless the user has chosen a specific language (locale) in the configuration menu.
This "system default" locale doesn't exist, yet. I propose it to be added. |
Steps To Reproduce | - Start Doomseeker.
- Press the F5 key to open the configuration or find Options → Configuration from the top crate navigation.
- Navigate to "Appearance" settings.
- Under "Language" drop down menu, notice there may be specific language options but no option for "system locale".
|
Additional Information | Mumble (another Qt4 software) implements this. I'd assume the system locale should also become the default locale selected in new configurations, and this is what Mumble does too. |
Tags | No tags attached. |
Relationships | related to | 0003260 | closed | Zalewa | Translation "en_US" cannot be found, unknown language definition | child of | 0003279 | acknowledged | | List of Debian issues (misc/non-policy) |
|
Attached Files | |
|
Issue History |
Date Modified | Username | Field | Change |
2018-09-01 11:04 | WubTheCaptain | New Issue | |
2018-09-01 11:05 | WubTheCaptain | Steps to Reproduce Updated | bug_revision_view_page.php?rev_id=11754#r11754 |
2018-09-01 11:05 | WubTheCaptain | Relationship added | child of 0003279 |
2018-09-01 11:06 | WubTheCaptain | Relationship added | related to 0003260 |
2018-09-01 11:07 | WubTheCaptain | Description Updated | bug_revision_view_page.php?rev_id=11756#r11756 |
2018-09-01 11:08 | WubTheCaptain | Description Updated | bug_revision_view_page.php?rev_id=11757#r11757 |
2018-09-01 11:16 | Zalewa | Status | new => acknowledged |
2018-09-01 11:43 | WubTheCaptain | Note Added: 0019471 | |
2018-09-10 05:29 | Zalewa | Relationship added | child of 0003483 |
2018-09-18 11:51 | WubTheCaptain | Note Added: 0019539 | |
2018-09-22 16:13 | WubTheCaptain | Status | acknowledged => confirmed |
2018-09-22 16:13 | WubTheCaptain | Target Version | => 1.2 |
2018-09-22 19:01 | Zalewa | Assigned To | => Zalewa |
2018-09-22 19:01 | Zalewa | Status | confirmed => assigned |
2018-10-01 03:40 | WubTheCaptain | Relationship replaced | related to 0003483 |
2018-10-02 16:55 | Zalewa | Note Added: 0019883 | |
2018-10-04 21:02 | Zalewa | Note Added: 0019907 | |
2018-10-04 21:02 | Zalewa | Status | assigned => needs testing |
2018-10-04 21:02 | Zalewa | Note Edited: 0019907 | bug_revision_view_page.php?bugnote_id=19907#r12097 |
2018-10-06 09:49 | WubTheCaptain | Note Added: 0019925 | |
2018-10-06 09:49 | WubTheCaptain | Status | needs testing => resolved |
2018-10-06 09:49 | WubTheCaptain | Fixed in Version | => 1.2 |
2018-10-06 09:49 | WubTheCaptain | Resolution | open => fixed |
2018-10-06 09:58 | WubTheCaptain | Note Added: 0019927 | |
2018-10-13 16:39 | WubTheCaptain | Relationship deleted | related to 0003483 |
2018-10-27 22:54 | WubTheCaptain | Status | resolved => closed |
Notes |
|
|
I figured this is kind of the behavior that Doomseeker experiences already with new configurations (probably). But once you select a language, there's no going back as the "Localization" parameter is written to doomseeker.ini. I didn't test this theory, though. |
|
|
|
Zalewa: Why is this ticket a "child of 0003483", which implies severity "blocking" for the Doomseeker 1.2 release? |
|
|
(0019883)
|
Zalewa
|
2018-10-02 16:55
|
|
I have done some considerable work on this ticket today, but I'm not sure if it's ready for pushing just yet. There's a lot of difference between what the user sees on screen in the "Appearance" config box, the "retranslation restart" notifications, the loading of actual translations and with matching the locales. I'll have to glance over the code again with a clearer mind and see if I'm happy with it.
Nevertheless, commit for this is coming soon. |
|
|
(0019907)
|
Zalewa
|
2018-10-04 21:02
|
|
Okay, so this is it:
'https://bitbucket.org/Doomseeker/doomseeker/commits/6b23e7db03762ea64d40f2f6b22deaa00ef345eb [^]'
The gist of it is that "Localization" .ini variable is now settable to a "system" value. As you may suspect, this is not a real localization but a magic value that the program dynamically translates to whatever is the current locale as reported by Qt through `QLocale::system()`. IIRC on Linux I can manipulate the retval of that method by changing the LANGUAGE env. var. Doomseekes lets you enforce a specific locale and then switch back to this system-follow value from the Appearance config tab.
The "restart to retranslate" notifications should also be aware of the fact that the currently loaded language might be the same as the system language and the same as a specific language picked from the list. In other words, the notification should not appear if no actual retranslation is going to happen even if the raw value in the .ini file differs after the config gets saved.
System-follow is now also the default for new configurations which coincidentally should also fix 0003260.
Oh, and also Localization class is now a singleton, which is a bleh and a meh.
|
|
|
|
Passes my code review and testing on OpenBSD 6.4-current. |
|
|
|
You could've updated the copyright years Zalewa, but I won't bother in this ticket. |
|