+ FloatingActionButton fab = context.findViewById(R.id.fab);
+ fab.setOnClickListener(v -> onSaveFabClicked());
+ profileName = context.findViewById(R.id.profile_name);
+ profileNameLayout = context.findViewById(R.id.profile_name_layout);
+ url = context.findViewById(R.id.url);
+ urlLayout = context.findViewById(R.id.url_layout);
+ postingPermitted = context.findViewById(R.id.profile_permit_posting);
+ futureDatesLayout = context.findViewById(R.id.future_dates_layout);
+ futureDatesText = context.findViewById(R.id.future_dates_text);
+ context.findViewById(R.id.future_dates_layout)
+ .setOnClickListener(v -> {
+ MenuInflater mi = new MenuInflater(context);
+ PopupMenu menu = new PopupMenu(context, v);
+ menu.inflate(R.menu.future_dates);
+ menu.setOnMenuItemClickListener(item -> {
+ switch (item.getItemId()) {
+ case R.id.menu_future_dates_30:
+ futureDates = MobileLedgerProfile.FutureDates.OneMonth;
+ break;
+ case R.id.menu_future_dates_60:
+ futureDates = MobileLedgerProfile.FutureDates.TwoMonths;
+ break;
+ case R.id.menu_future_dates_90:
+ futureDates = MobileLedgerProfile.FutureDates.ThreeMonths;
+ break;
+ case R.id.menu_future_dates_180:
+ futureDates = MobileLedgerProfile.FutureDates.SixMonths;
+ break;
+ case R.id.menu_future_dates_365:
+ futureDates = MobileLedgerProfile.FutureDates.OneYear;
+ break;
+ case R.id.menu_future_dates_all:
+ futureDates = MobileLedgerProfile.FutureDates.All;
+ break;
+ default:
+ futureDates = MobileLedgerProfile.FutureDates.None;
+ }
+ futureDatesText.setText(futureDates.getText(getResources()));
+ return true;
+ });
+ menu.show();
+ });
+ apiVersionLayout = context.findViewById(R.id.api_version_layout);
+ apiVersionText = context.findViewById(R.id.api_version_text);
+ apiVersionLayout.setOnClickListener(v -> {
+ MenuInflater mi = new MenuInflater(context);
+ PopupMenu menu = new PopupMenu(context, v);
+ menu.inflate(R.menu.api_version);
+ menu.setOnMenuItemClickListener(item -> {
+ switch (item.getItemId()) {
+ case R.id.api_version_menu_auto:
+ apiVersion = SendTransactionTask.API.auto;
+ break;
+ case R.id.api_version_menu_html:
+ apiVersion = SendTransactionTask.API.html;
+ break;
+ case R.id.api_version_menu_post_1_14:
+ apiVersion = SendTransactionTask.API.post_1_14;
+ break;
+ case R.id.api_version_menu_pre_1_15:
+ apiVersion = SendTransactionTask.API.pre_1_15;
+ break;
+ default:
+ apiVersion = SendTransactionTask.API.auto;
+ }
+ apiVersionText.setText(apiVersion.getDescription(getResources()));
+ return true;
+ });
+ menu.show();