diff --git a/app/build.gradle b/app/build.gradle index 963f5839a..e23f290d5 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -66,3 +66,7 @@ dependencies { implementation 'com.squareup.picasso:picasso:2.5.2' implementation 'com.eftimoff:android-viewpager-transformers:1.0.1@aar' } + +preBuild.dependsOn('checkstyle') +assemble.dependsOn('lint') +check.dependsOn('checkstyle') \ No newline at end of file diff --git a/app/src/main/java/swati4star/createpdf/activity/MainActivity.java b/app/src/main/java/swati4star/createpdf/activity/MainActivity.java index 47508ba54..2916be797 100644 --- a/app/src/main/java/swati4star/createpdf/activity/MainActivity.java +++ b/app/src/main/java/swati4star/createpdf/activity/MainActivity.java @@ -3,6 +3,7 @@ import android.content.Intent; import android.net.Uri; import android.os.Bundle; +import android.os.Handler; import android.support.annotation.NonNull; import android.support.design.widget.NavigationView; import android.support.v4.app.Fragment; @@ -14,6 +15,7 @@ import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.MenuItem; +import android.widget.Toast; import java.util.ArrayList; @@ -45,6 +47,9 @@ public class MainActivity extends AppCompatActivity private FeedbackUtils mFeedbackUtils; private NavigationView mNavigationView; + private boolean mDoubleBackToExitPressedOnce = false; + + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -170,8 +175,38 @@ public void onBackPressed() { if (drawer.isDrawerOpen(GravityCompat.START)) { drawer.closeDrawer(GravityCompat.START); } else { + if (getCurrentFragment() instanceof ImageToPdfFragment) { + checkDoubleBackPress(); + } else { + Fragment fragment = new ImageToPdfFragment(); + getSupportFragmentManager().beginTransaction().replace(R.id.content, fragment).commit(); + setDefaultMenuSelected(0); + } + } + } + + private void checkDoubleBackPress() { + if (mDoubleBackToExitPressedOnce) { super.onBackPressed(); + return; } + + this.mDoubleBackToExitPressedOnce = true; + Toast.makeText(this, R.string.confirm_exit_message, Toast.LENGTH_SHORT).show(); + + new Handler().postDelayed(new Runnable() { + + @Override + public void run() { + mDoubleBackToExitPressedOnce = false; + } + }, 1500); + } + + Fragment getCurrentFragment() { + Fragment currentFragment = getSupportFragmentManager() + .findFragmentById(R.id.content); + return currentFragment; } @Override diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 0e09361ed..45bd3dca7 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -246,6 +246,8 @@ Image Rearranging Options %s_%s.jpg Reset + + Presione de nuevo para salir Add Image Border Enable Doodle Effect Disable Doodle Effect diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index a9c4efccb..4ede4d7dd 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -247,6 +247,8 @@ Image Rearranging Options %s_%s.jpg Reset + + Appuyez à nouveau pour quitter Add Image Border Enable Doodle Effect Disable Doodle Effect diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 5e62fa9be..071ab402b 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -245,6 +245,8 @@ Image Rearranging Options %s_%s.jpg Reset + + もう一度戻ると終了します。 Add Image Border Enable Doodle Effect Disable Doodle Effect diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 714b4f302..5f51b7d37 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -304,6 +304,9 @@ Image Rearranging Options %s_%s.jpg Reset + + Press back again to exit + Add Image Border Enable Doodle Effect Disable Doodle Effect