diff --git a/app/src/main/java/io/neoterm/customize/setup/BaseFileInstaller.java b/app/src/main/java/io/neoterm/customize/setup/BaseFileInstaller.java index b92fcd8..0eddd4c 100644 --- a/app/src/main/java/io/neoterm/customize/setup/BaseFileInstaller.java +++ b/app/src/main/java/io/neoterm/customize/setup/BaseFileInstaller.java @@ -173,7 +173,7 @@ public final class BaseFileInstaller { private static HttpURLConnection openBaseFileConnection() throws IOException { String arch = determineArchName(); - String baseUrl = NeoTermPath.INSTANCE.getDEFAULT_SOURCE(); + String baseUrl = NeoTermPath.RELEASE_SOURCE; // Use the same source NeoPreference.INSTANCE.store(R.string.key_package_source, baseUrl); @@ -181,12 +181,6 @@ public final class BaseFileInstaller { return (HttpURLConnection) new URL(baseUrl + "/boot/" + arch + ".zip").openConnection(); } -// private static URL determineZipUrl() throws MalformedURLException { -// String archName = determineArchName(); -// String baseUrl = NeoTermPath.INSTANCE.getSERVER_BOOT_URL(); -// return new URL(baseUrl + "/" + archName + ".zip"); -// } - private static String determineArchName() { for (String androidArch : Build.SUPPORTED_ABIS) { switch (androidArch) { diff --git a/app/src/main/java/io/neoterm/frontend/logging/NLog.kt b/app/src/main/java/io/neoterm/frontend/logging/NLog.kt index bc5f22f..1219825 100644 --- a/app/src/main/java/io/neoterm/frontend/logging/NLog.kt +++ b/app/src/main/java/io/neoterm/frontend/logging/NLog.kt @@ -137,7 +137,7 @@ object NLog { returnTag = sGlobalTag } else { returnTag = "$sGlobalTag-$returnTag" - val targetElement = Throwable().stackTrace[3] + val targetElement = Thread.currentThread().stackTrace[3] var className = targetElement.className val classNameInfo = className.split("\\.".toRegex()).dropLastWhile { it.isEmpty() }.toTypedArray() if (classNameInfo.isNotEmpty()) { @@ -151,13 +151,13 @@ object NLog { } if (sLogHeadSwitch) { val head = Formatter() - .format("%s, %s(%s:%d)", + .format("[Thread:%s], %s(%s:%d): ", Thread.currentThread().name, targetElement.methodName, targetElement.fileName, targetElement.lineNumber) .toString() - return arrayOf(returnTag, head + LINE_SEP, " [$head]: ") + return arrayOf(returnTag, head, head) } } return arrayOf(returnTag, "", ": ") diff --git a/app/src/main/java/io/neoterm/ui/term/NeoTermActivity.kt b/app/src/main/java/io/neoterm/ui/term/NeoTermActivity.kt index 51cb9f4..891490d 100644 --- a/app/src/main/java/io/neoterm/ui/term/NeoTermActivity.kt +++ b/app/src/main/java/io/neoterm/ui/term/NeoTermActivity.kt @@ -179,23 +179,7 @@ class NeoTermActivity : AppCompatActivity(), ServiceConnection, SharedPreference override fun onTabRemoved(tabSwitcher: TabSwitcher, index: Int, tab: Tab, animation: Animation) { if (tab is TermTab) { - Snackbar.make(tabSwitcher, R.string.session_closed, Snackbar.LENGTH_LONG) - .setAction(R.string.restore_session, { _ -> - tabSwitcher.addTab(tab) - }) - .addCallback(object : Snackbar.Callback() { - override fun onDismissed(transientBottomBar: Snackbar?, event: Int) { - super.onDismissed(transientBottomBar, event) - if (event == DISMISS_EVENT_SWIPE - || event == DISMISS_EVENT_TIMEOUT - || event == DISMISS_EVENT_CONSECUTIVE) { - tab.termData.termSession?.finishIfRunning() - removeFinishedSession(tab.termData.termSession) - tab.cleanup() - } - } - }) - .show() + closeTab(tab) } } @@ -227,6 +211,7 @@ class NeoTermActivity : AppCompatActivity(), ServiceConnection, SharedPreference super.onDestroy() PreferenceManager.getDefaultSharedPreferences(this) .unregisterOnSharedPreferenceChangeListener(this) + if (termService != null) { if (termService!!.sessions.isEmpty()) { termService!!.stopSelf() @@ -523,6 +508,12 @@ class NeoTermActivity : AppCompatActivity(), ServiceConnection, SharedPreference } } + private fun closeTab(tab: TermTab) { + SessionRemover.removeSession(tab) + removeFinishedSession(tab.termData.termSession) + Snackbar.make(tabSwitcher, R.string.session_closed, Snackbar.LENGTH_SHORT).show() + } + private fun toggleSwitcher(showSwitcher: Boolean, easterEgg: Boolean) { if (tabSwitcher.count > 0) { if (showSwitcher) { @@ -606,5 +597,4 @@ class NeoTermActivity : AppCompatActivity(), ServiceConnection, SharedPreference toolbar.title = titleChangedEvent.title } } - } diff --git a/app/src/main/java/io/neoterm/ui/term/SessionRemover.kt b/app/src/main/java/io/neoterm/ui/term/SessionRemover.kt new file mode 100644 index 0000000..b05002b --- /dev/null +++ b/app/src/main/java/io/neoterm/ui/term/SessionRemover.kt @@ -0,0 +1,13 @@ +package io.neoterm.ui.term + +import io.neoterm.ui.term.tab.TermTab + +/** + * @author kiva + */ +object SessionRemover { + fun removeSession(tab: TermTab) { + tab.termData.termSession?.finishIfRunning() + tab.cleanup() + } +} \ No newline at end of file