Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstefan-niedermann <info@niedermann.it>2020-03-01 16:38:42 +0300
committerNiedermann IT-Dienstleistungen <stefan-niedermann@users.noreply.github.com>2020-03-04 22:42:44 +0300
commit840c0543151944b784cc30641e7c73122fa05b69 (patch)
tree2e857626b4ab3ff07d74221ba96c6214cf5b6273
parent2e59fb39fe380dce79309902418842f2b029afa6 (diff)
#285 Migrate from ButterKnife to ViewBinding
-rw-r--r--app/build.gradle4
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/DrawerActivity.java104
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java126
-rw-r--r--app/src/main/res/layout/activity_main.xml4
4 files changed, 88 insertions, 150 deletions
diff --git a/app/build.gradle b/app/build.gradle
index 274cac01f..5c0bd0976 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -31,7 +31,9 @@ android {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
-
+ viewBinding {
+ enabled = true
+ }
flavorDimensions "version"
productFlavors {
fdroid {
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/DrawerActivity.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/DrawerActivity.java
index 5727e52d0..a5cd102b9 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/DrawerActivity.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/DrawerActivity.java
@@ -16,8 +16,6 @@ import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
@@ -27,10 +25,7 @@ import androidx.appcompat.app.ActionBarDrawerToggle;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.AppCompatImageButton;
-import androidx.appcompat.widget.Toolbar;
-import androidx.coordinatorlayout.widget.CoordinatorLayout;
import androidx.core.view.GravityCompat;
-import androidx.drawerlayout.widget.DrawerLayout;
import com.bumptech.glide.Glide;
import com.bumptech.glide.request.RequestOptions;
@@ -50,14 +45,12 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
-import butterknife.BindInt;
-import butterknife.BindString;
-import butterknife.BindView;
-import butterknife.ButterKnife;
import it.niedermann.nextcloud.deck.Application;
import it.niedermann.nextcloud.deck.DeckLog;
import it.niedermann.nextcloud.deck.R;
import it.niedermann.nextcloud.deck.api.IResponseCallback;
+import it.niedermann.nextcloud.deck.databinding.ActivityMainBinding;
+import it.niedermann.nextcloud.deck.databinding.NavHeaderMainBinding;
import it.niedermann.nextcloud.deck.exceptions.OfflineException;
import it.niedermann.nextcloud.deck.model.Account;
import it.niedermann.nextcloud.deck.model.ocs.Capabilities;
@@ -80,35 +73,18 @@ public abstract class DrawerActivity extends AppCompatActivity implements Naviga
protected static final long NO_BOARDS = -1;
protected static final long NO_STACKS = -1;
- @BindView(R.id.coordinatorLayout)
- CoordinatorLayout coordinatorLayout;
- @BindView(R.id.navigationView)
- NavigationView navigationView;
- @BindView(R.id.drawer_layout)
- DrawerLayout drawer;
- @BindView(R.id.toolbar)
- Toolbar toolbar;
-
- @BindString(R.string.account_is_getting_imported)
- String accountIsGettingImported;
- @BindString(R.string.account_already_added)
- String accountAlreadyAdded;
- @BindString(R.string.shared_preference_last_account)
- String sharedPreferenceLastAccount;
- @BindString(R.string.url_fragment_update_deck)
- String urlFragmentUpdateDeck;
- @BindString(R.string.add_board)
- String addBoard;
- @BindString(R.string.no_account)
- String noAccount;
- @BindString(R.string.add_account)
- String addAccount;
- @BindInt(R.integer.minimum_server_app_major)
- int minimumServerAppMajor;
- @BindInt(R.integer.minimum_server_app_minor)
- int minimumServerAppMinor;
- @BindInt(R.integer.minimum_server_app_patch)
- int minimumServerAppPatch;
+ protected ActivityMainBinding binding;
+
+ String accountIsGettingImported = getString(R.string.account_is_getting_imported);
+ String accountAlreadyAdded = getString(R.string.account_already_added);
+ String sharedPreferenceLastAccount = getString(R.string.shared_preference_last_account);
+ String urlFragmentUpdateDeck = getString(R.string.url_fragment_update_deck);
+ String addBoard = getString(R.string.add_board);
+ String noAccount = getString(R.string.no_account);
+ String addAccount = getString(R.string.add_account);
+ int minimumServerAppMajor = getResources().getInteger(R.integer.minimum_server_app_major);
+ int minimumServerAppMinor = getResources().getInteger(R.integer.minimum_server_app_minor);
+ int minimumServerAppPatch = getResources().getInteger(R.integer.minimum_server_app_patch);
protected List<Account> accountsList = new ArrayList<>();
protected Account account;
@@ -145,7 +121,7 @@ public abstract class DrawerActivity extends AppCompatActivity implements Naviga
try {
accountLiveData.throwError();
} catch (SQLiteConstraintException ex) {
- Snackbar.make(coordinatorLayout, accountAlreadyAdded, Snackbar.LENGTH_LONG).show();
+ Snackbar.make(binding.coordinatorLayout, accountAlreadyAdded, Snackbar.LENGTH_LONG).show();
}
} else {
// Remember last account - THIS HAS TO BE DONE SYNCHRONOUSLY
@@ -159,7 +135,7 @@ public abstract class DrawerActivity extends AppCompatActivity implements Naviga
@Override
public void onResponse(Capabilities response) {
if (response.getDeckVersion().compareTo(new Version(minimumServerAppMajor, minimumServerAppMinor, minimumServerAppPatch)) < 0) {
- deckVersionTooLowSnackbar = Snackbar.make(coordinatorLayout, R.string.your_deck_version_is_too_old, Snackbar.LENGTH_INDEFINITE).setAction("Learn more", v -> {
+ deckVersionTooLowSnackbar = Snackbar.make(binding.coordinatorLayout, R.string.your_deck_version_is_too_old, Snackbar.LENGTH_INDEFINITE).setAction("Learn more", v -> {
new AlertDialog.Builder(DrawerActivity.this, Application.getAppTheme(getApplicationContext()) ? R.style.DialogDarkTheme : R.style.ThemeOverlay_AppCompat_Dialog_Alert)
.setTitle(R.string.update_deck)
.setMessage(R.string.deck_outdated_please_update)
@@ -209,19 +185,19 @@ public abstract class DrawerActivity extends AppCompatActivity implements Naviga
super.onCreate(savedInstanceState);
Thread.setDefaultUncaughtExceptionHandler(new ExceptionHandler(this));
- setSupportActionBar(toolbar);
+ setSupportActionBar(binding.toolbar);
- accountIsGettingImportedSnackbar = Snackbar.make(coordinatorLayout, accountIsGettingImported, Snackbar.LENGTH_INDEFINITE);
+ accountIsGettingImportedSnackbar = Snackbar.make(binding.coordinatorLayout, accountIsGettingImported, Snackbar.LENGTH_INDEFINITE);
- View header = navigationView.getHeaderView(0);
+ View header = binding.navigationView.getHeaderView(0);
headerViewHolder = new HeaderViewHolder(header);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
- this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
- drawer.addDrawerListener(toggle);
+ this, binding.drawerLayout, binding.toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
+ binding.drawerLayout.addDrawerListener(toggle);
toggle.syncState();
- navigationView.setNavigationItemSelectedListener(this);
+ binding.navigationView.setNavigationItemSelectedListener(this);
syncManager = new SyncManager(this);
sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
@@ -239,7 +215,7 @@ public abstract class DrawerActivity extends AppCompatActivity implements Naviga
SingleAccountHelper.setCurrentAccount(getApplicationContext(), this.account.getName());
syncManager = new SyncManager(this);
setHeaderView();
- ViewUtil.addAvatar(this, headerViewHolder.currentAccountAvatar, this.account.getUrl(), this.account.getUserName(), R.mipmap.ic_launcher_round);
+ ViewUtil.addAvatar(this, headerViewHolder.binding.drawerCurrentAccount, this.account.getUrl(), this.account.getUserName(), R.mipmap.ic_launcher_round);
// TODO show spinner
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
registerAutoSyncOnNetworkAvailable();
@@ -261,7 +237,7 @@ public abstract class DrawerActivity extends AppCompatActivity implements Naviga
}
});
- navigationView.getHeaderView(0).findViewById(R.id.drawer_header_view).setOnClickListener(v -> {
+ binding.navigationView.getHeaderView(0).findViewById(R.id.drawer_header_view).setOnClickListener(v -> {
this.accountChooserActive = !this.accountChooserActive;
if (accountChooserActive) {
buildSidenavAccountChooser();
@@ -300,8 +276,8 @@ public abstract class DrawerActivity extends AppCompatActivity implements Naviga
@Override
public void onBackPressed() {
- if (drawer.isDrawerOpen(GravityCompat.START)) {
- drawer.closeDrawer(GravityCompat.START);
+ if (binding.drawerLayout.isDrawerOpen(GravityCompat.START)) {
+ binding.drawerLayout.closeDrawer(GravityCompat.START);
} else {
super.onBackPressed();
}
@@ -347,24 +323,24 @@ public abstract class DrawerActivity extends AppCompatActivity implements Naviga
boardSelected(item.getItemId(), account);
}
}
- drawer.closeDrawer(GravityCompat.START);
+ binding.drawerLayout.closeDrawer(GravityCompat.START);
return true;
}
protected abstract void boardSelected(int itemId, Account account);
protected void setHeaderView() {
- ViewUtil.addAvatar(this, navigationView.getHeaderView(0).findViewById(R.id.drawer_current_account), account.getUrl(), account.getUserName(), R.mipmap.ic_launcher_round);
- ((TextView) navigationView.getHeaderView(0).findViewById(R.id.drawer_username_full)).setText(account.getName());
+ ViewUtil.addAvatar(this, binding.navigationView.getHeaderView(0).findViewById(R.id.drawer_current_account), account.getUrl(), account.getUserName(), R.mipmap.ic_launcher_round);
+ ((TextView) binding.navigationView.getHeaderView(0).findViewById(R.id.drawer_username_full)).setText(account.getName());
}
protected void setNoAccountHeaderView() {
- ViewUtil.addAvatar(this, navigationView.getHeaderView(0).findViewById(R.id.drawer_current_account), null, "", R.mipmap.ic_launcher_round);
- ((TextView) navigationView.getHeaderView(0).findViewById(R.id.drawer_username_full)).setText(noAccount);
+ ViewUtil.addAvatar(this, binding.navigationView.getHeaderView(0).findViewById(R.id.drawer_current_account), null, "", R.mipmap.ic_launcher_round);
+ ((TextView) binding.navigationView.getHeaderView(0).findViewById(R.id.drawer_username_full)).setText(noAccount);
}
private void buildSidenavAccountChooser() {
- Menu menu = navigationView.getMenu();
+ Menu menu = binding.navigationView.getMenu();
menu.clear();
if (accountsList == null || accountsList.size() == 0) {
Objects.requireNonNull(getSupportActionBar()).setTitle(R.string.app_name_short);
@@ -427,7 +403,7 @@ public abstract class DrawerActivity extends AppCompatActivity implements Naviga
syncManager.deleteAccount(account.getId());
buildSidenavAccountChooser();
- drawer.closeDrawer(GravityCompat.START);
+ binding.drawerLayout.closeDrawer(GravityCompat.START);
});
m.setActionView(contextMenu);
}
@@ -438,20 +414,10 @@ public abstract class DrawerActivity extends AppCompatActivity implements Naviga
abstract void buildSidenavMenu();
static class HeaderViewHolder {
- @BindView(R.id.drawer_current_account)
- ImageView currentAccountAvatar;
- @BindView(R.id.drawer_account_middle)
- ImageView accountMiddleAvatar;
- @BindView(R.id.drawer_account_end)
- ImageView accountEndAvatar;
-
- @BindView(R.id.drawer_menu_toggle)
- LinearLayout drawerMenuToggle;
- @BindView(R.id.drawer_account_chooser_toggle)
- ImageView drawerMenuToggleIcon;
+ NavHeaderMainBinding binding;
HeaderViewHolder(View view) {
- ButterKnife.bind(this, view);
+ NavHeaderMainBinding.bind(view);
}
}
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java
index 6989354f4..1e280c3c6 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java
@@ -16,26 +16,20 @@ import androidx.appcompat.widget.PopupMenu;
import androidx.core.view.GravityCompat;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.Observer;
-import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import androidx.viewpager.widget.ViewPager;
import com.bumptech.glide.Glide;
-import com.google.android.material.floatingactionbutton.FloatingActionButton;
-import com.google.android.material.navigation.NavigationView;
import com.google.android.material.snackbar.Snackbar;
-import com.google.android.material.tabs.TabLayout;
import com.h6ah4i.android.tablayouthelper.TabLayoutHelper;
import java.util.List;
import java.util.Objects;
-import butterknife.BindString;
-import butterknife.BindView;
-import butterknife.ButterKnife;
import it.niedermann.nextcloud.deck.Application;
import it.niedermann.nextcloud.deck.DeckLog;
import it.niedermann.nextcloud.deck.R;
import it.niedermann.nextcloud.deck.api.IResponseCallback;
+import it.niedermann.nextcloud.deck.databinding.ActivityMainBinding;
import it.niedermann.nextcloud.deck.model.Account;
import it.niedermann.nextcloud.deck.model.Board;
import it.niedermann.nextcloud.deck.model.Stack;
@@ -45,7 +39,6 @@ import it.niedermann.nextcloud.deck.ui.board.AccessControlDialogFragment;
import it.niedermann.nextcloud.deck.ui.board.EditBoardDialogFragment;
import it.niedermann.nextcloud.deck.ui.exception.ExceptionHandler;
import it.niedermann.nextcloud.deck.ui.helper.dnd.CrossTabDragAndDrop;
-import it.niedermann.nextcloud.deck.ui.helper.emptycontentview.EmptyContentView;
import it.niedermann.nextcloud.deck.ui.stack.EditStackDialogFragment;
import it.niedermann.nextcloud.deck.ui.stack.StackAdapter;
import it.niedermann.nextcloud.deck.ui.stack.StackFragment;
@@ -67,39 +60,14 @@ public class MainActivity extends DrawerActivity implements
private static final String TAG = MainActivity.class.getCanonicalName();
- @BindView(R.id.swipe_refresh_layout)
- SwipeRefreshLayout swipeRefreshLayout;
- @BindView(R.id.fab)
- FloatingActionButton fab;
- @BindView(R.id.navigationView)
- NavigationView navigationView;
- @BindView(R.id.stackLayout)
- TabLayout stackLayout;
- @BindView(R.id.viewPager)
- ViewPager viewPager;
- @BindView(R.id.no_stacks)
- EmptyContentView emptyContentView;
- @BindView(R.id.add_stack)
- AppCompatImageButton addStackButton;
-
- @BindString(R.string.shared_preference_last_board_for_account_)
- String sharedPreferencesLastBoardForAccount_;
- @BindString(R.string.shared_preference_last_stack_for_account_and_board_)
- String sharedPreferencesLastStackForAccountAndBoard_;
- @BindString(R.string.simple_settings)
- String simpleSettings;
- @BindString(R.string.simple_boards)
- String simpleBoards;
- @BindString(R.string.about)
- String about;
- @BindString(R.string.share_board)
- String shareBoard;
- @BindString(R.string.edit_board)
- String editBoard;
- @BindString(R.string.add_column)
- String addColumn;
- @BindString(R.string.action_card_list_rename_column)
- String actionCardListRenameColumn;
+ String sharedPreferencesLastBoardForAccount_ = getString(R.string.shared_preference_last_board_for_account_);
+ String sharedPreferencesLastStackForAccountAndBoard_ = getString(R.string.shared_preference_last_stack_for_account_and_board_);
+ String simpleSettings = getString(R.string.simple_settings);
+ String simpleBoards = getString(R.string.simple_boards);
+ String about = getString(R.string.about);
+ String shareBoard = getString(R.string.share_board);
+ String editBoard = getString(R.string.edit_board);
+ String addColumn = getString(R.string.add_column);
private StackAdapter stackAdapter;
private List<Board> boardsList;
@@ -113,8 +81,10 @@ public class MainActivity extends DrawerActivity implements
@Override
protected void onCreate(Bundle savedInstanceState) {
setTheme(Application.getAppTheme(this) ? R.style.DarkAppTheme : R.style.AppTheme);
- setContentView(R.layout.activity_main);
- ButterKnife.bind(this);
+
+ binding = ActivityMainBinding.inflate(getLayoutInflater());
+ setContentView(binding.getRoot());
+
super.onCreate(savedInstanceState);
Thread.currentThread().setUncaughtExceptionHandler(new ExceptionHandler(this));
@@ -124,16 +94,16 @@ public class MainActivity extends DrawerActivity implements
AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
CrossTabDragAndDrop dragAndDrop = new CrossTabDragAndDrop(this);
- dragAndDrop.register(viewPager, stackLayout);
+ dragAndDrop.register(binding.viewPager, binding.stackLayout);
dragAndDrop.addCardMovedByDragListener((movedCard, stackId, position) -> {
//FIXME: implement me por favour!
syncManager.reorder(account.getId(), movedCard, stackId, position);
DeckLog.log("Card \"" + movedCard.getCard().getTitle() + "\" was moved to Stack " + stackId + " on position " + position);
});
- fab.setOnClickListener((View view) -> {
+ binding.fab.setOnClickListener((View view) -> {
if (this.boardsList == null) {
- Snackbar.make(coordinatorLayout, "Please add an account first", Snackbar.LENGTH_LONG);
+ Snackbar.make(binding.coordinatorLayout, "Please add an account first", Snackbar.LENGTH_LONG);
} else if (this.boardsList.size() > 0) {
Intent intent = new Intent(this, EditActivity.class);
intent.putExtra(BUNDLE_KEY_ACCOUNT_ID, account.getId());
@@ -141,7 +111,7 @@ public class MainActivity extends DrawerActivity implements
intent.putExtra(BUNDLE_KEY_BOARD_ID, currentBoardId);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
try {
- intent.putExtra(BUNDLE_KEY_STACK_ID, stackAdapter.getItem(viewPager.getCurrentItem()).getStackId());
+ intent.putExtra(BUNDLE_KEY_STACK_ID, stackAdapter.getItem(binding.viewPager.getCurrentItem()).getStackId());
startActivity(intent);
} catch (IndexOutOfBoundsException e) {
EditStackDialogFragment.newInstance(NO_STACK_ID)
@@ -152,7 +122,7 @@ public class MainActivity extends DrawerActivity implements
}
});
- addStackButton.setOnClickListener((v) -> {
+ binding.addStackButton.setOnClickListener((v) -> {
if (this.boardsList.size() == 0) {
EditBoardDialogFragment.newInstance().show(getSupportFragmentManager(), addBoard);
} else {
@@ -160,7 +130,7 @@ public class MainActivity extends DrawerActivity implements
}
});
- viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
+ binding.viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
@@ -168,7 +138,7 @@ public class MainActivity extends DrawerActivity implements
@Override
public void onPageSelected(int position) {
- viewPager.post(() -> {
+ binding.viewPager.post(() -> {
// Remember last stack for this board
if (stackAdapter.getCount() >= position) {
long currentStackId = stackAdapter.getItem(position).getStackId();
@@ -187,7 +157,7 @@ public class MainActivity extends DrawerActivity implements
}
});
- swipeRefreshLayout.setOnRefreshListener(() -> {
+ binding.swipeRefreshLayout.setOnRefreshListener(() -> {
Log.i(TAG, "Clearing Glide memory cache");
Glide.get(this).clearMemory();
new Thread(() -> {
@@ -197,12 +167,12 @@ public class MainActivity extends DrawerActivity implements
syncManager.synchronize(new IResponseCallback<Boolean>(account) {
@Override
public void onResponse(Boolean response) {
- runOnUiThread(() -> swipeRefreshLayout.setRefreshing(false));
+ runOnUiThread(() -> binding.swipeRefreshLayout.setRefreshing(false));
}
@Override
public void onError(Throwable throwable) {
- runOnUiThread(() -> swipeRefreshLayout.setRefreshing(false));
+ runOnUiThread(() -> binding.swipeRefreshLayout.setRefreshing(false));
DeckLog.logError(throwable);
}
});
@@ -227,7 +197,7 @@ public class MainActivity extends DrawerActivity implements
// original to do: should return ID of the created stack, so one can immediately switch to the new board after creation
DeckLog.log("Create Stack with account id = " + account.getId());
syncManager.createStack(account.getId(), s).observe(MainActivity.this, (stack) -> {
- viewPager.setCurrentItem(stackAdapter.getCount());
+ binding.viewPager.setCurrentItem(stackAdapter.getCount());
});
});
}
@@ -248,7 +218,7 @@ public class MainActivity extends DrawerActivity implements
b.setColor(colorToSet);
observeOnce(syncManager.createBoard(account.getId(), b), this, board -> {
if (board == null) {
- Snackbar.make(coordinatorLayout, "Open Deck in web interface first!", Snackbar.LENGTH_LONG);
+ Snackbar.make(binding.coordinatorLayout, "Open Deck in web interface first!", Snackbar.LENGTH_LONG);
} else {
boardsList.add(board.getBoard());
currentBoardId = board.getLocalId();
@@ -302,8 +272,8 @@ public class MainActivity extends DrawerActivity implements
@Override
protected void buildSidenavMenu() {
- navigationView.setItemIconTintList(null);
- Menu menu = navigationView.getMenu();
+ binding.navigationView.setItemIconTintList(null);
+ Menu menu = binding.navigationView.getMenu();
menu.clear();
SubMenu boardsMenu = menu.addSubMenu(simpleBoards);
if (boardsList != null) {
@@ -333,7 +303,7 @@ public class MainActivity extends DrawerActivity implements
break;
case R.id.archive_board:
// TODO implement
- Snackbar.make(drawer, "Archiving boards is not yet supported.", Snackbar.LENGTH_LONG).show();
+ Snackbar.make(binding.drawerLayout, "Archiving boards is not yet supported.", Snackbar.LENGTH_LONG).show();
break;
case R.id.delete_board:
new DeleteDialogBuilder(this)
@@ -351,7 +321,7 @@ public class MainActivity extends DrawerActivity implements
}
}
syncManager.deleteBoard(board);
- drawer.closeDrawer(GravityCompat.START);
+ binding.drawerLayout.closeDrawer(GravityCompat.START);
})
.setNegativeButton(android.R.string.cancel, (dialog, which) -> {
})
@@ -399,33 +369,33 @@ public class MainActivity extends DrawerActivity implements
* @param board Board
*/
private void displayStacksForBoard(Board board, Account account) {
- toolbar.setTitle(board.getTitle());
+ binding.toolbar.setTitle(board.getTitle());
currentBoardHasEditPermission = board.isPermissionEdit();
if (currentBoardHasEditPermission) {
- fab.show();
- addStackButton.setVisibility(View.VISIBLE);
+ binding.fab.show();
+ binding.addStackButton.setVisibility(View.VISIBLE);
} else {
- fab.hide();
- addStackButton.setVisibility(View.GONE);
- emptyContentView.hideDescription();
+ binding.fab.hide();
+ binding.addStackButton.setVisibility(View.GONE);
+ binding.emptyContentView.hideDescription();
}
syncManager.getStacksForBoard(account.getId(), board.getLocalId()).observe(MainActivity.this, (List<FullStack> fullStacks) -> {
if (fullStacks == null) {
- emptyContentView.setVisibility(View.VISIBLE);
+ binding.emptyContentView.setVisibility(View.VISIBLE);
currentBoardHasStacks = false;
} else {
- emptyContentView.setVisibility(View.GONE);
+ binding.emptyContentView.setVisibility(View.GONE);
currentBoardHasStacks = true;
long savedStackId = sharedPreferences.getLong(sharedPreferencesLastStackForAccountAndBoard_ + account.getId() + "_" + this.currentBoardId, NO_STACKS);
DeckLog.log("--- Read: shared_preference_last_stack_for_account_and_board" + account.getId() + "_" + this.currentBoardId + " | " + savedStackId);
if (fullStacks.size() == 0) {
- emptyContentView.setVisibility(View.VISIBLE);
+ binding.emptyContentView.setVisibility(View.VISIBLE);
currentBoardHasStacks = false;
} else {
- emptyContentView.setVisibility(View.GONE);
+ binding.emptyContentView.setVisibility(View.GONE);
currentBoardHasStacks = true;
}
@@ -439,12 +409,12 @@ public class MainActivity extends DrawerActivity implements
}
stackAdapter = newStackAdapter;
runOnUiThread(() -> {
- viewPager.setAdapter(newStackAdapter);
+ binding.viewPager.setAdapter(newStackAdapter);
- new TabLayoutHelper(stackLayout, viewPager).setAutoAdjustTabModeEnabled(true);
+ new TabLayoutHelper(binding.stackLayout, binding.viewPager).setAutoAdjustTabModeEnabled(true);
- viewPager.setCurrentItem(stackPositionInAdapter);
- stackLayout.setupWithViewPager(viewPager);
+ binding.viewPager.setCurrentItem(stackPositionInAdapter);
+ binding.stackLayout.setupWithViewPager(binding.viewPager);
});
}
invalidateOptionsMenu();
@@ -472,7 +442,7 @@ public class MainActivity extends DrawerActivity implements
.setTitle(R.string.action_card_list_delete_column)
.setMessage(R.string.do_you_want_to_delete_the_current_column)
.setPositiveButton(R.string.simple_delete, (dialog, whichButton) -> {
- long stackId = stackAdapter.getItem(viewPager.getCurrentItem()).getStackId();
+ long stackId = stackAdapter.getItem(binding.viewPager.getCurrentItem()).getStackId();
observeOnce(syncManager.getStack(account.getId(), stackId), MainActivity.this, fullStack -> {
DeckLog.log("Delete stack #" + fullStack.getLocalId() + ": " + fullStack.getStack().getTitle());
syncManager.deleteStack(fullStack.getStack());
@@ -482,8 +452,8 @@ public class MainActivity extends DrawerActivity implements
break;
case R.id.action_card_list_rename_column:
// TODO call newInstance with old stack name
- EditStackDialogFragment.newInstance(stackAdapter.getItem(viewPager.getCurrentItem()).getStackId())
- .show(getSupportFragmentManager(), actionCardListRenameColumn);
+ EditStackDialogFragment.newInstance(stackAdapter.getItem(binding.viewPager.getCurrentItem()).getStackId())
+ .show(getSupportFragmentManager(), getString(R.string.action_card_list_rename_column));
break;
}
return super.onOptionsItemSelected(item);
@@ -491,7 +461,7 @@ public class MainActivity extends DrawerActivity implements
private void showFabIfEditPermissionGranted() {
if (currentBoardHasEditPermission) {
- this.fab.show();
+ binding.fab.show();
}
}
@@ -502,6 +472,6 @@ public class MainActivity extends DrawerActivity implements
@Override
public void onScrollDown() {
- this.fab.hide();
+ binding.fab.hide();
}
} \ No newline at end of file
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 245587678..d9ff21328 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -19,7 +19,7 @@
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<it.niedermann.nextcloud.deck.ui.helper.emptycontentview.EmptyContentView
- android:id="@+id/no_stacks"
+ android:id="@+id/empty_content_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone"
@@ -73,7 +73,7 @@
app:tabTextColor="@android:color/white" />
<androidx.appcompat.widget.AppCompatImageButton
- android:id="@+id/add_stack"
+ android:id="@+id/add_stack_button"
android:layout_width="48dp"
android:layout_height="match_parent"
android:background="?android:selectableItemBackground"