diff --git a/java/res/drawable/settings.xml b/java/res/drawable/settings.xml new file mode 100644 index 0000000000000000000000000000000000000000..fd91a92464e8b25c2865b20fd6ed0f957fbe4401 --- /dev/null +++ b/java/res/drawable/settings.xml @@ -0,0 +1,20 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="24dp" + android:height="24dp" + android:viewportWidth="24" + android:viewportHeight="24"> + <path + android:pathData="M12,12m-3,0a3,3 0,1 1,6 0a3,3 0,1 1,-6 0" + android:strokeLineJoin="round" + android:strokeWidth="2" + android:fillColor="#00000000" + android:strokeColor="#ffffff" + android:strokeLineCap="round"/> + <path + android:pathData="M19.4,15a1.65,1.65 0,0 0,0.33 1.82l0.06,0.06a2,2 0,0 1,0 2.83,2 2,0 0,1 -2.83,0l-0.06,-0.06a1.65,1.65 0,0 0,-1.82 -0.33,1.65 1.65,0 0,0 -1,1.51V21a2,2 0,0 1,-2 2,2 2,0 0,1 -2,-2v-0.09A1.65,1.65 0,0 0,9 19.4a1.65,1.65 0,0 0,-1.82 0.33l-0.06,0.06a2,2 0,0 1,-2.83 0,2 2,0 0,1 0,-2.83l0.06,-0.06a1.65,1.65 0,0 0,0.33 -1.82,1.65 1.65,0 0,0 -1.51,-1H3a2,2 0,0 1,-2 -2,2 2,0 0,1 2,-2h0.09A1.65,1.65 0,0 0,4.6 9a1.65,1.65 0,0 0,-0.33 -1.82l-0.06,-0.06a2,2 0,0 1,0 -2.83,2 2,0 0,1 2.83,0l0.06,0.06a1.65,1.65 0,0 0,1.82 0.33H9a1.65,1.65 0,0 0,1 -1.51V3a2,2 0,0 1,2 -2,2 2,0 0,1 2,2v0.09a1.65,1.65 0,0 0,1 1.51,1.65 1.65,0 0,0 1.82,-0.33l0.06,-0.06a2,2 0,0 1,2.83 0,2 2,0 0,1 0,2.83l-0.06,0.06a1.65,1.65 0,0 0,-0.33 1.82V9a1.65,1.65 0,0 0,1.51 1H21a2,2 0,0 1,2 2,2 2,0 0,1 -2,2h-0.09a1.65,1.65 0,0 0,-1.51 1z" + android:strokeLineJoin="round" + android:strokeWidth="2" + android:fillColor="#00000000" + android:strokeColor="#ffffff" + android:strokeLineCap="round"/> +</vector> diff --git a/java/src/org/futo/inputmethod/latin/uix/ActionBar.kt b/java/src/org/futo/inputmethod/latin/uix/ActionBar.kt index a400a9b20014dc73576be4448e5bad1484b405fe..8b786c37592a1a16454166299fe78b440b35d04a 100644 --- a/java/src/org/futo/inputmethod/latin/uix/ActionBar.kt +++ b/java/src/org/futo/inputmethod/latin/uix/ActionBar.kt @@ -73,6 +73,7 @@ import org.futo.inputmethod.latin.suggestions.SuggestionStripView import org.futo.inputmethod.latin.uix.actions.ClipboardAction import org.futo.inputmethod.latin.uix.actions.EmojiAction import org.futo.inputmethod.latin.uix.actions.RedoAction +import org.futo.inputmethod.latin.uix.actions.SettingsAction import org.futo.inputmethod.latin.uix.actions.SystemVoiceInputAction import org.futo.inputmethod.latin.uix.actions.TextEditAction import org.futo.inputmethod.latin.uix.actions.ThemeAction @@ -370,6 +371,7 @@ fun ActionItemSmall(action: Action, onSelect: (Action) -> Unit) { fun RowScope.ActionItems(onSelect: (Action) -> Unit) { val systemVoiceInput = useDataStore(key = USE_SYSTEM_VOICE_INPUT.key, default = USE_SYSTEM_VOICE_INPUT.default) + ActionItem(SettingsAction, onSelect) ActionItem(EmojiAction, onSelect) ActionItem(if(systemVoiceInput.value) { SystemVoiceInputAction } else { VoiceInputAction }, onSelect) ActionItem(ThemeAction, onSelect) diff --git a/java/src/org/futo/inputmethod/latin/uix/actions/SettingsAction.kt b/java/src/org/futo/inputmethod/latin/uix/actions/SettingsAction.kt new file mode 100644 index 0000000000000000000000000000000000000000..8f230dacade05ebac70e1056d97676b15981aaf8 --- /dev/null +++ b/java/src/org/futo/inputmethod/latin/uix/actions/SettingsAction.kt @@ -0,0 +1,22 @@ +package org.futo.inputmethod.latin.uix.actions + +import android.content.Intent +import org.futo.inputmethod.latin.R +import org.futo.inputmethod.latin.uix.Action +import org.futo.inputmethod.latin.uix.settings.SettingsActivity + +val SettingsAction = Action( + icon = R.drawable.settings, + name = R.string.go_to_settings, + simplePressImpl = { manager, _ -> + val intent = Intent() + intent.setClass(manager.getContext(), SettingsActivity::class.java) + intent.setFlags( + Intent.FLAG_ACTIVITY_NEW_TASK + or Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED + or Intent.FLAG_ACTIVITY_CLEAR_TOP + ) + manager.getContext().startActivity(intent) + }, + windowImpl = null, +) \ No newline at end of file