diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml deleted file mode 100644 index 425bd77a..00000000 --- a/.idea/codeStyles/Project.xml +++ /dev/null @@ -1,140 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml deleted file mode 100644 index 79ee123c..00000000 --- a/.idea/codeStyles/codeStyleConfig.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/copyright/GPL.xml b/.idea/copyright/GPL.xml deleted file mode 100644 index aff4b88e..00000000 --- a/.idea/copyright/GPL.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml deleted file mode 100644 index c4a8f7c8..00000000 --- a/.idea/copyright/profiles_settings.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/.idea/dictionaries/tom50.xml b/.idea/dictionaries/tom50.xml deleted file mode 100644 index 06b3df9f..00000000 --- a/.idea/dictionaries/tom50.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - hitomi - - - \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml deleted file mode 100644 index 15a15b21..00000000 --- a/.idea/encodings.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml deleted file mode 100644 index d606a954..00000000 --- a/.idea/inspectionProfiles/Project_Default.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml index 94fb0d01..f530d59b 100644 --- a/.idea/jarRepositories.xml +++ b/.idea/jarRepositories.xml @@ -12,89 +12,29 @@ diff --git a/.idea/scopes/Pupil.xml b/.idea/scopes/Pupil.xml deleted file mode 100644 index f607cbcf..00000000 --- a/.idea/scopes/Pupil.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle deleted file mode 100644 index e3839680..00000000 --- a/app/build.gradle +++ /dev/null @@ -1,130 +0,0 @@ -apply plugin: "com.android.application" -apply plugin: "kotlin-android" -apply plugin: "kotlin-kapt" -apply plugin: "kotlin-parcelize" -apply plugin: "kotlinx-serialization" -apply plugin: "com.google.android.gms.oss-licenses-plugin" - -if (file("google-services.json").exists()) { - logger.lifecycle("Firebase Enabled") - apply plugin: "com.google.gms.google-services" - apply plugin: "com.google.firebase.crashlytics" - apply plugin: "com.google.firebase.firebase-perf" -} else { - logger.lifecycle("Firebase Disabled") -} - -android { - compileSdkVersion 30 - defaultConfig { - applicationId "xyz.quaver.pupil" - minSdkVersion 21 - targetSdkVersion 30 - versionCode 65 - versionName "6.0.0-alpha2" - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - } - buildTypes { - debug { - minifyEnabled false - shrinkResources false - - debuggable true - applicationIdSuffix ".debug" - versionNameSuffix "-DEBUG" - - proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" - - ext.enableCrashlytics = false - ext.alwaysUpdateBuildId = false - } - release { - minifyEnabled true - shrinkResources true - - proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" - } - } - buildFeatures { - viewBinding true - dataBinding true - } - kotlinOptions { - jvmTarget = JavaVersion.VERSION_1_8.toString() - freeCompilerArgs += "-Xuse-experimental=kotlin.Experimental" - } - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - - lintOptions { - abortOnError false - } -} - -dependencies { - implementation fileTree(dir: "libs", include: ["*.jar", "*.aar"]) - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.20" - implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.0-RC" - implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.1" - - implementation "io.ktor:ktor-client-core:1.6.1" - implementation "io.ktor:ktor-client-okhttp:1.6.1" - implementation "io.ktor:ktor-client-serialization:1.6.1" - - implementation "androidx.appcompat:appcompat:1.3.0" - implementation "androidx.activity:activity-ktx:1.3.0-rc02" - implementation "androidx.fragment:fragment-ktx:1.3.6" - implementation "androidx.preference:preference-ktx:1.1.1" - implementation "androidx.recyclerview:recyclerview:1.2.1" - implementation "androidx.constraintlayout:constraintlayout:2.0.4" - implementation "androidx.gridlayout:gridlayout:1.0.0" - implementation "androidx.biometric:biometric:1.1.0" - implementation "androidx.work:work-runtime-ktx:2.6.0-beta02" - - implementation 'org.kodein.di:kodein-di-framework-android-x:7.6.0' - - implementation "com.daimajia.swipelayout:library:1.2.0@aar" - - implementation "com.google.android.material:material:1.4.0" - - implementation platform("com.google.firebase:firebase-bom:28.0.0") - implementation "com.google.firebase:firebase-analytics-ktx" - implementation "com.google.firebase:firebase-crashlytics" - implementation "com.google.firebase:firebase-perf" - - implementation "com.google.android.gms:play-services-oss-licenses:17.0.0" - - implementation "com.github.clans:fab:1.6.4" - - //implementation "com.quiph.ui:recyclerviewfastscroller:0.2.1" - - implementation 'com.github.piasy:BigImageViewer:1.8.0' - implementation 'com.github.piasy:FrescoImageLoader:1.8.0' - implementation 'com.github.piasy:FrescoImageViewFactory:1.8.0' - - implementation "org.jsoup:jsoup:1.14.1" - - implementation "com.tbuonomo:dotsindicator:4.2" - - //implementation "com.andrognito.patternlockview:patternlockview:1.0.0" - //implementation "com.andrognito.pinlockview:pinlockview:2.1.0" - - implementation "ru.noties.markwon:core:3.1.0" - - implementation "xyz.quaver:libpupil:2.1.3" - implementation "xyz.quaver:documentfilex:0.6.1" - implementation "xyz.quaver:floatingsearchview:1.1.7" - - debugImplementation "com.orhanobut:logger:2.2.0" - debugImplementation "com.squareup.leakcanary:leakcanary-android:2.6" - - testImplementation "junit:junit:4.13.2" - testImplementation "org.mockito:mockito-inline:3.11.2" - - androidTestImplementation "androidx.test.ext:junit:1.1.3" - androidTestImplementation "androidx.test:rules:1.4.0" - androidTestImplementation "androidx.test:runner:1.4.0" - androidTestImplementation "androidx.test.espresso:espresso-core:3.4.0" -} \ No newline at end of file diff --git a/app/build.gradle.kts b/app/build.gradle.kts new file mode 100644 index 00000000..b7db6974 --- /dev/null +++ b/app/build.gradle.kts @@ -0,0 +1,125 @@ +plugins { + id("com.android.application") + kotlin("android") + kotlin("kapt") + id("kotlin-parcelize") + id("kotlinx-serialization") + id("com.google.android.gms.oss-licenses-plugin") + + if (File("google-services.json").exists()) { + println("Firebase Enabled") + id("com.google.gms.google-services") + id("com.google.firebase.crashlytics") + id("com.google.firebase.firebase-perf") + } else { + println("Firebase Disabled") + } +} + +android { + compileSdkVersion(30) + defaultConfig { + applicationId = "xyz.quaver.pupil" + minSdkVersion(21) + targetSdkVersion(30) + versionCode = 600 + versionName = "6.0.0-alpha2" + testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" + } + buildTypes { + getByName("debug") { + isDebuggable = true + applicationIdSuffix = ".debug" + versionNameSuffix = "-DEBUG" + + proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") + + extra.set("enableCrashlytics", false) + extra.set("alwaysUpdateBuildId", false) + } + getByName("release") { + isMinifyEnabled = true + isShrinkResources = true + + proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") + } + } + buildFeatures { + viewBinding = true + dataBinding = true + } + kotlinOptions { + jvmTarget = JavaVersion.VERSION_1_8.toString() + freeCompilerArgs += "-Xuse-experimental=kotlin.Experimental" + } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 + } +} + +dependencies { + implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.aar")))) + implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.21") + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.0") + implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.1") + + implementation("io.ktor:ktor-client-core:1.6.1") + implementation("io.ktor:ktor-client-okhttp:1.6.1") + implementation("io.ktor:ktor-client-serialization:1.6.1") + + implementation("androidx.appcompat:appcompat:1.3.0") + implementation("androidx.activity:activity-ktx:1.3.0-rc02") + implementation("androidx.fragment:fragment-ktx:1.3.6") + implementation("androidx.preference:preference-ktx:1.1.1") + implementation("androidx.recyclerview:recyclerview:1.2.1") + implementation("androidx.constraintlayout:constraintlayout:2.0.4") + implementation("androidx.gridlayout:gridlayout:1.0.0") + implementation("androidx.biometric:biometric:1.1.0") + implementation("androidx.work:work-runtime-ktx:2.6.0-beta02") + + implementation("org.kodein.di:kodein-di-framework-android-x:7.6.0") + + implementation("com.daimajia.swipelayout:library:1.2.0@aar") + + implementation("com.google.android.material:material:1.4.0") + + implementation(platform("com.google.firebase:firebase-bom:28.3.0")) + implementation("com.google.firebase:firebase-analytics-ktx") + implementation("com.google.firebase:firebase-crashlytics") + implementation("com.google.firebase:firebase-perf") + + implementation("com.google.android.gms:play-services-oss-licenses:17.0.0") + + implementation("com.github.clans:fab:1.6.4") + + //implementation("com.quiph.ui:recyclerviewfastscroller:0.2.1") + + implementation("com.github.piasy:BigImageViewer:1.8.0") + implementation("com.github.piasy:FrescoImageLoader:1.8.0") + implementation("com.github.piasy:FrescoImageViewFactory:1.8.0") + + implementation("org.jsoup:jsoup:1.14.1") + + implementation("com.tbuonomo:dotsindicator:4.2") + + //implementation("com.andrognito.patternlockview:patternlockview:1.0.0") + //implementation("com.andrognito.pinlockview:pinlockview:2.1.0") + + implementation("ru.noties.markwon:core:3.1.0") + + implementation("xyz.quaver:libpupil:2.1.3") + implementation("xyz.quaver:documentfilex:0.6.1") + implementation("xyz.quaver:floatingsearchview:1.1.7") + + debugImplementation("com.orhanobut:logger:2.2.0") + debugImplementation("com.squareup.leakcanary:leakcanary-android:2.6") + + testImplementation("junit:junit:4.13.2") + testImplementation("org.mockito:mockito-inline:3.11.2") + + androidTestImplementation("androidx.test.ext:junit:1.1.3") + androidTestImplementation("androidx.test:rules:1.4.0") + androidTestImplementation("androidx.test:runner:1.4.0") + androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0") +} \ No newline at end of file diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 63a3a4b6..0b092737 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -1,6 +1,6 @@ # Add project specific ProGuard rules here. # You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. +# proguardFiles setting in build.gradle.kts. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html diff --git a/build.gradle b/build.gradle deleted file mode 100644 index ee5cb5f0..00000000 --- a/build.gradle +++ /dev/null @@ -1,34 +0,0 @@ -// Top-level build file where you can add configuration options common to all sub-projects/modules. - -buildscript { - repositories { - google() - mavenCentral() - } - dependencies { - classpath 'com.android.tools.build:gradle:4.2.2' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version" - classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version" - classpath "com.google.gms:google-services:4.3.8" - // NOTE: Do not place your application dependencies here; they belong - // in the individual module build.gradle files - classpath "com.google.firebase:firebase-crashlytics-gradle:2.7.1" - classpath "com.google.firebase:perf-plugin:1.4.0" - classpath "com.google.android.gms:oss-licenses-plugin:0.10.4" - } -} - -allprojects { - repositories { - google() - mavenCentral() - mavenLocal() - maven { url "https://oss.sonatype.org/content/repositories/snapshots" } - maven { url "https://jitpack.io" } - } -} - -task clean(type: Delete) { - delete rootProject.buildDir -} \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 00000000..eb9ec26d --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,34 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +buildscript { + repositories { + google() + mavenCentral() + } + dependencies { + classpath("com.android.tools.build:gradle:4.2.2") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.21") + classpath("org.jetbrains.kotlin:kotlin-android-extensions:1.5.21") + classpath("org.jetbrains.kotlin:kotlin-serialization:1.5.21") + classpath("com.google.gms:google-services:4.3.8") + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + classpath("com.google.firebase:firebase-crashlytics-gradle:2.7.1") + classpath("com.google.firebase:perf-plugin:1.4.0") + classpath("com.google.android.gms:oss-licenses-plugin:0.10.4") + } +} + +allprojects { + repositories { + google() + mavenCentral() + mavenLocal() + maven { url = uri("https://oss.sonatype.org/content/repositories/snapshots") } + maven { url = uri("https://jitpack.io") } + } +} + +tasks.register("clean", Delete::class) { + delete(rootProject.buildDir) +} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 7d0a7085..729ae99c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -19,6 +19,4 @@ org.gradle.caching=true kotlin.code.style=official android.enableJetifier=true android.useAndroidX=true -android.enableBuildCache=true - -kotlin_version=1.5.20 \ No newline at end of file +android.enableBuildCache=true \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index f3d88b1c..7454180f 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 906f70c5..05679dc3 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,5 @@ -#Tue Oct 13 22:37:11 KST 2020 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-7.1.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip diff --git a/gradlew b/gradlew index 2fe81a7d..744e882e 100644 --- a/gradlew +++ b/gradlew @@ -72,7 +72,7 @@ case "`uname`" in Darwin* ) darwin=true ;; - MINGW* ) + MSYS* | MINGW* ) msys=true ;; NONSTOP* ) @@ -82,6 +82,7 @@ esac CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + # Determine the Java command to use to start the JVM. if [ -n "$JAVA_HOME" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then @@ -129,6 +130,7 @@ fi if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` # We build the pattern for arguments to be converted via cygpath diff --git a/gradlew.bat b/gradlew.bat index 9618d8d9..107acd32 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -29,6 +29,9 @@ if "%DIRNAME%" == "" set DIRNAME=. set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" @@ -37,7 +40,7 @@ if defined JAVA_HOME goto findJavaFromJavaHome set JAVA_EXE=java.exe %JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init +if "%ERRORLEVEL%" == "0" goto execute echo. echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. @@ -51,7 +54,7 @@ goto fail set JAVA_HOME=%JAVA_HOME:"=% set JAVA_EXE=%JAVA_HOME%/bin/java.exe -if exist "%JAVA_EXE%" goto init +if exist "%JAVA_EXE%" goto execute echo. echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% @@ -61,28 +64,14 @@ echo location of your Java installation. goto fail -:init -@rem Get command-line arguments, handling Windows variants - -if not "%OS%" == "Windows_NT" goto win9xME_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* - :execute @rem Setup the command line set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + @rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* :end @rem End local scope for the variables with windows NT shell