1818package com.itsaky.androidide.activities.editor
1919
2020import android.content.Intent
21+ import android.content.res.Configuration
2122import android.os.Bundle
2223import android.text.TextUtils
2324import android.util.Log
@@ -26,6 +27,7 @@ import android.view.ViewGroup.LayoutParams
2627import androidx.collection.MutableIntObjectMap
2728import androidx.core.content.res.ResourcesCompat
2829import androidx.core.view.GravityCompat
30+ import androidx.core.view.doOnNextLayout
2931import androidx.lifecycle.lifecycleScope
3032import com.blankj.utilcode.util.ImageUtils
3133import com.google.android.material.tabs.TabLayout
@@ -697,6 +699,16 @@ open class EditorHandlerActivity :
697699 }
698700 }
699701
702+ override fun onConfigurationChanged (newConfig : Configuration ) {
703+ super .onConfigurationChanged(newConfig)
704+
705+ getCurrentEditor()?.editor?.apply {
706+ doOnNextLayout {
707+ cursor?.let { c -> ensurePositionVisible(c.leftLine, c.leftColumn, true ) }
708+ }
709+ }
710+ }
711+
700712 private suspend fun saveResultInternal (
701713 index : Int ,
702714 result : SaveResult ,
@@ -716,6 +728,10 @@ open class EditorHandlerActivity :
716728 return false
717729 }
718730
731+ frag.file?.let { savedFile ->
732+ fileTimestamps[savedFile.absolutePath] = savedFile.lastModified()
733+ }
734+
719735 val isGradle = fileName.endsWith(" .gradle" ) || fileName.endsWith(" .gradle.kts" )
720736 val isXml: Boolean = fileName.endsWith(" .xml" )
721737 if (! result.gradleSaved) {
0 commit comments