Fixed two-pane tunnel deletion
This commit is contained in:
@ -22,7 +22,7 @@ public class TunnelDetailActivity extends I2PActivityBase implements
|
|||||||
|
|
||||||
// TunnelDetailFragment.OnTunnelDeletedListener
|
// TunnelDetailFragment.OnTunnelDeletedListener
|
||||||
|
|
||||||
public void onTunnelDeleted() {
|
public void onTunnelDeleted(int tunnelId, int numTunnelsLeft) {
|
||||||
finish();
|
finish();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -86,7 +86,19 @@ public class TunnelListActivity extends I2PActivityBase implements
|
|||||||
|
|
||||||
// TunnelDetailFragment.OnTunnelDeletedListener
|
// TunnelDetailFragment.OnTunnelDeletedListener
|
||||||
|
|
||||||
public void onTunnelDeleted() {
|
public void onTunnelDeleted(int tunnelId, int numTunnelsLeft) {
|
||||||
getSupportFragmentManager().popBackStack();
|
// 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
|
// Container Activity must implement this interface
|
||||||
public interface OnTunnelDeletedListener {
|
public interface OnTunnelDeletedListener {
|
||||||
public void onTunnelDeleted();
|
public void onTunnelDeleted(int tunnelId, int numTunnelsLeft);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -133,7 +133,8 @@ public class TunnelDetailFragment extends Fragment {
|
|||||||
dialog.dismiss();
|
dialog.dismiss();
|
||||||
Toast.makeText(getActivity().getApplicationContext(),
|
Toast.makeText(getActivity().getApplicationContext(),
|
||||||
msgs.get(0), Toast.LENGTH_LONG).show();
|
msgs.get(0), Toast.LENGTH_LONG).show();
|
||||||
mCallback.onTunnelDeleted();
|
mCallback.onTunnelDeleted(mTunnel.getId(),
|
||||||
|
mGroup.getControllers().size());
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.setNegativeButton(android.R.string.cancel, null)
|
.setNegativeButton(android.R.string.cancel, null)
|
||||||
|
Reference in New Issue
Block a user