summaryrefslogtreecommitdiff
path: root/src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java')
-rw-r--r--src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java64
1 files changed, 57 insertions, 7 deletions
diff --git a/src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java b/src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java
index 9ce844776..5ff373288 100644
--- a/src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java
+++ b/src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java
@@ -1,6 +1,24 @@
+/*
+ * Copyright (C) 2016 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.service;
+import android.support.annotation.Nullable;
import android.view.View;
+import android.view.ViewStub;
import java.util.List;
@@ -9,15 +27,47 @@ import java.util.List;
*/
public interface ExtendedBlockingButtonRenderer {
- /**
- * Renders buttons for a phone number.
- */
- void render(String number, String countryIso);
+ final class ViewHolderInfo {
- void setCompleteListItemViews(List<View> views);
+ public final List<View> completeListItemViews;
+ public final List<View> extendedBlockedViews;
+ public final List<View> blockedNumberViews;
+ public final String phoneNumber;
+ public final String countryIso;
+ public final String nameOrNumber;
+ public final String displayNumber;
- void setExtendedFilteredViews(List<View> views);
+ public ViewHolderInfo(
+ /* All existing views amongst the list item actions, even if invisible */
+ List<View> completeListItemViews,
+ /* Views that should be seen if the number is in the blacklist */
+ List<View> extendedBlockedViews,
+ /* Views that should be seen if the number is in the extended blacklist */
+ List<View> blockedNumberViews,
+ String phoneNumber,
+ String countryIso,
+ String nameOrNumber,
+ String displayNumber) {
- void setFilteredNumberViews(List<View> views);
+ this.completeListItemViews = completeListItemViews;
+ this.extendedBlockedViews = extendedBlockedViews;
+ this.blockedNumberViews = blockedNumberViews;
+ this.phoneNumber = phoneNumber;
+ this.countryIso = countryIso;
+ this.nameOrNumber = nameOrNumber;
+ this.displayNumber = displayNumber;
+ }
+ }
+
+ interface Listener {
+ void onBlockedNumber(String number, @Nullable String countryIso);
+ void onUnblockedNumber(String number, @Nullable String countryIso);
+ }
+
+ /**
+ * Renders buttons for a phone number.
+ */
+ void render(ViewStub viewStub);
+ void setViewHolderInfo(ViewHolderInfo info);
}