diff options
author | Eric Erfanian <erfanian@google.com> | 2018-05-30 16:17:27 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2018-05-30 16:17:27 +0000 |
commit | 2c3d81eeac82472d06027bc65d661e16735c8608 (patch) | |
tree | 293aeb0012d8db8f3f4606a75a422cf4da328477 /java/com/android/dialer/theme | |
parent | 4efd0ebf003e985e7cbe40d8ffd9f7ff227a9611 (diff) | |
parent | 152c3fd58f83a1882bcdc8bc55f46bbb8f3173c9 (diff) |
Merge changes Ica13ee39,I5e0fedc8,I8e7efad0,I0ecc1f91,Iee1e658a, ...
* changes:
Drop maps.impl from packages.mk
Check if ID column is null before retrieving data from the smart dial database.
Rename theme/private to theme/hidden.
Some improvements to the answer fragment layouts.
Better a11y for the bottom sheet.
Fix a few UI bugs.
Log IMS video call available state
Better a11y for contact badge in the new call log.
Use lookup key to determine the letter tile color
Use Dialer Light Theme for SpeakEasyFragment
Better a11y for new call log entries.
Use Maps SDK lite mode instead of static API for emergency call.
Updating locations where PrimaryInfo#setPhoto is used to also PrimaryInfo#setPhotoUri for new GlidePhotoManager implementation. As part of this addition, we also are cleaning the setPhoto(null) because this is not explicitly needed.
Converted ThemeUtil into a DaggerModule.
Delete AppCompatConstants
Remove photo support in PhoneNumberService
Began implementation of Dialer dark theme.
Diffstat (limited to 'java/com/android/dialer/theme')
41 files changed, 1027 insertions, 384 deletions
diff --git a/java/com/android/dialer/theme/AndroidManifest.xml b/java/com/android/dialer/theme/AndroidManifest.xml deleted file mode 100644 index 7c1e4effd..000000000 --- a/java/com/android/dialer/theme/AndroidManifest.xml +++ /dev/null @@ -1,3 +0,0 @@ -<manifest - package="com.android.dialer.theme"> -</manifest> diff --git a/java/com/android/dialer/theme/README.md b/java/com/android/dialer/theme/README.md new file mode 100644 index 000000000..6fb8e4f07 --- /dev/null +++ b/java/com/android/dialer/theme/README.md @@ -0,0 +1,75 @@ +# How to use this directory + +First thing to note, it's imperative that the application and all activities +inherit from the styles outlined in theme/base. If an Activity doesn\'t specify +a style for it's theme, it automatically inherits one from the Application. And +this hierarchy continues: Application > Activity > Fragment > View > View > ... + +## theme/base + +This is where the base application themes, activity themes and application wide +style attributes live. + +What is an attribute? There are three types (depending on how you want to define +them): + +* Legacy Android attributes (android:colorPrimary). These are defined by the + Android framework and they exist to allow developers easily custom Android + provided widgets. + +* Appcompat Android attributes (colorPrimary). There are also defined by the + Android framework but they only exist to customize AppCompat widgets. After + the framework was more mature, the team realized that they needed to add + more customization to their widgets, so they created the AppCompat variant + with all of the same attributes plus some. *Note:* Unfortunately our app + uses both Legacy Widgets and AppCompat widgets, so when you define an + AppCompat attribute in a style, be sure to also define the Legacy version as + well if it exists. + +* Custom application attributes (colorIcon). It goes without saying that the + names can't collide with the framework attributes. These attributes server + to satisfy what the framework doesn't. For example, the framework doesn't + provide an attribute to tint all of your ImageViews (why would it?), so we + created the colorIcon attribute to apply to all ImageViews that show quantum + icons/assets that need to be tinted. + +Styles in this package follow a naming convention of inheritance: + +* Dialer. and Dialer.NoActionBar are the two root themes that should be used + to add sdk specific features (like coloring the Android nav bar). + +* Dialer.ThemeBase.ActionBar and Dialer.ThemeBase.NoActionBar are great + starting points for Activity style's to inherit from if they need specific + customizations. + +* Dialer.ThemeBase.ActionBar.* and Dialer.ThemeBase.NoActionBar.* are + specialized app themes intended to change the entire look of the app. For + example, Dialer.ThemeBase.NoActionBar.Dark is used for a dark mode theme. If + you create a custom theme for an activity, be sure your customization will + work for all themes. See dialer/dialpadview/theme for an example. + +## theme/common + +This is a dumping ground for shared resources. Some examples of what should live +here: + +* Colors that can't be theme'd (there aren't many of those, so you probably + won't do that). +* Drawables, images, animations, dimensions, styles, ect. that can be (or are) + used throughout the entire app without the need for customization. If you + want to customize a specific style for one use case, feel free to override + it and store it in your own resource directory. + +## theme/private + +This package is only visible to theme/base. Things you should never do: + +* Reference anything in here. +* Duplicate the resources from this directory into another. + +Things you should do: + +* Add colors that are common throughout the entire app and need be themed. For + example, text colors, background colors and app primary and accent colors. + Each color you add needs to exist in each color_*.xml file where * + represents an app theme like 'dark' or 'light'. diff --git a/java/com/android/dialer/theme/ThemeUtil.java b/java/com/android/dialer/theme/ThemeUtil.java deleted file mode 100644 index 227224448..000000000 --- a/java/com/android/dialer/theme/ThemeUtil.java +++ /dev/null @@ -1,110 +0,0 @@ -/* - * Copyright (C) 2018 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. - */ - -package com.android.dialer.theme; - -import android.content.Context; -import android.content.res.TypedArray; -import android.support.annotation.ColorInt; -import android.support.annotation.StyleRes; -import android.view.ContextThemeWrapper; -import android.view.LayoutInflater; -import com.android.dialer.common.Assert; - -/** Utility for fetching */ -@SuppressWarnings("unused") -public class ThemeUtil { - - private static int theme = -1; - private static int colorIcon = -1; - private static int colorPrimary = -1; - private static int colorPrimaryDark = -1; - private static int colorAccent = -1; - private static int textColorPrimary = -1; - private static int textColorSecondary = -1; - private static int textColorPrimaryInverse = -1; - private static int textColorHint = -1; - private static int colorBackground = -1; - private static int colorBackgroundFloating = -1; - - public static void initializeTheme(Context context) { - // TODO(a bug): add share prefs check to configure this - theme = R.style.Dialer_ThemeBase_NoActionBar; - context = context.getApplicationContext(); - context.setTheme(theme); - TypedArray array = - context - .getTheme() - .obtainStyledAttributes( - theme, - new int[] { - android.R.attr.colorPrimary, - android.R.attr.colorPrimaryDark, - android.R.attr.colorAccent, - android.R.attr.textColorPrimary, - android.R.attr.textColorSecondary, - android.R.attr.textColorPrimaryInverse, - android.R.attr.textColorHint, - android.R.attr.colorBackground, - android.R.attr.colorBackgroundFloating, - R.attr.colorIcon, - }); - colorPrimary = array.getColor(/* index= */ 0, /* defValue= */ -1); - colorPrimaryDark = array.getColor(/* index= */ 1, /* defValue= */ -1); - colorAccent = array.getColor(/* index= */ 2, /* defValue= */ -1); - textColorPrimary = array.getColor(/* index= */ 3, /* defValue= */ -1); - textColorSecondary = array.getColor(/* index= */ 4, /* defValue= */ -1); - textColorPrimaryInverse = array.getColor(/* index= */ 5, /* defValue= */ -1); - textColorHint = array.getColor(/* index= */ 6, /* defValue= */ -1); - colorBackground = array.getColor(/* index= */ 7, /* defValue= */ -1); - colorBackgroundFloating = array.getColor(/* index= */ 8, /* defValue= */ -1); - colorIcon = array.getColor(/* index= */ 9, /* defValue= */ -1); - array.recycle(); - } - - public static @ColorInt int getColorIcon() { - Assert.checkArgument(colorIcon != -1); - return colorIcon; - } - - public static @ColorInt int getColorPrimary() { - Assert.checkArgument(colorPrimary != -1); - return colorPrimary; - } - - public static @ColorInt int getColorAccent() { - Assert.checkArgument(colorAccent != -1); - return colorAccent; - } - - public static @ColorInt int getTextColorSecondary() { - Assert.checkArgument(textColorSecondary != -1); - return textColorSecondary; - } - - public static @StyleRes int getTheme() { - Assert.checkArgument(theme != -1); - return theme; - } - - public static Context getThemedContext(Context context) { - return new ContextThemeWrapper(context, getTheme()); - } - - public static LayoutInflater getThemedLayoutInflator(LayoutInflater inflater) { - return inflater.cloneInContext(getThemedContext(inflater.getContext())); - } -} diff --git a/java/com/android/dialer/theme/attributes/AndroidManifest.xml b/java/com/android/dialer/theme/base/AndroidManifest.xml index 1a50716d2..ff7891055 100644 --- a/java/com/android/dialer/theme/attributes/AndroidManifest.xml +++ b/java/com/android/dialer/theme/base/AndroidManifest.xml @@ -13,4 +13,4 @@ ~ See the License for the specific language governing permissions and ~ limitations under the License --> -<manifest package="com.android.dialer.theme.attributes"/> +<manifest package="com.android.dialer.theme.base"/> diff --git a/java/com/android/dialer/theme/base/Theme.java b/java/com/android/dialer/theme/base/Theme.java new file mode 100644 index 000000000..6e0d20a7a --- /dev/null +++ b/java/com/android/dialer/theme/base/Theme.java @@ -0,0 +1,76 @@ +/* + * Copyright (C) 2018 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 + */ + +package com.android.dialer.theme.base; + +import android.content.Context; +import android.support.annotation.ColorInt; +import android.support.annotation.IntDef; +import android.support.annotation.StyleRes; +import android.view.LayoutInflater; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +/** Interface for theme. */ +public interface Theme { + + /** IntDef for the different themes Dialer supports. */ + @Retention(RetentionPolicy.SOURCE) + @IntDef({UNKNOWN, LIGHT, DARK, LIGHT_M2}) + @interface Type {} + + int UNKNOWN = 0; + int LIGHT = 1; + int DARK = 2; + int LIGHT_M2 = 3; + + @Type + int getTheme(); + + @StyleRes + int getApplicationThemeRes(); + + Context getThemedContext(Context context); + + LayoutInflater getThemedLayoutInflator(LayoutInflater inflater); + + @ColorInt + int getColorIcon(); + + @ColorInt + int getColorIconSecondary(); + + @ColorInt + int getColorPrimary(); + + @ColorInt + int getColorPrimaryDark(); + + @ColorInt + int getColorAccent(); + + @ColorInt + int getTextColorSecondary(); + + @ColorInt + int getTextColorPrimary(); + + @ColorInt + int getColorTextOnUnthemedDarkBackground(); + + @ColorInt + int getColorIconOnUnthemedDarkBackground(); +} diff --git a/java/com/android/dialer/theme/base/ThemeComponent.java b/java/com/android/dialer/theme/base/ThemeComponent.java new file mode 100644 index 000000000..d9067616f --- /dev/null +++ b/java/com/android/dialer/theme/base/ThemeComponent.java @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2018 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 + */ + +package com.android.dialer.theme.base; + +import android.content.Context; +import com.android.dialer.inject.HasRootComponent; +import com.android.dialer.inject.IncludeInDialerRoot; +import dagger.Subcomponent; + +/** Component for Theme. */ +@Subcomponent +public abstract class ThemeComponent { + + public abstract Theme theme(); + + public static ThemeComponent get(Context context) { + return ((HasComponent) ((HasRootComponent) context.getApplicationContext()).component()) + .themeComponent(); + } + + /** Used to refer to the root application component. */ + @IncludeInDialerRoot + public interface HasComponent { + ThemeComponent themeComponent(); + } +} diff --git a/java/com/android/dialer/theme/base/impl/AospThemeImpl.java b/java/com/android/dialer/theme/base/impl/AospThemeImpl.java new file mode 100644 index 000000000..b8c7e528f --- /dev/null +++ b/java/com/android/dialer/theme/base/impl/AospThemeImpl.java @@ -0,0 +1,175 @@ +/* + * Copyright (C) 2018 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. + */ + +package com.android.dialer.theme.base.impl; + +import android.content.Context; +import android.content.res.TypedArray; +import android.support.annotation.ColorInt; +import android.support.annotation.StyleRes; +import android.view.ContextThemeWrapper; +import android.view.LayoutInflater; +import com.android.dialer.common.Assert; +import com.android.dialer.theme.base.R; +import com.android.dialer.theme.base.Theme; +import javax.inject.Singleton; + +/** Utility for fetching */ +@SuppressWarnings("unused") +@Singleton +public class AospThemeImpl implements Theme { + + private int colorIcon = -1; + private int colorIconSecondary = -1; + private int colorPrimary = -1; + private int colorPrimaryDark = -1; + private int colorAccent = -1; + private int textColorPrimary = -1; + private int textColorSecondary = -1; + private int textColorPrimaryInverse = -1; + private int textColorHint = -1; + private int colorBackground = -1; + private int colorBackgroundFloating = -1; + private int colorTextOnUnthemedDarkBackground = -1; + private int colorIconOnUnthemedDarkBackground = -1; + + public AospThemeImpl(Context context) { + + context = context.getApplicationContext(); + context.setTheme(getApplicationThemeRes()); + TypedArray array = + context + .getTheme() + .obtainStyledAttributes( + getApplicationThemeRes(), + new int[] { + android.R.attr.colorPrimary, + android.R.attr.colorPrimaryDark, + android.R.attr.colorAccent, + android.R.attr.textColorPrimary, + android.R.attr.textColorSecondary, + android.R.attr.textColorPrimaryInverse, + android.R.attr.textColorHint, + android.R.attr.colorBackground, + android.R.attr.colorBackgroundFloating, + R.attr.colorIcon, + R.attr.colorIconSecondary, + R.attr.colorTextOnUnthemedDarkBackground, + R.attr.colorIconOnUnthemedDarkBackground, + }); + colorPrimary = array.getColor(/* index= */ 0, /* defValue= */ -1); + colorPrimaryDark = array.getColor(/* index= */ 1, /* defValue= */ -1); + colorAccent = array.getColor(/* index= */ 2, /* defValue= */ -1); + textColorPrimary = array.getColor(/* index= */ 3, /* defValue= */ -1); + textColorSecondary = array.getColor(/* index= */ 4, /* defValue= */ -1); + textColorPrimaryInverse = array.getColor(/* index= */ 5, /* defValue= */ -1); + textColorHint = array.getColor(/* index= */ 6, /* defValue= */ -1); + colorBackground = array.getColor(/* index= */ 7, /* defValue= */ -1); + colorBackgroundFloating = array.getColor(/* index= */ 8, /* defValue= */ -1); + colorIcon = array.getColor(/* index= */ 9, /* defValue= */ -1); + colorIconSecondary = array.getColor(/* index= */ 10, /* defValue= */ -1); + colorTextOnUnthemedDarkBackground = array.getColor(/* index= */ 11, /* defValue= */ -1); + colorIconOnUnthemedDarkBackground = array.getColor(/* index= */ 12, /* defValue= */ -1); + array.recycle(); + } + + /** + * Returns the {@link Theme} that the application is using. Activities should check this value if + * their custom style needs to customize further based on the application theme. + */ + @Override + public @Type int getTheme() { + // TODO(a bug): add share prefs check to configure this + return LIGHT; + } + + @Override + public @StyleRes int getApplicationThemeRes() { + switch (getTheme()) { + case DARK: + return R.style.Dialer_Dark_ThemeBase_NoActionBar; + case LIGHT: + return R.style.Dialer_ThemeBase_NoActionBar; + case UNKNOWN: + default: + throw Assert.createIllegalStateFailException("Theme hasn't been set yet."); + } + } + + @Override + public Context getThemedContext(Context context) { + return new ContextThemeWrapper(context, getApplicationThemeRes()); + } + + @Override + public LayoutInflater getThemedLayoutInflator(LayoutInflater inflater) { + return inflater.cloneInContext(getThemedContext(inflater.getContext())); + } + + @Override + public @ColorInt int getColorIcon() { + Assert.checkArgument(colorIcon != -1); + return colorIcon; + } + + @Override + public @ColorInt int getColorIconSecondary() { + Assert.checkArgument(colorIconSecondary != -1); + return colorIconSecondary; + } + + @Override + public @ColorInt int getColorPrimary() { + Assert.checkArgument(colorPrimary != -1); + return colorPrimary; + } + + @Override + public int getColorPrimaryDark() { + Assert.checkArgument(colorPrimary != -1); + return 0; + } + + @Override + public @ColorInt int getColorAccent() { + Assert.checkArgument(colorAccent != -1); + return colorAccent; + } + + @Override + public @ColorInt int getTextColorSecondary() { + Assert.checkArgument(textColorSecondary != -1); + return textColorSecondary; + } + + @Override + public @ColorInt int getTextColorPrimary() { + Assert.checkArgument(textColorPrimary != -1); + return textColorPrimary; + } + + @Override + public @ColorInt int getColorTextOnUnthemedDarkBackground() { + Assert.checkArgument(colorTextOnUnthemedDarkBackground != -1); + return colorTextOnUnthemedDarkBackground; + } + + @Override + public @ColorInt int getColorIconOnUnthemedDarkBackground() { + Assert.checkArgument(colorIconOnUnthemedDarkBackground != -1); + return colorIconOnUnthemedDarkBackground; + } +} diff --git a/java/com/android/dialer/theme/base/impl/AospThemeModule.java b/java/com/android/dialer/theme/base/impl/AospThemeModule.java new file mode 100644 index 000000000..7cf52cadd --- /dev/null +++ b/java/com/android/dialer/theme/base/impl/AospThemeModule.java @@ -0,0 +1,36 @@ +/* + * Copyright (C) 2018 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 + */ + +package com.android.dialer.theme.base.impl; + +import android.content.Context; +import com.android.dialer.inject.ApplicationContext; +import com.android.dialer.inject.DialerVariant; +import com.android.dialer.inject.InstallIn; +import com.android.dialer.theme.base.Theme; +import dagger.Module; +import dagger.Provides; + +/** Module which binds {@link AospThemeImpl}. */ +@InstallIn(variants = {DialerVariant.DIALER_TEST}) +@Module +public class AospThemeModule { + + @Provides + static Theme provideThemeModule(@ApplicationContext Context context) { + return new AospThemeImpl(context); + } +} diff --git a/java/com/android/dialer/theme/base/res/values/attr.xml b/java/com/android/dialer/theme/base/res/values/attr.xml new file mode 100644 index 000000000..41c6225ad --- /dev/null +++ b/java/com/android/dialer/theme/base/res/values/attr.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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> + <!-- Used to style all icons in Dialer. --> + <attr name="colorIcon" format="color"/> + <!-- Used to style some icons a little lighter in Dialer. --> + <attr name="colorIconSecondary" format="color"/> + <!-- Used to color text on dark backgrounds. White in Light Theme. --> + <attr name="colorTextOnUnthemedDarkBackground" format="color"/> + <!-- Used to color icons on dark backgrounds. White in Light Theme. --> + <attr name="colorIconOnUnthemedDarkBackground" format="color"/> +</resources>
\ No newline at end of file diff --git a/java/com/android/dialer/theme/base/res/values/styles_dialer_light.xml b/java/com/android/dialer/theme/base/res/values/styles_dialer_light.xml new file mode 100644 index 000000000..cfdee7801 --- /dev/null +++ b/java/com/android/dialer/theme/base/res/values/styles_dialer_light.xml @@ -0,0 +1,53 @@ +<!-- + ~ Copyright (C) 2012 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> + <!-- TODO(a bug): properly document this or delete it --> + <!-- We don't want to style this, need to discuss with Yen why this was used instead of a default theme --> + <style name="Theme.PreCall.DialogHolder" parent="Dialer.ThemeBase.NoActionBar"> + <item name="android:windowBackground">@android:color/transparent</item> + <item name="android:windowActivityTransitions">false</item> + <item name="android:windowIsTranslucent">true</item> + + <item name="android:statusBarColor">@android:color/transparent</item> + <item name="android:navigationBarColor">@android:color/transparent</item> + <item name="android:windowDrawsSystemBarBackgrounds">true</item> + </style> + + <!-- Style applied to the "Settings" screen. Keep in sync with SettingsLight in Telephony. --> + <style name="SettingsStyle" parent="Dialer.ThemeBase.ActionBar"> + <!-- Setting text. --> + <item name="android:textColorPrimary">@color/settings_text_color_primary</item> + <!-- Setting description. --> + <item name="android:textColorSecondary">@color/settings_text_color_secondary</item> + <item name="android:windowBackground">?android:attr/colorBackground</item> + <item name="android:colorAccent">?android:attr/colorPrimary</item> + <item name="android:textColorLink">?android:attr/colorPrimary</item> + </style> + + <!-- TODO(a bug): This is only actively used in empty_content_view.xml. Move it there. --> + <style name="TextActionStyle"> + <item name="android:layout_width">wrap_content</item> + <item name="android:layout_height">@dimen/call_log_action_height</item> + <item name="android:gravity">end|center_vertical</item> + <item name="android:paddingStart">@dimen/call_log_action_horizontal_padding</item> + <item name="android:paddingEnd">@dimen/call_log_action_horizontal_padding</item> + <item name="android:textColor">?android:attr/colorPrimary</item> + <item name="android:fontFamily">sans-serif-medium</item> + <item name="android:focusable">true</item> + <item name="android:singleLine">true</item> + <item name="android:textAllCaps">true</item> + </style> +</resources> diff --git a/java/com/android/dialer/theme/base/res/values/theme_dialer_dark.xml b/java/com/android/dialer/theme/base/res/values/theme_dialer_dark.xml new file mode 100644 index 000000000..e01a3a282 --- /dev/null +++ b/java/com/android/dialer/theme/base/res/values/theme_dialer_dark.xml @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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> + <!-- Deprecated: ActionBars are clunky and Toolbar (along with Dialer.ThemeBase.NoActionBar) + should be used in favor--> + <style name="Dialer.Dark.ThemeBase.ActionBar"> + <!-- These are used to style all actionbars in Dialer. These aren't needed in Dialer.ThemeBase.NoActionBar --> + <item name="actionBarStyle">@style/DialerActionBarBaseStyle</item> + <item name="actionBarSize">@dimen/action_bar_height</item> + </style> + + <style name="Dialer.Dark.ThemeBase.NoActionBar"> + <!-- Copied from Theme.AppCompat.Light.NoActionBar. We can remove this and update the Dialer + base style once none of our activities depend on ActionBar anymore. --> + <item name="windowActionBar">false</item> + <item name="windowNoTitle">true</item> + </style> + + <!-- Activities and Applications should inherit from one of the themes above. --> + <style name="Dialer.Dark.ThemeBase"> + <!-- These values should be used to color all backgrounds. --> + <item name="android:colorBackground">@color/dialer_dark_background</item> + <item name="android:colorBackgroundFloating">@color/dialer_dark_background_floating</item> + + <!-- These values should be used to set text color. --> + <!-- swap text colors. --> + <item name="android:textColorPrimary">@color/dialer_primary_text_color_inverse</item> + <item name="android:textColorSecondary">@color/dialer_secondary_text_color_inverse</item> + <item name="android:textColorPrimaryInverse">@color/dialer_primary_text_color</item> + <item name="android:textColorSecondaryInverse">@color/dialer_secondary_text_color</item> + <item name="android:textColorHint">@color/dialer_text_hint_color</item> + + <!-- These will be automatically used to color most Appcompat/Material widgets. --> + <item name="android:colorPrimary">@color/dialer_theme_color</item> + <item name="colorPrimary">@color/dialer_theme_color</item> + <item name="android:colorPrimaryDark">@color/dialer_theme_color_dark</item> + <item name="colorPrimaryDark">@color/dialer_theme_color_dark</item> + <item name="android:colorAccent">@color/dialer_secondary_color</item> + <item name="colorAccent">@color/dialer_secondary_color</item> + + <!-- Used to automatically style check/selected checkbox, switches and radio buttons --> + <item name="colorControlActivated">?android:attr/colorPrimary</item> + + <!-- Dialer specific attributes. --> + <item name="colorIcon">?android:attr/textColorSecondary</item> + <item name="colorIconSecondary">?android:attr/textColorSecondary</item> + <item name="colorTextOnUnthemedDarkBackground">@color/dialer_primary_text_color_inverse</item> + <item name="colorIconOnUnthemedDarkBackground">@color/dialer_icon_color_white</item> + </style> +</resources>
\ No newline at end of file diff --git a/java/com/android/dialer/theme/base/res/values/theme_dialer_light.xml b/java/com/android/dialer/theme/base/res/values/theme_dialer_light.xml new file mode 100644 index 000000000..667b9726d --- /dev/null +++ b/java/com/android/dialer/theme/base/res/values/theme_dialer_light.xml @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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> + <!-- Deprecated: ActionBars are clunky and Toolbar (along with Dialer.ThemeBase.NoActionBar) + should be used in favor--> + <style name="Dialer.ThemeBase.ActionBar"> + <!-- These are used to style all actionbars in Dialer. These aren't needed in Dialer.ThemeBase.NoActionBar --> + <item name="actionBarStyle">@style/DialerActionBarBaseStyle</item> + <item name="actionBarSize">@dimen/action_bar_height</item> + </style> + + <style name="Dialer.ThemeBase.NoActionBar"> + <!-- Copied from Theme.AppCompat.Light.NoActionBar. We can remove this and update the Dialer + base style once none of our activities depend on ActionBar anymore. --> + <item name="windowActionBar">false</item> + <item name="windowNoTitle">true</item> + </style> + + <!-- Activities and Applications should inherit from one of the themes above. --> + <style name="Dialer.ThemeBase"> + <!-- These values should be used to color all backgrounds. --> + <item name="android:colorBackground">@color/dialer_background_light</item> + <item name="android:colorBackgroundFloating">@color/dialer_background_floating_light</item> + + <!-- These values should be used to set text color. --> + <item name="android:textColorPrimary">@color/dialer_primary_text_color</item> + <item name="android:textColorSecondary">@color/dialer_secondary_text_color</item> + <item name="android:textColorPrimaryInverse">@color/dialer_primary_text_color_inverse</item> + <item name="android:textColorSecondaryInverse">@color/dialer_secondary_text_color_inverse</item> + <item name="android:textColorHint">@color/dialer_text_hint_color</item> + + <!-- These will be automatically used to color most Appcompat/Material widgets. --> + <item name="android:colorPrimary">@color/dialer_theme_color</item> + <item name="colorPrimary">@color/dialer_theme_color</item> + <item name="android:colorPrimaryDark">@color/dialer_theme_color_dark</item> + <item name="colorPrimaryDark">@color/dialer_theme_color_dark</item> + <item name="android:colorAccent">@color/dialer_secondary_color</item> + <item name="colorAccent">@color/dialer_secondary_color</item> + + <!-- Used to automatically style check/selected checkbox, switches and radio buttons --> + <item name="colorControlActivated">?android:attr/colorPrimary</item> + + <!-- Dialer specific attributes. --> + <item name="colorIcon">@color/dialer_secondary_text_color</item> + <item name="colorIconSecondary">@color/dialer_icon_color_secondary</item> + <item name="colorTextOnUnthemedDarkBackground">@color/dialer_primary_text_color_inverse</item> + <item name="colorIconOnUnthemedDarkBackground">@color/dialer_icon_color_white</item> + </style> + + <!-- TODO(a bug): investigate making this style's parent Dialer.ThemeBase.NoActionBar --> + <style name="Theme.AppCompat.Translucent" parent="Theme.AppCompat.NoActionBar"> + <item name="android:windowNoTitle">true</item> + <item name="android:windowBackground">@android:color/transparent</item> + <item name="android:colorBackgroundCacheHint">@null</item> + <item name="android:windowIsTranslucent">true</item> + <item name="android:windowAnimationStyle">@android:style/Animation</item> + </style> + + <!-- Deprecated: Use Toolbar instead of ActionBar. --> + <!-- Used to style all Dialer's action bars. Every actionbar is awarded this for free if the parent + activity's theme extends from Dialer.ThemeBase.ActionBar or doesn't specify a theme. --> + <style name="DialerActionBarBaseStyle" + parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse"> + <item name="android:background">?android:attr/colorPrimary</item> + <item name="background">?android:attr/colorPrimary</item> + </style> +</resources> diff --git a/java/com/android/dialer/theme/attributes/res/values/attr.xml b/java/com/android/dialer/theme/common/AndroidManifest.xml index 6db0aa8d3..51e532e2a 100644 --- a/java/com/android/dialer/theme/attributes/res/values/attr.xml +++ b/java/com/android/dialer/theme/common/AndroidManifest.xml @@ -1,4 +1,3 @@ -<?xml version="1.0" encoding="utf-8"?> <!-- ~ Copyright (C) 2018 The Android Open Source Project ~ @@ -14,8 +13,4 @@ ~ See the License for the specific language governing permissions and ~ limitations under the License --> -<resources> - - <!-- Used to style all icons in Dialer. --> - <attr name="colorIcon" format="reference"/> -</resources>
\ No newline at end of file +<manifest package="com.android.dialer.theme.common"/> diff --git a/java/com/android/dialer/theme/common/res/anim/front_back_switch_button_animation.xml b/java/com/android/dialer/theme/common/res/anim/front_back_switch_button_animation.xml new file mode 100644 index 000000000..152497b9f --- /dev/null +++ b/java/com/android/dialer/theme/common/res/anim/front_back_switch_button_animation.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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 + --> +<set + xmlns:android="http://schemas.android.com/apk/res/android"> + <set + android:ordering="sequentially"> + <objectAnimator + android:duration="500" + android:propertyName="rotation" + android:valueFrom="0.0" + android:valueTo="-180.0" + android:valueType="floatType" + android:interpolator="@android:interpolator/fast_out_slow_in"/> + </set> +</set>
\ No newline at end of file diff --git a/java/com/android/dialer/theme/res/animator/activated_button_elevation.xml b/java/com/android/dialer/theme/common/res/animator/activated_button_elevation.xml index b8ea4e8e6..2b47f0d3c 100644 --- a/java/com/android/dialer/theme/res/animator/activated_button_elevation.xml +++ b/java/com/android/dialer/theme/common/res/animator/activated_button_elevation.xml @@ -1,4 +1,19 @@ <?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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 + --> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_enabled="true" diff --git a/java/com/android/dialer/theme/res/drawable-hdpi/empty_speed_dial.png b/java/com/android/dialer/theme/common/res/drawable-hdpi/empty_speed_dial.png Binary files differindex 5a1829599..5a1829599 100644 --- a/java/com/android/dialer/theme/res/drawable-hdpi/empty_speed_dial.png +++ b/java/com/android/dialer/theme/common/res/drawable-hdpi/empty_speed_dial.png diff --git a/java/com/android/dialer/theme/res/drawable-mdpi/empty_speed_dial.png b/java/com/android/dialer/theme/common/res/drawable-mdpi/empty_speed_dial.png Binary files differindex 3c95eeb33..3c95eeb33 100644 --- a/java/com/android/dialer/theme/res/drawable-mdpi/empty_speed_dial.png +++ b/java/com/android/dialer/theme/common/res/drawable-mdpi/empty_speed_dial.png diff --git a/java/com/android/dialer/theme/res/drawable-xhdpi/empty_speed_dial.png b/java/com/android/dialer/theme/common/res/drawable-xhdpi/empty_speed_dial.png Binary files differindex 9335011fe..9335011fe 100644 --- a/java/com/android/dialer/theme/res/drawable-xhdpi/empty_speed_dial.png +++ b/java/com/android/dialer/theme/common/res/drawable-xhdpi/empty_speed_dial.png diff --git a/java/com/android/dialer/theme/res/drawable-xxhdpi/empty_speed_dial.png b/java/com/android/dialer/theme/common/res/drawable-xxhdpi/empty_speed_dial.png Binary files differindex 04ab7b4dc..04ab7b4dc 100644 --- a/java/com/android/dialer/theme/res/drawable-xxhdpi/empty_speed_dial.png +++ b/java/com/android/dialer/theme/common/res/drawable-xxhdpi/empty_speed_dial.png diff --git a/java/com/android/dialer/theme/res/drawable/front_back_switch_button.xml b/java/com/android/dialer/theme/common/res/drawable/front_back_switch_button.xml index 2dc3eb1fa..56fafcaa6 100644 --- a/java/com/android/dialer/theme/res/drawable/front_back_switch_button.xml +++ b/java/com/android/dialer/theme/common/res/drawable/front_back_switch_button.xml @@ -1,4 +1,19 @@ <?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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 + --> <vector xmlns:android="http://schemas.android.com/apk/res/android" android:name="front_back_switch_button" diff --git a/java/com/android/dialer/theme/common/res/drawable/front_back_switch_button_animation.xml b/java/com/android/dialer/theme/common/res/drawable/front_back_switch_button_animation.xml new file mode 100644 index 000000000..687061639 --- /dev/null +++ b/java/com/android/dialer/theme/common/res/drawable/front_back_switch_button_animation.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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 + --> +<animated-vector + xmlns:android="http://schemas.android.com/apk/res/android" + android:drawable="@drawable/front_back_switch_button"> + <target + android:name="layer_10_outlines" + android:animation="@anim/front_back_switch_button_animation"/> +</animated-vector>
\ No newline at end of file diff --git a/java/com/android/dialer/theme/common/res/drawable/item_background_material_borderless_dark.xml b/java/com/android/dialer/theme/common/res/drawable/item_background_material_borderless_dark.xml new file mode 100644 index 000000000..e18300e1a --- /dev/null +++ b/java/com/android/dialer/theme/common/res/drawable/item_background_material_borderless_dark.xml @@ -0,0 +1,19 @@ +<?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. +--> + +<!-- Based on the Theme.Material's default selectableItemBackgroundBorderless --> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="#A0FFFFFF"/>
\ No newline at end of file diff --git a/java/com/android/dialer/theme/res/values/colors.xml b/java/com/android/dialer/theme/common/res/values/colors.xml index 7c62a2103..8f5976703 100644 --- a/java/com/android/dialer/theme/res/values/colors.xml +++ b/java/com/android/dialer/theme/common/res/values/colors.xml @@ -16,7 +16,7 @@ --> <!-- The colors in this file aren't configured at the theme level. --> <resources> - <color name="dialpad_fab_green">#00C853</color> + <color name="dialer_call_green">#00C853</color> <color name="dialer_end_call_button_color">#BD2A2A</color> <color name="dialer_divider_line_color">#D8D8D8</color> <color name="dialer_link_color">#2A56C6</color> @@ -26,6 +26,8 @@ <color name="notification_action_dismiss">#A52714</color> <color name="notification_action_answer_video">#097138</color> + <color name="dialer_red">#C53929</color> + <!-- Legacy --> <color name="blue_grey_100">#CFD8DC</color> </resources>
\ No newline at end of file diff --git a/java/com/android/dialer/theme/res/values/dimens.xml b/java/com/android/dialer/theme/common/res/values/dimens.xml index 4abe4b53a..88b8a0423 100644 --- a/java/com/android/dialer/theme/res/values/dimens.xml +++ b/java/com/android/dialer/theme/common/res/values/dimens.xml @@ -54,8 +54,4 @@ <!-- Padding to be applied to the bottom of lists to make space for the floating action button --> <dimen name="floating_action_button_list_bottom_padding">88dp</dimen> - - <!-- TODO(a bug): add a comment here --> - <dimen name="primary_text_size">16sp</dimen> - <dimen name="secondary_text_size">14sp</dimen> </resources> diff --git a/java/com/android/dialer/theme/res/values/strings.xml b/java/com/android/dialer/theme/common/res/values/strings.xml index 7d7209207..7d7209207 100644 --- a/java/com/android/dialer/theme/res/values/strings.xml +++ b/java/com/android/dialer/theme/common/res/values/strings.xml diff --git a/java/com/android/dialer/theme/common/res/values/styles.xml b/java/com/android/dialer/theme/common/res/values/styles.xml new file mode 100644 index 000000000..2c6446ca1 --- /dev/null +++ b/java/com/android/dialer/theme/common/res/values/styles.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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> + <!-- TODO(calderwoodra): Delete this once new call log and new voicemail ship. --> + <!-- Ideally we would make a callLogCardStyle attribute but we don't want to expand dialer/app --> + <style name="CallLogCardStyle" parent="CardView"> + <item name="android:layout_width">match_parent</item> + <item name="android:layout_height">wrap_content</item> + <item name="android:layout_margin">4dp</item> + <item name="android:baselineAligned">false</item> + <item name="cardCornerRadius">2dp</item> + <item name="cardBackgroundColor">?android:attr/colorBackgroundFloating</item> + </style> + + <!-- This Checkbox style helps align checkboxes with the common list element layout(Image + text) --> + <style name="DialerCheckboxStyle" parent="Widget.AppCompat.CompoundButton.CheckBox"> + <item name="android:layout_marginStart">20dp</item> + <item name="android:paddingLeft">12dp</item> + </style> +</resources>
\ No newline at end of file diff --git a/java/com/android/dialer/theme/common/res/values/text_styles.xml b/java/com/android/dialer/theme/common/res/values/text_styles.xml new file mode 100644 index 000000000..def5862d4 --- /dev/null +++ b/java/com/android/dialer/theme/common/res/values/text_styles.xml @@ -0,0 +1,98 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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> + <!-- + - These are official UX approved text styles and all TextViews should inherit from one of these. + - If you think you don't see the style you need, double check with your UX designer. + --> + <style name="Dialer.TextAppearance.Header1" parent="TextAppearance.AppCompat"> + <item name="android:textColor">?android:attr/textColorPrimary</item> + <item name="android:textSize">18sp</item> + <item name="android:fontFamily">sans-serif-regular</item> + </style> + + <style name="Dialer.TextAppearance.Header2" parent="TextAppearance.AppCompat"> + <item name="android:textColor">?android:attr/textColorPrimary</item> + <item name="android:textSize">16sp</item> + <item name="android:fontFamily">sans-serif-medium</item> + </style> + + <style name="Dialer.TextAppearance.SubHeader" parent="TextAppearance.AppCompat"> + <item name="android:textColor">?android:attr/textColorPrimary</item> + <item name="android:textSize">16sp</item> + <item name="android:fontFamily">sans-serif-medium</item> + </style> + + <style name="Dialer.TextAppearance.Primary" parent="TextAppearance.AppCompat"> + <item name="android:textColor">?android:attr/textColorPrimary</item> + <item name="android:textSize">16sp</item> + <item name="android:fontFamily">sans-serif-regular</item> + </style> + + <style name="Dialer.TextAppearance.Secondary" parent="TextAppearance.AppCompat"> + <item name="android:textColor">?android:attr/textColorSecondary</item> + <item name="android:textSize">14sp</item> + <item name="android:fontFamily">sans-serif-regular</item> + </style> + + <style name="Dialer.TextAppearance.Secondary2" parent="TextAppearance.AppCompat"> + <item name="android:textColor">?android:attr/textColorSecondary</item> + <item name="android:textSize">12sp</item> + <item name="android:fontFamily">sans-serif-regular</item> + </style> + + <style name="Dialer.TextAppearance.OVERLINE" parent="TextAppearance.AppCompat"> + <item name="android:textColor">?android:attr/textColorSecondary</item> + <item name="android:textSize">14sp</item> + <item name="android:fontFamily">sans-serif-medium</item> + </style> + + <style name="Dialer.TextAppearance.Header1.Ellipsize"> + <item name="android:ellipsize">end</item> + <item name="android:maxLines">1</item> + </style> + + <style name="Dialer.TextAppearance.Header2.Ellipsize"> + <item name="android:ellipsize">end</item> + <item name="android:maxLines">1</item> + </style> + + <style name="Dialer.TextAppearance.SubHeader.Ellipsize"> + <item name="android:ellipsize">end</item> + <item name="android:maxLines">1</item> + </style> + + <style name="Dialer.TextAppearance.Primary.Ellipsize"> + <item name="android:ellipsize">end</item> + <item name="android:maxLines">1</item> + </style> + + <style name="Dialer.TextAppearance.Secondary.Ellipsize"> + <item name="android:ellipsize">end</item> + <item name="android:maxLines">1</item> + </style> + + <style name="Dialer.TextAppearance.Secondary2.Ellipsize"> + <item name="android:ellipsize">end</item> + <item name="android:maxLines">1</item> + </style> + + <style name="Dialer.TextAppearance.OVERLINE.Ellipsize"> + <item name="android:ellipsize">end</item> + <item name="android:maxLines">1</item> + </style> +</resources>
\ No newline at end of file diff --git a/java/com/android/dialer/theme/hidden/AndroidManifest.xml b/java/com/android/dialer/theme/hidden/AndroidManifest.xml new file mode 100644 index 000000000..ec46a3a95 --- /dev/null +++ b/java/com/android/dialer/theme/hidden/AndroidManifest.xml @@ -0,0 +1,16 @@ +<!-- + ~ Copyright (C) 2018 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 + --> +<manifest package="com.android.dialer.theme.hidden"/> diff --git a/java/com/android/dialer/theme/hidden/res/color/dialer_dark_primary_text_color.xml b/java/com/android/dialer/theme/hidden/res/color/dialer_dark_primary_text_color.xml new file mode 100644 index 000000000..82e79c631 --- /dev/null +++ b/java/com/android/dialer/theme/hidden/res/color/dialer_dark_primary_text_color.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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 + --> +<!-- Primary text color in the Phone app --> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false" android:color="@color/dialer_dark_text_color_disabled"/> + <item android:color="@color/dialer_dark_primary_text_color_enabled"/> +</selector> diff --git a/java/com/android/dialer/theme/hidden/res/color/dialer_dark_secondary_text_color.xml b/java/com/android/dialer/theme/hidden/res/color/dialer_dark_secondary_text_color.xml new file mode 100644 index 000000000..d057f9e65 --- /dev/null +++ b/java/com/android/dialer/theme/hidden/res/color/dialer_dark_secondary_text_color.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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 + --> +<!-- Secondary text color in the Phone app --> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false" android:color="@color/dialer_dark_text_color_disabled"/> + <item android:color="@color/dialer_dark_secondary_text_color_enabled"/> +</selector> diff --git a/java/com/android/dialer/theme/res/color/dialer_primary_text_color.xml b/java/com/android/dialer/theme/hidden/res/color/dialer_primary_text_color.xml index 6612b17ab..6612b17ab 100644 --- a/java/com/android/dialer/theme/res/color/dialer_primary_text_color.xml +++ b/java/com/android/dialer/theme/hidden/res/color/dialer_primary_text_color.xml diff --git a/java/com/android/dialer/theme/res/color/dialer_secondary_text_color.xml b/java/com/android/dialer/theme/hidden/res/color/dialer_secondary_text_color.xml index e1c000aef..e1c000aef 100644 --- a/java/com/android/dialer/theme/res/color/dialer_secondary_text_color.xml +++ b/java/com/android/dialer/theme/hidden/res/color/dialer_secondary_text_color.xml diff --git a/java/com/android/dialer/theme/res/color/settings_text_color_primary.xml b/java/com/android/dialer/theme/hidden/res/color/settings_text_color_primary.xml index ba259088a..7a14d22fa 100644 --- a/java/com/android/dialer/theme/res/color/settings_text_color_primary.xml +++ b/java/com/android/dialer/theme/hidden/res/color/settings_text_color_primary.xml @@ -18,6 +18,6 @@ --> <selector xmlns:android="http://schemas.android.com/apk/res/android"> - <item android:color="@color/setting_disabled_color" android:state_enabled="false"/> - <item android:color="@color/setting_primary_color"/> + <item android:color="@color/dialer_text_color_disabled" android:state_enabled="false"/> + <item android:color="@color/dialer_primary_text_color_enabled"/> </selector> diff --git a/java/com/android/dialer/theme/res/color/settings_text_color_secondary.xml b/java/com/android/dialer/theme/hidden/res/color/settings_text_color_secondary.xml index 2f7899272..c4baefd33 100644 --- a/java/com/android/dialer/theme/res/color/settings_text_color_secondary.xml +++ b/java/com/android/dialer/theme/hidden/res/color/settings_text_color_secondary.xml @@ -18,6 +18,6 @@ --> <selector xmlns:android="http://schemas.android.com/apk/res/android"> - <item android:color="@color/setting_disabled_color" android:state_enabled="false"/> - <item android:color="@color/setting_secondary_color"/> + <item android:color="@color/dialer_text_color_disabled" android:state_enabled="false"/> + <item android:color="@color/dialer_secondary_text_color_enabled"/> </selector> diff --git a/java/com/android/dialer/theme/hidden/res/values/colors_dialer_dark.xml b/java/com/android/dialer/theme/hidden/res/values/colors_dialer_dark.xml new file mode 100644 index 000000000..7dc894be9 --- /dev/null +++ b/java/com/android/dialer/theme/hidden/res/values/colors_dialer_dark.xml @@ -0,0 +1,40 @@ +<!-- + ~ Copyright (C) 2018 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> + <!-- Essential theme colors --> + <color name="dialer_dark_theme_color">#2A56C6</color> + <color name="dialer_dark_theme_color_dark">#1C3AA9</color> + <color name="dialer_dark_secondary_color">#F50057</color> + <color name="dialer_dark_theme_color_20pct">#332A56C6</color> + + <!-- Text colors --> + <color name="dialer_dark_primary_text_color_enabled">#FFFFFF</color> + <color name="dialer_dark_secondary_text_color_enabled">#DDFFFFFF</color> + <color name="dialer_dark_text_color_disabled">#333333</color> + <color name="dialer_dark_text_hint_color">#DE78909C</color> + <color name="dialer_dark_primary_text_color_inverse">#212121</color> + <color name="dialer_dark_secondary_text_color_inverse">#636363</color> + <color name="dialer_dark_snackbar_action_text_color">#4285F4</color> + + <!-- Background colors --> + <color name="dialer_dark_background">#212121</color> + <color name="dialer_dark_background_floating">#000000</color> + + <!-- Other useful colors --> + <color name="dialer_dark_icon_color">#C4000000</color> + <color name="dialer_icon_color_secondary">#E1E1E1</color> + <color name="dialer_icon_color_white">#FFFFFF</color> +</resources> diff --git a/java/com/android/dialer/theme/res/values/colors_dialer_light.xml b/java/com/android/dialer/theme/hidden/res/values/colors_dialer_light.xml index ea8247414..1d5a1e7ee 100644 --- a/java/com/android/dialer/theme/res/values/colors_dialer_light.xml +++ b/java/com/android/dialer/theme/hidden/res/values/colors_dialer_light.xml @@ -40,16 +40,12 @@ <color name="dialer_secondary_text_color_inverse">#DDFFFFFF</color> <color name="dialer_snackbar_action_text_color">#4285F4</color> - <!-- Colors for the setting text. --> - <!-- TODO(a bug): investigate if these should be removed. --> - <color name="setting_primary_color">@color/dialer_primary_text_color</color> - <color name="setting_secondary_color">@color/dialer_secondary_text_color</color> - <color name="setting_disabled_color">#AAAAAA</color> - <!-- Background colors --> <color name="dialer_background_light">#FAFAFA</color> <color name="dialer_background_floating_light">#FFFFFF</color> <!-- Other useful colors --> <color name="dialer_icon_color">#89000000</color> + <color name="dialer_icon_color_secondary">#E1E1E1</color> + <color name="dialer_icon_color_white">#FFFFFF</color> </resources> diff --git a/java/com/android/dialer/theme/hidden/res/values/styles.xml b/java/com/android/dialer/theme/hidden/res/values/styles.xml new file mode 100644 index 000000000..90e452993 --- /dev/null +++ b/java/com/android/dialer/theme/hidden/res/values/styles.xml @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2018 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> + <!-- Update to Theme.AppCompat.Light.NoActionBar once we no longer depend on ActionBars. --> + <style name="Dialer" parent="Theme.AppCompat.Light"> + <!-- Used to automatically style all buttons in Dialer --> + <item name="android:textAppearanceButton">@style/DialerButtonTextStyle</item> + <item name="android:colorButtonNormal">?android:attr/colorPrimary</item> + + <!-- Used to style link text --> + <item name="android:textColorLink">@color/dialer_theme_color</item> + + <!-- Used to automatically style AlertDialogs --> + <item name="alertDialogTheme">@style/AlertDialogTheme</item> + <item name="android:alertDialogTheme">@style/AlertDialogTheme</item> + </style> + + <style name="Dialer.Dark" parent="Theme.AppCompat"> + <!-- Used to automatically style all buttons in Dialer --> + <item name="android:textAppearanceButton">@style/DialerButtonTextStyle</item> + <item name="android:colorButtonNormal">?android:attr/colorPrimary</item> + + <!-- Used to style link text --> + <item name="android:textColorLink">@color/dialer_theme_color</item> + + <!-- Used to automatically style AlertDialogs --> + <item name="alertDialogTheme">@style/AlertDialogTheme</item> + <item name="android:alertDialogTheme">@style/AlertDialogTheme</item> + </style> + + <!-- Used to style all Dialer's button's text. Every button is awarded this for free if the parent + activity's theme extends from Dialer.ThemeBase(.NoActionBar) or doesn't specify a theme. --> + <style name="DialerButtonTextStyle" parent="@android:style/TextAppearance.Material.Widget.Button"> + <item name="android:textColor">?android:attr/textColorPrimaryInverse</item> + </style> + + <!-- Used to style all Dialer's AlertDialogs. Every button is awarded this for free if the parent + activity's theme extends from Dialer.ThemeBase(.NoActionBar) or doesn't specify a theme. --> + <style name="AlertDialogTheme" parent="Theme.AppCompat.Light.Dialog.Alert"> + <item name="android:textColorPrimary">@color/dialer_primary_text_color</item> + <!-- TODO(a bug): figure out why ?android:attr/colorPrimary doesn't work here --> + <item name="android:colorAccent">@color/dialer_theme_color</item> + <item name="colorAccent">@color/dialer_theme_color</item> + </style> +</resources> diff --git a/java/com/android/dialer/theme/res/anim/front_back_switch_button_animation.xml b/java/com/android/dialer/theme/res/anim/front_back_switch_button_animation.xml deleted file mode 100644 index 30986457b..000000000 --- a/java/com/android/dialer/theme/res/anim/front_back_switch_button_animation.xml +++ /dev/null @@ -1,14 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<set - xmlns:android="http://schemas.android.com/apk/res/android"> - <set - android:ordering="sequentially"> - <objectAnimator - android:duration="500" - android:propertyName="rotation" - android:valueFrom="0.0" - android:valueTo="-180.0" - android:valueType="floatType" - android:interpolator="@android:interpolator/fast_out_slow_in"/> - </set> -</set>
\ No newline at end of file diff --git a/java/com/android/dialer/theme/res/drawable/front_back_switch_button_animation.xml b/java/com/android/dialer/theme/res/drawable/front_back_switch_button_animation.xml deleted file mode 100644 index 14cda1ba8..000000000 --- a/java/com/android/dialer/theme/res/drawable/front_back_switch_button_animation.xml +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<animated-vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:drawable="@drawable/front_back_switch_button"> - <target - android:name="layer_10_outlines" - android:animation="@anim/front_back_switch_button_animation"/> -</animated-vector>
\ No newline at end of file diff --git a/java/com/android/dialer/theme/res/values/styles_dialer_light.xml b/java/com/android/dialer/theme/res/values/styles_dialer_light.xml deleted file mode 100644 index 6ce3b1960..000000000 --- a/java/com/android/dialer/theme/res/values/styles_dialer_light.xml +++ /dev/null @@ -1,110 +0,0 @@ -<!-- - ~ Copyright (C) 2012 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> - - <style name="CallLogCardStyle" parent="CardView"> - <item name="android:layout_width">match_parent</item> - <item name="android:layout_height">wrap_content</item> - <item name="android:layout_margin">4dp</item> - <item name="android:baselineAligned">false</item> - <item name="cardCornerRadius">2dp</item> - <item name="cardBackgroundColor">?android:attr/colorBackgroundFloating</item> - </style> - - <!-- TODO(a bug): properly document this or delete it --> - <style name="Theme.PreCall.DialogHolder" parent="Dialer.ThemeBase.NoActionBar"> - <item name="android:windowBackground">@android:color/transparent</item> - <item name="android:windowActivityTransitions">false</item> - <item name="android:windowIsTranslucent">true</item> - - <item name="android:statusBarColor">@android:color/transparent</item> - <item name="android:navigationBarColor">@android:color/transparent</item> - <item name="android:windowDrawsSystemBarBackgrounds">true</item> - </style> - - <!-- Style applied to the "Settings" screen. Keep in sync with SettingsLight in Telephony. --> - <style name="SettingsStyle" parent="Dialer.ThemeBase"> - <!-- Setting text. --> - <item name="android:textColorPrimary">@color/settings_text_color_primary</item> - <!-- Setting description. --> - <item name="android:textColorSecondary">@color/settings_text_color_secondary</item> - <item name="android:windowBackground">?android:attr/colorBackground</item> - <item name="android:colorAccent">?android:attr/colorPrimary</item> - <item name="android:textColorLink">?android:attr/colorPrimary</item> - </style> - - <style name="AlertDialogTheme" parent="Theme.AppCompat.Light.Dialog.Alert"> - <!-- TODO(a bug): figure out why ?android:attr/colorPrimary doesn't work here --> - <item name="colorAccent">@color/dialer_theme_color</item> - </style> - - <style name="TextActionStyle"> - <item name="android:layout_width">wrap_content</item> - <item name="android:layout_height">@dimen/call_log_action_height</item> - <item name="android:gravity">end|center_vertical</item> - <item name="android:paddingStart">@dimen/call_log_action_horizontal_padding</item> - <item name="android:paddingEnd">@dimen/call_log_action_horizontal_padding</item> - <item name="android:textColor">?android:attr/colorPrimary</item> - <item name="android:fontFamily">"sans-serif-medium"</item> - <item name="android:focusable">true</item> - <item name="android:singleLine">true</item> - <item name="android:textAllCaps">true</item> - </style> - - <style name="DialerButtonTextStyle" parent="@android:style/TextAppearance.Material.Widget.Button"> - <item name="android:textColor">?android:attr/textColorPrimaryInverse</item> - </style> - - <style name="DialerActionBarBaseStyle" - parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse"> - <item name="android:background">?android:attr/colorPrimary</item> - <item name="background">?android:attr/colorPrimary</item> - </style> - - <!-- This Checkbox style helps align checkboxes with the common list element layout(Image + text) --> - <style name="DialerCheckboxStyle" parent="Widget.AppCompat.CompoundButton.CheckBox"> - <item name="android:layout_marginStart">20dp</item> - <item name="android:paddingLeft">12dp</item> - </style> - - <style name="Dialer.TextAppearance.Header" parent="TextAppearance.AppCompat"> - <item name="android:textColor">?android:attr/textColorPrimary</item> - <item name="android:textSize">20sp</item> - <item name="android:ellipsize">end</item> - <item name="android:maxLines">1</item> - </style> - - <style name="Dialer.TextAppearance.Primary" parent="TextAppearance.AppCompat"> - <item name="android:textColor">?android:attr/textColorPrimary</item> - <item name="android:textSize">@dimen/primary_text_size</item> - <item name="android:ellipsize">end</item> - <item name="android:maxLines">1</item> - </style> - - <style name="Dialer.TextAppearance.Secondary" parent="TextAppearance.AppCompat"> - <item name="android:textColor">?android:attr/textColorSecondary</item> - <item name="android:textSize">@dimen/secondary_text_size</item> - <item name="android:ellipsize">end</item> - <item name="android:maxLines">1</item> - </style> - - <style name="SubHeader" parent="TextAppearance.AppCompat"> - <item name="android:textColor">#212121</item> - <item name="android:textSize">14sp</item> - <item name="android:lineSpacingMultiplier">1.1</item> - </style> -</resources> diff --git a/java/com/android/dialer/theme/res/values/theme_dialer_light.xml b/java/com/android/dialer/theme/res/values/theme_dialer_light.xml deleted file mode 100644 index ab4ae936d..000000000 --- a/java/com/android/dialer/theme/res/values/theme_dialer_light.xml +++ /dev/null @@ -1,117 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - ~ Copyright (C) 2018 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> - - <style name="Dialer"/> - - <!-- Should be kept in sync with the theme below (minus anything related to actionbars) --> - <style name="Dialer.ThemeBase" parent="@style/Theme.AppCompat.Light.DarkActionBar"> - <item name="android:textAppearanceButton">@style/DialerButtonTextStyle</item> - - <!-- These values should be used to color all backgrounds. --> - <item name="android:colorBackground">@color/dialer_background_light</item> - <item name="android:colorBackgroundFloating">@color/dialer_background_floating_light</item> - - <!-- These values should be used to set text color. --> - <item name="android:textColorPrimary">@color/dialer_primary_text_color</item> - <item name="android:textColorSecondary">@color/dialer_secondary_text_color</item> - <item name="android:textColorPrimaryInverse">@color/dialer_primary_text_color_inverse</item> - <item name="android:textColorSecondaryInverse">@color/dialer_secondary_text_color_inverse</item> - <item name="android:textColorHint">@color/dialer_text_hint_color</item> - - <!-- These will be automatically used to color most Appcompat/Material widgets. --> - <item name="android:colorPrimary">@color/dialer_theme_color</item> - <item name="colorPrimary">@color/dialer_theme_color</item> - <item name="android:colorPrimaryDark">@color/dialer_theme_color</item> - <item name="colorPrimaryDark">@color/dialer_theme_color</item> - <item name="android:colorAccent">@color/dialer_secondary_color</item> - <item name="colorAccent">@color/dialer_secondary_color</item> - - <!-- Used to automatically style check/selected checkbox, switches and radio buttons --> - <item name="colorControlActivated">?android:attr/colorPrimary</item> - - <!-- Used to automatically style AlertDialogs --> - <item name="alertDialogTheme">@style/AlertDialogTheme</item> - - <!-- Dialer specific attributes. --> - <item name="colorIcon">@color/dialer_secondary_text_color</item> - - <!-- These are used to style the actionbar. --> - <item name="actionBarStyle">@style/DialerActionBarBaseStyle</item> - <item name="actionBarSize">@dimen/action_bar_height</item> - - <!-- Theme for the dialpad. --> - <item name="dialpad_style">@style/Dialpad.Light</item> - </style> - - <!-- Should be kept in sync with the theme above (minus anything related to actionbars) --> - <style name="Dialer.ThemeBase.NoActionBar" parent="@style/Theme.AppCompat.Light.NoActionBar"> - <!-- These values should be used to color all backgrounds. --> - <item name="android:colorBackground">@color/dialer_background_light</item> - <item name="android:colorBackgroundFloating">@color/dialer_background_floating_light</item> - - <!-- These values should be used to set text color. --> - <item name="android:textColorPrimary">@color/dialer_primary_text_color</item> - <item name="android:textColorSecondary">@color/dialer_secondary_text_color</item> - <item name="android:textColorPrimaryInverse">@color/dialer_primary_text_color_inverse</item> - <item name="android:textColorSecondaryInverse">@color/dialer_secondary_text_color_inverse</item> - <item name="android:textColorHint">@color/dialer_text_hint_color</item> - <item name="android:textColorLink">@color/dialer_theme_color</item> - - <!-- These will be automatically used to color most Appcompat/Material widgets. --> - <item name="android:colorPrimary">@color/dialer_theme_color</item> - <item name="colorPrimary">@color/dialer_theme_color</item> - <item name="android:colorPrimaryDark">@color/dialer_theme_color_dark</item> - <item name="colorPrimaryDark">@color/dialer_theme_color_dark</item> - <item name="android:colorAccent">@color/dialer_secondary_color</item> - <item name="colorAccent">@color/dialer_secondary_color</item> - - <!-- Used for material buttons and widgets --> - <item name="android:colorButtonNormal">@color/dialer_theme_color</item> - <item name="android:textAppearanceButton">@style/DialerButtonTextStyle</item> - - <!-- Used to automatically style check/selected checkbox, switches and radio buttons --> - <item name="colorControlActivated">?android:attr/colorPrimary</item> - - <!-- Used to automatically style AlertDialogs --> - <item name="alertDialogTheme">@style/AlertDialogTheme</item> - - <!-- Dialer specific attributes. --> - <item name="colorIcon">@color/dialer_secondary_text_color</item> - - <!-- Theme for the dialpad. --> - <item name="dialpad_style">@style/Dialpad.Light</item> - </style> - - <!-- TODO(a bug): flesh this out some more. --> - <style name="Dialer.ThemeBase.NoActionBar.Dark" parent="Dialer.ThemeBase.NoActionBar"> - <!-- swap text colors. --> - <item name="android:textColorPrimary">@color/dialer_primary_text_color_inverse</item> - <item name="android:textColorSecondary">@color/dialer_secondary_text_color_inverse</item> - <item name="android:textColorPrimaryInverse">@color/dialer_primary_text_color</item> - <item name="android:textColorSecondaryInverse">@color/dialer_secondary_text_color</item> - </style> - - <!-- TODO(a bug): investigate making this style's parent Dialer.ThemeBase.NoActionBar --> - <style name="Theme.AppCompat.Translucent" parent="Theme.AppCompat.NoActionBar"> - <item name="android:windowNoTitle">true</item> - <item name="android:windowBackground">@android:color/transparent</item> - <item name="android:colorBackgroundCacheHint">@null</item> - <item name="android:windowIsTranslucent">true</item> - <item name="android:windowAnimationStyle">@android:style/Animation</item> - </style> -</resources> |