diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d9008aa..4da5647 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -14,7 +14,7 @@
android:supportsRtl="true"
android:theme="@style/finnmglasTheme">
-
@@ -28,7 +28,7 @@
android:screenOrientation="portrait"
tools:ignore="LockedOrientationActivity">
-
diff --git a/app/src/main/java/com/finnmglas/launcher/extern/Functions.kt b/app/src/main/java/com/finnmglas/launcher/Functions.kt
similarity index 98%
rename from app/src/main/java/com/finnmglas/launcher/extern/Functions.kt
rename to app/src/main/java/com/finnmglas/launcher/Functions.kt
index f079f5b..77a6ff4 100644
--- a/app/src/main/java/com/finnmglas/launcher/extern/Functions.kt
+++ b/app/src/main/java/com/finnmglas/launcher/Functions.kt
@@ -1,4 +1,4 @@
-package com.finnmglas.launcher.extern
+package com.finnmglas.launcher
import android.app.Activity
import android.app.AlertDialog
@@ -17,8 +17,7 @@ import android.view.animation.*
import android.widget.Button
import android.widget.ImageView
import android.widget.Toast
-import com.finnmglas.launcher.choose.ChooseActivity
-import com.finnmglas.launcher.R
+import com.finnmglas.launcher.list.ListActivity
import com.finnmglas.launcher.settings.SettingsActivity
import com.finnmglas.launcher.settings.intendedSettingsPause
import kotlin.math.roundToInt
@@ -217,7 +216,7 @@ fun openSettings(activity: Activity){
}
fun openAppsList(activity: Activity){
- val intent = Intent(activity, ChooseActivity::class.java)
+ val intent = Intent(activity, ListActivity::class.java)
intent.putExtra("action", "view")
intendedSettingsPause = true
activity.startActivity(intent)
diff --git a/app/src/main/java/com/finnmglas/launcher/MainActivity.kt b/app/src/main/java/com/finnmglas/launcher/HomeActivity.kt
similarity index 77%
rename from app/src/main/java/com/finnmglas/launcher/MainActivity.kt
rename to app/src/main/java/com/finnmglas/launcher/HomeActivity.kt
index 3768a38..93d40ea 100644
--- a/app/src/main/java/com/finnmglas/launcher/MainActivity.kt
+++ b/app/src/main/java/com/finnmglas/launcher/HomeActivity.kt
@@ -11,10 +11,9 @@ import android.view.*
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.GestureDetectorCompat
import androidx.recyclerview.widget.RecyclerView
-import com.finnmglas.launcher.choose.apps.AppsRecyclerAdapter
-import com.finnmglas.launcher.extern.*
+import com.finnmglas.launcher.list.apps.AppsRecyclerAdapter
import com.finnmglas.launcher.tutorial.TutorialActivity
-import kotlinx.android.synthetic.main.activity_main.*
+import kotlinx.android.synthetic.main.home.*
import java.text.SimpleDateFormat
import java.util.*
import kotlin.concurrent.fixedRateTimer
@@ -24,7 +23,7 @@ import kotlin.math.abs
lateinit var viewAdapter: RecyclerView.Adapter<*>
lateinit var viewManager: RecyclerView.LayoutManager
-class MainActivity : AppCompatActivity(),
+class HomeActivity : AppCompatActivity(),
GestureDetector.OnGestureListener, GestureDetector.OnDoubleTapListener {
private var currentTheme = "" // keep track of theme changes
@@ -74,13 +73,13 @@ class MainActivity : AppCompatActivity(),
else -> R.style.customTheme
}
)
- setContentView(R.layout.activity_main)
+ setContentView(R.layout.home)
// Start by showing the settings icon
showSettingsIcon()
// As older APIs somehow do not recognize the xml defined onClick
- activity_main_settings_icon.setOnClickListener() {
+ home_settings_icon.setOnClickListener() {
openSettings(this)
overridePendingTransition(R.anim.bottom_up, android.R.anim.fade_out)
}
@@ -107,7 +106,7 @@ class MainActivity : AppCompatActivity(),
loadSettings(sharedPref)
if (currentTheme == "custom") {
- activity_main_settings_icon.setTextColor(vibrantColor)
+ home_settings_icon.setTextColor(vibrantColor)
}
mDetector = GestureDetectorCompat(this, this)
@@ -121,21 +120,23 @@ class MainActivity : AppCompatActivity(),
// TODO: do this immediately after changing preferences
if (currentTheme != getSavedTheme(this)) recreate()
- if (activity_main_background_image != null && getSavedTheme(this) == "custom")
- activity_main_background_image.setImageBitmap(background)
+ if (home_background_image != null && getSavedTheme(
+ this
+ ) == "custom")
+ home_background_image.setImageBitmap(background)
val dateFormat = SimpleDateFormat("yyyy-MM-dd", Locale.getDefault())
val timeFormat = SimpleDateFormat("HH:mm:ss", Locale.getDefault())
clockTimer = fixedRateTimer("clockTimer", true, 0L, 100) {
- this@MainActivity.runOnUiThread {
+ this@HomeActivity.runOnUiThread {
val t = timeFormat.format(Date())
- if (activity_main_time_view.text != t)
- activity_main_time_view.text = t
+ if (home_time_view.text != t)
+ home_time_view.text = t
val d = dateFormat.format(Date())
- if (activity_main_date_view.text != d)
- activity_main_date_view.text = d
+ if (home_date_view.text != d)
+ home_date_view.text = d
}
}
}
@@ -149,13 +150,29 @@ class MainActivity : AppCompatActivity(),
override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
if (keyCode == KeyEvent.KEYCODE_BACK) { if (settingsIconShown) hideSettingsIcon() }
- else if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) launch(volumeUpApp, this)
- else if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) launch(volumeDownApp, this)
+ else if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) launch(
+ volumeUpApp,
+ this
+ )
+ else if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) launch(
+ volumeDownApp,
+ this
+ )
return true
}
- fun dateViewOnTouch(v: View) { launch(calendarApp, this) }
- fun timeViewOnTouch(v: View) { launch(clockApp, this) }
+ fun dateViewOnTouch(v: View) {
+ launch(
+ calendarApp,
+ this
+ )
+ }
+ fun timeViewOnTouch(v: View) {
+ launch(
+ clockApp,
+ this
+ )
+ }
override fun onFling(e1: MotionEvent, e2: MotionEvent, dX: Float, dY: Float): Boolean {
@@ -168,24 +185,42 @@ class MainActivity : AppCompatActivity(),
val strictness = 4 // how distinguished the swipe has to be to be accepted
// Only open if the swipe was not from the phones top edge
- if (diffY < -height / 8 && abs(diffY) > strictness * abs(diffX) && e1.y > 100) launch(downApp, this)
+ if (diffY < -height / 8 && abs(diffY) > strictness * abs(diffX) && e1.y > 100) launch(
+ downApp,
+ this
+ )
else if (diffY > height / 8 && abs(diffY) > strictness * abs(diffX)) {
- launch(upApp, this)
+ launch(
+ upApp,
+ this
+ )
overridePendingTransition(R.anim.bottom_up, android.R.anim.fade_out)
}
- else if (diffX > width / 4 && abs(diffX) > strictness * abs(diffY)) launch(leftApp, this)
- else if (diffX < -width / 4 && abs(diffX) > strictness * abs(diffY)) launch(rightApp, this)
+ else if (diffX > width / 4 && abs(diffX) > strictness * abs(diffY)) launch(
+ leftApp,
+ this
+ )
+ else if (diffX < -width / 4 && abs(diffX) > strictness * abs(diffY)) launch(
+ rightApp,
+ this
+ )
return true
}
override fun onLongPress(event: MotionEvent) {
- if(longClickApp != "") launch(longClickApp, this)
+ if(longClickApp != "") launch(
+ longClickApp,
+ this
+ )
else openSettings(this)
}
override fun onDoubleTap(event: MotionEvent): Boolean {
- launch(doubleClickApp, this)
+ launch(
+ doubleClickApp,
+ this
+ )
return false
}
@@ -201,23 +236,25 @@ class MainActivity : AppCompatActivity(),
}
private fun showSettingsIcon(){
- activity_main_settings_icon.fadeRotateIn()
- activity_main_settings_icon.visibility = View.VISIBLE
+ home_settings_icon.fadeRotateIn()
+ home_settings_icon.visibility = View.VISIBLE
settingsIconShown = true
tooltipTimer = fixedRateTimer("tooltipTimer", true, 10000, 1000) {
- this@MainActivity.runOnUiThread { hideSettingsIcon() }
+ this@HomeActivity.runOnUiThread { hideSettingsIcon() }
}
}
private fun hideSettingsIcon(){
tooltipTimer.cancel()
- activity_main_settings_icon.fadeRotateOut()
- activity_main_settings_icon.visibility = View.INVISIBLE
+ home_settings_icon.fadeRotateOut()
+ home_settings_icon.visibility = View.INVISIBLE
settingsIconShown = false
}
- fun settingsIconOnTouch(view: View){ openSettings(this) }
+ fun settingsIconOnTouch(view: View){
+ openSettings(this)
+ }
override fun onTouchEvent(event: MotionEvent): Boolean {
return if (mDetector.onTouchEvent(event)) { false } else { super.onTouchEvent(event) }
diff --git a/app/src/main/java/com/finnmglas/launcher/choose/ChooseSectionsPagerAdapter.kt b/app/src/main/java/com/finnmglas/launcher/choose/ChooseSectionsPagerAdapter.kt
deleted file mode 100644
index 62563b6..0000000
--- a/app/src/main/java/com/finnmglas/launcher/choose/ChooseSectionsPagerAdapter.kt
+++ /dev/null
@@ -1,38 +0,0 @@
-package com.finnmglas.launcher.choose
-
-import android.content.Context
-import androidx.fragment.app.Fragment
-import androidx.fragment.app.FragmentManager
-import androidx.fragment.app.FragmentPagerAdapter
-import com.finnmglas.launcher.*
-import com.finnmglas.launcher.choose.apps.ChooseFragmentApps
-import com.finnmglas.launcher.choose.other.ChooseFragmentOther
-
-private val TAB_TITLES = arrayOf(
- R.string.choose_tab_app,
- R.string.choose_tab_other
-)
-
-/** Returns the fragment corresponding to the selected tab.*/
-class ChooseSectionsPagerAdapter(private val context: Context, fm: FragmentManager)
- : FragmentPagerAdapter(fm, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) {
-
- override fun getItem(position: Int): Fragment {
- return when (position){
- 0 -> ChooseFragmentApps()
- 1 -> ChooseFragmentOther()
- else -> Fragment()
- }
- }
-
- override fun getPageTitle(position: Int): CharSequence? {
- return context.resources.getString(TAB_TITLES[position])
- }
-
- override fun getCount(): Int {
- return when (action) {
- "view" -> 1
- else -> 2
- }
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/finnmglas/launcher/extern/FontAwesome.kt b/app/src/main/java/com/finnmglas/launcher/libraries/FontAwesome.kt
similarity index 96%
rename from app/src/main/java/com/finnmglas/launcher/extern/FontAwesome.kt
rename to app/src/main/java/com/finnmglas/launcher/libraries/FontAwesome.kt
index 4b8f2fb..99cbf71 100644
--- a/app/src/main/java/com/finnmglas/launcher/extern/FontAwesome.kt
+++ b/app/src/main/java/com/finnmglas/launcher/libraries/FontAwesome.kt
@@ -1,4 +1,4 @@
-package com.finnmglas.launcher.extern // replace with your package
+package com.finnmglas.launcher.libraries // replace with your package
// On GitHub: https://github.com/finnmglas/fontawesome-android
diff --git a/app/src/main/java/com/finnmglas/launcher/choose/ChooseActivity.kt b/app/src/main/java/com/finnmglas/launcher/list/ListActivity.kt
similarity index 56%
rename from app/src/main/java/com/finnmglas/launcher/choose/ChooseActivity.kt
rename to app/src/main/java/com/finnmglas/launcher/list/ListActivity.kt
index f582dc2..0264291 100644
--- a/app/src/main/java/com/finnmglas/launcher/choose/ChooseActivity.kt
+++ b/app/src/main/java/com/finnmglas/launcher/list/ListActivity.kt
@@ -1,4 +1,4 @@
-package com.finnmglas.launcher.choose
+package com.finnmglas.launcher.list
import android.app.Activity
import android.content.Intent
@@ -8,20 +8,26 @@ import android.view.WindowManager
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.viewpager.widget.ViewPager
-import com.finnmglas.launcher.R
-import com.finnmglas.launcher.extern.*
+import com.finnmglas.launcher.*
import com.finnmglas.launcher.settings.intendedSettingsPause
import com.google.android.material.tabs.TabLayout
-import kotlinx.android.synthetic.main.activity_choose.*
+import kotlinx.android.synthetic.main.list.*
+
+import android.content.Context
+import androidx.fragment.app.Fragment
+import androidx.fragment.app.FragmentManager
+import androidx.fragment.app.FragmentPagerAdapter
+import com.finnmglas.launcher.list.apps.ChooseFragmentApps
+import com.finnmglas.launcher.list.other.ChooseFragmentOther
var intendedChoosePause = false // know when to close
-// TODO: Better solution for this (used in choose-fragments)
+// TODO: Better solution for this (used in list-fragments)
var action = "view"
var forApp = ""
-class ChooseActivity : AppCompatActivity() {
+class ListActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@@ -36,16 +42,16 @@ class ChooseActivity : AppCompatActivity() {
else -> R.style.finnmglasTheme
}
)
- setContentView(R.layout.activity_choose)
+ setContentView(R.layout.list)
if (getSavedTheme(this) == "custom") {
- activity_choose_container.setBackgroundColor(dominantColor)
- activity_choose_app_bar.setBackgroundColor(dominantColor)
- activity_choose_close.setTextColor(vibrantColor)
+ list_container.setBackgroundColor(dominantColor)
+ list_appbar.setBackgroundColor(dominantColor)
+ list_close.setTextColor(vibrantColor)
}
// As older APIs somehow do not recognize the xml defined onClick
- activity_choose_close.setOnClickListener() { finish() }
+ list_close.setOnClickListener() { finish() }
// get info about which action this activity is open for
val bundle = intent.extras
@@ -57,18 +63,18 @@ class ChooseActivity : AppCompatActivity() {
// Hide tabs for the "view" action
if (action == "view") {
- activity_choose_tabs.visibility = View.GONE
+ list_tabs.visibility = View.GONE
}
when (action) {
- "view" -> activity_choose_heading.text = getString(R.string.choose_title_view)
- "pick" -> activity_choose_heading.text = getString(R.string.choose_title)
+ "view" -> list_heading.text = getString(R.string.choose_title_view)
+ "pick" -> list_heading.text = getString(R.string.choose_title)
}
- val sectionsPagerAdapter = ChooseSectionsPagerAdapter(this, supportFragmentManager)
- val viewPager: ViewPager = findViewById(R.id.activity_choose_view_pager)
+ val sectionsPagerAdapter = ListSectionsPagerAdapter(this, supportFragmentManager)
+ val viewPager: ViewPager = findViewById(R.id.list_viewpager)
viewPager.adapter = sectionsPagerAdapter
- val tabs: TabLayout = findViewById(R.id.activity_choose_tabs)
+ val tabs: TabLayout = findViewById(R.id.list_tabs)
tabs.setupWithViewPager(viewPager)
}
@@ -101,3 +107,32 @@ class ChooseActivity : AppCompatActivity() {
fun backHome(view: View) { finish() }
}
+
+private val TAB_TITLES = arrayOf(
+ R.string.choose_tab_app,
+ R.string.choose_tab_other
+)
+
+/** Returns the fragment corresponding to the selected tab.*/
+class ListSectionsPagerAdapter(private val context: Context, fm: FragmentManager)
+ : FragmentPagerAdapter(fm, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) {
+
+ override fun getItem(position: Int): Fragment {
+ return when (position){
+ 0 -> ChooseFragmentApps()
+ 1 -> ChooseFragmentOther()
+ else -> Fragment()
+ }
+ }
+
+ override fun getPageTitle(position: Int): CharSequence? {
+ return context.resources.getString(TAB_TITLES[position])
+ }
+
+ override fun getCount(): Int {
+ return when (action) {
+ "view" -> 1
+ else -> 2
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/finnmglas/launcher/choose/apps/AppInfo.kt b/app/src/main/java/com/finnmglas/launcher/list/apps/AppInfo.kt
similarity index 82%
rename from app/src/main/java/com/finnmglas/launcher/choose/apps/AppInfo.kt
rename to app/src/main/java/com/finnmglas/launcher/list/apps/AppInfo.kt
index 9de1cdd..3266d63 100644
--- a/app/src/main/java/com/finnmglas/launcher/choose/apps/AppInfo.kt
+++ b/app/src/main/java/com/finnmglas/launcher/list/apps/AppInfo.kt
@@ -1,4 +1,4 @@
-package com.finnmglas.launcher.choose.apps
+package com.finnmglas.launcher.list.apps
import android.graphics.drawable.Drawable
diff --git a/app/src/main/java/com/finnmglas/launcher/choose/apps/AppsRecyclerAdapter.kt b/app/src/main/java/com/finnmglas/launcher/list/apps/AppsRecyclerAdapter.kt
similarity index 85%
rename from app/src/main/java/com/finnmglas/launcher/choose/apps/AppsRecyclerAdapter.kt
rename to app/src/main/java/com/finnmglas/launcher/list/apps/AppsRecyclerAdapter.kt
index a365086..082c211 100644
--- a/app/src/main/java/com/finnmglas/launcher/choose/apps/AppsRecyclerAdapter.kt
+++ b/app/src/main/java/com/finnmglas/launcher/list/apps/AppsRecyclerAdapter.kt
@@ -1,4 +1,4 @@
-package com.finnmglas.launcher.choose.apps
+package com.finnmglas.launcher.list.apps
import android.app.Activity
import android.content.Context
@@ -12,9 +12,9 @@ import android.widget.ImageView
import android.widget.PopupMenu
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
-import com.finnmglas.launcher.R
-import com.finnmglas.launcher.extern.*
-import com.finnmglas.launcher.choose.intendedChoosePause
+import com.finnmglas.launcher.*
+import com.finnmglas.launcher.libraries.*
+import com.finnmglas.launcher.list.intendedChoosePause
class AppsRecyclerAdapter(val activity: Activity, val action: String?, val forApp: String?):
RecyclerView.Adapter() {
@@ -23,9 +23,9 @@ class AppsRecyclerAdapter(val activity: Activity, val action: String?, val forAp
inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView),
View.OnClickListener {
- var textView: TextView = itemView.findViewById(R.id.choose_row_app_name)
- var img: ImageView = itemView.findViewById(R.id.choose_row_app_icon) as ImageView
- var menuDots: FontAwesome = itemView.findViewById(R.id.choose_row_app_menu)
+ var textView: TextView = itemView.findViewById(R.id.list_apps_row_name)
+ var img: ImageView = itemView.findViewById(R.id.list_apps_row_icon) as ImageView
+ var menuDots: FontAwesome = itemView.findViewById(R.id.list_apps_row_menu)
override fun onClick(v: View) {
val pos = adapterPosition
@@ -60,7 +60,9 @@ class AppsRecyclerAdapter(val activity: Activity, val action: String?, val forAp
viewHolder.textView.text = appLabel
viewHolder.img.setImageDrawable(appIcon)
- if (getSavedTheme(activity) == "dark") transformGrayscale(viewHolder.img)
+ if (getSavedTheme(activity) == "dark") transformGrayscale(
+ viewHolder.img
+ )
// decide when to show the options popup menu about
if (isSystemApp || action == "pick") {
@@ -93,13 +95,18 @@ class AppsRecyclerAdapter(val activity: Activity, val action: String?, val forAp
val intent = Intent(Intent.ACTION_UNINSTALL_PACKAGE)
intent.data = Uri.parse("package:$appPackageName")
intent.putExtra(Intent.EXTRA_RETURN_RESULT, true)
- activity.startActivityForResult(intent, REQUEST_UNINSTALL)
+ activity.startActivityForResult(intent,
+ REQUEST_UNINSTALL
+ )
true
}
R.id.app_menu_info -> { // open app settings
intendedChoosePause = true
- openAppSettings(appPackageName, activity)
+ openAppSettings(
+ appPackageName,
+ activity
+ )
true
}
else -> false
@@ -114,7 +121,7 @@ class AppsRecyclerAdapter(val activity: Activity, val action: String?, val forAp
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val inflater = LayoutInflater.from(parent.context)
- val view: View = inflater.inflate(R.layout.recycler_apps_row, parent, false)
+ val view: View = inflater.inflate(R.layout.list_apps_row, parent, false)
return ViewHolder(view)
}
diff --git a/app/src/main/java/com/finnmglas/launcher/choose/apps/ChooseFragmentApps.kt b/app/src/main/java/com/finnmglas/launcher/list/apps/ChooseFragmentApps.kt
similarity index 70%
rename from app/src/main/java/com/finnmglas/launcher/choose/apps/ChooseFragmentApps.kt
rename to app/src/main/java/com/finnmglas/launcher/list/apps/ChooseFragmentApps.kt
index b7e6dee..12cc683 100644
--- a/app/src/main/java/com/finnmglas/launcher/choose/apps/ChooseFragmentApps.kt
+++ b/app/src/main/java/com/finnmglas/launcher/list/apps/ChooseFragmentApps.kt
@@ -1,4 +1,4 @@
-package com.finnmglas.launcher.choose.apps
+package com.finnmglas.launcher.list.apps
import android.os.Bundle
import android.view.LayoutInflater
@@ -7,10 +7,11 @@ import android.view.ViewGroup
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.LinearLayoutManager
import com.finnmglas.launcher.R
-import com.finnmglas.launcher.choose.action
-import com.finnmglas.launcher.extern.*
-import com.finnmglas.launcher.choose.forApp
-import kotlinx.android.synthetic.main.fragment_choose_apps.*
+import com.finnmglas.launcher.list.action
+import com.finnmglas.launcher.list.forApp
+import com.finnmglas.launcher.dominantColor
+import com.finnmglas.launcher.getSavedTheme
+import kotlinx.android.synthetic.main.list_apps.*
/** The 'Apps' Tab associated Fragment in the Chooser */
@@ -23,14 +24,14 @@ class ChooseFragmentApps : Fragment() {
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
- return inflater.inflate(R.layout.fragment_choose_apps, container, false)
+ return inflater.inflate(R.layout.list_apps, container, false)
}
override fun onStart() {
super.onStart()
if (getSavedTheme(context!!) == "custom") {
- fragment_choose_apps_container.setBackgroundColor(dominantColor)
+ list_apps_container.setBackgroundColor(dominantColor)
}
// set up the list / recycler
@@ -41,7 +42,7 @@ class ChooseFragmentApps : Fragment() {
forApp
)
- fragment_choose_apps_recycler_view.apply {
+ list_apps_rview.apply {
// improve performance (since content changes don't change the layout size)
setHasFixedSize(true)
layoutManager = viewManager
diff --git a/app/src/main/java/com/finnmglas/launcher/choose/other/ChooseFragmentOther.kt b/app/src/main/java/com/finnmglas/launcher/list/other/ChooseFragmentOther.kt
similarity index 70%
rename from app/src/main/java/com/finnmglas/launcher/choose/other/ChooseFragmentOther.kt
rename to app/src/main/java/com/finnmglas/launcher/list/other/ChooseFragmentOther.kt
index 6e1d55c..05dd933 100644
--- a/app/src/main/java/com/finnmglas/launcher/choose/other/ChooseFragmentOther.kt
+++ b/app/src/main/java/com/finnmglas/launcher/list/other/ChooseFragmentOther.kt
@@ -1,4 +1,4 @@
-package com.finnmglas.launcher.choose.other
+package com.finnmglas.launcher.list.other
import android.os.Bundle
import android.view.LayoutInflater
@@ -7,9 +7,9 @@ import android.view.ViewGroup
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.LinearLayoutManager
import com.finnmglas.launcher.R
-import com.finnmglas.launcher.extern.dominantColor
-import com.finnmglas.launcher.extern.getSavedTheme
-import kotlinx.android.synthetic.main.fragment_choose_other.*
+import com.finnmglas.launcher.dominantColor
+import com.finnmglas.launcher.getSavedTheme
+import kotlinx.android.synthetic.main.list_other.*
/** The 'Other' Tab associated Fragment in the Chooser */
@@ -21,19 +21,19 @@ class ChooseFragmentOther : Fragment() {
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
- return inflater.inflate(R.layout.fragment_choose_other, container, false)
+ return inflater.inflate(R.layout.list_other, container, false)
}
override fun onStart() {
if (getSavedTheme(context!!) == "custom") {
- fragment_choose_other_container.setBackgroundColor(dominantColor)
+ list_other_container.setBackgroundColor(dominantColor)
}
// set up the list / recycler
val viewManager = LinearLayoutManager(context)
val viewAdapter = OtherRecyclerAdapter(activity!!)
- fragment_choose_other_recycler_view.apply {
+ list_other_rview.apply {
// improve performance (since content changes don't change the layout size)
setHasFixedSize(true)
layoutManager = viewManager
diff --git a/app/src/main/java/com/finnmglas/launcher/choose/other/OtherInfo.kt b/app/src/main/java/com/finnmglas/launcher/list/other/OtherInfo.kt
similarity index 78%
rename from app/src/main/java/com/finnmglas/launcher/choose/other/OtherInfo.kt
rename to app/src/main/java/com/finnmglas/launcher/list/other/OtherInfo.kt
index e93c275..db96a31 100644
--- a/app/src/main/java/com/finnmglas/launcher/choose/other/OtherInfo.kt
+++ b/app/src/main/java/com/finnmglas/launcher/list/other/OtherInfo.kt
@@ -1,4 +1,4 @@
-package com.finnmglas.launcher.choose.other
+package com.finnmglas.launcher.list.other
class OtherInfo(label: String, data: String, icon: String) {
var label: CharSequence? = label
diff --git a/app/src/main/java/com/finnmglas/launcher/choose/other/OtherRecyclerAdapter.kt b/app/src/main/java/com/finnmglas/launcher/list/other/OtherRecyclerAdapter.kt
similarity index 82%
rename from app/src/main/java/com/finnmglas/launcher/choose/other/OtherRecyclerAdapter.kt
rename to app/src/main/java/com/finnmglas/launcher/list/other/OtherRecyclerAdapter.kt
index 36ab5dc..4b9f147 100644
--- a/app/src/main/java/com/finnmglas/launcher/choose/other/OtherRecyclerAdapter.kt
+++ b/app/src/main/java/com/finnmglas/launcher/list/other/OtherRecyclerAdapter.kt
@@ -1,4 +1,4 @@
-package com.finnmglas.launcher.choose.other
+package com.finnmglas.launcher.list.other
import android.app.Activity
import android.content.Intent
@@ -8,8 +8,9 @@ import android.view.ViewGroup
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
import com.finnmglas.launcher.R
-import com.finnmglas.launcher.extern.*
-import com.finnmglas.launcher.choose.forApp
+import com.finnmglas.launcher.REQUEST_CHOOSE_APP
+import com.finnmglas.launcher.libraries.*
+import com.finnmglas.launcher.list.forApp
/* Will only be used if an app / action is picked */
class OtherRecyclerAdapter(val activity: Activity):
@@ -19,8 +20,8 @@ class OtherRecyclerAdapter(val activity: Activity):
inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView),
View.OnClickListener {
- var textView: TextView = itemView.findViewById(R.id.row_other_name)
- var iconView: FontAwesome = itemView.findViewById(R.id.row_other_fa_icon)
+ var textView: TextView = itemView.findViewById(R.id.list_other_row_name)
+ var iconView: FontAwesome = itemView.findViewById(R.id.list_other_row_icon)
override fun onClick(v: View) {
@@ -45,7 +46,7 @@ class OtherRecyclerAdapter(val activity: Activity):
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val inflater = LayoutInflater.from(parent.context)
- val view: View = inflater.inflate(R.layout.recycler_other_row, parent, false)
+ val view: View = inflater.inflate(R.layout.list_other_row, parent, false)
return ViewHolder(view)
}
diff --git a/app/src/main/java/com/finnmglas/launcher/settings/SettingsActivity.kt b/app/src/main/java/com/finnmglas/launcher/settings/SettingsActivity.kt
index 192bb39..4805a22 100644
--- a/app/src/main/java/com/finnmglas/launcher/settings/SettingsActivity.kt
+++ b/app/src/main/java/com/finnmglas/launcher/settings/SettingsActivity.kt
@@ -9,10 +9,17 @@ import android.view.View
import android.view.WindowManager
import androidx.appcompat.app.AppCompatActivity
import androidx.viewpager.widget.ViewPager
-import com.finnmglas.launcher.R
-import com.finnmglas.launcher.extern.*
+import com.finnmglas.launcher.*
import com.google.android.material.tabs.TabLayout
-import kotlinx.android.synthetic.main.activity_settings.*
+import kotlinx.android.synthetic.main.settings.*
+
+import androidx.fragment.app.Fragment
+import androidx.fragment.app.FragmentManager
+import androidx.fragment.app.FragmentPagerAdapter
+import com.finnmglas.launcher.settings.actions.SettingsFragmentActions
+import com.finnmglas.launcher.settings.meta.SettingsFragmentMeta
+import com.finnmglas.launcher.settings.theme.SettingsFragmentTheme
+
var intendedSettingsPause = false // know when to close
@@ -31,21 +38,21 @@ class SettingsActivity : AppCompatActivity() {
}
)
- setContentView(R.layout.activity_settings)
+ setContentView(R.layout.settings)
window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN)
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
val sectionsPagerAdapter = SettingsSectionsPagerAdapter(this, supportFragmentManager)
- val viewPager: ViewPager = findViewById(R.id.activity_settings_view_pager)
+ val viewPager: ViewPager = findViewById(R.id.settings_viewpager)
viewPager.adapter = sectionsPagerAdapter
- val tabs: TabLayout = findViewById(R.id.activity_settings_tabs)
+ val tabs: TabLayout = findViewById(R.id.settings_tabs)
tabs.setupWithViewPager(viewPager)
// As older APIs somehow do not recognize the xml defined onClick
- activity_settings_close.setOnClickListener() { finish() }
+ settings_close.setOnClickListener() { finish() }
// open device settings (see https://stackoverflow.com/a/62092663/12787264)
- activity_settings_device_settings.setOnClickListener {
+ settings_system.setOnClickListener {
intendedSettingsPause = true
startActivity(Intent(Settings.ACTION_SETTINGS))
}
@@ -55,12 +62,12 @@ class SettingsActivity : AppCompatActivity() {
super.onStart()
if (getSavedTheme(this) == "custom") {
- activity_settings_container.setBackgroundColor(dominantColor)
- activity_settings_app_bar.setBackgroundColor(dominantColor)
+ settings_container.setBackgroundColor(dominantColor)
+ settings_appbar.setBackgroundColor(dominantColor)
- activity_settings_device_settings.setTextColor(vibrantColor)
- activity_settings_close.setTextColor(vibrantColor)
- activity_settings_tabs.setSelectedTabIndicatorColor(vibrantColor)
+ settings_system.setTextColor(vibrantColor)
+ settings_close.setTextColor(vibrantColor)
+ settings_tabs.setSelectedTabIndicatorColor(vibrantColor)
}
}
@@ -96,5 +103,30 @@ class SettingsActivity : AppCompatActivity() {
}
}
-
}
+
+private val TAB_TITLES = arrayOf(
+ R.string.settings_tab_app,
+ R.string.settings_tab_theme,
+ R.string.settings_tab_launcher
+)
+
+/** Returns the fragment corresponding to the selected tab.*/
+class SettingsSectionsPagerAdapter(private val context: Context, fm: FragmentManager)
+ : FragmentPagerAdapter(fm, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) {
+
+ override fun getItem(position: Int): Fragment {
+ return when (position){
+ 0 -> SettingsFragmentActions()
+ 1 -> SettingsFragmentTheme()
+ 2 -> SettingsFragmentMeta()
+ else -> Fragment()
+ }
+ }
+
+ override fun getPageTitle(position: Int): CharSequence? {
+ return context.resources.getString(TAB_TITLES[position])
+ }
+
+ override fun getCount(): Int { return 3 }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/finnmglas/launcher/settings/SettingsSectionsPagerAdapter.kt b/app/src/main/java/com/finnmglas/launcher/settings/SettingsSectionsPagerAdapter.kt
deleted file mode 100644
index a539f2b..0000000
--- a/app/src/main/java/com/finnmglas/launcher/settings/SettingsSectionsPagerAdapter.kt
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.finnmglas.launcher.settings
-
-import android.content.Context
-import androidx.fragment.app.Fragment
-import androidx.fragment.app.FragmentManager
-import androidx.fragment.app.FragmentPagerAdapter
-import com.finnmglas.launcher.*
-import com.finnmglas.launcher.settings.actions.SettingsFragmentApps
-import com.finnmglas.launcher.settings.meta.SettingsFragmentMeta
-import com.finnmglas.launcher.settings.theme.SettingsFragmentTheme
-
-private val TAB_TITLES = arrayOf(
- R.string.settings_tab_app,
- R.string.settings_tab_theme,
- R.string.settings_tab_launcher
-)
-
-/** Returns the fragment corresponding to the selected tab.*/
-class SettingsSectionsPagerAdapter(private val context: Context, fm: FragmentManager)
- : FragmentPagerAdapter(fm, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) {
-
- override fun getItem(position: Int): Fragment {
- return when (position){
- 0 -> SettingsFragmentApps()
- 1 -> SettingsFragmentTheme()
- 2 -> SettingsFragmentMeta()
- else -> Fragment()
- }
- }
-
- override fun getPageTitle(position: Int): CharSequence? {
- return context.resources.getString(TAB_TITLES[position])
- }
-
- override fun getCount(): Int { return 3 }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/finnmglas/launcher/settings/actions/ActionsRecyclerAdapter.kt b/app/src/main/java/com/finnmglas/launcher/settings/actions/ActionsRecyclerAdapter.kt
index 68649fe..8aefa8a 100644
--- a/app/src/main/java/com/finnmglas/launcher/settings/actions/ActionsRecyclerAdapter.kt
+++ b/app/src/main/java/com/finnmglas/launcher/settings/actions/ActionsRecyclerAdapter.kt
@@ -11,10 +11,9 @@ import android.widget.Button
import android.widget.ImageView
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
-import com.finnmglas.launcher.choose.ChooseActivity
-import com.finnmglas.launcher.R
-import com.finnmglas.launcher.extern.FontAwesome
-import com.finnmglas.launcher.extern.*
+import com.finnmglas.launcher.*
+import com.finnmglas.launcher.list.ListActivity
+import com.finnmglas.launcher.libraries.FontAwesome
import com.finnmglas.launcher.settings.intendedSettingsPause
import java.lang.Exception
@@ -26,11 +25,11 @@ class ActionsRecyclerAdapter(val activity: Activity):
inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView),
View.OnClickListener {
- var textView: TextView = itemView.findViewById(R.id.row_action_name)
- var fontAwesome: FontAwesome = itemView.findViewById(R.id.row_app_fa_icon)
- var img: ImageView = itemView.findViewById(R.id.row_app_icon) as ImageView
- var chooseButton: Button = itemView.findViewById(R.id.row_choose_button)
- var removeAction: FontAwesome = itemView.findViewById(R.id.row_remove_action)
+ var textView: TextView = itemView.findViewById(R.id.settings_actions_row_name)
+ var fontAwesome: FontAwesome = itemView.findViewById(R.id.settings_actions_row_icon)
+ var img: ImageView = itemView.findViewById(R.id.settings_actions_row_icon_img) as ImageView
+ var chooseButton: Button = itemView.findViewById(R.id.settings_actions_row_button_choose)
+ var removeAction: FontAwesome = itemView.findViewById(R.id.settings_actions_row_remove)
override fun onClick(v: View) {
@@ -64,7 +63,10 @@ class ActionsRecyclerAdapter(val activity: Activity):
viewHolder.chooseButton.visibility = View.VISIBLE
viewHolder.chooseButton.setOnClickListener{ chooseApp(actionName.toString()) }
if (getSavedTheme(activity) =="custom")
- setButtonColor(viewHolder.chooseButton, vibrantColor)
+ setButtonColor(
+ viewHolder.chooseButton,
+ vibrantColor
+ )
}
if (content!!.startsWith("launcher")) {
@@ -84,7 +86,9 @@ class ActionsRecyclerAdapter(val activity: Activity):
viewHolder.img.setImageDrawable(activity.packageManager.getApplicationIcon(content.toString()))
viewHolder.img.setOnClickListener{ chooseApp(actionName.toString()) }
- if (getSavedTheme(activity) == "dark") transformGrayscale(viewHolder.img)
+ if (getSavedTheme(activity) == "dark") transformGrayscale(
+ viewHolder.img
+ )
} catch (e : Exception) { // the button is shown, user asked to select an action
viewHolder.img.visibility = View.INVISIBLE
@@ -92,7 +96,10 @@ class ActionsRecyclerAdapter(val activity: Activity):
viewHolder.chooseButton.visibility = View.VISIBLE
viewHolder.chooseButton.setOnClickListener{ chooseApp(actionName.toString()) }
if (getSavedTheme(activity) =="custom")
- setButtonColor(viewHolder.chooseButton, vibrantColor)
+ setButtonColor(
+ viewHolder.chooseButton,
+ vibrantColor
+ )
}
}
}
@@ -101,28 +108,46 @@ class ActionsRecyclerAdapter(val activity: Activity):
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val inflater = LayoutInflater.from(parent.context)
- val view: View = inflater.inflate(R.layout.recycler_actions_row, parent, false)
+ val view: View = inflater.inflate(R.layout.settings_actions_row, parent, false)
return ViewHolder(view)
}
init {
actionsList = ArrayList()
- actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_up),"upApp", upApp))
- actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_down),"downApp", downApp))
- actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_left), "leftApp", leftApp))
- actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_right), "rightApp", rightApp))
- actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_vol_up), "volumeUpApp", volumeUpApp))
- actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_vol_down), "volumeDownApp", volumeDownApp))
- actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_double_click), "doubleClickApp", doubleClickApp))
- actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_long_click), "longClickApp", longClickApp))
+ actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_up),"upApp",
+ upApp
+ ))
+ actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_down),"downApp",
+ downApp
+ ))
+ actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_left), "leftApp",
+ leftApp
+ ))
+ actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_right), "rightApp",
+ rightApp
+ ))
+ actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_vol_up), "volumeUpApp",
+ volumeUpApp
+ ))
+ actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_vol_down), "volumeDownApp",
+ volumeDownApp
+ ))
+ actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_double_click), "doubleClickApp",
+ doubleClickApp
+ ))
+ actionsList.add(ActionInfo(activity.getString(R.string.settings_choose_long_click), "longClickApp",
+ longClickApp
+ ))
}
/* */
private fun chooseApp(forAction: String) {
- val intent = Intent(activity, ChooseActivity::class.java)
+ val intent = Intent(activity, ListActivity::class.java)
intent.putExtra("action", "pick")
intent.putExtra("forApp", forAction) // for which action we choose the app
intendedSettingsPause = true
- activity.startActivityForResult(intent, REQUEST_CHOOSE_APP)
+ activity.startActivityForResult(intent,
+ REQUEST_CHOOSE_APP
+ )
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/finnmglas/launcher/settings/actions/SettingsFragmentApps.kt b/app/src/main/java/com/finnmglas/launcher/settings/actions/SettingsFragmentActions.kt
similarity index 69%
rename from app/src/main/java/com/finnmglas/launcher/settings/actions/SettingsFragmentApps.kt
rename to app/src/main/java/com/finnmglas/launcher/settings/actions/SettingsFragmentActions.kt
index b060540..564f011 100644
--- a/app/src/main/java/com/finnmglas/launcher/settings/actions/SettingsFragmentApps.kt
+++ b/app/src/main/java/com/finnmglas/launcher/settings/actions/SettingsFragmentActions.kt
@@ -10,16 +10,15 @@ import android.view.ViewGroup
import android.widget.Toast
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.LinearLayoutManager
-import com.finnmglas.launcher.choose.ChooseActivity
-import com.finnmglas.launcher.R
-import com.finnmglas.launcher.extern.*
+import com.finnmglas.launcher.*
+import com.finnmglas.launcher.list.ListActivity
import com.finnmglas.launcher.settings.intendedSettingsPause
-import kotlinx.android.synthetic.main.fragment_settings_apps.*
+import kotlinx.android.synthetic.main.settings_actions.*
/** The 'Apps' Tab associated Fragment in Settings */
-class SettingsFragmentApps : Fragment() {
+class SettingsFragmentActions : Fragment() {
/** Lifecycle functions */
@@ -27,16 +26,22 @@ class SettingsFragmentApps : Fragment() {
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
- return inflater.inflate(R.layout.fragment_settings_apps, container, false)
+ return inflater.inflate(R.layout.settings_actions, container, false)
}
override fun onStart() {
if (getSavedTheme(context!!) == "custom") {
- fragment_settings_apps_container.setBackgroundColor(dominantColor)
+ settings_actions_container.setBackgroundColor(dominantColor)
- setButtonColor(fragment_settings_apps_btn, vibrantColor)
- setButtonColor(fragment_settings_apps_install_btn, vibrantColor)
+ setButtonColor(
+ settings_actions_button_view_apps,
+ vibrantColor
+ )
+ setButtonColor(
+ settings_actions_button_install_apps,
+ vibrantColor
+ )
}
@@ -44,7 +49,7 @@ class SettingsFragmentApps : Fragment() {
val actionViewManager = LinearLayoutManager(context)
val actionViewAdapter = ActionsRecyclerAdapter( activity!! )
- activity_settings_actions_recycler_view.apply {
+ settings_actions_rview.apply {
// improve performance (since content changes don't change the layout size)
setHasFixedSize(true)
layoutManager = actionViewManager
@@ -52,13 +57,13 @@ class SettingsFragmentApps : Fragment() {
}
// App management buttons
- fragment_settings_apps_btn.setOnClickListener{
- val intent = Intent(this.context, ChooseActivity::class.java)
+ settings_actions_button_view_apps.setOnClickListener{
+ val intent = Intent(this.context, ListActivity::class.java)
intent.putExtra("action", "view")
intendedSettingsPause = true
startActivity(intent)
}
- fragment_settings_apps_install_btn.setOnClickListener{
+ settings_actions_button_install_apps.setOnClickListener{
try {
val rateIntent = Intent(
Intent.ACTION_VIEW,
diff --git a/app/src/main/java/com/finnmglas/launcher/settings/meta/SettingsFragmentMeta.kt b/app/src/main/java/com/finnmglas/launcher/settings/meta/SettingsFragmentMeta.kt
index 73cc1d8..af7350f 100644
--- a/app/src/main/java/com/finnmglas/launcher/settings/meta/SettingsFragmentMeta.kt
+++ b/app/src/main/java/com/finnmglas/launcher/settings/meta/SettingsFragmentMeta.kt
@@ -13,11 +13,10 @@ import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
+import com.finnmglas.launcher.*
import com.finnmglas.launcher.tutorial.TutorialActivity
-import com.finnmglas.launcher.R
-import com.finnmglas.launcher.extern.*
import com.finnmglas.launcher.settings.intendedSettingsPause
-import kotlinx.android.synthetic.main.fragment_settings_meta.*
+import kotlinx.android.synthetic.main.settings_meta.*
/** The 'Meta' Tab associated Fragment in Settings */
@@ -29,28 +28,43 @@ class SettingsFragmentMeta : Fragment() {
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
- return inflater.inflate(R.layout.fragment_settings_meta, container, false)
+ return inflater.inflate(R.layout.settings_meta, container, false)
}
override fun onStart() {
if (getSavedTheme(context!!) == "custom") {
- fragment_settings_meta_container.setBackgroundColor(dominantColor)
+ settings_meta_container.setBackgroundColor(dominantColor)
- setButtonColor(fragment_settings_meta_select_launcher_btn, vibrantColor)
- setButtonColor(fragment_settings_meta_view_tutorial_btn, vibrantColor)
- setButtonColor(fragment_settings_meta_reset_settings_btn, vibrantColor)
- setButtonColor(fragment_settings_meta_contact_btn, vibrantColor)
- setButtonColor(fragment_settings_meta_donate_btn, vibrantColor)
+ setButtonColor(
+ settings_meta_button_select_launcher,
+ vibrantColor
+ )
+ setButtonColor(
+ settings_meta_button_view_tutorial,
+ vibrantColor
+ )
+ setButtonColor(
+ settings_meta_button_reset_settings,
+ vibrantColor
+ )
+ setButtonColor(
+ settings_meta_button_contact,
+ vibrantColor
+ )
+ setButtonColor(
+ settings_meta_button_donate,
+ vibrantColor
+ )
- fragment_settings_meta_footer_play_icon.setTextColor(vibrantColor)
- fragment_settings_meta_footer_github_icon.setTextColor(vibrantColor)
- fragment_settings_meta_footer_globe_icon.setTextColor(vibrantColor)
+ settings_meta_icon_google_play.setTextColor(vibrantColor)
+ settings_meta_icon_github.setTextColor(vibrantColor)
+ settings_meta_icon_globe.setTextColor(vibrantColor)
}
// Button onClicks
- fragment_settings_meta_select_launcher_btn.setOnClickListener {
+ settings_meta_button_select_launcher.setOnClickListener {
intendedSettingsPause = true
// on newer sdk: choose launcher
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
@@ -65,7 +79,10 @@ class SettingsFragmentMeta : Fragment() {
.setPositiveButton(android.R.string.yes,
DialogInterface.OnClickListener { _, _ ->
try {
- openAppSettings(this.context!!.packageName, this.context!!)
+ openAppSettings(
+ this.context!!.packageName,
+ this.context!!
+ )
} catch ( e : ActivityNotFoundException) {
val intent = Intent(Settings.ACTION_MANAGE_APPLICATIONS_SETTINGS)
startActivity(intent)
@@ -77,20 +94,24 @@ class SettingsFragmentMeta : Fragment() {
}
}
- fragment_settings_meta_view_tutorial_btn.setOnClickListener {
+ settings_meta_button_view_tutorial.setOnClickListener {
intendedSettingsPause = true
startActivity(Intent(this.context, TutorialActivity::class.java))
}
// prompting for settings-reset confirmation
- fragment_settings_meta_reset_settings_btn.setOnClickListener {
+ settings_meta_button_reset_settings.setOnClickListener {
AlertDialog.Builder(this.context!!, R.style.AlertDialogCustom)
.setTitle(getString(R.string.settings_reset))
.setMessage(getString(R.string.settings_reset_message))
.setPositiveButton(android.R.string.yes,
DialogInterface.OnClickListener { _, _ ->
- resetSettings(this.context!!.getSharedPreferences(getString(R.string.preference_file_key),
- Context.MODE_PRIVATE), this.context!!)
+ resetSettings(
+ this.context!!.getSharedPreferences(
+ getString(R.string.preference_file_key),
+ Context.MODE_PRIVATE
+ ), this.context!!
+ )
activity!!.finish()
})
.setNegativeButton(android.R.string.no, null)
@@ -99,12 +120,15 @@ class SettingsFragmentMeta : Fragment() {
}
// Footer onClicks
- fragment_settings_meta_footer_github_icon.setOnClickListener {
+ settings_meta_icon_github.setOnClickListener {
intendedSettingsPause = true
- openNewTabWindow(getString(R.string.settings_footer_repo), this.context!!)
+ openNewTabWindow(
+ getString(R.string.settings_footer_repo),
+ this.context!!
+ )
}
// rate app
- fragment_settings_meta_footer_play_icon.setOnClickListener {
+ settings_meta_icon_google_play.setOnClickListener {
try {
val rateIntent = rateIntentForUrl("market://details")
intendedSettingsPause = true
@@ -116,21 +140,30 @@ class SettingsFragmentMeta : Fragment() {
}
}
- fragment_settings_meta_footer_globe_icon.setOnClickListener {
+ settings_meta_icon_globe.setOnClickListener {
intendedSettingsPause = true
- openNewTabWindow(getString(R.string.settings_footer_web), this.context!!)
+ openNewTabWindow(
+ getString(R.string.settings_footer_web),
+ this.context!!
+ )
}
// contact developer
- fragment_settings_meta_contact_btn.setOnClickListener {
+ settings_meta_button_contact.setOnClickListener {
intendedSettingsPause = true
- openNewTabWindow(getString(R.string.settings_meta_contact_url), context!!)
+ openNewTabWindow(
+ getString(R.string.settings_meta_contact_url),
+ context!!
+ )
}
// donate
- fragment_settings_meta_donate_btn.setOnClickListener {
+ settings_meta_button_donate.setOnClickListener {
intendedSettingsPause = true
- openNewTabWindow(getString(R.string.settings_meta_donate_url), context!!)
+ openNewTabWindow(
+ getString(R.string.settings_meta_donate_url),
+ context!!
+ )
}
super.onStart()
diff --git a/app/src/main/java/com/finnmglas/launcher/settings/theme/SettingsFragmentTheme.kt b/app/src/main/java/com/finnmglas/launcher/settings/theme/SettingsFragmentTheme.kt
index bae4281..91a4440 100644
--- a/app/src/main/java/com/finnmglas/launcher/settings/theme/SettingsFragmentTheme.kt
+++ b/app/src/main/java/com/finnmglas/launcher/settings/theme/SettingsFragmentTheme.kt
@@ -16,10 +16,9 @@ import android.view.ViewGroup
import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.ContextCompat
import androidx.palette.graphics.Palette
-import com.finnmglas.launcher.R
-import com.finnmglas.launcher.extern.*
+import com.finnmglas.launcher.*
import com.finnmglas.launcher.settings.intendedSettingsPause
-import kotlinx.android.synthetic.main.fragment_settings_theme.*
+import kotlinx.android.synthetic.main.settings_theme.*
/** The 'Theme' Tab associated Fragment in Settings */
@@ -31,36 +30,48 @@ class SettingsFragmentTheme : Fragment() {
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
- return inflater.inflate(R.layout.fragment_settings_theme, container, false)
+ return inflater.inflate(R.layout.settings_theme, container, false)
}
override fun onStart(){
// Hide 'select' button for the selected theme or allow customisation
when (getSavedTheme(context!!)) {
- "dark" -> fragment_settings_theme_select_dark_btn.visibility = View.INVISIBLE
- "finn" -> fragment_settings_theme_select_finn_btn.visibility = View.INVISIBLE
+ "dark" -> settings_theme_dark_button_select.visibility = View.INVISIBLE
+ "finn" -> settings_theme_finn_button_select.visibility = View.INVISIBLE
"custom" -> {
- fragment_settings_theme_select_custom_btn.text = getString(R.string.settings_select_image)
- fragment_settings_theme_container.setBackgroundColor(dominantColor)
- setButtonColor(fragment_settings_theme_select_finn_btn, vibrantColor)
- setButtonColor(fragment_settings_theme_select_dark_btn, vibrantColor)
- setButtonColor(fragment_settings_theme_select_custom_btn, vibrantColor)
- setButtonColor(fragment_settings_theme_custom_examples_btn, vibrantColor)
+ settings_theme_custom_button_select.text = getString(R.string.settings_select_image)
+ settings_theme_container.setBackgroundColor(dominantColor)
+ setButtonColor(
+ settings_theme_finn_button_select,
+ vibrantColor
+ )
+ setButtonColor(
+ settings_theme_dark_button_select,
+ vibrantColor
+ )
+ setButtonColor(
+ settings_theme_custom_button_select,
+ vibrantColor
+ )
+ setButtonColor(
+ settings_theme_custom_button_examples,
+ vibrantColor
+ )
}
}
// Theme changing buttons
- fragment_settings_theme_select_dark_btn.setOnClickListener {
+ settings_theme_dark_button_select.setOnClickListener {
intendedSettingsPause = true
saveTheme(context!!, "dark")
activity!!.recreate()
}
- fragment_settings_theme_select_finn_btn.setOnClickListener {
+ settings_theme_finn_button_select.setOnClickListener {
intendedSettingsPause = true
saveTheme(context!!, "finn")
activity!!.recreate()
}
- fragment_settings_theme_select_custom_btn.setOnClickListener {
+ settings_theme_custom_button_select.setOnClickListener {
intendedSettingsPause = true
// Request permission (on newer APIs)
if (Build.VERSION.SDK_INT >= 23) {
@@ -71,15 +82,20 @@ class SettingsFragmentTheme : Fragment() {
shouldShowRequestPermissionRationale(Manifest.permission.WRITE_EXTERNAL_STORAGE)
-> {}
else
- -> requestPermissions(arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE), REQUEST_PERMISSION_STORAGE)
+ -> requestPermissions(arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE),
+ REQUEST_PERMISSION_STORAGE
+ )
}
}
else letUserPickImage()
}
- fragment_settings_theme_custom_examples_btn.setOnClickListener {
+ settings_theme_custom_button_examples.setOnClickListener {
intendedSettingsPause = true
// Show example usage
- openNewTabWindow("https://github.com/finnmglas/Launcher/blob/master/docs/README.md", context!!)
+ openNewTabWindow(
+ "https://github.com/finnmglas/Launcher/blob/master/docs/README.md",
+ context!!
+ )
}
super.onStart()
@@ -128,16 +144,28 @@ class SettingsFragmentTheme : Fragment() {
// never let dominantColor equal vibrantColor
if(dominantColor == vibrantColor) {
- vibrantColor = manipulateColor(vibrantColor, 1.2F)
- dominantColor = manipulateColor(dominantColor, 0.8F)
+ vibrantColor =
+ manipulateColor(
+ vibrantColor,
+ 1.2F
+ )
+ dominantColor =
+ manipulateColor(
+ dominantColor,
+ 0.8F
+ )
}
/* Save image Uri as string */
val editor: SharedPreferences.Editor = context!!.getSharedPreferences(
context!!.getString(R.string.preference_file_key), Context.MODE_PRIVATE).edit()
editor.putString("background_uri", imageUri.toString())
- editor.putInt("custom_dominant", dominantColor)
- editor.putInt("custom_vibrant", vibrantColor)
+ editor.putInt("custom_dominant",
+ dominantColor
+ )
+ editor.putInt("custom_vibrant",
+ vibrantColor
+ )
editor.apply()
saveTheme(context!!, "custom")
diff --git a/app/src/main/java/com/finnmglas/launcher/tutorial/TutorialActivity.kt b/app/src/main/java/com/finnmglas/launcher/tutorial/TutorialActivity.kt
index 4c47ec2..a594cc3 100644
--- a/app/src/main/java/com/finnmglas/launcher/tutorial/TutorialActivity.kt
+++ b/app/src/main/java/com/finnmglas/launcher/tutorial/TutorialActivity.kt
@@ -6,9 +6,8 @@ import android.os.Bundle
import android.util.TypedValue
import android.view.*
import androidx.appcompat.app.AppCompatActivity
-import com.finnmglas.launcher.R
-import com.finnmglas.launcher.extern.*
-import kotlinx.android.synthetic.main.activity_tutorial.*
+import com.finnmglas.launcher.*
+import kotlinx.android.synthetic.main.tutorial.*
class TutorialActivity : AppCompatActivity(){
@@ -38,15 +37,15 @@ class TutorialActivity : AppCompatActivity(){
else -> R.style.finnmglasTheme
}
)
- setContentView(R.layout.activity_tutorial)
+ setContentView(R.layout.tutorial)
if (getSavedTheme(this) == "custom") {
- activity_firststartup_app_bar.setBackgroundColor(dominantColor)
- activity_firststartup_container.setBackgroundColor(dominantColor)
- activity_firststartup_close.setTextColor(vibrantColor)
+ tutorial_appbar.setBackgroundColor(dominantColor)
+ tutorial_container.setBackgroundColor(dominantColor)
+ tutorial_close.setTextColor(vibrantColor)
}
- activity_firststartup_hint_text.blink() // animate
+ tutorial_page_hint.blink() // animate
loadMenu(this)
val sharedPref = this.getSharedPreferences(getString(R.string.preference_file_key), Context.MODE_PRIVATE)
@@ -54,12 +53,15 @@ class TutorialActivity : AppCompatActivity(){
isFirstTime = !sharedPref.getBoolean("startedBefore", false)
if (isFirstTime)
- defaultApps = resetSettings(sharedPref, this) // UP, DOWN, RIGHT, LEFT, VOLUME_UP, VOLUME_DOWN
+ defaultApps = resetSettings(
+ sharedPref,
+ this
+ ) // UP, DOWN, RIGHT, LEFT, VOLUME_UP, VOLUME_DOWN
else
- activity_firststartup_app_bar.visibility = View.VISIBLE
+ tutorial_appbar.visibility = View.VISIBLE
// As older APIs somehow do not recognize the xml defined onClick
- activity_firststartup_close.setOnClickListener() { finish() }
+ tutorial_close.setOnClickListener() { finish() }
}
/** Touch- and Key-related functions to navigate */
@@ -98,16 +100,16 @@ class TutorialActivity : AppCompatActivity(){
if (menuNumber < intro.size){
val entry = intro[menuNumber].split("|").toTypedArray() //heading|infoText|hintText|size
- activity_firststartup_section_heading.text = entry[0]
+ tutorial_page_heading.text = entry[0]
if (entry[4] == "1" && isFirstTime)
- activity_firststartup_descriptive_text.text = String.format(entry[1],
+ tutorial_page_text.text = String.format(entry[1],
defaultApps[0], defaultApps[1], defaultApps[2], defaultApps[3], defaultApps[4], defaultApps[5])
else if (entry[4] == "1" && !isFirstTime)
- activity_firststartup_descriptive_text.text = String.format(entry[1],
+ tutorial_page_text.text = String.format(entry[1],
"-", "-", "-", "-", "-", "-")
- else activity_firststartup_descriptive_text.text = entry[1]
- activity_firststartup_hint_text.text = entry[2]
- activity_firststartup_descriptive_text.setTextSize(TypedValue.COMPLEX_UNIT_SP, entry[3].toFloat())
+ else tutorial_page_text.text = entry[1]
+ tutorial_page_hint.text = entry[2]
+ tutorial_page_text.setTextSize(TypedValue.COMPLEX_UNIT_SP, entry[3].toFloat())
} else { // End intro
if (isFirstTime){
diff --git a/app/src/main/res/layout/fragment_choose_apps.xml b/app/src/main/res/layout/fragment_choose_apps.xml
deleted file mode 100644
index 77194c0..0000000
--- a/app/src/main/res/layout/fragment_choose_apps.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_choose_other.xml b/app/src/main/res/layout/fragment_choose_other.xml
deleted file mode 100644
index 56b9c62..0000000
--- a/app/src/main/res/layout/fragment_choose_other.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_settings_apps.xml b/app/src/main/res/layout/fragment_settings_apps.xml
deleted file mode 100644
index f2c59f6..0000000
--- a/app/src/main/res/layout/fragment_settings_apps.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/home.xml
similarity index 85%
rename from app/src/main/res/layout/activity_main.xml
rename to app/src/main/res/layout/home.xml
index f1ba21e..9a585c7 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/home.xml
@@ -1,17 +1,18 @@
+
+ tools:context=".HomeActivity">
-
+ tools:context=".list.ListActivity">
-
@@ -65,13 +66,13 @@
\ No newline at end of file
diff --git a/app/src/main/res/layout/list_apps.xml b/app/src/main/res/layout/list_apps.xml
new file mode 100644
index 0000000..0c711a4
--- /dev/null
+++ b/app/src/main/res/layout/list_apps.xml
@@ -0,0 +1,23 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/recycler_apps_row.xml b/app/src/main/res/layout/list_apps_row.xml
similarity index 75%
rename from app/src/main/res/layout/recycler_apps_row.xml
rename to app/src/main/res/layout/list_apps_row.xml
index 80da072..0c124d2 100644
--- a/app/src/main/res/layout/recycler_apps_row.xml
+++ b/app/src/main/res/layout/list_apps_row.xml
@@ -1,13 +1,15 @@
-
-
+
+
+
+
+
diff --git a/app/src/main/res/layout/recycler_other_row.xml b/app/src/main/res/layout/list_other_row.xml
similarity index 75%
rename from app/src/main/res/layout/recycler_other_row.xml
rename to app/src/main/res/layout/list_other_row.xml
index fb47df7..9ef0a26 100644
--- a/app/src/main/res/layout/recycler_other_row.xml
+++ b/app/src/main/res/layout/list_other_row.xml
@@ -1,13 +1,14 @@
-
-
@@ -19,7 +19,7 @@
android:layout_height="match_parent">
-
-
+ custom:type="solid"
+ android:layout_marginStart="8dp" />
@@ -79,7 +80,7 @@
diff --git a/app/src/main/res/layout/settings_actions.xml b/app/src/main/res/layout/settings_actions.xml
new file mode 100644
index 0000000..120888e
--- /dev/null
+++ b/app/src/main/res/layout/settings_actions.xml
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/recycler_actions_row.xml b/app/src/main/res/layout/settings_actions_row.xml
similarity index 64%
rename from app/src/main/res/layout/recycler_actions_row.xml
rename to app/src/main/res/layout/settings_actions_row.xml
index ac26954..9d6bf6a 100644
--- a/app/src/main/res/layout/recycler_actions_row.xml
+++ b/app/src/main/res/layout/settings_actions_row.xml
@@ -1,12 +1,14 @@
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_settings_meta.xml b/app/src/main/res/layout/settings_meta.xml
similarity index 79%
rename from app/src/main/res/layout/fragment_settings_meta.xml
rename to app/src/main/res/layout/settings_meta.xml
index c6221ee..5bd2702 100644
--- a/app/src/main/res/layout/fragment_settings_meta.xml
+++ b/app/src/main/res/layout/settings_meta.xml
@@ -1,9 +1,9 @@
-
-
-
-
+
diff --git a/app/src/main/res/layout/activity_tutorial.xml b/app/src/main/res/layout/tutorial.xml
similarity index 85%
rename from app/src/main/res/layout/activity_tutorial.xml
rename to app/src/main/res/layout/tutorial.xml
index 05c1688..6602de8 100644
--- a/app/src/main/res/layout/activity_tutorial.xml
+++ b/app/src/main/res/layout/tutorial.xml
@@ -1,9 +1,10 @@
+
-
+ app:layout_constraintTop_toBottomOf="@id/tutorial_page_heading" />
+ app:layout_constraintTop_toBottomOf="@id/tutorial_page_text" />
\ No newline at end of file