diff options
author | Samuel Holland <samuel@sholland.org> | 2017-08-07 18:51:47 -0500 |
---|---|---|
committer | Samuel Holland <samuel@sholland.org> | 2017-08-07 18:51:47 -0500 |
commit | 2df899eae52591ff46819c960e129a2c698b201e (patch) | |
tree | 6c07d280ea64596a301091ddbdad3be9b528b02e /app/src/main | |
parent | 2154306fcbbc9e52ff1a2cba88f909df2e2ba13e (diff) |
ProfileActivity: Add two-pane master-detail layout
This is designed for tablets, but for testing purposes, it is currently
enabled for all devices in landscape orientation.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'app/src/main')
-rw-r--r-- | app/src/main/java/com/wireguard/android/ProfileActivity.java | 4 | ||||
-rw-r--r-- | app/src/main/res/layout-land/profile_activity.xml | 19 |
2 files changed, 23 insertions, 0 deletions
diff --git a/app/src/main/java/com/wireguard/android/ProfileActivity.java b/app/src/main/java/com/wireguard/android/ProfileActivity.java index 699d394c..040feb23 100644 --- a/app/src/main/java/com/wireguard/android/ProfileActivity.java +++ b/app/src/main/java/com/wireguard/android/ProfileActivity.java @@ -22,6 +22,7 @@ import java.util.List; public class ProfileActivity extends Activity { private final ServiceConnection connection = new ProfileServiceConnection(); + private boolean isSplitLayout; private final List<ServiceConnectionListener> listeners = new ArrayList<>(); private ProfileServiceInterface service; @@ -38,9 +39,12 @@ public class ProfileActivity extends Activity { super.onCreate(savedInstanceState); // This layout consists only of containers for fragments. setContentView(R.layout.profile_activity); + isSplitLayout = findViewById(R.id.detail_fragment_container) != null; // Fill the layout with the initial set of fragments. final FragmentTransaction transaction = getFragmentManager().beginTransaction(); transaction.add(R.id.list_fragment_container, new ProfileListFragment()); + if (isSplitLayout) + transaction.add(R.id.detail_fragment_container, new PlaceholderFragment()); transaction.commit(); // Ensure the long-running service is started. This only needs to happen once. final Intent intent = new Intent(this, ProfileService.class); diff --git a/app/src/main/res/layout-land/profile_activity.xml b/app/src/main/res/layout-land/profile_activity.xml new file mode 100644 index 00000000..acc56925 --- /dev/null +++ b/app/src/main/res/layout-land/profile_activity.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:baselineAligned="false" + android:orientation="horizontal"> + + <FrameLayout + android:id="@+id/list_fragment_container" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" /> + + <FrameLayout + android:id="@+id/detail_fragment_container" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="2" /> +</LinearLayout> |