Fixed two-pane tunnel deletion
This commit is contained in:
@ -22,7 +22,7 @@ public class TunnelDetailActivity extends I2PActivityBase implements
|
||||
|
||||
// TunnelDetailFragment.OnTunnelDeletedListener
|
||||
|
||||
public void onTunnelDeleted() {
|
||||
public void onTunnelDeleted(int tunnelId, int numTunnelsLeft) {
|
||||
finish();
|
||||
}
|
||||
}
|
||||
|
@ -86,7 +86,19 @@ public class TunnelListActivity extends I2PActivityBase implements
|
||||
|
||||
// TunnelDetailFragment.OnTunnelDeletedListener
|
||||
|
||||
public void onTunnelDeleted() {
|
||||
getSupportFragmentManager().popBackStack();
|
||||
public void onTunnelDeleted(int tunnelId, int numTunnelsLeft) {
|
||||
// Should only get here in two-pane mode, but just to be safe:
|
||||
if (mTwoPane) {
|
||||
if (numTunnelsLeft > 0) {
|
||||
TunnelDetailFragment detailFrag = TunnelDetailFragment.newInstance(
|
||||
(tunnelId > 0 ? tunnelId - 1 : 0));
|
||||
getSupportFragmentManager().beginTransaction()
|
||||
.replace(R.id.detail_fragment, detailFrag).commit();
|
||||
} else {
|
||||
TunnelDetailFragment detailFrag = (TunnelDetailFragment) getSupportFragmentManager().findFragmentById(R.id.detail_fragment);
|
||||
getSupportFragmentManager().beginTransaction()
|
||||
.remove(detailFrag).commit();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -42,7 +42,7 @@ public class TunnelDetailFragment extends Fragment {
|
||||
|
||||
// Container Activity must implement this interface
|
||||
public interface OnTunnelDeletedListener {
|
||||
public void onTunnelDeleted();
|
||||
public void onTunnelDeleted(int tunnelId, int numTunnelsLeft);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -133,7 +133,8 @@ public class TunnelDetailFragment extends Fragment {
|
||||
dialog.dismiss();
|
||||
Toast.makeText(getActivity().getApplicationContext(),
|
||||
msgs.get(0), Toast.LENGTH_LONG).show();
|
||||
mCallback.onTunnelDeleted();
|
||||
mCallback.onTunnelDeleted(mTunnel.getId(),
|
||||
mGroup.getControllers().size());
|
||||
}
|
||||
})
|
||||
.setNegativeButton(android.R.string.cancel, null)
|
||||
|
Reference in New Issue
Block a user