John Spurlock 257f283b0e Introduce transparent bars to the keyguard.
Driven by a new framework config bool. Tested on all layouts,
but disabled by default.  Can be enabled with a config overlay.

(Sliding/MultiPane)ChallengeLayout have custom measure/layout
logic that peeks at the root view's padding (!).  So we must keep
the root view's padding = system window insets. However, we need
the scrims + the fullscreen camera widget preview to use the entire
display size if the bars are transparent.

So the approach is to maintain the root view's
(KeyguardViewManager$ViewManagerHost) padding as before via
setFitsSystemWindows(true) but allow non KeyguardHostViews to
extend into the padding if bars are transparent via a custom
measure/draw on the root view.

KeyguardHostView background + challege scrims moved up to the
root view.

Also:
- Remove logspam line for fixed bug.

- Fix status bar staying opaque on interaction on secure keyguard.

Known issues:
- Nav bar blip dismissing global actions, keyguard app widget picker
bars are opaque.  Both will use the new inherit flag once it exists.

- Emergency dialer layout dance, will be fixed in the phone project.

Bug:10606085
Change-Id: I2648b4ee9a54a67324ce9dcbab976ad4da4bbcfa
2013-09-23 15:59:15 -04:00

55 lines
2.5 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!--
/* //device/apps/common/assets/res/any/colors.xml
**
** Copyright 2013, 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.
*/
-->
<resources>
<!-- Alias used to reference framework color for transparency. -->
<item type="color" name="transparent">@android:color/transparent</item>
<!-- Alias used to reference framework drawable in keyguard. -->
<item type="drawable" name="stat_sys_warning">@android:drawable/stat_sys_warning</item>
<!-- Alias used to reference framework drawable in keyguard. -->
<item type="drawable" name="ic_media_pause">@android:drawable/ic_media_pause</item>
<!-- Alias used to reference framework drawable in keyguard. -->
<item type="drawable" name="ic_media_stop">@*android:drawable/ic_media_stop</item>
<!-- Alias used to reference framework drawable in keyguard. -->
<item type="drawable" name="ic_contact_picture">@*android:drawable/ic_contact_picture</item>
<!-- Alias used to reference framework drawable in keyguard. -->
<item type="drawable" name="ic_lock_idle_alarm">@*android:drawable/ic_lock_idle_alarm</item>
<!-- Alias used to reference framework "OK" string in keyguard. -->
<item type="string" name="ok">@*android:string/ok</item>
<!-- Alias used to reference framework "OK" string in keyguard. -->
<item type="string" name="system_ui_date_pattern">@*android:string/system_ui_date_pattern</item>
<!-- Alias used to reference framework configuration for screen rotation. -->
<item type="bool" name="config_enableLockScreenRotation">@*android:bool/config_enableLockScreenRotation</item>
<!-- Alias used to reference framework configuration for transparent bars. -->
<item type="bool" name="config_enableLockScreenTransparentBars">@*android:bool/config_enableLockScreenTransparentBars</item>
<!-- Alias used to reference framework activity duration. -->
<item type="integer" name="config_activityDefaultDur">@*android:integer/config_activityDefaultDur</item>
</resources>