2 * Copyright (c) 2020 Project CHIP Authors
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
19 package com.google.chip.chiptool.commissioner.thread.internal;
21 import android.app.Activity;
22 import android.os.Bundle;
23 import android.view.LayoutInflater;
24 import android.view.View;
25 import android.view.ViewGroup;
26 import android.widget.Button;
27 import android.widget.ImageView;
28 import android.widget.ProgressBar;
29 import android.widget.TextView;
30 import androidx.annotation.NonNull;
31 import androidx.fragment.app.Fragment;
32 import com.google.chip.chiptool.R;
33 import com.google.chip.chiptool.commissioner.CommissionerActivity;
34 import com.google.chip.chiptool.commissioner.thread.ThreadNetworkCredential;
36 public class CommissioningFragment extends Fragment {
38 private static final String TAG = CommissioningFragment.class.getSimpleName();
40 ThreadNetworkCredential networkCredential;
42 CommissionerActivity commissionerActivity;
45 ProgressBar progressBar;
51 public CommissioningFragment(@NonNull ThreadNetworkCredential networkCredential) {
52 this.networkCredential = networkCredential;
56 public View onCreateView(
57 LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
58 // Inflate the layout for this fragment
59 return inflater.inflate(R.layout.commissioner_commissioning_fragment, container, false);
63 public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
64 super.onViewCreated(view, savedInstanceState);
66 commissionerActivity = (CommissionerActivity) getActivity();
68 cancelButton = view.findViewById(R.id.cancel_button);
69 doneButton = view.findViewById(R.id.done_button);
70 doneImage = view.findViewById(R.id.done_image);
71 errorImage = view.findViewById(R.id.error_image);
72 statusText = view.findViewById(R.id.status_text);
73 progressBar = view.findViewById(R.id.commissioning_progress);
75 view.findViewById(R.id.cancel_button)
78 commissionerActivity.finishCommissioning(Activity.RESULT_CANCELED);
81 view.findViewById(R.id.done_button)
84 commissionerActivity.finishCommissioning(Activity.RESULT_OK);
87 // TODO: commissioning over BLE.
88 showCommissionDone(false, "Commissioning over BLE not implemented yet!");
91 private void showInProgress(String status) {
93 statusText.setText(status);
96 progressBar.setVisibility(View.VISIBLE);
98 cancelButton.setVisibility(View.VISIBLE);
99 doneImage.setVisibility(View.GONE);
100 errorImage.setVisibility(View.GONE);
101 doneButton.setVisibility(View.GONE);
104 private void showCommissionDone(Boolean success, String status) {
105 if (status != null) {
106 statusText.setText(status);
109 progressBar.setVisibility(View.GONE);
110 cancelButton.setVisibility(View.GONE);
111 doneButton.setVisibility(View.VISIBLE);
114 doneImage.setVisibility(View.VISIBLE);
115 errorImage.setVisibility(View.GONE);
117 doneImage.setVisibility(View.GONE);
118 errorImage.setVisibility(View.VISIBLE);