ghisler(Author) wrote:Well "Language default" is the default for the language chosen by the user within Total Commander, while "System default" is the default for the language of the Android system. For example, a Russian user may have an English language phone, but still wants to use the Russian translation of TC (or vice versa, Russian system and English TC).
Sorry, but your example does neither explain what is the difference between the system default (of the android system) and the language default (of the android system), nor does it respect that SYSTEM DEFAULT MUST BE WHAT WAS DECLARED VALID FOR ALL APPS (SETTING IN THE ANDROID SYSTEM SETTINGS) AND NOT THE LANGUAGE DEFAULT!
The problem is very simple: let's assume you are living in switzerland; in switzerland the date format is DD.MM.YYYY. But you want to have the language of your android-device in english ... but english is no official language in switzerland, and in english the format is MM/DD/YY (no dot, but slash inbetween – two digits for the year (and not four) – and month before date). So you set your android device systemwide to the setting DD.MM.YYYY for every date that will appear in any APP – meaning: EVERY APP USES DD.MM.YYYY for the date; that is the SYSTEM DEFAULT (that was chosen by the user and declared valid for the entire android system – as the english LANGUAGE DEFAULT MM/DD/YY is depreciated to be used within the entire android device for that user).
So the user has an android device with following settings:
a) LANGUAGE DEFAULT (of the chosen language) is: date format MM/DD/YY
(this is fixed and set to the language – you cannot change it; it is bound to the language and changes automatically if you change the android system language; you have to change date format in system settings if you do not want that date format – see b)
b) system default for date format is (now and only for this specific device – by changeing it in the android system settings) set to: DD.MM.YYYY (that is not the same format that the language has built in; language still remains in english, and language default still MM/DD/YY)!
that means: the system default for the date format was changed (in android system settings) and set to DD.MM.YYYY – that is not the same as the language default of the language that the device is set to.
Now let's come to TC with a device that has following device settings:
– device language is set to english
– default date format is set to DD.MM.YYYY (this is the (new) system default)
plase note: the system default is not the same as the language default!
c) language of TC is set to system language (this is the language that the android device was set to – in that case it is english)
d) date format of TC is set to system default (and not language default – but if you only use "system language" and take that "language default" it comes out wrong)
as seen above: system default for the date format (of the android device) was set to DD.MM.YYYY, so setting the device to "system default"must result in date setting of "DD.MM.YYYY" (and nothing else)
But what your software does is wrong:
The result is that the date format is set to language default (MM/DD/YY) of the system language and NOT to system default (that was set to DD.MM.YYYY) as it should be
So the problem (and bug) in your software is:
TC does NOT use the systemwide default (that is the system default) when setting to system default, but the (unchangeable) language default (that is NOT the system default, but the language default)!
YOU DO NOT RESPECT THAT THE SYSTEM DEFAULT CAN BE SET DIFFERENTLY TO THE (ANDROID AND TC) LANGUAGE DEFAULT; and it does not make sense to give two separate settings (for language default and system default), if both of them use "language default" and neither of them "system default"!
What I ask for is that if you set TC to "system default", system default is used and not language default (as it is now)!!
----------------------------------------------------------------------------------
Added 22.05.2013:
Please be aware: you can have 3 default settings:
1: android language default (that setting that is bound to the android language; it is fixed to the android system language and cannot be changed)
2: android system default (the setting that the user has set systemwide for his android device – it is not the same than android language default if it was changed; the user has the right and the possibility to do that – that expresses that he does not want to use the android language default as his own system default)
3: TC language default (the default of the language that was chosen for TC)
If TC was set in the same language than the android system, #1 and #3 are the same.
Now what you do is: you only let the user chose between #1 and #3 – but #1 was depreciated by the user and replaced by #2; but you do not let the user choose #2 as you pretend that the "system default" is setting #1; but that's wrong! that is "language default for the android system"; the user wants his own "system default" that he has changed to his own purpose. "system default" must be #2 and NOT #1!!!