import androidx.activity.result.ActivityResultLauncher;
import androidx.annotation.NonNull;
+import androidx.core.view.MenuCompat;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.ViewModelProvider;
import androidx.navigation.NavController;
navController.navigate(R.id.newTransactionFragment, b);
}
}
- public void simulateCrash(MenuItem item) {
+ public boolean onSimulateCrashMenuItemClicked(MenuItem item) {
debug("crash", "Will crash intentionally");
new AsyncCrasher().execute();
+ return true;
}
public boolean onCreateOptionsMenu(Menu menu) {
+ super.onCreateOptionsMenu(menu);
+
+ if (!BuildConfig.DEBUG)
+ return true;
+
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.new_transaction, menu);
- if (BuildConfig.DEBUG) {
- menu.findItem(R.id.action_simulate_crash)
- .setVisible(true);
- menu.findItem(R.id.action_simulate_save)
- .setVisible(true);
- }
+ MenuCompat.setGroupDividerEnabled(menu, true);
+
+ menu.findItem(R.id.action_simulate_save)
+ .setOnMenuItemClickListener(this::onToggleSimulateSaveMenuItemClicked);
+ menu.findItem(R.id.action_simulate_crash)
+ .setOnMenuItemClickListener(this::onSimulateCrashMenuItemClicked);
model.getSimulateSave()
.observe(this, state -> {
else
navController.navigate(R.id.action_newTransactionSavingFragment_Success, b);
}
- public void toggleSimulateSave(MenuItem item) {
+ public boolean onToggleSimulateSaveMenuItemClicked(MenuItem item) {
model.toggleSimulateSave();
+ return true;
}
@Override
});
}
private void onFabPressed() {
- b.fabAdd.hide();
+ fabManager.hideFab();
Misc.hideSoftKeyboard(this);
LedgerTransaction tr = model.constructLedgerTransaction();