Fix issue

This commit is contained in:
Thomas 2020-10-02 15:14:08 +02:00
parent 7777317eb8
commit 34ed36f9ae
1 changed files with 20 additions and 7 deletions

View File

@ -19,6 +19,7 @@ import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.content.res.Configuration;
import android.database.sqlite.SQLiteDatabase;
@ -29,6 +30,7 @@ import android.os.Build;
import android.os.Bundle;
import android.support.v4.media.session.MediaSessionCompat;
import android.text.Html;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
@ -56,6 +58,7 @@ import androidx.appcompat.widget.PopupMenu;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import androidx.core.graphics.drawable.DrawableCompat;
import androidx.core.view.WindowCompat;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@ -187,8 +190,10 @@ public class PeertubeActivity extends AppCompatActivity implements CommentListAd
SQLiteDatabase db = Sqlite.getInstance(getApplicationContext(), Sqlite.DB_NAME, null, Sqlite.DB_VERSION).open();
SharedPreferences sharedpreferences = getSharedPreferences(Helper.APP_PREFS, MODE_PRIVATE);
String token = sharedpreferences.getString(Helper.PREF_KEY_OAUTH_TOKEN, null);
Account account = new AccountDAO(PeertubeActivity.this, db).getAccountByToken(token);
Helper.loadGiF(PeertubeActivity.this, account.getAvatar() != null ? account.getAvatar().getPath() : null, my_pp);
if( Helper.isLoggedIn(PeertubeActivity.this)) {
Account account = new AccountDAO(PeertubeActivity.this, db).getAccountByToken(token);
Helper.loadGiF(PeertubeActivity.this, account.getAvatar() != null ? account.getAvatar().getPath() : null, my_pp);
}
if (Helper.isTablet(PeertubeActivity.this)) {
@ -243,6 +248,8 @@ public class PeertubeActivity extends AppCompatActivity implements CommentListAd
getWindow().setAttributes(attrs);
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);
peertube_information_container.setVisibility(View.GONE);
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
WindowCompat.setDecorFitsSystemWindows(getWindow(), false);
} else {
WindowManager.LayoutParams attrs = getWindow().getAttributes();
attrs.flags &= ~WindowManager.LayoutParams.FLAG_FULLSCREEN;
@ -251,6 +258,7 @@ public class PeertubeActivity extends AppCompatActivity implements CommentListAd
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE);
videoLayout.setVisibility(View.GONE);
peertube_information_container.setVisibility(View.VISIBLE);
WindowCompat.setDecorFitsSystemWindows(getWindow(), true);
}
});
webview_video.getSettings().setAllowFileAccess(true);
@ -315,11 +323,13 @@ public class PeertubeActivity extends AppCompatActivity implements CommentListAd
WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
Objects.requireNonNull(getSupportActionBar()).hide();
peertube_information_container.setVisibility(View.GONE);
WindowCompat.setDecorFitsSystemWindows(getWindow(), true);
} else {
getWindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,
WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
Objects.requireNonNull(getSupportActionBar()).show();
peertube_information_container.setVisibility(View.VISIBLE);
WindowCompat.setDecorFitsSystemWindows(getWindow(), false);
}
}
@ -771,6 +781,7 @@ public class PeertubeActivity extends AppCompatActivity implements CommentListAd
@Override
public void onConfigurationChanged(@NotNull Configuration newConfig) {
super.onConfigurationChanged(newConfig);
Log.v(Helper.TAG,"onConfigurationChanged: " + newConfig.orientation);
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
if (mode != Helper.VIDEO_MODE_WEBVIEW) {
openFullscreenDialog();
@ -958,8 +969,9 @@ public class PeertubeActivity extends AppCompatActivity implements CommentListAd
fullScreenDialog = new Dialog(this, android.R.style.Theme_Black_NoTitleBar_Fullscreen) {
public void onBackPressed() {
if (fullScreenMode)
if (fullScreenMode) {
closeFullscreenDialog();
}
super.onBackPressed();
}
};
@ -990,18 +1002,19 @@ public class PeertubeActivity extends AppCompatActivity implements CommentListAd
fullScreenIcon = controlView.findViewById(R.id.exo_fullscreen_icon);
View fullScreenButton = controlView.findViewById(R.id.exo_fullscreen_button);
fullScreenButton.setOnClickListener(v -> {
if (!fullScreenMode)
if (!fullScreenMode) {
openFullscreenDialog();
else
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}else {
closeFullscreenDialog();
}
});
}
private void initResolution() {
//TODO: add in settings a way to pick up the lower/medium/Highest resolution and init it there
PlayerControlView controlView = playerView.findViewById(R.id.exo_controller);
resolution = controlView.findViewById(R.id.resolution);
resolution.setText(String.format("%s", peertube.getFiles().get(0).getResolutions().getLabel()));
resolution.setText(String.format("%s", Helper.defaultFile(PeertubeActivity.this, peertube.getFiles()).getResolutions().getLabel()));
resolution.setOnClickListener(v -> displayResolution());
}