diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/AdjustKeyboardHeightActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/AdjustKeyboardHeightActivity.java index cef9ec33fc..cc23b2d2ed 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/AdjustKeyboardHeightActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/AdjustKeyboardHeightActivity.java @@ -44,6 +44,9 @@ public class AdjustKeyboardHeightActivity extends BaseActivity { setContentView(R.layout.activity_adjust_keyboard_height); + setupEdgeToEdge(R.id.adjust_keyboard_layout); + setupStatusBarColors(R.color.keyman_blue, android.R.color.white); + Toolbar toolbar = (Toolbar) findViewById(R.id.titlebar); setSupportActionBar(toolbar); ActionBar actionBar = getSupportActionBar(); diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/InfoActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/InfoActivity.java index 3f70750118..3cefe9fe7f 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/InfoActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/InfoActivity.java @@ -34,6 +34,7 @@ public class InfoActivity extends BaseActivity { final Context context = this; setContentView(R.layout.activity_info); + setupEdgeToEdge(R.id.info_layout); // Navigation buttons final ImageButton backButton = (ImageButton) findViewById(R.id.back_button); diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KMPBrowserActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KMPBrowserActivity.java index e66d5e9ebc..b012a1883e 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KMPBrowserActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KMPBrowserActivity.java @@ -79,6 +79,9 @@ public class KMPBrowserActivity extends BaseActivity { return; } + setupEdgeToEdge(R.id.kmp_browser_layout); + setupStatusBarColors(R.color.complementary_5, android.R.color.white); + webView = (WebView) findViewById(R.id.kmpBrowserWebView); webView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NORMAL); webView.getSettings().setJavaScriptEnabled(true); diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsActivity.java index 930985e0de..bda56856b2 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsActivity.java @@ -5,7 +5,6 @@ import android.os.Bundle; import com.keyman.engine.BaseActivity; import com.keyman.engine.KMManager; -import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; public class KeymanSettingsActivity extends BaseActivity { @@ -23,6 +22,10 @@ public class KeymanSettingsActivity extends BaseActivity { super.onCreate(savedInstanceState); setContentView(R.layout.keyman_settings_layout); + + setupEdgeToEdge(R.id.keyman_settings_layout); + setupStatusBarColors(R.color.keyman_blue, android.R.color.white); + Toolbar toolbar = (Toolbar) findViewById(R.id.keyman_settings_toolbar); toolbar.setTitleTextColor(getResources().getColor(android.R.color.white)); toolbar.setTitle(R.string.keyman_settings); diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsInstallActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsInstallActivity.java index 71a8f7c355..728a6b2d15 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsInstallActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/KeymanSettingsInstallActivity.java @@ -7,7 +7,6 @@ import java.util.ArrayList; import java.util.HashMap; import androidx.appcompat.app.AlertDialog; -import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; import android.content.Context; @@ -24,11 +23,12 @@ import android.os.Bundle; import android.widget.SimpleAdapter; import android.widget.TextView; +import com.keyman.engine.BaseActivity; import com.keyman.engine.KMManager; import com.keyman.engine.data.KeyboardController; import com.keyman.engine.util.MapCompat; -public class KeymanSettingsInstallActivity extends AppCompatActivity { +public class KeymanSettingsInstallActivity extends BaseActivity { private static final String TAG = "SettingsInstallActivity"; private static ArrayList> installOptionList = null; private static Typeface titleFont = null; @@ -45,6 +45,8 @@ public class KeymanSettingsInstallActivity extends AppCompatActivity { context = this; setContentView(R.layout.activity_list_layout); + setupEdgeToEdge(R.id.list_toolbar); + final Toolbar toolbar = findViewById(R.id.list_toolbar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/LanguageSettingsActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/LanguageSettingsActivity.java index 96abc83f8a..8db40bb3de 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/LanguageSettingsActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/LanguageSettingsActivity.java @@ -25,10 +25,10 @@ import android.widget.TextView; import androidx.annotation.IdRes; import androidx.annotation.NonNull; import androidx.appcompat.app.AlertDialog; -import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.SwitchCompat; import androidx.appcompat.widget.Toolbar; +import com.keyman.engine.BaseActivity; import com.keyman.engine.KeyboardPickerActivity; import com.keyman.engine.KMManager; import com.keyman.engine.ModelPickerActivity; @@ -43,7 +43,7 @@ import java.util.HashMap; * Keyman Settings --> Languages Settings --> Language Settings * Displays a list of installed keyboards and some lexical model switches. */ -public final class LanguageSettingsActivity extends AppCompatActivity { +public final class LanguageSettingsActivity extends BaseActivity { private Context context; private static Toolbar toolbar = null; private static ListView listView = null; @@ -66,6 +66,8 @@ public final class LanguageSettingsActivity extends AppCompatActivity { context = this; setContentView(R.layout.language_settings_list_layout); + setupEdgeToEdge(R.id.list_toolbar); + toolbar = (Toolbar) findViewById(R.id.list_toolbar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/LanguagesSettingsActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/LanguagesSettingsActivity.java index 6e21d04f7b..79c845fa6f 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/LanguagesSettingsActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/LanguagesSettingsActivity.java @@ -19,9 +19,9 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.appcompat.app.AlertDialog; -import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; +import com.keyman.engine.BaseActivity; import com.keyman.engine.data.Dataset; import com.keyman.engine.data.adapters.AdapterFilter; import com.keyman.engine.data.adapters.NestedAdapter; @@ -36,7 +36,7 @@ import java.util.List; * Keyman Settings --> Languages Settings * Displays a list of installed languages and a count of their associated installed keyboards. */ -public final class LanguagesSettingsActivity extends AppCompatActivity { +public final class LanguagesSettingsActivity extends BaseActivity { private Context context; private static Toolbar toolbar = null; @@ -53,6 +53,8 @@ public final class LanguagesSettingsActivity extends AppCompatActivity { context = this; setContentView(R.layout.languages_settings_list_layout); + setupEdgeToEdge(R.id.languages_list_layout); + toolbar = (Toolbar) findViewById(R.id.list_toolbar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/PackageActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/PackageActivity.java index ee76265a97..28517ef04a 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/PackageActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/PackageActivity.java @@ -4,7 +4,6 @@ package com.tavultesoft.kmapro; import android.annotation.SuppressLint; -import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AlertDialog; import androidx.fragment.app.Fragment; @@ -18,6 +17,7 @@ import android.widget.Toast; import com.stepstone.stepper.StepperLayout; import com.stepstone.stepper.VerificationError; +import com.keyman.engine.BaseActivity; import com.keyman.engine.KMManager; import com.keyman.engine.KeyboardEventHandler; import com.keyman.engine.KmpInstallMode; @@ -34,7 +34,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; -public class PackageActivity extends AppCompatActivity implements +public class PackageActivity extends BaseActivity implements StepperLayout.StepperListener, WebViewFragment.OnInstallClickedListener, SelectLanguageFragment.OnLanguagesSelectedListener { private final static String TAG = "PackageActivity"; @@ -52,6 +52,7 @@ public class PackageActivity extends AppCompatActivity implements public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_package_installer); + setupEdgeToEdge(R.id.package_installer_layout); KmpInstallMode installMode = KmpInstallMode.Full; String languageID = null; diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/SelectLanguageActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/SelectLanguageActivity.java index 892ac820cf..ffaf1e28ae 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/SelectLanguageActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/SelectLanguageActivity.java @@ -8,11 +8,11 @@ import android.os.Bundle; import android.view.View; import android.widget.Toast; -import androidx.appcompat.app.AppCompatActivity; import androidx.fragment.app.Fragment; import com.stepstone.stepper.StepperLayout; import com.stepstone.stepper.VerificationError; +import com.keyman.engine.BaseActivity; import com.keyman.engine.KMManager; import com.keyman.engine.data.Keyboard; import com.keyman.engine.packages.PackageProcessor; @@ -29,7 +29,7 @@ import java.util.List; * Also available during keyboard package installation that involves a language choice. * Displays a list of available language names for the user to add for a given installed packageID/keyboardID. */ -public class SelectLanguageActivity extends AppCompatActivity implements +public class SelectLanguageActivity extends BaseActivity implements StepperLayout.StepperListener, SelectLanguageFragment.OnLanguagesSelectedListener { private final static String TAG = "SelectLanguageActivity"; private File packagePath; @@ -43,6 +43,7 @@ public class SelectLanguageActivity extends AppCompatActivity implements public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_select_language); + setupEdgeToEdge(R.id.select_language_layout); Bundle bundle = getIntent().getExtras(); keyboard = (Keyboard)bundle.getSerializable("keyboard"); diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/SelectPackageActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/SelectPackageActivity.java index 9b05332182..0b6a3ac9a7 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/SelectPackageActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/SelectPackageActivity.java @@ -16,9 +16,9 @@ import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.TextView; -import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; +import com.keyman.engine.BaseActivity; import com.keyman.engine.KMManager; import com.keyman.engine.data.Keyboard; import com.keyman.engine.data.KeyboardController; @@ -33,7 +33,7 @@ import java.util.List; * Keyman Settings --> KeymanInstallActivity --> SelectPackageActivity * Displays a list of installed package ID / keyboard IDs so the user can select a language from the kmp.json */ -public final class SelectPackageActivity extends AppCompatActivity { +public final class SelectPackageActivity extends BaseActivity { private static final String TAG = "SelectPackageActivity"; private static ArrayList> list = null; private static Typeface titleFont = null; @@ -49,6 +49,8 @@ public final class SelectPackageActivity extends AppCompatActivity { context = this; setContentView(R.layout.activity_list_layout); + setupEdgeToEdge(R.id.activity_list_layout); + final Toolbar toolbar = findViewById(R.id.list_toolbar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); diff --git a/android/KMAPro/kMAPro/src/main/res/layout/activity_adjust_keyboard_height.xml b/android/KMAPro/kMAPro/src/main/res/layout/activity_adjust_keyboard_height.xml index 7a53c88321..0cb7a262d2 100644 --- a/android/KMAPro/kMAPro/src/main/res/layout/activity_adjust_keyboard_height.xml +++ b/android/KMAPro/kMAPro/src/main/res/layout/activity_adjust_keyboard_height.xml @@ -1,9 +1,11 @@ - + android:layout_height="match_parent" + android:orientation="vertical"> @@ -15,7 +17,7 @@ android:layout_marginStart="@dimen/activity_horizontal_margin" android:text="@string/drag_the_keyboard" android:textSize="@dimen/adjust_keyboard_height_label_textsize" - /> + app:layout_constraintTop_toBottomOf="@id/titlebar" /> + app:layout_constraintTop_toBottomOf="@id/drag_the_keyboard" /> - - - - + diff --git a/android/KMEA/app/src/main/res/layout/activity_list_layout.xml b/android/KMEA/app/src/main/res/layout/activity_list_layout.xml index 51c506fc28..cb1044524b 100644 --- a/android/KMEA/app/src/main/res/layout/activity_list_layout.xml +++ b/android/KMEA/app/src/main/res/layout/activity_list_layout.xml @@ -1,13 +1,21 @@ - - + - + - + diff --git a/android/KMEA/app/src/main/res/layout/language_settings_list_layout.xml b/android/KMEA/app/src/main/res/layout/language_settings_list_layout.xml index 42ae9b1511..84f6f189bb 100644 --- a/android/KMEA/app/src/main/res/layout/language_settings_list_layout.xml +++ b/android/KMEA/app/src/main/res/layout/language_settings_list_layout.xml @@ -1,12 +1,15 @@ - - + + android:layout_above="@+id/modeling_settings_layout" + android:layout_below="@id/list_appbar" + app:layout_constraintTop_toBottomOf="@id/list_appbar"/> - - - - - - - + android:layout_gravity="end|center_vertical" + android:contentDescription="@string/image_button" + android:src="@drawable/ic_add_white" + android:layout_marginEnd="@dimen/fab_margin" + android:layout_marginBottom="@dimen/fab_margin" + app:fabSize="normal" + app:layout_constraintBottom_toTopOf="@+id/modeling_settings_layout" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintHorizontal_bias="1.0"/> + android:orientation="vertical" + app:layout_constraintVertical_bias="1.0" + app:layout_constraintBottom_toBottomOf="parent"> --> - + diff --git a/android/KMEA/app/src/main/res/layout/languages_settings_list_layout.xml b/android/KMEA/app/src/main/res/layout/languages_settings_list_layout.xml index cfd94dc922..052db1cf85 100644 --- a/android/KMEA/app/src/main/res/layout/languages_settings_list_layout.xml +++ b/android/KMEA/app/src/main/res/layout/languages_settings_list_layout.xml @@ -1,31 +1,25 @@ - - + - - - - - + android:layout_below="@+id/list_appbar" + app:layout_constraintTop_toBottomOf="@id/list_appbar" + app:layout_constraintStart_toStartOf="parent"/> + android:layout_marginEnd="@dimen/fab_margin" + android:layout_marginBottom="@dimen/fab_margin" + app:fabSize="normal" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintHorizontal_bias="1.0"/> - - + diff --git a/android/KMEA/app/src/main/res/layout/list_toolbar.xml b/android/KMEA/app/src/main/res/layout/list_toolbar.xml index fe200ce6a2..cd90384196 100644 --- a/android/KMEA/app/src/main/res/layout/list_toolbar.xml +++ b/android/KMEA/app/src/main/res/layout/list_toolbar.xml @@ -7,31 +7,39 @@ android:layout_height="wrap_content" app:elevation="0dp"> - - + app:layout_constraintTop_toTopOf="parent"> - + - - + + + + + diff --git a/android/KMEA/app/src/main/res/layout/titlebar.xml b/android/KMEA/app/src/main/res/layout/titlebar.xml index 64b91a0fee..9166846600 100644 --- a/android/KMEA/app/src/main/res/layout/titlebar.xml +++ b/android/KMEA/app/src/main/res/layout/titlebar.xml @@ -6,7 +6,9 @@ android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:layout_alignParentTop="true" - app:popupTheme="@style/ThemeOverlay.AppCompat.Light"> + app:popupTheme="@style/ThemeOverlay.AppCompat.Light" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintStart_toStartOf="parent">