Merge "More features." into lmp-dev
This commit is contained in:
|
Before Width: | Height: | Size: 391 KiB After Width: | Height: | Size: 391 KiB |
@@ -15,9 +15,20 @@
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
|
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:name="com.example.android.leanback.PlaybackOverlayFragment"
|
android:layout_width="match_parent"
|
||||||
android:id="@+id/playback_controls_fragment"
|
android:layout_height="match_parent" >
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/media_content"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
/>
|
android:src="@drawable/bg" />
|
||||||
|
|
||||||
|
<fragment
|
||||||
|
android:id="@+id/playback_controls_fragment"
|
||||||
|
android:name="com.example.android.leanback.PlaybackOverlayFragment"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
|
||||||
|
</FrameLayout>
|
||||||
@@ -15,6 +15,7 @@ package com.example.android.leanback;
|
|||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
|
import android.graphics.drawable.Drawable;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.support.v17.leanback.widget.Action;
|
import android.support.v17.leanback.widget.Action;
|
||||||
@@ -28,6 +29,7 @@ import android.support.v17.leanback.widget.PlaybackControlsRow.ThumbsDownAction;
|
|||||||
import android.support.v17.leanback.widget.PlaybackControlsRow.ShuffleAction;
|
import android.support.v17.leanback.widget.PlaybackControlsRow.ShuffleAction;
|
||||||
import android.support.v17.leanback.widget.PlaybackControlsRowPresenter;
|
import android.support.v17.leanback.widget.PlaybackControlsRowPresenter;
|
||||||
import android.support.v17.leanback.widget.HeaderItem;
|
import android.support.v17.leanback.widget.HeaderItem;
|
||||||
|
import android.support.v17.leanback.widget.VerticalGridView;
|
||||||
import android.support.v17.leanback.widget.ListRow;
|
import android.support.v17.leanback.widget.ListRow;
|
||||||
import android.support.v17.leanback.widget.ListRowPresenter;
|
import android.support.v17.leanback.widget.ListRowPresenter;
|
||||||
import android.support.v17.leanback.widget.OnActionClickedListener;
|
import android.support.v17.leanback.widget.OnActionClickedListener;
|
||||||
@@ -43,6 +45,7 @@ public class PlaybackOverlayFragment extends android.support.v17.leanback.app.Pl
|
|||||||
private static final int PRIMARY_CONTROLS = 7;
|
private static final int PRIMARY_CONTROLS = 7;
|
||||||
private static final boolean SHOW_IMAGE = PRIMARY_CONTROLS <= 5;
|
private static final boolean SHOW_IMAGE = PRIMARY_CONTROLS <= 5;
|
||||||
private static final int TOTAL_TIME_MS = 15 * 1000;
|
private static final int TOTAL_TIME_MS = 15 * 1000;
|
||||||
|
private static final int BACKGROUND_TYPE = PlaybackOverlayFragment.BG_LIGHT;
|
||||||
private static final int NUM_ROWS = 3;
|
private static final int NUM_ROWS = 3;
|
||||||
|
|
||||||
private ArrayObjectAdapter mRowsAdapter;
|
private ArrayObjectAdapter mRowsAdapter;
|
||||||
@@ -54,6 +57,8 @@ public class PlaybackOverlayFragment extends android.support.v17.leanback.app.Pl
|
|||||||
private ThumbsDownAction mThumbsDownAction;
|
private ThumbsDownAction mThumbsDownAction;
|
||||||
private ShuffleAction mShuffleAction;
|
private ShuffleAction mShuffleAction;
|
||||||
private PlaybackControlsRow mPlaybackControlsRow;
|
private PlaybackControlsRow mPlaybackControlsRow;
|
||||||
|
private Drawable mDetailsDrawable;
|
||||||
|
private Drawable mOtherDrawable;
|
||||||
private Handler mHandler;
|
private Handler mHandler;
|
||||||
private Runnable mRunnable;
|
private Runnable mRunnable;
|
||||||
|
|
||||||
@@ -64,6 +69,9 @@ public class PlaybackOverlayFragment extends android.support.v17.leanback.app.Pl
|
|||||||
|
|
||||||
mHandler = new Handler();
|
mHandler = new Handler();
|
||||||
|
|
||||||
|
setBackgroundType(BACKGROUND_TYPE);
|
||||||
|
setFadingEnabled(false);
|
||||||
|
|
||||||
setupRows();
|
setupRows();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -100,8 +108,10 @@ public class PlaybackOverlayFragment extends android.support.v17.leanback.app.Pl
|
|||||||
mPlaybackControlsRow.setCurrentTime(0);
|
mPlaybackControlsRow.setCurrentTime(0);
|
||||||
}
|
}
|
||||||
startProgressAutomation();
|
startProgressAutomation();
|
||||||
|
setFadingEnabled(true);
|
||||||
} else {
|
} else {
|
||||||
stopProgressAutomation();
|
stopProgressAutomation();
|
||||||
|
setFadingEnabled(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (action instanceof PlaybackControlsRow.MultiAction) {
|
if (action instanceof PlaybackControlsRow.MultiAction) {
|
||||||
@@ -134,8 +144,9 @@ public class PlaybackOverlayFragment extends android.support.v17.leanback.app.Pl
|
|||||||
mPlaybackControlsRow = new PlaybackControlsRow();
|
mPlaybackControlsRow = new PlaybackControlsRow();
|
||||||
}
|
}
|
||||||
if (SHOW_IMAGE) {
|
if (SHOW_IMAGE) {
|
||||||
mPlaybackControlsRow.setImageDrawable(context.getResources().getDrawable(
|
mDetailsDrawable = context.getResources().getDrawable(R.drawable.details_img);
|
||||||
R.drawable.details_img));
|
mOtherDrawable = context.getResources().getDrawable(R.drawable.img16x9);
|
||||||
|
mPlaybackControlsRow.setImageDrawable(mDetailsDrawable);
|
||||||
}
|
}
|
||||||
mPlaybackControlsRow.setPrimaryActionsAdapter(mPrimaryActionsAdapter);
|
mPlaybackControlsRow.setPrimaryActionsAdapter(mPrimaryActionsAdapter);
|
||||||
mPlaybackControlsRow.setSecondaryActionsAdapter(mSecondaryActionsAdapter);
|
mPlaybackControlsRow.setSecondaryActionsAdapter(mSecondaryActionsAdapter);
|
||||||
@@ -193,10 +204,16 @@ public class PlaybackOverlayFragment extends android.support.v17.leanback.app.Pl
|
|||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
int currentTime = mPlaybackControlsRow.getCurrentTime() + updateFreq;
|
int currentTime = mPlaybackControlsRow.getCurrentTime() + updateFreq;
|
||||||
mPlaybackControlsRow.setCurrentTime(currentTime);
|
if (totalTime > 0 && totalTime <= currentTime) {
|
||||||
if (totalTime <= 0 || totalTime > currentTime) {
|
currentTime = 0;
|
||||||
mHandler.postDelayed(this, updateFreq);
|
mPlaybackControlsRow.setCurrentTime(0);
|
||||||
|
mPlaybackControlsRow.setImageDrawable(
|
||||||
|
mPlaybackControlsRow.getImageDrawable() == mDetailsDrawable ?
|
||||||
|
mOtherDrawable : mDetailsDrawable);
|
||||||
|
mRowsAdapter.notifyArrayItemRangeChanged(0, 1);
|
||||||
}
|
}
|
||||||
|
mPlaybackControlsRow.setCurrentTime(currentTime);
|
||||||
|
mHandler.postDelayed(this, updateFreq);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
mHandler.postDelayed(mRunnable, updateFreq);
|
mHandler.postDelayed(mRunnable, updateFreq);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ public class VerticalGridActivity extends Activity
|
|||||||
{
|
{
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
setContentView(R.layout.vertical_grid);
|
setContentView(R.layout.vertical_grid);
|
||||||
getWindow().setBackgroundDrawableResource(R.drawable.grid_bg);
|
// TODO: use BackgroundManager here
|
||||||
|
getWindow().setBackgroundDrawableResource(R.drawable.bg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user