| Index: ui/base/l10n/formatter.cc
|
| diff --git a/ui/base/l10n/formatter.cc b/ui/base/l10n/formatter.cc
|
| index 2764907cc4712a28f4d1da916210ba96ddb9ae0e..486a3a029cbaa859072a691b17a6ab0975f3c6a5 100644
|
| --- a/ui/base/l10n/formatter.cc
|
| +++ b/ui/base/l10n/formatter.cc
|
| @@ -53,6 +53,10 @@ static const Pluralities IDS_ELAPSED_DAY = {
|
| "one{# day ago}",
|
| " other{# days ago}"
|
| };
|
| +static const Pluralities IDS_ELAPSED_MONTH = {
|
| + IDS_TIME_ELAPSED_MONTHS, "one{# month ago}", " other{# months ago}"};
|
| +static const Pluralities IDS_ELAPSED_YEAR = {
|
| + IDS_TIME_ELAPSED_YEARS, "one{# year ago}", " other{# years ago}"};
|
|
|
| static const Pluralities IDS_REMAINING_SHORT_SEC = {
|
| IDS_TIME_REMAINING_SECS,
|
| @@ -85,6 +89,10 @@ static const Pluralities IDS_REMAINING_DAY = {
|
| "one{# day left}",
|
| " other{# days left}"
|
| };
|
| +static const Pluralities IDS_REMAINING_MONTH = {
|
| + IDS_TIME_REMAINING_MONTHS, "one{# month left}", " other{# months left}"};
|
| +static const Pluralities IDS_REMAINING_YEAR = {
|
| + IDS_TIME_REMAINING_YEARS, "one{# year left}", " other{# years left}"};
|
|
|
| static const Pluralities IDS_DURATION_SHORT_SEC = {
|
| IDS_TIME_SECS,
|
| @@ -117,6 +125,10 @@ static const Pluralities IDS_DURATION_DAY = {
|
| "one{# day}",
|
| " other{# days}"
|
| };
|
| +static const Pluralities IDS_DURATION_MONTH = {IDS_TIME_MONTHS, "one{# month}",
|
| + " other{# months}"};
|
| +static const Pluralities IDS_DURATION_YEAR = {IDS_TIME_YEARS, "one{# year}",
|
| + " other{# years}"};
|
|
|
| static const Pluralities IDS_LONG_MIN_1ST = {
|
| IDS_TIME_LONG_MINS_1ST,
|
| @@ -179,17 +191,23 @@ void FormatNumberInPlural(const icu::MessageFormat& format, int number,
|
| Formatter::Formatter(const Pluralities& sec_pluralities,
|
| const Pluralities& min_pluralities,
|
| const Pluralities& hour_pluralities,
|
| - const Pluralities& day_pluralities) {
|
| + const Pluralities& day_pluralities,
|
| + const Pluralities& month_pluralities,
|
| + const Pluralities& year_pluralities) {
|
| simple_format_[UNIT_SEC] = InitFormat(sec_pluralities);
|
| simple_format_[UNIT_MIN] = InitFormat(min_pluralities);
|
| simple_format_[UNIT_HOUR] = InitFormat(hour_pluralities);
|
| simple_format_[UNIT_DAY] = InitFormat(day_pluralities);
|
| + simple_format_[UNIT_MONTH] = InitFormat(month_pluralities);
|
| + simple_format_[UNIT_YEAR] = InitFormat(year_pluralities);
|
| }
|
|
|
| Formatter::Formatter(const Pluralities& sec_pluralities,
|
| const Pluralities& min_pluralities,
|
| const Pluralities& hour_pluralities,
|
| const Pluralities& day_pluralities,
|
| + const Pluralities& month_pluralities,
|
| + const Pluralities& year_pluralities,
|
| const Pluralities& min_sec_pluralities1,
|
| const Pluralities& min_sec_pluralities2,
|
| const Pluralities& hour_min_pluralities1,
|
| @@ -200,6 +218,8 @@ Formatter::Formatter(const Pluralities& sec_pluralities,
|
| simple_format_[UNIT_MIN] = InitFormat(min_pluralities);
|
| simple_format_[UNIT_HOUR] = InitFormat(hour_pluralities);
|
| simple_format_[UNIT_DAY] = InitFormat(day_pluralities);
|
| + simple_format_[UNIT_MONTH] = InitFormat(month_pluralities);
|
| + simple_format_[UNIT_YEAR] = InitFormat(year_pluralities);
|
| detailed_format_[TWO_UNITS_MIN_SEC][0] = InitFormat(min_sec_pluralities1);
|
| detailed_format_[TWO_UNITS_MIN_SEC][1] = InitFormat(min_sec_pluralities2);
|
| detailed_format_[TWO_UNITS_HOUR_MIN][0] = InitFormat(hour_min_pluralities1);
|
| @@ -285,38 +305,30 @@ FormatterContainer::~FormatterContainer() {
|
|
|
| void FormatterContainer::Initialize() {
|
| formatter_[TimeFormat::FORMAT_ELAPSED][TimeFormat::LENGTH_SHORT].reset(
|
| - new Formatter(IDS_ELAPSED_SHORT_SEC,
|
| - IDS_ELAPSED_SHORT_MIN,
|
| - IDS_ELAPSED_HOUR,
|
| - IDS_ELAPSED_DAY));
|
| + new Formatter(IDS_ELAPSED_SHORT_SEC, IDS_ELAPSED_SHORT_MIN,
|
| + IDS_ELAPSED_HOUR, IDS_ELAPSED_DAY, IDS_ELAPSED_MONTH,
|
| + IDS_ELAPSED_YEAR));
|
| formatter_[TimeFormat::FORMAT_ELAPSED][TimeFormat::LENGTH_LONG].reset(
|
| new Formatter(IDS_ELAPSED_LONG_SEC, IDS_ELAPSED_LONG_MIN,
|
| - IDS_ELAPSED_HOUR, IDS_ELAPSED_DAY));
|
| + IDS_ELAPSED_HOUR, IDS_ELAPSED_DAY, IDS_ELAPSED_MONTH,
|
| + IDS_ELAPSED_YEAR));
|
| formatter_[TimeFormat::FORMAT_REMAINING][TimeFormat::LENGTH_SHORT].reset(
|
| - new Formatter(IDS_REMAINING_SHORT_SEC,
|
| - IDS_REMAINING_SHORT_MIN,
|
| - IDS_REMAINING_HOUR,
|
| - IDS_REMAINING_DAY));
|
| + new Formatter(IDS_REMAINING_SHORT_SEC, IDS_REMAINING_SHORT_MIN,
|
| + IDS_REMAINING_HOUR, IDS_REMAINING_DAY, IDS_REMAINING_MONTH,
|
| + IDS_REMAINING_YEAR));
|
| formatter_[TimeFormat::FORMAT_REMAINING][TimeFormat::LENGTH_LONG].reset(
|
| - new Formatter(IDS_REMAINING_LONG_SEC,
|
| - IDS_REMAINING_LONG_MIN,
|
| - IDS_REMAINING_HOUR,
|
| - IDS_REMAINING_DAY));
|
| + new Formatter(IDS_REMAINING_LONG_SEC, IDS_REMAINING_LONG_MIN,
|
| + IDS_REMAINING_HOUR, IDS_REMAINING_DAY, IDS_REMAINING_MONTH,
|
| + IDS_REMAINING_YEAR));
|
| formatter_[TimeFormat::FORMAT_DURATION][TimeFormat::LENGTH_SHORT].reset(
|
| - new Formatter(IDS_DURATION_SHORT_SEC,
|
| - IDS_DURATION_SHORT_MIN,
|
| - IDS_DURATION_HOUR,
|
| - IDS_DURATION_DAY));
|
| + new Formatter(IDS_DURATION_SHORT_SEC, IDS_DURATION_SHORT_MIN,
|
| + IDS_DURATION_HOUR, IDS_DURATION_DAY, IDS_DURATION_MONTH,
|
| + IDS_DURATION_YEAR));
|
| formatter_[TimeFormat::FORMAT_DURATION][TimeFormat::LENGTH_LONG].reset(
|
| - new Formatter(IDS_LONG_SEC,
|
| - IDS_LONG_MIN,
|
| - IDS_DURATION_HOUR,
|
| - IDS_DURATION_DAY,
|
| - IDS_LONG_MIN_1ST,
|
| - IDS_LONG_SEC_2ND,
|
| - IDS_DURATION_HOUR_1ST,
|
| - IDS_LONG_MIN_2ND,
|
| - IDS_DURATION_DAY_1ST,
|
| + new Formatter(IDS_LONG_SEC, IDS_LONG_MIN, IDS_DURATION_HOUR,
|
| + IDS_DURATION_DAY, IDS_DURATION_MONTH, IDS_DURATION_YEAR,
|
| + IDS_LONG_MIN_1ST, IDS_LONG_SEC_2ND, IDS_DURATION_HOUR_1ST,
|
| + IDS_LONG_MIN_2ND, IDS_DURATION_DAY_1ST,
|
| IDS_DURATION_HOUR_2ND));
|
| }
|
|
|
|
|