use of co.krypt.krypton.approval.ApprovalsFragment in project krypton-android by kryptco.
the class DeviceDetailFragment method onCreateView.
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_device_detail, container, false);
final Pairing pairing = Silo.shared(getContext()).pairings().getPairing(pairingUUID);
if (pairing == null) {
return view;
}
View deviceCardView = inflater.inflate(R.layout.device_card, container, false);
TextView deviceName = (TextView) deviceCardView.findViewById(R.id.deviceName);
deviceName.setText(pairing.workstationName);
manualButton = (RadioButton) deviceCardView.findViewById(R.id.alwaysAsk);
automaticButton = (RadioButton) deviceCardView.findViewById(R.id.automaticApprovalButton);
viewTemporaryApprovalsButton = deviceCardView.findViewById(R.id.temporaryApprovalsViewButton);
viewTemporaryApprovalsButton.setOnClickListener(v -> {
ApprovalsFragment f = ApprovalsFragment.newInstance(pairing.uuid);
getFragmentManager().beginTransaction().setCustomAnimations(R.anim.enter_from_right_fast, R.anim.exit_to_right_fast, R.anim.enter_from_right_fast, R.anim.exit_to_right_fast).addToBackStack(null).add(R.id.childFragmentContainer, f).commit();
});
resetTemporaryApprovalsButton = deviceCardView.findViewById(R.id.temporaryApprovalsResetButton);
resetTemporaryApprovalsButton.setOnClickListener(v -> {
try {
Approval.deleteApprovalsForPairing(Silo.shared(v.getContext()).pairings().dbHelper.getApprovalDao(), pairing.uuid);
} catch (SQLException e) {
e.printStackTrace();
}
});
temporaryApprovalsContainer = deviceCardView.findViewById(R.id.temporaryApprovalsContainer);
updateApprovalButtons();
unpairButton = (Button) deviceCardView.findViewById(R.id.unpairButton);
unpairButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Silo.shared(v.getContext()).unpair(pairing, true);
new Analytics(getContext()).postEvent("device", "unpair", null, null, false);
getFragmentManager().popBackStackImmediate();
}
});
final SwitchCompat askUnknownHostsSwitch = (SwitchCompat) deviceCardView.findViewById(R.id.requireUnknownHostApprovalSwitch);
askUnknownHostsSwitch.setChecked(new Pairings(getContext()).requireUnknownHostManualApproval(pairing));
askUnknownHostsSwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
new Pairings(getContext()).setRequireUnknownHostManualApproval(pairing, isChecked);
}
});
signatureLogAdapter.deviceCardView.set(deviceCardView);
RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.list);
Context context = recyclerView.getContext();
if (mColumnCount <= 1) {
recyclerView.setLayoutManager(new LinearLayoutManager(context));
} else {
recyclerView.setLayoutManager(new GridLayoutManager(context, mColumnCount));
}
recyclerView.setAdapter(signatureLogAdapter);
onDeviceLogReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
signatureLogAdapter.setLogs(Silo.shared(getContext()).pairings().getAllLogsTimeDescending(pairingUUID));
}
};
IntentFilter filter = new IntentFilter();
filter.addAction(Pairings.ON_DEVICE_LOG_ACTION);
LocalBroadcastManager.getInstance(context).registerReceiver(onDeviceLogReceiver, filter);
Silo.shared(getContext()).pairings().registerOnSharedPreferenceChangedListener(this);
return view;
}
Aggregations