Font size settings changed to percentages
This commit is contained in:
Tibor Kaputa 2020-05-28 21:28:01 +02:00 committed by GitHub
commit a379f572cb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 46 additions and 9 deletions

View File

@ -151,22 +151,30 @@ class SettingsActivity : SimpleActivity() {
}
private fun setupFontSize() {
settings_font_size.text = getFontSizeText()
settings_font_size.text = getFontSizePercentText(config.fontSize)
settings_font_size_holder.setOnClickListener {
val items = arrayListOf(
RadioItem(FONT_SIZE_SMALL, getString(R.string.small)),
RadioItem(FONT_SIZE_MEDIUM, getString(R.string.medium)),
RadioItem(FONT_SIZE_LARGE, getString(R.string.large)),
RadioItem(FONT_SIZE_EXTRA_LARGE, getString(R.string.extra_large)))
RadioItem(FONT_SIZE_50_PERCENT, getFontSizePercentText(FONT_SIZE_50_PERCENT)),
RadioItem(FONT_SIZE_75_PERCENT, getFontSizePercentText(FONT_SIZE_75_PERCENT)),
RadioItem(FONT_SIZE_100_PERCENT, getFontSizePercentText(FONT_SIZE_100_PERCENT)),
RadioItem(FONT_SIZE_125_PERCENT, getFontSizePercentText(FONT_SIZE_125_PERCENT)),
RadioItem(FONT_SIZE_150_PERCENT, getFontSizePercentText(FONT_SIZE_150_PERCENT)),
RadioItem(FONT_SIZE_175_PERCENT, getFontSizePercentText(FONT_SIZE_175_PERCENT)),
RadioItem(FONT_SIZE_200_PERCENT, getFontSizePercentText(FONT_SIZE_200_PERCENT)),
RadioItem(FONT_SIZE_250_PERCENT, getFontSizePercentText(FONT_SIZE_250_PERCENT)),
RadioItem(FONT_SIZE_300_PERCENT, getFontSizePercentText(FONT_SIZE_300_PERCENT))
)
RadioGroupDialog(this@SettingsActivity, items, config.fontSize) {
config.fontSize = it as Int
settings_font_size.text = getFontSizeText()
settings_font_size.text = getFontSizePercentText(config.fontSize)
updateWidgets()
}
}
}
private fun getFontSizePercentText(fontSizePercentage: Int): String = "$fontSizePercentage%"
private fun setupGravity() {
settings_gravity.text = getGravityText()
settings_gravity_holder.setOnClickListener {

View File

@ -4,9 +4,13 @@ import android.appwidget.AppWidgetManager
import android.content.ComponentName
import android.content.Context
import android.content.Intent
import com.simplemobiletools.commons.extensions.baseConfig
import com.simplemobiletools.commons.helpers.FONT_SIZE_LARGE
import com.simplemobiletools.commons.helpers.FONT_SIZE_MEDIUM
import com.simplemobiletools.commons.helpers.FONT_SIZE_SMALL
import com.simplemobiletools.notes.pro.R
import com.simplemobiletools.notes.pro.databases.NotesDatabase
import com.simplemobiletools.notes.pro.helpers.Config
import com.simplemobiletools.notes.pro.helpers.MyWidgetProvider
import com.simplemobiletools.notes.pro.helpers.*
import com.simplemobiletools.notes.pro.interfaces.NotesDao
import com.simplemobiletools.notes.pro.interfaces.WidgetsDao
@ -26,3 +30,16 @@ fun Context.updateWidgets() {
}
}
}
fun Context.getEditorFontSize(): Float {
val defaultFontSizeDimension = when(resources.getInteger(R.integer.default_font_size)) {
FONT_SIZE_SMALL -> resources.getDimension(R.dimen.small_text_size)
FONT_SIZE_MEDIUM -> resources.getDimension(R.dimen.middle_text_size)
FONT_SIZE_LARGE -> resources.getDimension(R.dimen.big_text_size)
else -> resources.getDimension(R.dimen.extra_big_text_size)
}
return when(baseConfig.fontSize) {
resources.getInteger(R.integer.default_font_size) -> defaultFontSizeDimension
else -> defaultFontSizeDimension * baseConfig.fontSize / 100
}
}

View File

@ -18,6 +18,7 @@ import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.notes.pro.R
import com.simplemobiletools.notes.pro.activities.MainActivity
import com.simplemobiletools.notes.pro.extensions.config
import com.simplemobiletools.notes.pro.extensions.getEditorFontSize
import com.simplemobiletools.notes.pro.extensions.updateWidgets
import com.simplemobiletools.notes.pro.helpers.MyMovementMethod
import com.simplemobiletools.notes.pro.helpers.NOTE_ID
@ -126,7 +127,7 @@ class TextFragment : NoteFragment() {
val adjustedPrimaryColor = context.getAdjustedPrimaryColor()
setColors(config.textColor, adjustedPrimaryColor, config.backgroundColor)
setTextSize(TypedValue.COMPLEX_UNIT_PX, context.getTextSize())
setTextSize(TypedValue.COMPLEX_UNIT_PX, context.getEditorFontSize())
highlightColor = adjustedPrimaryColor.adjustAlpha(.4f)
gravity = config.getTextGravity()

View File

@ -41,3 +41,14 @@ enum class NoteType(val value: Int) { TYPE_TEXT(0), TYPE_CHECKLIST(1) }
// mime types
const val MIME_TEXT_PLAIN = "text/plain"
// font size percentage options
const val FONT_SIZE_50_PERCENT = 50
const val FONT_SIZE_75_PERCENT = 75
const val FONT_SIZE_100_PERCENT = 100
const val FONT_SIZE_125_PERCENT = 125
const val FONT_SIZE_150_PERCENT = 150
const val FONT_SIZE_175_PERCENT = 175
const val FONT_SIZE_200_PERCENT = 200
const val FONT_SIZE_250_PERCENT = 250
const val FONT_SIZE_300_PERCENT = 300