In getUnitString, the units are added to the value as suffix, but this is not i18n friendly for some languages. The value and the unit should be represented in the %1 %2 fashion, so that the unit can be prepended as needed. This is especially problematic for percent values, since my language prepends it instead of appending.