diff --git a/src/main/res/values-ja/strings.xml b/src/main/res/values-ja/strings.xml index 5ea72a8e..4611c2f0 100644 --- a/src/main/res/values-ja/strings.xml +++ b/src/main/res/values-ja/strings.xml @@ -189,6 +189,10 @@ サブスクリップションの更新に失敗しました! グループ名 アドレスを表示し、編集するときにクリックします + 削除 + あなたはそれを削除したい、あるいは同じ名前およびサブスクリプションノードそれでグループを削除したいですか? + 削除 + ノードと一緒に削除されました 送信済み: diff --git a/src/main/res/values-ru/strings.xml b/src/main/res/values-ru/strings.xml index 507e91e1..a58004a2 100644 --- a/src/main/res/values-ru/strings.xml +++ b/src/main/res/values-ru/strings.xml @@ -180,6 +180,10 @@ Ошибка обновления подписки! Название группы Нажмите для просмотра и редактирования адреса + удалять + Вы хотите, чтобы удалить его, или даже хотите удалить группу с тем же именем и узлом подписки это? + удалять + Удаляется вместе с узлом Сканирование подсказки кода diff --git a/src/main/res/values-zh-rCN/strings.xml b/src/main/res/values-zh-rCN/strings.xml index 7634c2b4..65361c39 100644 --- a/src/main/res/values-zh-rCN/strings.xml +++ b/src/main/res/values-zh-rCN/strings.xml @@ -192,6 +192,10 @@ 更新订阅失败! 群组名 点击查看和编辑地址 + 删除 + 您是想直接删除呢,还是想连带着删除群组和这个订阅名一样的节点呢? + 直接删除 + 与节点一起删除 diff --git a/src/main/res/values-zh-rTW/strings.xml b/src/main/res/values-zh-rTW/strings.xml index 773923c4..8d50a915 100644 --- a/src/main/res/values-zh-rTW/strings.xml +++ b/src/main/res/values-zh-rTW/strings.xml @@ -194,6 +194,10 @@ 更新訂閱失敗! 群組名 點擊查看和編輯地址 + 删除 + 您是想直接刪除呢,還是想連帶著刪除群組和這個訂閱名一樣的節點呢? + 直接刪除 + 與節點一起刪除 diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index f13b0602..06995766 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -189,6 +189,10 @@ Update subscription fail! Group Name Click to view and edit the address + Remove + Do you want to delete this subscription directly without remove the nodes which has the same node name with it or not? + Delete directly + Delete with it\'s nodes Scan tips diff --git a/src/main/scala/com/github/shadowsocks/ProfileManagerActivity.scala b/src/main/scala/com/github/shadowsocks/ProfileManagerActivity.scala index b9a8bb98..6548507c 100644 --- a/src/main/scala/com/github/shadowsocks/ProfileManagerActivity.scala +++ b/src/main/scala/com/github/shadowsocks/ProfileManagerActivity.scala @@ -660,8 +660,39 @@ final class ProfileManagerActivity extends AppCompatActivity with OnMenuItemClic ItemTouchHelper.START | ItemTouchHelper.END) { def onSwiped(viewHolder: ViewHolder, direction: Int) = { val index = viewHolder.getAdapterPosition - ssrsubAdapter.remove(index) - app.ssrsubManager.delSSRSub(viewHolder.asInstanceOf[SSRSubViewHolder].item.id) + new AlertDialog.Builder(ProfileManagerActivity.this) + .setTitle(getString(R.string.ssrsub_remove_tip_title)) + .setPositiveButton(R.string.ssrsub_remove_tip_direct, ((_, _) => { + ssrsubAdapter.remove(index) + app.ssrsubManager.delSSRSub(viewHolder.asInstanceOf[SSRSubViewHolder].item.id) + }): DialogInterface.OnClickListener) + .setNegativeButton(android.R.string.no, ((_, _) => { + ssrsubAdapter.notifyDataSetChanged() + }): DialogInterface.OnClickListener) + .setNeutralButton(R.string.ssrsub_remove_tip_delete, ((_, _) => { + var delete_profiles = app.profileManager.getAllProfilesByGroup(viewHolder.asInstanceOf[SSRSubViewHolder].item.url_group) match { + case Some(profiles) => + profiles + case _ => null + } + + delete_profiles.foreach((profile: Profile) => { + if (profile.id != app.profileId) { + app.profileManager.delProfile(profile.id) + } + }) + + val index = viewHolder.getAdapterPosition + ssrsubAdapter.remove(index) + app.ssrsubManager.delSSRSub(viewHolder.asInstanceOf[SSRSubViewHolder].item.id) + + finish() + startActivity(new Intent(getIntent())) + }): DialogInterface.OnClickListener) + .setMessage(getString(R.string.ssrsub_remove_tip)) + .setCancelable(false) + .create() + .show() } def onMove(recyclerView: RecyclerView, viewHolder: ViewHolder, target: ViewHolder) = { true