parent
552b7e561a
commit
79d047c852
|
@ -152,8 +152,8 @@ class MainActivity : SimpleActivity(), FlingListener {
|
|||
}
|
||||
}
|
||||
|
||||
for (checkedYCell in 0 until COLUMN_COUNT) {
|
||||
for (checkedXCell in 0 until ROW_COUNT - 1) {
|
||||
for (checkedYCell in 0 until getHomeColumnCount()) {
|
||||
for (checkedXCell in 0 until getHomeRowCount() - 1) {
|
||||
val wantedCell = Pair(checkedXCell, checkedYCell)
|
||||
if (!occupiedCells.contains(wantedCell)) {
|
||||
return Rect(wantedCell.first, wantedCell.second, wantedCell.first, wantedCell.second)
|
||||
|
@ -208,6 +208,11 @@ class MainActivity : SimpleActivity(), FlingListener {
|
|||
if (window.navigationBarColor != resources.getColor(R.color.semitransparent_navigation)) {
|
||||
window.navigationBarColor = Color.TRANSPARENT
|
||||
}
|
||||
|
||||
home_screen_grid?.resizeGrid(
|
||||
newRowCount = getHomeRowCount(),
|
||||
newColumnCount = getHomeColumnCount()
|
||||
)
|
||||
}
|
||||
|
||||
override fun onStop() {
|
||||
|
@ -469,7 +474,7 @@ class MainActivity : SimpleActivity(), FlingListener {
|
|||
mLongPressedIcon = gridItem
|
||||
val anchorY = if (isOnAllAppsFragment || gridItem.type == ITEM_TYPE_WIDGET) {
|
||||
y
|
||||
} else if (gridItem.top == ROW_COUNT - 1) {
|
||||
} else if (gridItem.top == getHomeRowCount() - 1) {
|
||||
home_screen_grid.sideMargins.top + (gridItem.top * home_screen_grid.cellHeight.toFloat())
|
||||
} else {
|
||||
(gridItem.top * home_screen_grid.cellHeight.toFloat())
|
||||
|
@ -699,7 +704,7 @@ class MainActivity : SimpleActivity(), FlingListener {
|
|||
val defaultDialerPackage = (getSystemService(Context.TELECOM_SERVICE) as TelecomManager).defaultDialerPackage
|
||||
appLaunchers.firstOrNull { it.packageName == defaultDialerPackage }?.apply {
|
||||
val dialerIcon =
|
||||
HomeScreenGridItem(null, 0, ROW_COUNT - 1, 0, ROW_COUNT - 1, defaultDialerPackage, "", title, ITEM_TYPE_ICON, "", -1, "", "", null)
|
||||
HomeScreenGridItem(null, 0, getHomeRowCount() - 1, 0, getHomeRowCount() - 1, defaultDialerPackage, "", title, ITEM_TYPE_ICON, "", -1, "", "", null)
|
||||
homeScreenGridItems.add(dialerIcon)
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
|
@ -709,7 +714,7 @@ class MainActivity : SimpleActivity(), FlingListener {
|
|||
val defaultSMSMessengerPackage = Telephony.Sms.getDefaultSmsPackage(this)
|
||||
appLaunchers.firstOrNull { it.packageName == defaultSMSMessengerPackage }?.apply {
|
||||
val SMSMessengerIcon =
|
||||
HomeScreenGridItem(null, 1, ROW_COUNT - 1, 1, ROW_COUNT - 1, defaultSMSMessengerPackage, "", title, ITEM_TYPE_ICON, "", -1, "", "", null)
|
||||
HomeScreenGridItem(null, 1, getHomeRowCount() - 1, 1, getHomeRowCount() - 1, defaultSMSMessengerPackage, "", title, ITEM_TYPE_ICON, "", -1, "", "", null)
|
||||
homeScreenGridItems.add(SMSMessengerIcon)
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
|
@ -721,7 +726,7 @@ class MainActivity : SimpleActivity(), FlingListener {
|
|||
val defaultBrowserPackage = resolveInfo!!.activityInfo.packageName
|
||||
appLaunchers.firstOrNull { it.packageName == defaultBrowserPackage }?.apply {
|
||||
val browserIcon =
|
||||
HomeScreenGridItem(null, 2, ROW_COUNT - 1, 2, ROW_COUNT - 1, defaultBrowserPackage, "", title, ITEM_TYPE_ICON, "", -1, "", "", null)
|
||||
HomeScreenGridItem(null, 2, getHomeRowCount() - 1, 2, getHomeRowCount() - 1, defaultBrowserPackage, "", title, ITEM_TYPE_ICON, "", -1, "", "", null)
|
||||
homeScreenGridItems.add(browserIcon)
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
|
@ -732,7 +737,7 @@ class MainActivity : SimpleActivity(), FlingListener {
|
|||
val storePackage = potentialStores.firstOrNull { isPackageInstalled(it) && appLaunchers.map { it.packageName }.contains(it) }
|
||||
if (storePackage != null) {
|
||||
appLaunchers.firstOrNull { it.packageName == storePackage }?.apply {
|
||||
val storeIcon = HomeScreenGridItem(null, 3, ROW_COUNT - 1, 3, ROW_COUNT - 1, storePackage, "", title, ITEM_TYPE_ICON, "", -1, "", "", null)
|
||||
val storeIcon = HomeScreenGridItem(null, 3, getHomeRowCount() - 1, 3, getHomeRowCount() - 1, storePackage, "", title, ITEM_TYPE_ICON, "", -1, "", "", null)
|
||||
homeScreenGridItems.add(storeIcon)
|
||||
}
|
||||
}
|
||||
|
@ -745,7 +750,7 @@ class MainActivity : SimpleActivity(), FlingListener {
|
|||
val defaultCameraPackage = resolveInfo!!.activityInfo.packageName
|
||||
appLaunchers.firstOrNull { it.packageName == defaultCameraPackage }?.apply {
|
||||
val cameraIcon =
|
||||
HomeScreenGridItem(null, 4, ROW_COUNT - 1, 4, ROW_COUNT - 1, defaultCameraPackage, "", title, ITEM_TYPE_ICON, "", -1, "", "", null)
|
||||
HomeScreenGridItem(null, 4, getHomeRowCount() - 1, 4, getHomeRowCount() - 1, defaultCameraPackage, "", title, ITEM_TYPE_ICON, "", -1, "", "", null)
|
||||
homeScreenGridItems.add(cameraIcon)
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
|
|
|
@ -2,13 +2,21 @@ package com.simplemobiletools.launcher.activities
|
|||
|
||||
import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import com.simplemobiletools.commons.dialogs.RadioGroupDialog
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
import com.simplemobiletools.commons.helpers.NavigationIcon
|
||||
import com.simplemobiletools.commons.helpers.isTiramisuPlus
|
||||
import com.simplemobiletools.commons.models.FAQItem
|
||||
import com.simplemobiletools.commons.models.RadioItem
|
||||
import com.simplemobiletools.launcher.BuildConfig
|
||||
import com.simplemobiletools.launcher.R
|
||||
import com.simplemobiletools.launcher.extensions.config
|
||||
import com.simplemobiletools.launcher.extensions.getHomeColumnCount
|
||||
import com.simplemobiletools.launcher.extensions.getHomeRowCount
|
||||
import com.simplemobiletools.launcher.helpers.MAX_COLUMN_COUNT
|
||||
import com.simplemobiletools.launcher.helpers.MAX_ROW_COUNT
|
||||
import com.simplemobiletools.launcher.helpers.MIN_COLUMN_COUNT
|
||||
import com.simplemobiletools.launcher.helpers.MIN_ROW_COUNT
|
||||
import kotlinx.android.synthetic.main.activity_settings.*
|
||||
import java.util.*
|
||||
import kotlin.system.exitProcess
|
||||
|
@ -32,11 +40,13 @@ class SettingsActivity : SimpleActivity() {
|
|||
setupPurchaseThankYou()
|
||||
setupCustomizeColors()
|
||||
setupUseEnglish()
|
||||
setupHomeRowCount()
|
||||
setupHomeColumnCount()
|
||||
setupLanguage()
|
||||
setupManageHiddenIcons()
|
||||
updateTextColors(settings_holder)
|
||||
|
||||
arrayOf(settings_color_customization_section_label, settings_general_settings_label).forEach {
|
||||
arrayOf(settings_color_customization_section_label, settings_general_settings_label, settings_home_screen_label).forEach {
|
||||
it.setTextColor(getProperPrimaryColor())
|
||||
}
|
||||
}
|
||||
|
@ -82,6 +92,52 @@ class SettingsActivity : SimpleActivity() {
|
|||
}
|
||||
}
|
||||
|
||||
private fun setupHomeRowCount() {
|
||||
val currentRowCount = getHomeRowCount()
|
||||
settings_home_screen_row_count.text = currentRowCount.toString()
|
||||
settings_home_screen_row_count_holder.setOnClickListener {
|
||||
val items = ArrayList<RadioItem>()
|
||||
for (i in MIN_ROW_COUNT..MAX_ROW_COUNT) {
|
||||
items.add(RadioItem(i, resources.getQuantityString(R.plurals.column_counts, i, i)))
|
||||
}
|
||||
|
||||
RadioGroupDialog(this, items, currentRowCount) {
|
||||
val newRowCount = it as Int
|
||||
if (currentRowCount != newRowCount) {
|
||||
if (portrait) {
|
||||
config.portraitHomeRowCount = newRowCount
|
||||
} else {
|
||||
config.landscapeHomeRowCount = newRowCount
|
||||
}
|
||||
setupHomeRowCount()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun setupHomeColumnCount() {
|
||||
val currentColumnCount = getHomeColumnCount()
|
||||
settings_home_screen_column_count.text = currentColumnCount.toString()
|
||||
settings_home_screen_column_count_holder.setOnClickListener {
|
||||
val items = ArrayList<RadioItem>()
|
||||
for (i in MIN_COLUMN_COUNT..MAX_COLUMN_COUNT) {
|
||||
items.add(RadioItem(i, resources.getQuantityString(R.plurals.column_counts, i, i)))
|
||||
}
|
||||
|
||||
RadioGroupDialog(this, items, currentColumnCount) {
|
||||
val newColumnCount = it as Int
|
||||
if (currentColumnCount != newColumnCount) {
|
||||
if (portrait) {
|
||||
config.portraitHomeColumnCount = newColumnCount
|
||||
} else {
|
||||
config.landscapeHomeColumnCount = newColumnCount
|
||||
}
|
||||
setupHomeColumnCount()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun setupLanguage() {
|
||||
settings_language.text = Locale.getDefault().displayLanguage
|
||||
settings_language_holder.beVisibleIf(isTiramisuPlus())
|
||||
|
|
|
@ -31,6 +31,22 @@ fun Context.getColumnCount(): Int {
|
|||
}
|
||||
}
|
||||
|
||||
fun Context.getHomeRowCount(): Int {
|
||||
return if (portrait) {
|
||||
config.portraitHomeRowCount
|
||||
} else {
|
||||
config.landscapeHomeRowCount
|
||||
}
|
||||
}
|
||||
|
||||
fun Context.getHomeColumnCount(): Int {
|
||||
return if (portrait) {
|
||||
config.portraitHomeColumnCount
|
||||
} else {
|
||||
config.landscapeHomeColumnCount
|
||||
}
|
||||
}
|
||||
|
||||
fun Context.getDrawableForPackageName(packageName: String): Drawable? {
|
||||
var drawable: Drawable? = null
|
||||
try {
|
||||
|
|
|
@ -11,4 +11,20 @@ class Config(context: Context) : BaseConfig(context) {
|
|||
var wasHomeScreenInit: Boolean
|
||||
get() = prefs.getBoolean(WAS_HOME_SCREEN_INIT, false)
|
||||
set(wasHomeScreenInit) = prefs.edit().putBoolean(WAS_HOME_SCREEN_INIT, wasHomeScreenInit).apply()
|
||||
|
||||
var portraitHomeColumnCount: Int
|
||||
get() = prefs.getInt(PORTRAIT_HOME_COLUMN_COUNT, COLUMN_COUNT)
|
||||
set(portraitHomeColumnCount) = prefs.edit().putInt(PORTRAIT_HOME_COLUMN_COUNT, portraitHomeColumnCount).apply()
|
||||
|
||||
var landscapeHomeColumnCount: Int
|
||||
get() = prefs.getInt(LANDSCAPE_HOME_COLUMN_COUNT, COLUMN_COUNT)
|
||||
set(landscapeHomeColumnCount) = prefs.edit().putInt(LANDSCAPE_HOME_COLUMN_COUNT, landscapeHomeColumnCount).apply()
|
||||
|
||||
var portraitHomeRowCount: Int
|
||||
get() = prefs.getInt(PORTRAIT_HOME_ROW_COUNT, ROW_COUNT)
|
||||
set(portraitHomeRowCount) = prefs.edit().putInt(PORTRAIT_HOME_ROW_COUNT, portraitHomeRowCount).apply()
|
||||
|
||||
var landscapeHomeRowCount: Int
|
||||
get() = prefs.getInt(LANDSCAPE_HOME_ROW_COUNT, ROW_COUNT)
|
||||
set(landscapeHomeRowCount) = prefs.edit().putInt(LANDSCAPE_HOME_ROW_COUNT, landscapeHomeRowCount).apply()
|
||||
}
|
||||
|
|
|
@ -5,10 +5,18 @@ const val WIDGET_LIST_ITEMS_HOLDER = 1
|
|||
|
||||
// shared prefs
|
||||
const val WAS_HOME_SCREEN_INIT = "was_home_screen_init"
|
||||
const val PORTRAIT_HOME_ROW_COUNT = "portrait_home_row_count"
|
||||
const val LANDSCAPE_HOME_ROW_COUNT = "landscape_home_row_count"
|
||||
const val PORTRAIT_HOME_COLUMN_COUNT = "portrait_home_column_count"
|
||||
const val LANDSCAPE_HOME_COLUMN_COUNT = "landscape_home_column_count"
|
||||
|
||||
// default home screen grid size
|
||||
const val ROW_COUNT = 6
|
||||
const val COLUMN_COUNT = 5
|
||||
const val MIN_ROW_COUNT = 2
|
||||
const val MAX_ROW_COUNT = 15
|
||||
const val MIN_COLUMN_COUNT = 2
|
||||
const val MAX_COLUMN_COUNT = 15
|
||||
|
||||
const val UNINSTALL_APP_REQUEST_CODE = 50
|
||||
const val REQUEST_CONFIGURE_WIDGET = 51
|
||||
|
|
|
@ -23,10 +23,14 @@ import com.simplemobiletools.commons.helpers.isSPlus
|
|||
import com.simplemobiletools.launcher.R
|
||||
import com.simplemobiletools.launcher.activities.MainActivity
|
||||
import com.simplemobiletools.launcher.extensions.getDrawableForPackageName
|
||||
import com.simplemobiletools.launcher.extensions.getHomeColumnCount
|
||||
import com.simplemobiletools.launcher.extensions.getHomeRowCount
|
||||
import com.simplemobiletools.launcher.extensions.homeScreenGridItemsDB
|
||||
import com.simplemobiletools.launcher.helpers.*
|
||||
import com.simplemobiletools.launcher.models.HomeScreenGridItem
|
||||
import kotlinx.android.synthetic.main.activity_main.view.*
|
||||
import kotlin.math.max
|
||||
import kotlin.math.min
|
||||
|
||||
class HomeScreenGrid(context: Context, attrs: AttributeSet, defStyle: Int) : RelativeLayout(context, attrs, defStyle) {
|
||||
constructor(context: Context, attrs: AttributeSet) : this(context, attrs, 0)
|
||||
|
@ -41,9 +45,10 @@ class HomeScreenGrid(context: Context, attrs: AttributeSet, defStyle: Int) : Rel
|
|||
private var isFirstDraw = true
|
||||
private var iconSize = 0
|
||||
|
||||
// let's use a 6x5 grid for now with 1 special row at the bottom, prefilled with default apps
|
||||
private var cellXCoords = ArrayList<Int>(COLUMN_COUNT)
|
||||
private var cellYCoords = ArrayList<Int>(ROW_COUNT)
|
||||
private var columnCount = context.getHomeColumnCount()
|
||||
private var rowCount = context.getHomeRowCount()
|
||||
private var cellXCoords = ArrayList<Int>(columnCount)
|
||||
private var cellYCoords = ArrayList<Int>(rowCount)
|
||||
var cellWidth = 0
|
||||
var cellHeight = 0
|
||||
|
||||
|
@ -106,6 +111,16 @@ class HomeScreenGrid(context: Context, attrs: AttributeSet, defStyle: Int) : Rel
|
|||
}
|
||||
}
|
||||
|
||||
fun resizeGrid(newRowCount: Int, newColumnCount: Int) {
|
||||
if (columnCount != newColumnCount || rowCount != newRowCount){
|
||||
rowCount = newRowCount
|
||||
columnCount = newColumnCount
|
||||
cellXCoords = ArrayList(columnCount)
|
||||
cellYCoords = ArrayList(rowCount)
|
||||
invalidate()
|
||||
}
|
||||
}
|
||||
|
||||
fun removeAppIcon(item: HomeScreenGridItem) {
|
||||
ensureBackgroundThread {
|
||||
removeItemFromHomeScreen(item)
|
||||
|
@ -521,11 +536,15 @@ class HomeScreenGrid(context: Context, attrs: AttributeSet, defStyle: Int) : Rel
|
|||
}
|
||||
|
||||
gridItems.filter { it.drawable != null && it.type == ITEM_TYPE_ICON || it.type == ITEM_TYPE_SHORTCUT }.forEach { item ->
|
||||
if (item.outOfBounds()) {
|
||||
return@forEach
|
||||
}
|
||||
|
||||
if (item.id != draggedItem?.id) {
|
||||
val drawableX = cellXCoords[item.left] + iconMargin + sideMargins.left
|
||||
|
||||
// icons at the bottom are drawn at the bottom of the grid and they have no label
|
||||
if (item.top == ROW_COUNT - 1) {
|
||||
if (item.top == context.getHomeRowCount() - 1) {
|
||||
val drawableY = cellYCoords[item.top] + cellHeight - iconSize - iconMargin * 2 + sideMargins.top
|
||||
item.drawable!!.setBounds(drawableX, drawableY, drawableX + iconSize, drawableY + iconSize)
|
||||
} else {
|
||||
|
@ -569,7 +588,7 @@ class HomeScreenGrid(context: Context, attrs: AttributeSet, defStyle: Int) : Rel
|
|||
val gridCells = getClosestGridCells(center)
|
||||
if (gridCells != null) {
|
||||
val shadowX = cellXCoords[gridCells.first] + iconMargin.toFloat() + iconSize / 2 + sideMargins.left
|
||||
val shadowY = if (gridCells.second == ROW_COUNT - 1) {
|
||||
val shadowY = if (gridCells.second == context.getHomeRowCount() - 1) {
|
||||
cellYCoords[gridCells.second] + cellHeight - iconSize / 2 - iconMargin * 2
|
||||
} else {
|
||||
cellYCoords[gridCells.second] + iconSize
|
||||
|
@ -621,14 +640,14 @@ class HomeScreenGrid(context: Context, attrs: AttributeSet, defStyle: Int) : Rel
|
|||
}
|
||||
|
||||
private fun fillCellSizes() {
|
||||
cellWidth = getFakeWidth() / COLUMN_COUNT
|
||||
cellHeight = getFakeHeight() / ROW_COUNT
|
||||
iconSize = cellWidth - 2 * iconMargin
|
||||
for (i in 0 until COLUMN_COUNT) {
|
||||
cellWidth = getFakeWidth() / context.getHomeColumnCount()
|
||||
cellHeight = getFakeHeight() / context.getHomeRowCount()
|
||||
iconSize = min(cellWidth, cellHeight) - 2 * iconMargin
|
||||
for (i in 0 until context.getHomeColumnCount()) {
|
||||
cellXCoords.add(i, i * cellWidth)
|
||||
}
|
||||
|
||||
for (i in 0 until ROW_COUNT) {
|
||||
for (i in 0 until context.getHomeRowCount()) {
|
||||
cellYCoords.add(i, i * cellHeight)
|
||||
}
|
||||
|
||||
|
@ -669,15 +688,15 @@ class HomeScreenGrid(context: Context, attrs: AttributeSet, defStyle: Int) : Rel
|
|||
if (rect.left < 0) {
|
||||
rect.right -= rect.left
|
||||
rect.left = 0
|
||||
} else if (rect.right > COLUMN_COUNT - 1) {
|
||||
val diff = rect.right - COLUMN_COUNT + 1
|
||||
} else if (rect.right > context.getHomeColumnCount() - 1) {
|
||||
val diff = rect.right - context.getHomeColumnCount() + 1
|
||||
rect.right -= diff
|
||||
rect.left -= diff
|
||||
}
|
||||
|
||||
// do not allow placing widgets at the bottom row, that is for pinned default apps
|
||||
if (rect.bottom >= ROW_COUNT - 1) {
|
||||
val diff = rect.bottom - ROW_COUNT + 2
|
||||
if (rect.bottom >= context.getHomeRowCount() - 1) {
|
||||
val diff = rect.bottom - context.getHomeRowCount() + 2
|
||||
rect.bottom -= diff
|
||||
rect.top -= diff
|
||||
}
|
||||
|
@ -687,6 +706,10 @@ class HomeScreenGrid(context: Context, attrs: AttributeSet, defStyle: Int) : Rel
|
|||
|
||||
fun isClickingGridItem(x: Int, y: Int): HomeScreenGridItem? {
|
||||
for (gridItem in gridItems) {
|
||||
if (gridItem.outOfBounds()) {
|
||||
continue
|
||||
}
|
||||
|
||||
if (gridItem.type == ITEM_TYPE_ICON || gridItem.type == ITEM_TYPE_SHORTCUT) {
|
||||
val rect = getClickableRect(gridItem)
|
||||
if (x >= rect.left && x <= rect.right && y >= rect.top && y <= rect.bottom) {
|
||||
|
@ -706,4 +729,8 @@ class HomeScreenGrid(context: Context, attrs: AttributeSet, defStyle: Int) : Rel
|
|||
|
||||
return null
|
||||
}
|
||||
|
||||
private fun HomeScreenGridItem.outOfBounds(): Boolean {
|
||||
return (left >= cellXCoords.size || right >= cellXCoords.size || top >= cellYCoords.size || bottom >= cellYCoords.size)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,9 +10,9 @@ import android.view.MotionEvent
|
|||
import android.widget.RelativeLayout
|
||||
import com.simplemobiletools.launcher.R
|
||||
import com.simplemobiletools.launcher.extensions.getCellCount
|
||||
import com.simplemobiletools.launcher.helpers.COLUMN_COUNT
|
||||
import com.simplemobiletools.launcher.extensions.getHomeColumnCount
|
||||
import com.simplemobiletools.launcher.extensions.getHomeRowCount
|
||||
import com.simplemobiletools.launcher.helpers.MAX_CLICK_DURATION
|
||||
import com.simplemobiletools.launcher.helpers.ROW_COUNT
|
||||
import com.simplemobiletools.launcher.models.HomeScreenGridItem
|
||||
|
||||
@SuppressLint("ViewConstructor")
|
||||
|
@ -76,8 +76,8 @@ class MyAppWidgetResizeFrame(context: Context, attrs: AttributeSet, defStyle: In
|
|||
it.provider.className == gridItem.className
|
||||
} ?: return
|
||||
|
||||
minResizeWidthCells = Math.min(COLUMN_COUNT, context.getCellCount(providerInfo.minResizeWidth))
|
||||
minResizeHeightCells = Math.min(ROW_COUNT, context.getCellCount(providerInfo.minResizeHeight))
|
||||
minResizeWidthCells = Math.min(context.getHomeColumnCount(), context.getCellCount(providerInfo.minResizeWidth))
|
||||
minResizeHeightCells = Math.min(context.getHomeRowCount(), context.getCellCount(providerInfo.minResizeHeight))
|
||||
redrawFrame()
|
||||
|
||||
occupiedCells.clear()
|
||||
|
@ -224,7 +224,7 @@ class MyAppWidgetResizeFrame(context: Context, attrs: AttributeSet, defStyle: In
|
|||
}
|
||||
}
|
||||
|
||||
if (wantedBottomCellY == ROW_COUNT - 1) {
|
||||
if (wantedBottomCellY == context.getHomeRowCount() - 1) {
|
||||
areAllCellsFree = false
|
||||
}
|
||||
|
||||
|
@ -322,7 +322,7 @@ class MyAppWidgetResizeFrame(context: Context, attrs: AttributeSet, defStyle: In
|
|||
}
|
||||
}
|
||||
|
||||
if (wantedBottomCellY == ROW_COUNT - 1) {
|
||||
if (wantedBottomCellY == context.getHomeRowCount() - 1) {
|
||||
areAllCellsFree = false
|
||||
}
|
||||
|
||||
|
|
|
@ -135,6 +135,65 @@
|
|||
android:text="@string/manage_hidden_icons" />
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<include
|
||||
android:id="@+id/settings_general_settings_divider"
|
||||
layout="@layout/divider" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/settings_home_screen_label"
|
||||
style="@style/SettingsSectionLabelStyle"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="Home screen" />
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/settings_home_screen_row_count_holder"
|
||||
style="@style/SettingsHolderTextViewOneLinerStyle"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/ripple_bottom_corners">
|
||||
|
||||
<com.simplemobiletools.commons.views.MyTextView
|
||||
android:id="@+id/settings_home_screen_row_count_label"
|
||||
style="@style/SettingsTextLabelStyle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="Home screen row count" />
|
||||
|
||||
<com.simplemobiletools.commons.views.MyTextView
|
||||
android:id="@+id/settings_home_screen_row_count"
|
||||
style="@style/SettingsTextValueStyle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@+id/settings_home_screen_row_count_label"
|
||||
tools:text="3" />
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/settings_home_screen_column_count_holder"
|
||||
style="@style/SettingsHolderTextViewOneLinerStyle"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/ripple_bottom_corners">
|
||||
|
||||
<com.simplemobiletools.commons.views.MyTextView
|
||||
android:id="@+id/settings_home_screen_column_count_label"
|
||||
style="@style/SettingsTextLabelStyle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="Home screen column count" />
|
||||
|
||||
<com.simplemobiletools.commons.views.MyTextView
|
||||
android:id="@+id/settings_home_screen_column_count"
|
||||
style="@style/SettingsTextValueStyle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@+id/settings_home_screen_column_count_label"
|
||||
tools:text="3" />
|
||||
|
||||
</RelativeLayout>
|
||||
</LinearLayout>
|
||||
</androidx.core.widget.NestedScrollView>
|
||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||
|
|
Loading…
Reference in New Issue