use view binding for three more activities
This commit is contained in:
parent
4450ef403c
commit
1809a5d1dd
4 changed files with 73 additions and 106 deletions
|
|
@ -11,47 +11,40 @@ import android.os.CountDownTimer;
|
||||||
import android.os.SystemClock;
|
import android.os.SystemClock;
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.fragment.app.DialogFragment;
|
import androidx.fragment.app.DialogFragment;
|
||||||
import android.widget.CheckBox;
|
|
||||||
import android.widget.FrameLayout;
|
import android.widget.FrameLayout;
|
||||||
import android.widget.TextView;
|
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
import com.afollestad.materialdialogs.DialogAction;
|
import com.afollestad.materialdialogs.DialogAction;
|
||||||
import com.afollestad.materialdialogs.MaterialDialog;
|
import com.afollestad.materialdialogs.MaterialDialog;
|
||||||
import com.afollestad.materialdialogs.internal.ThemeSingleton;
|
import com.afollestad.materialdialogs.internal.ThemeSingleton;
|
||||||
import com.dkanada.gramophone.R;
|
import com.dkanada.gramophone.R;
|
||||||
|
import com.dkanada.gramophone.databinding.DialogSleepTimerBinding;
|
||||||
import com.dkanada.gramophone.helper.MusicPlayerRemote;
|
import com.dkanada.gramophone.helper.MusicPlayerRemote;
|
||||||
import com.dkanada.gramophone.service.MusicService;
|
import com.dkanada.gramophone.service.MusicService;
|
||||||
import com.dkanada.gramophone.util.MusicUtil;
|
import com.dkanada.gramophone.util.MusicUtil;
|
||||||
import com.dkanada.gramophone.util.PreferenceUtil;
|
import com.dkanada.gramophone.util.PreferenceUtil;
|
||||||
import com.triggertrap.seekarc.SeekArc;
|
import com.triggertrap.seekarc.SeekArc;
|
||||||
|
|
||||||
import butterknife.BindView;
|
|
||||||
import butterknife.ButterKnife;
|
|
||||||
|
|
||||||
public class SleepTimerDialog extends DialogFragment {
|
public class SleepTimerDialog extends DialogFragment {
|
||||||
@BindView(R.id.seek_arc)
|
private DialogSleepTimerBinding binding;
|
||||||
SeekArc seekArc;
|
|
||||||
|
|
||||||
@BindView(R.id.timer_display)
|
private TimerUpdater timerUpdater;
|
||||||
TextView timerDisplay;
|
private MaterialDialog materialDialog;
|
||||||
|
|
||||||
@BindView(R.id.should_finish_last_song)
|
|
||||||
CheckBox shouldFinishLastSong;
|
|
||||||
|
|
||||||
private int seekArcProgress;
|
private int seekArcProgress;
|
||||||
private MaterialDialog materialDialog;
|
|
||||||
private TimerUpdater timerUpdater;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDismiss(DialogInterface dialog) {
|
public void onDismiss(DialogInterface dialog) {
|
||||||
super.onDismiss(dialog);
|
super.onDismiss(dialog);
|
||||||
|
|
||||||
timerUpdater.cancel();
|
timerUpdater.cancel();
|
||||||
}
|
}
|
||||||
|
|
||||||
@NonNull
|
@NonNull
|
||||||
@Override
|
@Override
|
||||||
public Dialog onCreateDialog(Bundle savedInstanceState) {
|
public Dialog onCreateDialog(Bundle savedInstanceState) {
|
||||||
|
binding = DialogSleepTimerBinding.inflate(getLayoutInflater());
|
||||||
|
|
||||||
timerUpdater = new TimerUpdater();
|
timerUpdater = new TimerUpdater();
|
||||||
materialDialog = new MaterialDialog.Builder(getActivity())
|
materialDialog = new MaterialDialog.Builder(getActivity())
|
||||||
.title(getActivity().getResources().getString(R.string.action_sleep_timer))
|
.title(getActivity().getResources().getString(R.string.action_sleep_timer))
|
||||||
|
|
@ -61,7 +54,7 @@ public class SleepTimerDialog extends DialogFragment {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
PreferenceUtil.getInstance(getActivity()).setSleepTimerFinishMusic(shouldFinishLastSong.isChecked());
|
PreferenceUtil.getInstance(getActivity()).setSleepTimerFinishMusic(binding.shouldFinishLastSong.isChecked());
|
||||||
|
|
||||||
final int minutes = seekArcProgress;
|
final int minutes = seekArcProgress;
|
||||||
|
|
||||||
|
|
@ -98,36 +91,34 @@ public class SleepTimerDialog extends DialogFragment {
|
||||||
timerUpdater.start();
|
timerUpdater.start();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.customView(R.layout.dialog_sleep_timer, false)
|
.customView(binding.getRoot(), false)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
if (getActivity() == null || materialDialog.getCustomView() == null) {
|
if (getActivity() == null || materialDialog.getCustomView() == null) {
|
||||||
return materialDialog;
|
return materialDialog;
|
||||||
}
|
}
|
||||||
|
|
||||||
ButterKnife.bind(this, materialDialog.getCustomView());
|
|
||||||
|
|
||||||
boolean finishMusic = PreferenceUtil.getInstance(getActivity()).getSleepTimerFinishMusic();
|
boolean finishMusic = PreferenceUtil.getInstance(getActivity()).getSleepTimerFinishMusic();
|
||||||
shouldFinishLastSong.setChecked(finishMusic);
|
binding.shouldFinishLastSong.setChecked(finishMusic);
|
||||||
|
|
||||||
seekArc.setProgressColor(ThemeSingleton.get().positiveColor.getDefaultColor());
|
binding.seekArc.setProgressColor(ThemeSingleton.get().positiveColor.getDefaultColor());
|
||||||
seekArc.setThumbColor(ThemeSingleton.get().positiveColor.getDefaultColor());
|
binding.seekArc.setThumbColor(ThemeSingleton.get().positiveColor.getDefaultColor());
|
||||||
|
|
||||||
seekArc.post(() -> {
|
binding.seekArc.post(() -> {
|
||||||
int width = seekArc.getWidth();
|
int width = binding.seekArc.getWidth();
|
||||||
int height = seekArc.getHeight();
|
int height = binding.seekArc.getHeight();
|
||||||
int small = Math.min(width, height);
|
int small = Math.min(width, height);
|
||||||
|
|
||||||
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(seekArc.getLayoutParams());
|
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(binding.seekArc.getLayoutParams());
|
||||||
layoutParams.height = small;
|
layoutParams.height = small;
|
||||||
seekArc.setLayoutParams(layoutParams);
|
binding.seekArc.setLayoutParams(layoutParams);
|
||||||
});
|
});
|
||||||
|
|
||||||
seekArcProgress = PreferenceUtil.getInstance(getActivity()).getLastSleepTimerValue();
|
seekArcProgress = PreferenceUtil.getInstance(getActivity()).getLastSleepTimerValue();
|
||||||
updateTimeDisplayTime();
|
updateTimeDisplayTime();
|
||||||
seekArc.setProgress(seekArcProgress);
|
binding.seekArc.setProgress(seekArcProgress);
|
||||||
|
|
||||||
seekArc.setOnSeekArcChangeListener(new SeekArc.OnSeekArcChangeListener() {
|
binding.seekArc.setOnSeekArcChangeListener(new SeekArc.OnSeekArcChangeListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onProgressChanged(@NonNull SeekArc seekArc, int i, boolean b) {
|
public void onProgressChanged(@NonNull SeekArc seekArc, int i, boolean b) {
|
||||||
if (i < 1) {
|
if (i < 1) {
|
||||||
|
|
@ -153,7 +144,7 @@ public class SleepTimerDialog extends DialogFragment {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateTimeDisplayTime() {
|
private void updateTimeDisplayTime() {
|
||||||
timerDisplay.setText(seekArcProgress + " min");
|
binding.timerDisplay.setText(seekArcProgress + " min");
|
||||||
}
|
}
|
||||||
|
|
||||||
private PendingIntent makeTimerPendingIntent(int flag) {
|
private PendingIntent makeTimerPendingIntent(int flag) {
|
||||||
|
|
@ -162,7 +153,7 @@ public class SleepTimerDialog extends DialogFragment {
|
||||||
|
|
||||||
private Intent makeTimerIntent() {
|
private Intent makeTimerIntent() {
|
||||||
Intent intent = new Intent(getActivity(), MusicService.class);
|
Intent intent = new Intent(getActivity(), MusicService.class);
|
||||||
if (shouldFinishLastSong.isChecked()) {
|
if (binding.shouldFinishLastSong.isChecked()) {
|
||||||
return intent.setAction(MusicService.ACTION_PENDING_QUIT);
|
return intent.setAction(MusicService.ACTION_PENDING_QUIT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,15 +5,13 @@ import android.content.Intent;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.widget.Button;
|
|
||||||
import android.widget.EditText;
|
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.appcompat.widget.Toolbar;
|
|
||||||
|
|
||||||
import com.dkanada.gramophone.App;
|
import com.dkanada.gramophone.App;
|
||||||
import com.dkanada.gramophone.R;
|
import com.dkanada.gramophone.R;
|
||||||
|
import com.dkanada.gramophone.databinding.ActivityLoginBinding;
|
||||||
import com.dkanada.gramophone.ui.activities.base.AbsBaseActivity;
|
import com.dkanada.gramophone.ui.activities.base.AbsBaseActivity;
|
||||||
import com.dkanada.gramophone.util.PreferenceUtil;
|
import com.dkanada.gramophone.util.PreferenceUtil;
|
||||||
import com.kabouzeid.appthemehelper.ThemeStore;
|
import com.kabouzeid.appthemehelper.ThemeStore;
|
||||||
|
|
@ -22,29 +20,19 @@ import org.jellyfin.apiclient.interaction.Response;
|
||||||
import org.jellyfin.apiclient.model.system.SystemInfo;
|
import org.jellyfin.apiclient.model.system.SystemInfo;
|
||||||
import org.jellyfin.apiclient.model.users.AuthenticationResult;
|
import org.jellyfin.apiclient.model.users.AuthenticationResult;
|
||||||
|
|
||||||
import butterknife.BindView;
|
|
||||||
import butterknife.ButterKnife;
|
|
||||||
|
|
||||||
public class LoginActivity extends AbsBaseActivity implements View.OnClickListener {
|
public class LoginActivity extends AbsBaseActivity implements View.OnClickListener {
|
||||||
@BindView(R.id.toolbar)
|
private ActivityLoginBinding binding;
|
||||||
Toolbar toolbar;
|
|
||||||
@BindView(R.id.username)
|
|
||||||
EditText username;
|
|
||||||
@BindView(R.id.password)
|
|
||||||
EditText password;
|
|
||||||
@BindView(R.id.server)
|
|
||||||
EditText server;
|
|
||||||
@BindView(R.id.login)
|
|
||||||
Button login;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
setContentView(R.layout.activity_login);
|
|
||||||
setDrawUnderStatusbar();
|
|
||||||
ButterKnife.bind(this);
|
|
||||||
|
|
||||||
|
binding = ActivityLoginBinding.inflate(getLayoutInflater());
|
||||||
|
setContentView(binding.getRoot());
|
||||||
|
|
||||||
|
setDrawUnderStatusbar();
|
||||||
setStatusbarColorAuto();
|
setStatusbarColorAuto();
|
||||||
|
|
||||||
setNavigationbarColorAuto();
|
setNavigationbarColorAuto();
|
||||||
setTaskDescriptionColorAuto();
|
setTaskDescriptionColorAuto();
|
||||||
|
|
||||||
|
|
@ -57,13 +45,13 @@ public class LoginActivity extends AbsBaseActivity implements View.OnClickListen
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setUpToolbar() {
|
private void setUpToolbar() {
|
||||||
toolbar.setBackgroundColor(ThemeStore.primaryColor(this));
|
binding.toolbar.setBackgroundColor(ThemeStore.primaryColor(this));
|
||||||
setSupportActionBar(toolbar);
|
setSupportActionBar(binding.toolbar);
|
||||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setUpOnClickListeners() {
|
private void setUpOnClickListeners() {
|
||||||
login.setOnClickListener(this);
|
binding.login.setOnClickListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -78,24 +66,24 @@ public class LoginActivity extends AbsBaseActivity implements View.OnClickListen
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
if (v == login) {
|
if (v == binding.login) {
|
||||||
final Context context = this;
|
final Context context = this;
|
||||||
if (server.getText().toString().trim().length() == 0) {
|
if (binding.server.getText().toString().trim().length() == 0) {
|
||||||
Toast.makeText(context, context.getResources().getString(R.string.error_login_empty_addr), Toast.LENGTH_SHORT).show();
|
Toast.makeText(context, context.getResources().getString(R.string.error_login_empty_addr), Toast.LENGTH_SHORT).show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (username.getText().toString().trim().length() == 0) {
|
if (binding.username.getText().toString().trim().length() == 0) {
|
||||||
Toast.makeText(context, context.getResources().getString(R.string.error_no_username), Toast.LENGTH_SHORT).show();
|
Toast.makeText(context, context.getResources().getString(R.string.error_no_username), Toast.LENGTH_SHORT).show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
App.getApiClient().ChangeServerLocation(server.getText().toString());
|
App.getApiClient().ChangeServerLocation(binding.server.getText().toString());
|
||||||
App.getApiClient().AuthenticateUserAsync(username.getText().toString(), password.getText().toString(), new Response<AuthenticationResult>() {
|
App.getApiClient().AuthenticateUserAsync(binding.username.getText().toString(), binding.password.getText().toString(), new Response<AuthenticationResult>() {
|
||||||
@Override
|
@Override
|
||||||
public void onResponse(AuthenticationResult result) {
|
public void onResponse(AuthenticationResult result) {
|
||||||
if (result.getAccessToken() == null) return;
|
if (result.getAccessToken() == null) return;
|
||||||
check(context, server.getText().toString(), result.getUser().getId(), result.getAccessToken());
|
check(context, binding.server.getText().toString(), result.getUser().getId(), result.getAccessToken());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,5 @@
|
||||||
package com.dkanada.gramophone.ui.activities;
|
package com.dkanada.gramophone.ui.activities;
|
||||||
|
|
||||||
import android.annotation.SuppressLint;
|
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
|
@ -8,8 +7,8 @@ import android.os.Handler;
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
|
|
||||||
|
import com.dkanada.gramophone.databinding.ActivityMainDrawerLayoutBinding;
|
||||||
import com.dkanada.gramophone.dialogs.ConfirmLogoutDialog;
|
import com.dkanada.gramophone.dialogs.ConfirmLogoutDialog;
|
||||||
import com.google.android.material.navigation.NavigationView;
|
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.drawerlayout.widget.DrawerLayout;
|
import androidx.drawerlayout.widget.DrawerLayout;
|
||||||
|
|
||||||
|
|
@ -41,16 +40,8 @@ import org.jellyfin.apiclient.model.dto.BaseItemDto;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import butterknife.BindView;
|
|
||||||
import butterknife.ButterKnife;
|
|
||||||
|
|
||||||
public class MainActivity extends AbsSlidingMusicPanelActivity {
|
public class MainActivity extends AbsSlidingMusicPanelActivity {
|
||||||
public static final String TAG = MainActivity.class.getSimpleName();
|
private ActivityMainDrawerLayoutBinding binding;
|
||||||
|
|
||||||
@BindView(R.id.navigation_view)
|
|
||||||
NavigationView navigationView;
|
|
||||||
@BindView(R.id.drawer_layout)
|
|
||||||
DrawerLayout drawerLayout;
|
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
MainActivityFragmentCallbacks currentFragment;
|
MainActivityFragmentCallbacks currentFragment;
|
||||||
|
|
@ -65,13 +56,12 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
setDrawUnderStatusbar();
|
setDrawUnderStatusbar();
|
||||||
ButterKnife.bind(this);
|
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT == Build.VERSION_CODES.KITKAT) {
|
if (Build.VERSION.SDK_INT == Build.VERSION_CODES.KITKAT) {
|
||||||
navigationView.setFitsSystemWindows(false);
|
binding.navigationView.setFitsSystemWindows(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
Menu menu = navigationView.getMenu();
|
Menu menu = binding.navigationView.getMenu();
|
||||||
QueryUtil.getLibraries(new MediaCallback() {
|
QueryUtil.getLibraries(new MediaCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onLoadMedia(List<?> media) {
|
public void onLoadMedia(List<?> media) {
|
||||||
|
|
@ -118,20 +108,21 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected View createContentView() {
|
protected View createContentView() {
|
||||||
@SuppressLint("InflateParams")
|
binding = ActivityMainDrawerLayoutBinding.inflate(getLayoutInflater());
|
||||||
View contentView = getLayoutInflater().inflate(R.layout.activity_main_drawer_layout, null);
|
|
||||||
ViewGroup drawerContent = contentView.findViewById(R.id.drawer_content_container);
|
ViewGroup drawerContent = binding.getRoot().findViewById(R.id.drawer_content_container);
|
||||||
drawerContent.addView(wrapSlidingMusicPanel(R.layout.activity_main_content));
|
drawerContent.addView(wrapSlidingMusicPanel(R.layout.activity_main_content));
|
||||||
return contentView;
|
|
||||||
|
return binding.getRoot();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setUpNavigationView() {
|
private void setUpNavigationView() {
|
||||||
int accentColor = ThemeStore.accentColor(this);
|
int accentColor = ThemeStore.accentColor(this);
|
||||||
NavigationViewUtil.setItemIconColors(navigationView, ATHUtil.resolveColor(this, R.attr.iconColor, ThemeStore.textColorSecondary(this)), accentColor);
|
NavigationViewUtil.setItemIconColors(binding.navigationView, ATHUtil.resolveColor(this, R.attr.iconColor, ThemeStore.textColorSecondary(this)), accentColor);
|
||||||
NavigationViewUtil.setItemTextColors(navigationView, ThemeStore.textColorPrimary(this), accentColor);
|
NavigationViewUtil.setItemTextColors(binding.navigationView, ThemeStore.textColorPrimary(this), accentColor);
|
||||||
|
|
||||||
navigationView.setNavigationItemSelectedListener(menuItem -> {
|
binding.navigationView.setNavigationItemSelectedListener(menuItem -> {
|
||||||
drawerLayout.closeDrawers();
|
binding.drawerLayout.closeDrawers();
|
||||||
switch (menuItem.getItemId()) {
|
switch (menuItem.getItemId()) {
|
||||||
case R.id.nav_settings:
|
case R.id.nav_settings:
|
||||||
new Handler().postDelayed(() -> startActivity(new Intent(MainActivity.this, SettingsActivity.class)), 200);
|
new Handler().postDelayed(() -> startActivity(new Intent(MainActivity.this, SettingsActivity.class)), 200);
|
||||||
|
|
@ -161,11 +152,11 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
||||||
|| menuItem.getItemId() == R.id.nav_about
|
|| menuItem.getItemId() == R.id.nav_about
|
||||||
|| menuItem.getItemId() == R.id.nav_logout) return true;
|
|| menuItem.getItemId() == R.id.nav_logout) return true;
|
||||||
|
|
||||||
for (int i = 0; i < navigationView.getMenu().size(); i++) {
|
for (int i = 0; i < binding.navigationView.getMenu().size(); i++) {
|
||||||
if (navigationView.getMenu().getItem(i) == menuItem) {
|
if (binding.navigationView.getMenu().getItem(i) == menuItem) {
|
||||||
navigationView.getMenu().getItem(i).setChecked(true);
|
binding.navigationView.getMenu().getItem(i).setChecked(true);
|
||||||
} else {
|
} else {
|
||||||
navigationView.getMenu().getItem(i).setChecked(false);
|
binding.navigationView.getMenu().getItem(i).setChecked(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -181,9 +172,9 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
||||||
if (!MusicPlayerRemote.getPlayingQueue().isEmpty()) {
|
if (!MusicPlayerRemote.getPlayingQueue().isEmpty()) {
|
||||||
Song song = MusicPlayerRemote.getCurrentSong();
|
Song song = MusicPlayerRemote.getCurrentSong();
|
||||||
if (navigationDrawerHeader == null) {
|
if (navigationDrawerHeader == null) {
|
||||||
navigationDrawerHeader = navigationView.inflateHeaderView(R.layout.navigation_drawer_header);
|
navigationDrawerHeader = binding.navigationView.inflateHeaderView(R.layout.navigation_drawer_header);
|
||||||
navigationDrawerHeader.setOnClickListener(v -> {
|
navigationDrawerHeader.setOnClickListener(v -> {
|
||||||
drawerLayout.closeDrawers();
|
binding.drawerLayout.closeDrawers();
|
||||||
if (getPanelState() == SlidingUpPanelLayout.PanelState.COLLAPSED) {
|
if (getPanelState() == SlidingUpPanelLayout.PanelState.COLLAPSED) {
|
||||||
expandPanel();
|
expandPanel();
|
||||||
}
|
}
|
||||||
|
|
@ -198,7 +189,7 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
||||||
.build().into(((ImageView) navigationDrawerHeader.findViewById(R.id.image)));
|
.build().into(((ImageView) navigationDrawerHeader.findViewById(R.id.image)));
|
||||||
} else {
|
} else {
|
||||||
if (navigationDrawerHeader != null) {
|
if (navigationDrawerHeader != null) {
|
||||||
navigationView.removeHeaderView(navigationDrawerHeader);
|
binding.navigationView.removeHeaderView(navigationDrawerHeader);
|
||||||
navigationDrawerHeader = null;
|
navigationDrawerHeader = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -219,10 +210,10 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
||||||
@Override
|
@Override
|
||||||
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
|
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
|
||||||
if (item.getItemId() == android.R.id.home) {
|
if (item.getItemId() == android.R.id.home) {
|
||||||
if (drawerLayout.isDrawerOpen(navigationView)) {
|
if (binding.drawerLayout.isDrawerOpen(binding.navigationView)) {
|
||||||
drawerLayout.closeDrawer(navigationView);
|
binding.drawerLayout.closeDrawer(binding.navigationView);
|
||||||
} else {
|
} else {
|
||||||
drawerLayout.openDrawer(navigationView);
|
binding.drawerLayout.openDrawer(binding.navigationView);
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -233,8 +224,8 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean handleBackPress() {
|
public boolean handleBackPress() {
|
||||||
if (drawerLayout.isDrawerOpen(navigationView)) {
|
if (binding.drawerLayout.isDrawerOpen(binding.navigationView)) {
|
||||||
drawerLayout.closeDrawers();
|
binding.drawerLayout.closeDrawers();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -244,13 +235,13 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
||||||
@Override
|
@Override
|
||||||
public void onPanelExpanded(View view) {
|
public void onPanelExpanded(View view) {
|
||||||
super.onPanelExpanded(view);
|
super.onPanelExpanded(view);
|
||||||
drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
|
binding.drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onPanelCollapsed(View view) {
|
public void onPanelCollapsed(View view) {
|
||||||
super.onPanelCollapsed(view);
|
super.onPanelCollapsed(view);
|
||||||
drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED);
|
binding.drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface MainActivityFragmentCallbacks {
|
public interface MainActivityFragmentCallbacks {
|
||||||
|
|
|
||||||
|
|
@ -11,11 +11,11 @@ import androidx.preference.ListPreference;
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceManager;
|
import androidx.preference.PreferenceManager;
|
||||||
import androidx.preference.TwoStatePreference;
|
import androidx.preference.TwoStatePreference;
|
||||||
import androidx.appcompat.widget.Toolbar;
|
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
import com.afollestad.materialdialogs.color.ColorChooserDialog;
|
import com.afollestad.materialdialogs.color.ColorChooserDialog;
|
||||||
|
import com.dkanada.gramophone.databinding.ActivitySettingsBinding;
|
||||||
import com.dkanada.gramophone.preferences.DirectPlayPreference;
|
import com.dkanada.gramophone.preferences.DirectPlayPreference;
|
||||||
import com.dkanada.gramophone.preferences.DirectPlayPreferenceDialog;
|
import com.dkanada.gramophone.preferences.DirectPlayPreferenceDialog;
|
||||||
import com.kabouzeid.appthemehelper.ThemeStore;
|
import com.kabouzeid.appthemehelper.ThemeStore;
|
||||||
|
|
@ -31,27 +31,24 @@ import com.dkanada.gramophone.preferences.NowPlayingScreenPreferenceDialog;
|
||||||
import com.dkanada.gramophone.ui.activities.base.AbsBaseActivity;
|
import com.dkanada.gramophone.ui.activities.base.AbsBaseActivity;
|
||||||
import com.dkanada.gramophone.util.PreferenceUtil;
|
import com.dkanada.gramophone.util.PreferenceUtil;
|
||||||
|
|
||||||
import butterknife.BindView;
|
|
||||||
import butterknife.ButterKnife;
|
|
||||||
|
|
||||||
public class SettingsActivity extends AbsBaseActivity implements ColorChooserDialog.ColorCallback {
|
public class SettingsActivity extends AbsBaseActivity implements ColorChooserDialog.ColorCallback {
|
||||||
|
private ActivitySettingsBinding binding;
|
||||||
@BindView(R.id.toolbar)
|
|
||||||
Toolbar toolbar;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
setContentView(R.layout.activity_settings);
|
|
||||||
setDrawUnderStatusbar();
|
|
||||||
ButterKnife.bind(this);
|
|
||||||
|
|
||||||
|
binding = ActivitySettingsBinding.inflate(getLayoutInflater());
|
||||||
|
setContentView(binding.getRoot());
|
||||||
|
|
||||||
|
setDrawUnderStatusbar();
|
||||||
setStatusbarColorAuto();
|
setStatusbarColorAuto();
|
||||||
|
|
||||||
setNavigationbarColorAuto();
|
setNavigationbarColorAuto();
|
||||||
setTaskDescriptionColorAuto();
|
setTaskDescriptionColorAuto();
|
||||||
|
|
||||||
toolbar.setBackgroundColor(ThemeStore.primaryColor(this));
|
binding.toolbar.setBackgroundColor(ThemeStore.primaryColor(this));
|
||||||
setSupportActionBar(toolbar);
|
setSupportActionBar(binding.toolbar);
|
||||||
//noinspection ConstantConditions
|
//noinspection ConstantConditions
|
||||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue