// Path: app/src/main/java/ee/ioc/phon/android/speak/fragment/K6neleListFragment.java
// public abstract class K6neleListFragment extends ListFragment {
// 
//     protected void toast(String message) {
//         Toast.makeText(getActivity(), message, Toast.LENGTH_LONG).show();
//     }
// 
//     protected void setEmptyView(String text) {
//         ListView lv = getListView();
//         TextView emptyView = (TextView) getActivity().getLayoutInflater().inflate(R.layout.empty_list, null);
//         emptyView.setText(text);
//         emptyView.setVisibility(View.GONE);
//         ((ViewGroup) lv.getParent()).addView(emptyView);
//         lv.setEmptyView(emptyView);
//     }
// }
// 
// Path: app/src/main/java/ee/ioc/phon/android/speak/model/Combo.java
// public class Combo {
// 
//     public static final Comparator SORT_BY_LANGUAGE = new SortByLanguage();
//     public static final Comparator SORT_BY_SELECTED_BY_LANGUAGE = new SortBySelectedByLanguage();
// 
//     private final String mId;
//     private final String mServiceLabel;
//     private final String mAsString;
//     private final ComponentName mComponentName;
//     private final String mLocaleLongLabel;
//     private final String mLocaleAsStr;
//     private final String mShortLabel;
//     private final String mLongLabel;
//     private boolean mIsSelected;
// 
//     public Combo(Context context, String id) {
//         // Can return <null, "">
//         Pair<ComponentName, String> pair = RecognitionServiceManager.unflattenFromString(id);
//         mId = id;
//         mComponentName = pair.first;
//         mLocaleAsStr = pair.second;
//         mServiceLabel = RecognitionServiceManager.getServiceLabel(context, mComponentName);
//         if (mLocaleAsStr.isEmpty() || "und".equals(mLocaleAsStr)) {
//             mLocaleLongLabel = "";
//             mAsString = String.format(context.getString(R.string.labelComboListItemWithoutLocale), mServiceLabel);
//             mShortLabel = mServiceLabel;
//             mLongLabel = mServiceLabel;
//         } else {
//             mLocaleLongLabel = RecognitionServiceManager.makeLangLabel(mLocaleAsStr);
//             mAsString = String.format(context.getString(R.string.labelComboListItem), mServiceLabel, mLocaleLongLabel);
//             String mFormatLabelComboItem = context.getString(R.string.labelComboItem);
//             mShortLabel = String.format(mFormatLabelComboItem, mServiceLabel, mLocaleAsStr);
//             mLongLabel = String.format(mFormatLabelComboItem, mServiceLabel, mLocaleLongLabel);
//         }
//     }
// 
//     public String getId() {
//         return mId;
//     }
// 
//     public ComponentName getServiceComponent() {
//         return mComponentName;
//     }
// 
//     public String getLocaleAsStr() {
//         return mLocaleAsStr;
//     }
// 
//     public String getService() {
//         return mServiceLabel;
//     }
// 
//     public String getLanguage() {
//         return mLocaleLongLabel;
//     }
// 
//     public String getShortLabel() {
//         return mShortLabel;
//     }
// 
//     public String getLongLabel() {
//         return mLongLabel;
//     }
// 
//     public Drawable getIcon(Context context) {
//         return RecognitionServiceManager.getServiceIcon(context, mComponentName);
//     }
// 
//     public String toString() {
//         return mAsString;
//     }
// 
//     public boolean isSelected() {
//         return mIsSelected;
//     }
// 
//     public void setSelected(boolean b) {
//         mIsSelected = b;
//     }
// 
//     private static class SortByLanguage implements Comparator {
// 
//         public int compare(Object o1, Object o2) {
//             Combo c1 = (Combo) o1;
//             Combo c2 = (Combo) o2;
//             return c1.getLanguage().compareToIgnoreCase(c2.getLanguage());
//         }
//     }
// 
//     private static class SortBySelectedByLanguage implements Comparator {
// 
//         public int compare(Object o1, Object o2) {
//             Combo c1 = (Combo) o1;
//             Combo c2 = (Combo) o2;
//             if (c1.isSelected() && c2.isSelected() || !c1.isSelected() && !c2.isSelected()) {
//                 return c1.getLanguage().compareToIgnoreCase(c2.getLanguage());
//             }
//             if (c1.isSelected()) return -1;
//             return 1;
//         }
//     }
// }


import android.app.Activity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.CheckBox;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import java.util.List;
import ee.ioc.phon.android.speak.R;
import ee.ioc.phon.android.speak.fragment.K6neleListFragment;
import ee.ioc.phon.android.speak.model.Combo;
package ee.ioc.phon.android.speak.adapter;





public class ComboAdapter extends ArrayAdapter<Combo> {

    private final List<Combo> list;
    private final Activity context;

// Path: app/src/main/java/ee/ioc/phon/android/speak/fragment/K6neleListFragment.java
// public abstract class K6neleListFragment extends ListFragment {
// 
//     protected void toast(String message) {
//         Toast.makeText(getActivity(), message, Toast.LENGTH_LONG).show();
//     }
// 
//     protected void setEmptyView(String text) {
//         ListView lv = getListView();
//         TextView emptyView = (TextView) getActivity().getLayoutInflater().inflate(R.layout.empty_list, null);
//         emptyView.setText(text);
//         emptyView.setVisibility(View.GONE);
//         ((ViewGroup) lv.getParent()).addView(emptyView);
//         lv.setEmptyView(emptyView);
//     }
// }
// 
// Path: app/src/main/java/ee/ioc/phon/android/speak/model/Combo.java
// public class Combo {
// 
//     public static final Comparator SORT_BY_LANGUAGE = new SortByLanguage();
//     public static final Comparator SORT_BY_SELECTED_BY_LANGUAGE = new SortBySelectedByLanguage();
// 
//     private final String mId;
//     private final String mServiceLabel;
//     private final String mAsString;
//     private final ComponentName mComponentName;
//     private final String mLocaleLongLabel;
//     private final String mLocaleAsStr;
//     private final String mShortLabel;
//     private final String mLongLabel;
//     private boolean mIsSelected;
// 
//     public Combo(Context context, String id) {
//         // Can return <null, "">
//         Pair<ComponentName, String> pair = RecognitionServiceManager.unflattenFromString(id);
//         mId = id;
//         mComponentName = pair.first;
//         mLocaleAsStr = pair.second;
//         mServiceLabel = RecognitionServiceManager.getServiceLabel(context, mComponentName);
//         if (mLocaleAsStr.isEmpty() || "und".equals(mLocaleAsStr)) {
//             mLocaleLongLabel = "";
//             mAsString = String.format(context.getString(R.string.labelComboListItemWithoutLocale), mServiceLabel);
//             mShortLabel = mServiceLabel;
//             mLongLabel = mServiceLabel;
//         } else {
//             mLocaleLongLabel = RecognitionServiceManager.makeLangLabel(mLocaleAsStr);
//             mAsString = String.format(context.getString(R.string.labelComboListItem), mServiceLabel, mLocaleLongLabel);
//             String mFormatLabelComboItem = context.getString(R.string.labelComboItem);
//             mShortLabel = String.format(mFormatLabelComboItem, mServiceLabel, mLocaleAsStr);
//             mLongLabel = String.format(mFormatLabelComboItem, mServiceLabel, mLocaleLongLabel);
//         }
//     }
// 
//     public String getId() {
//         return mId;
//     }
// 
//     public ComponentName getServiceComponent() {
//         return mComponentName;
//     }
// 
//     public String getLocaleAsStr() {
//         return mLocaleAsStr;
//     }
// 
//     public String getService() {
//         return mServiceLabel;
//     }
// 
//     public String getLanguage() {
//         return mLocaleLongLabel;
//     }
// 
//     public String getShortLabel() {
//         return mShortLabel;
//     }
// 
//     public String getLongLabel() {
//         return mLongLabel;
//     }
// 
//     public Drawable getIcon(Context context) {
//         return RecognitionServiceManager.getServiceIcon(context, mComponentName);
//     }
// 
//     public String toString() {
//         return mAsString;
//     }
// 
//     public boolean isSelected() {
//         return mIsSelected;
//     }
// 
//     public void setSelected(boolean b) {
//         mIsSelected = b;
//     }
// 
//     private static class SortByLanguage implements Comparator {
// 
//         public int compare(Object o1, Object o2) {
//             Combo c1 = (Combo) o1;
//             Combo c2 = (Combo) o2;
//             return c1.getLanguage().compareToIgnoreCase(c2.getLanguage());
//         }
//     }
// 
//     private static class SortBySelectedByLanguage implements Comparator {
// 
//         public int compare(Object o1, Object o2) {
//             Combo c1 = (Combo) o1;
//             Combo c2 = (Combo) o2;
//             if (c1.isSelected() && c2.isSelected() || !c1.isSelected() && !c2.isSelected()) {
//                 return c1.getLanguage().compareToIgnoreCase(c2.getLanguage());
//             }
//             if (c1.isSelected()) return -1;
//             return 1;
//         }
//     }
// }


// Path: app/src/main/java/ee/ioc/phon/android/speak/adapter/ComboAdapter.java
import android.app.Activity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.CheckBox;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import java.util.List;
import ee.ioc.phon.android.speak.R;
import ee.ioc.phon.android.speak.fragment.K6neleListFragment;
import ee.ioc.phon.android.speak.model.Combo;

package ee.ioc.phon.android.speak.adapter;





public class ComboAdapter extends ArrayAdapter<Combo> {

    private final List<Combo> list;
    private final Activity context;

    public ComboAdapter(K6neleListFragment context, List<Combo> list) {