Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ae73ce1d authored by Sungsoo Lim's avatar Sungsoo Lim Committed by Android (Google) Code Review
Browse files

Merge "Use MediaRouteButton in MediaControlView2Impl"

parents 45cf1573 f77d2e6b
Loading
Loading
Loading
Loading
+0 −9
Original line number Diff line number Diff line
<vector xmlns:android="http://schemas.android.com/apk/res/android"
        android:width="24dp"
        android:height="24dp"
        android:viewportWidth="24.0"
        android:viewportHeight="24.0">
    <path
        android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v3h2L3,5h18v14h-7v2h7c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM1,18v3h3c0,-1.66 -1.34,-3 -3,-3zM1,14v2c2.76,0 5,2.24 5,5h2c0,-3.87 -3.13,-7 -7,-7zM1,10v2c4.97,0 9,4.03 9,9h2c0,-6.08 -4.93,-11 -11,-11z"
        android:fillColor="#FFFFFF"/>
</vector>
+2 −3
Original line number Diff line number Diff line
@@ -49,11 +49,10 @@
            android:text="North by Northwest"
            android:textColor="#FFFFFFFF" />

        <ImageButton
            android:id="@+id/cast"
        <view class="com.android.support.mediarouter.app.MediaRouteButton" android:id="@+id/cast"
            android:layout_alignParentEnd="true"
            android:layout_centerVertical="true"
            style="@style/TitleBarButton.MediaRouteButton"/>
            style="@style/TitleBarButton" />

    </RelativeLayout>

+0 −5
Original line number Diff line number Diff line
@@ -34,11 +34,6 @@
        <item name="android:layout_margin">10dp</item>
    </style>

    <style name="TitleBarButton.MediaRouteButton">
        <item name="android:src">@drawable/ic_cast</item>
    </style>


    <style name="BottomBarButton">
        <item name="android:background">@null</item>
        <item name="android:layout_width">24dp</item>
+18 −1
Original line number Diff line number Diff line
@@ -20,10 +20,13 @@ import android.content.Context;
import android.content.res.Resources;
import android.content.res.Resources.Theme;
import android.content.res.XmlResourceParser;
import android.util.AttributeSet;
import android.view.ContextThemeWrapper;
import android.view.LayoutInflater;
import android.view.View;

import com.android.support.mediarouter.app.MediaRouteButton;

public class ApiHelper {
    private static ApiHelper sInstance;
    private final Resources mLibResources;
@@ -55,7 +58,21 @@ public class ApiHelper {
    public static LayoutInflater getLayoutInflater(Context context) {
        LayoutInflater layoutInflater = LayoutInflater.from(context).cloneInContext(
                new ContextThemeWrapper(context, getLibTheme()));
        // TODO: call layoutInflater.setFactory2()
        layoutInflater.setFactory2(new LayoutInflater.Factory2() {
            @Override
            public View onCreateView(
                    View parent, String name, Context context, AttributeSet attrs) {
                if (MediaRouteButton.class.getCanonicalName().equals(name)) {
                    return new MediaRouteButton(context, attrs);
                }
                return null;
            }

            @Override
            public View onCreateView(String name, Context context, AttributeSet attrs) {
                return onCreateView(null, name, context, attrs);
            }
        });
        return layoutInflater;
    }

+11 −5
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import android.app.Activity;
import android.content.Context;
import android.content.ContextWrapper;
import android.content.res.ColorStateList;
import android.content.res.Resources;
import android.content.res.TypedArray;
import android.graphics.Canvas;
import android.graphics.drawable.AnimationDrawable;
@@ -36,6 +37,7 @@ import android.util.SparseArray;
import android.view.SoundEffectConstants;
import android.view.View;

import com.android.media.update.ApiHelper;
import com.android.media.update.R;
import com.android.support.mediarouter.media.MediaRouteSelector;
import com.android.support.mediarouter.media.MediaRouter;
@@ -128,8 +130,11 @@ public class MediaRouteButton extends View {
        mRouter = MediaRouter.getInstance(context);
        mCallback = new MediaRouterCallback();

        TypedArray a = context.obtainStyledAttributes(attrs,
        Resources.Theme theme = ApiHelper.getLibResources().newTheme();
        theme.applyStyle(MediaRouterThemeHelper.getRouterThemeId(context), true);
        TypedArray a = theme.obtainStyledAttributes(attrs,
                R.styleable.MediaRouteButton, defStyleAttr, 0);

        mButtonTint = a.getColorStateList(R.styleable.MediaRouteButton_mediaRouteButtonTint);
        mMinWidth = a.getDimensionPixelSize(
                R.styleable.MediaRouteButton_android_minWidth, 0);
@@ -290,8 +295,9 @@ public class MediaRouteButton extends View {
     * button when the button is long pressed.
     */
    void setCheatSheetEnabled(boolean enable) {
        TooltipCompat.setTooltipText(this,
                enable ? getContext().getString(R.string.mr_button_content_description) : null);
        TooltipCompat.setTooltipText(this, enable
                ? ApiHelper.getLibResources().getString(R.string.mr_button_content_description)
                : null);
    }

    @Override
@@ -533,7 +539,7 @@ public class MediaRouteButton extends View {
        } else {
            resId = R.string.mr_cast_button_disconnected;
        }
        setContentDescription(getContext().getString(resId));
        setContentDescription(ApiHelper.getLibResources().getString(resId));
    }

    private final class MediaRouterCallback extends MediaRouter.Callback {
@@ -590,7 +596,7 @@ public class MediaRouteButton extends View {

        @Override
        protected Drawable doInBackground(Void... params) {
            return getContext().getResources().getDrawable(mResId);
            return ApiHelper.getLibResources().getDrawable(mResId);
        }

        @Override
Loading