File indexing completed on 2025-02-02 04:47:53

0001 /*
0002  * SPDX-FileCopyrightText: 2014 Albert Vaca Cintora <albertvaka@gmail.com>
0003  *
0004  * SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005 */
0006 
0007 package org.kde.kdeconnect.UserInterface.List;
0008 
0009 import android.view.LayoutInflater;
0010 import android.view.View;
0011 
0012 import androidx.annotation.NonNull;
0013 
0014 import org.kde.kdeconnect.Device;
0015 import org.kde.kdeconnect_tp.R;
0016 import org.kde.kdeconnect_tp.databinding.ListItemWithIconEntryBinding;
0017 
0018 public class PairingDeviceItem implements ListAdapter.Item {
0019 
0020     public interface Callback {
0021         void pairingClicked(Device d);
0022     }
0023 
0024     private final Callback callback;
0025     private final Device device;
0026 
0027     public PairingDeviceItem(Device device, Callback callback) {
0028         this.device = device;
0029         this.callback = callback;
0030     }
0031 
0032     public Device getDevice() {
0033         return this.device;
0034     }
0035 
0036     @NonNull
0037     @Override
0038     public View inflateView(@NonNull LayoutInflater layoutInflater) {
0039         final ListItemWithIconEntryBinding binding = ListItemWithIconEntryBinding.inflate(layoutInflater);
0040 
0041         binding.listItemEntryIcon.setImageDrawable(device.getIcon());
0042 //        binding.listItemEntryTitle.setText(device.getName() + " " + device.getConnectivityType());
0043         binding.listItemEntryTitle.setText(device.getName());
0044 
0045         if (device.compareProtocolVersion() != 0) {
0046             if (device.compareProtocolVersion() > 0) {
0047                 binding.listItemEntrySummary.setText(R.string.protocol_version_newer);
0048                 binding.listItemEntrySummary.setVisibility(View.VISIBLE);
0049             } else {
0050                 //FIXME: Uncoment when we decide old versions are old enough to notify the user.
0051                 binding.listItemEntrySummary.setVisibility(View.GONE);
0052                 /*
0053                 summaryView.setText(R.string.protocol_version_older);
0054                 summaryView.setVisibility(View.VISIBLE);
0055                 */
0056             }
0057         } else {
0058             binding.listItemEntrySummary.setVisibility(View.GONE);
0059         }
0060 
0061         binding.getRoot().setOnClickListener(v1 -> callback.pairingClicked(device));
0062 
0063         return binding.getRoot();
0064     }
0065 
0066 }