Skip to content

Commit d03da4c

Browse files
author
Jing KE
committed
[fix] replace kotlin coroutines by runOnUiThread.
1 parent a29a063 commit d03da4c

File tree

11 files changed

+28
-44
lines changed

11 files changed

+28
-44
lines changed

app/math-pad/build.gradle

-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ dependencies {
3232
implementation project(':myscript-iink-extensions')
3333

3434
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
35-
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlinx_coroutines_version"
3635
implementation "com.android.support:appcompat-v7:$supportLibraryVersion"
3736
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
3837

app/math-pad/src/main/java/com/myscript/iink/app/mathpad/activities/MainActivity.kt

+18-7
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,6 @@ import com.myscript.iink.extensions.copyToClipboard
1919
import com.myscript.iink.uireferenceimplementation.EditorView
2020
import com.myscript.iink.uireferenceimplementation.FontUtils
2121
import com.myscript.iink.uireferenceimplementation.InputController
22-
import kotlinx.coroutines.Dispatchers
23-
import kotlinx.coroutines.GlobalScope
24-
import kotlinx.coroutines.launch
2522

2623
class MainActivity : AppCompatActivity(), IEditorListener {
2724

@@ -98,8 +95,22 @@ class MainActivity : AppCompatActivity(), IEditorListener {
9895
R.id.menu_redo -> it.redo()
9996
R.id.menu_undo -> it.undo()
10097
// TODO: 8 - export and copy to clipboard.
101-
R.id.menu_export_latex -> it.copyToClipboard(this, MimeType.LATEX)
102-
R.id.menu_export_math_ml -> it.copyToClipboard(this, MimeType.MATHML)
98+
R.id.menu_export_latex ->
99+
it.copyToClipboard(this, MimeType.LATEX).let { result ->
100+
Toast.makeText(
101+
this,
102+
"String (${MimeType.LATEX}) copied to clipboard:\n$result",
103+
Toast.LENGTH_LONG
104+
).show()
105+
}
106+
R.id.menu_export_math_ml ->
107+
it.copyToClipboard(this, MimeType.MATHML).let { result ->
108+
Toast.makeText(
109+
this,
110+
"String (${MimeType.MATHML}) copied to clipboard:\n$result",
111+
Toast.LENGTH_LONG
112+
).show()
113+
}
103114
else -> return@let
104115
}
105116
}
@@ -123,8 +134,8 @@ class MainActivity : AppCompatActivity(), IEditorListener {
123134
}
124135

125136
override fun onError(editor: Editor?, blockId: String?, message: String?) {
126-
GlobalScope.launch(Dispatchers.Main) {
127-
Toast.makeText(this@MainActivity, message, Toast.LENGTH_LONG).show()
137+
runOnUiThread {
138+
Toast.makeText(this, message, Toast.LENGTH_LONG).show()
128139
}
129140
}
130141

app/samples/editor-views/build.gradle

-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ dependencies {
3232
implementation project(':myscript-iink-extensions')
3333

3434
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
35-
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlinx_coroutines_version"
3635
implementation "com.android.support:appcompat-v7:$supportLibraryVersion"
3736
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
3837

app/samples/editor-views/src/main/java/com/myscript/iink/app/editors/activities/MainActivity.kt

+2-5
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,6 @@ import com.myscript.iink.uireferenceimplementation.FontUtils
2323
import com.myscript.iink.uireferenceimplementation.InputController
2424
import kotlinx.android.synthetic.main.activity_main.*
2525
import kotlinx.android.synthetic.main.problem_solver.view.*
26-
import kotlinx.coroutines.Dispatchers
27-
import kotlinx.coroutines.GlobalScope
28-
import kotlinx.coroutines.launch
2926

3027
class MainActivity : AppCompatActivity(), IEditorListener {
3128

@@ -168,8 +165,8 @@ class MainActivity : AppCompatActivity(), IEditorListener {
168165
}
169166

170167
override fun onError(editor: Editor?, blockId: String?, message: String?) {
171-
GlobalScope.launch(Dispatchers.Main) {
172-
Toast.makeText(this@MainActivity, message, Toast.LENGTH_LONG).show()
168+
runOnUiThread {
169+
Toast.makeText(this, message, Toast.LENGTH_LONG).show()
173170
}
174171
}
175172

app/samples/persistent-storage/build.gradle

-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ dependencies {
4141
implementation project(':myscript-iink-extensions')
4242

4343
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
44-
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlinx_coroutines_version"
4544
implementation "com.android.support:appcompat-v7:$supportLibraryVersion"
4645
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
4746

app/samples/persistent-storage/src/main/java/com/myscript/iink/app/persistence/view/MainActivity.kt

+2-5
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,6 @@ import com.myscript.iink.extensions.convert
2424
import com.myscript.iink.extensions.parts
2525
import com.myscript.iink.uireferenceimplementation.EditorView
2626
import com.myscript.iink.uireferenceimplementation.InputController
27-
import kotlinx.coroutines.Dispatchers
28-
import kotlinx.coroutines.GlobalScope
29-
import kotlinx.coroutines.launch
3027

3128
class MainActivity : AppCompatActivity(), IEditorListener {
3229

@@ -145,8 +142,8 @@ class MainActivity : AppCompatActivity(), IEditorListener {
145142
}
146143

147144
override fun onError(editor: Editor?, blockId: String?, message: String?) {
148-
GlobalScope.launch(Dispatchers.Main) {
149-
Toast.makeText(this@MainActivity, message, Toast.LENGTH_LONG).show()
145+
runOnUiThread {
146+
Toast.makeText(this, message, Toast.LENGTH_LONG).show()
150147
}
151148
}
152149

app/starter/build.gradle

-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ dependencies {
3333
implementation project(':myscript-iink-extensions')
3434

3535
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
36-
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlinx_coroutines_version"
3736
implementation "com.android.support:appcompat-v7:$supportLibraryVersion"
3837
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
3938

app/starter/src/main/java/com/myscript/iink/app/starter/activities/MainActivity.kt

+2-5
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,6 @@ import com.myscript.iink.app.starter.R
2020
import com.myscript.iink.extensions.convert
2121
import com.myscript.iink.uireferenceimplementation.EditorView
2222
import com.myscript.iink.uireferenceimplementation.InputController
23-
import kotlinx.coroutines.Dispatchers
24-
import kotlinx.coroutines.GlobalScope
25-
import kotlinx.coroutines.launch
2623

2724
class MainActivity : AppCompatActivity(), IEditorListener {
2825

@@ -121,8 +118,8 @@ class MainActivity : AppCompatActivity(), IEditorListener {
121118
}
122119

123120
override fun onError(editor: Editor?, blockId: String?, message: String?) {
124-
GlobalScope.launch(Dispatchers.Main) {
125-
Toast.makeText(this@MainActivity, message, Toast.LENGTH_LONG).show()
121+
runOnUiThread {
122+
Toast.makeText(this, message, Toast.LENGTH_LONG).show()
126123
}
127124
}
128125

build.gradle

-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ buildscript {
88
ext {
99
android_plugin_version = '3.3.2'
1010
kotlin_version = '1.3.21'
11-
kotlinx_coroutines_version = '1.1.1'
1211
}
1312
repositories {
1413
google()

myscript/iink/extensions/build.gradle

-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ dependencies {
3333

3434
implementation "com.android.support:appcompat-v7:$supportLibraryVersion"
3535
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
36-
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlinx_coroutines_version"
3736

3837
testImplementation 'junit:junit:4.12'
3938
androidTestImplementation "com.android.support.test:runner:$testRunnerVersion"

myscript/iink/extensions/src/main/java/com/myscript/iink/extensions/Editor.kt

+4-16
Original file line numberDiff line numberDiff line change
@@ -8,26 +8,14 @@ import android.content.ClipData
88
import android.content.ClipboardManager
99
import android.content.Context
1010
import android.support.annotation.NonNull
11-
import android.widget.Toast
1211
import com.myscript.iink.Editor
1312
import com.myscript.iink.MimeType
14-
import kotlinx.coroutines.Dispatchers
15-
import kotlinx.coroutines.GlobalScope
16-
import kotlinx.coroutines.launch
1713

1814
fun Editor.convert() =
1915
getSupportedTargetConversionStates(null).firstOrNull()?.let { convert(null, it) }
2016

21-
fun Editor.copyToClipboard(@NonNull context: Context, type: MimeType) =
22-
export_(null, type).let {
23-
GlobalScope.launch(Dispatchers.Main) {
24-
(context.getSystemService(Context.CLIPBOARD_SERVICE) as? ClipboardManager)?.run {
25-
primaryClip = ClipData.newPlainText(type.name, it)
26-
Toast.makeText(
27-
context,
28-
"String ($type) copied to clipboard:\n$it",
29-
Toast.LENGTH_LONG
30-
).show()
31-
}
32-
}
17+
fun Editor.copyToClipboard(@NonNull context: Context, type: MimeType): String =
18+
export_(null, type).also {
19+
(context.getSystemService(Context.CLIPBOARD_SERVICE) as? ClipboardManager)?.primaryClip =
20+
ClipData.newPlainText(type.name, it)
3321
}

0 commit comments

Comments
 (0)