From d6180d452cc6085f64c25d487bfaee3a614dd67a Mon Sep 17 00:00:00 2001 From: linyuh Date: Mon, 19 Mar 2018 20:09:53 -0700 Subject: Make the top row of the bottom sheet not clickable. Test: Existing tests PiperOrigin-RevId: 189683790 Change-Id: I0209e7fa839175041da29e9a6d8a590133121376 --- .../voicemail/listui/menu/BottomSheetHeader.java | 57 +++++++++++++++++++ .../voicemail/listui/menu/NewVoicemailMenu.java | 2 +- .../voicemail/listui/menu/PrimaryAction.java | 65 ---------------------- 3 files changed, 58 insertions(+), 66 deletions(-) create mode 100644 java/com/android/dialer/voicemail/listui/menu/BottomSheetHeader.java delete mode 100644 java/com/android/dialer/voicemail/listui/menu/PrimaryAction.java (limited to 'java/com/android/dialer/voicemail/listui/menu') diff --git a/java/com/android/dialer/voicemail/listui/menu/BottomSheetHeader.java b/java/com/android/dialer/voicemail/listui/menu/BottomSheetHeader.java new file mode 100644 index 000000000..bf86278b2 --- /dev/null +++ b/java/com/android/dialer/voicemail/listui/menu/BottomSheetHeader.java @@ -0,0 +1,57 @@ +/* + * 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.voicemail.listui.menu; + +import android.text.TextUtils; +import com.android.dialer.calllogutils.NumberAttributesConverter; +import com.android.dialer.historyitemactions.HistoryItemBottomSheetHeaderInfo; +import com.android.dialer.voicemail.model.VoicemailEntry; + +/** Configures the top row in the bottom sheet for the Voicemail Tab */ +final class BottomSheetHeader { + + static HistoryItemBottomSheetHeaderInfo fromVoicemailEntry(VoicemailEntry voicemailEntry) { + return HistoryItemBottomSheetHeaderInfo.newBuilder() + .setNumber(voicemailEntry.getNumber()) + .setPhotoInfo( + NumberAttributesConverter.toPhotoInfoBuilder(voicemailEntry.getNumberAttributes()) + .setFormattedNumber(voicemailEntry.getFormattedNumber()) + .build()) + .setPrimaryText(buildPrimaryVoicemailText(voicemailEntry)) + .setSecondaryText(buildSecondaryVoicemailText(voicemailEntry)) + .build(); + } + + private static String buildSecondaryVoicemailText(VoicemailEntry voicemailEntry) { + return voicemailEntry.getGeocodedLocation(); + } + + private static String buildPrimaryVoicemailText(VoicemailEntry data) { + StringBuilder primaryText = new StringBuilder(); + if (!TextUtils.isEmpty(data.getNumberAttributes().getName())) { + primaryText.append(data.getNumberAttributes().getName()); + } else if (!TextUtils.isEmpty(data.getFormattedNumber())) { + primaryText.append(data.getFormattedNumber()); + } else { + // TODO(uabdullah): Handle CallLog.Calls.PRESENTATION_*, including Verizon restricted numbers. + // primaryText.append(context.getText(R.string.voicemail_unknown)); + // TODO(uabdullah): Figure out why http://gpaste/5980163120562176 error when using string + primaryText.append("Unknown"); + } + return primaryText.toString(); + } +} diff --git a/java/com/android/dialer/voicemail/listui/menu/NewVoicemailMenu.java b/java/com/android/dialer/voicemail/listui/menu/NewVoicemailMenu.java index 7c669e194..7ec86c5b9 100644 --- a/java/com/android/dialer/voicemail/listui/menu/NewVoicemailMenu.java +++ b/java/com/android/dialer/voicemail/listui/menu/NewVoicemailMenu.java @@ -31,7 +31,7 @@ public final class NewVoicemailMenu { return (view) -> HistoryItemActionBottomSheet.show( context, - PrimaryAction.fromVoicemailEntry(context, voicemailEntry), + BottomSheetHeader.fromVoicemailEntry(voicemailEntry), Modules.fromVoicemailEntry(context, voicemailEntry), glidePhotoManager); } diff --git a/java/com/android/dialer/voicemail/listui/menu/PrimaryAction.java b/java/com/android/dialer/voicemail/listui/menu/PrimaryAction.java deleted file mode 100644 index 14c83563a..000000000 --- a/java/com/android/dialer/voicemail/listui/menu/PrimaryAction.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * 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.voicemail.listui.menu; - -import android.content.Context; -import android.text.TextUtils; -import com.android.dialer.calllogutils.NumberAttributesConverter; -import com.android.dialer.historyitemactions.HistoryItemPrimaryActionInfo; -import com.android.dialer.voicemail.model.VoicemailEntry; - -/** Configures the primary action row (top row) for theottom sheet for the Voicemail Tab */ -final class PrimaryAction { - - // TODO(uabdullah): Need to do the following: - // setIsVideo - check if is passing in voicemailEntry.features() is required - // setLookupUri - check if passing in voicemailEntry.lookupUri() is required - // setIntent - allow video calling - // setPrimaryText - check in with UX - // setSecondaryText - check in with UX - static HistoryItemPrimaryActionInfo fromVoicemailEntry( - Context context, VoicemailEntry voicemailEntry) { - return HistoryItemPrimaryActionInfo.builder() - .setNumber(voicemailEntry.getNumber()) - .setPhotoInfo( - NumberAttributesConverter.toPhotoInfoBuilder(voicemailEntry.getNumberAttributes()) - .setFormattedNumber(voicemailEntry.getFormattedNumber()) - .build()) - .setPrimaryText(buildPrimaryVoicemailText(context, voicemailEntry)) - .setSecondaryText(buildSecondaryVoicemailText(voicemailEntry)) - .build(); - } - - private static CharSequence buildSecondaryVoicemailText(VoicemailEntry voicemailEntry) { - return voicemailEntry.getGeocodedLocation(); - } - - public static String buildPrimaryVoicemailText(Context context, VoicemailEntry data) { - StringBuilder primaryText = new StringBuilder(); - if (!TextUtils.isEmpty(data.getNumberAttributes().getName())) { - primaryText.append(data.getNumberAttributes().getName()); - } else if (!TextUtils.isEmpty(data.getFormattedNumber())) { - primaryText.append(data.getFormattedNumber()); - } else { - // TODO(uabdullah): Handle CallLog.Calls.PRESENTATION_*, including Verizon restricted numbers. - // primaryText.append(context.getText(R.string.voicemail_unknown)); - // TODO(uabdullah): Figure out why http://gpaste/5980163120562176 error when using string - primaryText.append("Unknown"); - } - return primaryText.toString(); - } -} -- cgit v1.2.3