I2P Address: [http://git.idk.i2p]

Skip to content
Snippets Groups Projects
Commit b7dfc45b authored by str4d's avatar str4d
Browse files

Prep for I2PTunnel details fragment

parent bd0ebc88
No related branches found
No related tags found
No related merge requests found
...@@ -13,8 +13,8 @@ import android.view.Menu; ...@@ -13,8 +13,8 @@ import android.view.Menu;
import android.view.MenuItem; import android.view.MenuItem;
public class AddressbookActivity extends I2PActivityBase public class AddressbookActivity extends I2PActivityBase
implements AddressbookFragment.OnAddressSelectedListener, implements AddressbookFragment.OnAddressSelectedListener,
SearchView.OnQueryTextListener { SearchView.OnQueryTextListener {
@Override @Override
public void onCreate(Bundle savedInstanceState) { public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
......
...@@ -2,12 +2,14 @@ package net.i2p.android.router.activity; ...@@ -2,12 +2,14 @@ package net.i2p.android.router.activity;
import net.i2p.android.router.R; import net.i2p.android.router.R;
import net.i2p.android.router.fragment.I2PTunnelFragment; import net.i2p.android.router.fragment.I2PTunnelFragment;
import net.i2p.android.router.loader.TunnelEntry;
import android.os.Bundle; import android.os.Bundle;
import android.support.v4.app.Fragment; import android.support.v4.app.Fragment;
import android.support.v7.app.ActionBar; import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBar.Tab; import android.support.v7.app.ActionBar.Tab;
public class I2PTunnelActivity extends I2PActivityBase { public class I2PTunnelActivity extends I2PActivityBase
implements I2PTunnelFragment.OnTunnelSelectedListener {
@Override @Override
public void onCreate(Bundle savedInstanceState) { public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
...@@ -36,4 +38,9 @@ public class I2PTunnelActivity extends I2PActivityBase { ...@@ -36,4 +38,9 @@ public class I2PTunnelActivity extends I2PActivityBase {
.setTabListener(new TabListener(f)); .setTabListener(new TabListener(f));
actionBar.addTab(tab); actionBar.addTab(tab);
} }
// I2PTunnelFragment.OnTunnelSelectedListener
public void onTunnelSelected(TunnelEntry tunnel) {
}
} }
...@@ -7,6 +7,7 @@ import net.i2p.android.router.adapter.TunnelEntryAdapter; ...@@ -7,6 +7,7 @@ import net.i2p.android.router.adapter.TunnelEntryAdapter;
import net.i2p.android.router.loader.TunnelEntryLoader; import net.i2p.android.router.loader.TunnelEntryLoader;
import net.i2p.android.router.loader.TunnelEntry; import net.i2p.android.router.loader.TunnelEntry;
import net.i2p.i2ptunnel.TunnelControllerGroup; import net.i2p.i2ptunnel.TunnelControllerGroup;
import android.app.Activity;
import android.os.Bundle; import android.os.Bundle;
import android.support.v4.app.ListFragment; import android.support.v4.app.ListFragment;
import android.support.v4.app.LoaderManager; import android.support.v4.app.LoaderManager;
...@@ -14,6 +15,8 @@ import android.support.v4.content.Loader; ...@@ -14,6 +15,8 @@ import android.support.v4.content.Loader;
import android.view.Menu; import android.view.Menu;
import android.view.MenuInflater; import android.view.MenuInflater;
import android.view.MenuItem; import android.view.MenuItem;
import android.view.View;
import android.widget.ListView;
public class I2PTunnelFragment extends ListFragment public class I2PTunnelFragment extends ListFragment
implements LoaderManager.LoaderCallbacks<List<TunnelEntry>> { implements LoaderManager.LoaderCallbacks<List<TunnelEntry>> {
...@@ -22,10 +25,31 @@ public class I2PTunnelFragment extends ListFragment ...@@ -22,10 +25,31 @@ public class I2PTunnelFragment extends ListFragment
private static final int CLIENT_LOADER_ID = 1; private static final int CLIENT_LOADER_ID = 1;
private static final int SERVER_LOADER_ID = 2; private static final int SERVER_LOADER_ID = 2;
OnTunnelSelectedListener mCallback;
private TunnelControllerGroup mGroup; private TunnelControllerGroup mGroup;
private TunnelEntryAdapter mAdapter; private TunnelEntryAdapter mAdapter;
private boolean mClientTunnels; private boolean mClientTunnels;
// Container Activity must implement this interface
public interface OnTunnelSelectedListener {
public void onTunnelSelected(TunnelEntry host);
}
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
// This makes sure that the container activity has implemented
// the callback interface. If not, it throws an exception
try {
mCallback = (OnTunnelSelectedListener) activity;
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString()
+ " must implement OnTunnelSelectedListener");
}
}
@Override @Override
public void onCreate(Bundle savedInstanceState) { public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
...@@ -63,6 +87,29 @@ public class I2PTunnelFragment extends ListFragment ...@@ -63,6 +87,29 @@ public class I2PTunnelFragment extends ListFragment
: SERVER_LOADER_ID, null, this); : SERVER_LOADER_ID, null, this);
} }
@Override
public void onListItemClick(ListView parent, View view, int pos, long id) {
mCallback.onTunnelSelected(mAdapter.getItem(pos));
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.fragment_i2ptunnel_actions, menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle presses on the action bar items
switch (item.getItemId()) {
case R.id.action_add_tunnel:
return true;
default:
return super.onOptionsItemSelected(item);
}
}
// LoaderManager.LoaderCallbacks<List<TunnelEntry>>
public Loader<List<TunnelEntry>> onCreateLoader(int id, Bundle args) { public Loader<List<TunnelEntry>> onCreateLoader(int id, Bundle args) {
return new TunnelEntryLoader(getActivity(), mGroup, mClientTunnels); return new TunnelEntryLoader(getActivity(), mGroup, mClientTunnels);
} }
...@@ -87,20 +134,4 @@ public class I2PTunnelFragment extends ListFragment ...@@ -87,20 +134,4 @@ public class I2PTunnelFragment extends ListFragment
mAdapter.setData(null); mAdapter.setData(null);
} }
} }
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.fragment_i2ptunnel_actions, menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle presses on the action bar items
switch (item.getItemId()) {
case R.id.action_add_tunnel:
return true;
default:
return super.onOptionsItemSelected(item);
}
}
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment