diff --git a/app/build.gradle b/app/build.gradle index eddfa9f..6137d03 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,13 +1,12 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 23 - buildToolsVersion "23.0.1" + compileSdkVersion 28 defaultConfig { applicationId "com.viksaa.autofit.et" - minSdkVersion 14 - targetSdkVersion 23 + minSdkVersion 21 + targetSdkVersion 28 versionCode 1 versionName "1.0" } @@ -20,13 +19,9 @@ android { } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) - testCompile 'junit:junit:4.12' - compile 'com.android.support:appcompat-v7:23.1.0' - compile 'com.android.support:design:23.1.0' - - compile project(":lib") - - /* ButterKnife */ - compile 'com.jakewharton:butterknife:7.0.1' + implementation project(":lib") + testImplementation 'junit:junit:4.12' + implementation "androidx.appcompat:appcompat:1.1.0-rc01" + implementation "androidx.coordinatorlayout:coordinatorlayout:1.1.0-beta01" + implementation "com.google.android.material:material:1.1.0-alpha09" } diff --git a/app/src/main/java/com/viksaa/autofit/et/MainActivity.java b/app/src/main/java/com/viksaa/autofit/et/MainActivity.java index b7c2854..f23594c 100644 --- a/app/src/main/java/com/viksaa/autofit/et/MainActivity.java +++ b/app/src/main/java/com/viksaa/autofit/et/MainActivity.java @@ -1,36 +1,51 @@ package com.viksaa.autofit.et; import android.os.Bundle; -import android.support.design.widget.CoordinatorLayout; -import android.support.v7.app.AppCompatActivity; -import android.support.v7.widget.Toolbar; import android.view.Menu; import android.view.MenuItem; +import android.widget.SeekBar; + +import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.widget.Toolbar; +import androidx.coordinatorlayout.widget.CoordinatorLayout; import com.autofit.et.lib.AutoFitEditText; import com.autofit.et.lib.AutoFitEditTextUtil; -import butterknife.Bind; -import butterknife.ButterKnife; - public class MainActivity extends AppCompatActivity { - @Bind(R.id.toolbar) - Toolbar mToolbar; - @Bind(R.id.rET) - AutoFitEditText mAutoFitEditText; - @Bind(R.id.root) - CoordinatorLayout mRootView; + private Toolbar mToolbar; + private AutoFitEditText mAutoFitEditText; + private CoordinatorLayout mRootView; + private SeekBar mLetterSpacingSeekBar; + private SeekBar mLineSpacingSeekBar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); - ButterKnife.bind(this); setSupportActionBar(mToolbar); + mToolbar = findViewById(R.id.toolbar); + mAutoFitEditText = findViewById(R.id.rET); + mRootView = findViewById(R.id.root); + mLetterSpacingSeekBar = findViewById(R.id.letter_spacing_seek_bar); + mLineSpacingSeekBar = findViewById(R.id.line_spacing_seek_bar); initAutoFitEditText(); + mLineSpacingSeekBar.setOnSeekBarChangeListener(new SimpleOnSeekBarChangeListener() { + @Override + public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { + mAutoFitEditText.setLineSpacing(progress, 1f); + } + }); + + mLetterSpacingSeekBar.setOnSeekBarChangeListener(new SimpleOnSeekBarChangeListener() { + @Override + public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { + mAutoFitEditText.setLetterSpacing(progress/100f); + } + }); } @@ -41,11 +56,11 @@ public void initAutoFitEditText() { mAutoFitEditText.setFocusable(true); mAutoFitEditText.setEnableSizeCache(false); //might cause crash on some devices - mAutoFitEditText.setMovementMethod(null); +// mAutoFitEditText.setMovementMethod(null); // can be added after layout inflation; mAutoFitEditText.setMaxHeight(330); //don't forget to add min text size programmatically - mAutoFitEditText.setMinTextSize(60f); + mAutoFitEditText.setMinTextSize(1f); AutoFitEditTextUtil.setNormalization(this, mRootView, mAutoFitEditText); } @@ -64,4 +79,16 @@ public boolean onOptionsItemSelected(MenuItem item) { } return super.onOptionsItemSelected(item); } + + private static abstract class SimpleOnSeekBarChangeListener implements SeekBar.OnSeekBarChangeListener { + + @Override + public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { } + + @Override + public void onStartTrackingTouch(SeekBar seekBar) { } + + @Override + public void onStopTrackingTouch(SeekBar seekBar) { } + } } diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 8b7b51d..8d9f3c6 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -1,5 +1,6 @@ - - - + android:background="?attr/colorPrimary" /> - + - + diff --git a/app/src/main/res/layout/content_main.xml b/app/src/main/res/layout/content_main.xml index afb2b1a..d4dc050 100644 --- a/app/src/main/res/layout/content_main.xml +++ b/app/src/main/res/layout/content_main.xml @@ -11,15 +11,13 @@ + android:layout_height="match_parent" + android:layout_above="@id/seek_bars_container"> + + + + + + + diff --git a/app/src/main/res/values-v21/styles.xml b/app/src/main/res/values-v21/styles.xml index 65d0c39..89f0ced 100644 --- a/app/src/main/res/values-v21/styles.xml +++ b/app/src/main/res/values-v21/styles.xml @@ -1,8 +1,8 @@ > diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 9e2400a..db67bbf 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -3,7 +3,7 @@ #4CAF50 #388E3C #C8E6C9 - #9E9E9E + #3F51B5 #212121 #727272 #FFFFFF diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 0ffe693..c5d9f23 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -3,4 +3,6 @@ Settings HINT + Letter Spacing: + Line Spacing: diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index a15a881..4bb6418 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -1,7 +1,7 @@ -