diff options
Diffstat (limited to 'java/com/android/dialer/widget')
-rw-r--r-- | java/com/android/dialer/widget/DialerToolbar.java | 67 | ||||
-rw-r--r-- | java/com/android/dialer/widget/res/layout/dialer_toolbar.xml | 42 | ||||
-rw-r--r-- | java/com/android/dialer/widget/res/values/dimens.xml | 5 |
3 files changed, 114 insertions, 0 deletions
diff --git a/java/com/android/dialer/widget/DialerToolbar.java b/java/com/android/dialer/widget/DialerToolbar.java new file mode 100644 index 000000000..715a27701 --- /dev/null +++ b/java/com/android/dialer/widget/DialerToolbar.java @@ -0,0 +1,67 @@ +/* + * Copyright (C) 2017 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.widget; + +import android.app.Activity; +import android.content.Context; +import android.support.annotation.Nullable; +import android.support.annotation.StringRes; +import android.support.v7.widget.Toolbar; +import android.util.AttributeSet; +import android.widget.TextView; + +/** Toolbar widget for Dialer. */ +public class DialerToolbar extends Toolbar { + + private final TextView title; + private final TextView subtitle; + + public DialerToolbar(Context context, @Nullable AttributeSet attributeSet) { + super(context, attributeSet); + inflate(context, R.layout.dialer_toolbar, this); + title = (TextView) findViewById(R.id.title); + subtitle = (TextView) findViewById(R.id.subtitle); + + setElevation(getResources().getDimensionPixelSize(R.dimen.toolbar_elevation)); + setBackgroundColor(getResources().getColor(R.color.dialer_theme_color)); + setNavigationIcon(R.drawable.quantum_ic_close_white_24); + setNavigationOnClickListener(v -> ((Activity) context).finish()); + } + + @Override + public void setTitle(@StringRes int id) { + setTitle(getResources().getString(id)); + } + + @Override + public void setTitle(CharSequence charSequence) { + title.setText(charSequence); + } + + @Override + public void setSubtitle(@StringRes int id) { + setSubtitle(getResources().getString(id)); + } + + @Override + public void setSubtitle(CharSequence charSequence) { + if (charSequence != null) { + subtitle.setText(charSequence); + subtitle.setVisibility(VISIBLE); + } + } +} diff --git a/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml b/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml new file mode 100644 index 000000000..c4aac65fb --- /dev/null +++ b/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2017 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 + --> +<merge xmlns:android="http://schemas.android.com/apk/res/android"> + + <LinearLayout + android:orientation="vertical" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_vertical"> + + <TextView + android:id="@+id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:gravity="top" + android:textSize="@dimen/toolbar_title_text_size" + android:textColor="@color/background_dialer_white" + android:fontFamily="sans-serif-medium"/> + + <TextView + android:id="@+id/subtitle" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:textSize="@dimen/toolbar_subtitle_text_size" + android:textColor="@color/background_dialer_white" + android:visibility="gone"/> + </LinearLayout> +</merge>
\ No newline at end of file diff --git a/java/com/android/dialer/widget/res/values/dimens.xml b/java/com/android/dialer/widget/res/values/dimens.xml index 6c4ea604f..0b1c1f15b 100644 --- a/java/com/android/dialer/widget/res/values/dimens.xml +++ b/java/com/android/dialer/widget/res/values/dimens.xml @@ -20,4 +20,9 @@ <dimen name="textview_item_padding">16dp</dimen> <dimen name="message_remaining_char_text_size">12sp</dimen> <dimen name="message_divider_height">1dp</dimen> + + <dimen name="toolbar_title_text_size">20sp</dimen> + <dimen name="toolbar_title_small_text_size">14sp</dimen> + <dimen name="toolbar_subtitle_text_size">12sp</dimen> + <dimen name="toolbar_elevation">4dp</dimen> </resources>
\ No newline at end of file |