3 Commits

Author SHA1 Message Date
b359950e34 Fixes 2014-10-31 16:42:35 +01:00
614274c7d6 Happy Halloween! 2014-10-30 20:17:33 +01:00
78407c292a New material things 2014-10-25 14:35:31 +02:00
241 changed files with 2524 additions and 2288 deletions

View File

@ -20,15 +20,15 @@
apply plugin: 'com.android.application' apply plugin: 'com.android.application'
android { android {
compileSdkVersion 20 compileSdkVersion 21
buildToolsVersion '20.0.0' buildToolsVersion '21.0.2'
defaultConfig { defaultConfig {
applicationId "com.maskyn.fileeditorpro" applicationId "com.maskyn.fileeditorpro"
minSdkVersion 11 minSdkVersion 11
targetSdkVersion 19 targetSdkVersion 21
versionCode 29 versionCode 35
versionName "1.12" versionName "1.13.2"
} }
compileOptions { compileOptions {

View File

@ -39,7 +39,7 @@
android:hardwareAccelerated="true" android:hardwareAccelerated="true"
android:largeHeap="true" android:largeHeap="true"
android:supportsRtl="true" android:supportsRtl="true"
android:name="sharedcode.turboeditor.activity.MyApp" android:name="sharedcode.turboeditor.application.MyApp"
> >
<!-- android:alwaysRetainTaskState="true" --> <!-- android:alwaysRetainTaskState="true" -->

View File

@ -19,11 +19,9 @@
package com.maskyn.fileeditorpro; package com.maskyn.fileeditorpro;
import android.os.Bundle; import sharedcode.turboeditor.activity.MainActivity;
import sharedcode.turboeditor.activity.BaseHomeActivity; public class HomeActivity extends MainActivity {
public class HomeActivity extends BaseHomeActivity {
@Override @Override
public void displayInterstitial() { public void displayInterstitial() {

View File

@ -19,33 +19,35 @@
buildscript { buildscript {
repositories { repositories {
maven { url 'http://download.crashlytics.com/maven' } mavenCentral()
maven { url 'https://maven.fabric.io/repo' }
} }
dependencies { dependencies {
classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+' classpath 'io.fabric.tools:gradle:1.+'
} }
} }
apply plugin: 'com.android.application' apply plugin: 'com.android.application'
apply plugin: 'crashlytics' apply plugin: 'io.fabric'
repositories { repositories {
maven { url 'http://download.crashlytics.com/maven' } mavenCentral()
maven { url 'https://maven.fabric.io/repo' }
} }
android { android {
compileSdkVersion 20 compileSdkVersion 21
buildToolsVersion '20.0.0' buildToolsVersion '21.0.2'
defaultConfig { defaultConfig {
applicationId "com.maskyn.fileeditor" applicationId "com.maskyn.fileeditor"
minSdkVersion 11 minSdkVersion 11
targetSdkVersion 19 targetSdkVersion 21
versionCode 30 versionCode 35
versionName "1.13" versionName "1.13.2"
} }
compileOptions { compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7 sourceCompatibility JavaVersion.VERSION_1_7
@ -69,6 +71,8 @@ android {
dependencies { dependencies {
compile fileTree(dir: 'libs', include: '*.jar') compile fileTree(dir: 'libs', include: '*.jar')
compile project(':libraries:sharedCode') compile project(':libraries:sharedCode')
compile 'com.google.android.gms:play-services:5.0.89' compile 'com.google.android.gms:play-services:6.1.11'
compile 'com.crashlytics.android:crashlytics:1.+' compile('com.crashlytics.sdk.android:crashlytics:2.+@aar') {
transitive = true;
}
} }

View File

@ -43,7 +43,7 @@
android:hardwareAccelerated="true" android:hardwareAccelerated="true"
android:largeHeap="true" android:largeHeap="true"
android:supportsRtl="true" android:supportsRtl="true"
android:name="sharedcode.turboeditor.activity.MyApp" android:name="sharedcode.turboeditor.application.MyApp"
> >
<!-- android:alwaysRetainTaskState="true" --> <!-- android:alwaysRetainTaskState="true" -->

View File

@ -23,11 +23,12 @@ import android.os.Bundle;
import com.crashlytics.android.Crashlytics; import com.crashlytics.android.Crashlytics;
import sharedcode.turboeditor.activity.BaseHomeActivity; import io.fabric.sdk.android.Fabric;
import sharedcode.turboeditor.activity.MainActivity;
import sharedcode.turboeditor.preferences.PreferenceHelper; import sharedcode.turboeditor.preferences.PreferenceHelper;
import sharedcode.turboeditor.util.ProCheckUtils; import sharedcode.turboeditor.util.ProCheckUtils;
public class HomeActivity extends BaseHomeActivity { public class HomeActivity extends MainActivity {
private AdsHelper adsHelper; private AdsHelper adsHelper;
@ -36,7 +37,7 @@ public class HomeActivity extends BaseHomeActivity {
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
if(PreferenceHelper.getSendErrorReports(this)) if(PreferenceHelper.getSendErrorReports(this))
Crashlytics.start(this); Fabric.with(this, new Crashlytics());
// setup the ads // setup the ads
if(!ProCheckUtils.isPro(this)) if(!ProCheckUtils.isPro(this))
adsHelper = new AdsHelper(this); adsHelper = new AdsHelper(this);

View File

@ -24,7 +24,7 @@ buildscript {
jcenter() jcenter()
} }
dependencies { dependencies {
classpath 'com.android.tools.build:gradle:0.12.+' classpath 'com.android.tools.build:gradle:0.13.+'
// NOTE: Do not place your application dependencies here; they belong // NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files // in the individual module build.gradle files

View File

@ -2,89 +2,65 @@
<pre-dex-items> <pre-dex-items>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\pre-dexed\debug\eventbus-2.2.1-32e81c5612ed132ff771b5425053d87f4f6c68c5.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\commons-io-2.4-63b64e68cd19031cd252ac65a3ef94421c1bf0f4.jar"
jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\de.greenrobot\eventbus\2.2.1\a18ff12a9ab5ae52fd30d42f134517997568231e\eventbus-2.2.1.jar" jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.4\b1b6ea3b7e4aa4f492509a4952029cd8e48019ad\commons-io-2.4.jar"
jumboMode="false" jumboMode="false"
revision="20.0.0" revision="21.0.2"
sha1="a18ff12a9ab5ae52fd30d42f134517997568231e"/> sha1="b1b6ea3b7e4aa4f492509a4952029cd8e48019ad"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\release\classes-8e5760a518ace60ad40fe7ea0fedc1faa57ee342.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.crashlytics.sdk.android\beta\1.0.1\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="ac8bb9f7af7ca5dae03650dc1b43a305e1df2f1b"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\release\classes-4dd6beddde59ff8bd6c22bd0d65ac974f7e489d2.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="7a292d3770cffc1bb19e8f0232954da498bb87ea"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-40c5f3698ba688207904eaae4b4b57dbf850297e.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.crashlytics.sdk.android\answers\1.0.0\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="a8c73f3b98c2732c03ea09378ca322b56dea153a"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\commons-lang3-3.1-84728078c80f2c8637e0c3fe426ad61433c75bb6.jar"
jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.1\905075e6c80f206bbe6cf1e809d2caa69f420c76\commons-lang3-3.1.jar"
jumboMode="false"
revision="21.0.2"
sha1="905075e6c80f206bbe6cf1e809d2caa69f420c76"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-515446996fed08836a9331ef47b508a0383ffa22.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\turbo-editor.libraries\RootCommands\unspecified\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="e3bacad84e40c773d40010a5520810920887a920"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-52b3d51bec6ecfeacbc105275c0e6a98b8869b1b.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.crashlytics.sdk.android\crashlytics\2.0.0\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="832029c6f15447b2cb64ca4f8cf12172c9091857"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-9b612f0cb16e63277808158fe971bb4f40c98d29.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-9b612f0cb16e63277808158fe971bb4f40c98d29.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\com.github.gabrielemariotti.changeloglib\library\1.5.1\classes.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\com.github.gabrielemariotti.changeloglib\library\1.5.1\classes.jar"
jumboMode="false" jumboMode="false"
revision="19.1.0" revision="20.0.0"
sha1="74a89f0f8b56d9f11d70b8d8134cf4109f4797dc"/> sha1="74a89f0f8b56d9f11d70b8d8134cf4109f4797dc"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-33698a085ac2060587beda19b5b3900d3dffd1e7.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.android.support\support-v4\21.0.0\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="686344a780033e4ba22b926cd225f8d4941247e6"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\library-2.4.0-6b043a8574fb97c742ca3065362b2a29e8f870bc.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\library-2.4.0-6b043a8574fb97c742ca3065362b2a29e8f870bc.jar"
jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\com.nineoldandroids\library\2.4.0\e9b63380f3a242dbdbf103a2355ad7e43bad17cb\library-2.4.0.jar" jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\com.nineoldandroids\library\2.4.0\e9b63380f3a242dbdbf103a2355ad7e43bad17cb\library-2.4.0.jar"
jumboMode="false" jumboMode="false"
revision="19.1.0" revision="19.1.0"
sha1="e9b63380f3a242dbdbf103a2355ad7e43bad17cb"/> sha1="e9b63380f3a242dbdbf103a2355ad7e43bad17cb"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\pre-dexed\debug\commons-io-2.4-63b64e68cd19031cd252ac65a3ef94421c1bf0f4.jar"
jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.4\b1b6ea3b7e4aa4f492509a4952029cd8e48019ad\commons-io-2.4.jar"
jumboMode="false"
revision="20.0.0"
sha1="b1b6ea3b7e4aa4f492509a4952029cd8e48019ad"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\pre-dexed\debug\classes-da434e33e14290126d2ad09adf85ad0bbd76f025.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\exploded-aar\TurboMaterialEditor.libraries\FloatingActionButton\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="2f3117da0016b1126fafe7fb332a45d2f910d76c"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-sources-58cfedaebe3b94ec0eaa2ede4e66aae8dbe309b0.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3-sources.jar"
jumboMode="false"
revision="19.1.0"
sha1="77979eaa98f90806f984155f44f63cc1fb60ac25"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-9db20cdcb8ae72104757d81297c98978c65bd91b.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3.jar"
jumboMode="false"
revision="20.0.0"
sha1="591d72211acc0b909b79c840e0b3ed9a0982d807"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-sources-436707958bb47977373cb4a2d842cdbf635fd840.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3-sources.jar"
jumboMode="false"
revision="20.0.0"
sha1="77979eaa98f90806f984155f44f63cc1fb60ac25"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-9b612f0cb16e63277808158fe971bb4f40c98d29.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\com.github.gabrielemariotti.changeloglib\library\1.5.1\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="74a89f0f8b56d9f11d70b8d8134cf4109f4797dc"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\support-v4-19.0.1-f87b13e7ed00736c2050eda75093bf42b0503c64.jar"
jar="C:\Users\Vlad\AppData\Local\Android\android-sdk\extras\android\m2repository\com\android\support\support-v4\19.0.1\support-v4-19.0.1.jar"
jumboMode="false"
revision="19.1.0"
sha1="587da9a481ffd341d2fa091704489b89845ddacd"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\support-annotations-20.0.0-be727b9c9ce08c6ee055559b9506b675c13db989.jar"
jar="C:\Users\Vlad\AppData\Local\Android\android-sdk\extras\android\m2repository\com\android\support\support-annotations\20.0.0\support-annotations-20.0.0.jar"
jumboMode="false"
revision="20.0.0"
sha1="9d9013e9ff35fc3756411e62873c363c70c638fa"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\pre-dexed\release\classes-3e47e18f46719c7bf296f4b49ff03aaa3d406ba6.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\exploded-aar\TurboMaterialEditor.libraries\sharedCode\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="a593d4ce7ccdfa1eac8d97a82db64f23614b59a1"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\pre-dexed\release\crashlytics-1.1.13-7bbec76a44aa9cc3279ec6bff22b2c929a8abf67.jar"
jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\com.crashlytics.android\crashlytics\1.1.13\e821eafa1bf489a26bdb71f95078c26785b37a1\crashlytics-1.1.13.jar"
jumboMode="false"
revision="20.0.0"
sha1="0e821eafa1bf489a26bdb71f95078c26785b37a1"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-sources-58cfedaebe3b94ec0eaa2ede4e66aae8dbe309b0.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3-sources.jar"
jumboMode="false"
revision="20.0.0"
sha1="77979eaa98f90806f984155f44f63cc1fb60ac25"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-65b2b356e3f2da4b67e00aba70923d6321852204.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-65b2b356e3f2da4b67e00aba70923d6321852204.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3.jar"
@ -92,77 +68,35 @@
revision="20.0.0" revision="20.0.0"
sha1="591d72211acc0b909b79c840e0b3ed9a0982d807"/> sha1="591d72211acc0b909b79c840e0b3ed9a0982d807"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\pre-dexed\debug\support-v4-19.0.1-f87b13e7ed00736c2050eda75093bf42b0503c64.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-82d5b6cab7f16bad663de7c7008673037efb0e1b.jar"
jar="C:\Users\Vlad\AppData\Local\Android\android-sdk\extras\android\m2repository\com\android\support\support-v4\19.0.1\support-v4-19.0.1.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\FloatingActionButton\unspecified\classes.jar"
jumboMode="false" jumboMode="false"
revision="20.0.0" revision="21.0.2"
sha1="587da9a481ffd341d2fa091704489b89845ddacd"/> sha1="a1fbf4d4c1f1e1fe357b9ed1de15f4eea2217274"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\pre-dexed\debug\support-v4-19.1.0-cf7033c44b86e758f85990185111614bac3ecfa8.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-7a329e7f23515542bf02d96773d08da1d2333a7b.jar"
jar="C:\Users\Vlad\AppData\Local\Android\android-sdk\extras\android\m2repository\com\android\support\support-v4\19.1.0\support-v4-19.1.0.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\turbo-editor.libraries\FloatingActionButton\unspecified\classes.jar"
jumboMode="false" jumboMode="false"
revision="20.0.0" revision="21.0.2"
sha1="85f201b380937e61a9dce6ca90ccf6872abbfb67"/> sha1="a1fbf4d4c1f1e1fe357b9ed1de15f4eea2217274"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\pre-dexed\debug\classes-a52f37b7ca7cde7ab02ff10bba80d1c496284125.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\internal_impl-21.0.0-74269e33561519e0fdabab9550f16a5986255be9.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\exploded-aar\TurboMaterialEditor.libraries\FloatingActionButton\unspecified\classes.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.android.support\support-v4\21.0.0\libs\internal_impl-21.0.0.jar"
jumboMode="false" jumboMode="false"
revision="20.0.0" revision="21.0.2"
sha1="2f3117da0016b1126fafe7fb332a45d2f910d76c"/> sha1="1609e6d42d0480b0f4188e2c29f75388fa12a8f0"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\pre-dexed\debug\classes-bfc447e4dbe83598b94dbdc8e38492cbbda6ebb2.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\exploded-aar\TurboMaterialEditor.libraries\RootCommands\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="cdecd8167dfb75d5785decb911fc4516445dd6a6"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\library-2.4.0-6b043a8574fb97c742ca3065362b2a29e8f870bc.jar"
jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\com.nineoldandroids\library\2.4.0\e9b63380f3a242dbdbf103a2355ad7e43bad17cb\library-2.4.0.jar"
jumboMode="false"
revision="20.0.0"
sha1="e9b63380f3a242dbdbf103a2355ad7e43bad17cb"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\eventbus-2.2.1-32e81c5612ed132ff771b5425053d87f4f6c68c5.jar"
jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\de.greenrobot\eventbus\2.2.1\a18ff12a9ab5ae52fd30d42f134517997568231e\eventbus-2.2.1.jar"
jumboMode="false"
revision="19.1.0"
sha1="a18ff12a9ab5ae52fd30d42f134517997568231e"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\pre-dexed\release\classes-579a5ce52888f504a812e0f68758a11f20a21c15.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\exploded-aar\TurboMaterialEditor.libraries\sharedCode\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="a593d4ce7ccdfa1eac8d97a82db64f23614b59a1"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-30cc9565ecef1e8ae8577530d7ddd41993d192d7.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-30cc9565ecef1e8ae8577530d7ddd41993d192d7.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\RootCommands\unspecified\classes.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\RootCommands\unspecified\classes.jar"
jumboMode="false" jumboMode="false"
revision="19.1.0" revision="21.0.2"
sha1="cb3d22565863773944a8c15de408e864e34d6da1"/> sha1="e3bacad84e40c773d40010a5520810920887a920"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-24b647622164ce26bc5d0be361e05056efc68e13.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-d44090b77791e486eccbc4d8859b00a83623bf2b.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\exploded-aar\TurboMaterialEditor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.google.android.gms\play-services\6.1.11\classes.jar"
jumboMode="false" jumboMode="false"
revision="20.0.0" revision="21.0.2"
sha1="591d72211acc0b909b79c840e0b3ed9a0982d807"/> sha1="0f700f6802ba1a1f1fa7ac26d5db0666a89d75a6"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-91de6979bb6be1b46cde32b462c23831eadd01d4.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.github.gabrielemariotti.changeloglib\library\1.5.1\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="74a89f0f8b56d9f11d70b8d8134cf4109f4797dc"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-30cc9565ecef1e8ae8577530d7ddd41993d192d7.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\RootCommands\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="85e7b55f468c5591965a5171179d3858b46822a9"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-515446996fed08836a9331ef47b508a0383ffa22.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\turbo-editor.libraries\RootCommands\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="85e7b55f468c5591965a5171179d3858b46822a9"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-bcfe21eb1248db73c27c811996e28274cf39b024.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-bcfe21eb1248db73c27c811996e28274cf39b024.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\classes.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\classes.jar"
@ -170,77 +104,95 @@
revision="19.1.0" revision="19.1.0"
sha1="8203f36efafa2a6ef438b83fc86b9bdc469e7368"/> sha1="8203f36efafa2a6ef438b83fc86b9bdc469e7368"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\commons-lang3-3.1-84728078c80f2c8637e0c3fe426ad61433c75bb6.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-sources-436707958bb47977373cb4a2d842cdbf635fd840.jar"
jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.1\905075e6c80f206bbe6cf1e809d2caa69f420c76\commons-lang3-3.1.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3-sources.jar"
jumboMode="false"
revision="21.0.2"
sha1="77979eaa98f90806f984155f44f63cc1fb60ac25"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-30cc9565ecef1e8ae8577530d7ddd41993d192d7.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\RootCommands\unspecified\classes.jar"
jumboMode="false" jumboMode="false"
revision="20.0.0" revision="20.0.0"
sha1="905075e6c80f206bbe6cf1e809d2caa69f420c76"/> sha1="85e7b55f468c5591965a5171179d3858b46822a9"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\support-annotations-21.0.0-7b7e20ddbdfce40d4a29c1e68c2dbbc5bb512ab5.jar"
jar="C:\Users\Vlad\AppData\Local\Android\android-sdk\extras\android\m2repository\com\android\support\support-annotations\21.0.0\support-annotations-21.0.0.jar"
jumboMode="false"
revision="21.0.2"
sha1="1a578b9607b36266c63d43a4fa0ab5664dbe911e"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-bcfe21eb1248db73c27c811996e28274cf39b024.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="991591ff9dbe9e472a47cf66fe6c120f89a68eaa"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-fb4f15a411cfb0bffc51b68ad64a4794d3d67ae4.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\com.android.support\appcompat-v7\21.0.0\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="95fd37732ec852e99f07eeb516a3650172f1d136"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-sources-58cfedaebe3b94ec0eaa2ede4e66aae8dbe309b0.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3-sources.jar"
jumboMode="false"
revision="19.1.0"
sha1="77979eaa98f90806f984155f44f63cc1fb60ac25"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-82d5b6cab7f16bad663de7c7008673037efb0e1b.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-82d5b6cab7f16bad663de7c7008673037efb0e1b.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\FloatingActionButton\unspecified\classes.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\FloatingActionButton\unspecified\classes.jar"
jumboMode="false" jumboMode="false"
revision="19.1.0" revision="19.1.0"
sha1="2e2f6526f3c5fb34230d14e52bdc24addb67ea9f"/> sha1="2e2f6526f3c5fb34230d14e52bdc24addb67ea9f"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\release\classes-4dd6beddde59ff8bd6c22bd0d65ac974f7e489d2.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="84a25d78b651ad8b1fb73e463fde4d34a4e79ca6"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\pre-dexed\debug\classes-2ad27a3265673aeeb8f40e4322d8e19509329c96.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\exploded-aar\com.github.gabrielemariotti.changeloglib\library\1.5.1\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="74a89f0f8b56d9f11d70b8d8134cf4109f4797dc"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-bcfe21eb1248db73c27c811996e28274cf39b024.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="84a25d78b651ad8b1fb73e463fde4d34a4e79ca6"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-82d5b6cab7f16bad663de7c7008673037efb0e1b.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\FloatingActionButton\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="df1a8540495d6724b8582db31fcdd49b04d8b707"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-7a329e7f23515542bf02d96773d08da1d2333a7b.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\turbo-editor.libraries\FloatingActionButton\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="df1a8540495d6724b8582db31fcdd49b04d8b707"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-65b2b356e3f2da4b67e00aba70923d6321852204.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-65b2b356e3f2da4b67e00aba70923d6321852204.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3.jar"
jumboMode="false" jumboMode="false"
revision="21.0.2"
sha1="591d72211acc0b909b79c840e0b3ed9a0982d807"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-9db20cdcb8ae72104757d81297c98978c65bd91b.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3.jar"
jumboMode="false"
revision="21.0.2"
sha1="591d72211acc0b909b79c840e0b3ed9a0982d807"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-9b612f0cb16e63277808158fe971bb4f40c98d29.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\com.github.gabrielemariotti.changeloglib\library\1.5.1\classes.jar"
jumboMode="false"
revision="19.1.0" revision="19.1.0"
sha1="591d72211acc0b909b79c840e0b3ed9a0982d807"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-2e38d54a78dd518320bb6abe3d8931a19ff26792.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\exploded-aar\TurboMaterialEditor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3.jar"
jumboMode="false"
revision="20.0.0"
sha1="591d72211acc0b909b79c840e0b3ed9a0982d807"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\pre-dexed\debug\classes-0a2ec632e1127b260f2b888ca5539fd41a1a638b.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app-pro\build\intermediates\exploded-aar\com.github.gabrielemariotti.changeloglib\library\1.5.1\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="74a89f0f8b56d9f11d70b8d8134cf4109f4797dc"/> sha1="74a89f0f8b56d9f11d70b8d8134cf4109f4797dc"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\pre-dexed\debug\classes-a8678f35ea62f18f2f7b60a15203aa6c74b5e559.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\library-2.4.0-6b043a8574fb97c742ca3065362b2a29e8f870bc.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\exploded-aar\com.google.android.gms\play-services\5.0.89\classes.jar" jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\com.nineoldandroids\library\2.4.0\e9b63380f3a242dbdbf103a2355ad7e43bad17cb\library-2.4.0.jar"
jumboMode="false" jumboMode="false"
revision="20.0.0" revision="21.0.2"
sha1="d71573c9c5ea98a8db47ad6ff993a63d492b3bfa"/> sha1="e9b63380f3a242dbdbf103a2355ad7e43bad17cb"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-579992e349b2c32e50f8907b9538ad0aa6df57b4.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\commons-lang3-3.1-84728078c80f2c8637e0c3fe426ad61433c75bb6.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.google.android.gms\play-services\5.0.89\classes.jar" jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.1\905075e6c80f206bbe6cf1e809d2caa69f420c76\commons-lang3-3.1.jar"
jumboMode="false" jumboMode="false"
revision="20.0.0" revision="20.0.0"
sha1="d71573c9c5ea98a8db47ad6ff993a63d492b3bfa"/> sha1="905075e6c80f206bbe6cf1e809d2caa69f420c76"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-e4e5a16633bd011fd3d270f1bcdf565f2bd9f2b3.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.crashlytics.sdk.android\beta\1.0.0\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="068f232cbc319d814ad6ad01fd0ed0ac6d6c5414"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\release\classes-28f23d0edd8f234d170b23285799ff5873131bbe.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\io.fabric.sdk.android\fabric\1.0.1\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="7b46e0b1175dbb7d47f130d6ed14097340e1b77f"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-39edd57531ecc124992725bca5e8b42be236e3ec.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\io.fabric.sdk.android\fabric\1.0.0\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="20a6dfbe395a3557a58a3d9f4460c15b0ce04d1e"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\commons-io-2.4-63b64e68cd19031cd252ac65a3ef94421c1bf0f4.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\commons-io-2.4-63b64e68cd19031cd252ac65a3ef94421c1bf0f4.jar"
jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.4\b1b6ea3b7e4aa4f492509a4952029cd8e48019ad\commons-io-2.4.jar" jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.4\b1b6ea3b7e4aa4f492509a4952029cd8e48019ad\commons-io-2.4.jar"
@ -248,10 +200,88 @@
revision="19.1.0" revision="19.1.0"
sha1="b1b6ea3b7e4aa4f492509a4952029cd8e48019ad"/> sha1="b1b6ea3b7e4aa4f492509a4952029cd8e48019ad"/>
<item <item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\pre-dexed\debug\classes-c9a98cf79b48106440348a9fa210060d1b8b2647.jar" dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-91de6979bb6be1b46cde32b462c23831eadd01d4.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\TurboMaterialEditor\app\build\intermediates\exploded-aar\TurboMaterialEditor.libraries\RootCommands\unspecified\classes.jar" jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.github.gabrielemariotti.changeloglib\library\1.5.1\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="74a89f0f8b56d9f11d70b8d8134cf4109f4797dc"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\library-2.4.0-6b043a8574fb97c742ca3065362b2a29e8f870bc.jar"
jar="C:\Users\Vlad\.gradle\caches\modules-2\files-2.1\com.nineoldandroids\library\2.4.0\e9b63380f3a242dbdbf103a2355ad7e43bad17cb\library-2.4.0.jar"
jumboMode="false" jumboMode="false"
revision="20.0.0" revision="20.0.0"
sha1="cdecd8167dfb75d5785decb911fc4516445dd6a6"/> sha1="e9b63380f3a242dbdbf103a2355ad7e43bad17cb"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-sources-58cfedaebe3b94ec0eaa2ede4e66aae8dbe309b0.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3-sources.jar"
jumboMode="false"
revision="21.0.2"
sha1="77979eaa98f90806f984155f44f63cc1fb60ac25"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-65b2b356e3f2da4b67e00aba70923d6321852204.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3.jar"
jumboMode="false"
revision="19.1.0"
sha1="591d72211acc0b909b79c840e0b3ed9a0982d807"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\juniversalchardet-1.0.3-sources-58cfedaebe3b94ec0eaa2ede4e66aae8dbe309b0.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\libs\juniversalchardet-1.0.3-sources.jar"
jumboMode="false"
revision="20.0.0"
sha1="77979eaa98f90806f984155f44f63cc1fb60ac25"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-9b612f0cb16e63277808158fe971bb4f40c98d29.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\com.github.gabrielemariotti.changeloglib\library\1.5.1\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="74a89f0f8b56d9f11d70b8d8134cf4109f4797dc"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\release\classes-5c418babb57b5fe1e6e82a2f3ba51f2da968ba87.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.crashlytics.sdk.android\crashlytics\2.0.1\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="1adf75e3d87301236c2d4de507b4a668092ff070"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-82d5b6cab7f16bad663de7c7008673037efb0e1b.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\FloatingActionButton\unspecified\classes.jar"
jumboMode="false"
revision="20.0.0"
sha1="df1a8540495d6724b8582db31fcdd49b04d8b707"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-30cc9565ecef1e8ae8577530d7ddd41993d192d7.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\RootCommands\unspecified\classes.jar"
jumboMode="false"
revision="19.1.0"
sha1="cb3d22565863773944a8c15de408e864e34d6da1"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\debug\classes-aa4ad551e94dc47c364b1b7f46bb2eb1b6ceed85.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\21.0.0\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="95fd37732ec852e99f07eeb516a3650172f1d136"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-e90e1f4e06d0f5aa27166f2f8f5fcea319efbd95.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\com.android.support\support-v4\21.0.0\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="686344a780033e4ba22b926cd225f8d4941247e6"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\classes-bcfe21eb1248db73c27c811996e28274cf39b024.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\turbo-editor.libraries\sharedCode\unspecified\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="7a292d3770cffc1bb19e8f0232954da498bb87ea"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\pre-dexed\debug\internal_impl-21.0.0-b15535acecaec42d04239e17e0a03ab072a43104.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app-pro\build\intermediates\exploded-aar\com.android.support\support-v4\21.0.0\libs\internal_impl-21.0.0.jar"
jumboMode="false"
revision="21.0.2"
sha1="1609e6d42d0480b0f4188e2c29f75388fa12a8f0"/>
<item
dex="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\pre-dexed\release\classes-354dd0849ce9caff8f6b5b0f6428cf9e2ccbe27e.jar"
jar="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\app\build\intermediates\exploded-aar\com.crashlytics.sdk.android\answers\1.0.1\classes.jar"
jumboMode="false"
revision="21.0.2"
sha1="7363bd9461c166e18592b58547720fbad8d4b0bc"/>
</pre-dex-items> </pre-dex-items>

Binary file not shown.

View File

@ -1,25 +1,6 @@
# #Wed Oct 22 18:10:25 CEST 2014
# Copyright (C) 2014 Vlad Mihalachi
#
# This file is part of Turbo Editor.
#
# Turbo Editor is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Turbo Editor is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#Wed Apr 10 15:27:10 PDT 2013
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip distributionUrl=https\://services.gradle.org/distributions/gradle-2.1-all.zip

View File

@ -1,12 +1,12 @@
apply plugin: 'com.android.library' apply plugin: 'com.android.library'
android { android {
compileSdkVersion 20 compileSdkVersion 21
buildToolsVersion '20.0.0' buildToolsVersion '21.0.2'
defaultConfig { defaultConfig {
applicationId 'com.faizmalkani.floatingactionbutton' applicationId 'com.faizmalkani.floatingactionbutton'
minSdkVersion 7 minSdkVersion 7
targetSdkVersion 19 targetSdkVersion 21
versionName "1.0" versionName "1.0"
versionCode 1 versionCode 1
} }
@ -22,6 +22,10 @@ android {
assets.srcDirs = ['assets'] assets.srcDirs = ['assets']
} }
} }
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
} }
dependencies { dependencies {

View File

@ -5,9 +5,14 @@ package com.faizmalkani.floatingactionbutton;
public final class BuildConfig { public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true"); public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String PACKAGE_NAME = "com.faizmalkani.floatingactionbutton"; public static final String APPLICATION_ID = "com.faizmalkani.floatingactionbutton";
public static final String BUILD_TYPE = "debug"; public static final String BUILD_TYPE = "debug";
public static final String FLAVOR = ""; public static final String FLAVOR = "";
public static final int VERSION_CODE = 1; public static final int VERSION_CODE = 1;
public static final String VERSION_NAME = "1.0"; public static final String VERSION_NAME = "1.0";
/**
* @deprecated Use {@link #APPLICATION_ID}
*/
@Deprecated
public static final String PACKAGE_NAME = "com.faizmalkani.floatingactionbutton";
} }

View File

@ -5,9 +5,14 @@ package com.faizmalkani.floatingactionbutton;
public final class BuildConfig { public final class BuildConfig {
public static final boolean DEBUG = false; public static final boolean DEBUG = false;
public static final String PACKAGE_NAME = "com.faizmalkani.floatingactionbutton"; public static final String APPLICATION_ID = "com.faizmalkani.floatingactionbutton";
public static final String BUILD_TYPE = "release"; public static final String BUILD_TYPE = "release";
public static final String FLAVOR = ""; public static final String FLAVOR = "";
public static final int VERSION_CODE = 1; public static final int VERSION_CODE = 1;
public static final String VERSION_NAME = "1.0"; public static final String VERSION_NAME = "1.0";
/**
* @deprecated Use {@link #APPLICATION_ID}
*/
@Deprecated
public static final String PACKAGE_NAME = "com.faizmalkani.floatingactionbutton";
} }

View File

@ -5,9 +5,14 @@ package com.faizmalkani.floatingactionbutton.test;
public final class BuildConfig { public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true"); public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String PACKAGE_NAME = "com.faizmalkani.floatingactionbutton.test"; public static final String APPLICATION_ID = "com.faizmalkani.floatingactionbutton.test";
public static final String BUILD_TYPE = "debug"; public static final String BUILD_TYPE = "debug";
public static final String FLAVOR = ""; public static final String FLAVOR = "";
public static final int VERSION_CODE = 1; public static final int VERSION_CODE = 1;
public static final String VERSION_NAME = "1.0"; public static final String VERSION_NAME = "1.0";
/**
* @deprecated Use {@link #APPLICATION_ID}
*/
@Deprecated
public static final String PACKAGE_NAME = "com.faizmalkani.floatingactionbutton.test";
} }

View File

@ -17,7 +17,7 @@ theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>") "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type. containing a value of this type.
*/ */
public static int color=0x7f010001; public static int colour=0x7f010001;
/** <p>Must be an integer value, such as "<code>100</code>". /** <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form <p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or "<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
@ -66,14 +66,14 @@ containing a value of this type.
<colgroup align="left" /> <colgroup align="left" />
<colgroup align="left" /> <colgroup align="left" />
<tr><th>Attribute</th><th>Description</th></tr> <tr><th>Attribute</th><th>Description</th></tr>
<tr><td><code>{@link #FloatingActionButton_color com.faizmalkani.floatingactionbutton:color}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_colour com.faizmalkani.floatingactionbutton:colour}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_drawable com.faizmalkani.floatingactionbutton:drawable}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_drawable com.faizmalkani.floatingactionbutton:drawable}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowColor com.faizmalkani.floatingactionbutton:shadowColor}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowColor com.faizmalkani.floatingactionbutton:shadowColor}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowDx com.faizmalkani.floatingactionbutton:shadowDx}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowDx com.faizmalkani.floatingactionbutton:shadowDx}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowDy com.faizmalkani.floatingactionbutton:shadowDy}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowDy com.faizmalkani.floatingactionbutton:shadowDy}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowRadius com.faizmalkani.floatingactionbutton:shadowRadius}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowRadius com.faizmalkani.floatingactionbutton:shadowRadius}</code></td><td></td></tr>
</table> </table>
@see #FloatingActionButton_color @see #FloatingActionButton_colour
@see #FloatingActionButton_drawable @see #FloatingActionButton_drawable
@see #FloatingActionButton_shadowColor @see #FloatingActionButton_shadowColor
@see #FloatingActionButton_shadowDx @see #FloatingActionButton_shadowDx
@ -85,7 +85,7 @@ containing a value of this type.
0x7f010004, 0x7f010005 0x7f010004, 0x7f010005
}; };
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#color} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#colour}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -96,9 +96,9 @@ containing a value of this type.
theme attribute (in the form theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>") "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:color @attr name com.faizmalkani.floatingactionbutton:colour
*/ */
public static final int FloatingActionButton_color = 1; public static int FloatingActionButton_colour = 1;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#drawable} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#drawable}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -112,7 +112,7 @@ theme attribute (in the form
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:drawable @attr name com.faizmalkani.floatingactionbutton:drawable
*/ */
public static final int FloatingActionButton_drawable = 0; public static int FloatingActionButton_drawable = 0;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowColor} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowColor}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -126,7 +126,7 @@ theme attribute (in the form
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:shadowColor @attr name com.faizmalkani.floatingactionbutton:shadowColor
*/ */
public static final int FloatingActionButton_shadowColor = 5; public static int FloatingActionButton_shadowColor = 5;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowDx} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowDx}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -140,7 +140,7 @@ theme attribute (in the form
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:shadowDx @attr name com.faizmalkani.floatingactionbutton:shadowDx
*/ */
public static final int FloatingActionButton_shadowDx = 3; public static int FloatingActionButton_shadowDx = 3;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowDy} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowDy}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -154,7 +154,7 @@ theme attribute (in the form
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:shadowDy @attr name com.faizmalkani.floatingactionbutton:shadowDy
*/ */
public static final int FloatingActionButton_shadowDy = 4; public static int FloatingActionButton_shadowDy = 4;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowRadius} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowRadius}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -168,6 +168,6 @@ theme attribute (in the form
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:shadowRadius @attr name com.faizmalkani.floatingactionbutton:shadowRadius
*/ */
public static final int FloatingActionButton_shadowRadius = 2; public static int FloatingActionButton_shadowRadius = 2;
}; };
} }

View File

@ -17,7 +17,7 @@ theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>") "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type. containing a value of this type.
*/ */
public static int color=0x7f010001; public static int colour=0x7f010001;
/** <p>Must be an integer value, such as "<code>100</code>". /** <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form <p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or "<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
@ -66,14 +66,14 @@ containing a value of this type.
<colgroup align="left" /> <colgroup align="left" />
<colgroup align="left" /> <colgroup align="left" />
<tr><th>Attribute</th><th>Description</th></tr> <tr><th>Attribute</th><th>Description</th></tr>
<tr><td><code>{@link #FloatingActionButton_color com.faizmalkani.floatingactionbutton:color}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_colour com.faizmalkani.floatingactionbutton:colour}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_drawable com.faizmalkani.floatingactionbutton:drawable}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_drawable com.faizmalkani.floatingactionbutton:drawable}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowColor com.faizmalkani.floatingactionbutton:shadowColor}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowColor com.faizmalkani.floatingactionbutton:shadowColor}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowDx com.faizmalkani.floatingactionbutton:shadowDx}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowDx com.faizmalkani.floatingactionbutton:shadowDx}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowDy com.faizmalkani.floatingactionbutton:shadowDy}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowDy com.faizmalkani.floatingactionbutton:shadowDy}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowRadius com.faizmalkani.floatingactionbutton:shadowRadius}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowRadius com.faizmalkani.floatingactionbutton:shadowRadius}</code></td><td></td></tr>
</table> </table>
@see #FloatingActionButton_color @see #FloatingActionButton_colour
@see #FloatingActionButton_drawable @see #FloatingActionButton_drawable
@see #FloatingActionButton_shadowColor @see #FloatingActionButton_shadowColor
@see #FloatingActionButton_shadowDx @see #FloatingActionButton_shadowDx
@ -85,7 +85,7 @@ containing a value of this type.
0x7f010004, 0x7f010005 0x7f010004, 0x7f010005
}; };
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#color} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#colour}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -96,9 +96,9 @@ containing a value of this type.
theme attribute (in the form theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>") "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:color @attr name com.faizmalkani.floatingactionbutton:colour
*/ */
public static final int FloatingActionButton_color = 1; public static int FloatingActionButton_colour = 1;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#drawable} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#drawable}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -112,7 +112,7 @@ theme attribute (in the form
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:drawable @attr name com.faizmalkani.floatingactionbutton:drawable
*/ */
public static final int FloatingActionButton_drawable = 0; public static int FloatingActionButton_drawable = 0;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowColor} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowColor}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -126,7 +126,7 @@ theme attribute (in the form
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:shadowColor @attr name com.faizmalkani.floatingactionbutton:shadowColor
*/ */
public static final int FloatingActionButton_shadowColor = 5; public static int FloatingActionButton_shadowColor = 5;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowDx} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowDx}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -140,7 +140,7 @@ theme attribute (in the form
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:shadowDx @attr name com.faizmalkani.floatingactionbutton:shadowDx
*/ */
public static final int FloatingActionButton_shadowDx = 3; public static int FloatingActionButton_shadowDx = 3;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowDy} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowDy}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -154,7 +154,7 @@ theme attribute (in the form
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:shadowDy @attr name com.faizmalkani.floatingactionbutton:shadowDy
*/ */
public static final int FloatingActionButton_shadowDy = 4; public static int FloatingActionButton_shadowDy = 4;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowRadius} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.R.attr#shadowRadius}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -168,6 +168,6 @@ theme attribute (in the form
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton:shadowRadius @attr name com.faizmalkani.floatingactionbutton:shadowRadius
*/ */
public static final int FloatingActionButton_shadowRadius = 2; public static int FloatingActionButton_shadowRadius = 2;
}; };
} }

View File

@ -8,7 +8,7 @@ package com.faizmalkani.floatingactionbutton;
public final class R { public final class R {
public static final class attr { public static final class attr {
public static final int color = 0x7f010001; public static final int colour = 0x7f010001;
public static final int drawable = 0x7f010000; public static final int drawable = 0x7f010000;
public static final int shadowColor = 0x7f010005; public static final int shadowColor = 0x7f010005;
public static final int shadowDx = 0x7f010003; public static final int shadowDx = 0x7f010003;
@ -17,7 +17,7 @@ public final class R {
} }
public static final class styleable { public static final class styleable {
public static final int[] FloatingActionButton = { 0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003, 0x7f010004, 0x7f010005 }; public static final int[] FloatingActionButton = { 0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003, 0x7f010004, 0x7f010005 };
public static final int FloatingActionButton_color = 1; public static final int FloatingActionButton_colour = 1;
public static final int FloatingActionButton_drawable = 0; public static final int FloatingActionButton_drawable = 0;
public static final int FloatingActionButton_shadowColor = 5; public static final int FloatingActionButton_shadowColor = 5;
public static final int FloatingActionButton_shadowDx = 3; public static final int FloatingActionButton_shadowDx = 3;

View File

@ -17,7 +17,7 @@ theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>") "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type. containing a value of this type.
*/ */
public static final int color=0x7f010001; public static final int colour=0x7f010001;
/** <p>Must be an integer value, such as "<code>100</code>". /** <p>Must be an integer value, such as "<code>100</code>".
<p>This may also be a reference to a resource (in the form <p>This may also be a reference to a resource (in the form
"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or "<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
@ -66,14 +66,14 @@ containing a value of this type.
<colgroup align="left" /> <colgroup align="left" />
<colgroup align="left" /> <colgroup align="left" />
<tr><th>Attribute</th><th>Description</th></tr> <tr><th>Attribute</th><th>Description</th></tr>
<tr><td><code>{@link #FloatingActionButton_color com.faizmalkani.floatingactionbutton.test:color}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_colour com.faizmalkani.floatingactionbutton.test:colour}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_drawable com.faizmalkani.floatingactionbutton.test:drawable}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_drawable com.faizmalkani.floatingactionbutton.test:drawable}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowColor com.faizmalkani.floatingactionbutton.test:shadowColor}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowColor com.faizmalkani.floatingactionbutton.test:shadowColor}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowDx com.faizmalkani.floatingactionbutton.test:shadowDx}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowDx com.faizmalkani.floatingactionbutton.test:shadowDx}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowDy com.faizmalkani.floatingactionbutton.test:shadowDy}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowDy com.faizmalkani.floatingactionbutton.test:shadowDy}</code></td><td></td></tr>
<tr><td><code>{@link #FloatingActionButton_shadowRadius com.faizmalkani.floatingactionbutton.test:shadowRadius}</code></td><td></td></tr> <tr><td><code>{@link #FloatingActionButton_shadowRadius com.faizmalkani.floatingactionbutton.test:shadowRadius}</code></td><td></td></tr>
</table> </table>
@see #FloatingActionButton_color @see #FloatingActionButton_colour
@see #FloatingActionButton_drawable @see #FloatingActionButton_drawable
@see #FloatingActionButton_shadowColor @see #FloatingActionButton_shadowColor
@see #FloatingActionButton_shadowDx @see #FloatingActionButton_shadowDx
@ -85,7 +85,7 @@ containing a value of this type.
0x7f010004, 0x7f010005 0x7f010004, 0x7f010005
}; };
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.test.R.attr#color} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.test.R.attr#colour}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.
@ -96,9 +96,9 @@ containing a value of this type.
theme attribute (in the form theme attribute (in the form
"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>") "<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
containing a value of this type. containing a value of this type.
@attr name com.faizmalkani.floatingactionbutton.test:color @attr name com.faizmalkani.floatingactionbutton.test:colour
*/ */
public static final int FloatingActionButton_color = 1; public static final int FloatingActionButton_colour = 1;
/** /**
<p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.test.R.attr#drawable} <p>This symbol is the offset where the {@link com.faizmalkani.floatingactionbutton.test.R.attr#drawable}
attribute's value can be found in the {@link #FloatingActionButton} array. attribute's value can be found in the {@link #FloatingActionButton} array.

View File

@ -6,7 +6,7 @@
<uses-sdk <uses-sdk
android:minSdkVersion="7" android:minSdkVersion="7"
android:targetSdkVersion="19" /> android:targetSdkVersion="21" />
<application android:allowBackup="true" > <application android:allowBackup="true" >
</application> </application>

View File

@ -1,11 +1,11 @@
int attr color 0x7f010001 int attr colour 0x7f010001
int attr drawable 0x7f010000 int attr drawable 0x7f010000
int attr shadowColor 0x7f010005 int attr shadowColor 0x7f010005
int attr shadowDx 0x7f010003 int attr shadowDx 0x7f010003
int attr shadowDy 0x7f010004 int attr shadowDy 0x7f010004
int attr shadowRadius 0x7f010002 int attr shadowRadius 0x7f010002
int[] styleable FloatingActionButton { 0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003, 0x7f010004, 0x7f010005 } int[] styleable FloatingActionButton { 0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003, 0x7f010004, 0x7f010005 }
int styleable FloatingActionButton_color 1 int styleable FloatingActionButton_colour 1
int styleable FloatingActionButton_drawable 0 int styleable FloatingActionButton_drawable 0
int styleable FloatingActionButton_shadowColor 5 int styleable FloatingActionButton_shadowColor 5
int styleable FloatingActionButton_shadowDx 3 int styleable FloatingActionButton_shadowDx 3

View File

@ -1,16 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<declare-styleable name="FloatingActionButton"><attr format="integer" name="drawable"/><attr format="color" name="colour"/><attr format="float" name="shadowRadius"/><attr format="float" name="shadowDx"/><attr format="float" name="shadowDy"/><attr format="integer" name="shadowColor"/></declare-styleable>
<!-- From: file:/C:/Users/Vlad/Documents/AndroidStudioProjects/turbo-editor/libraries/FloatingActionButton/res/values/attrs.xml --> </resources>
<eat-comment />
<declare-styleable name="FloatingActionButton">
<attr name="drawable" format="integer" />
<attr name="color" format="color" />
<attr name="shadowRadius" format="float" />
<attr name="shadowDx" format="float" />
<attr name="shadowDy" format="float" />
<attr name="shadowColor" format="integer" />
</declare-styleable>
</resources>

View File

@ -6,7 +6,7 @@
<uses-sdk <uses-sdk
android:minSdkVersion="7" android:minSdkVersion="7"
android:targetSdkVersion="19" /> android:targetSdkVersion="21" />
<application android:allowBackup="true" > <application android:allowBackup="true" >
</application> </application>

View File

@ -1,11 +1,11 @@
int attr color 0x7f010001 int attr colour 0x7f010001
int attr drawable 0x7f010000 int attr drawable 0x7f010000
int attr shadowColor 0x7f010005 int attr shadowColor 0x7f010005
int attr shadowDx 0x7f010003 int attr shadowDx 0x7f010003
int attr shadowDy 0x7f010004 int attr shadowDy 0x7f010004
int attr shadowRadius 0x7f010002 int attr shadowRadius 0x7f010002
int[] styleable FloatingActionButton { 0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003, 0x7f010004, 0x7f010005 } int[] styleable FloatingActionButton { 0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003, 0x7f010004, 0x7f010005 }
int styleable FloatingActionButton_color 1 int styleable FloatingActionButton_colour 1
int styleable FloatingActionButton_drawable 0 int styleable FloatingActionButton_drawable 0
int styleable FloatingActionButton_shadowColor 5 int styleable FloatingActionButton_shadowColor 5
int styleable FloatingActionButton_shadowDx 3 int styleable FloatingActionButton_shadowDx 3

View File

@ -1,16 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<declare-styleable name="FloatingActionButton"><attr format="integer" name="drawable"/><attr format="color" name="colour"/><attr format="float" name="shadowRadius"/><attr format="float" name="shadowDx"/><attr format="float" name="shadowDy"/><attr format="integer" name="shadowColor"/></declare-styleable>
<!-- From: file:/C:/Users/Vlad/Documents/AndroidStudioProjects/turbo-editor/libraries/FloatingActionButton/res/values/attrs.xml --> </resources>
<eat-comment />
<declare-styleable name="FloatingActionButton">
<attr name="drawable" format="integer" />
<attr name="color" format="color" />
<attr name="shadowRadius" format="float" />
<attr name="shadowDx" format="float" />
<attr name="shadowDy" format="float" />
<attr name="shadowColor" format="integer" />
</declare-styleable>
</resources>

View File

@ -1,11 +1,2 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<merger version="2" > <merger version="3"><dataSet config="main"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\assets"/></dataSet><dataSet config="debug"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\debug\assets"/></dataSet></merger>
<dataSet config="main" >
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\assets" />
</dataSet>
<dataSet config="debug" >
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\debug\assets" />
</dataSet>
</merger>

View File

@ -1,11 +1,2 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<merger version="2" > <merger version="3"><dataSet config="main"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\assets"/></dataSet><dataSet config="release"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\release\assets"/></dataSet></merger>
<dataSet config="main" >
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\assets" />
</dataSet>
<dataSet config="release" >
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\release\assets" />
</dataSet>
</merger>

View File

@ -1,11 +1,2 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<merger version="2" > <merger version="3"><dataSet config="debug"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\intermediates\bundles\debug\assets"/></dataSet><dataSet config="main"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\androidTest\assets"/></dataSet></merger>
<dataSet config="debug" >
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\intermediates\bundles\debug\assets" />
</dataSet>
<dataSet config="main" >
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\androidTest\assets" />
</dataSet>
</merger>

View File

@ -1,38 +1,2 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<merger version="2" > <merger version="3"><dataSet config="debug"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\intermediates\bundles\debug\res"><file path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\intermediates\bundles\debug\res\values\values.xml" qualifiers=""><declare-styleable name="FloatingActionButton"><attr format="integer" name="drawable"/><attr format="color" name="colour"/><attr format="float" name="shadowRadius"/><attr format="float" name="shadowDx"/><attr format="float" name="shadowDy"/><attr format="integer" name="shadowColor"/></declare-styleable></file></source></dataSet><dataSet config="main"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\androidTest\res"/><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\rs\test\debug"/><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\generated\test\debug"/></dataSet><mergedItems><configuration qualifiers=""><declare-styleable name="FloatingActionButton"><attr format="integer" name="drawable"/><attr format="color" name="colour"/><attr format="float" name="shadowRadius"/><attr format="float" name="shadowDx"/><attr format="float" name="shadowDy"/><attr format="integer" name="shadowColor"/></declare-styleable></configuration></mergedItems></merger>
<dataSet config="debug" >
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\intermediates\bundles\debug\res" >
<file
path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\intermediates\bundles\debug\res\values\values.xml"
qualifiers="" >
<declare-styleable name="FloatingActionButton" >
<attr
name="drawable"
format="integer" />
<attr
name="color"
format="color" />
<attr
name="shadowRadius"
format="float" />
<attr
name="shadowDx"
format="float" />
<attr
name="shadowDy"
format="float" />
<attr
name="shadowColor"
format="integer" />
</declare-styleable>
</file>
</source>
</dataSet>
<dataSet config="main" >
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\androidTest\res" />
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\rs\test\debug" />
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\generated\test\debug" />
</dataSet>
</merger>

View File

@ -1,38 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<merger version="2" > <merger version="3"><dataSet config="main"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\res"><file path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\res\values\attrs.xml" qualifiers=""><declare-styleable name="FloatingActionButton">
<attr format="integer" name="drawable"/>
<dataSet config="main" > <attr format="color" name="colour"/>
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\res" > <attr format="float" name="shadowRadius"/>
<file <attr format="float" name="shadowDx"/>
path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\res\values\attrs.xml" <attr format="float" name="shadowDy"/>
qualifiers="" > <attr format="integer" name="shadowColor"/>
<declare-styleable name="FloatingActionButton" > </declare-styleable></file></source><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\rs\debug"/><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\generated\debug"/></dataSet><dataSet config="debug"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\debug\res"/></dataSet><mergedItems><configuration qualifiers=""><declare-styleable name="FloatingActionButton"><attr format="integer" name="drawable"/><attr format="color" name="colour"/><attr format="float" name="shadowRadius"/><attr format="float" name="shadowDx"/><attr format="float" name="shadowDy"/><attr format="integer" name="shadowColor"/></declare-styleable></configuration></mergedItems></merger>
<attr
name="drawable"
format="integer" />
<attr
name="color"
format="color" />
<attr
name="shadowRadius"
format="float" />
<attr
name="shadowDx"
format="float" />
<attr
name="shadowDy"
format="float" />
<attr
name="shadowColor"
format="integer" />
</declare-styleable>
</file>
</source>
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\rs\debug" />
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\generated\debug" />
</dataSet>
<dataSet config="debug" >
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\debug\res" />
</dataSet>
</merger>

View File

@ -1,38 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<merger version="2" > <merger version="3"><dataSet config="main"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\res"><file path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\res\values\attrs.xml" qualifiers=""><declare-styleable name="FloatingActionButton">
<attr format="integer" name="drawable"/>
<dataSet config="main" > <attr format="color" name="colour"/>
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\res" > <attr format="float" name="shadowRadius"/>
<file <attr format="float" name="shadowDx"/>
path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\res\values\attrs.xml" <attr format="float" name="shadowDy"/>
qualifiers="" > <attr format="integer" name="shadowColor"/>
<declare-styleable name="FloatingActionButton" > </declare-styleable></file></source><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\rs\release"/><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\generated\release"/></dataSet><dataSet config="release"><source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\release\res"/></dataSet><mergedItems><configuration qualifiers=""><declare-styleable name="FloatingActionButton"><attr format="integer" name="drawable"/><attr format="color" name="colour"/><attr format="float" name="shadowRadius"/><attr format="float" name="shadowDx"/><attr format="float" name="shadowDy"/><attr format="integer" name="shadowColor"/></declare-styleable></configuration></mergedItems></merger>
<attr
name="drawable"
format="integer" />
<attr
name="color"
format="color" />
<attr
name="shadowRadius"
format="float" />
<attr
name="shadowDx"
format="float" />
<attr
name="shadowDy"
format="float" />
<attr
name="shadowColor"
format="integer" />
</declare-styleable>
</file>
</source>
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\rs\release" />
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\build\generated\res\generated\release" />
</dataSet>
<dataSet config="release" >
<source path="C:\Users\Vlad\Documents\AndroidStudioProjects\turbo-editor\libraries\FloatingActionButton\src\release\res" />
</dataSet>
</merger>

View File

@ -4,7 +4,7 @@
<uses-sdk <uses-sdk
android:minSdkVersion="7" android:minSdkVersion="7"
android:targetSdkVersion="19" /> android:targetSdkVersion="21" />
<instrumentation <instrumentation
android:name="android.test.InstrumentationTestRunner" android:name="android.test.InstrumentationTestRunner"

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.faizmalkani.floatingactionbutton.test">
<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="21" />
<application>
<uses-library android:name="android.test.runner" />
</application>
<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.faizmalkani.floatingactionbutton.test"
android:handleProfiling="false"
android:functionalTest="false"
android:label="Tests for com.faizmalkani.floatingactionbutton.test"/>
</manifest>

View File

@ -1,16 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<declare-styleable name="FloatingActionButton"><attr format="integer" name="drawable"/><attr format="color" name="colour"/><attr format="float" name="shadowRadius"/><attr format="float" name="shadowDx"/><attr format="float" name="shadowDy"/><attr format="integer" name="shadowColor"/></declare-styleable>
<!-- From: file:/C:/Users/Vlad/Documents/AndroidStudioProjects/turbo-editor/libraries/FloatingActionButton/build/intermediates/bundles/debug/res/values/values.xml --> </resources>
<eat-comment />
<declare-styleable name="FloatingActionButton">
<attr name="drawable" format="integer" />
<attr name="color" format="color" />
<attr name="shadowRadius" format="float" />
<attr name="shadowDx" format="float" />
<attr name="shadowDy" format="float" />
<attr name="shadowColor" format="integer" />
</declare-styleable>
</resources>

View File

@ -1,11 +1,11 @@
int attr color 0x7f010001 int attr colour 0x7f010001
int attr drawable 0x7f010000 int attr drawable 0x7f010000
int attr shadowColor 0x7f010005 int attr shadowColor 0x7f010005
int attr shadowDx 0x7f010003 int attr shadowDx 0x7f010003
int attr shadowDy 0x7f010004 int attr shadowDy 0x7f010004
int attr shadowRadius 0x7f010002 int attr shadowRadius 0x7f010002
int[] styleable FloatingActionButton { 0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003, 0x7f010004, 0x7f010005 } int[] styleable FloatingActionButton { 0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003, 0x7f010004, 0x7f010005 }
int styleable FloatingActionButton_color 1 int styleable FloatingActionButton_colour 1
int styleable FloatingActionButton_drawable 0 int styleable FloatingActionButton_drawable 0
int styleable FloatingActionButton_shadowColor 5 int styleable FloatingActionButton_shadowColor 5
int styleable FloatingActionButton_shadowDx 3 int styleable FloatingActionButton_shadowDx 3

View File

@ -3,7 +3,7 @@
<declare-styleable name="FloatingActionButton"> <declare-styleable name="FloatingActionButton">
<attr name="drawable" format="integer"/> <attr name="drawable" format="integer"/>
<attr name="color" format="color"/> <attr name="colour" format="color"/>
<attr name="shadowRadius" format="float"/> <attr name="shadowRadius" format="float"/>
<attr name="shadowDx" format="float"/> <attr name="shadowDx" format="float"/>
<attr name="shadowDy" format="float"/> <attr name="shadowDy" format="float"/>

View File

@ -52,7 +52,7 @@ public class FloatingActionButton extends View {
super(context, attrs, defStyleAttr); super(context, attrs, defStyleAttr);
TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.FloatingActionButton); TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.FloatingActionButton);
mColor = a.getColor(R.styleable.FloatingActionButton_color, Color.WHITE); mColor = a.getColor(R.styleable.FloatingActionButton_colour, Color.WHITE);
mButtonPaint.setStyle(Paint.Style.FILL); mButtonPaint.setStyle(Paint.Style.FILL);
mButtonPaint.setColor(mColor); mButtonPaint.setColor(mColor);
float radius, dx, dy; float radius, dx, dy;

View File

@ -15,12 +15,16 @@ dependencies {
} }
android { android {
compileSdkVersion 20 compileSdkVersion 21
buildToolsVersion '20.0.0' buildToolsVersion '21.0.2'
defaultConfig { defaultConfig {
minSdkVersion 7 minSdkVersion 7
targetSdkVersion 19 targetSdkVersion 21
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
} }
} }

View File

@ -17,6 +17,8 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
apply plugin: 'com.android.library' apply plugin: 'com.android.library'
android { android {
@ -24,13 +26,13 @@ android {
disable 'MissingTranslation', 'ExtraTranslation' disable 'MissingTranslation', 'ExtraTranslation'
} }
compileSdkVersion 20 compileSdkVersion 21
buildToolsVersion '20.0.0' buildToolsVersion '21.0.2'
defaultConfig { defaultConfig {
applicationId "sharedcode.turboeditor" applicationId "sharedcode.turboeditor"
minSdkVersion 11 minSdkVersion 11
targetSdkVersion 19 targetSdkVersion 21
versionCode 1 versionCode 1
versionName "1.0" versionName "1.0"
} }
@ -60,13 +62,16 @@ dependencies {
compile fileTree(dir: 'libs', include: ['*.jar']) compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(':libraries:RootCommands') compile project(':libraries:RootCommands')
compile project(':libraries:FloatingActionButton') compile project(':libraries:FloatingActionButton')
compile('de.greenrobot:eventbus:2.2.1') { //compile('de.greenrobot:eventbus:2.2.1') {
exclude module: 'support-v4' // exclude module: 'support-v4'
} // }
// compile 'com.googlecode.juniversalchardet:juniversalchardet:1.0.3' // compile 'com.googlecode.juniversalchardet:juniversalchardet:1.0.3'
compile 'org.apache.commons:commons-lang3:3.1' compile 'org.apache.commons:commons-lang3:3.1'
compile files('libs/juniversalchardet-1.0.3.jar') compile files('libs/juniversalchardet-1.0.3.jar')
compile 'com.android.support:support-v4:19.0.+' compile ("com.android.support:appcompat-v7:21.+") {
exclude group: 'com.android.support', module: 'support-v4'
}
compile 'com.android.support:support-v4:21.+'
compile 'com.github.gabrielemariotti.changeloglib:library:1.5.1' compile 'com.github.gabrielemariotti.changeloglib:library:1.5.1'
compile 'commons-io:commons-io:2.4' compile 'commons-io:commons-io:2.4'
compile 'com.android.support:support-annotations:20.0.0' compile 'com.android.support:support-annotations:20.0.0'

View File

@ -16,7 +16,7 @@
~ ~
~ You should have received a copy of the GNU General Public License ~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses/>. ~ along with this program. If not, see <http://www.gnu.org/licenses/>.
--> -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="sharedcode.turboeditor" > package="sharedcode.turboeditor" >

View File

@ -1,76 +0,0 @@
/*
* Copyright (C) 2014 Vlad Mihalachi
*
* This file is part of Turbo Editor.
*
* Turbo Editor is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Turbo Editor is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package sharedcode.turboeditor.activity;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import sharedcode.turboeditor.R;
import sharedcode.turboeditor.util.ThemeUtils;
public class LicensesActivity extends Activity implements AdapterView.OnItemClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
ThemeUtils.setTheme(this);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_licenses);
ListView listView = (ListView) findViewById(android.R.id.list);
listView.setOnItemClickListener(this);
ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, getResources().getStringArray(R.array.open_source_libs));
listView.setAdapter(adapter);
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String openSourceLib = ((TextView) view.findViewById(android.R.id.text1)).getText().toString();
Intent browserIntent = null;
switch (openSourceLib) {
case "ChangeLog Library":
browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://github.com/gabrielemariotti/changeloglib?source=c#license"));
break;
case "EventBus":
browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://github.com/greenrobot/EventBus?source=c#license"));
break;
case "commons-io":
browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://commons.apache.org/proper/commons-io/"));
break;
case "RootCommands":
browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://github.com/dschuermann/superuser-commands"));
break;
case "Floating Action Button":
browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://github.com/makovkastar/FloatingActionButton"));
break;
}
if (browserIntent != null) {
startActivity(browserIntent);
}
}
}

View File

@ -19,11 +19,13 @@
package sharedcode.turboeditor.activity; package sharedcode.turboeditor.activity;
import android.app.Activity;
import android.content.Intent; import android.content.Intent;
import android.os.AsyncTask; import android.os.AsyncTask;
import android.os.Bundle; import android.os.Bundle;
import android.support.v4.view.MenuItemCompat; import android.support.v4.view.MenuItemCompat;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.widget.SearchView;
import android.support.v7.widget.Toolbar;
import android.text.TextUtils; import android.text.TextUtils;
import android.view.Menu; import android.view.Menu;
import android.view.MenuItem; import android.view.MenuItem;
@ -32,7 +34,6 @@ import android.widget.AdapterView;
import android.widget.Filter; import android.widget.Filter;
import android.widget.ListView; import android.widget.ListView;
import android.widget.PopupMenu; import android.widget.PopupMenu;
import android.widget.SearchView;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
@ -54,14 +55,14 @@ import java.util.concurrent.TimeoutException;
import sharedcode.turboeditor.R; import sharedcode.turboeditor.R;
import sharedcode.turboeditor.adapter.AdapterDetailedList; import sharedcode.turboeditor.adapter.AdapterDetailedList;
import sharedcode.turboeditor.fragment.EditTextDialog; import sharedcode.turboeditor.dialogfragment.EditTextDialog;
import sharedcode.turboeditor.preferences.PreferenceHelper; import sharedcode.turboeditor.preferences.PreferenceHelper;
import sharedcode.turboeditor.root.RootUtils; import sharedcode.turboeditor.root.RootUtils;
import sharedcode.turboeditor.util.AlphanumComparator; import sharedcode.turboeditor.util.AlphanumComparator;
import sharedcode.turboeditor.util.Build; import sharedcode.turboeditor.util.Build;
import sharedcode.turboeditor.util.ThemeUtils; import sharedcode.turboeditor.util.ThemeUtils;
public class SelectFileActivity extends Activity implements SearchView.OnQueryTextListener, AdapterView.OnItemClickListener, EditTextDialog.EditDialogListener { public class SelectFileActivity extends ActionBarActivity implements SearchView.OnQueryTextListener, AdapterView.OnItemClickListener, EditTextDialog.EditDialogListener {
private String currentFolder = PreferenceHelper.SD_CARD_ROOT; private String currentFolder = PreferenceHelper.SD_CARD_ROOT;
private ListView listView; private ListView listView;
private boolean wantAFile = true; private boolean wantAFile = true;
@ -78,7 +79,10 @@ public class SelectFileActivity extends Activity implements SearchView.OnQueryTe
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_select_file); setContentView(R.layout.activity_select_file);
getActionBar().setDisplayHomeAsUpEnabled(true); Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
final Actions action = (Actions) getIntent().getExtras().getSerializable("action"); final Actions action = (Actions) getIntent().getExtras().getSerializable("action");
wantAFile = action == Actions.SelectFile; wantAFile = action == Actions.SelectFile;
@ -101,15 +105,12 @@ public class SelectFileActivity extends Activity implements SearchView.OnQueryTe
popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override @Override
public boolean onMenuItemClick(MenuItem item) { public boolean onMenuItemClick(MenuItem item) {
final EditTextDialog dialogFrag;
int i = item.getItemId(); int i = item.getItemId();
if (i == R.id.im_new_file) { if (i == R.id.im_new_file) {
dialogFrag = EditTextDialog.newInstance(EditTextDialog.Actions.NewFile); EditTextDialog.newInstance(EditTextDialog.Actions.NewFile).show(getFragmentManager().beginTransaction(), "dialog");
dialogFrag.show(getFragmentManager().beginTransaction(), "dialog");
return true; return true;
} else if (i == R.id.im_new_folder) { } else if (i == R.id.im_new_folder) {
dialogFrag = EditTextDialog.newInstance(EditTextDialog.Actions.NewFolder); EditTextDialog.newInstance(EditTextDialog.Actions.NewFolder).show(getFragmentManager().beginTransaction(), "dialog");
dialogFrag.show(getFragmentManager().beginTransaction(), "dialog");
return true; return true;
} else { } else {
return false; return false;
@ -364,7 +365,8 @@ public class SelectFileActivity extends Activity implements SearchView.OnQueryTe
AdapterDetailedList mAdapter = new AdapterDetailedList(getBaseContext(), names, isRoot); AdapterDetailedList mAdapter = new AdapterDetailedList(getBaseContext(), names, isRoot);
listView.setAdapter(mAdapter); listView.setAdapter(mAdapter);
filter = mAdapter.getFilter(); filter = mAdapter.getFilter();
} else if (exceptionMessage != null) { }
if (exceptionMessage != null) {
Toast.makeText(SelectFileActivity.this, exceptionMessage, Toast.LENGTH_SHORT).show(); Toast.makeText(SelectFileActivity.this, exceptionMessage, Toast.LENGTH_SHORT).show();
} }
invalidateOptionsMenu(); invalidateOptionsMenu();

View File

@ -30,7 +30,7 @@ import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.List;
import sharedcode.turboeditor.R; import sharedcode.turboeditor.R;
@ -41,11 +41,11 @@ public class AdapterDrawer extends
// Layout Inflater // Layout Inflater
private final LayoutInflater inflater; private final LayoutInflater inflater;
// List of file details // List of file details
private final ArrayList<File> files; private final List<File> files;
private String selectedPath = ""; private String selectedPath = "";
public AdapterDrawer(Context context, public AdapterDrawer(Context context,
ArrayList<File> files, List<File> files,
Callbacks callbacks) { Callbacks callbacks) {
super(context, R.layout.item_file_list, files); super(context, R.layout.item_file_list, files);
this.files = files; this.files = files;
@ -80,13 +80,9 @@ public class AdapterDrawer extends
}); });
if (TextUtils.equals(selectedPath, files.get(position).getAbsolutePath())) { if (TextUtils.equals(selectedPath, files.get(position).getAbsolutePath())) {
hold.nameLabel.setTypeface(hold.nameLabel.getTypeface(), Typeface.BOLD); hold.nameLabel.setTypeface(null, Typeface.BOLD);
convertView.setBackgroundColor((convertView.getResources()
.getColor(R.color.item_selected)));
} else { } else {
hold.nameLabel.setTypeface(hold.nameLabel.getTypeface(), Typeface.NORMAL); hold.nameLabel.setTypeface(null, Typeface.NORMAL);
convertView.setBackgroundColor((convertView.getResources()
.getColor(android.R.color.transparent)));
} }
} else { } else {
@ -105,12 +101,8 @@ public class AdapterDrawer extends
if (TextUtils.equals(selectedPath, files.get(position).getAbsolutePath())) { if (TextUtils.equals(selectedPath, files.get(position).getAbsolutePath())) {
hold.nameLabel.setTypeface(null, Typeface.BOLD); hold.nameLabel.setTypeface(null, Typeface.BOLD);
convertView.setBackgroundColor((convertView.getResources()
.getColor(R.color.item_selected)));
} else { } else {
hold.nameLabel.setTypeface(null, Typeface.NORMAL); hold.nameLabel.setTypeface(null, Typeface.NORMAL);
convertView.setBackgroundColor((convertView.getResources()
.getColor(android.R.color.transparent)));
} }
} }
return convertView; return convertView;

View File

@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.activity; package sharedcode.turboeditor.application;
import android.app.Application; import android.app.Application;
import android.view.ViewConfiguration; import android.view.ViewConfiguration;

View File

@ -16,7 +16,8 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.fragment;
package sharedcode.turboeditor.dialogfragment;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.Dialog; import android.app.Dialog;
@ -28,7 +29,6 @@ import android.content.res.Resources;
import android.os.Bundle; import android.os.Bundle;
import android.text.Html; import android.text.Html;
import android.view.View; import android.view.View;
import android.widget.Toast;
import sharedcode.turboeditor.R; import sharedcode.turboeditor.R;
import sharedcode.turboeditor.views.DialogHelper; import sharedcode.turboeditor.views.DialogHelper;

View File

@ -16,7 +16,8 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.fragment;
package sharedcode.turboeditor.dialogfragment;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.Dialog; import android.app.Dialog;

View File

@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.fragment; package sharedcode.turboeditor.dialogfragment;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.Dialog; import android.app.Dialog;
@ -32,6 +32,7 @@ import android.widget.EditText;
import android.widget.TextView; import android.widget.TextView;
import sharedcode.turboeditor.R; import sharedcode.turboeditor.R;
import sharedcode.turboeditor.views.DialogHelper;
// ... // ...
public class EditTextDialog extends DialogFragment implements TextView.OnEditorActionListener { public class EditTextDialog extends DialogFragment implements TextView.OnEditorActionListener {
@ -55,22 +56,25 @@ public class EditTextDialog extends DialogFragment implements TextView.OnEditorA
public Dialog onCreateDialog(Bundle savedInstanceState) { public Dialog onCreateDialog(Bundle savedInstanceState) {
final Actions action = (Actions) getArguments().getSerializable("action"); final Actions action = (Actions) getArguments().getSerializable("action");
final String hint; final String title;
switch (action) { switch (action) {
case NewFile: case NewFile:
hint = getString(R.string.file); title = getString(R.string.file);
break; break;
case NewFolder: case NewFolder:
hint = getString(R.string.folder); title = getString(R.string.folder);
break; break;
default: default:
hint = null; title = null;
break; break;
} }
final View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_fragment_edittext, null); View view = new DialogHelper.Builder(getActivity())
.setTitle(title)
.setView(R.layout.dialog_fragment_edittext)
.createSkeletonView();
this.mEditText = (EditText) view.findViewById(android.R.id.edit); this.mEditText = (EditText) view.findViewById(android.R.id.edit);
this.mEditText.setHint(hint); this.mEditText.setHint(R.string.name);
// Show soft keyboard automatically // Show soft keyboard automatically
this.mEditText.setText(getArguments().getString("hint")); this.mEditText.setText(getArguments().getString("hint"));

View File

@ -17,18 +17,18 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.fragment; package sharedcode.turboeditor.dialogfragment;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.Dialog; import android.app.Dialog;
import android.app.DialogFragment; import android.app.DialogFragment;
import android.os.Bundle; import android.os.Bundle;
import android.support.v7.widget.SwitchCompat;
import android.view.View; import android.view.View;
import android.widget.AdapterView; import android.widget.AdapterView;
import android.widget.ArrayAdapter; import android.widget.ArrayAdapter;
import android.widget.CompoundButton; import android.widget.CompoundButton;
import android.widget.ListView; import android.widget.ListView;
import android.widget.Switch;
import org.mozilla.universalchardet.Constants; import org.mozilla.universalchardet.Constants;
@ -77,7 +77,7 @@ public class EncodingDialog extends DialogFragment implements AdapterView.OnItem
final View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_encoding_list, null); final View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_encoding_list, null);
list = (ListView) view.findViewById(android.R.id.list); list = (ListView) view.findViewById(android.R.id.list);
Switch autoencoding = (Switch) view.findViewById(android.R.id.checkbox); SwitchCompat autoencoding = (SwitchCompat) view.findViewById(android.R.id.checkbox);
autoencoding.setChecked(PreferenceHelper.getAutoEncoding(getActivity())); autoencoding.setChecked(PreferenceHelper.getAutoEncoding(getActivity()));
autoencoding.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { autoencoding.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

View File

@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.fragment; package sharedcode.turboeditor.dialogfragment;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.Dialog; import android.app.Dialog;
@ -34,6 +34,7 @@ import java.util.Date;
import sharedcode.turboeditor.R; import sharedcode.turboeditor.R;
import sharedcode.turboeditor.adapter.AdapterTwoItem; import sharedcode.turboeditor.adapter.AdapterTwoItem;
import sharedcode.turboeditor.views.DialogHelper;
// ... // ...
public class FileInfoDialog extends DialogFragment { public class FileInfoDialog extends DialogFragment {
@ -49,7 +50,12 @@ public class FileInfoDialog extends DialogFragment {
@Override @Override
public Dialog onCreateDialog(Bundle savedInstanceState) { public Dialog onCreateDialog(Bundle savedInstanceState) {
final View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_fragment_file_info, null); View view = new DialogHelper.Builder(getActivity())
.setTitle(R.string.info)
.setView(R.layout.dialog_fragment_file_info)
.createSkeletonView();
//final View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_fragment_file_info, null);
ListView list = (ListView) view.findViewById(android.R.id.list); ListView list = (ListView) view.findViewById(android.R.id.list);
File file = new File(getArguments().getString("filePath")); File file = new File(getArguments().getString("filePath"));
@ -76,8 +82,8 @@ public class FileInfoDialog extends DialogFragment {
list.setAdapter(new AdapterTwoItem(getActivity(), lines1, lines2)); list.setAdapter(new AdapterTwoItem(getActivity(), lines1, lines2));
return new AlertDialog.Builder(getActivity()) return new AlertDialog.Builder(getActivity())
//.setTitle(title)
.setView(view) .setView(view)
.setPositiveButton(android.R.string.ok, .setPositiveButton(android.R.string.ok,
new DialogInterface.OnClickListener() { new DialogInterface.OnClickListener() {

View File

@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.fragment; package sharedcode.turboeditor.dialogfragment;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.Dialog; import android.app.Dialog;

View File

@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.fragment; package sharedcode.turboeditor.dialogfragment;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.Dialog; import android.app.Dialog;
@ -31,6 +31,7 @@ import android.widget.EditText;
import java.io.File; import java.io.File;
import sharedcode.turboeditor.R; import sharedcode.turboeditor.R;
import sharedcode.turboeditor.activity.MainActivity;
import sharedcode.turboeditor.preferences.PreferenceHelper; import sharedcode.turboeditor.preferences.PreferenceHelper;
import sharedcode.turboeditor.task.SaveFileTask; import sharedcode.turboeditor.task.SaveFileTask;
import sharedcode.turboeditor.views.DialogHelper; import sharedcode.turboeditor.views.DialogHelper;
@ -61,10 +62,12 @@ public class NewFileDetailsDialog extends DialogFragment {
this.mName = (EditText) view.findViewById(android.R.id.text1); this.mName = (EditText) view.findViewById(android.R.id.text1);
this.mFolder = (EditText) view.findViewById(android.R.id.text2); this.mFolder = (EditText) view.findViewById(android.R.id.text2);
this.mName.setText(".txt");
this.mFolder.setText(PreferenceHelper.getWorkingFolder(getActivity())); this.mFolder.setText(PreferenceHelper.getWorkingFolder(getActivity()));
// Show soft keyboard automatically // Show soft keyboard automatically
this.mName.requestFocus(); this.mName.requestFocus();
this.mName.setSelection(0);
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE); getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);
return new AlertDialog.Builder(getActivity()) return new AlertDialog.Builder(getActivity())
@ -75,7 +78,7 @@ public class NewFileDetailsDialog extends DialogFragment {
public void onClick(DialogInterface dialog, int which) { public void onClick(DialogInterface dialog, int which) {
if (!mName.getText().toString().isEmpty() && !mFolder.getText().toString().isEmpty()) { if (!mName.getText().toString().isEmpty() && !mFolder.getText().toString().isEmpty()) {
File file = new File(mFolder.getText().toString(), mName.getText().toString()); File file = new File(mFolder.getText().toString(), mName.getText().toString());
new SaveFileTask(getActivity(), file.getPath(), getArguments().getString("fileText"), getArguments().getString("fileEncoding")).execute(); new SaveFileTask((MainActivity) getActivity(), file.getPath(), getArguments().getString("fileText"), getArguments().getString("fileEncoding")).execute();
PreferenceHelper.setWorkingFolder(getActivity(), file.getParent()); PreferenceHelper.setWorkingFolder(getActivity(), file.getParent());
} }
} }

View File

@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.fragment; package sharedcode.turboeditor.dialogfragment;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.Dialog; import android.app.Dialog;
@ -31,16 +31,16 @@ import sharedcode.turboeditor.R;
import sharedcode.turboeditor.views.DialogHelper; import sharedcode.turboeditor.views.DialogHelper;
// ... // ...
public class SeekbarDialog extends DialogFragment { public class NumberPickerDialog extends DialogFragment {
private NumberPicker mSeekBar; private NumberPicker mSeekBar;
public static SeekbarDialog newInstance(final Actions action) { public static NumberPickerDialog newInstance(final Actions action) {
return SeekbarDialog.newInstance(action, 0, 50, 100); return NumberPickerDialog.newInstance(action, 0, 50, 100);
} }
public static SeekbarDialog newInstance(final Actions action, final int min, final int current, final int max) { public static NumberPickerDialog newInstance(final Actions action, final int min, final int current, final int max) {
final SeekbarDialog f = new SeekbarDialog(); final NumberPickerDialog f = new NumberPickerDialog();
final Bundle args = new Bundle(); final Bundle args = new Bundle();
args.putSerializable("action", action); args.putSerializable("action", action);
args.putInt("min", min); args.putInt("min", min);
@ -102,11 +102,11 @@ public class SeekbarDialog extends DialogFragment {
} }
void returnData() { void returnData() {
ISeekbarDialog target = (ISeekbarDialog) getTargetFragment(); INumberPickerDialog target = (INumberPickerDialog) getTargetFragment();
if (target == null) { if (target == null) {
target = (ISeekbarDialog) getActivity(); target = (INumberPickerDialog) getActivity();
} }
target.onSeekbarDialogDismissed( target.onNumberPickerDialogDismissed(
(Actions) getArguments().getSerializable("action"), (Actions) getArguments().getSerializable("action"),
mSeekBar.getValue() mSeekBar.getValue()
); );
@ -117,7 +117,7 @@ public class SeekbarDialog extends DialogFragment {
FontSize, SelectPage, GoToLine FontSize, SelectPage, GoToLine
} }
public interface ISeekbarDialog { public interface INumberPickerDialog {
void onSeekbarDialogDismissed(Actions action, int value); void onNumberPickerDialogDismissed(Actions action, int value);
} }
} }

View File

@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.fragment; package sharedcode.turboeditor.dialogfragment;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.Dialog; import android.app.Dialog;
@ -31,6 +31,7 @@ import org.apache.commons.io.FilenameUtils;
import java.io.File; import java.io.File;
import sharedcode.turboeditor.R; import sharedcode.turboeditor.R;
import sharedcode.turboeditor.activity.MainActivity;
import sharedcode.turboeditor.task.SaveFileTask; import sharedcode.turboeditor.task.SaveFileTask;
import sharedcode.turboeditor.views.DialogHelper; import sharedcode.turboeditor.views.DialogHelper;
@ -75,7 +76,7 @@ public class SaveFileDialog extends DialogFragment {
@Override @Override
public void onClick(DialogInterface dialog, int which) { public void onClick(DialogInterface dialog, int which) {
if (!fileName.isEmpty()) if (!fileName.isEmpty())
new SaveFileTask(getActivity(), filePath, text, new SaveFileTask((MainActivity) getActivity(), filePath, text,
encoding).execute(); encoding).execute();
else { else {
NewFileDetailsDialog dialogFrag = NewFileDetailsDialog dialogFrag =

View File

@ -1,198 +0,0 @@
/*
* Copyright (C) 2014 Vlad Mihalachi
*
* This file is part of Turbo Editor.
*
* Turbo Editor is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Turbo Editor is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package sharedcode.turboeditor.fragment;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ListView;
import java.io.File;
import java.util.ArrayList;
import de.greenrobot.event.EventBus;
import sharedcode.turboeditor.R;
import sharedcode.turboeditor.adapter.AdapterDrawer;
import sharedcode.turboeditor.preferences.PreferenceHelper;
import sharedcode.turboeditor.util.EventBusEvents;
public class NavigationDrawer extends Fragment implements AdapterView.OnItemClickListener, AdapterDrawer.Callbacks {
private AdapterDrawer arrayAdapter;
private ArrayList<File> files;
private ListView listView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// Our custom layout
View rootView = inflater.inflate(R.layout.fragment_navigation_drawer, container, false);
listView = (ListView) rootView.findViewById(android.R.id.list);
listView.setEmptyView(rootView.findViewById(android.R.id.empty));
files = new ArrayList<>();
arrayAdapter = new AdapterDrawer(getActivity(), files, this);
listView.setAdapter(arrayAdapter);
return rootView;
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
listView.setOnItemClickListener(this);
}
@Override
public void onResume() {
super.onResume();
// Register the Event Bus for events
EventBus.getDefault().registerSticky(this);
// Refresh the list view
refreshList();
}
@Override
public void onPause() {
super.onPause();
// Unregister the Event Bus
EventBus.getDefault().unregister(this);
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// File paths saved in preferences
String[] savedPaths = PreferenceHelper.getSavedPaths(getActivity());
// Path of the file selected
String filePath = savedPaths[position];
// Send the event that a file was selected
EventBus.getDefault().post(new EventBusEvents.NewFileToOpen(new File(filePath)));
}
public void onEvent(EventBusEvents.AFileIsSelected event) {
arrayAdapter.selectView(event.getPath());
EventBus.getDefault().removeStickyEvent(event);
}
public void onEvent(EventBusEvents.NewFileToOpen event) {
// File paths saved in preferences
String[] savedPaths = PreferenceHelper.getSavedPaths(getActivity());
String selectedPath = event.getFile().getAbsolutePath();
boolean pathAlreadyExist = false;
for (String savedPath : savedPaths) {
// We don't need to save the file path twice
if (savedPath.equals(selectedPath)) {
pathAlreadyExist = true;
}
}
// Add the path if it wasn't added before
if (!pathAlreadyExist)
addPath(selectedPath);
EventBus.getDefault().removeStickyEvent(event);
}
public void onEvent(EventBusEvents.SavedAFile event) {
if (addPath(event.getPath())) {
arrayAdapter.selectView(event.getPath());
}
}
public void onEvent(EventBusEvents.ClosedAFile event) {
arrayAdapter.selectView("");
}
private boolean addPath(String path) {
// File paths saved in preferences
String[] savedPaths = PreferenceHelper.getSavedPaths(getActivity());
// StringBuilder
StringBuilder sb = new StringBuilder();
boolean pathAlreadyExist = false;
for (String savedPath : savedPaths) {
// Append the file path and a comma
sb.append(savedPath).append(",");
if (savedPath.equals(path))
pathAlreadyExist = true;
}
// Append new path
if (!pathAlreadyExist)
sb.append(path);
// Put the string and commit
PreferenceHelper.setSavedPaths(getActivity(), sb);
// Update list
refreshList();
return pathAlreadyExist == false;
}
private void removePath(String path) {
// File paths saved in preferences
String[] savedPaths = PreferenceHelper.getSavedPaths(getActivity());
// StringBuilder
StringBuilder sb = new StringBuilder();
// for cycle
for (String savedPath : savedPaths) {
if (path.equals(savedPath)) continue;
sb.append(savedPath).append(",");
}
// Put the string and commit
PreferenceHelper.setSavedPaths(getActivity(), sb);
// Update list
refreshList();
}
private void refreshList() {
// File paths saved in preferences
String[] savedPaths = PreferenceHelper.getSavedPaths(getActivity());
// File names for the list
files.clear();
// StringBuilder that will contain the file paths
StringBuilder sb = new StringBuilder();
// for cycle to convert paths to names
for (String path : savedPaths) {
File file = new File(path);
// Check that the file exist
if (file.exists()) {
files.add(file);
sb.append(path).append(",");
}
}
// save list without empty or non existed files
PreferenceHelper.setSavedPaths(getActivity(), sb);
// Set adapter
arrayAdapter.notifyDataSetChanged();
}
@Override
public void CancelItem(int position, boolean andCloseOpenedFile) {
String[] savedPaths = PreferenceHelper.getSavedPaths(getActivity());
removePath(savedPaths[position]);
if (andCloseOpenedFile)
EventBus.getDefault().post(new EventBusEvents.CannotOpenAFile());
}
}

View File

@ -1,211 +0,0 @@
/*
* Copyright (C) 2014 Vlad Mihalachi
*
* This file is part of Turbo Editor.
*
* Turbo Editor is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Turbo Editor is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package sharedcode.turboeditor.preferences;
import android.content.Context;
import android.content.res.Configuration;
import android.os.Build;
import android.os.Bundle;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.PreferenceFragment;
import android.preference.PreferenceManager;
import java.util.ArrayList;
import java.util.List;
import de.greenrobot.event.EventBus;
import sharedcode.turboeditor.R;
import sharedcode.turboeditor.util.EventBusEvents;
import sharedcode.turboeditor.util.ThemeUtils;
/**
* A {@link PreferenceActivity} that presents a set of application settings. On
* handset devices, settings are presented as a single list. On tablets,
* settings are split by category, with category headers shown to the left of
* the list of settings.
* <p/>
* See <a href="http://developer.android.com/design/patterns/settings.html">
* Android Design: Settings</a> for design guidelines and the <a
* href="http://developer.android.com/guide/topics/ui/settings.html">Settings
* API Guide</a> for more information on developing a Settings UI.
*/
public class ExtraSettingsActivity extends PreferenceActivity {
/**
* Determines whether to always show the simplified settings UI, where
* settings are presented in a single list. When false, settings are shown
* as a master/detail two-pane view on tablets. When true, a single pane is
* shown on tablets.
*/
private static final boolean ALWAYS_SIMPLE_PREFS = true;
boolean encodingChanged = false,
themeChanged = false,
keyboardSuggestionsChanged = false;
/**
* A preference value change listener that updates the preference's summary
* to reflect its new value.
*/
private Preference.OnPreferenceChangeListener sBindPreferenceSummaryToValueListener = new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object value) {
String stringValue = value.toString();
if (preference instanceof ListPreference) {
// For list preferences, look up the correct display value in
// the preference's 'entries' list.
ListPreference listPreference = (ListPreference) preference;
int index = listPreference.findIndexOfValue(stringValue);
// Set the summary to reflect the new value.
preference.setSummary(
index >= 0
? listPreference.getEntries()[index]
: null);
}
switch (preference.getKey()) {
case "light_theme":
themeChanged = !themeChanged;
break;
case "suggestion_active":
keyboardSuggestionsChanged = !keyboardSuggestionsChanged;
break;
case "editor_encoding":
encodingChanged = true;
break;
}
return true;
}
};
/**
* Helper method to determine if the device has an extra-large screen. For
* example, 10" tablets are extra-large.
*/
private static boolean isXLargeTablet(Context context) {
return (context.getResources().getConfiguration().screenLayout
& Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_XLARGE;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
ThemeUtils.setTheme(this);
super.onCreate(savedInstanceState);
}
@Override
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
setupSimplePreferencesScreen();
}
/**
* Shows the simplified settings UI if the device configuration if the
* device configuration dictates that a simplified, single-pane UI should be
* shown.
*/
private void setupSimplePreferencesScreen() {
if (!isSimplePreferences(this)) {
return;
}
// In the simplified UI, fragments are not used at all and we instead
// use the older PreferenceActivity APIs.
// Add 'general' preferences.
addPreferencesFromResource(R.xml.extra_options);
// Bind the summaries of EditText/List/Dialog/Ringtone preferences to
// their values. When their values change, their summaries are updated
// to reflect the new value, per the Android Design guidelines.
bindPreferenceSummaryToValue(findPreference("editor_encoding"));
String[] checkBoxPreferences = {"light_theme", "suggestion_active"};
for (String key : checkBoxPreferences) {
// Set the listener to watch for value changes.
findPreference(key).setOnPreferenceChangeListener(sBindPreferenceSummaryToValueListener);
}
}
/**
* {@inheritDoc}
*/
@Override
public boolean onIsMultiPane() {
return isXLargeTablet(this) && !isSimplePreferences(this);
}
/**
* Determines whether the simplified settings UI should be shown. This is
* true if this is forced via {@link #ALWAYS_SIMPLE_PREFS}, or the device
* doesn't have newer APIs like {@link PreferenceFragment}, or the device
* doesn't have an extra-large screen. In these cases, a single-pane
* "simplified" settings UI should be shown.
*/
private boolean isSimplePreferences(Context context) {
return ALWAYS_SIMPLE_PREFS
|| Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB
|| !isXLargeTablet(context);
}
@Override
protected void onDestroy() {
List<EventBusEvents.APreferenceValueWasChanged.Type> listOfChanges = new ArrayList<>();
if (themeChanged) {
listOfChanges.add(EventBusEvents.APreferenceValueWasChanged.Type.THEME_CHANGE);
}
if (keyboardSuggestionsChanged) {
listOfChanges.add(EventBusEvents.APreferenceValueWasChanged.Type.TEXT_SUGGESTIONS);
}
if (encodingChanged) {
listOfChanges.add(EventBusEvents.APreferenceValueWasChanged.Type.ENCODING);
}
if (listOfChanges.size() > 0) {
EventBus.getDefault().postSticky(new EventBusEvents.APreferenceValueWasChanged(listOfChanges));
}
super.onDestroy();
}
/**
* Binds a preference's summary to its value. More specifically, when the
* preference's value is changed, its summary (line of text below the
* preference title) is updated to reflect the value. The summary is also
* immediately updated upon calling this method. The exact display format is
* dependent on the type of preference.
*
* @see #sBindPreferenceSummaryToValueListener
*/
private void bindPreferenceSummaryToValue(Preference preference) {
// Set the listener to watch for value changes.
preference.setOnPreferenceChangeListener(sBindPreferenceSummaryToValueListener);
// Trigger the listener immediately with the preference's
// current value.
sBindPreferenceSummaryToValueListener.onPreferenceChange(preference,
PreferenceManager
.getDefaultSharedPreferences(preference.getContext())
.getString(preference.getKey(), ""));
}
}

View File

@ -49,7 +49,7 @@ public final class PreferenceHelper {
return getPrefs(context).getBoolean("editor_line_numbers", true); return getPrefs(context).getBoolean("editor_line_numbers", true);
} }
public static boolean getSyntaxHiglight(Context context) { public static boolean getSyntaxHighlight(Context context) {
return getPrefs(context).getBoolean("editor_syntax_highlight", false); return getPrefs(context).getBoolean("editor_syntax_highlight", false);
} }
@ -105,7 +105,7 @@ public final class PreferenceHelper {
return getPrefs(context).getBoolean("ignore_back_button", false); return getPrefs(context).getBoolean("ignore_back_button", false);
} }
public static boolean getPageSystemEnabled(Context context) { public static boolean getSplitText(Context context) {
return getPrefs(context).getBoolean("page_system_active", true); return getPrefs(context).getBoolean("page_system_active", true);
} }
@ -122,7 +122,7 @@ public final class PreferenceHelper {
getEditor(context).putBoolean("editor_line_numbers", value).commit(); getEditor(context).putBoolean("editor_line_numbers", value).commit();
} }
public static void setSyntaxHiglight(Context context, boolean value) { public static void setSyntaxHighlight(Context context, boolean value) {
getEditor(context).putBoolean("editor_syntax_highlight", value).commit(); getEditor(context).putBoolean("editor_syntax_highlight", value).commit();
} }
@ -155,7 +155,34 @@ public final class PreferenceHelper {
} }
public static void setHasDonated(Context context, boolean value) { public static void setHasDonated(Context context, boolean value) {
getEditor(context).putBoolean("has_donated", value); getEditor(context).putBoolean("has_donated", value).commit();
} }
public static void setLightTheme(Context context, boolean value) {
getEditor(context).putBoolean("light_theme", value).commit();
}
public static void setSuggestionsActive(Context context, boolean value) {
getEditor(context).putBoolean("suggestion_active", value).commit();
}
public static void setAutoSave(Context context, boolean value) {
getEditor(context).putBoolean("auto_save", value).commit();
}
public static void setIgnoreBackButton(Context context, boolean value) {
getEditor(context).putBoolean("ignore_back_button", value).commit();
}
public static void setSplitText(Context context, boolean value) {
getEditor(context).putBoolean("page_system_active", value).commit();
}
public static void setSendErrorReport(Context context, boolean value) {
getEditor(context).putBoolean("ignore_back_button", value).commit();
}
public static void setEncoding(Context context, String value) {
getEditor(context).putString("editor_encoding", value).commit();
}
} }

View File

@ -20,32 +20,34 @@
package sharedcode.turboeditor.preferences; package sharedcode.turboeditor.preferences;
import android.app.Fragment; import android.app.Fragment;
import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.support.v7.widget.SwitchCompat;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.CheckBox;
import android.widget.CompoundButton; import android.widget.CompoundButton;
import android.widget.TextView; import android.widget.TextView;
import de.greenrobot.event.EventBus;
import sharedcode.turboeditor.R; import sharedcode.turboeditor.R;
import sharedcode.turboeditor.fragment.SeekbarDialog; import sharedcode.turboeditor.activity.MainActivity;
import sharedcode.turboeditor.util.AnimationUtils; import sharedcode.turboeditor.dialogfragment.EncodingDialog;
import sharedcode.turboeditor.dialogfragment.NumberPickerDialog;
import sharedcode.turboeditor.util.ProCheckUtils; import sharedcode.turboeditor.util.ProCheckUtils;
import sharedcode.turboeditor.util.ViewUtils; import sharedcode.turboeditor.util.ViewUtils;
import sharedcode.turboeditor.views.DialogHelper; import sharedcode.turboeditor.views.DialogHelper;
import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged;
import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.ENCODING;
import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.FONT_SIZE; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.FONT_SIZE;
import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.LINE_NUMERS; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.LINE_NUMERS;
import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.MONOSPACE; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.MONOSPACE;
import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.READ_ONLY; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.READ_ONLY;
import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.SYNTAX; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.SYNTAX;
import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.TEXT_SUGGESTIONS;
import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.THEME_CHANGE;
import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.WRAP_CONTENT; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.WRAP_CONTENT;
public class SettingsFragment extends Fragment implements SeekbarDialog.ISeekbarDialog { public class SettingsFragment extends Fragment implements NumberPickerDialog.INumberPickerDialog, EncodingDialog.DialogListener {
// Editor Variables // Editor Variables
private boolean sLineNumbers; private boolean sLineNumbers;
@ -54,86 +56,114 @@ public class SettingsFragment extends Fragment implements SeekbarDialog.ISeekbar
private boolean sUseMonospace; private boolean sUseMonospace;
private boolean sReadOnly; private boolean sReadOnly;
private boolean sLightTheme;
private boolean sSuggestions;
private boolean sAutoSave;
private boolean sIgnoreBackButton;
private boolean sSplitText;
private boolean sErrorReports;
@Override @Override
public void onCreate(Bundle savedInstanceState) { public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
sUseMonospace = PreferenceHelper.getUseMonospace(getActivity()); sUseMonospace = PreferenceHelper.getUseMonospace(getActivity());
sColorSyntax = PreferenceHelper.getSyntaxHiglight(getActivity()); sColorSyntax = PreferenceHelper.getSyntaxHighlight(getActivity());
sWrapContent = PreferenceHelper.getWrapContent(getActivity()); sWrapContent = PreferenceHelper.getWrapContent(getActivity());
sLineNumbers = PreferenceHelper.getLineNumbers(getActivity()); sLineNumbers = PreferenceHelper.getLineNumbers(getActivity());
sReadOnly = PreferenceHelper.getReadOnly(getActivity()); sReadOnly = PreferenceHelper.getReadOnly(getActivity());
sLightTheme = PreferenceHelper.getLightTheme(getActivity());
sSuggestions = PreferenceHelper.getSuggestionActive(getActivity());
sAutoSave = PreferenceHelper.getAutoSave(getActivity());
sIgnoreBackButton = PreferenceHelper.getIgnoreBackButton(getActivity());
sSplitText = PreferenceHelper.getSplitText(getActivity());
sErrorReports = PreferenceHelper.getSendErrorReports(getActivity());
} }
@Override @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) { Bundle savedInstanceState) {
// Our custom layout // Our custom layout
View rootView = inflater.inflate(R.layout.fragment_settings, container, false); final View rootView = inflater.inflate(R.layout.fragment_settings, container, false);
final CheckBox switchLineNumbers, switchSyntax, switchWrapContent, switchMonospace, switchReadOnly; final SwitchCompat swLineNumbers, swSyntax, swWrapContent, swMonospace, swReadOnly;
switchLineNumbers = (CheckBox) rootView.findViewById(R.id.switch_line_numbers); final SwitchCompat swLightTheme, swSuggestions, swAutoSave, swIgnoreBackButton, swSplitText, swErrorReports;
switchSyntax = (CheckBox) rootView.findViewById(R.id.switch_syntax);
switchWrapContent = (CheckBox) rootView.findViewById(R.id.switch_wrap_content); swLineNumbers = (SwitchCompat) rootView.findViewById(R.id.switch_line_numbers);
switchMonospace = (CheckBox) rootView.findViewById(R.id.switch_monospace); swSyntax = (SwitchCompat) rootView.findViewById(R.id.switch_syntax);
switchReadOnly = (CheckBox) rootView.findViewById(R.id.switch_read_only); swWrapContent = (SwitchCompat) rootView.findViewById(R.id.switch_wrap_content);
swMonospace = (SwitchCompat) rootView.findViewById(R.id.switch_monospace);
swReadOnly = (SwitchCompat) rootView.findViewById(R.id.switch_read_only);
switchLineNumbers.setChecked(sLineNumbers); swLightTheme = (SwitchCompat) rootView.findViewById(R.id.switch_light_theme);
switchSyntax.setChecked(sColorSyntax); swSuggestions = (SwitchCompat) rootView.findViewById(R.id.switch_suggestions_active);
switchWrapContent.setChecked(sWrapContent); swAutoSave = (SwitchCompat) rootView.findViewById(R.id.switch_auto_save);
switchMonospace.setChecked(sUseMonospace); swIgnoreBackButton = (SwitchCompat) rootView.findViewById(R.id.switch_ignore_backbutton);
switchReadOnly.setChecked(sReadOnly); swSplitText = (SwitchCompat) rootView.findViewById(R.id.switch_page_system);
swErrorReports = (SwitchCompat) rootView.findViewById(R.id.switch_send_error_reports);
TextView fontSizeView, donateView, extraOptionsView; swLineNumbers.setChecked(sLineNumbers);
swSyntax.setChecked(sColorSyntax);
swWrapContent.setChecked(sWrapContent);
swMonospace.setChecked(sUseMonospace);
swReadOnly.setChecked(sReadOnly);
swLightTheme.setChecked(sLightTheme);
swSuggestions.setChecked(sSuggestions);
swAutoSave.setChecked(sAutoSave);
swIgnoreBackButton.setChecked(sIgnoreBackButton);
swSplitText.setChecked(sSplitText);
swErrorReports.setChecked(sErrorReports);
TextView fontSizeView, encodingView, donateView, extraOptionsView;
fontSizeView = (TextView) rootView.findViewById(R.id.drawer_button_font_size); fontSizeView = (TextView) rootView.findViewById(R.id.drawer_button_font_size);
encodingView = (TextView) rootView.findViewById(R.id.drawer_button_encoding);
extraOptionsView = (TextView) rootView.findViewById(R.id.drawer_button_extra_options); extraOptionsView = (TextView) rootView.findViewById(R.id.drawer_button_extra_options);
donateView = (TextView) rootView.findViewById(R.id.drawer_button_go_pro); donateView = (TextView) rootView.findViewById(R.id.drawer_button_go_pro);
if(ProCheckUtils.isPro(getActivity(), false)) if(ProCheckUtils.isPro(getActivity(), false))
ViewUtils.setVisible(donateView, false); ViewUtils.setVisible(donateView, false);
switchLineNumbers.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { swLineNumbers.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override @Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
sLineNumbers = isChecked;
PreferenceHelper.setLineNumbers(getActivity(), isChecked); PreferenceHelper.setLineNumbers(getActivity(), isChecked);
EventBus.getDefault().post(new APreferenceValueWasChanged(LINE_NUMERS)); ((MainActivity) getActivity()).onEvent(new APreferenceValueWasChanged(LINE_NUMERS));
} }
}); });
switchSyntax.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { swSyntax.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override @Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
sColorSyntax = isChecked; sColorSyntax = isChecked;
PreferenceHelper.setSyntaxHiglight(getActivity(), isChecked); PreferenceHelper.setSyntaxHighlight(getActivity(), isChecked);
EventBus.getDefault().post(new APreferenceValueWasChanged(SYNTAX)); ((MainActivity) getActivity()).onEvent(new APreferenceValueWasChanged(SYNTAX));
} }
}); });
switchWrapContent.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { swWrapContent.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override @Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
sWrapContent = isChecked;
PreferenceHelper.setWrapContent(getActivity(), isChecked); PreferenceHelper.setWrapContent(getActivity(), isChecked);
EventBus.getDefault().post(new APreferenceValueWasChanged(WRAP_CONTENT)); ((MainActivity) getActivity()).onEvent(new APreferenceValueWasChanged(WRAP_CONTENT));
} }
}); });
switchMonospace.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { swMonospace.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override @Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
sUseMonospace = isChecked; sUseMonospace = isChecked;
PreferenceHelper.setUseMonospace(getActivity(), isChecked); PreferenceHelper.setUseMonospace(getActivity(), isChecked);
EventBus.getDefault().post(new APreferenceValueWasChanged(MONOSPACE)); ((MainActivity) getActivity()).onEvent(new APreferenceValueWasChanged(MONOSPACE));
} }
}); });
switchReadOnly.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { swReadOnly.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override @Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
sReadOnly = isChecked;
PreferenceHelper.setReadOnly(getActivity(), isChecked); PreferenceHelper.setReadOnly(getActivity(), isChecked);
EventBus.getDefault().post(new APreferenceValueWasChanged(READ_ONLY)); ((MainActivity) getActivity()).onEvent(new APreferenceValueWasChanged(READ_ONLY));
} }
}); });
@ -144,18 +174,29 @@ public class SettingsFragment extends Fragment implements SeekbarDialog.ISeekbar
int fontCurrent = //(int) (mEditor.getTextSize() / scaledDensity); int fontCurrent = //(int) (mEditor.getTextSize() / scaledDensity);
//fontMax / 2; //fontMax / 2;
PreferenceHelper.getFontSize(getActivity()); PreferenceHelper.getFontSize(getActivity());
SeekbarDialog dialogFrag = SeekbarDialog.newInstance(SeekbarDialog.Actions NumberPickerDialog dialogFrag = NumberPickerDialog.newInstance(NumberPickerDialog
.Actions
.FontSize, 1, fontCurrent, fontMax); .FontSize, 1, fontCurrent, fontMax);
dialogFrag.setTargetFragment(SettingsFragment.this, 0); dialogFrag.setTargetFragment(SettingsFragment.this, 0);
dialogFrag.show(getFragmentManager().beginTransaction(), "dialog"); dialogFrag.show(getFragmentManager().beginTransaction(), "dialog");
} }
}); });
encodingView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
EncodingDialog dialogFrag = EncodingDialog.newInstance();
dialogFrag.setTargetFragment(SettingsFragment.this, 0);
dialogFrag.show(getFragmentManager().beginTransaction(), "dialog");
}
});
extraOptionsView.setOnClickListener(new View.OnClickListener() { extraOptionsView.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
AnimationUtils.startActivityWithScale(getActivity(), new Intent(getActivity(), View otherOptions = rootView.findViewById(R.id.other_options);
ExtraSettingsActivity.class), false, 0, v); boolean isVisible = otherOptions.getVisibility() == View.VISIBLE;
ViewUtils.setVisible(otherOptions, !isVisible);
} }
}); });
@ -166,13 +207,63 @@ public class SettingsFragment extends Fragment implements SeekbarDialog.ISeekbar
} }
}); });
swLightTheme.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
PreferenceHelper.setLightTheme(getActivity(), isChecked);
((MainActivity) getActivity()).onEvent(new APreferenceValueWasChanged(THEME_CHANGE));
}
});
swSuggestions.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
PreferenceHelper.setSuggestionsActive(getActivity(), isChecked);
((MainActivity) getActivity()).onEvent(new APreferenceValueWasChanged(TEXT_SUGGESTIONS));
}
});
swAutoSave.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
PreferenceHelper.setAutoSave(getActivity(), isChecked);
}
});
swIgnoreBackButton.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
PreferenceHelper.setIgnoreBackButton(getActivity(), isChecked);
}
});
swSplitText.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
PreferenceHelper.setSplitText(getActivity(), isChecked);
}
});
swErrorReports.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
PreferenceHelper.setSendErrorReport(getActivity(), isChecked);
}
});
return rootView; return rootView;
} }
@Override @Override
public void onSeekbarDialogDismissed(SeekbarDialog.Actions action, int value) { public void onNumberPickerDialogDismissed(NumberPickerDialog.Actions action, int value) {
PreferenceHelper.setFontSize(getActivity(), value); PreferenceHelper.setFontSize(getActivity(), value);
EventBus.getDefault().post(new APreferenceValueWasChanged(FONT_SIZE)); ((MainActivity) getActivity()).onEvent(new APreferenceValueWasChanged(FONT_SIZE));
} }
@Override
public void onEncodingSelected(String result) {
PreferenceHelper.setEncoding(getActivity(), result);
((MainActivity) getActivity()).onEvent(new APreferenceValueWasChanged(ENCODING));
}
} }

View File

@ -19,7 +19,6 @@
package sharedcode.turboeditor.task; package sharedcode.turboeditor.task;
import android.content.Context;
import android.os.AsyncTask; import android.os.AsyncTask;
import android.widget.Toast; import android.widget.Toast;
@ -30,14 +29,14 @@ import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.util.concurrent.TimeoutException; import java.util.concurrent.TimeoutException;
import de.greenrobot.event.EventBus;
import sharedcode.turboeditor.R; import sharedcode.turboeditor.R;
import sharedcode.turboeditor.activity.MainActivity;
import sharedcode.turboeditor.root.RootUtils; import sharedcode.turboeditor.root.RootUtils;
import sharedcode.turboeditor.util.EventBusEvents; import sharedcode.turboeditor.util.EventBusEvents;
public class SaveFileTask extends AsyncTask<Void, Void, Void> { public class SaveFileTask extends AsyncTask<Void, Void, Void> {
private final Context context; private final MainActivity activity;
private final String filePath; private final String filePath;
private final String text; private final String text;
private final String encoding; private final String encoding;
@ -45,8 +44,8 @@ public class SaveFileTask extends AsyncTask<Void, Void, Void> {
private String message; private String message;
private String positiveMessage; private String positiveMessage;
public SaveFileTask(Context context, String filePath, String text, String encoding) { public SaveFileTask(MainActivity activity, String filePath, String text, String encoding) {
this.context = context; this.activity = activity;
this.filePath = filePath; this.filePath = filePath;
this.text = text; this.text = text;
this.encoding = encoding; this.encoding = encoding;
@ -56,7 +55,7 @@ public class SaveFileTask extends AsyncTask<Void, Void, Void> {
protected void onPreExecute() { protected void onPreExecute() {
super.onPreExecute(); super.onPreExecute();
file = new File(filePath); file = new File(filePath);
positiveMessage = String.format(context.getString(R.string.file_saved_with_success), file.getName()); positiveMessage = String.format(activity.getString(R.string.file_saved_with_success), file.getName());
} }
/** /**
@ -85,7 +84,7 @@ public class SaveFileTask extends AsyncTask<Void, Void, Void> {
} }
} }
RootUtils.writeFile(context, file.getAbsolutePath(), text, encoding, isRoot); RootUtils.writeFile(activity, file.getAbsolutePath(), text, encoding, isRoot);
message = positiveMessage; message = positiveMessage;
} catch (Exception e) { } catch (Exception e) {
@ -100,8 +99,8 @@ public class SaveFileTask extends AsyncTask<Void, Void, Void> {
@Override @Override
protected void onPostExecute(final Void aVoid) { protected void onPostExecute(final Void aVoid) {
super.onPostExecute(aVoid); super.onPostExecute(aVoid);
Toast.makeText(context, message, Toast.LENGTH_LONG).show(); Toast.makeText(activity, message, Toast.LENGTH_LONG).show();
if (message.equals(positiveMessage)) if (message.equals(positiveMessage))
EventBus.getDefault().post(new EventBusEvents.SavedAFile(filePath)); activity.onEvent(new EventBusEvents.SavedAFile(filePath));
} }
} }

View File

@ -20,6 +20,7 @@
package sharedcode.turboeditor.texteditor; package sharedcode.turboeditor.texteditor;
import android.text.Layout; import android.text.Layout;
import android.text.TextUtils;
import android.widget.ScrollView; import android.widget.ScrollView;
public class LineUtils { public class LineUtils {
@ -34,17 +35,17 @@ public class LineUtils {
return realLines; return realLines;
} }
public int getYAtLine(ScrollView scrollView, int lineCount, int line) { public static int getYAtLine(ScrollView scrollView, int lineCount, int line) {
return scrollView.getChildAt(0).getHeight() / lineCount * line; return scrollView.getChildAt(0).getHeight() / lineCount * line;
} }
public int getFirstVisibleLine(ScrollView scrollView, int childHeight, int lineCount) throws ArithmeticException { public static int getFirstVisibleLine(ScrollView scrollView, int childHeight, int lineCount) throws ArithmeticException {
int line = (scrollView.getScrollY() * lineCount) / childHeight; int line = (scrollView.getScrollY() * lineCount) / childHeight;
if (line < 0) line = 0; if (line < 0) line = 0;
return line; return line;
} }
public int getLastVisibleLine(ScrollView scrollView, int childHeight, int lineCount, int deviceHeight) { public static int getLastVisibleLine(ScrollView scrollView, int childHeight, int lineCount, int deviceHeight) {
int line = ((scrollView.getScrollY() + deviceHeight) * lineCount) / childHeight; int line = ((scrollView.getScrollY() + deviceHeight) * lineCount) / childHeight;
if (line > lineCount) line = lineCount; if (line > lineCount) line = lineCount;
return line; return line;
@ -56,12 +57,16 @@ public class LineUtils {
toCountLinesArray = new boolean[lineCount]; toCountLinesArray = new boolean[lineCount];
realLines = new int[lineCount]; realLines = new int[lineCount];
if(TextUtils.isEmpty(text))
return;
int i; int i;
// for every line on the edittext // for every line on the edittext
for (i = 0; i < lineCount; i++) { for (i = 0; i < lineCount; i++) {
// check if this line contains "\n" // check if this line contains "\n"
hasNewLineArray[i] = text.substring(layout.getLineStart(i), layout.getLineEnd(i)).endsWith("\n"); //hasNewLineArray[i] = text.substring(layout.getLineStart(i), layout.getLineEnd(i)).endsWith("\n");
hasNewLineArray[i] = text.charAt(layout.getLineEnd(i) - 1) == '\n';
// if true // if true
if (hasNewLineArray[i]) { if (hasNewLineArray[i]) {
int j = i - 1; int j = i - 1;
@ -91,7 +96,7 @@ public class LineUtils {
* @param layout * @param layout
* @return * @return
*/ */
public int getLineFromIndex(int index, int lineCount, Layout layout) { public static int getLineFromIndex(int index, int lineCount, Layout layout) {
int line; int line;
int currentIndex = 0; int currentIndex = 0;

View File

@ -20,7 +20,11 @@
package sharedcode.turboeditor.texteditor; package sharedcode.turboeditor.texteditor;
import android.content.Context; import android.content.Context;
import android.support.annotation.Nullable;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
@ -33,22 +37,31 @@ public class PageSystem {
private int currentPage = 0; private int currentPage = 0;
private PageSystemInterface pageSystemInterface; private PageSystemInterface pageSystemInterface;
public PageSystem(Context context, PageSystemInterface pageSystemInterface, String text) { public PageSystem(Context context, PageSystemInterface pageSystemInterface, String text, @Nullable File file) {
final int charForPage = 15000;
final int MAX_KBs_WITHOUT_PAGE_SYSTEM = 50;
this.pageSystemInterface = pageSystemInterface; this.pageSystemInterface = pageSystemInterface;
pages = new LinkedList<>(); pages = new LinkedList<>();
final boolean dimensionOverLimit;
if(file != null && file.exists() && file.isFile())
dimensionOverLimit = FileUtils.sizeOf(file) >= MAX_KBs_WITHOUT_PAGE_SYSTEM * FileUtils.ONE_KB;
else
dimensionOverLimit = false;
int i = 0; int i = 0;
int charForPage = 15000;
int maxLenghtInOnePage = 30000;
int to; int to;
int indexOfReturn; int nextIndexOfReturn;
int textLenght = text.length(); final int textLength = text.length();
boolean pageSystemEnabled = PreferenceHelper.getPageSystemEnabled(context); boolean pageSystemEnabled = PreferenceHelper.getSplitText(context);
if (pageSystemEnabled && textLenght > maxLenghtInOnePage) {
while (i < textLenght && pageSystemEnabled) { if (pageSystemEnabled && dimensionOverLimit) {
while (i < textLength) {
to = i + charForPage; to = i + charForPage;
indexOfReturn = text.indexOf("\n", to); nextIndexOfReturn = text.indexOf("\n", to);
if (indexOfReturn > to) to = indexOfReturn; if (nextIndexOfReturn > to) to = nextIndexOfReturn;
if (to > text.length()) to = text.length(); if (to > text.length()) to = text.length();
pages.add(text.substring(i, to)); pages.add(text.substring(i, to));
i = to + 1; i = to + 1;

View File

@ -50,11 +50,12 @@ public class Patterns {
":[ \t](.+?);"); ":[ \t](.+?);");
public static final Pattern NUMBERS = Pattern.compile( public static final Pattern NUMBERS = Pattern.compile(
"\\b(\\d*[.]?\\d+)\\b"); "(\\b(\\d*[.]?\\d+)\\b)");
public static final Pattern CSS_NUMBERS = Pattern.compile( //public static final Pattern CSS_NUMBERS = Pattern.compile(
"/^auto$|^[+-]?[0-9]+\\.?([0-9]+)?(px|em|ex|%|in|cm|mm|pt|pc)?$/ig"); // "/^auto$|^[+-]?[0-9]+\\.?([0-9]+)?(px|em|ex|%|in|cm|mm|pt|pc)?$/ig");
public static final Pattern SYMBOLS = Pattern.compile( public static final Pattern SYMBOLS = Pattern.compile(
"(!|,|\\(|\\)|\\+|\\-|\\*|<|>|=|\\.|\\?|;|\\{|\\}|\\[|\\])"); "(!|,|\\(|\\)|\\+|\\-|\\*|<|>|=|\\.|\\?|;|\\{|\\}|\\[|\\])");
public static final Pattern NUMBERS_OR_SYMBOLS = Pattern.compile(NUMBERS.pattern()+"|"+SYMBOLS.pattern());
public static final Pattern GENERAL_KEYWORDS = Pattern.compile( public static final Pattern GENERAL_KEYWORDS = Pattern.compile(
"\\b(alignas|alignof|and|and_eq|asm|auto|bitand|bitorbool|break|case|catch|char|" "\\b(alignas|alignof|and|and_eq|asm|auto|bitand|bitorbool|break|case|catch|char|"
+ "char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype" + "char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype"
@ -78,7 +79,8 @@ public class Patterns {
// Comments // Comments
public static final Pattern XML_COMMENTS = Pattern.compile("(?s)<!--.*?-->"); public static final Pattern XML_COMMENTS = Pattern.compile("(?s)<!--.*?-->");
public static final Pattern GENERAL_COMMENTS = Pattern.compile( public static final Pattern GENERAL_COMMENTS = Pattern.compile(
"/\\*(?:.|[\\n\\r])*?\\*/|//.*|#.*"); "/\\*(?:.|[\\n\\r])*?\\*/|(?<!:)//.*|#.*");
// same as GENERAL_COMMENTS but without -> //
public static final Pattern GENERAL_COMMENTS_NO_SLASH = Pattern.compile( public static final Pattern GENERAL_COMMENTS_NO_SLASH = Pattern.compile(
"/\\*(?:.|[\\n\\r])*?\\*/|#.*"); "/\\*(?:.|[\\n\\r])*?\\*/|#.*");
public static final Pattern SQL_KEYWORDS = Pattern.compile( public static final Pattern SQL_KEYWORDS = Pattern.compile(

View File

@ -16,6 +16,7 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.util; package sharedcode.turboeditor.util;
import sharedcode.turboeditor.BuildConfig; import sharedcode.turboeditor.BuildConfig;

View File

@ -16,6 +16,7 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.util; package sharedcode.turboeditor.util;
import android.os.Build; import android.os.Build;

View File

@ -87,7 +87,7 @@ public class EventBusEvents {
} }
public enum Type { public enum Type {
FONT_SIZE, ENCODING, SYNTAX, WRAP_CONTENT, MONOSPACE, LINE_NUMERS, THEME_CHANGE, TEXT_SUGGESTIONS, READ_ONLY FONT_SIZE, ENCODING, SYNTAX, WRAP_CONTENT, MONOSPACE, LINE_NUMERS, THEME_CHANGE, TEXT_SUGGESTIONS, READ_ONLY,
} }
} }

View File

@ -51,4 +51,7 @@ public class MimeTypes {
public static final String[] MIME_SQL = { public static final String[] MIME_SQL = {
"sql", "mdf", "ndf", "ldf" "sql", "mdf", "ndf", "ldf"
}; };
public static final String[] MIME_MARKDOWN = {
"md", "mdown", "markdown",
};
} }

View File

@ -35,6 +35,15 @@ public class ThemeUtils {
} }
} }
public static void setPreferenceTheme(Activity activity){
boolean light = PreferenceHelper.getLightTheme(activity);
if (light) {
activity.setTheme(R.style.PreferenceLight);
} else {
activity.setTheme(R.style.PreferenceDark);
}
}
public static void setWindowsBackground(Activity activity) { public static void setWindowsBackground(Activity activity) {
boolean whiteTheme = PreferenceHelper.getLightTheme(activity); boolean whiteTheme = PreferenceHelper.getLightTheme(activity);
if (whiteTheme) { if (whiteTheme) {

View File

@ -16,6 +16,7 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.util; package sharedcode.turboeditor.util;
import android.content.Context; import android.content.Context;

View File

@ -16,6 +16,7 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.util; package sharedcode.turboeditor.util;
import android.graphics.Matrix; import android.graphics.Matrix;

View File

@ -0,0 +1,290 @@
/*
* Copyright (C) 2014 Vlad Mihalachi
*
* This file is part of Turbo Editor.
*
* Turbo Editor is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Turbo Editor is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package sharedcode.turboeditor.util.systemui;
import android.app.Activity;
import android.os.Build;
import android.os.Handler;
import android.os.Looper;
import android.view.WindowManager;
/**
* Helper for controlling the visibility of the System UI across the various API levels. To use
* this API, instantiate an instance of this class with the required level. The level specifies the
* extent to which the System UI's visibility is changed when you call {@link #hide()}
* or {@link #toggle()}.
*/
public final class SystemUiHelper {
/**
* In this level, the helper will toggle low profile mode.
*/
public static final int LEVEL_LOW_PROFILE = 0;
/**
* In this level, the helper will toggle the visibility of the status bar.
* If there is a navigation bar, it will toggle low profile mode.
*/
public static final int LEVEL_HIDE_STATUS_BAR = 1;
/**
* In this level, the helper will toggle the visibility of the navigation bar
* (if present and if possible) and status bar. In cases where the navigation
* bar is present but cannot be hidden, it will toggle low profile mode.
*/
public static final int LEVEL_LEAN_BACK = 2;
/**
* In this level, the helper will toggle the visibility of the navigation bar
* (if present and if possible) and status bar, in an immersive mode. This means that the app
* will continue to receive all touch events. The user can reveal the system bars with an
* inward swipe along the region where the system bars normally appear.
*
* <p>The {@link #FLAG_IMMERSIVE_STICKY} flag can be used to control how the system bars are
* displayed.
*/
public static final int LEVEL_IMMERSIVE = 3;
/**
* When this flag is set, the
* {@link android.view.WindowManager.LayoutParams#FLAG_LAYOUT_IN_SCREEN}
* flag will be set on older devices, making the status bar "float" on top
* of the activity layout. This is most useful when there are no controls at
* the top of the activity layout.
* <p>
* This flag isn't used on newer devices because the <a
* href="http://developer.android.com/design/patterns/actionbar.html">action
* bar</a>, the most important structural element of an Android app, should
* be visible and not obscured by the system UI.
*/
public static final int FLAG_LAYOUT_IN_SCREEN_OLDER_DEVICES = 0x1;
/**
* Used with {@link #LEVEL_IMMERSIVE}. When this flag is set, an inward swipe in the system
* bars areas will cause the system bars to temporarily appear in a semi-transparent state,
* but no flags are cleared, and your system UI visibility change listeners are not triggered.
* The bars automatically hide again after a short delay, or if the user interacts with the
* middle of the screen.
*/
public static final int FLAG_IMMERSIVE_STICKY = 0x2;
private static final String LOG_TAG = SystemUiHelper.class.getSimpleName();
private final SystemUiHelperImpl mImpl;
private final Handler mHandler;
private final Runnable mHideRunnable;
/**
* Construct a new SystemUiHelper.
*
* @param activity The Activity who's system UI should be changed
* @param level The level of hiding. Should be either {@link #LEVEL_LOW_PROFILE},
* {@link #LEVEL_HIDE_STATUS_BAR}, {@link #LEVEL_LEAN_BACK} or
* {@link #LEVEL_IMMERSIVE}
* @param flags Additional options. See {@link #FLAG_LAYOUT_IN_SCREEN_OLDER_DEVICES} and
* {@link #FLAG_IMMERSIVE_STICKY}
*/
public SystemUiHelper(Activity activity, int level, int flags) {
this(activity, level, flags, null);
}
/**
* Construct a new SystemUiHelper.
*
* @param activity The Activity who's system UI should be changed
* @param level The level of hiding. Should be either {@link #LEVEL_LOW_PROFILE},
* {@link #LEVEL_HIDE_STATUS_BAR}, {@link #LEVEL_LEAN_BACK} or
* {@link #LEVEL_IMMERSIVE}
* @param flags Additional options. See {@link #FLAG_LAYOUT_IN_SCREEN_OLDER_DEVICES} and
* {@link #FLAG_IMMERSIVE_STICKY}
* @param listener A listener which is called when the system visibility is changed
*/
public SystemUiHelper(Activity activity, int level, int flags,
OnVisibilityChangeListener listener) {
mHandler = new Handler(Looper.getMainLooper());
mHideRunnable = new HideRunnable();
// Create impl
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
mImpl = new SystemUiHelperImplKK(activity, level, flags, listener);
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
mImpl = new SystemUiHelperImplJB(activity, level, flags, listener);
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
mImpl = new SystemUiHelperImplICS(activity, level, flags, listener);
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
mImpl = new SystemUiHelperImplHC(activity, level, flags, listener);
} else {
mImpl = new SystemUiHelperImplBase(activity, level, flags, listener);
}
}
/**
* @return true if the system UI is currently showing. What this means depends on the mode this
* {@link android.example.android.systemuivis.SystemUiHelper} was instantiated with.
*/
public boolean isShowing() {
return mImpl.isShowing();
}
/**
* Show the system UI. What this means depends on the mode this {@link android.example.android.systemuivis.SystemUiHelper} was
* instantiated with.
*
* <p>Any currently queued delayed hide requests will be removed.
*/
public void show() {
// Ensure that any currently queued hide calls are removed
removeQueuedRunnables();
mImpl.show();
}
/**
* Hide the system UI. What this means depends on the mode this {@link android.example.android.systemuivis.SystemUiHelper} was
* instantiated with.
*
* <p>Any currently queued delayed hide requests will be removed.
*/
public void hide() {
// Ensure that any currently queued hide calls are removed
removeQueuedRunnables();
mImpl.hide();
}
/**
* Request that the system UI is hidden after a delay.
*
* <p>Any currently queued delayed hide requests will be removed.
*
* @param delayMillis The delay (in milliseconds) until the Runnable
* will be executed.
*/
public void delayHide(long delayMillis) {
// Ensure that any currently queued hide calls are removed
removeQueuedRunnables();
mHandler.postDelayed(mHideRunnable, delayMillis);
}
/**
* Toggle whether the system UI is displayed.
*/
public void toggle() {
if (mImpl.isShowing()) {
mImpl.hide();
} else {
mImpl.show();
}
}
private void removeQueuedRunnables() {
// Ensure that any currently queued hide calls are removed
mHandler.removeCallbacks(mHideRunnable);
}
/**
* A callback interface used to listen for system UI visibility changes.
*/
public interface OnVisibilityChangeListener {
/**
* Called when the system UI visibility has changed.
*
* @param visible True if the system UI is visible.
*/
public void onVisibilityChange(boolean visible);
}
static abstract class SystemUiHelperImpl {
final Activity mActivity;
final int mLevel;
final int mFlags;
final OnVisibilityChangeListener mOnVisibilityChangeListener;
boolean mIsShowing = true;
SystemUiHelperImpl(Activity activity, int level, int flags,
OnVisibilityChangeListener onVisibilityChangeListener) {
mActivity = activity;
mLevel = level;
mFlags = flags;
mOnVisibilityChangeListener = onVisibilityChangeListener;
}
abstract void show();
abstract void hide();
boolean isShowing() {
return mIsShowing;
}
void setIsShowing(boolean isShowing) {
mIsShowing = isShowing;
if (mOnVisibilityChangeListener != null) {
mOnVisibilityChangeListener.onVisibilityChange(mIsShowing);
}
}
}
/**
* Base implementation. Used on API level 10 and below.
*/
static class SystemUiHelperImplBase extends SystemUiHelperImpl {
SystemUiHelperImplBase(Activity activity, int level, int flags,
OnVisibilityChangeListener onVisibilityChangeListener) {
super(activity, level, flags, onVisibilityChangeListener);
if ((mFlags & SystemUiHelper.FLAG_LAYOUT_IN_SCREEN_OLDER_DEVICES) != 0) {
mActivity.getWindow().addFlags(
WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN
| WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
}
}
@Override
void show() {
if (mLevel > SystemUiHelper.LEVEL_LOW_PROFILE) {
mActivity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
setIsShowing(true);
}
}
@Override
void hide() {
if (mLevel > SystemUiHelper.LEVEL_LOW_PROFILE) {
mActivity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
setIsShowing(false);
}
}
}
private class HideRunnable implements Runnable {
@Override
public void run() {
hide();
}
}
}

View File

@ -0,0 +1,94 @@
/*
* Copyright (C) 2014 Vlad Mihalachi
*
* This file is part of Turbo Editor.
*
* Turbo Editor is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Turbo Editor is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package sharedcode.turboeditor.util.systemui;
import android.app.Activity;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.view.WindowManager;
class SystemUiHelperImplHC extends SystemUiHelper.SystemUiHelperImpl
implements View.OnSystemUiVisibilityChangeListener {
final View mDecorView;
SystemUiHelperImplHC(Activity activity, int level, int flags,
SystemUiHelper.OnVisibilityChangeListener onVisibilityChangeListener) {
super(activity, level, flags, onVisibilityChangeListener);
mDecorView = activity.getWindow().getDecorView();
mDecorView.setOnSystemUiVisibilityChangeListener(this);
}
@Override
void show() {
mDecorView.setSystemUiVisibility(createShowFlags());
}
@Override
void hide() {
mDecorView.setSystemUiVisibility(createHideFlags());
}
@Override
public final void onSystemUiVisibilityChange(int visibility) {
if ((visibility & createTestFlags()) != 0) {
onSystemUiHidden();
} else {
onSystemUiShown();
}
}
protected void onSystemUiShown() {
ActionBar ab = ((ActionBarActivity) mActivity).getSupportActionBar();
if (ab != null) {
ab.show();
}
mActivity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
setIsShowing(true);
}
protected void onSystemUiHidden() {
ActionBar ab = ((ActionBarActivity) mActivity).getSupportActionBar();
if (ab != null) {
ab.hide();
}
mActivity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
setIsShowing(false);
}
protected int createShowFlags() {
return View.STATUS_BAR_VISIBLE;
}
protected int createHideFlags() {
return View.STATUS_BAR_HIDDEN;
}
protected int createTestFlags() {
return View.STATUS_BAR_HIDDEN;
}
}

View File

@ -0,0 +1,60 @@
/*
* Copyright (C) 2014 Vlad Mihalachi
*
* This file is part of Turbo Editor.
*
* Turbo Editor is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Turbo Editor is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package sharedcode.turboeditor.util.systemui;
import android.annotation.TargetApi;
import android.app.Activity;
import android.os.Build;
import android.view.View;
@TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH)
class SystemUiHelperImplICS extends SystemUiHelperImplHC {
SystemUiHelperImplICS(Activity activity, int level, int flags,
SystemUiHelper.OnVisibilityChangeListener onVisibilityChangeListener) {
super(activity, level, flags, onVisibilityChangeListener);
}
@Override
protected int createShowFlags() {
return View.SYSTEM_UI_FLAG_VISIBLE;
}
@Override
protected int createTestFlags() {
if (mLevel >= SystemUiHelper.LEVEL_LEAN_BACK) {
// Intentionally override test flags.
return View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
}
return View.SYSTEM_UI_FLAG_LOW_PROFILE;
}
@Override
protected int createHideFlags() {
int flag = View.SYSTEM_UI_FLAG_LOW_PROFILE;
if (mLevel >= SystemUiHelper.LEVEL_LEAN_BACK) {
flag |= View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
}
return flag;
}
}

View File

@ -0,0 +1,93 @@
/*
* Copyright (C) 2014 Vlad Mihalachi
*
* This file is part of Turbo Editor.
*
* Turbo Editor is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Turbo Editor is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package sharedcode.turboeditor.util.systemui;
import android.annotation.TargetApi;
import android.app.ActionBar;
import android.app.Activity;
import android.os.Build;
import android.view.View;
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
class SystemUiHelperImplJB extends SystemUiHelperImplICS {
SystemUiHelperImplJB(Activity activity, int level, int flags,
SystemUiHelper.OnVisibilityChangeListener onVisibilityChangeListener) {
super(activity, level, flags, onVisibilityChangeListener);
}
@Override
protected int createShowFlags() {
int flag = super.createShowFlags();
if (mLevel >= SystemUiHelper.LEVEL_HIDE_STATUS_BAR) {
flag |= View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN;
if (mLevel >= SystemUiHelper.LEVEL_LEAN_BACK) {
flag |= View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION;
}
}
return flag;
}
@Override
protected int createHideFlags() {
int flag = super.createHideFlags();
if (mLevel >= SystemUiHelper.LEVEL_HIDE_STATUS_BAR) {
flag |= View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_FULLSCREEN;
if (mLevel >= SystemUiHelper.LEVEL_LEAN_BACK) {
flag |= View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION;
}
}
return flag;
}
@Override
protected void onSystemUiShown() {
if (mLevel == SystemUiHelper.LEVEL_LOW_PROFILE) {
// Manually show the action bar when in low profile mode.
ActionBar ab = mActivity.getActionBar();
if (ab != null) {
ab.show();
}
}
setIsShowing(false);
}
@Override
protected void onSystemUiHidden() {
if (mLevel == SystemUiHelper.LEVEL_LOW_PROFILE) {
// Manually hide the action bar when in low profile mode.
ActionBar ab = mActivity.getActionBar();
if (ab != null) {
ab.hide();
}
}
setIsShowing(true);
}
}

View File

@ -0,0 +1,53 @@
/*
* Copyright (C) 2014 Vlad Mihalachi
*
* This file is part of Turbo Editor.
*
* Turbo Editor is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Turbo Editor is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package sharedcode.turboeditor.util.systemui;
import android.annotation.TargetApi;
import android.app.Activity;
import android.os.Build;
import android.view.View;
@TargetApi(Build.VERSION_CODES.KITKAT)
class SystemUiHelperImplKK extends SystemUiHelperImplJB {
SystemUiHelperImplKK(Activity activity, int level, int flags,
SystemUiHelper.OnVisibilityChangeListener onVisibilityChangeListener) {
super(activity, level, flags, onVisibilityChangeListener);
}
@Override
protected int createHideFlags() {
int flag = super.createHideFlags();
if (mLevel == SystemUiHelper.LEVEL_IMMERSIVE) {
// If the client requested immersive mode, and we're on Android 4.4
// or later, add relevant flags. Applying HIDE_NAVIGATION without
// IMMERSIVE prevents the activity from accepting all touch events,
// so we only do this on Android 4.4 and later (where IMMERSIVE is
// present).
flag |= ((mFlags & SystemUiHelper.FLAG_IMMERSIVE_STICKY) != 0)
? View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
: View.SYSTEM_UI_FLAG_IMMERSIVE;
}
return flag;
}
}

View File

@ -24,7 +24,7 @@ import android.support.v4.widget.DrawerLayout;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.view.KeyEvent; import android.view.KeyEvent;
public class CustomDrawerLayout extends DrawerLayout { public class CustomDrawerLayout extends DrawerLayout{
public CustomDrawerLayout(Context context) { public CustomDrawerLayout(Context context) {
super(context); super(context);
} }

View File

@ -16,11 +16,8 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package sharedcode.turboeditor.views;
/** package sharedcode.turboeditor.views;
* Created by Artem on 28.01.14.
*/
import android.app.Activity; import android.app.Activity;
import android.app.AlertDialog; import android.app.AlertDialog;
@ -41,7 +38,7 @@ import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder; import org.apache.commons.lang3.builder.HashCodeBuilder;
import sharedcode.turboeditor.R; import sharedcode.turboeditor.R;
import sharedcode.turboeditor.fragment.AboutDialog; import sharedcode.turboeditor.dialogfragment.AboutDialog;
import sharedcode.turboeditor.iab.DonationFragment; import sharedcode.turboeditor.iab.DonationFragment;
/** /**

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Some files were not shown because too many files have changed in this diff Show More