Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
# http://www.gradle.org/docs/current/userguide/build_environment.html
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
android.enableJetifier=true
android.useAndroidX=true
org.gradle.jvmargs=-Xmx1536m
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
Expand Down
8 changes: 4 additions & 4 deletions library/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ android {

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:recyclerview-v7:28.0.0'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.recyclerview:recyclerview:1.1.0'
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.github.bumptech.glide:glide:4.8.0'
implementation 'com.squareup.okhttp3:okhttp:3.12.0'
implementation 'com.github.bumptech.glide:glide:4.10.0'
implementation 'com.squareup.okhttp3:okhttp:3.12.3'
}

apply from: rootProject.file('bintray.gradle')
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,15 @@
import com.ct7ct7ct7.androidvimeoplayer.model.TextTrack;
import com.ct7ct7ct7.androidvimeoplayer.model.VimeoThumbnail;
import com.ct7ct7ct7.androidvimeoplayer.utils.Utils;
import com.ct7ct7ct7.androidvimeoplayer.view.menu.ViemoMenuItem;
import com.ct7ct7ct7.androidvimeoplayer.view.menu.ViemoPlayerMenu;
import com.ct7ct7ct7.androidvimeoplayer.view.menu.VimeoMenuItem;
import com.ct7ct7ct7.androidvimeoplayer.view.menu.VimeoPlayerMenu;
import com.google.gson.Gson;

import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;

@SuppressWarnings("WeakerAccess")
public class DefaultControlPanelView {
private View vimeoPanelView;
private View vimeoShadeView;
Expand All @@ -46,7 +47,7 @@ public class DefaultControlPanelView {
private TextView vimeoTitleTextView;
private View controlsRootView;
private boolean ended = false;
private ViemoPlayerMenu vimeoPlayerMenu;
private VimeoPlayerMenu vimeoPlayerMenu;

public DefaultControlPanelView(final VimeoPlayerView vimeoPlayerView) {
View defaultControlPanelView = View.inflate(vimeoPlayerView.getContext(), R.layout.view_default_control_panel, vimeoPlayerView);
Expand All @@ -62,7 +63,7 @@ public DefaultControlPanelView(final VimeoPlayerView vimeoPlayerView) {
vimeoReplayButton = defaultControlPanelView.findViewById(R.id.vimeoReplayButton);
vimeoTitleTextView = defaultControlPanelView.findViewById(R.id.vimeoTitleTextView);
controlsRootView = defaultControlPanelView.findViewById(R.id.controlsRootView);
vimeoPlayerMenu = new ViemoPlayerMenu(vimeoPlayerView.getContext());
vimeoPlayerMenu = new VimeoPlayerMenu(vimeoPlayerView.getContext());

vimeoSeekBar.setVisibility(View.INVISIBLE);
vimeoPanelView.setVisibility(View.VISIBLE);
Expand Down Expand Up @@ -232,7 +233,7 @@ public void setMenuVisibility(int value) {
vimeoMenuButton.setVisibility(value);
}

public void addMenuItem(ViemoMenuItem menuItem) {
public void addMenuItem(VimeoMenuItem menuItem) {
vimeoPlayerMenu.addItem(menuItem);
}

Expand Down Expand Up @@ -268,7 +269,9 @@ protected VimeoThumbnail doInBackground(Void... voids) {
VimeoThumbnail vimeoThumbnail = null;
try {
Response response = client.newCall(request).execute();
vimeoThumbnail = new Gson().fromJson(response.body().string(), VimeoThumbnail.class);
if (response.body() != null) {
vimeoThumbnail = new Gson().fromJson(response.body().string(), VimeoThumbnail.class);
}
} catch (Exception e) {
Log.e(context.getPackageName(), e.toString());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,10 @@
import android.content.res.Configuration;
import android.graphics.Color;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import android.view.View;

import com.ct7ct7ct7.androidvimeoplayer.R;
Expand Down Expand Up @@ -124,10 +126,12 @@ public void onBackPressed() {
}

@Override
public void onConfigurationChanged(Configuration newConfig) {
public void onConfigurationChanged(@NonNull Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if (REQUEST_ORIENTATION_AUTO.equals(orientation)) {
vimeoPlayerView.reset();
}
}


}
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
package com.ct7ct7ct7.androidvimeoplayer.view;

import android.arch.lifecycle.Lifecycle;
import android.arch.lifecycle.LifecycleObserver;
import android.arch.lifecycle.OnLifecycleEvent;
import androidx.lifecycle.Lifecycle;
import androidx.lifecycle.LifecycleObserver;
import androidx.lifecycle.OnLifecycleEvent;

import android.content.Context;
import android.content.res.ColorStateList;
import android.content.res.TypedArray;
Expand All @@ -28,7 +29,7 @@
import com.ct7ct7ct7.androidvimeoplayer.listeners.VimeoPlayerTextTrackListener;
import com.ct7ct7ct7.androidvimeoplayer.listeners.VimeoPlayerTimeListener;
import com.ct7ct7ct7.androidvimeoplayer.listeners.VimeoPlayerVolumeListener;
import com.ct7ct7ct7.androidvimeoplayer.view.menu.ViemoMenuItem;
import com.ct7ct7ct7.androidvimeoplayer.view.menu.VimeoMenuItem;

public class VimeoPlayerView extends FrameLayout implements LifecycleObserver {
public VimeoOptions defaultOptions;
Expand Down Expand Up @@ -257,7 +258,7 @@ public void setMenuVisibility(boolean show) {
}
}

public void addMenuItem(ViemoMenuItem menuItem) {
public void addMenuItem(VimeoMenuItem menuItem) {
if (defaultControlPanelView != null) {
defaultControlPanelView.addMenuItem(menuItem);
}
Expand Down Expand Up @@ -389,6 +390,7 @@ private VimeoOptions generateDefaultVimeoOptions(Context context, AttributeSet a
options.menuOption = menuOption;
options.fullscreenOption = fullscreenOption;
options.aspectRatio = aspectRatio;
attributes.recycle();
}

return options;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package com.ct7ct7ct7.androidvimeoplayer.view.menu;

import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v4.content.ContextCompat;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.NonNull;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
Expand All @@ -17,9 +17,9 @@

class MenuAdapter extends RecyclerView.Adapter<MenuAdapter.ViewHolder> {
@NonNull private final Context context;
@NonNull private final List<ViemoMenuItem> menuItems;
@NonNull private final List<VimeoMenuItem> menuItems;

MenuAdapter(@NonNull Context context, @NonNull List<ViemoMenuItem> menuItems) {
MenuAdapter(@NonNull Context context, @NonNull List<VimeoMenuItem> menuItems) {
this.context = context;
this.menuItems = menuItems;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,14 @@
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.drawable.Drawable;
import android.support.annotation.NonNull;
import android.support.v4.content.ContextCompat;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.NonNull;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.RecyclerView;
import android.view.View;

import com.ct7ct7ct7.androidvimeoplayer.R;

@SuppressWarnings("WeakerAccess")
public class VimeoDividerItemDecoration extends RecyclerView.ItemDecoration {
private Drawable mDivider;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,19 @@
package com.ct7ct7ct7.androidvimeoplayer.view.menu;

import android.support.annotation.DrawableRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import androidx.annotation.DrawableRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import android.view.View;


public class ViemoMenuItem {
@SuppressWarnings("WeakerAccess")
public class VimeoMenuItem {

private final String text;
@DrawableRes private final int icon;
private final View.OnClickListener onClickListener;

public ViemoMenuItem(@NonNull String text, @DrawableRes final int icon, @Nullable View.OnClickListener onClickListener) {
public VimeoMenuItem(@NonNull String text, @DrawableRes final int icon, @Nullable View.OnClickListener onClickListener) {
this.text = text;
this.icon = icon;
this.onClickListener = onClickListener;
Expand All @@ -37,7 +38,7 @@ public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;

ViemoMenuItem menuItem = (ViemoMenuItem) o;
VimeoMenuItem menuItem = (VimeoMenuItem) o;

return icon == menuItem.icon && text.equals(menuItem.text);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
package com.ct7ct7ct7.androidvimeoplayer.view.menu;

import android.annotation.SuppressLint;
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
Expand All @@ -18,14 +19,14 @@
import java.util.List;


public class ViemoPlayerMenu {
public class VimeoPlayerMenu {

private final Context context;
private final List<ViemoMenuItem> menuItems;
private final List<VimeoMenuItem> menuItems;

@Nullable private PopupWindow popupWindow;

public ViemoPlayerMenu(@NonNull Context context) {
public VimeoPlayerMenu(@NonNull Context context) {
this.context = context;

this.menuItems = new ArrayList<>();
Expand All @@ -41,7 +42,7 @@ public void dismiss() {
popupWindow.dismiss();
}

public void addItem(ViemoMenuItem menuItem) {
public void addItem(VimeoMenuItem menuItem) {
menuItems.add(menuItem);
}

Expand All @@ -54,6 +55,7 @@ public int getItemCount() {
}

@NonNull
@SuppressLint("InflateParams")
private PopupWindow createPopupWindow() {
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

Expand Down
2 changes: 1 addition & 1 deletion library/src/main/res/layout/player_menu.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
android:background="@drawable/shape_rounded_corners"
android:orientation="vertical">

<android.support.v7.widget.RecyclerView
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
Expand Down
6 changes: 3 additions & 3 deletions sample/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation project(':library')
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:design:28.0.0'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'com.google.android.material:material:1.0.0'
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package com.ct7ct7ct7.androidvimeoplayersample
import android.content.Intent
import android.graphics.Color
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import androidx.appcompat.app.AppCompatActivity
import android.widget.SeekBar
import android.widget.Toast
import com.ct7ct7ct7.androidvimeoplayer.listeners.VimeoPlayerReadyListener
Expand All @@ -27,7 +27,7 @@ class MainActivity : AppCompatActivity() {

private fun setupToolbar() {
toolbar.setNavigationIcon(R.drawable.ic_menu_white)
toolbar.setNavigationOnClickListener { v ->
toolbar.setNavigationOnClickListener {
if (drawerLayout.isDrawerOpen(navigationView)) {
drawerLayout.closeDrawers()
} else {
Expand All @@ -39,19 +39,15 @@ class MainActivity : AppCompatActivity() {
when (menuItem.itemId) {
R.id.fullscreenExampleItem -> {
startActivity(Intent(this@MainActivity, FullscreenActivity::class.java))
true
}
R.id.menuExampleItem -> {
startActivity(Intent(this@MainActivity, MenuActivity::class.java))
true
}
R.id.recyclerViewExampleItem -> {
startActivity(Intent(this@MainActivity, RecyclerViewActivity::class.java))
true
}
R.id.originalControlsExampleItem -> {
startActivity(Intent(this@MainActivity, OriginalControlsActivity::class.java))
true
}
}
false
Expand All @@ -68,7 +64,7 @@ class MainActivity : AppCompatActivity() {
playerCurrentTimeTextView.text = getString(R.string.player_current_time, second.toString())
}

vimeoPlayer.addErrorListener { message, method, name ->
vimeoPlayer.addErrorListener { message, _, _ ->
Toast.makeText(this, message, Toast.LENGTH_LONG).show()
}

Expand Down Expand Up @@ -99,7 +95,7 @@ class MainActivity : AppCompatActivity() {
volumeSeekBar.progress = 100
volumeSeekBar.setOnSeekBarChangeListener(object : SeekBar.OnSeekBarChangeListener {
override fun onProgressChanged(seekBar: SeekBar?, progress: Int, fromUser: Boolean) {
var volume = progress.toFloat() / 100
val volume = progress.toFloat() / 100
vimeoPlayer.setVolume(volume)
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package com.ct7ct7ct7.androidvimeoplayersample.examples
import android.app.Activity
import android.content.Intent
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import androidx.appcompat.app.AppCompatActivity
import com.ct7ct7ct7.androidvimeoplayer.model.PlayerState
import com.ct7ct7ct7.androidvimeoplayer.view.VimeoPlayerActivity
import com.ct7ct7ct7.androidvimeoplayersample.R
Expand Down Expand Up @@ -32,7 +32,7 @@ class FullscreenActivity : AppCompatActivity() {
vimeoPlayer.setFullscreenVisibility(true)

vimeoPlayer.setFullscreenClickListener {
var requestOrientation = VimeoPlayerActivity.REQUEST_ORIENTATION_AUTO
val requestOrientation = VimeoPlayerActivity.REQUEST_ORIENTATION_AUTO
startActivityForResult(VimeoPlayerActivity.createIntent(this, requestOrientation, vimeoPlayer), REQUEST_CODE)
}
}
Expand All @@ -41,13 +41,14 @@ class FullscreenActivity : AppCompatActivity() {
super.onActivityResult(requestCode, resultCode, data)

if (resultCode == Activity.RESULT_OK && requestCode == REQUEST_CODE) {
var playAt = data!!.getFloatExtra(VimeoPlayerActivity.RESULT_STATE_VIDEO_PLAY_AT, 0f)
val playAt = data!!.getFloatExtra(VimeoPlayerActivity.RESULT_STATE_VIDEO_PLAY_AT, 0f)
vimeoPlayer.seekTo(playAt)

var playerState = PlayerState.valueOf(data!!.getStringExtra(VimeoPlayerActivity.RESULT_STATE_PLAYER_STATE))
when (playerState) {
when (PlayerState.valueOf(data.getStringExtra(VimeoPlayerActivity.RESULT_STATE_PLAYER_STATE))) {
PlayerState.PLAYING -> vimeoPlayer.play()
PlayerState.PAUSED -> vimeoPlayer.pause()
else -> {
}
}
}
}
Expand Down
Loading