Skip to content

Commit a3f1bb6

Browse files
committed
add play filter for incoming play requests from dashboard or service
1 parent be43078 commit a3f1bb6

File tree

3 files changed

+43
-2
lines changed

3 files changed

+43
-2
lines changed
0 Bytes
Binary file not shown.

app/src/main/java/yankov/tsvetilian/watchit/Activities/PlayerActivity.java

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,58 @@
11
package yankov.tsvetilian.watchit.Activities;
22

3+
import android.arch.lifecycle.Observer;
4+
import android.arch.lifecycle.ViewModelProviders;
5+
import android.content.Intent;
36
import android.os.Bundle;
7+
import android.support.annotation.Nullable;
48
import android.support.v7.app.AppCompatActivity;
9+
import android.util.Log;
510
import android.view.Window;
611
import android.view.WindowManager;
712

13+
import yankov.tsvetilian.watchit.Models.WatchModel;
814
import yankov.tsvetilian.watchit.R;
15+
import yankov.tsvetilian.watchit.ViewModels.WatchViewModel;
916

1017
public class PlayerActivity extends AppCompatActivity {
1118

19+
private WatchViewModel watchViewModel;
20+
1221
@Override
1322
protected void onCreate(Bundle savedInstanceState) {
1423
super.onCreate(savedInstanceState);
1524
requestWindowFeature(Window.FEATURE_NO_TITLE);
1625
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
1726
setContentView(R.layout.activity_player);
27+
watchViewModel = ViewModelProviders.of(this).get(WatchViewModel.class);
28+
}
29+
30+
@Override
31+
protected void onStart() {
32+
super.onStart();
33+
Intent playerData = getIntent();
34+
if (playerData.getExtras() != null && playerData.hasExtra("id")) {
35+
watchViewModel.getWatchById(playerData.getExtras().getInt("id")).observe(this, new Observer<WatchModel>() {
36+
@Override
37+
public void onChanged(@Nullable WatchModel watch) {
38+
if (watch != null) {
39+
watch.setWatched(true);
40+
watchViewModel.update(watch);
41+
Log.d("WATCHIT", "FROM ACTIVITY");
42+
}
43+
}
44+
});
45+
} else if (playerData.getExtras() != null && playerData.hasExtra("watch")) {
46+
WatchModel watch = playerData.getExtras().getParcelable("watch");
47+
watch.setWatched(true);
48+
watchViewModel.insert(watch);
49+
Log.d("WATCHIT", "FROM SERVICE");
50+
} else if (playerData.getExtras() != null && playerData.hasExtra("later")) {
51+
WatchModel watch = playerData.getExtras().getParcelable("later");
52+
watch.setWatchLater(true);
53+
watchViewModel.insert(watch);
54+
finish();
55+
}
1856
}
1957

2058
@Override

app/src/main/java/yankov/tsvetilian/watchit/Adapters/WatchItemAdapter.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
package yankov.tsvetilian.watchit.Adapters;
22

33
import android.content.Context;
4+
import android.content.Intent;
45
import android.support.annotation.NonNull;
56
import android.support.design.button.MaterialButton;
67
import android.support.v7.widget.CardView;
78
import android.support.v7.widget.RecyclerView;
8-
import android.util.Log;
99
import android.view.LayoutInflater;
1010
import android.view.View;
1111
import android.view.ViewGroup;
@@ -17,6 +17,7 @@
1717
import java.util.ArrayList;
1818
import java.util.List;
1919

20+
import yankov.tsvetilian.watchit.Activities.PlayerActivity;
2021
import yankov.tsvetilian.watchit.Models.WatchModel;
2122
import yankov.tsvetilian.watchit.R;
2223

@@ -54,7 +55,9 @@ public void onBindViewHolder(@NonNull WatchItemViewHolder holder, final int i) {
5455
holder.playButton.setOnClickListener(new View.OnClickListener() {
5556
@Override
5657
public void onClick(View view) {
57-
Log.d("WATCHIT", "PLAYER");
58+
Intent startPlayer = new Intent(context.getApplicationContext(), PlayerActivity.class);
59+
startPlayer.putExtra("id", watchLaterList.get(i).getId());
60+
context.startActivity(startPlayer);
5861
}
5962
});
6063
}

0 commit comments

Comments
 (0)