Skip to content

Commit 6b9588d

Browse files
committed
Support 2712, 2765 interactive comics.
1 parent 6367a29 commit 6b9588d

File tree

5 files changed

+38
-9
lines changed

5 files changed

+38
-9
lines changed

xkcd/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ dependencies {
220220
implementation 'androidx.work:work-rxjava2:2.8.0-beta02'
221221
proprietaryImplementation 'com.google.firebase:firebase-analytics:21.2.0'
222222
//noinspection GradleDependency
223-
proprietaryImplementation('com.google.firebase:firebase-messaging:23.1.0') {
223+
proprietaryImplementation('com.google.firebase:firebase-messaging:22.0.0') {
224224
// 23.0.0 will require API level 19, Android 4.4 higher.
225225
// https://firebase.google.com/support/release-notes/android#messaging_v23-0-0
226226
version {

xkcd/src/main/java/xyz/jienan/xkcd/comics/activity/ImageWebViewActivity.kt

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ class ImageWebViewActivity : BaseActivity() {
139139
}
140140

141141
override fun onCreateOptionsMenu(menu: Menu): Boolean {
142-
if (index !in listOf(1608L, 2445, 2601)) {
142+
if (index !in listOf(1608L, 2445, 2601, 2712, 2765)) {
143143
return false
144144
}
145145
when (index) {
@@ -153,6 +153,12 @@ class ImageWebViewActivity : BaseActivity() {
153153
}
154154
2445L -> listOf("console")
155155
2601L -> listOf("audio")
156+
2712L, 2765L -> listOf(
157+
"ze.googles",
158+
"python(\"import antigravity\")",
159+
"ship.shield",
160+
"ship.engine"
161+
)
156162
else -> listOf()
157163
}.forEachIndexed { index, title ->
158164
menu.add(Menu.NONE, Menu.NONE, index, title)
@@ -211,11 +217,29 @@ class ImageWebViewActivity : BaseActivity() {
211217
webView.loadUrl("javascript:togglePlayer()")
212218
}
213219
}
220+
else if (index == 2712L || index == 2765L) {
221+
when (item.order) {
222+
0 -> {
223+
webView.loadUrl("javascript:ze.goggles()")
224+
// they do nothing!
225+
ToastUtils.showToast(this, "they do nothing!")
226+
}
227+
// javascript:python("import antigravity")
228+
1 -> webView.loadUrl("javascript:python(\"import antigravity\")")
229+
2 -> {
230+
webView.loadUrl("javascript:ship.shields=${!shipShield}")
231+
shipShield = !shipShield
232+
}
233+
3 -> webView.loadUrl("javascript:ship.engines='infinite improbability drive'")
234+
}
235+
}
214236
}
215237
}
216238
return true
217239
}
218240

241+
private var shipShield = true
242+
219243
class AndroidInterface(private val webView: WebView) {
220244

221245
data class Coin(@SerializedName("got") val got: Boolean)
@@ -342,6 +366,8 @@ class ImageWebViewActivity : BaseActivity() {
342366
1608,
343367
1975,
344368
2445,
369+
2712,
370+
2765,
345371
-> {
346372
script = TRIM.trimIndent()
347373
"https://xkcd.com/$index"

xkcd/src/main/res/layout-land/fragment_comic_single.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@
8585
android:saveEnabled="false"
8686
android:text="@string/see_translation"
8787
android:textColor="@color/colorAccent"
88+
android:visibility="gone"
8889
app:layout_constraintBottom_toBottomOf="parent"
8990
app:layout_constraintStart_toEndOf="@id/tvCreateDate" />
9091

xkcd/src/main/res/values/array.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,8 @@
8989
<item>2288</item>
9090
<item>2445</item>
9191
<item>2601</item>
92+
<item>2712</item>
93+
<item>2765</item>
9294
</integer-array>
9395

9496
</resources>

xkcd/src/main/res/xml/prefs.xml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -51,13 +51,13 @@
5151
app:title="@string/pref_random_title"
5252
app:useSimpleSummaryProvider="true" />
5353

54-
<SwitchPreferenceCompat
55-
app:defaultValue="false"
56-
app:iconSpaceReserved="false"
57-
app:key="pref_xkcd_show_archive"
58-
app:title="@string/pref_fav_and_archive_title"
59-
app:summary="@string/pref_fav_and_archive_summery"
60-
app:useSimpleSummaryProvider="true" />
54+
<!-- <SwitchPreferenceCompat-->
55+
<!-- app:defaultValue="false"-->
56+
<!-- app:iconSpaceReserved="false"-->
57+
<!-- app:key="pref_xkcd_show_archive"-->
58+
<!-- app:title="@string/pref_fav_and_archive_title"-->
59+
<!-- app:summary="@string/pref_fav_and_archive_summery"-->
60+
<!-- app:useSimpleSummaryProvider="true" />-->
6161

6262
</PreferenceCategory>
6363

0 commit comments

Comments
 (0)