diff --git a/res/drawable/ic_edit_white_24dp.xml b/res/drawable/ic_edit_white_24dp.xml
new file mode 100644
index 0000000000..46462b5726
--- /dev/null
+++ b/res/drawable/ic_edit_white_24dp.xml
@@ -0,0 +1,5 @@
+
+
+
diff --git a/res/drawable/ic_phonelink_erase_white_24dp.xml b/res/drawable/ic_phonelink_erase_white_24dp.xml
new file mode 100644
index 0000000000..dc5c1b0260
--- /dev/null
+++ b/res/drawable/ic_phonelink_erase_white_24dp.xml
@@ -0,0 +1,5 @@
+
+
+
diff --git a/res/layout/fragment_device_list_bottom_sheet.xml b/res/layout/fragment_device_list_bottom_sheet.xml
new file mode 100644
index 0000000000..dca86bdbe8
--- /dev/null
+++ b/res/layout/fragment_device_list_bottom_sheet.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 0ddbef44e4..4c4c74c055 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -115,4 +115,10 @@
-150dp
+ 16dp
+ 24dp
+ 16sp
+ 16dp
+ 56dp
+
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 74dc96a244..4e6d872cb4 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1643,5 +1643,8 @@
Copy public key
Add Public Chat
+
+ Edit display name
+ Unlink device
diff --git a/res/values/styles.xml b/res/values/styles.xml
index a9aaf9d788..ecf5dc23a5 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -242,4 +242,15 @@
- @color/white
+
+
diff --git a/res/values/themes.xml b/res/values/themes.xml
index 178c030731..f285cde977 100644
--- a/res/values/themes.xml
+++ b/res/values/themes.xml
@@ -133,6 +133,7 @@
- @color/loki_darkest_gray
- @style/AppCompatAlertDialogStyleLight
- @style/AppCompatDialogStyleLight
+ - @style/Theme.MaterialComponents.Light.BottomSheetDialog
- @color/white
@@ -317,6 +318,7 @@
- @color/loki_darkest_gray
- @style/AppCompatAlertDialogStyleDark
- @style/AppCompatDialogStyleDark
+ - @style/Theme.MaterialComponents.BottomSheetDialog
- @color/gray95
- @drawable/ic_document_small_dark
diff --git a/src/org/thoughtcrime/securesms/DeviceListFragment.java b/src/org/thoughtcrime/securesms/DeviceListFragment.java
index 08fd4040b3..8592c3fef2 100644
--- a/src/org/thoughtcrime/securesms/DeviceListFragment.java
+++ b/src/org/thoughtcrime/securesms/DeviceListFragment.java
@@ -23,6 +23,7 @@ import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.database.loaders.DeviceListLoader;
import org.thoughtcrime.securesms.dependencies.InjectableType;
import org.thoughtcrime.securesms.devicelist.Device;
+import org.thoughtcrime.securesms.loki.DeviceListBottomSheetFragment;
import org.thoughtcrime.securesms.loki.MnemonicUtilities;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
import org.thoughtcrime.securesms.util.ViewUtil;
@@ -128,6 +129,9 @@ public class DeviceListFragment extends ListFragment
final String deviceName = ((DeviceListItem)view).getDeviceName();
final String deviceId = ((DeviceListItem)view).getDeviceId();
+ DeviceListBottomSheetFragment fragment = new DeviceListBottomSheetFragment();
+ fragment.show(getFragmentManager(), fragment.getTag());
+ /*
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(getActivity().getString(R.string.DeviceListActivity_unlink_s, deviceName));
builder.setMessage(R.string.DeviceListActivity_by_unlinking_this_device_it_will_no_longer_be_able_to_send_or_receive);
@@ -139,6 +143,8 @@ public class DeviceListFragment extends ListFragment
}
});
builder.show();
+
+ */
}
public void refresh() {
diff --git a/src/org/thoughtcrime/securesms/loki/DeviceListBottomSheetFragment.kt b/src/org/thoughtcrime/securesms/loki/DeviceListBottomSheetFragment.kt
new file mode 100644
index 0000000000..013b48a66d
--- /dev/null
+++ b/src/org/thoughtcrime/securesms/loki/DeviceListBottomSheetFragment.kt
@@ -0,0 +1,24 @@
+package org.thoughtcrime.securesms.loki
+
+import android.os.Bundle
+import android.support.design.widget.BottomSheetDialogFragment
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import kotlinx.android.synthetic.main.fragment_device_list_bottom_sheet.*
+import network.loki.messenger.R
+
+public class DeviceListBottomSheetFragment : BottomSheetDialogFragment() {
+ var onEditTapped: (() -> Unit)? = null
+ var onUnlinkTapped: (() -> Unit)? = null
+
+ override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
+ return inflater.inflate(R.layout.fragment_device_list_bottom_sheet, container, false)
+ }
+
+ override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
+ super.onViewCreated(view, savedInstanceState)
+ editDisplayNameText.setOnClickListener { onEditTapped?.invoke() }
+ unlinkDeviceText.setOnClickListener { onUnlinkTapped?.invoke() }
+ }
+}
\ No newline at end of file