Increment: Add cancelSearch() method

For disconnecting a connection to an erroneous peer device
This commit is contained in:
Aditya-Sood 2019-06-27 01:05:22 +05:30
parent 99b93659f2
commit 26c92ee64e
3 changed files with 36 additions and 40 deletions

View File

@ -363,7 +363,7 @@ public class DeviceListFragment extends ListFragment implements WifiP2pManager.P
/*void showDetails(WifiP2pDevice device);*/
void cancelDisconnect();
void cancelSearch();
void connect(WifiP2pDevice peerDevice);

View File

@ -208,11 +208,12 @@ public class LocalFileTransferActivity extends AppCompatActivity implements Wifi
});
return true;
} else if(item.getItemId() == R.id.menu_item_disconnect) {
} else if(item.getItemId() == R.id.menu_item_cancel_search) {
if(manager != null) {
// TODO: 'cancelDisconnect', for removing the indefinite progress bar
// TODO: 'cancelDisconnect', for removing incorrect connections
//removeGroupDetails();
disconnect();
//disconnect();
cancelSearch();
}
@ -556,8 +557,35 @@ public class LocalFileTransferActivity extends AppCompatActivity implements Wifi
}*/
@Override
public void cancelDisconnect() {
//TODO
public void cancelSearch() {
if (manager != null) {
final DeviceListFragment fragment = (DeviceListFragment) getSupportFragmentManager().findFragmentById(R.id.fragment_device_list);
if (fragment.getUserDevice() == null
|| fragment.getUserDevice().status == WifiP2pDevice.CONNECTED) {
disconnect();
} else if (fragment.getUserDevice().status == WifiP2pDevice.AVAILABLE
|| fragment.getUserDevice().status == WifiP2pDevice.INVITED) {
manager.cancelConnect(channel, new WifiP2pManager.ActionListener() {
@Override
public void onSuccess() {
Toast.makeText(LocalFileTransferActivity.this, "Aborting connection",
Toast.LENGTH_SHORT).show();
}
@Override
public void onFailure(int reasonCode) {
Toast.makeText(LocalFileTransferActivity.this,
"Connect abort request failed. Reason : " + getErrorMessage(reasonCode),
Toast.LENGTH_SHORT).show();
}
});
}
}
}
@Override
@ -621,35 +649,3 @@ public class LocalFileTransferActivity extends AppCompatActivity implements Wifi
closeLocalFileTransferActivity();
}
}
/*
@Override
public void disconnect() {
fileSendingDevice = false;
//TODO
manager.removeGroup(channel, new DisconnectActionListener(this));
Toast.makeText(this, "Disconnecting devices...", Toast.LENGTH_LONG).show();
}
class DisconnectActionListener implements WifiP2pManager.ActionListener {
private LocalFileTransferActivity parentActivity;
public DisconnectActionListener(LocalFileTransferActivity parentActivity) {
this.parentActivity = parentActivity;
}
@Override
public void onSuccess() {
Log.d(TAG, "Disconnect successful");
parentActivity.finish();
}
@Override
public void onFailure(int reasonCode) {
Log.d(TAG, "Disconnect failed. Reason :" + reasonCode);
}
}
*/

View File

@ -4,8 +4,8 @@
xmlns:tools="http://schemas.android.com/tools"
tools:context=".zim_manager.local_file_transfer.LocalFileTransferActivity">
<item android:id="@+id/menu_item_disconnect"
android:title="Disconnect"
<item android:id="@+id/menu_item_cancel_search"
android:title="Cancel Search"
app:showAsAction="always"
android:icon="@drawable/ic_baseline_cancel_24px" />