Skip to content

Commit 69e5494

Browse files
committed
fix code
1 parent 719b060 commit 69e5494

File tree

8 files changed

+93
-84
lines changed

8 files changed

+93
-84
lines changed

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[!["Buy Me A Coffee"](https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png)](https://www.buymeacoffee.com/pokeumcho)
44

5-
[![Generic badge](https://img.shields.io/badge/jitpack-v0.0.1-darkyellow?logo=jitpack&logoColor=white.svg)](https://jitpack.io/#pokeum/jsonviewer-xml/)
5+
[![Generic badge](https://img.shields.io/badge/jitpack-v0.0.2-darkyellow?logo=jitpack&logoColor=white.svg)](https://jitpack.io/#pokeum/jsonviewer-xml/)
66

77
---
88

@@ -185,12 +185,12 @@ implementation 'com.github.pokeum:jsonviewer-xml:0.0.1'
185185

186186
```kotlin
187187
recyclerView.adapter = JsonViewerAdapter(/* JsonElement */).apply {
188-
setKeyColor(JVColor(/* Default Color[, Dark Mode Color] */))
189-
setValueColor(JVColor(/* ... */))
190-
setSplitterColor(JVColor(/* ... */))
191-
setTypeColor(JVColor(/* ... */))
192-
setArrowColor(JVColor(/* ... */))
193-
setBracketColor(JVColor(/* ... */))
194-
setDividerColor(JVColor(/* ... */))
188+
setKeyColor(JsonViewerColor(/* color[, dark mode color] */))
189+
setValueColor(JsonViewerColor(/* ... */))
190+
setSplitterColor(JsonViewerColor(/* ... */))
191+
setTypeColor(JsonViewerColor(/* ... */))
192+
setArrowColor(JsonViewerColor(/* ... */))
193+
setBracketColor(JsonViewerColor(/* ... */))
194+
setDividerColor(JsonViewerColor(/* ... */))
195195
}
196-
```
196+
```

app/build.gradle

Lines changed: 21 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -9,46 +9,45 @@ def majorNumber = 1
99
def minorNumber = 1
1010
def patchNumber = 0
1111

12-
def versionNameApp = "$majorNumber.$minorNumber.$patchNumber"
13-
def versionCodeBase = majorNumber * 100000 + minorNumber * 1000 + patchNumber * 10
14-
def versionCodeApp = versionCodeBase + 1
12+
def VERSION_NAME = "$majorNumber.$minorNumber.$patchNumber"
13+
def VERSION_CODE = majorNumber * 100000 + minorNumber * 1000 + patchNumber * 10
1514

1615
android {
17-
compileSdkVersion defaultCompileSdkVersion
18-
buildToolsVersion defaultBuildToolsVersion
16+
compileSdkVersion COMPILE_SDK_VERSION
17+
buildToolsVersion BUILD_TOOL_VERSION
1918

2019
defaultConfig {
21-
applicationId "kr.pokeum.jsonviewer.app"
22-
minSdkVersion defaultMinSdkVersion
23-
targetSdkVersion defaultTargetSdkVersion
24-
versionCode versionCodeApp
25-
versionName versionNameApp
20+
applicationId "kr.pokeum.jsonviewer.app"
21+
minSdkVersion MIN_SDK_VERSION
22+
targetSdkVersion TARGET_SDK_VERSION
23+
versionCode VERSION_CODE
24+
versionName VERSION_NAME
2625

2726
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
2827
}
2928

3029
signingConfigs {
3130
release {
32-
keyAlias System.getenv("JSONVIEWER_KEYSTORE_ALIAS")
33-
keyPassword System.getenv("JSONVIEWER_KEY_PASSWORD")
34-
storeFile file(System.getenv("HOME") + "/keystore/jsonviewer_keystore.jks")
35-
storePassword System.getenv("JSONVIEWER_STORE_PASSWORD")
31+
keyAlias System.getenv("JSONVIEWER_KEYSTORE_ALIAS")
32+
keyPassword System.getenv("JSONVIEWER_KEY_PASSWORD")
33+
storeFile file(System.getenv("HOME") + "/keystore/jsonviewer_keystore.jks")
34+
storePassword System.getenv("JSONVIEWER_STORE_PASSWORD")
3635
}
3736
}
3837
buildTypes {
3938
release {
40-
debuggable false
41-
minifyEnabled true
42-
signingConfig signingConfigs.release
43-
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
39+
debuggable false
40+
minifyEnabled true
41+
signingConfig signingConfigs.release
42+
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
4443
}
4544
}
4645
compileOptions {
47-
sourceCompatibility javaCompileVersion
48-
targetCompatibility javaCompileVersion
46+
sourceCompatibility JAVA_COMPILE_VERSION
47+
targetCompatibility JAVA_COMPILE_VERSION
4948
}
5049
kotlinOptions {
51-
jvmTarget = jvmTarget
50+
jvmTarget = JVM_TARGET
5251
}
5352
buildFeatures {
5453
viewBinding true
@@ -59,7 +58,7 @@ dependencies {
5958

6059
implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
6160

62-
implementation 'com.github.pokeum:jsonviewer-xml:0.0.1'
61+
implementation(project(":jsonviewer"))
6362

6463
implementation stdlib.kotlin
6564
implementation androidx.core

app/src/main/java/kr/pokeum/app/util/ContextUtils.kt

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@ package kr.pokeum.app.util
22

33
import android.content.Context
44
import android.net.Uri
5+
import androidx.annotation.ColorInt
6+
import androidx.annotation.ColorRes
7+
import androidx.core.content.ContextCompat
58
import java.io.BufferedReader
69
import java.io.File
710
import java.io.FileInputStream
@@ -79,4 +82,8 @@ fun Context.writeCacheFile(bytesToWrite: ByteArray, filename: String) {
7982
} catch (e: Exception) {
8083
e.printStackTrace()
8184
}
82-
}
85+
}
86+
87+
@ColorInt
88+
fun Context.getColorInt(@ColorRes resourceId: Int): Int =
89+
ContextCompat.getColor(this, resourceId)

build.gradle

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
// Top-level build file where you can add configuration options common to all sub-projects/modules.
22
buildscript {
33
ext {
4-
javaCompileVersion = JavaVersion.VERSION_1_8
5-
jvmTarget = JavaVersion.VERSION_1_8.toString()
6-
defaultBuildToolsVersion = "30.0.3"
7-
defaultCompileSdkVersion = 33
8-
defaultTargetSdkVersion = 33
9-
defaultMinSdkVersion = 19
10-
composeMinSdkVersion = 21 // API level 21 or higher
4+
JAVA_COMPILE_VERSION = JavaVersion.VERSION_1_8
5+
JVM_TARGET = JavaVersion.VERSION_1_8.toString()
6+
BUILD_TOOL_VERSION = "30.0.3"
7+
COMPILE_SDK_VERSION = 33
8+
TARGET_SDK_VERSION = 33
9+
MIN_SDK_VERSION = 19
1110

1211
versions = [
1312
androidGradlePlugin : "4.2.2",

jsonviewer/build.gradle

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,20 @@ plugins {
66

77
def majorNumber = 0
88
def minorNumber = 0
9-
def patchNumber = 0
9+
def patchNumber = 2
1010

11-
def versionNameSdk = "$majorNumber.$minorNumber.$patchNumber"
11+
def VERSION_NAME = "$majorNumber.$minorNumber.$patchNumber"
12+
def VERSION_CODE = majorNumber * 100000 + minorNumber * 1000 + patchNumber * 10
1213

1314
android {
14-
namespace 'kr.pokeum.jsonviewer_xml'
15-
compileSdkVersion defaultCompileSdkVersion
15+
namespace "kr.pokeum.jsonviewer_xml"
16+
compileSdkVersion COMPILE_SDK_VERSION
1617

1718
defaultConfig {
18-
minSdkVersion defaultMinSdkVersion
19-
targetSdkVersion defaultTargetSdkVersion
20-
versionCode 1
21-
versionName versionNameSdk
19+
minSdkVersion MIN_SDK_VERSION
20+
targetSdkVersion TARGET_SDK_VERSION
21+
versionCode VERSION_CODE
22+
versionName VERSION_NAME
2223

2324
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
2425
}
@@ -39,11 +40,11 @@ android {
3940
}
4041
}
4142
compileOptions {
42-
sourceCompatibility javaCompileVersion
43-
targetCompatibility javaCompileVersion
43+
sourceCompatibility JAVA_COMPILE_VERSION
44+
targetCompatibility JAVA_COMPILE_VERSION
4445
}
4546
kotlinOptions {
46-
jvmTarget = jvmTarget
47+
jvmTarget = JVM_TARGET
4748
}
4849
}
4950

@@ -61,9 +62,9 @@ dependencies {
6162
publishing {
6263
publications {
6364
release(MavenPublication) {
64-
groupId = 'com.github.pokeum'
65-
artifactId = 'jsonviewer-xml'
66-
version = versionNameSdk
65+
groupId = "com.github.pokeum"
66+
artifactId = "jsonviewer-xml"
67+
version = VERSION_NAME
6768

6869
afterEvaluate {
6970
from components.release

jsonviewer/src/main/java/kr/pokeum/jsonviewer_xml/JsonRecyclerView.kt

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import android.util.AttributeSet
55
import androidx.recyclerview.widget.LinearLayoutManager
66
import androidx.recyclerview.widget.RecyclerView
77
import kr.pokeum.jsonviewer_xml.adapter.JsonViewerAdapter
8-
import kr.pokeum.jsonviewer_xml.util.JVColor
8+
import kr.pokeum.jsonviewer_xml.util.JsonViewerColor
99

1010
@Suppress("DEPRECATION")
1111
class JsonRecyclerView
@@ -46,6 +46,7 @@ constructor(
4646
setText(text)
4747
}
4848

49+
@Suppress("MemberVisibilityCanBePrivate")
4950
fun setText(text: String) {
5051
this.text = text
5152

@@ -55,13 +56,13 @@ constructor(
5556
} catch (_: Throwable) {
5657
jsonParser.parse(DEFAULT_TEXT)
5758
}).apply {
58-
setKeyColor(JVColor(keyColor))
59-
setValueColor(JVColor(valueColor))
60-
setSplitterColor(JVColor(splitterColor))
61-
setTypeColor(JVColor(typeColor))
62-
setArrowColor(JVColor(arrowColor))
63-
setBracketColor(JVColor(bracketColor))
64-
setDividerColor(JVColor(dividerColor))
59+
setKeyColor(JsonViewerColor(keyColor))
60+
setValueColor(JsonViewerColor(valueColor))
61+
setSplitterColor(JsonViewerColor(splitterColor))
62+
setTypeColor(JsonViewerColor(typeColor))
63+
setArrowColor(JsonViewerColor(arrowColor))
64+
setBracketColor(JsonViewerColor(bracketColor))
65+
setDividerColor(JsonViewerColor(dividerColor))
6566
}
6667
}
6768

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
11
package kr.pokeum.jsonviewer_xml.adapter
22

33
import androidx.recyclerview.widget.RecyclerView
4-
import kr.pokeum.jsonviewer_xml.util.JVColor
4+
import kr.pokeum.jsonviewer_xml.util.JsonViewerColor
55

66
abstract class BaseJsonViewerAdapter<VH : RecyclerView.ViewHolder> : RecyclerView.Adapter<VH>()
77
{
88
// abstract fun expandAll()
99
// abstract fun collapseAll()
1010

11-
fun setKeyColor(color: JVColor) { KEY_COLOR = color }
12-
fun setValueColor(color: JVColor) { VALUE_COLOR = color }
13-
fun setSplitterColor(color: JVColor) { SPLITTER_COLOR = color }
14-
fun setTypeColor(color: JVColor) { TYPE_COLOR = color }
15-
fun setArrowColor(color: JVColor) { ARROW_COLOR = color }
16-
fun setBracketColor(color: JVColor) { BRACKET_COLOR = color }
17-
fun setDividerColor(color: JVColor) { DIVIDER_COLOR = color }
11+
fun setKeyColor(color: JsonViewerColor) { KEY_COLOR = color }
12+
fun setValueColor(color: JsonViewerColor) { VALUE_COLOR = color }
13+
fun setSplitterColor(color: JsonViewerColor) { SPLITTER_COLOR = color }
14+
fun setTypeColor(color: JsonViewerColor) { TYPE_COLOR = color }
15+
fun setArrowColor(color: JsonViewerColor) { ARROW_COLOR = color }
16+
fun setBracketColor(color: JsonViewerColor) { BRACKET_COLOR = color }
17+
fun setDividerColor(color: JsonViewerColor) { DIVIDER_COLOR = color }
1818

1919
companion object {
20-
internal var KEY_COLOR = JVColor(0xFF000000.toInt(), 0xFFFFFFFF.toInt())
21-
internal var VALUE_COLOR = JVColor(0xFF888888.toInt())
22-
internal var SPLITTER_COLOR = JVColor(0xFF000000.toInt(), 0xFFFFFFFF.toInt())
23-
internal var TYPE_COLOR = JVColor(0xFF2196F3.toInt())
24-
internal var ARROW_COLOR = JVColor(0xFFF44336.toInt())
25-
internal var BRACKET_COLOR = JVColor(0xFF4CAF50.toInt())
26-
internal var DIVIDER_COLOR = JVColor(0x1E000000.toInt(), 0x1EFFFFFF.toInt())
20+
internal var KEY_COLOR = JsonViewerColor(0xFF000000.toInt(), 0xFFFFFFFF.toInt())
21+
internal var VALUE_COLOR = JsonViewerColor(0xFF888888.toInt())
22+
internal var SPLITTER_COLOR = JsonViewerColor(0xFF000000.toInt(), 0xFFFFFFFF.toInt())
23+
internal var TYPE_COLOR = JsonViewerColor(0xFF2196F3.toInt())
24+
internal var ARROW_COLOR = JsonViewerColor(0xFFF44336.toInt())
25+
internal var BRACKET_COLOR = JsonViewerColor(0xFF4CAF50.toInt())
26+
internal var DIVIDER_COLOR = JsonViewerColor(0x1E000000.toInt(), 0x1EFFFFFF.toInt())
2727
}
2828
}
2929

jsonviewer/src/main/java/kr/pokeum/jsonviewer_xml/util/StyleUtils.kt

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,16 @@ import android.content.res.Configuration
44
import android.view.View
55
import androidx.annotation.ColorInt
66

7-
class JVColor(
8-
@ColorInt private val default: Int,
9-
@ColorInt private val night: Int
7+
data class JsonViewerColor(
8+
@ColorInt private val color: Int,
9+
@ColorInt private val darkModeColor: Int? = null
1010
) {
11-
constructor(@ColorInt default: Int) : this(default, default)
11+
internal fun getColor(view: View) =
12+
if (isDarkMode(view)) { darkModeColor ?: color } else { color }
1213

13-
internal fun getColor(view: View) = when (view.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK) {
14-
Configuration.UI_MODE_NIGHT_YES -> night
15-
else -> default
16-
}
14+
private fun isDarkMode(view: View): Boolean =
15+
when (view.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK) {
16+
Configuration.UI_MODE_NIGHT_YES -> true
17+
else -> false
18+
}
1719
}

0 commit comments

Comments
 (0)