Home | History | Annotate | Download | only in bindings
      1 /*
      2  * Copyright (C) 2014 The Android Open Source Project
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *      http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  * See the License for the specific language governing permissions and
     14  * limitations under the License.
     15  */
     16 
     17 package com.android.incallui.bindings;
     18 
     19 import android.content.Context;
     20 import android.content.Intent;
     21 import android.support.annotation.Nullable;
     22 import com.android.dialer.common.ConfigProvider;
     23 
     24 /** This interface allows the container application to customize the in call UI. */
     25 public interface InCallUiBindings {
     26 
     27   @Nullable
     28   PhoneNumberService newPhoneNumberService(Context context);
     29 
     30   /** @return An {@link Intent} to be broadcast when the InCallUI is visible. */
     31   @Nullable
     32   Intent getUiReadyBroadcastIntent(Context context);
     33 
     34   /**
     35    * @return An {@link Intent} to be broadcast when the call state button in the InCallUI is touched
     36    *     while in a call.
     37    */
     38   @Nullable
     39   Intent getCallStateButtonBroadcastIntent(Context context);
     40 
     41   @Nullable
     42   DistanceHelper newDistanceHelper(Context context, DistanceHelper.Listener listener);
     43 
     44   @Nullable
     45   ContactUtils getContactUtilsInstance(Context context);
     46 
     47   ConfigProvider getConfigProvider();
     48 }
     49