From 0f97a2e8e52e144f281c1fef4e6b8f524f4f0537 Mon Sep 17 00:00:00 2001 From: Aditya-Sood Date: Sun, 11 Aug 2019 15:05:48 +0530 Subject: [PATCH] Refactor logic for using WDM.sendToDevice() --- .../LocalFileTransferActivity.java | 11 ----------- .../local_file_transfer/WifiDirectManager.java | 10 +++++++--- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/local_file_transfer/LocalFileTransferActivity.java b/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/local_file_transfer/LocalFileTransferActivity.java index 5d7ae0766..3356564ee 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/local_file_transfer/LocalFileTransferActivity.java +++ b/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/local_file_transfer/LocalFileTransferActivity.java @@ -91,7 +91,6 @@ public class LocalFileTransferActivity extends AppCompatActivity implements private FileListAdapter fileListAdapter; private List availablePeerDevices = new ArrayList(); - private boolean hasSenderStartedConnection = false; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { @@ -141,11 +140,6 @@ public class LocalFileTransferActivity extends AppCompatActivity implements @OnItemClick(R.id.list_peer_devices) void onItemClick(int position) { - /* Connection can only be initiated by user of the sender device, & only when transfer has not been started */ - if (!isFileSender || hasSenderStartedConnection) { - return; - } - WifiP2pDevice senderSelectedPeerDevice = (WifiP2pDevice) listViewPeerDevices.getAdapter().getItem(position); wifiDirectManager.sendToDevice(senderSelectedPeerDevice); @@ -222,11 +216,6 @@ public class LocalFileTransferActivity extends AppCompatActivity implements textViewPeerDevices.setVisibility(View.INVISIBLE); } - @Override - public void onSenderStartedConnection() { - this.hasSenderStartedConnection = true; - } - @Override public void onFileStatusChanged(int itemIndex) { fileListAdapter.notifyItemChanged(itemIndex); diff --git a/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/local_file_transfer/WifiDirectManager.java b/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/local_file_transfer/WifiDirectManager.java index af622599c..7a26ae71f 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/local_file_transfer/WifiDirectManager.java +++ b/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/local_file_transfer/WifiDirectManager.java @@ -75,6 +75,7 @@ public class WifiDirectManager implements WifiP2pManager.ChannelListener, WifiP2 private ArrayList fileUriArrayList; // For sender device, stores uris of the files private boolean isFileSender = false; // Whether the device is the file sender or not + private boolean hasSenderStartedConnection = false; public WifiDirectManager(@NonNull LocalFileTransferActivity activity) { this.activity = activity; @@ -219,13 +220,18 @@ public class WifiDirectManager implements WifiP2pManager.ChannelListener, WifiP2 } public void sendToDevice(@NonNull WifiP2pDevice senderSelectedPeerDevice) { + /* Connection can only be initiated by user of the sender device, & only when transfer has not been started */ + if (!isFileSender || hasSenderStartedConnection) { + return; + } + this.senderSelectedPeerDevice = senderSelectedPeerDevice; alertDialogShower.show( new KiwixDialog.FileTransferConfirmation(senderSelectedPeerDevice.deviceName), new Function0() { @Override public Unit invoke() { - ((Callbacks) activity).onSenderStartedConnection(); + hasSenderStartedConnection = true; connect(); displayToast(R.string.performing_handshake, Toast.LENGTH_LONG); return Unit.INSTANCE; @@ -466,8 +472,6 @@ public class WifiDirectManager implements WifiP2pManager.ChannelListener, WifiP2 void updateListOfAvailablePeers(@NonNull WifiP2pDeviceList peers); - void onSenderStartedConnection(); - void onFilesForTransferAvailable(@NonNull ArrayList filesForTransfer); void onFileStatusChanged(int itemIndex);