mirror of
https://github.com/Kunzisoft/KeePassDX.git
synced 2025-12-04 15:49:33 +01:00
Add MagikeyboardLauncherActivity
This commit is contained in:
@@ -150,6 +150,9 @@
|
|||||||
<data android:mimeType="text/plain" />
|
<data android:mimeType="text/plain" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
|
<activity
|
||||||
|
android:name="com.kunzisoft.keepass.activities.MagikeyboardLauncherActivity"
|
||||||
|
android:theme="@style/Theme.Transparent" />
|
||||||
<activity
|
<activity
|
||||||
android:name="com.kunzisoft.keepass.settings.MagikeyboardSettingsActivity"
|
android:name="com.kunzisoft.keepass.settings.MagikeyboardSettingsActivity"
|
||||||
android:label="@string/keyboard_setting_label">
|
android:label="@string/keyboard_setting_label">
|
||||||
|
|||||||
@@ -431,7 +431,7 @@ class FileDatabaseSelectActivity : StylishActivity(),
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
fun launch(context: Context,
|
fun launch(context: Context,
|
||||||
searchInfo: SearchInfo?) {
|
searchInfo: SearchInfo? = null) {
|
||||||
val intent = Intent(context, FileDatabaseSelectActivity::class.java)
|
val intent = Intent(context, FileDatabaseSelectActivity::class.java)
|
||||||
searchInfo?.let {
|
searchInfo?.let {
|
||||||
intent.putExtra(KEY_SEARCH_INFO, it)
|
intent.putExtra(KEY_SEARCH_INFO, it)
|
||||||
@@ -446,7 +446,7 @@ class FileDatabaseSelectActivity : StylishActivity(),
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
fun launchForEntrySelectionResult(activity: Activity,
|
fun launchForEntrySelectionResult(activity: Activity,
|
||||||
searchInfo: SearchInfo?) {
|
searchInfo: SearchInfo? = null) {
|
||||||
EntrySelectionHelper.startActivityForEntrySelectionResult(activity,
|
EntrySelectionHelper.startActivityForEntrySelectionResult(activity,
|
||||||
Intent(activity, FileDatabaseSelectActivity::class.java),
|
Intent(activity, FileDatabaseSelectActivity::class.java),
|
||||||
searchInfo)
|
searchInfo)
|
||||||
@@ -461,7 +461,7 @@ class FileDatabaseSelectActivity : StylishActivity(),
|
|||||||
@RequiresApi(api = Build.VERSION_CODES.O)
|
@RequiresApi(api = Build.VERSION_CODES.O)
|
||||||
fun launchForAutofillResult(activity: Activity,
|
fun launchForAutofillResult(activity: Activity,
|
||||||
assistStructure: AssistStructure,
|
assistStructure: AssistStructure,
|
||||||
searchInfo: SearchInfo?) {
|
searchInfo: SearchInfo? = null) {
|
||||||
AutofillHelper.startActivityForAutofillResult(activity,
|
AutofillHelper.startActivityForAutofillResult(activity,
|
||||||
Intent(activity, FileDatabaseSelectActivity::class.java),
|
Intent(activity, FileDatabaseSelectActivity::class.java),
|
||||||
assistStructure,
|
assistStructure,
|
||||||
|
|||||||
@@ -0,0 +1,48 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2020 Jeremy Jamet / Kunzisoft.
|
||||||
|
*
|
||||||
|
* This file is part of KeePassDX.
|
||||||
|
*
|
||||||
|
* KeePassDX is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* KeePassDX is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with KeePassDX. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package com.kunzisoft.keepass.activities
|
||||||
|
|
||||||
|
import android.os.Bundle
|
||||||
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
|
import com.kunzisoft.keepass.database.element.Database
|
||||||
|
import com.kunzisoft.keepass.database.search.SearchHelper
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Activity to select entry in database and populate it in Magikeyboard
|
||||||
|
*/
|
||||||
|
class MagikeyboardLauncherActivity : AppCompatActivity() {
|
||||||
|
|
||||||
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
|
SearchHelper.checkAutoSearchInfo(this,
|
||||||
|
Database.getInstance(),
|
||||||
|
null,
|
||||||
|
{},
|
||||||
|
{
|
||||||
|
GroupActivity.launchForEntrySelectionResult(this)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
// Pass extra to get entry
|
||||||
|
FileDatabaseSelectActivity.launchForEntrySelectionResult(this)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
finish()
|
||||||
|
super.onCreate(savedInstanceState)
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -36,7 +36,7 @@ import android.widget.FrameLayout
|
|||||||
import android.widget.PopupWindow
|
import android.widget.PopupWindow
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
import com.kunzisoft.keepass.R
|
import com.kunzisoft.keepass.R
|
||||||
import com.kunzisoft.keepass.activities.EntrySelectionLauncherActivity
|
import com.kunzisoft.keepass.activities.MagikeyboardLauncherActivity
|
||||||
import com.kunzisoft.keepass.adapters.FieldsAdapter
|
import com.kunzisoft.keepass.adapters.FieldsAdapter
|
||||||
import com.kunzisoft.keepass.database.element.Database
|
import com.kunzisoft.keepass.database.element.Database
|
||||||
import com.kunzisoft.keepass.model.EntryInfo
|
import com.kunzisoft.keepass.model.EntryInfo
|
||||||
@@ -212,7 +212,7 @@ class MagikIME : InputMethodService(), KeyboardView.OnKeyboardActionListener {
|
|||||||
// Stop current service and reinit entry
|
// Stop current service and reinit entry
|
||||||
stopService(Intent(this, KeyboardEntryNotificationService::class.java))
|
stopService(Intent(this, KeyboardEntryNotificationService::class.java))
|
||||||
removeEntryInfo()
|
removeEntryInfo()
|
||||||
val intent = Intent(this, EntrySelectionLauncherActivity::class.java)
|
val intent = Intent(this, MagikeyboardLauncherActivity::class.java)
|
||||||
// New task needed because don't launch from an Activity context
|
// New task needed because don't launch from an Activity context
|
||||||
intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
|
intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
|
||||||
startActivity(intent)
|
startActivity(intent)
|
||||||
|
|||||||
Reference in New Issue
Block a user