diff --git a/.gitignore b/.gitignore index ef7ac00f..04430668 100644 --- a/.gitignore +++ b/.gitignore @@ -12,7 +12,6 @@ bin/ build/ gen/ -src/main/jniLibs/ obj/ .gradle/ @@ -20,14 +19,6 @@ obj/ local.properties project.properties -# Eclipse project files -.settings/ -.classpath -.project - -# Proguard folder generated by Eclipse -proguard/ - # Intellij project files *.iml *.ipr @@ -37,17 +28,3 @@ proguard/ # Gradle wrapper gradle/wrapper/gradle/ gradle/wrapper/gradlew* - -# Go native dependencies -ext/golang/dist - -# Syncthing native dependencies -ext/syncthing/pkg/ -ext/syncthing/src/code.google.com/ -ext/syncthing/src/github.com/kr/ -ext/syncthing/src/github.com/mattn/ -ext/syncthing/src/github.com/tools/ -ext/syncthing/src/golang.org/ - -# gradle-play-publisher -keys.json diff --git a/.gitmodules b/.gitmodules index c67d3961..ec8046da 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,12 +1,3 @@ -[submodule "ext/syncthing/src/github.com/syncthing/syncthing"] - path = ext/syncthing/src/github.com/syncthing/syncthing +[submodule "syncthing"] + path = syncthing/src/github.com/syncthing/syncthing url = https://github.com/syncthing/syncthing.git - ignore = dirty -[submodule "ext/golang/go"] - path = ext/golang/go - url = https://github.com/golang/go.git - ignore = dirty -[submodule "ext/golang/go1.4"] - path = ext/golang/go1.4 - url = https://github.com/golang/go.git - ignore = dirty diff --git a/.travis.yml b/.travis.yml index 1e050d81..b44c7af9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,7 @@ sudo: required language: android jdk: oraclejdk8 +dist: trusty # Install Android SDK android: @@ -13,10 +14,18 @@ android: - android-26 - extra-android-m2repository +# Install Android NDK (apparently there is no easier way to do this) +# https://github.com/travis-ci/travis-ci/issues/5395 +before_script: + - curl -L https://dl.google.com/android/repository/android-ndk-r15c-linux-x86_64.zip -O + - unzip -q android-ndk-r15c-linux-x86_64.zip + - export ANDROID_NDK_HOME=`pwd`/android-ndk-r15c + # Install Golang before_install: + - sudo add-apt-repository ppa:gophers/archive -y - sudo apt-get update -qq - - sudo apt-get install golang -y + - sudo apt-get install golang-1.9-go -y # Cache gradle dependencies # https://docs.travis-ci.com/user/languages/android/#Caching @@ -29,5 +38,5 @@ cache: - $HOME/.gradle/wrapper/ script: - - ./gradlew clean lint + - ./gradlew lintVitalRelease - ./gradlew buildNative assembleDebug diff --git a/.tx/config b/.tx/config index fb768ed0..e2570496 100644 --- a/.tx/config +++ b/.tx/config @@ -2,29 +2,29 @@ host = https://www.transifex.com [syncthing-android.stringsxml] -file_filter = src/main/res/values-/strings.xml -source_file = src/main/res/values/strings.xml +file_filter = app/src/main/res/values-/strings.xml +source_file = app/src/main/res/values/strings.xml source_lang = en type = ANDROID lang_map = af_ZA: af-rZA, am_ET: am-rET, ar_AE: ar-rAE, ar_BH: ar-rBH, ar_DZ: ar-rDZ, ar_EG: ar-rEG, ar_IQ: ar-rIQ, ar_JO: ar-rJO, ar_KW: ar-rKW, ar_LB: ar-rLB, ar_LY: ar-rLY, ar_MA: ar-rMA, ar_OM: ar-rOM, ar_QA: ar-rQA, ar_SA: ar-rSA, ar_SY: ar-rSY, ar_TN: ar-rTN, ar_YE: ar-rYE, arn_CL: arn-rCL, as_IN: as-rIN, az_AZ: az-rAZ, ba_RU: ba-rRU, be_BY: be-rBY, bg_BG: bg-rBG, bn_BD: bn-rBD, bn_IN: bn-rIN, bo_CN: bo-rCN, br_FR: br-rFR, bs_BA: bs-rBA, ca_ES: ca-rES, co_FR: co-rFR, cs_CZ: cs-rCZ, cy_GB: cy-rGB, da_DK: da-rDK, de_AT: de-rAT, de_CH: de-rCH, de_DE: de-rDE, de_LI: de-rLI, de_LU: de-rLU, dsb_DE: dsb-rDE, dv_MV: dv-rMV, el_GR: el-rGR, en_AU: en-rAU, en_BZ: en-rBZ, en_CA: en-rCA, en_GB: en-rGB, en_IE: en-rIE, en_IN: en-rIN, en_JM: en-rJM, en_MY: en-rMY, en_NZ: en-rNZ, en_PH: en-rPH, en_SG: en-rSG, en_TT: en-rTT, en_US: en-rUS, en_ZA: en-rZA, en_ZW: en-rZW, es_AR: es-rAR, es_BO: es-rBO, es_CL: es-rCL, es_CO: es-rCO, es_CR: es-rCR, es_DO: es-rDO, es_EC: es-rEC, es_ES: es-rES, es_GT: es-rGT, es_HN: es-rHN, es_MX: es-rMX, es_NI: es-rNI, es_PA: es-rPA, es_PE: es-rPE, es_PR: es-rPR, es_PY: es-rPY, es_SV: es-rSV, es_US: es-rUS, es_UY: es-rUY, es_VE: es-rVE, et_EE: et-rEE, eu_ES: eu-rES, fa_IR: fa-rIR, fi_FI: fi-rFI, fil_PH: fil-rPH, fo_FO: fo-rFO, fr_BE: fr-rBE, fr_CA: fr-rCA, fr_CH: fr-rCH, fr_FR: fr-rFR, fr_LU: fr-rLU, fr_MC: fr-rMC, fy_NL: fy-rNL, ga_IE: ga-rIE, gd_GB: gd-rGB, gl_ES: gl-rES, gsw_FR: gsw-rFR, gu_IN: gu-rIN, ha_NG: ha-rNG, hi_IN: hi-rIN, hr_BA: hr-rBA, hr_HR: hr-rHR, hsb_DE: hsb-rDE, hu_HU: hu-rHU, hy_AM: hy-rAM, id_ID: id-rID, ig_NG: ig-rNG, ii_CN: ii-rCN, is_IS: is-rIS, it_CH: it-rCH, it_IT: it-rIT, iu_CA: iu-rCA, ja_JP: ja-rJP, ka_GE: ka-rGE, kk_KZ: kk-rKZ, kl_GL: kl-rGL, km_KH: km-rKH, kn_IN: kn-rIN, ko_KR: ko-rKR, kok_IN: kok-rIN, ky_KG: ky-rKG, lb_LU: lb-rLU, lo_LA: lo-rLA, lt_LT: lt-rLT, lv_LV: lv-rLV, mi_NZ: mi-rNZ, mk_MK: mk-rMK, ml_IN: ml-rIN, mn_CN: mn-rCN, mn_MN: mn-rMN, moh_CA: moh-rCA, mr_IN: mr-rIN, ms_BN: ms-rBN, ms_MY: ms-rMY, mt_MT: mt-rMT, nb_NO: nb-rNO, ne_NP: ne-rNP, nl_BE: nl-rBE, nl_NL: nl-rNL, nn_NO: nn-rNO, nso_ZA: nso-rZA, oc_FR: oc-rFR, or_IN: or-rIN, pa_IN: pa-rIN, pl_PL: pl-rPL, prs_AF: prs-rAF, ps_AF: ps-rAF, pt_BR: pt-rBR, pt_PT: pt-rPT, qut_GT: qut-rGT, quz_BO: quz-rBO, quz_EC: quz-rEC, quz_PE: quz-rPE, rm_CH: rm-rCH, ro_RO: ro-rRO, ru_RU: ru-rRU, rw_RW: rw-rRW, sa_IN: sa-rIN, sah_RU: sah-rRU, se_FI: se-rFI, se_NO: se-rNO, se_SE: se-rSE, si_LK: si-rLK, sk_SK: sk-rSK, sl_SI: sl-rSI, sma_NO: sma-rNO, sma_SE: sma-rSE, smj_NO: smj-rNO, smj_SE: smj-rSE, smn_FI: smn-rFI, sms_FI: sms-rFI, sq_AL: sq-rAL, sr_BA: sr-rBA, sr_CS: sr-rCS, sr_ME: sr-rME, sr_RS: sr-rRS, sv_FI: sv-rFI, sv_SE: sv-rSE, sw_KE: sw-rKE, syr_SY: syr-rSY, ta_IN: ta-rIN, te_IN: te-rIN, tg_TJ: tg-rTJ, th_TH: th-rTH, tk_TM: tk-rTM, tn_ZA: tn-rZA, tr_TR: tr-rTR, tt_RU: tt-rRU, tzm_DZ: tzm-rDZ, ug_CN: ug-rCN, uk_UA: uk-rUA, ur_PK: ur-rPK, uz_UZ: uz-rUZ, vi_VN: vi-rVN, wo_SN: wo-rSN, xh_ZA: xh-rZA, yo_NG: yo-rNG, zh_CN: zh-rCN, zh_HK: zh-rHK, zh_MO: zh-rMO, zh_SG: zh-rSG, zh_TW: zh-rTW, zu_ZA: zu-rZA, no_NO: no-rNO, he_IL: iw-rIL, he: iw, id:in [syncthing-android.description_fulltxt] -file_filter = src/main/play//listing/fulldescription -source_file = src/main/play/en-GB/listing/fulldescription +file_filter = app/src/main/play//listing/fulldescription +source_file = app/src/main/play/en-GB/listing/fulldescription source_lang = en_GB type = TXT lang_map = ja: ja-JP, sv: sv-SE, da: da-DK, de: de-DE, el: el-EL, es: es-ES, fi: fi-FI, it: it-IT, pl: pl-PL, nl: nl-NL, ru: ru-RU, no: no-NO, pt: pt-PT, ko: ko-KR, cs: cs-CZ, hu: hu-HU, fr: fr-FR, tr: tr-TR [syncthing-android.description_shorttxt] -file_filter = src/main/play//listing/shortdescription -source_file = src/main/play/en-GB/listing/shortdescription +file_filter = app/src/main/play//listing/shortdescription +source_file = app/src/main/play/en-GB/listing/shortdescription source_lang = en_GB type = TXT lang_map = ja: ja-JP, sv: sv-SE, da: da-DK, de: de-DE, el: el-EL, es: es-ES, fi: fi-FI, it: it-IT, pl: pl-PL, nl: nl-NL, ru: ru-RU, no: no-NO, pt: pt-PT, ko: ko-KR, cs: cs-CZ, hu: hu-HU, fr: fr-FR, tr: tr-TR [syncthing-android.titletxt] -file_filter = src/main/play//listing/title -source_file = src/main/play/en-GB/listing/title +file_filter = app/src/main/play//listing/title +source_file = app/src/main/play/en-GB/listing/title source_lang = en_GB type = TXT lang_map = ja: ja-JP, sv: sv-SE, da: da-DK, de: de-DE, el: el-EL, es: es-ES, fi: fi-FI, it: it-IT, pl: pl-PL, nl: nl-NL, ru: ru-RU, no: no-NO, pt: pt-PT, ko: ko-KR, cs: cs-CZ, hu: hu-HU, fr: fr-FR, tr: tr-TR diff --git a/README.md b/README.md index b922e524..6ac99e2d 100644 --- a/README.md +++ b/README.md @@ -16,37 +16,30 @@ A wrapper of [Syncthing](https://github.com/syncthing/syncthing) for Android. The project is translated on [Transifex](https://www.transifex.com/projects/p/syncthing-android/). -Translations can be updated using the [Transifex client](http://docs.transifex.com/developer/client/), using commands `tx push -s` and `tx pull -a`. - # Building -### Requirements -- Android SDK Platform (for the `compileSdkVersion` specified in [build.gradle](build.gradle)) -- Android NDK Platform -- Android Support Repository +### Dependencies +- Android SDK (you can skip this if you are using Android Studio) +- Android NDK (`$ANDROID_NDK_HOME` should point at the root directory of your NDK) +- Go (see [here](https://docs.syncthing.net/dev/building.html#prerequisites) for the required version) ### Build instructions -This repository is using external dependencies so you have to initialize all submodules with --recursive option first time: `git clone https://github.com/syncthing/syncthing-android.git --recursive`. - -Set the `ANDROID_NDK` environment variable to the Android NDK folder (e.g. `export ANDROID_NDK=/opt/android_ndk`). -Build Go and Syncthing using `./make-all.bash`. -Use `./gradlew assembleDebug` in the project directory to compile the APK. - -To prepare a new release, execute `./prepare-release.bash`, and follow the instructions. - -To check for updated gradle dependencies, run `gradle dependencyUpdates`. Additionally, the git submodule in `ext/syncthing/src/github.com/syncthing/syncthing` may need to be updated. +Make sure you clone the project with +`git clone https://github.com/syncthing/syncthing-android.git --recursive`. Alternatively, run +`git submodule init && git submodule update` in the project folder. +Build Syncthing using `./syncthing/build-syncthing.bash`. Then use `./gradlew assembleDebug` or +Android Studio to build the apk. ### Building on Windows To build the Syncthing app on Windows we need to have cygwin installed. -From a cygwin shell in the project directory, build Go using `./make-go.bash [arch]` -After Go is built, compile syncthing using `./make-syncthing.bash [arch]` +From a cygwin shell in the project directory, build Syncthing using `./syncthing/build-syncthing.bash` -Lastly, use `./gradlew assembleDebug` in the project directory to compile the APK, -or use Android Studio to build/deploy the APK. +Lastly, use `./gradlew assembleDebug` in the project directory to compile the APK, or use Android +Studio to build/deploy the APK. # License diff --git a/app/.gitignore b/app/.gitignore new file mode 100644 index 00000000..53223ea2 --- /dev/null +++ b/app/.gitignore @@ -0,0 +1,6 @@ +# generated files +/build +/src/main/jniLibs + +# gradle-play-publisher +keys.json diff --git a/app/build.gradle b/app/build.gradle new file mode 100644 index 00000000..e740d906 --- /dev/null +++ b/app/build.gradle @@ -0,0 +1,78 @@ +apply plugin: 'com.android.application' +apply plugin: 'com.github.ben-manes.versions' +apply plugin: 'com.github.triplet.play' +apply plugin: 'me.tatarka.retrolambda' + +dependencies { + compile 'eu.chainfire:libsuperuser:1.0.0.201704021214' + compile 'com.android.support:design:26.1.0' + compile 'com.google.zxing:android-integration:3.3.0' + compile 'com.google.code.gson:gson:2.8.2' + compile 'org.mindrot:jbcrypt:0.4' + compile 'com.google.guava:guava:20.0' + compile 'com.annimon:stream:1.1.9' + compile 'com.android.volley:volley:1.0.0' + compile 'com.android.support.constraint:constraint-layout:1.0.2' + compile "com.google.dagger:dagger:2.11" + annotationProcessor "com.google.dagger:dagger-compiler:2.11" + androidTestCompile 'com.android.support.test:rules:1.0.1' + androidTestCompile 'com.android.support:support-annotations:26.1.0' +} + +android { + compileSdkVersion 26 + buildToolsVersion "26.0.2" + buildTypes.debug.applicationIdSuffix ".debug" + dataBinding.enabled = true + + playAccountConfigs { + defaultAccountConfig { + jsonFile = file('keys.json') + } + } + defaultConfig { + applicationId "com.nutomic.syncthingandroid" + minSdkVersion 14 + targetSdkVersion 26 + versionCode 4127 + versionName "0.9.16" + testApplicationId 'com.nutomic.syncthingandroid.test' + testInstrumentationRunner 'android.support.test.runner.AndroidJUnitRunner' + playAccountConfig = playAccountConfigs.defaultAccountConfig + } + + signingConfigs { + release { + storeFile file(RELEASE_STORE_FILE) + storePassword System.getenv("SIGNING_PASSWORD") ?: "" + keyAlias RELEASE_KEY_ALIAS + keyPassword System.getenv("SIGNING_PASSWORD") ?: "" + } + } + buildTypes { + release { + signingConfig signingConfigs.release + } + } + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} + +play { + jsonFile = file('keys.json') + uploadImages = false + track = 'production' +} + +/** + * Some languages are not supported by Google Play, so we ignore them. + */ +task deleteUnsupportedPlayTranslations(type: Delete) { + delete 'src/main/play/nn' + delete 'src/main/play/el-EL' + delete 'src/main/play/nb' + delete 'src/main/play/en/' +} diff --git a/lint.xml b/app/lint.xml similarity index 100% rename from lint.xml rename to app/lint.xml diff --git a/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml similarity index 100% rename from src/main/AndroidManifest.xml rename to app/src/main/AndroidManifest.xml diff --git a/src/main/java/com/android/PRNGFixes.java b/app/src/main/java/com/android/PRNGFixes.java similarity index 100% rename from src/main/java/com/android/PRNGFixes.java rename to app/src/main/java/com/android/PRNGFixes.java diff --git a/src/main/java/com/nutomic/syncthingandroid/DaggerComponent.java b/app/src/main/java/com/nutomic/syncthingandroid/DaggerComponent.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/DaggerComponent.java rename to app/src/main/java/com/nutomic/syncthingandroid/DaggerComponent.java diff --git a/src/main/java/com/nutomic/syncthingandroid/SyncthingApp.java b/app/src/main/java/com/nutomic/syncthingandroid/SyncthingApp.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/SyncthingApp.java rename to app/src/main/java/com/nutomic/syncthingandroid/SyncthingApp.java diff --git a/src/main/java/com/nutomic/syncthingandroid/SyncthingModule.java b/app/src/main/java/com/nutomic/syncthingandroid/SyncthingModule.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/SyncthingModule.java rename to app/src/main/java/com/nutomic/syncthingandroid/SyncthingModule.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/DeviceActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/DeviceActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/DeviceActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/DeviceActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/FirstStartActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/FirstStartActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/FirstStartActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/FirstStartActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/FolderActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/FolderPickerActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/FolderPickerActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/FolderPickerActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/FolderPickerActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/LogActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/LogActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/LogActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/LogActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/MainActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/MainActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/MainActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/MainActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/RestartActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/RestartActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/RestartActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/RestartActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/SettingsActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/SettingsActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/SettingsActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/SettingsActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/ShareActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/ShareActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/ShareActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/ShareActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/StateDialogActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/StateDialogActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/StateDialogActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/StateDialogActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/SyncthingActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/SyncthingActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/SyncthingActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/SyncthingActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/VersioningDialogActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/VersioningDialogActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/VersioningDialogActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/VersioningDialogActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/activities/WebGuiActivity.java b/app/src/main/java/com/nutomic/syncthingandroid/activities/WebGuiActivity.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/activities/WebGuiActivity.java rename to app/src/main/java/com/nutomic/syncthingandroid/activities/WebGuiActivity.java diff --git a/src/main/java/com/nutomic/syncthingandroid/fragments/DeviceListFragment.java b/app/src/main/java/com/nutomic/syncthingandroid/fragments/DeviceListFragment.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/fragments/DeviceListFragment.java rename to app/src/main/java/com/nutomic/syncthingandroid/fragments/DeviceListFragment.java diff --git a/src/main/java/com/nutomic/syncthingandroid/fragments/DrawerFragment.java b/app/src/main/java/com/nutomic/syncthingandroid/fragments/DrawerFragment.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/fragments/DrawerFragment.java rename to app/src/main/java/com/nutomic/syncthingandroid/fragments/DrawerFragment.java diff --git a/src/main/java/com/nutomic/syncthingandroid/fragments/FolderListFragment.java b/app/src/main/java/com/nutomic/syncthingandroid/fragments/FolderListFragment.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/fragments/FolderListFragment.java rename to app/src/main/java/com/nutomic/syncthingandroid/fragments/FolderListFragment.java diff --git a/src/main/java/com/nutomic/syncthingandroid/fragments/NumberPickerFragment.java b/app/src/main/java/com/nutomic/syncthingandroid/fragments/NumberPickerFragment.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/fragments/NumberPickerFragment.java rename to app/src/main/java/com/nutomic/syncthingandroid/fragments/NumberPickerFragment.java diff --git a/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/ExternalVersioningFragment.java b/app/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/ExternalVersioningFragment.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/fragments/dialog/ExternalVersioningFragment.java rename to app/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/ExternalVersioningFragment.java diff --git a/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/NoVersioningFragment.java b/app/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/NoVersioningFragment.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/fragments/dialog/NoVersioningFragment.java rename to app/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/NoVersioningFragment.java diff --git a/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/SimpleVersioningFragment.java b/app/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/SimpleVersioningFragment.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/fragments/dialog/SimpleVersioningFragment.java rename to app/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/SimpleVersioningFragment.java diff --git a/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/StaggeredVersioningFragment.java b/app/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/StaggeredVersioningFragment.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/fragments/dialog/StaggeredVersioningFragment.java rename to app/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/StaggeredVersioningFragment.java diff --git a/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/TrashCanVersioningFragment.java b/app/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/TrashCanVersioningFragment.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/fragments/dialog/TrashCanVersioningFragment.java rename to app/src/main/java/com/nutomic/syncthingandroid/fragments/dialog/TrashCanVersioningFragment.java diff --git a/src/main/java/com/nutomic/syncthingandroid/http/ApiRequest.java b/app/src/main/java/com/nutomic/syncthingandroid/http/ApiRequest.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/http/ApiRequest.java rename to app/src/main/java/com/nutomic/syncthingandroid/http/ApiRequest.java diff --git a/src/main/java/com/nutomic/syncthingandroid/http/GetRequest.java b/app/src/main/java/com/nutomic/syncthingandroid/http/GetRequest.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/http/GetRequest.java rename to app/src/main/java/com/nutomic/syncthingandroid/http/GetRequest.java diff --git a/src/main/java/com/nutomic/syncthingandroid/http/ImageGetRequest.java b/app/src/main/java/com/nutomic/syncthingandroid/http/ImageGetRequest.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/http/ImageGetRequest.java rename to app/src/main/java/com/nutomic/syncthingandroid/http/ImageGetRequest.java diff --git a/src/main/java/com/nutomic/syncthingandroid/http/PollWebGuiAvailableTask.java b/app/src/main/java/com/nutomic/syncthingandroid/http/PollWebGuiAvailableTask.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/http/PollWebGuiAvailableTask.java rename to app/src/main/java/com/nutomic/syncthingandroid/http/PollWebGuiAvailableTask.java diff --git a/src/main/java/com/nutomic/syncthingandroid/http/PostConfigRequest.java b/app/src/main/java/com/nutomic/syncthingandroid/http/PostConfigRequest.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/http/PostConfigRequest.java rename to app/src/main/java/com/nutomic/syncthingandroid/http/PostConfigRequest.java diff --git a/src/main/java/com/nutomic/syncthingandroid/http/PostScanRequest.java b/app/src/main/java/com/nutomic/syncthingandroid/http/PostScanRequest.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/http/PostScanRequest.java rename to app/src/main/java/com/nutomic/syncthingandroid/http/PostScanRequest.java diff --git a/src/main/java/com/nutomic/syncthingandroid/http/SyncthingTrustManager.java b/app/src/main/java/com/nutomic/syncthingandroid/http/SyncthingTrustManager.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/http/SyncthingTrustManager.java rename to app/src/main/java/com/nutomic/syncthingandroid/http/SyncthingTrustManager.java diff --git a/src/main/java/com/nutomic/syncthingandroid/model/Config.java b/app/src/main/java/com/nutomic/syncthingandroid/model/Config.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/model/Config.java rename to app/src/main/java/com/nutomic/syncthingandroid/model/Config.java diff --git a/src/main/java/com/nutomic/syncthingandroid/model/Connections.java b/app/src/main/java/com/nutomic/syncthingandroid/model/Connections.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/model/Connections.java rename to app/src/main/java/com/nutomic/syncthingandroid/model/Connections.java diff --git a/src/main/java/com/nutomic/syncthingandroid/model/Device.java b/app/src/main/java/com/nutomic/syncthingandroid/model/Device.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/model/Device.java rename to app/src/main/java/com/nutomic/syncthingandroid/model/Device.java diff --git a/src/main/java/com/nutomic/syncthingandroid/model/Event.java b/app/src/main/java/com/nutomic/syncthingandroid/model/Event.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/model/Event.java rename to app/src/main/java/com/nutomic/syncthingandroid/model/Event.java diff --git a/src/main/java/com/nutomic/syncthingandroid/model/Folder.java b/app/src/main/java/com/nutomic/syncthingandroid/model/Folder.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/model/Folder.java rename to app/src/main/java/com/nutomic/syncthingandroid/model/Folder.java diff --git a/src/main/java/com/nutomic/syncthingandroid/model/Model.java b/app/src/main/java/com/nutomic/syncthingandroid/model/Model.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/model/Model.java rename to app/src/main/java/com/nutomic/syncthingandroid/model/Model.java diff --git a/src/main/java/com/nutomic/syncthingandroid/model/Options.java b/app/src/main/java/com/nutomic/syncthingandroid/model/Options.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/model/Options.java rename to app/src/main/java/com/nutomic/syncthingandroid/model/Options.java diff --git a/src/main/java/com/nutomic/syncthingandroid/model/SystemInfo.java b/app/src/main/java/com/nutomic/syncthingandroid/model/SystemInfo.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/model/SystemInfo.java rename to app/src/main/java/com/nutomic/syncthingandroid/model/SystemInfo.java diff --git a/src/main/java/com/nutomic/syncthingandroid/model/SystemVersion.java b/app/src/main/java/com/nutomic/syncthingandroid/model/SystemVersion.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/model/SystemVersion.java rename to app/src/main/java/com/nutomic/syncthingandroid/model/SystemVersion.java diff --git a/src/main/java/com/nutomic/syncthingandroid/receiver/AppConfigReceiver.java b/app/src/main/java/com/nutomic/syncthingandroid/receiver/AppConfigReceiver.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/receiver/AppConfigReceiver.java rename to app/src/main/java/com/nutomic/syncthingandroid/receiver/AppConfigReceiver.java diff --git a/src/main/java/com/nutomic/syncthingandroid/receiver/BatteryReceiver.java b/app/src/main/java/com/nutomic/syncthingandroid/receiver/BatteryReceiver.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/receiver/BatteryReceiver.java rename to app/src/main/java/com/nutomic/syncthingandroid/receiver/BatteryReceiver.java diff --git a/src/main/java/com/nutomic/syncthingandroid/receiver/BootReceiver.java b/app/src/main/java/com/nutomic/syncthingandroid/receiver/BootReceiver.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/receiver/BootReceiver.java rename to app/src/main/java/com/nutomic/syncthingandroid/receiver/BootReceiver.java diff --git a/src/main/java/com/nutomic/syncthingandroid/receiver/NetworkReceiver.java b/app/src/main/java/com/nutomic/syncthingandroid/receiver/NetworkReceiver.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/receiver/NetworkReceiver.java rename to app/src/main/java/com/nutomic/syncthingandroid/receiver/NetworkReceiver.java diff --git a/src/main/java/com/nutomic/syncthingandroid/receiver/PowerSaveModeChangedReceiver.java b/app/src/main/java/com/nutomic/syncthingandroid/receiver/PowerSaveModeChangedReceiver.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/receiver/PowerSaveModeChangedReceiver.java rename to app/src/main/java/com/nutomic/syncthingandroid/receiver/PowerSaveModeChangedReceiver.java diff --git a/src/main/java/com/nutomic/syncthingandroid/service/Constants.java b/app/src/main/java/com/nutomic/syncthingandroid/service/Constants.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/service/Constants.java rename to app/src/main/java/com/nutomic/syncthingandroid/service/Constants.java diff --git a/src/main/java/com/nutomic/syncthingandroid/service/DeviceStateHolder.java b/app/src/main/java/com/nutomic/syncthingandroid/service/DeviceStateHolder.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/service/DeviceStateHolder.java rename to app/src/main/java/com/nutomic/syncthingandroid/service/DeviceStateHolder.java diff --git a/src/main/java/com/nutomic/syncthingandroid/service/EventProcessor.java b/app/src/main/java/com/nutomic/syncthingandroid/service/EventProcessor.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/service/EventProcessor.java rename to app/src/main/java/com/nutomic/syncthingandroid/service/EventProcessor.java diff --git a/src/main/java/com/nutomic/syncthingandroid/service/NotificationHandler.java b/app/src/main/java/com/nutomic/syncthingandroid/service/NotificationHandler.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/service/NotificationHandler.java rename to app/src/main/java/com/nutomic/syncthingandroid/service/NotificationHandler.java diff --git a/src/main/java/com/nutomic/syncthingandroid/service/RestApi.java b/app/src/main/java/com/nutomic/syncthingandroid/service/RestApi.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/service/RestApi.java rename to app/src/main/java/com/nutomic/syncthingandroid/service/RestApi.java diff --git a/src/main/java/com/nutomic/syncthingandroid/service/SyncthingRunnable.java b/app/src/main/java/com/nutomic/syncthingandroid/service/SyncthingRunnable.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/service/SyncthingRunnable.java rename to app/src/main/java/com/nutomic/syncthingandroid/service/SyncthingRunnable.java diff --git a/src/main/java/com/nutomic/syncthingandroid/service/SyncthingService.java b/app/src/main/java/com/nutomic/syncthingandroid/service/SyncthingService.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/service/SyncthingService.java rename to app/src/main/java/com/nutomic/syncthingandroid/service/SyncthingService.java diff --git a/src/main/java/com/nutomic/syncthingandroid/service/SyncthingServiceBinder.java b/app/src/main/java/com/nutomic/syncthingandroid/service/SyncthingServiceBinder.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/service/SyncthingServiceBinder.java rename to app/src/main/java/com/nutomic/syncthingandroid/service/SyncthingServiceBinder.java diff --git a/src/main/java/com/nutomic/syncthingandroid/util/Compression.java b/app/src/main/java/com/nutomic/syncthingandroid/util/Compression.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/util/Compression.java rename to app/src/main/java/com/nutomic/syncthingandroid/util/Compression.java diff --git a/src/main/java/com/nutomic/syncthingandroid/util/ConfigXml.java b/app/src/main/java/com/nutomic/syncthingandroid/util/ConfigXml.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/util/ConfigXml.java rename to app/src/main/java/com/nutomic/syncthingandroid/util/ConfigXml.java diff --git a/src/main/java/com/nutomic/syncthingandroid/util/FolderObserver.java b/app/src/main/java/com/nutomic/syncthingandroid/util/FolderObserver.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/util/FolderObserver.java rename to app/src/main/java/com/nutomic/syncthingandroid/util/FolderObserver.java diff --git a/src/main/java/com/nutomic/syncthingandroid/util/Languages.java b/app/src/main/java/com/nutomic/syncthingandroid/util/Languages.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/util/Languages.java rename to app/src/main/java/com/nutomic/syncthingandroid/util/Languages.java diff --git a/src/main/java/com/nutomic/syncthingandroid/util/TextWatcherAdapter.java b/app/src/main/java/com/nutomic/syncthingandroid/util/TextWatcherAdapter.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/util/TextWatcherAdapter.java rename to app/src/main/java/com/nutomic/syncthingandroid/util/TextWatcherAdapter.java diff --git a/src/main/java/com/nutomic/syncthingandroid/util/Util.java b/app/src/main/java/com/nutomic/syncthingandroid/util/Util.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/util/Util.java rename to app/src/main/java/com/nutomic/syncthingandroid/util/Util.java diff --git a/src/main/java/com/nutomic/syncthingandroid/views/DevicesAdapter.java b/app/src/main/java/com/nutomic/syncthingandroid/views/DevicesAdapter.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/views/DevicesAdapter.java rename to app/src/main/java/com/nutomic/syncthingandroid/views/DevicesAdapter.java diff --git a/src/main/java/com/nutomic/syncthingandroid/views/EnhancedEditText.java b/app/src/main/java/com/nutomic/syncthingandroid/views/EnhancedEditText.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/views/EnhancedEditText.java rename to app/src/main/java/com/nutomic/syncthingandroid/views/EnhancedEditText.java diff --git a/src/main/java/com/nutomic/syncthingandroid/views/FoldersAdapter.java b/app/src/main/java/com/nutomic/syncthingandroid/views/FoldersAdapter.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/views/FoldersAdapter.java rename to app/src/main/java/com/nutomic/syncthingandroid/views/FoldersAdapter.java diff --git a/src/main/java/com/nutomic/syncthingandroid/views/WifiSsidPreference.java b/app/src/main/java/com/nutomic/syncthingandroid/views/WifiSsidPreference.java similarity index 100% rename from src/main/java/com/nutomic/syncthingandroid/views/WifiSsidPreference.java rename to app/src/main/java/com/nutomic/syncthingandroid/views/WifiSsidPreference.java diff --git a/src/main/play/ar/listing/fulldescription b/app/src/main/play/ar/listing/fulldescription similarity index 100% rename from src/main/play/ar/listing/fulldescription rename to app/src/main/play/ar/listing/fulldescription diff --git a/src/main/play/ar/listing/shortdescription b/app/src/main/play/ar/listing/shortdescription similarity index 100% rename from src/main/play/ar/listing/shortdescription rename to app/src/main/play/ar/listing/shortdescription diff --git a/src/main/play/ar/listing/title b/app/src/main/play/ar/listing/title similarity index 100% rename from src/main/play/ar/listing/title rename to app/src/main/play/ar/listing/title diff --git a/src/main/play/ar/listing/video b/app/src/main/play/ar/listing/video similarity index 100% rename from src/main/play/ar/listing/video rename to app/src/main/play/ar/listing/video diff --git a/src/main/play/bg/listing/fulldescription b/app/src/main/play/bg/listing/fulldescription similarity index 100% rename from src/main/play/bg/listing/fulldescription rename to app/src/main/play/bg/listing/fulldescription diff --git a/src/main/play/bg/listing/shortdescription b/app/src/main/play/bg/listing/shortdescription similarity index 100% rename from src/main/play/bg/listing/shortdescription rename to app/src/main/play/bg/listing/shortdescription diff --git a/src/main/play/bg/listing/title b/app/src/main/play/bg/listing/title similarity index 100% rename from src/main/play/bg/listing/title rename to app/src/main/play/bg/listing/title diff --git a/src/main/play/bg/listing/video b/app/src/main/play/bg/listing/video similarity index 100% rename from src/main/play/bg/listing/video rename to app/src/main/play/bg/listing/video diff --git a/src/main/play/ca_ES/listing/fulldescription b/app/src/main/play/ca_ES/listing/fulldescription similarity index 100% rename from src/main/play/ca_ES/listing/fulldescription rename to app/src/main/play/ca_ES/listing/fulldescription diff --git a/src/main/play/ca_ES/listing/shortdescription b/app/src/main/play/ca_ES/listing/shortdescription similarity index 100% rename from src/main/play/ca_ES/listing/shortdescription rename to app/src/main/play/ca_ES/listing/shortdescription diff --git a/src/main/play/ca_ES/listing/title b/app/src/main/play/ca_ES/listing/title similarity index 100% rename from src/main/play/ca_ES/listing/title rename to app/src/main/play/ca_ES/listing/title diff --git a/src/main/play/contactEmail b/app/src/main/play/contactEmail similarity index 100% rename from src/main/play/contactEmail rename to app/src/main/play/contactEmail diff --git a/src/main/play/contactPhone b/app/src/main/play/contactPhone similarity index 100% rename from src/main/play/contactPhone rename to app/src/main/play/contactPhone diff --git a/src/main/play/contactWebsite b/app/src/main/play/contactWebsite similarity index 100% rename from src/main/play/contactWebsite rename to app/src/main/play/contactWebsite diff --git a/src/main/play/cs-CZ/listing/fulldescription b/app/src/main/play/cs-CZ/listing/fulldescription similarity index 100% rename from src/main/play/cs-CZ/listing/fulldescription rename to app/src/main/play/cs-CZ/listing/fulldescription diff --git a/src/main/play/cs-CZ/listing/shortdescription b/app/src/main/play/cs-CZ/listing/shortdescription similarity index 100% rename from src/main/play/cs-CZ/listing/shortdescription rename to app/src/main/play/cs-CZ/listing/shortdescription diff --git a/src/main/play/cs-CZ/listing/title b/app/src/main/play/cs-CZ/listing/title similarity index 100% rename from src/main/play/cs-CZ/listing/title rename to app/src/main/play/cs-CZ/listing/title diff --git a/src/main/play/cs-CZ/listing/video b/app/src/main/play/cs-CZ/listing/video similarity index 100% rename from src/main/play/cs-CZ/listing/video rename to app/src/main/play/cs-CZ/listing/video diff --git a/src/main/play/da-DK/listing/fulldescription b/app/src/main/play/da-DK/listing/fulldescription similarity index 100% rename from src/main/play/da-DK/listing/fulldescription rename to app/src/main/play/da-DK/listing/fulldescription diff --git a/src/main/play/da-DK/listing/shortdescription b/app/src/main/play/da-DK/listing/shortdescription similarity index 100% rename from src/main/play/da-DK/listing/shortdescription rename to app/src/main/play/da-DK/listing/shortdescription diff --git a/src/main/play/da-DK/listing/title b/app/src/main/play/da-DK/listing/title similarity index 100% rename from src/main/play/da-DK/listing/title rename to app/src/main/play/da-DK/listing/title diff --git a/src/main/play/da-DK/listing/video b/app/src/main/play/da-DK/listing/video similarity index 100% rename from src/main/play/da-DK/listing/video rename to app/src/main/play/da-DK/listing/video diff --git a/src/main/play/de-DE/listing/fulldescription b/app/src/main/play/de-DE/listing/fulldescription similarity index 100% rename from src/main/play/de-DE/listing/fulldescription rename to app/src/main/play/de-DE/listing/fulldescription diff --git a/src/main/play/de-DE/listing/shortdescription b/app/src/main/play/de-DE/listing/shortdescription similarity index 100% rename from src/main/play/de-DE/listing/shortdescription rename to app/src/main/play/de-DE/listing/shortdescription diff --git a/src/main/play/de-DE/listing/title b/app/src/main/play/de-DE/listing/title similarity index 100% rename from src/main/play/de-DE/listing/title rename to app/src/main/play/de-DE/listing/title diff --git a/src/main/play/de-DE/listing/video b/app/src/main/play/de-DE/listing/video similarity index 100% rename from src/main/play/de-DE/listing/video rename to app/src/main/play/de-DE/listing/video diff --git a/src/main/play/de_AT/listing/fulldescription b/app/src/main/play/de_AT/listing/fulldescription similarity index 100% rename from src/main/play/de_AT/listing/fulldescription rename to app/src/main/play/de_AT/listing/fulldescription diff --git a/src/main/play/de_AT/listing/shortdescription b/app/src/main/play/de_AT/listing/shortdescription similarity index 100% rename from src/main/play/de_AT/listing/shortdescription rename to app/src/main/play/de_AT/listing/shortdescription diff --git a/src/main/play/de_DE/listing/fulldescription b/app/src/main/play/de_DE/listing/fulldescription similarity index 100% rename from src/main/play/de_DE/listing/fulldescription rename to app/src/main/play/de_DE/listing/fulldescription diff --git a/src/main/play/de_DE/listing/shortdescription b/app/src/main/play/de_DE/listing/shortdescription similarity index 100% rename from src/main/play/de_DE/listing/shortdescription rename to app/src/main/play/de_DE/listing/shortdescription diff --git a/src/main/play/defaultLanguage b/app/src/main/play/defaultLanguage similarity index 100% rename from src/main/play/defaultLanguage rename to app/src/main/play/defaultLanguage diff --git a/src/main/play/en-GB/listing/featureGraphic/feature_graphic.jpg b/app/src/main/play/en-GB/listing/featureGraphic/feature_graphic.jpg similarity index 100% rename from src/main/play/en-GB/listing/featureGraphic/feature_graphic.jpg rename to app/src/main/play/en-GB/listing/featureGraphic/feature_graphic.jpg diff --git a/src/main/play/en-GB/listing/fulldescription b/app/src/main/play/en-GB/listing/fulldescription similarity index 100% rename from src/main/play/en-GB/listing/fulldescription rename to app/src/main/play/en-GB/listing/fulldescription diff --git a/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_1.png b/app/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_1.png similarity index 100% rename from src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_1.png rename to app/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_1.png diff --git a/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_2.png b/app/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_2.png similarity index 100% rename from src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_2.png rename to app/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_2.png diff --git a/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_3.png b/app/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_3.png similarity index 100% rename from src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_3.png rename to app/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_3.png diff --git a/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_4.png b/app/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_4.png similarity index 100% rename from src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_4.png rename to app/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_4.png diff --git a/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_5.png b/app/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_5.png similarity index 100% rename from src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_5.png rename to app/src/main/play/en-GB/listing/phoneScreenshots/screenshot_phone_5.png diff --git a/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_1.png b/app/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_1.png similarity index 100% rename from src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_1.png rename to app/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_1.png diff --git a/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_2.png b/app/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_2.png similarity index 100% rename from src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_2.png rename to app/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_2.png diff --git a/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_3.png b/app/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_3.png similarity index 100% rename from src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_3.png rename to app/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_3.png diff --git a/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_4.png b/app/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_4.png similarity index 100% rename from src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_4.png rename to app/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_4.png diff --git a/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_5.png b/app/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_5.png similarity index 100% rename from src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_5.png rename to app/src/main/play/en-GB/listing/sevenInchScreenshots/screenshot_tablet_7_inch_5.png diff --git a/src/main/play/en-GB/listing/shortdescription b/app/src/main/play/en-GB/listing/shortdescription similarity index 100% rename from src/main/play/en-GB/listing/shortdescription rename to app/src/main/play/en-GB/listing/shortdescription diff --git a/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_1.png b/app/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_1.png similarity index 100% rename from src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_1.png rename to app/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_1.png diff --git a/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_2.png b/app/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_2.png similarity index 100% rename from src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_2.png rename to app/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_2.png diff --git a/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_3.png b/app/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_3.png similarity index 100% rename from src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_3.png rename to app/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_3.png diff --git a/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_4.png b/app/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_4.png similarity index 100% rename from src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_4.png rename to app/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_4.png diff --git a/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_5.png b/app/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_5.png similarity index 100% rename from src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_5.png rename to app/src/main/play/en-GB/listing/tenInchScreenshots/screenshot_tablet_7_inch_5.png diff --git a/src/main/play/en-GB/listing/title b/app/src/main/play/en-GB/listing/title similarity index 100% rename from src/main/play/en-GB/listing/title rename to app/src/main/play/en-GB/listing/title diff --git a/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_1.png b/app/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_1.png similarity index 100% rename from src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_1.png rename to app/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_1.png diff --git a/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_2.png b/app/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_2.png similarity index 100% rename from src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_2.png rename to app/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_2.png diff --git a/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_3.png b/app/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_3.png similarity index 100% rename from src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_3.png rename to app/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_3.png diff --git a/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_4.png b/app/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_4.png similarity index 100% rename from src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_4.png rename to app/src/main/play/en-GB/listing/tvScreenshots/screenshot_tv_4.png diff --git a/src/main/play/en-GB/listing/video b/app/src/main/play/en-GB/listing/video similarity index 100% rename from src/main/play/en-GB/listing/video rename to app/src/main/play/en-GB/listing/video diff --git a/src/main/play/en-GB/whatsnew b/app/src/main/play/en-GB/whatsnew similarity index 100% rename from src/main/play/en-GB/whatsnew rename to app/src/main/play/en-GB/whatsnew diff --git a/src/main/play/es-ES/listing/fulldescription b/app/src/main/play/es-ES/listing/fulldescription similarity index 100% rename from src/main/play/es-ES/listing/fulldescription rename to app/src/main/play/es-ES/listing/fulldescription diff --git a/src/main/play/es-ES/listing/shortdescription b/app/src/main/play/es-ES/listing/shortdescription similarity index 100% rename from src/main/play/es-ES/listing/shortdescription rename to app/src/main/play/es-ES/listing/shortdescription diff --git a/src/main/play/es-ES/listing/title b/app/src/main/play/es-ES/listing/title similarity index 100% rename from src/main/play/es-ES/listing/title rename to app/src/main/play/es-ES/listing/title diff --git a/src/main/play/es_EC/listing/fulldescription b/app/src/main/play/es_EC/listing/fulldescription similarity index 100% rename from src/main/play/es_EC/listing/fulldescription rename to app/src/main/play/es_EC/listing/fulldescription diff --git a/src/main/play/es_EC/listing/shortdescription b/app/src/main/play/es_EC/listing/shortdescription similarity index 100% rename from src/main/play/es_EC/listing/shortdescription rename to app/src/main/play/es_EC/listing/shortdescription diff --git a/src/main/play/es_MX/listing/fulldescription b/app/src/main/play/es_MX/listing/fulldescription similarity index 100% rename from src/main/play/es_MX/listing/fulldescription rename to app/src/main/play/es_MX/listing/fulldescription diff --git a/src/main/play/es_MX/listing/shortdescription b/app/src/main/play/es_MX/listing/shortdescription similarity index 100% rename from src/main/play/es_MX/listing/shortdescription rename to app/src/main/play/es_MX/listing/shortdescription diff --git a/src/main/play/es_MX/listing/title b/app/src/main/play/es_MX/listing/title similarity index 100% rename from src/main/play/es_MX/listing/title rename to app/src/main/play/es_MX/listing/title diff --git a/src/main/play/fi-FI/listing/fulldescription b/app/src/main/play/fi-FI/listing/fulldescription similarity index 100% rename from src/main/play/fi-FI/listing/fulldescription rename to app/src/main/play/fi-FI/listing/fulldescription diff --git a/src/main/play/fi-FI/listing/shortdescription b/app/src/main/play/fi-FI/listing/shortdescription similarity index 100% rename from src/main/play/fi-FI/listing/shortdescription rename to app/src/main/play/fi-FI/listing/shortdescription diff --git a/src/main/play/fi-FI/listing/title b/app/src/main/play/fi-FI/listing/title similarity index 100% rename from src/main/play/fi-FI/listing/title rename to app/src/main/play/fi-FI/listing/title diff --git a/src/main/play/fi-FI/listing/video b/app/src/main/play/fi-FI/listing/video similarity index 100% rename from src/main/play/fi-FI/listing/video rename to app/src/main/play/fi-FI/listing/video diff --git a/src/main/play/fr-FR/listing/fulldescription b/app/src/main/play/fr-FR/listing/fulldescription similarity index 100% rename from src/main/play/fr-FR/listing/fulldescription rename to app/src/main/play/fr-FR/listing/fulldescription diff --git a/src/main/play/fr-FR/listing/shortdescription b/app/src/main/play/fr-FR/listing/shortdescription similarity index 100% rename from src/main/play/fr-FR/listing/shortdescription rename to app/src/main/play/fr-FR/listing/shortdescription diff --git a/src/main/play/fr-FR/listing/title b/app/src/main/play/fr-FR/listing/title similarity index 100% rename from src/main/play/fr-FR/listing/title rename to app/src/main/play/fr-FR/listing/title diff --git a/src/main/play/hu-HU/listing/fulldescription b/app/src/main/play/hu-HU/listing/fulldescription similarity index 100% rename from src/main/play/hu-HU/listing/fulldescription rename to app/src/main/play/hu-HU/listing/fulldescription diff --git a/src/main/play/hu-HU/listing/shortdescription b/app/src/main/play/hu-HU/listing/shortdescription similarity index 100% rename from src/main/play/hu-HU/listing/shortdescription rename to app/src/main/play/hu-HU/listing/shortdescription diff --git a/src/main/play/hu-HU/listing/title b/app/src/main/play/hu-HU/listing/title similarity index 100% rename from src/main/play/hu-HU/listing/title rename to app/src/main/play/hu-HU/listing/title diff --git a/src/main/play/hu-HU/listing/video b/app/src/main/play/hu-HU/listing/video similarity index 100% rename from src/main/play/hu-HU/listing/video rename to app/src/main/play/hu-HU/listing/video diff --git a/src/main/play/id/listing/fulldescription b/app/src/main/play/id/listing/fulldescription similarity index 100% rename from src/main/play/id/listing/fulldescription rename to app/src/main/play/id/listing/fulldescription diff --git a/src/main/play/id/listing/shortdescription b/app/src/main/play/id/listing/shortdescription similarity index 100% rename from src/main/play/id/listing/shortdescription rename to app/src/main/play/id/listing/shortdescription diff --git a/src/main/play/id/listing/title b/app/src/main/play/id/listing/title similarity index 100% rename from src/main/play/id/listing/title rename to app/src/main/play/id/listing/title diff --git a/src/main/play/it-IT/listing/fulldescription b/app/src/main/play/it-IT/listing/fulldescription similarity index 100% rename from src/main/play/it-IT/listing/fulldescription rename to app/src/main/play/it-IT/listing/fulldescription diff --git a/src/main/play/it-IT/listing/shortdescription b/app/src/main/play/it-IT/listing/shortdescription similarity index 100% rename from src/main/play/it-IT/listing/shortdescription rename to app/src/main/play/it-IT/listing/shortdescription diff --git a/src/main/play/it-IT/listing/title b/app/src/main/play/it-IT/listing/title similarity index 100% rename from src/main/play/it-IT/listing/title rename to app/src/main/play/it-IT/listing/title diff --git a/src/main/play/ja-JP/listing/fulldescription b/app/src/main/play/ja-JP/listing/fulldescription similarity index 100% rename from src/main/play/ja-JP/listing/fulldescription rename to app/src/main/play/ja-JP/listing/fulldescription diff --git a/src/main/play/ja-JP/listing/shortdescription b/app/src/main/play/ja-JP/listing/shortdescription similarity index 100% rename from src/main/play/ja-JP/listing/shortdescription rename to app/src/main/play/ja-JP/listing/shortdescription diff --git a/src/main/play/ja-JP/listing/title b/app/src/main/play/ja-JP/listing/title similarity index 100% rename from src/main/play/ja-JP/listing/title rename to app/src/main/play/ja-JP/listing/title diff --git a/src/main/play/ja-JP/listing/video b/app/src/main/play/ja-JP/listing/video similarity index 100% rename from src/main/play/ja-JP/listing/video rename to app/src/main/play/ja-JP/listing/video diff --git a/src/main/play/ko-KR/listing/fulldescription b/app/src/main/play/ko-KR/listing/fulldescription similarity index 100% rename from src/main/play/ko-KR/listing/fulldescription rename to app/src/main/play/ko-KR/listing/fulldescription diff --git a/src/main/play/ko-KR/listing/shortdescription b/app/src/main/play/ko-KR/listing/shortdescription similarity index 100% rename from src/main/play/ko-KR/listing/shortdescription rename to app/src/main/play/ko-KR/listing/shortdescription diff --git a/src/main/play/ko-KR/listing/title b/app/src/main/play/ko-KR/listing/title similarity index 100% rename from src/main/play/ko-KR/listing/title rename to app/src/main/play/ko-KR/listing/title diff --git a/src/main/play/ko-KR/listing/video b/app/src/main/play/ko-KR/listing/video similarity index 100% rename from src/main/play/ko-KR/listing/video rename to app/src/main/play/ko-KR/listing/video diff --git a/src/main/play/nl-NL/listing/fulldescription b/app/src/main/play/nl-NL/listing/fulldescription similarity index 100% rename from src/main/play/nl-NL/listing/fulldescription rename to app/src/main/play/nl-NL/listing/fulldescription diff --git a/src/main/play/nl-NL/listing/shortdescription b/app/src/main/play/nl-NL/listing/shortdescription similarity index 100% rename from src/main/play/nl-NL/listing/shortdescription rename to app/src/main/play/nl-NL/listing/shortdescription diff --git a/src/main/play/nl-NL/listing/title b/app/src/main/play/nl-NL/listing/title similarity index 100% rename from src/main/play/nl-NL/listing/title rename to app/src/main/play/nl-NL/listing/title diff --git a/src/main/play/no-NO/listing/fulldescription b/app/src/main/play/no-NO/listing/fulldescription similarity index 100% rename from src/main/play/no-NO/listing/fulldescription rename to app/src/main/play/no-NO/listing/fulldescription diff --git a/src/main/play/no-NO/listing/shortdescription b/app/src/main/play/no-NO/listing/shortdescription similarity index 100% rename from src/main/play/no-NO/listing/shortdescription rename to app/src/main/play/no-NO/listing/shortdescription diff --git a/src/main/play/no-NO/listing/title b/app/src/main/play/no-NO/listing/title similarity index 100% rename from src/main/play/no-NO/listing/title rename to app/src/main/play/no-NO/listing/title diff --git a/src/main/play/no-NO/listing/video b/app/src/main/play/no-NO/listing/video similarity index 100% rename from src/main/play/no-NO/listing/video rename to app/src/main/play/no-NO/listing/video diff --git a/src/main/play/pl-PL/listing/fulldescription b/app/src/main/play/pl-PL/listing/fulldescription similarity index 100% rename from src/main/play/pl-PL/listing/fulldescription rename to app/src/main/play/pl-PL/listing/fulldescription diff --git a/src/main/play/pl-PL/listing/shortdescription b/app/src/main/play/pl-PL/listing/shortdescription similarity index 100% rename from src/main/play/pl-PL/listing/shortdescription rename to app/src/main/play/pl-PL/listing/shortdescription diff --git a/src/main/play/pl-PL/listing/title b/app/src/main/play/pl-PL/listing/title similarity index 100% rename from src/main/play/pl-PL/listing/title rename to app/src/main/play/pl-PL/listing/title diff --git a/src/main/play/pl-PL/listing/video b/app/src/main/play/pl-PL/listing/video similarity index 100% rename from src/main/play/pl-PL/listing/video rename to app/src/main/play/pl-PL/listing/video diff --git a/src/main/play/pt-PT/listing/fulldescription b/app/src/main/play/pt-PT/listing/fulldescription similarity index 100% rename from src/main/play/pt-PT/listing/fulldescription rename to app/src/main/play/pt-PT/listing/fulldescription diff --git a/src/main/play/pt-PT/listing/shortdescription b/app/src/main/play/pt-PT/listing/shortdescription similarity index 100% rename from src/main/play/pt-PT/listing/shortdescription rename to app/src/main/play/pt-PT/listing/shortdescription diff --git a/src/main/play/pt-PT/listing/title b/app/src/main/play/pt-PT/listing/title similarity index 100% rename from src/main/play/pt-PT/listing/title rename to app/src/main/play/pt-PT/listing/title diff --git a/src/main/play/pt-PT/listing/video b/app/src/main/play/pt-PT/listing/video similarity index 100% rename from src/main/play/pt-PT/listing/video rename to app/src/main/play/pt-PT/listing/video diff --git a/src/main/play/pt_BR/listing/fulldescription b/app/src/main/play/pt_BR/listing/fulldescription similarity index 100% rename from src/main/play/pt_BR/listing/fulldescription rename to app/src/main/play/pt_BR/listing/fulldescription diff --git a/src/main/play/pt_BR/listing/shortdescription b/app/src/main/play/pt_BR/listing/shortdescription similarity index 100% rename from src/main/play/pt_BR/listing/shortdescription rename to app/src/main/play/pt_BR/listing/shortdescription diff --git a/src/main/play/pt_BR/listing/title b/app/src/main/play/pt_BR/listing/title similarity index 100% rename from src/main/play/pt_BR/listing/title rename to app/src/main/play/pt_BR/listing/title diff --git a/src/main/play/ro/listing/fulldescription b/app/src/main/play/ro/listing/fulldescription similarity index 100% rename from src/main/play/ro/listing/fulldescription rename to app/src/main/play/ro/listing/fulldescription diff --git a/src/main/play/ro/listing/shortdescription b/app/src/main/play/ro/listing/shortdescription similarity index 100% rename from src/main/play/ro/listing/shortdescription rename to app/src/main/play/ro/listing/shortdescription diff --git a/src/main/play/ro/listing/title b/app/src/main/play/ro/listing/title similarity index 100% rename from src/main/play/ro/listing/title rename to app/src/main/play/ro/listing/title diff --git a/src/main/play/ru-RU/listing/fulldescription b/app/src/main/play/ru-RU/listing/fulldescription similarity index 100% rename from src/main/play/ru-RU/listing/fulldescription rename to app/src/main/play/ru-RU/listing/fulldescription diff --git a/src/main/play/ru-RU/listing/shortdescription b/app/src/main/play/ru-RU/listing/shortdescription similarity index 100% rename from src/main/play/ru-RU/listing/shortdescription rename to app/src/main/play/ru-RU/listing/shortdescription diff --git a/src/main/play/ru-RU/listing/title b/app/src/main/play/ru-RU/listing/title similarity index 100% rename from src/main/play/ru-RU/listing/title rename to app/src/main/play/ru-RU/listing/title diff --git a/src/main/play/ru-RU/listing/video b/app/src/main/play/ru-RU/listing/video similarity index 100% rename from src/main/play/ru-RU/listing/video rename to app/src/main/play/ru-RU/listing/video diff --git a/src/main/play/sk/listing/fulldescription b/app/src/main/play/sk/listing/fulldescription similarity index 100% rename from src/main/play/sk/listing/fulldescription rename to app/src/main/play/sk/listing/fulldescription diff --git a/src/main/play/sk/listing/shortdescription b/app/src/main/play/sk/listing/shortdescription similarity index 100% rename from src/main/play/sk/listing/shortdescription rename to app/src/main/play/sk/listing/shortdescription diff --git a/src/main/play/sk/listing/title b/app/src/main/play/sk/listing/title similarity index 100% rename from src/main/play/sk/listing/title rename to app/src/main/play/sk/listing/title diff --git a/src/main/play/sk/listing/video b/app/src/main/play/sk/listing/video similarity index 100% rename from src/main/play/sk/listing/video rename to app/src/main/play/sk/listing/video diff --git a/src/main/play/sl/listing/fulldescription b/app/src/main/play/sl/listing/fulldescription similarity index 100% rename from src/main/play/sl/listing/fulldescription rename to app/src/main/play/sl/listing/fulldescription diff --git a/src/main/play/sl/listing/shortdescription b/app/src/main/play/sl/listing/shortdescription similarity index 100% rename from src/main/play/sl/listing/shortdescription rename to app/src/main/play/sl/listing/shortdescription diff --git a/src/main/play/sl/listing/title b/app/src/main/play/sl/listing/title similarity index 100% rename from src/main/play/sl/listing/title rename to app/src/main/play/sl/listing/title diff --git a/src/main/play/sl/listing/video b/app/src/main/play/sl/listing/video similarity index 100% rename from src/main/play/sl/listing/video rename to app/src/main/play/sl/listing/video diff --git a/src/main/play/sr/listing/fulldescription b/app/src/main/play/sr/listing/fulldescription similarity index 100% rename from src/main/play/sr/listing/fulldescription rename to app/src/main/play/sr/listing/fulldescription diff --git a/src/main/play/sr/listing/shortdescription b/app/src/main/play/sr/listing/shortdescription similarity index 100% rename from src/main/play/sr/listing/shortdescription rename to app/src/main/play/sr/listing/shortdescription diff --git a/src/main/play/sr/listing/title b/app/src/main/play/sr/listing/title similarity index 100% rename from src/main/play/sr/listing/title rename to app/src/main/play/sr/listing/title diff --git a/src/main/play/sr/listing/video b/app/src/main/play/sr/listing/video similarity index 100% rename from src/main/play/sr/listing/video rename to app/src/main/play/sr/listing/video diff --git a/src/main/play/sv-SE/listing/fulldescription b/app/src/main/play/sv-SE/listing/fulldescription similarity index 100% rename from src/main/play/sv-SE/listing/fulldescription rename to app/src/main/play/sv-SE/listing/fulldescription diff --git a/src/main/play/sv-SE/listing/shortdescription b/app/src/main/play/sv-SE/listing/shortdescription similarity index 100% rename from src/main/play/sv-SE/listing/shortdescription rename to app/src/main/play/sv-SE/listing/shortdescription diff --git a/src/main/play/sv-SE/listing/title b/app/src/main/play/sv-SE/listing/title similarity index 100% rename from src/main/play/sv-SE/listing/title rename to app/src/main/play/sv-SE/listing/title diff --git a/src/main/play/sv-SE/listing/video b/app/src/main/play/sv-SE/listing/video similarity index 100% rename from src/main/play/sv-SE/listing/video rename to app/src/main/play/sv-SE/listing/video diff --git a/src/main/play/sv_SE/listing/fulldescription b/app/src/main/play/sv_SE/listing/fulldescription similarity index 100% rename from src/main/play/sv_SE/listing/fulldescription rename to app/src/main/play/sv_SE/listing/fulldescription diff --git a/src/main/play/sv_SE/listing/shortdescription b/app/src/main/play/sv_SE/listing/shortdescription similarity index 100% rename from src/main/play/sv_SE/listing/shortdescription rename to app/src/main/play/sv_SE/listing/shortdescription diff --git a/src/main/play/tr-TR/listing/fulldescription b/app/src/main/play/tr-TR/listing/fulldescription similarity index 100% rename from src/main/play/tr-TR/listing/fulldescription rename to app/src/main/play/tr-TR/listing/fulldescription diff --git a/src/main/play/tr-TR/listing/shortdescription b/app/src/main/play/tr-TR/listing/shortdescription similarity index 100% rename from src/main/play/tr-TR/listing/shortdescription rename to app/src/main/play/tr-TR/listing/shortdescription diff --git a/src/main/play/tr-TR/listing/title b/app/src/main/play/tr-TR/listing/title similarity index 100% rename from src/main/play/tr-TR/listing/title rename to app/src/main/play/tr-TR/listing/title diff --git a/src/main/play/vi/listing/fulldescription b/app/src/main/play/vi/listing/fulldescription similarity index 100% rename from src/main/play/vi/listing/fulldescription rename to app/src/main/play/vi/listing/fulldescription diff --git a/src/main/play/vi/listing/shortdescription b/app/src/main/play/vi/listing/shortdescription similarity index 100% rename from src/main/play/vi/listing/shortdescription rename to app/src/main/play/vi/listing/shortdescription diff --git a/src/main/play/vi/listing/title b/app/src/main/play/vi/listing/title similarity index 100% rename from src/main/play/vi/listing/title rename to app/src/main/play/vi/listing/title diff --git a/src/main/play/zh-CN/listing/fulldescription b/app/src/main/play/zh-CN/listing/fulldescription similarity index 100% rename from src/main/play/zh-CN/listing/fulldescription rename to app/src/main/play/zh-CN/listing/fulldescription diff --git a/src/main/play/zh-CN/listing/shortdescription b/app/src/main/play/zh-CN/listing/shortdescription similarity index 100% rename from src/main/play/zh-CN/listing/shortdescription rename to app/src/main/play/zh-CN/listing/shortdescription diff --git a/src/main/play/zh-CN/listing/title b/app/src/main/play/zh-CN/listing/title similarity index 100% rename from src/main/play/zh-CN/listing/title rename to app/src/main/play/zh-CN/listing/title diff --git a/src/main/play/zh-CN/listing/video b/app/src/main/play/zh-CN/listing/video similarity index 100% rename from src/main/play/zh-CN/listing/video rename to app/src/main/play/zh-CN/listing/video diff --git a/src/main/play/zh_CN/listing/fulldescription b/app/src/main/play/zh_CN/listing/fulldescription similarity index 100% rename from src/main/play/zh_CN/listing/fulldescription rename to app/src/main/play/zh_CN/listing/fulldescription diff --git a/src/main/play/zh_CN/listing/shortdescription b/app/src/main/play/zh_CN/listing/shortdescription similarity index 100% rename from src/main/play/zh_CN/listing/shortdescription rename to app/src/main/play/zh_CN/listing/shortdescription diff --git a/src/main/play/zh_CN/listing/title b/app/src/main/play/zh_CN/listing/title similarity index 100% rename from src/main/play/zh_CN/listing/title rename to app/src/main/play/zh_CN/listing/title diff --git a/src/main/play/zh_TW/listing/fulldescription b/app/src/main/play/zh_TW/listing/fulldescription similarity index 100% rename from src/main/play/zh_TW/listing/fulldescription rename to app/src/main/play/zh_TW/listing/fulldescription diff --git a/src/main/play/zh_TW/listing/shortdescription b/app/src/main/play/zh_TW/listing/shortdescription similarity index 100% rename from src/main/play/zh_TW/listing/shortdescription rename to app/src/main/play/zh_TW/listing/shortdescription diff --git a/src/main/play/zh_TW/listing/title b/app/src/main/play/zh_TW/listing/title similarity index 100% rename from src/main/play/zh_TW/listing/title rename to app/src/main/play/zh_TW/listing/title diff --git a/src/main/res/drawable-hdpi/ic_add_folder_24dp_white.png b/app/src/main/res/drawable-hdpi/ic_add_folder_24dp_white.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_add_folder_24dp_white.png rename to app/src/main/res/drawable-hdpi/ic_add_folder_24dp_white.png diff --git a/src/main/res/drawable-hdpi/ic_add_white_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_add_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_add_white_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_add_white_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_autorenew_black_24dp.png b/app/src/main/res/drawable-hdpi/ic_autorenew_black_24dp.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_autorenew_black_24dp.png rename to app/src/main/res/drawable-hdpi/ic_autorenew_black_24dp.png diff --git a/src/main/res/drawable-hdpi/ic_cellphone_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_cellphone_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_cellphone_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_cellphone_black_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_cellphone_black_24dp_inactive.png b/app/src/main/res/drawable-hdpi/ic_cellphone_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_cellphone_black_24dp_inactive.png rename to app/src/main/res/drawable-hdpi/ic_cellphone_black_24dp_inactive.png diff --git a/src/main/res/drawable-hdpi/ic_close_black_24dp.png b/app/src/main/res/drawable-hdpi/ic_close_black_24dp.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_close_black_24dp.png rename to app/src/main/res/drawable-hdpi/ic_close_black_24dp.png diff --git a/src/main/res/drawable-hdpi/ic_content_copy_black_24dp.png b/app/src/main/res/drawable-hdpi/ic_content_copy_black_24dp.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_content_copy_black_24dp.png rename to app/src/main/res/drawable-hdpi/ic_content_copy_black_24dp.png diff --git a/src/main/res/drawable-hdpi/ic_delete_white_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_delete_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_delete_white_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_delete_white_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_device_hub_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_device_hub_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_device_hub_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_device_hub_black_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_done_white_24dp.png b/app/src/main/res/drawable-hdpi/ic_done_white_24dp.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_done_white_24dp.png rename to app/src/main/res/drawable-hdpi/ic_done_white_24dp.png diff --git a/src/main/res/drawable-hdpi/ic_folder_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_folder_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_folder_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_folder_black_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_folder_black_24dp_inactive.png b/app/src/main/res/drawable-hdpi/ic_folder_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_folder_black_24dp_inactive.png rename to app/src/main/res/drawable-hdpi/ic_folder_black_24dp_inactive.png diff --git a/src/main/res/drawable-hdpi/ic_history_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_history_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_history_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_history_black_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_info_black_24dp_inactive.png b/app/src/main/res/drawable-hdpi/ic_info_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_info_black_24dp_inactive.png rename to app/src/main/res/drawable-hdpi/ic_info_black_24dp_inactive.png diff --git a/src/main/res/drawable-hdpi/ic_label_outline_black_24dp.png b/app/src/main/res/drawable-hdpi/ic_label_outline_black_24dp.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_label_outline_black_24dp.png rename to app/src/main/res/drawable-hdpi/ic_label_outline_black_24dp.png diff --git a/src/main/res/drawable-hdpi/ic_launcher.png b/app/src/main/res/drawable-hdpi/ic_launcher.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_launcher.png rename to app/src/main/res/drawable-hdpi/ic_launcher.png diff --git a/src/main/res/drawable-hdpi/ic_link_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_link_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_link_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_link_black_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_lock_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_lock_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_lock_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_lock_black_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_phonelink_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_phonelink_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_phonelink_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_phonelink_black_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_qrcode_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_qrcode_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_qrcode_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_qrcode_black_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_settings_black_24dp.png b/app/src/main/res/drawable-hdpi/ic_settings_black_24dp.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_settings_black_24dp.png rename to app/src/main/res/drawable-hdpi/ic_settings_black_24dp.png diff --git a/src/main/res/drawable-hdpi/ic_share_black_24dp.png b/app/src/main/res/drawable-hdpi/ic_share_black_24dp.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_share_black_24dp.png rename to app/src/main/res/drawable-hdpi/ic_share_black_24dp.png diff --git a/src/main/res/drawable-hdpi/ic_share_white_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_share_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_share_white_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_share_white_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_stat_notify.png b/app/src/main/res/drawable-hdpi/ic_stat_notify.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_stat_notify.png rename to app/src/main/res/drawable-hdpi/ic_stat_notify.png diff --git a/src/main/res/drawable-hdpi/ic_tag_text_outline_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_tag_text_outline_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_tag_text_outline_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_tag_text_outline_black_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_vpn_key_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_vpn_key_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_vpn_key_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_vpn_key_black_24dp_active.png diff --git a/src/main/res/drawable-hdpi/ic_vpn_key_black_24dp_inactive.png b/app/src/main/res/drawable-hdpi/ic_vpn_key_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_vpn_key_black_24dp_inactive.png rename to app/src/main/res/drawable-hdpi/ic_vpn_key_black_24dp_inactive.png diff --git a/src/main/res/drawable-hdpi/ic_web_black_24dp.png b/app/src/main/res/drawable-hdpi/ic_web_black_24dp.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_web_black_24dp.png rename to app/src/main/res/drawable-hdpi/ic_web_black_24dp.png diff --git a/src/main/res/drawable-hdpi/ic_zip_box_black_24dp_active.png b/app/src/main/res/drawable-hdpi/ic_zip_box_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-hdpi/ic_zip_box_black_24dp_active.png rename to app/src/main/res/drawable-hdpi/ic_zip_box_black_24dp_active.png diff --git a/src/main/res/drawable-mdpi/ic_autorenew_black_24dp.png b/app/src/main/res/drawable-mdpi/ic_autorenew_black_24dp.png similarity index 100% rename from src/main/res/drawable-mdpi/ic_autorenew_black_24dp.png rename to app/src/main/res/drawable-mdpi/ic_autorenew_black_24dp.png diff --git a/src/main/res/drawable-mdpi/ic_content_copy_black_24dp.png b/app/src/main/res/drawable-mdpi/ic_content_copy_black_24dp.png similarity index 100% rename from src/main/res/drawable-mdpi/ic_content_copy_black_24dp.png rename to app/src/main/res/drawable-mdpi/ic_content_copy_black_24dp.png diff --git a/src/main/res/drawable-mdpi/ic_done_white_24dp.png b/app/src/main/res/drawable-mdpi/ic_done_white_24dp.png similarity index 100% rename from src/main/res/drawable-mdpi/ic_done_white_24dp.png rename to app/src/main/res/drawable-mdpi/ic_done_white_24dp.png diff --git a/src/main/res/drawable-mdpi/ic_label_outline_black_24dp.png b/app/src/main/res/drawable-mdpi/ic_label_outline_black_24dp.png similarity index 100% rename from src/main/res/drawable-mdpi/ic_label_outline_black_24dp.png rename to app/src/main/res/drawable-mdpi/ic_label_outline_black_24dp.png diff --git a/src/main/res/drawable-mdpi/ic_launcher.png b/app/src/main/res/drawable-mdpi/ic_launcher.png similarity index 100% rename from src/main/res/drawable-mdpi/ic_launcher.png rename to app/src/main/res/drawable-mdpi/ic_launcher.png diff --git a/src/main/res/drawable-mdpi/ic_share_black_24dp.png b/app/src/main/res/drawable-mdpi/ic_share_black_24dp.png similarity index 100% rename from src/main/res/drawable-mdpi/ic_share_black_24dp.png rename to app/src/main/res/drawable-mdpi/ic_share_black_24dp.png diff --git a/src/main/res/drawable-mdpi/ic_stat_notify.png b/app/src/main/res/drawable-mdpi/ic_stat_notify.png similarity index 100% rename from src/main/res/drawable-mdpi/ic_stat_notify.png rename to app/src/main/res/drawable-mdpi/ic_stat_notify.png diff --git a/src/main/res/drawable-nodpi/banner.jpg b/app/src/main/res/drawable-nodpi/banner.jpg similarity index 100% rename from src/main/res/drawable-nodpi/banner.jpg rename to app/src/main/res/drawable-nodpi/banner.jpg diff --git a/src/main/res/drawable-xhdpi/ic_add_folder_24dp_white.png b/app/src/main/res/drawable-xhdpi/ic_add_folder_24dp_white.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_add_folder_24dp_white.png rename to app/src/main/res/drawable-xhdpi/ic_add_folder_24dp_white.png diff --git a/src/main/res/drawable-xhdpi/ic_add_white_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_add_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_add_white_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_add_white_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_autorenew_black_24dp.png b/app/src/main/res/drawable-xhdpi/ic_autorenew_black_24dp.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_autorenew_black_24dp.png rename to app/src/main/res/drawable-xhdpi/ic_autorenew_black_24dp.png diff --git a/src/main/res/drawable-xhdpi/ic_cellphone_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_cellphone_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_cellphone_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_cellphone_black_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_cellphone_black_24dp_inactive.png b/app/src/main/res/drawable-xhdpi/ic_cellphone_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_cellphone_black_24dp_inactive.png rename to app/src/main/res/drawable-xhdpi/ic_cellphone_black_24dp_inactive.png diff --git a/src/main/res/drawable-xhdpi/ic_close_black_24dp.png b/app/src/main/res/drawable-xhdpi/ic_close_black_24dp.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_close_black_24dp.png rename to app/src/main/res/drawable-xhdpi/ic_close_black_24dp.png diff --git a/src/main/res/drawable-xhdpi/ic_content_copy_black_24dp.png b/app/src/main/res/drawable-xhdpi/ic_content_copy_black_24dp.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_content_copy_black_24dp.png rename to app/src/main/res/drawable-xhdpi/ic_content_copy_black_24dp.png diff --git a/src/main/res/drawable-xhdpi/ic_delete_white_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_delete_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_delete_white_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_delete_white_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_device_hub_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_device_hub_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_device_hub_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_device_hub_black_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_done_white_24dp.png b/app/src/main/res/drawable-xhdpi/ic_done_white_24dp.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_done_white_24dp.png rename to app/src/main/res/drawable-xhdpi/ic_done_white_24dp.png diff --git a/src/main/res/drawable-xhdpi/ic_folder_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_folder_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_folder_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_folder_black_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_folder_black_24dp_inactive.png b/app/src/main/res/drawable-xhdpi/ic_folder_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_folder_black_24dp_inactive.png rename to app/src/main/res/drawable-xhdpi/ic_folder_black_24dp_inactive.png diff --git a/src/main/res/drawable-xhdpi/ic_history_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_history_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_history_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_history_black_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_info_black_24dp_inactive.png b/app/src/main/res/drawable-xhdpi/ic_info_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_info_black_24dp_inactive.png rename to app/src/main/res/drawable-xhdpi/ic_info_black_24dp_inactive.png diff --git a/src/main/res/drawable-xhdpi/ic_label_outline_black_24dp.png b/app/src/main/res/drawable-xhdpi/ic_label_outline_black_24dp.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_label_outline_black_24dp.png rename to app/src/main/res/drawable-xhdpi/ic_label_outline_black_24dp.png diff --git a/src/main/res/drawable-xhdpi/ic_launcher.png b/app/src/main/res/drawable-xhdpi/ic_launcher.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_launcher.png rename to app/src/main/res/drawable-xhdpi/ic_launcher.png diff --git a/src/main/res/drawable-xhdpi/ic_link_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_link_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_link_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_link_black_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_lock_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_lock_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_lock_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_lock_black_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_phonelink_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_phonelink_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_phonelink_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_phonelink_black_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_qrcode_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_qrcode_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_qrcode_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_qrcode_black_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_settings_black_24dp.png b/app/src/main/res/drawable-xhdpi/ic_settings_black_24dp.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_settings_black_24dp.png rename to app/src/main/res/drawable-xhdpi/ic_settings_black_24dp.png diff --git a/src/main/res/drawable-xhdpi/ic_share_black_24dp.png b/app/src/main/res/drawable-xhdpi/ic_share_black_24dp.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_share_black_24dp.png rename to app/src/main/res/drawable-xhdpi/ic_share_black_24dp.png diff --git a/src/main/res/drawable-xhdpi/ic_share_white_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_share_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_share_white_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_share_white_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_stat_notify.png b/app/src/main/res/drawable-xhdpi/ic_stat_notify.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_stat_notify.png rename to app/src/main/res/drawable-xhdpi/ic_stat_notify.png diff --git a/src/main/res/drawable-xhdpi/ic_tag_text_outline_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_tag_text_outline_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_tag_text_outline_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_tag_text_outline_black_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_vpn_key_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_vpn_key_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_vpn_key_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_vpn_key_black_24dp_active.png diff --git a/src/main/res/drawable-xhdpi/ic_vpn_key_black_24dp_inactive.png b/app/src/main/res/drawable-xhdpi/ic_vpn_key_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_vpn_key_black_24dp_inactive.png rename to app/src/main/res/drawable-xhdpi/ic_vpn_key_black_24dp_inactive.png diff --git a/src/main/res/drawable-xhdpi/ic_web_black_24dp.png b/app/src/main/res/drawable-xhdpi/ic_web_black_24dp.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_web_black_24dp.png rename to app/src/main/res/drawable-xhdpi/ic_web_black_24dp.png diff --git a/src/main/res/drawable-xhdpi/ic_zip_box_black_24dp_active.png b/app/src/main/res/drawable-xhdpi/ic_zip_box_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xhdpi/ic_zip_box_black_24dp_active.png rename to app/src/main/res/drawable-xhdpi/ic_zip_box_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_add_folder_24dp_white.png b/app/src/main/res/drawable-xxhdpi/ic_add_folder_24dp_white.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_add_folder_24dp_white.png rename to app/src/main/res/drawable-xxhdpi/ic_add_folder_24dp_white.png diff --git a/src/main/res/drawable-xxhdpi/ic_add_white_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_add_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_add_white_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_add_white_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_autorenew_black_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_autorenew_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_autorenew_black_24dp.png rename to app/src/main/res/drawable-xxhdpi/ic_autorenew_black_24dp.png diff --git a/src/main/res/drawable-xxhdpi/ic_cellphone_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_cellphone_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_cellphone_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_cellphone_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_cellphone_black_24dp_inactive.png b/app/src/main/res/drawable-xxhdpi/ic_cellphone_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_cellphone_black_24dp_inactive.png rename to app/src/main/res/drawable-xxhdpi/ic_cellphone_black_24dp_inactive.png diff --git a/src/main/res/drawable-xxhdpi/ic_close_black_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_close_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_close_black_24dp.png rename to app/src/main/res/drawable-xxhdpi/ic_close_black_24dp.png diff --git a/src/main/res/drawable-xxhdpi/ic_content_copy_black_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_content_copy_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_content_copy_black_24dp.png rename to app/src/main/res/drawable-xxhdpi/ic_content_copy_black_24dp.png diff --git a/src/main/res/drawable-xxhdpi/ic_delete_white_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_delete_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_delete_white_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_delete_white_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_device_hub_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_device_hub_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_device_hub_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_device_hub_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_done_white_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_done_white_24dp.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_done_white_24dp.png rename to app/src/main/res/drawable-xxhdpi/ic_done_white_24dp.png diff --git a/src/main/res/drawable-xxhdpi/ic_folder_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_folder_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_folder_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_folder_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_folder_black_24dp_inactive.png b/app/src/main/res/drawable-xxhdpi/ic_folder_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_folder_black_24dp_inactive.png rename to app/src/main/res/drawable-xxhdpi/ic_folder_black_24dp_inactive.png diff --git a/src/main/res/drawable-xxhdpi/ic_history_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_history_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_history_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_history_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_info_black_24dp_inactive.png b/app/src/main/res/drawable-xxhdpi/ic_info_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_info_black_24dp_inactive.png rename to app/src/main/res/drawable-xxhdpi/ic_info_black_24dp_inactive.png diff --git a/src/main/res/drawable-xxhdpi/ic_label_outline_black_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_label_outline_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_label_outline_black_24dp.png rename to app/src/main/res/drawable-xxhdpi/ic_label_outline_black_24dp.png diff --git a/src/main/res/drawable-xxhdpi/ic_launcher.png b/app/src/main/res/drawable-xxhdpi/ic_launcher.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_launcher.png rename to app/src/main/res/drawable-xxhdpi/ic_launcher.png diff --git a/src/main/res/drawable-xxhdpi/ic_link_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_link_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_link_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_link_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_lock_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_lock_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_lock_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_lock_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_phonelink_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_phonelink_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_phonelink_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_phonelink_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_qrcode_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_qrcode_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_qrcode_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_qrcode_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_settings_black_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_settings_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_settings_black_24dp.png rename to app/src/main/res/drawable-xxhdpi/ic_settings_black_24dp.png diff --git a/src/main/res/drawable-xxhdpi/ic_share_black_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_share_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_share_black_24dp.png rename to app/src/main/res/drawable-xxhdpi/ic_share_black_24dp.png diff --git a/src/main/res/drawable-xxhdpi/ic_share_white_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_share_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_share_white_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_share_white_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_stat_notify.png b/app/src/main/res/drawable-xxhdpi/ic_stat_notify.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_stat_notify.png rename to app/src/main/res/drawable-xxhdpi/ic_stat_notify.png diff --git a/src/main/res/drawable-xxhdpi/ic_tag_text_outline_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_tag_text_outline_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_tag_text_outline_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_tag_text_outline_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_vpn_key_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_vpn_key_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_vpn_key_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_vpn_key_black_24dp_active.png diff --git a/src/main/res/drawable-xxhdpi/ic_vpn_key_black_24dp_inactive.png b/app/src/main/res/drawable-xxhdpi/ic_vpn_key_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_vpn_key_black_24dp_inactive.png rename to app/src/main/res/drawable-xxhdpi/ic_vpn_key_black_24dp_inactive.png diff --git a/src/main/res/drawable-xxhdpi/ic_web_black_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_web_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_web_black_24dp.png rename to app/src/main/res/drawable-xxhdpi/ic_web_black_24dp.png diff --git a/src/main/res/drawable-xxhdpi/ic_zip_box_black_24dp_active.png b/app/src/main/res/drawable-xxhdpi/ic_zip_box_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxhdpi/ic_zip_box_black_24dp_active.png rename to app/src/main/res/drawable-xxhdpi/ic_zip_box_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_add_folder_24dp_white.png b/app/src/main/res/drawable-xxxhdpi/ic_add_folder_24dp_white.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_add_folder_24dp_white.png rename to app/src/main/res/drawable-xxxhdpi/ic_add_folder_24dp_white.png diff --git a/src/main/res/drawable-xxxhdpi/ic_add_white_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_add_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_add_white_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_add_white_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_autorenew_black_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_autorenew_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_autorenew_black_24dp.png rename to app/src/main/res/drawable-xxxhdpi/ic_autorenew_black_24dp.png diff --git a/src/main/res/drawable-xxxhdpi/ic_cellphone_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_cellphone_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_cellphone_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_cellphone_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_cellphone_black_24dp_inactive.png b/app/src/main/res/drawable-xxxhdpi/ic_cellphone_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_cellphone_black_24dp_inactive.png rename to app/src/main/res/drawable-xxxhdpi/ic_cellphone_black_24dp_inactive.png diff --git a/src/main/res/drawable-xxxhdpi/ic_close_black_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_close_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_close_black_24dp.png rename to app/src/main/res/drawable-xxxhdpi/ic_close_black_24dp.png diff --git a/src/main/res/drawable-xxxhdpi/ic_content_copy_black_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_content_copy_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_content_copy_black_24dp.png rename to app/src/main/res/drawable-xxxhdpi/ic_content_copy_black_24dp.png diff --git a/src/main/res/drawable-xxxhdpi/ic_delete_white_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_delete_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_delete_white_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_delete_white_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_device_hub_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_device_hub_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_device_hub_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_device_hub_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_done_white_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_done_white_24dp.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_done_white_24dp.png rename to app/src/main/res/drawable-xxxhdpi/ic_done_white_24dp.png diff --git a/src/main/res/drawable-xxxhdpi/ic_folder_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_folder_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_folder_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_folder_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_folder_black_24dp_inactive.png b/app/src/main/res/drawable-xxxhdpi/ic_folder_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_folder_black_24dp_inactive.png rename to app/src/main/res/drawable-xxxhdpi/ic_folder_black_24dp_inactive.png diff --git a/src/main/res/drawable-xxxhdpi/ic_history_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_history_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_history_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_history_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_info_black_24dp_inactive.png b/app/src/main/res/drawable-xxxhdpi/ic_info_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_info_black_24dp_inactive.png rename to app/src/main/res/drawable-xxxhdpi/ic_info_black_24dp_inactive.png diff --git a/src/main/res/drawable-xxxhdpi/ic_label_outline_black_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_label_outline_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_label_outline_black_24dp.png rename to app/src/main/res/drawable-xxxhdpi/ic_label_outline_black_24dp.png diff --git a/src/main/res/drawable-xxxhdpi/ic_launcher.png b/app/src/main/res/drawable-xxxhdpi/ic_launcher.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_launcher.png rename to app/src/main/res/drawable-xxxhdpi/ic_launcher.png diff --git a/src/main/res/drawable-xxxhdpi/ic_link_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_link_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_link_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_link_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_lock_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_lock_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_lock_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_lock_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_phonelink_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_phonelink_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_phonelink_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_phonelink_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_qrcode_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_qrcode_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_qrcode_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_qrcode_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_settings_black_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_settings_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_settings_black_24dp.png rename to app/src/main/res/drawable-xxxhdpi/ic_settings_black_24dp.png diff --git a/src/main/res/drawable-xxxhdpi/ic_share_black_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_share_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_share_black_24dp.png rename to app/src/main/res/drawable-xxxhdpi/ic_share_black_24dp.png diff --git a/src/main/res/drawable-xxxhdpi/ic_share_white_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_share_white_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_share_white_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_share_white_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_stat_notify.png b/app/src/main/res/drawable-xxxhdpi/ic_stat_notify.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_stat_notify.png rename to app/src/main/res/drawable-xxxhdpi/ic_stat_notify.png diff --git a/src/main/res/drawable-xxxhdpi/ic_tag_text_outline_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_tag_text_outline_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_tag_text_outline_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_tag_text_outline_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_vpn_key_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_vpn_key_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_vpn_key_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_vpn_key_black_24dp_active.png diff --git a/src/main/res/drawable-xxxhdpi/ic_vpn_key_black_24dp_inactive.png b/app/src/main/res/drawable-xxxhdpi/ic_vpn_key_black_24dp_inactive.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_vpn_key_black_24dp_inactive.png rename to app/src/main/res/drawable-xxxhdpi/ic_vpn_key_black_24dp_inactive.png diff --git a/src/main/res/drawable-xxxhdpi/ic_web_black_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_web_black_24dp.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_web_black_24dp.png rename to app/src/main/res/drawable-xxxhdpi/ic_web_black_24dp.png diff --git a/src/main/res/drawable-xxxhdpi/ic_zip_box_black_24dp_active.png b/app/src/main/res/drawable-xxxhdpi/ic_zip_box_black_24dp_active.png similarity index 100% rename from src/main/res/drawable-xxxhdpi/ic_zip_box_black_24dp_active.png rename to app/src/main/res/drawable-xxxhdpi/ic_zip_box_black_24dp_active.png diff --git a/src/main/res/drawable/ic_cellphone_black_24dp.xml b/app/src/main/res/drawable/ic_cellphone_black_24dp.xml similarity index 100% rename from src/main/res/drawable/ic_cellphone_black_24dp.xml rename to app/src/main/res/drawable/ic_cellphone_black_24dp.xml diff --git a/src/main/res/drawable/ic_folder_black_24dp.xml b/app/src/main/res/drawable/ic_folder_black_24dp.xml similarity index 100% rename from src/main/res/drawable/ic_folder_black_24dp.xml rename to app/src/main/res/drawable/ic_folder_black_24dp.xml diff --git a/src/main/res/drawable/ic_visibility_off_black_24dp.xml b/app/src/main/res/drawable/ic_visibility_off_black_24dp.xml similarity index 100% rename from src/main/res/drawable/ic_visibility_off_black_24dp.xml rename to app/src/main/res/drawable/ic_visibility_off_black_24dp.xml diff --git a/src/main/res/drawable/ic_visibility_off_black_24dp_active.xml b/app/src/main/res/drawable/ic_visibility_off_black_24dp_active.xml similarity index 100% rename from src/main/res/drawable/ic_visibility_off_black_24dp_active.xml rename to app/src/main/res/drawable/ic_visibility_off_black_24dp_active.xml diff --git a/src/main/res/drawable/ic_visibility_off_black_24dp_inactive.xml b/app/src/main/res/drawable/ic_visibility_off_black_24dp_inactive.xml similarity index 100% rename from src/main/res/drawable/ic_visibility_off_black_24dp_inactive.xml rename to app/src/main/res/drawable/ic_visibility_off_black_24dp_inactive.xml diff --git a/src/main/res/drawable/ic_vpn_key_black_24dp.xml b/app/src/main/res/drawable/ic_vpn_key_black_24dp.xml similarity index 100% rename from src/main/res/drawable/ic_vpn_key_black_24dp.xml rename to app/src/main/res/drawable/ic_vpn_key_black_24dp.xml diff --git a/src/main/res/drawable/list_divider.xml b/app/src/main/res/drawable/list_divider.xml similarity index 100% rename from src/main/res/drawable/list_divider.xml rename to app/src/main/res/drawable/list_divider.xml diff --git a/src/main/res/drawable/list_divider_inset.xml b/app/src/main/res/drawable/list_divider_inset.xml similarity index 100% rename from src/main/res/drawable/list_divider_inset.xml rename to app/src/main/res/drawable/list_divider_inset.xml diff --git a/src/main/res/layout/activity_first_start.xml b/app/src/main/res/layout/activity_first_start.xml similarity index 100% rename from src/main/res/layout/activity_first_start.xml rename to app/src/main/res/layout/activity_first_start.xml diff --git a/src/main/res/layout/activity_folder_picker.xml b/app/src/main/res/layout/activity_folder_picker.xml similarity index 100% rename from src/main/res/layout/activity_folder_picker.xml rename to app/src/main/res/layout/activity_folder_picker.xml diff --git a/src/main/res/layout/activity_log.xml b/app/src/main/res/layout/activity_log.xml similarity index 100% rename from src/main/res/layout/activity_log.xml rename to app/src/main/res/layout/activity_log.xml diff --git a/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml similarity index 100% rename from src/main/res/layout/activity_main.xml rename to app/src/main/res/layout/activity_main.xml diff --git a/src/main/res/layout/activity_share.xml b/app/src/main/res/layout/activity_share.xml similarity index 100% rename from src/main/res/layout/activity_share.xml rename to app/src/main/res/layout/activity_share.xml diff --git a/src/main/res/layout/activity_web_gui.xml b/app/src/main/res/layout/activity_web_gui.xml similarity index 100% rename from src/main/res/layout/activity_web_gui.xml rename to app/src/main/res/layout/activity_web_gui.xml diff --git a/src/main/res/layout/dialog_loading.xml b/app/src/main/res/layout/dialog_loading.xml similarity index 100% rename from src/main/res/layout/dialog_loading.xml rename to app/src/main/res/layout/dialog_loading.xml diff --git a/src/main/res/layout/dialog_qrcode.xml b/app/src/main/res/layout/dialog_qrcode.xml similarity index 100% rename from src/main/res/layout/dialog_qrcode.xml rename to app/src/main/res/layout/dialog_qrcode.xml diff --git a/src/main/res/layout/dialog_usage_reporting.xml b/app/src/main/res/layout/dialog_usage_reporting.xml similarity index 100% rename from src/main/res/layout/dialog_usage_reporting.xml rename to app/src/main/res/layout/dialog_usage_reporting.xml diff --git a/src/main/res/layout/fragment_device.xml b/app/src/main/res/layout/fragment_device.xml similarity index 100% rename from src/main/res/layout/fragment_device.xml rename to app/src/main/res/layout/fragment_device.xml diff --git a/src/main/res/layout/fragment_drawer.xml b/app/src/main/res/layout/fragment_drawer.xml similarity index 100% rename from src/main/res/layout/fragment_drawer.xml rename to app/src/main/res/layout/fragment_drawer.xml diff --git a/src/main/res/layout/fragment_external_versioning.xml b/app/src/main/res/layout/fragment_external_versioning.xml similarity index 100% rename from src/main/res/layout/fragment_external_versioning.xml rename to app/src/main/res/layout/fragment_external_versioning.xml diff --git a/src/main/res/layout/fragment_folder.xml b/app/src/main/res/layout/fragment_folder.xml similarity index 100% rename from src/main/res/layout/fragment_folder.xml rename to app/src/main/res/layout/fragment_folder.xml diff --git a/src/main/res/layout/fragment_no_versioning.xml b/app/src/main/res/layout/fragment_no_versioning.xml similarity index 100% rename from src/main/res/layout/fragment_no_versioning.xml rename to app/src/main/res/layout/fragment_no_versioning.xml diff --git a/src/main/res/layout/fragment_simple_versioning.xml b/app/src/main/res/layout/fragment_simple_versioning.xml similarity index 100% rename from src/main/res/layout/fragment_simple_versioning.xml rename to app/src/main/res/layout/fragment_simple_versioning.xml diff --git a/src/main/res/layout/fragment_staggered_versioning.xml b/app/src/main/res/layout/fragment_staggered_versioning.xml similarity index 100% rename from src/main/res/layout/fragment_staggered_versioning.xml rename to app/src/main/res/layout/fragment_staggered_versioning.xml diff --git a/src/main/res/layout/fragment_trashcan_versioning.xml b/app/src/main/res/layout/fragment_trashcan_versioning.xml similarity index 100% rename from src/main/res/layout/fragment_trashcan_versioning.xml rename to app/src/main/res/layout/fragment_trashcan_versioning.xml diff --git a/src/main/res/layout/fragment_versioning_dialog.xml b/app/src/main/res/layout/fragment_versioning_dialog.xml similarity index 100% rename from src/main/res/layout/fragment_versioning_dialog.xml rename to app/src/main/res/layout/fragment_versioning_dialog.xml diff --git a/src/main/res/layout/item_device_form.xml b/app/src/main/res/layout/item_device_form.xml similarity index 100% rename from src/main/res/layout/item_device_form.xml rename to app/src/main/res/layout/item_device_form.xml diff --git a/src/main/res/layout/item_device_list.xml b/app/src/main/res/layout/item_device_list.xml similarity index 100% rename from src/main/res/layout/item_device_list.xml rename to app/src/main/res/layout/item_device_list.xml diff --git a/src/main/res/layout/item_folder_list.xml b/app/src/main/res/layout/item_folder_list.xml similarity index 100% rename from src/main/res/layout/item_folder_list.xml rename to app/src/main/res/layout/item_folder_list.xml diff --git a/src/main/res/layout/item_folder_picker.xml b/app/src/main/res/layout/item_folder_picker.xml similarity index 100% rename from src/main/res/layout/item_folder_picker.xml rename to app/src/main/res/layout/item_folder_picker.xml diff --git a/src/main/res/layout/numberpicker_fragment.xml b/app/src/main/res/layout/numberpicker_fragment.xml similarity index 100% rename from src/main/res/layout/numberpicker_fragment.xml rename to app/src/main/res/layout/numberpicker_fragment.xml diff --git a/src/main/res/layout/widget_toolbar.xml b/app/src/main/res/layout/widget_toolbar.xml similarity index 100% rename from src/main/res/layout/widget_toolbar.xml rename to app/src/main/res/layout/widget_toolbar.xml diff --git a/src/main/res/menu/device_list.xml b/app/src/main/res/menu/device_list.xml similarity index 100% rename from src/main/res/menu/device_list.xml rename to app/src/main/res/menu/device_list.xml diff --git a/src/main/res/menu/device_settings.xml b/app/src/main/res/menu/device_settings.xml similarity index 100% rename from src/main/res/menu/device_settings.xml rename to app/src/main/res/menu/device_settings.xml diff --git a/src/main/res/menu/folder_list.xml b/app/src/main/res/menu/folder_list.xml similarity index 100% rename from src/main/res/menu/folder_list.xml rename to app/src/main/res/menu/folder_list.xml diff --git a/src/main/res/menu/folder_picker.xml b/app/src/main/res/menu/folder_picker.xml similarity index 100% rename from src/main/res/menu/folder_picker.xml rename to app/src/main/res/menu/folder_picker.xml diff --git a/src/main/res/menu/folder_settings.xml b/app/src/main/res/menu/folder_settings.xml similarity index 100% rename from src/main/res/menu/folder_settings.xml rename to app/src/main/res/menu/folder_settings.xml diff --git a/src/main/res/menu/log_list.xml b/app/src/main/res/menu/log_list.xml similarity index 100% rename from src/main/res/menu/log_list.xml rename to app/src/main/res/menu/log_list.xml diff --git a/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml similarity index 100% rename from src/main/res/values-ar/strings.xml rename to app/src/main/res/values-ar/strings.xml diff --git a/src/main/res/values-bg/strings.xml b/app/src/main/res/values-bg/strings.xml similarity index 100% rename from src/main/res/values-bg/strings.xml rename to app/src/main/res/values-bg/strings.xml diff --git a/src/main/res/values-ca-rES/strings.xml b/app/src/main/res/values-ca-rES/strings.xml similarity index 100% rename from src/main/res/values-ca-rES/strings.xml rename to app/src/main/res/values-ca-rES/strings.xml diff --git a/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml similarity index 100% rename from src/main/res/values-cs/strings.xml rename to app/src/main/res/values-cs/strings.xml diff --git a/src/main/res/values-da/strings.xml b/app/src/main/res/values-da/strings.xml similarity index 100% rename from src/main/res/values-da/strings.xml rename to app/src/main/res/values-da/strings.xml diff --git a/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml similarity index 100% rename from src/main/res/values-de/strings.xml rename to app/src/main/res/values-de/strings.xml diff --git a/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml similarity index 100% rename from src/main/res/values-el/strings.xml rename to app/src/main/res/values-el/strings.xml diff --git a/src/main/res/values-es-rEC/strings.xml b/app/src/main/res/values-es-rEC/strings.xml similarity index 100% rename from src/main/res/values-es-rEC/strings.xml rename to app/src/main/res/values-es-rEC/strings.xml diff --git a/src/main/res/values-es-rMX/strings.xml b/app/src/main/res/values-es-rMX/strings.xml similarity index 100% rename from src/main/res/values-es-rMX/strings.xml rename to app/src/main/res/values-es-rMX/strings.xml diff --git a/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml similarity index 100% rename from src/main/res/values-es/strings.xml rename to app/src/main/res/values-es/strings.xml diff --git a/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml similarity index 100% rename from src/main/res/values-fi/strings.xml rename to app/src/main/res/values-fi/strings.xml diff --git a/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml similarity index 100% rename from src/main/res/values-fr/strings.xml rename to app/src/main/res/values-fr/strings.xml diff --git a/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml similarity index 100% rename from src/main/res/values-hu/strings.xml rename to app/src/main/res/values-hu/strings.xml diff --git a/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml similarity index 100% rename from src/main/res/values-in/strings.xml rename to app/src/main/res/values-in/strings.xml diff --git a/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml similarity index 100% rename from src/main/res/values-it/strings.xml rename to app/src/main/res/values-it/strings.xml diff --git a/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml similarity index 100% rename from src/main/res/values-ja/strings.xml rename to app/src/main/res/values-ja/strings.xml diff --git a/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml similarity index 100% rename from src/main/res/values-ko/strings.xml rename to app/src/main/res/values-ko/strings.xml diff --git a/src/main/res/values-nb/strings.xml b/app/src/main/res/values-nb/strings.xml similarity index 100% rename from src/main/res/values-nb/strings.xml rename to app/src/main/res/values-nb/strings.xml diff --git a/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml similarity index 100% rename from src/main/res/values-nl/strings.xml rename to app/src/main/res/values-nl/strings.xml diff --git a/src/main/res/values-nn/strings.xml b/app/src/main/res/values-nn/strings.xml similarity index 100% rename from src/main/res/values-nn/strings.xml rename to app/src/main/res/values-nn/strings.xml diff --git a/src/main/res/values-no/strings.xml b/app/src/main/res/values-no/strings.xml similarity index 100% rename from src/main/res/values-no/strings.xml rename to app/src/main/res/values-no/strings.xml diff --git a/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml similarity index 100% rename from src/main/res/values-pl/strings.xml rename to app/src/main/res/values-pl/strings.xml diff --git a/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml similarity index 100% rename from src/main/res/values-pt-rBR/strings.xml rename to app/src/main/res/values-pt-rBR/strings.xml diff --git a/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml similarity index 100% rename from src/main/res/values-pt/strings.xml rename to app/src/main/res/values-pt/strings.xml diff --git a/src/main/res/values-ro/strings.xml b/app/src/main/res/values-ro/strings.xml similarity index 100% rename from src/main/res/values-ro/strings.xml rename to app/src/main/res/values-ro/strings.xml diff --git a/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml similarity index 100% rename from src/main/res/values-ru/strings.xml rename to app/src/main/res/values-ru/strings.xml diff --git a/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml similarity index 100% rename from src/main/res/values-sk/strings.xml rename to app/src/main/res/values-sk/strings.xml diff --git a/src/main/res/values-sl/strings.xml b/app/src/main/res/values-sl/strings.xml similarity index 100% rename from src/main/res/values-sl/strings.xml rename to app/src/main/res/values-sl/strings.xml diff --git a/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml similarity index 100% rename from src/main/res/values-sr/strings.xml rename to app/src/main/res/values-sr/strings.xml diff --git a/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml similarity index 100% rename from src/main/res/values-sv/strings.xml rename to app/src/main/res/values-sv/strings.xml diff --git a/src/main/res/values-sw600dp/dimens.xml b/app/src/main/res/values-sw600dp/dimens.xml similarity index 100% rename from src/main/res/values-sw600dp/dimens.xml rename to app/src/main/res/values-sw600dp/dimens.xml diff --git a/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml similarity index 100% rename from src/main/res/values-tr/strings.xml rename to app/src/main/res/values-tr/strings.xml diff --git a/src/main/res/values-v21/themes.xml b/app/src/main/res/values-v21/themes.xml similarity index 100% rename from src/main/res/values-v21/themes.xml rename to app/src/main/res/values-v21/themes.xml diff --git a/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml similarity index 100% rename from src/main/res/values-vi/strings.xml rename to app/src/main/res/values-vi/strings.xml diff --git a/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml similarity index 100% rename from src/main/res/values-zh-rCN/strings.xml rename to app/src/main/res/values-zh-rCN/strings.xml diff --git a/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml similarity index 100% rename from src/main/res/values-zh-rTW/strings.xml rename to app/src/main/res/values-zh-rTW/strings.xml diff --git a/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml similarity index 100% rename from src/main/res/values/arrays.xml rename to app/src/main/res/values/arrays.xml diff --git a/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml similarity index 100% rename from src/main/res/values/attrs.xml rename to app/src/main/res/values/attrs.xml diff --git a/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml similarity index 100% rename from src/main/res/values/colors.xml rename to app/src/main/res/values/colors.xml diff --git a/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml similarity index 100% rename from src/main/res/values/dimens.xml rename to app/src/main/res/values/dimens.xml diff --git a/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml similarity index 100% rename from src/main/res/values/strings.xml rename to app/src/main/res/values/strings.xml diff --git a/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml similarity index 100% rename from src/main/res/values/styles.xml rename to app/src/main/res/values/styles.xml diff --git a/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml similarity index 100% rename from src/main/res/values/themes.xml rename to app/src/main/res/values/themes.xml diff --git a/src/main/res/xml/app_settings.xml b/app/src/main/res/xml/app_settings.xml similarity index 100% rename from src/main/res/xml/app_settings.xml rename to app/src/main/res/xml/app_settings.xml diff --git a/build.gradle b/build.gradle index 3a03488b..ac830ec0 100644 --- a/build.gradle +++ b/build.gradle @@ -1,109 +1,29 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + buildscript { repositories { jcenter() - } dependencies { classpath 'com.android.tools.build:gradle:2.3.3' - classpath 'com.github.ben-manes:gradle-versions-plugin:0.15.0' - classpath 'com.github.triplet.gradle:play-publisher:1.2.0' classpath 'me.tatarka:gradle-retrolambda:3.7.0' + classpath 'com.github.triplet.gradle:play-publisher:1.2.0' + classpath 'com.github.ben-manes:gradle-versions-plugin:0.15.0' + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files } } -apply plugin: 'com.android.application' -apply plugin: 'com.github.ben-manes.versions' -apply plugin: 'com.github.triplet.play' -apply plugin: 'me.tatarka.retrolambda' - -repositories { - jcenter() - maven { - url "https://maven.google.com" - } -} - -dependencies { - compile 'eu.chainfire:libsuperuser:1.0.0.201704021214' - compile 'com.android.support:design:26.1.0' - compile 'com.google.zxing:android-integration:3.3.0' - compile 'com.google.code.gson:gson:2.8.2' - compile 'org.mindrot:jbcrypt:0.4' - compile 'com.google.guava:guava:20.0' - compile 'com.annimon:stream:1.1.9' - compile 'com.android.volley:volley:1.0.0' - compile 'com.android.support.constraint:constraint-layout:1.0.2' - compile "com.google.dagger:dagger:2.11" - annotationProcessor "com.google.dagger:dagger-compiler:2.11" - androidTestCompile 'com.android.support.test:rules:1.0.1' - androidTestCompile 'com.android.support:support-annotations:26.1.0' -} - -android { - compileSdkVersion 26 - buildToolsVersion "26.0.2" - buildTypes.debug.applicationIdSuffix ".debug" - dataBinding.enabled = true - - playAccountConfigs { - defaultAccountConfig { - jsonFile = file('keys.json') +allprojects { + repositories { + jcenter() + maven { + url "https://maven.google.com" } } - defaultConfig { - applicationId "com.nutomic.syncthingandroid" - minSdkVersion 14 - targetSdkVersion 26 - versionCode 4127 - versionName "0.9.17" - testApplicationId 'com.nutomic.syncthingandroid.test' - testInstrumentationRunner 'android.support.test.runner.AndroidJUnitRunner' - playAccountConfig = playAccountConfigs.defaultAccountConfig - } - - signingConfigs { - release { - storeFile file(RELEASE_STORE_FILE) - storePassword System.getenv("SIGNING_PASSWORD") ?: "" - keyAlias RELEASE_KEY_ALIAS - keyPassword System.getenv("SIGNING_PASSWORD") ?: "" - } - } - buildTypes { - release { - signingConfig signingConfigs.release - } - } - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } } -task buildNative(type: Exec) { - outputs.upToDateWhen { false } - executable = './make-all.bash' -} - -task cleanNative(type: Delete) { - delete 'src/main/jniLibs/' - delete 'ext/syncthing/bin/' - delete 'ext/syncthing/pkg/' -} - -play { - jsonFile = file('keys.json') - uploadImages = false - track = 'production' -} - -/** - * Some languages are not supported by Google Play, so we ignore them. - */ -task deleteUnsupportedPlayTranslations(type: Delete) { - delete 'src/main/play/nn' - delete 'src/main/play/el-EL' - delete 'src/main/play/nb' - delete 'src/main/play/en/' +task clean(type: Delete) { + delete rootProject.buildDir } diff --git a/ext/golang/go b/ext/golang/go deleted file mode 160000 index cd6b6202..00000000 --- a/ext/golang/go +++ /dev/null @@ -1 +0,0 @@ -Subproject commit cd6b6202dd1559b3ac63179b45f1833fcfbe7eca diff --git a/ext/golang/go1.4 b/ext/golang/go1.4 deleted file mode 160000 index 50eb39bb..00000000 --- a/ext/golang/go1.4 +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 50eb39bb23e8b03e823c38e844f0410d0b5325d2 diff --git a/ext/syncthing/src/github.com/syncthing/syncthing b/ext/syncthing/src/github.com/syncthing/syncthing deleted file mode 160000 index 5aade9a4..00000000 --- a/ext/syncthing/src/github.com/syncthing/syncthing +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 5aade9a4a5506e5b71b2a9ab863790dca488700e diff --git a/make-all.bash b/make-all.bash deleted file mode 100755 index 6bf5a82d..00000000 --- a/make-all.bash +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash -e - -# Build the syncthing library - -./make-go.bash arm -./make-syncthing.bash arm - -./make-go.bash 386 -./make-syncthing.bash 386 - -./make-go.bash arm64 -./make-syncthing.bash arm64 diff --git a/make-go.bash b/make-go.bash deleted file mode 100755 index a0663c91..00000000 --- a/make-go.bash +++ /dev/null @@ -1,96 +0,0 @@ -#!/usr/bin/env bash - -set -e - -MYDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" - -export CGO_ENABLED=0 - -if [ -z "$GOROOT_BOOTSTRAP" ]; then - # We need Go 1.4 to bootstrap Go 1.5 - if [ -z $GOROOT ] || [[ $(go version) != go\ version\ go1.4* ]] ; then - git submodule update --init ext/golang/go1.4 - # Build Go 1.4 for host - pushd ext/golang/go1.4/src - ./make.bash --no-clean - popd - # Add Go 1.4 to the environment - export GOROOT="$(pwd)/ext/golang/go1.4" - fi - # Add Go 1.4 compiler to PATH - export GOROOT_BOOTSTRAP=$GOROOT -fi - -case "$1" in - arm) - export GOOS=linux - export GOARCH=arm - export GOARM=5 - ;; - arm64) - export GOOS=linux - export GOARCH=arm64 - unset GOARM - ;; - 386) - export GOOS=linux - export GOARCH=386 - export GO386=387 - ;; - *) - echo "Invalid architecture" - exit 1 -esac - -unset GOPATH - -export GOROOT_FINAL=${MYDIR}/ext/golang/dist/go-${GOOS}-${GOARCH} - -if [ -d "$GOROOT_FINAL" ]; then - rm -r "$GOROOT_FINAL" -fi -mkdir -p "$GOROOT_FINAL" - -pushd ext/golang/go/src - -git reset --hard HEAD - -# Apply patches to Golang -for PATCH in $MYDIR/patches/golang/all/*.patch; do - echo "Applying $PATCH" - patch -p1 <$PATCH -done - -set +e -./clean.bash -rm -r ../bin -rm -r ../pkg -set -e - -if [ ! -e ../VERSION ]; then - echo "$(git describe --tags)" > ../VERSION -fi - -BUILDER_EXT=bash -case "$(uname)" in - *MINGW* | *WIN32* | *CYGWIN*) - BUILDER_EXT=bat - ;; -esac - -./make.${BUILDER_EXT} --no-banner - -cp -a ../bin "${GOROOT_FINAL}"/ -cp -a ../pkg "${GOROOT_FINAL}"/ -cp -a ../src "${GOROOT_FINAL}"/ - -if [[ -e ./make.${BUILDER_EXT} ]]; then - pushd ../ - git clean -f - popd -fi - -popd - -echo "Complete" - diff --git a/make-syncthing.bash b/make-syncthing.bash deleted file mode 100755 index 0b5b7235..00000000 --- a/make-syncthing.bash +++ /dev/null @@ -1,73 +0,0 @@ -#!/usr/bin/env bash - -set -e - -MYDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -JNIDIR="/src/main/jniLibs" - -case "$1" in - arm) - export CGO_ENABLED=0 - export GOOS=linux - export GOARCH=arm - export GOARM=5 - export TARGETDIR=$MYDIR$JNIDIR/armeabi - ;; - arm64) - export CGO_ENABLED=0 - export GOOS=linux - export GOARCH=arm64 - unset GOARM - export TARGETDIR=$MYDIR$JNIDIR/arm64-v8a - ;; - 386) - export CGO_ENABLED=0 - export GOOS=linux - export GOARCH=386 - export GO386=387 - export TARGETDIR=$MYDIR$JNIDIR/x86 - ;; - *) - echo "Invalid architecture" - exit 1 -esac - -unset GOPATH #Set by build.go -export GOROOT=${MYDIR}/ext/golang/dist/go-${GOOS}-${GOARCH} -export PATH=${GOROOT}/bin:${PATH} - -case "$(uname)" in - *CYGWIN*) - export GOROOT=`cygpath -w $GOROOT` - ;; -esac - -pushd ext/syncthing/src/github.com/syncthing/syncthing - -_GOOS=$GOOS -unset GOOS -_GOARCH=$GOARCH -unset GOARCH - -# Make sure all tags are available for git describe -# https://github.com/syncthing/syncthing-android/issues/872 -git fetch --tags - -go run build.go -goos=${_GOOS} -goarch=${_GOARCH} clean -go run build.go -goos=${_GOOS} -goarch=${_GOARCH} -no-upgrade build - -export GOOS=$_GOOS -export GOARCH=$_GOARCH - -mkdir -p ${TARGETDIR} -mv syncthing ${TARGETDIR}/libsyncthing.so -chmod 644 ${TARGETDIR}/libsyncthing.so - -if [[ -e ./build.go ]]; then - git clean -f -fi - -popd - -echo "Build Complete" - diff --git a/patches/golang/all/dns.patch b/patches/golang/all/dns.patch deleted file mode 100644 index 0a393243..00000000 --- a/patches/golang/all/dns.patch +++ /dev/null @@ -1,90 +0,0 @@ ---- /net/dnsconfig_unix.go 2016-08-20 08:14:05.763235602 -0400 -+++ /net/dnsconfig_unix.go 2016-08-20 08:14:05.763235602 -0400 -@@ -9,16 +9,59 @@ - package net - - import ( -+ "fmt" - "os" -+ "os/exec" -+ "strings" - "sync/atomic" - "time" - ) - - var ( -- defaultNS = []string{"127.0.0.1:53", "[::1]:53"} -+ currentNS []string - getHostname = os.Hostname // variable for testing - ) - -+func getDefaultNS() []string { -+ var servers []string -+ for _, prop := range []string{"net.dns1", "net.dns2"} { -+ cmd := exec.Command("getprop", prop) -+ outputBytes, err := cmd.Output() -+ if err != nil { -+ continue -+ } -+ output := strings.Trim(string(outputBytes), "\n") -+ if ParseIP(output) != nil { -+ servers = append(servers, JoinHostPort(output, "53")) -+ } -+ } -+ -+ if len(servers) == 0 { -+ servers = []string{"8.8.8.8:53", "8.8.4.4:53", "4.2.2.1:53"} -+ } -+ -+ if !slicesEqual(currentNS, servers) { -+ fmt.Println("Using DNS servers:", servers) -+ currentNS = servers -+ } -+ -+ return currentNS -+} -+ -+func slicesEqual(a, b []string) bool { -+ if len(a) != len(b) { -+ return false -+ } -+ -+ for i := range a { -+ if a[i] != b[i] { -+ return false -+ } -+ } -+ -+ return true -+} -+ - type dnsConfig struct { - servers []string // server addresses (in host:port form) to use - search []string // rooted suffixes to append to local name -@@ -42,7 +85,7 @@ func dnsReadConfig(filename string) *dnsConfig { - } - file, err := open(filename) - if err != nil { -- conf.servers = defaultNS -+ conf.servers = getDefaultNS() - conf.search = dnsDefaultSearch() - conf.err = err - return conf -@@ -51,7 +94,7 @@ func dnsReadConfig(filename string) *dnsConfig { - if fi, err := file.file.Stat(); err == nil { - conf.mtime = fi.ModTime() - } else { -- conf.servers = defaultNS -+ conf.servers = getDefaultNS() - conf.search = dnsDefaultSearch() - conf.err = err - return conf -@@ -130,7 +173,7 @@ func dnsReadConfig(filename string) *dnsConfig { - } - } - if len(conf.servers) == 0 { -- conf.servers = defaultNS -+ conf.servers = getDefaultNS() - } - if len(conf.search) == 0 { - conf.search = dnsDefaultSearch() diff --git a/prepare-release.bash b/prepare-release.bash index f58a1186..1bd09bb5 100755 --- a/prepare-release.bash +++ b/prepare-release.bash @@ -3,7 +3,7 @@ set -e NEW_VERSION_NAME=$1 -OLD_VERSION_NAME=$(grep "versionName" "build.gradle" | awk '{print $2}') +OLD_VERSION_NAME=$(grep "versionName" "app/build.gradle" | awk '{print $2}') if [[ -z ${NEW_VERSION_NAME} ]] then echo "New version name is empty. Please set a new version. Current version: $OLD_VERSION_NAME" @@ -16,7 +16,7 @@ Checking for Syncthing Update ----------------------------- " PROJECT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -cd "ext/syncthing/src/github.com/syncthing/syncthing/" +cd "syncthing/src/github.com/syncthing/syncthing/" git fetch CURRENT_TAG=$(git describe) LATEST_TAG=$(git tag --sort=taggerdate | awk '!/rc/' | tail -1) @@ -24,7 +24,7 @@ if [ ${CURRENT_TAG} != ${LATEST_TAG} ] then git checkout -f ${LATEST_TAG} cd ${PROJECT_DIR} - git add "ext/syncthing/src/github.com/syncthing/syncthing" + git add "syncthing/src/github.com/syncthing/syncthing/" git commit -m "Updated Syncthing to $LATEST_TAG" ./gradlew cleanNative buildNative fi @@ -41,8 +41,8 @@ tx push -s # contents. So if a file was `touch`ed, it won't be updated by default. tx pull -a -f ./gradlew deleteUnsupportedPlayTranslations -git add -A "src/main/play/" -git add -A "src/main/res/values-*/strings.xml" +git add -A "app/src/main/play/" +git add -A "app/src/main/res/values-*/strings.xml" if ! git diff --cached --exit-code; then git commit -m "Imported translations" @@ -66,20 +66,20 @@ touch ${changelog_file} nano ${changelog_file} cat ${changelog_file} -mv ${changelog_file} "src/main/play/en-GB/whatsnew" +mv ${changelog_file} "app/src/main/play/en-GB/whatsnew" echo " Updating Version ----------------------------- " -OLD_VERSION_CODE=$(grep "versionCode" "build.gradle" -m 1 | awk '{print $2}') +OLD_VERSION_CODE=$(grep "versionCode" "app/build.gradle" -m 1 | awk '{print $2}') NEW_VERSION_CODE=$(($OLD_VERSION_CODE + 1)) -sed -i "s/versionCode $OLD_VERSION_CODE/versionCode $NEW_VERSION_CODE/" build.gradle +sed -i "s/versionCode $OLD_VERSION_CODE/versionCode $NEW_VERSION_CODE/" "app/build.gradle" -OLD_VERSION_NAME=$(grep "versionName" "build.gradle" | awk '{print $2}') +OLD_VERSION_NAME=$(grep "versionName" "app/build.gradle" | awk '{print $2}') sed -i "s/$OLD_VERSION_NAME/\"$1\"/" build.gradle -git add "build.gradle" "src/main/play/en-GB/whatsnew" +git add "app/build.gradle" "app/src/main/play/en-GB/whatsnew" git commit -m "Bumped version to $NEW_VERSION_NAME" git tag ${NEW_VERSION_NAME} diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 00000000..ff55c794 --- /dev/null +++ b/settings.gradle @@ -0,0 +1 @@ +include ':app', ':syncthing' diff --git a/syncthing/.gitignore b/syncthing/.gitignore new file mode 100644 index 00000000..548ff16b --- /dev/null +++ b/syncthing/.gitignore @@ -0,0 +1 @@ +gobuild/ diff --git a/syncthing/build-syncthing.bash b/syncthing/build-syncthing.bash new file mode 100755 index 00000000..a94ae8fc --- /dev/null +++ b/syncthing/build-syncthing.bash @@ -0,0 +1,65 @@ +#!/usr/bin/env bash + +set -e + +MODULE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +PROJECT_DIR="${MODULE_DIR}/.." +TARGET_SDK=$(grep "targetSdkVersion" "${PROJECT_DIR}/app/build.gradle" -m 1 | awk '{print $2}') +# Use seperate build dir so standalone ndk isn't deleted by `gradle clean` +BUILD_DIR="${MODULE_DIR}/gobuild" +export GOPATH="${MODULE_DIR}/" + +cd "${MODULE_DIR}/src/github.com/syncthing/syncthing" + +# Make sure all tags are available for git describe +# https://github.com/syncthing/syncthing-android/issues/872 +git fetch --tags + +for ANDROID_ARCH in arm x86 arm64; do + echo -e "Starting build for ${ANDROID_ARCH}\n" + case ${ANDROID_ARCH} in + arm) + GOARCH=arm + JNI_DIR="armeabi" + GCC="arm-linux-androideabi-clang" + ;; + arm64) + GOARCH=arm64 + JNI_DIR="arm64-v8a" + GCC="aarch64-linux-android-clang" + ;; + x86) + GOARCH=386 + JNI_DIR="x86" + GCC="i686-linux-android-clang" + ;; + *) + echo "Invalid architecture" + exit 1 + esac + + # Build standalone NDK toolchain if it doesn't exist. + # https://developer.android.com/ndk/guides/standalone_toolchain.html + STANDALONE_NDK_DIR="${BUILD_DIR}/standalone-ndk/android-${TARGET_SDK}-${GOARCH}" + + if [ ! -d "$STANDALONE_NDK_DIR" ]; then + echo -e "Building standalone NDK\n" + ${ANDROID_NDK_HOME}/build/tools/make-standalone-toolchain.sh \ + --platform=android-${TARGET_SDK} --arch=${ANDROID_ARCH} \ + --install-dir=${STANDALONE_NDK_DIR} + fi + + echo -e "Building Syncthing\n" + CGO_ENABLED=1 CC="${STANDALONE_NDK_DIR}/bin/${GCC}" \ + go run build.go -goos android -goarch ${GOARCH} -pkgdir "${BUILD_DIR}/go-packages" -no-upgrade build + + # Copy compiled binary to jniLibs folder + TARGET_DIR="${PROJECT_DIR}/app/src/main/jniLibs/${JNI_DIR}" + mkdir -p ${TARGET_DIR} + mv syncthing ${TARGET_DIR}/libsyncthing.so + + echo -e "Finished build for ${ANDROID_ARCH}\n" + +done + +echo -e "All builds finished" diff --git a/syncthing/build.gradle b/syncthing/build.gradle new file mode 100644 index 00000000..df3cb594 --- /dev/null +++ b/syncthing/build.gradle @@ -0,0 +1,12 @@ +task buildNative(type: Exec) { + outputs.upToDateWhen { false } + executable = './build-syncthing.bash' +} + +/** + * Use seperate task instead of standard clean(), so these folders aren't deleted by `gradle clean`. + */ +task cleanNative(type: Delete) { + delete "../app/src/main/jniLibs/" + delete "gobuild" +} diff --git a/syncthing/src/github.com/syncthing/syncthing b/syncthing/src/github.com/syncthing/syncthing new file mode 160000 index 00000000..cdbb32d0 --- /dev/null +++ b/syncthing/src/github.com/syncthing/syncthing @@ -0,0 +1 @@ +Subproject commit cdbb32d0f043c56c6787df3f036feabc8891fd3c