The problem is that, for 12-hour locales, we cut the "a" part of the time format out to show it in a separate TextView so it can be animated independently of the actual time. Unfortunately, while TTS is smart enough to pronounce "1:15 AM" as /wʌn fɪftin eɪ ɛm/, "AM" on its own looks like the English word "am" and is pronounced /æm/. To fix this, a TextClock must be able to accept separate formats for its content description than its presentation. With this capability we can place the complete 12-hour time format (including am/pm) in one of the views and suppress the other one, so that the utterance creates an identical experience to visual inspection: "1:15 AM" for all users. Bug: 21718000 Change-Id: Ic9920d71ae4d4ad41ba86d7bd96f9a19b07e2108
51 lines
1.9 KiB
XML
51 lines
1.9 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
~ Copyright (C) 2014 The Android Open Source Project
|
|
~
|
|
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
~ you may not use this file except in compliance with the License.
|
|
~ You may obtain a copy of the License at
|
|
~
|
|
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
~
|
|
~ Unless required by applicable law or agreed to in writing, software
|
|
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
~ See the License for the specific language governing permissions and
|
|
~ limitations under the License
|
|
-->
|
|
|
|
<!-- Extends LinearLayout -->
|
|
<com.android.systemui.statusbar.policy.SplitClockView
|
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
>
|
|
<TextClock
|
|
android:id="@+id/time_view"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:singleLine="true"
|
|
android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Clock"
|
|
/>
|
|
<TextClock
|
|
android:id="@+id/am_pm_view"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:singleLine="true"
|
|
android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Clock"
|
|
android:textSize="@dimen/qs_time_collapsed_size"
|
|
android:importantForAccessibility="no"
|
|
/>
|
|
|
|
<!-- Empty text view so we have the same height when expanded/collapsed-->
|
|
<TextView
|
|
android:id="@+id/empty_time_view"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:visibility="invisible"
|
|
android:singleLine="true"
|
|
android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Clock"
|
|
/>
|
|
</com.android.systemui.statusbar.policy.SplitClockView>
|