root = view.findViewById(R.id.transaction_root);
if (root == null)
throw new RuntimeException("Can't get hold on the transaction value view");
root = view.findViewById(R.id.transaction_root);
if (root == null)
throw new RuntimeException("Can't get hold on the transaction value view");
vAccountFilter = view.findViewById(R.id.transaction_list_account_name_filter);
accNameFilter = view.findViewById(R.id.transaction_filter_account_name);
vAccountFilter = view.findViewById(R.id.transaction_list_account_name_filter);
accNameFilter = view.findViewById(R.id.transaction_filter_account_name);
accNameFilter.setOnItemClickListener((parent, v, position, id) -> {
// debug("tmp", "direct onItemClick");
model.getAccountFilter()
accNameFilter.setOnItemClickListener((parent, v, position, id) -> {
// debug("tmp", "direct onItemClick");
model.getAccountFilter()
- private void onAccountNameFilterChanged(String accName) {
- final String fieldText = accNameFilter.getText()
- .toString();
- if ((accName == null) && (fieldText.equals("")))
+ private void onProfileChanged(Profile profile) {
+ if (profile == null)
- if (accNameFilter != null) {
- accNameFilter.setText(accName, false);
- }
+ accNameFilter.setAdapter(new AccountAutocompleteAdapter(getContext(), profile));
+ }
+ private void onAccountNameFilterChanged(String accName) {
+ accNameFilter.setText(accName, false);
+
final boolean filterActive = (accName != null) && !accName.isEmpty();
if (vAccountFilter != null) {
vAccountFilter.setVisibility(filterActive ? View.VISIBLE : View.GONE);
}
if (menuTransactionListFilter != null)
menuTransactionListFilter.setVisible(!filterActive);
final boolean filterActive = (accName != null) && !accName.isEmpty();
if (vAccountFilter != null) {
vAccountFilter.setVisibility(filterActive ? View.VISIBLE : View.GONE);
}
if (menuTransactionListFilter != null)
menuTransactionListFilter.setVisible(!filterActive);
- if ((model.getAccountFilter()
- .getValue() != null) || (vAccountFilter.getVisibility() == View.VISIBLE))
- {
- menuTransactionListFilter.setVisible(false);
- }
+ model.getAccountFilter()
+ .observe(this, v -> menuTransactionListFilter.setVisible(v == null));
super.onCreateOptionsMenu(menu, inflater);
menuTransactionListFilter.setOnMenuItemClickListener(item -> {
vAccountFilter.setVisibility(View.VISIBLE);
super.onCreateOptionsMenu(menu, inflater);
menuTransactionListFilter.setOnMenuItemClickListener(item -> {
vAccountFilter.setVisibility(View.VISIBLE);
accNameFilter.requestFocus();
InputMethodManager imm =
(InputMethodManager) getMainActivity().getSystemService(INPUT_METHOD_SERVICE);
accNameFilter.requestFocus();
InputMethodManager imm =
(InputMethodManager) getMainActivity().getSystemService(INPUT_METHOD_SERVICE);