diff --git a/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/RecyclerDialogAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/RecyclerDialogAdapter.kt index 6fa6857..fd5a7fe 100644 --- a/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/RecyclerDialogAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/RecyclerDialogAdapter.kt @@ -41,6 +41,14 @@ class RecyclerDialogAdapter(activity: Activity, val launchers: List itemViews[pos]?.launcher_check?.beVisibleIf(select) } + fun getSelectedLaunchers(): ArrayList { + val selectedLaunchers = ArrayList() + selectedPositions.forEach { + selectedLaunchers.add(launchers[it]) + } + return selectedLaunchers + } + private val adapterListener = object : MyAdapterListener { override fun toggleItemSelectionAdapter(select: Boolean, position: Int) { toggleItemSelection(select, position) diff --git a/app/src/main/kotlin/com/simplemobiletools/applauncher/dialogs/AddAppDialog.kt b/app/src/main/kotlin/com/simplemobiletools/applauncher/dialogs/AddAppDialog.kt index 29df292..b36c879 100644 --- a/app/src/main/kotlin/com/simplemobiletools/applauncher/dialogs/AddAppDialog.kt +++ b/app/src/main/kotlin/com/simplemobiletools/applauncher/dialogs/AddAppDialog.kt @@ -5,6 +5,7 @@ import android.support.v7.app.AlertDialog import android.view.ViewGroup import com.simplemobiletools.applauncher.R import com.simplemobiletools.applauncher.adapters.RecyclerDialogAdapter +import com.simplemobiletools.applauncher.extensions.dbHelper import com.simplemobiletools.applauncher.models.AppLauncher import com.simplemobiletools.commons.extensions.setupDialogStuff import kotlinx.android.synthetic.main.dialog_pick_launchers.view.* @@ -13,6 +14,7 @@ import java.util.* class AddAppDialog(val activity: Activity, val availableLaunchers: ArrayList, val callback: () -> Unit) { var dialog: AlertDialog var view = (activity.layoutInflater.inflate(R.layout.dialog_pick_launchers, null) as ViewGroup) + lateinit var adapter: RecyclerDialogAdapter init { dialog = AlertDialog.Builder(activity) @@ -20,12 +22,16 @@ class AddAppDialog(val activity: Activity, val availableLaunchers: ArrayList + adapter.getSelectedLaunchers().forEach { + activity.dbHelper.insertAppLauncher(it) + } callback() + dialog.dismiss() } } diff --git a/app/src/main/kotlin/com/simplemobiletools/applauncher/helpers/DBHelper.kt b/app/src/main/kotlin/com/simplemobiletools/applauncher/helpers/DBHelper.kt index da04c2e..c5a25fd 100644 --- a/app/src/main/kotlin/com/simplemobiletools/applauncher/helpers/DBHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/applauncher/helpers/DBHelper.kt @@ -68,7 +68,7 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont insertAppLauncher(appLauncher, db) } - private fun insertAppLauncher(appLauncher: AppLauncher, db: SQLiteDatabase = mDb): Int { + fun insertAppLauncher(appLauncher: AppLauncher, db: SQLiteDatabase = mDb): Int { val values = fillAppLauncherValues(appLauncher) return db.insert(MAIN_TABLE_NAME, null, values).toInt() }