diff --git a/.travis.yml b/.travis.yml index 6ddafb15b142..8b969bb69d93 100644 --- a/.travis.yml +++ b/.travis.yml @@ -51,9 +51,6 @@ env: # - ANDROID_TARGET=android-20 ANDROID_ABI=armeabi-v7a - ANDROID_TARGET=android-21 ANDROID_ABI=armeabi-v7a # - ANDROID_TARGET=android-22 ANDROID_ABI=armeabi-v7a -addons: - code_climate: - repo_token: 2b24c9463329705e25db1b4ed139d9eb32a9cc36160f848ecb936579f94670b0 notifications: email: false diff --git a/app/app-release.apk b/app/app-release.apk index f0ee5db6dffc..e6d845fc84ee 100644 Binary files a/app/app-release.apk and b/app/app-release.apk differ diff --git a/app/build.gradle b/app/build.gradle index 9cd87990b020..81b18e69a600 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,4 +1,5 @@ apply plugin: 'com.android.application' +apply plugin: 'android-apt' android { compileSdkVersion 23 @@ -8,8 +9,8 @@ android { applicationId "openfoodfacts.github.scrachx.openfood" minSdkVersion 16 targetSdkVersion 23 - versionCode 22 - versionName "0.2.4" + versionCode 23 + versionName "0.2.5" } dexOptions { @@ -48,7 +49,7 @@ buildscript { maven { url "https://jitpack.io" } } dependencies { - classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4' + classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' } } @@ -61,35 +62,36 @@ dependencies { compile 'com.android.support:multidex:1.0.1' compile 'com.android.support:recyclerview-v7:23.4.0' - compile 'com.jakewharton:butterknife:7.0.1' + compile 'com.jakewharton:butterknife:8.4.0' + apt 'com.jakewharton:butterknife-compiler:8.4.0' compile 'com.loopj.android:android-async-http:1.4.9' - compile 'com.fasterxml.jackson.core:jackson-core:2.7.3' - compile 'com.fasterxml.jackson.core:jackson-databind:2.7.3' - compile 'com.fasterxml.jackson.core:jackson-annotations:2.7.3' + compile group: 'com.fasterxml.jackson.core', name: 'jackson-core', version: '2.8.3' + compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.8.3' + compile group: 'com.fasterxml.jackson.core', name: 'jackson-annotations', version: '2.8.3' compile 'commons-validator:commons-validator:1.5.1' compile 'net.steamcrafted:load-toast:1.0.10' - compile 'me.dm7.barcodescanner:zxing:1.8.4' + compile 'me.dm7.barcodescanner:zxing:1.9' - compile 'com.hkm.loyalslider:library:1.8.8' + compile 'com.hkm.loyalslider:library:1.9.4' compile 'org.jsoup:jsoup:1.8.3' compile 'com.github.satyan:sugar:1.5' - compile('com.afollestad.material-dialogs:core:0.8.6.1') { + compile('com.afollestad.material-dialogs:core:0.9.0.2') { transitive = true } - compile('com.mikepenz:materialdrawer:5.3.2') { + compile('com.mikepenz:materialdrawer:5.6.0@aar') { transitive = true } - compile 'com.github.clans:fab:1.6.3' + compile 'com.github.clans:fab:1.6.4' compile 'com.mikepenz:iconics-core:2.5.11@aar' compile 'com.mikepenz:google-material-typeface:2.2.0.1.original@aar' diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 9501d46e8e72..8aca1d5621c2 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -59,7 +59,7 @@ android:value="offacts.db"/> + android:value="7"/> diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/AlertUserFragment.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/AlertUserFragment.java index 0c776f2a4c62..a31341edf4ea 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/AlertUserFragment.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/AlertUserFragment.java @@ -15,15 +15,12 @@ import com.afollestad.materialdialogs.DialogAction; import com.afollestad.materialdialogs.MaterialDialog; import com.github.clans.fab.FloatingActionButton; - import net.steamcrafted.loadtoast.LoadToast; - import org.apache.commons.collections.IteratorUtils; import java.util.ArrayList; import java.util.List; import java.util.Locale; - -import butterknife.Bind; +import butterknife.BindView; import butterknife.OnClick; import openfoodfacts.github.scrachx.openfood.R; import openfoodfacts.github.scrachx.openfood.models.Allergen; @@ -37,7 +34,7 @@ public class AlertUserFragment extends BaseFragment { private RecyclerView mRvAllergens; private SharedPreferences mSettings; private View mView; - @Bind(R.id.fab) FloatingActionButton mFab; + @BindView(R.id.fab) FloatingActionButton mFab; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/FindProductFragment.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/FindProductFragment.java index 69e5c19bafcc..525da7087042 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/FindProductFragment.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/FindProductFragment.java @@ -10,8 +10,7 @@ import android.widget.EditText; import android.widget.Toast; import org.apache.commons.validator.routines.checkdigit.EAN13CheckDigit; - -import butterknife.Bind; +import butterknife.BindView; import butterknife.OnClick; import openfoodfacts.github.scrachx.openfood.R; import openfoodfacts.github.scrachx.openfood.models.FoodAPIRestClientUsage; @@ -19,8 +18,8 @@ public class FindProductFragment extends BaseFragment { - @Bind(R.id.editTextBarcode) EditText mBarCodeText; - @Bind(R.id.buttonBarcode) Button mLaunchButton; + @BindView(R.id.editTextBarcode) EditText mBarCodeText; + @BindView(R.id.buttonBarcode) Button mLaunchButton; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/HomeFragment.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/HomeFragment.java index 8382be1319b6..d1e1ff53dfb2 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/HomeFragment.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/HomeFragment.java @@ -12,12 +12,10 @@ import android.view.View; import android.view.ViewGroup; import android.widget.Button; - import com.afollestad.materialdialogs.MaterialDialog; import com.loopj.android.http.AsyncHttpResponseHandler; import com.loopj.android.http.RequestParams; - -import butterknife.Bind; +import butterknife.BindView; import butterknife.OnClick; import openfoodfacts.github.scrachx.openfood.R; import openfoodfacts.github.scrachx.openfood.network.FoodUserClient; @@ -26,7 +24,7 @@ public class HomeFragment extends BaseFragment { - @Bind(R.id.buttonScan) Button mButtonScan; + @BindView(R.id.buttonScan) Button mButtonScan; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/IngredientsProductFragment.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/IngredientsProductFragment.java index ce99e973a56a..26e9f39c5cda 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/IngredientsProductFragment.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/IngredientsProductFragment.java @@ -19,21 +19,20 @@ import java.util.Locale; import java.util.regex.Matcher; import java.util.regex.Pattern; - -import butterknife.Bind; +import butterknife.BindView; import openfoodfacts.github.scrachx.openfood.R; import openfoodfacts.github.scrachx.openfood.models.Additive; import openfoodfacts.github.scrachx.openfood.models.State; public class IngredientsProductFragment extends BaseFragment { - @Bind(R.id.textIngredientProduct) TextView ingredientsProduct; - @Bind(R.id.textSubstanceProduct) TextView substanceProduct; - @Bind(R.id.textTraceProduct) TextView traceProduct; - @Bind(R.id.textAdditiveProduct) TextView additiveProduct; - @Bind(R.id.textPalmOilProduct) TextView palmOilProduct; - @Bind(R.id.textMayBeFromPalmOilProduct) TextView mayBeFromPalmOilProduct; - @Bind(R.id.ingredientContainer) ViewGroup containerView; + @BindView(R.id.textIngredientProduct) TextView ingredientsProduct; + @BindView(R.id.textSubstanceProduct) TextView substanceProduct; + @BindView(R.id.textTraceProduct) TextView traceProduct; + @BindView(R.id.textAdditiveProduct) TextView additiveProduct; + @BindView(R.id.textPalmOilProduct) TextView palmOilProduct; + @BindView(R.id.textMayBeFromPalmOilProduct) TextView mayBeFromPalmOilProduct; + @BindView(R.id.ingredientContainer) ViewGroup containerView; private State mState; @Override diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/NutritionProductFragment.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/NutritionProductFragment.java index b98e9c8e626f..3aa1d5c33931 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/NutritionProductFragment.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/NutritionProductFragment.java @@ -11,8 +11,7 @@ import android.widget.ListView; import android.widget.TextView; import java.util.ArrayList; - -import butterknife.Bind; +import butterknife.BindView; import openfoodfacts.github.scrachx.openfood.R; import openfoodfacts.github.scrachx.openfood.models.NutrientLevelItem; import openfoodfacts.github.scrachx.openfood.models.NutrientLevels; @@ -21,9 +20,9 @@ public class NutritionProductFragment extends BaseFragment { - @Bind(R.id.imageGrade) ImageView img; - @Bind(R.id.listNutrientLevels) ListView lv; - @Bind(R.id.textServingSize) TextView serving; + @BindView(R.id.imageGrade) ImageView img; + @BindView(R.id.listNutrientLevels) ListView lv; + @BindView(R.id.textServingSize) TextView serving; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/OfflineEditFragment.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/OfflineEditFragment.java index 69ca5baec5a9..93070d599cf5 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/OfflineEditFragment.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/OfflineEditFragment.java @@ -15,14 +15,12 @@ import android.widget.Button; import android.widget.ListView; import android.widget.Toast; - import com.afollestad.materialdialogs.DialogAction; import com.afollestad.materialdialogs.MaterialDialog; import com.loopj.android.http.RequestParams; import java.util.ArrayList; import java.util.List; - -import butterknife.Bind; +import butterknife.BindView; import butterknife.OnClick; import butterknife.OnItemClick; import butterknife.OnItemLongClick; @@ -38,8 +36,8 @@ public class OfflineEditFragment extends BaseFragment { private ArrayList saveItems; - @Bind(R.id.listOfflineSave) ListView listView; - @Bind(R.id.buttonSendAll) Button buttonSend; + @BindView(R.id.listOfflineSave) ListView listView; + @BindView(R.id.buttonSendAll) Button buttonSend; private String loginS, passS; @Override diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/SearchProductsFragment.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/SearchProductsFragment.java index dcb85d8cc0bb..24a4dd62401a 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/SearchProductsFragment.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/fragments/SearchProductsFragment.java @@ -10,8 +10,7 @@ import android.widget.ListView; import java.util.ArrayList; import java.util.List; - -import butterknife.Bind; +import butterknife.BindView; import butterknife.OnClick; import butterknife.OnItemClick; import openfoodfacts.github.scrachx.openfood.R; @@ -26,9 +25,9 @@ public class SearchProductsFragment extends BaseFragment { private ProductsListAdapter adapter; private FoodAPIRestClientUsage api; - @Bind(R.id.listProducts) ListView listView; - @Bind(R.id.buttonSearchProducts) Button buttonSearch; - @Bind(R.id.editTextName) EditText nameSearch; + @BindView(R.id.listProducts) ListView listView; + @BindView(R.id.buttonSearchProducts) Button buttonSearch; + @BindView(R.id.editTextName) EditText nameSearch; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/LoginActivity.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/LoginActivity.java index 4669be3d5112..4c46f6d33814 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/LoginActivity.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/LoginActivity.java @@ -5,18 +5,19 @@ import android.content.SharedPreferences; import android.net.Uri; import android.os.Bundle; +import android.support.annotation.NonNull; import android.text.TextUtils; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; +import com.afollestad.materialdialogs.DialogAction; +import com.afollestad.materialdialogs.MaterialDialog; import com.loopj.android.http.AsyncHttpResponseHandler; import com.loopj.android.http.RequestParams; - import net.steamcrafted.loadtoast.LoadToast; - -import butterknife.Bind; +import butterknife.BindView; import butterknife.OnClick; import openfoodfacts.github.scrachx.openfood.R; import openfoodfacts.github.scrachx.openfood.network.FoodUserClient; @@ -27,16 +28,25 @@ */ public class LoginActivity extends BaseActivity { - @Bind(R.id.editTextLogin) EditText loginView; - @Bind(R.id.editTextPass) EditText passwordView; - @Bind(R.id.textInfoLogin) TextView infoLogin; - @Bind(R.id.buttonSave) Button save; - @Bind(R.id.buttonCreateAccount) Button signup; + @BindView(R.id.editTextLogin) EditText loginView; + @BindView(R.id.editTextPass) EditText passwordView; + @BindView(R.id.textInfoLogin) TextView infoLogin; + @BindView(R.id.buttonSave) Button save; + @BindView(R.id.buttonCreateAccount) Button signup; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); + final SharedPreferences settings = getSharedPreferences("login", 0); + String loginS = settings.getString("user", getResources().getString(R.string.txt_anonymous)); + if(!loginS.equals(getResources().getString(R.string.txt_anonymous))) { + new MaterialDialog.Builder(this) + .title("Login") + .content("Already logged in!") + .neutralText(R.string.ok_button) + .show(); + } } @OnClick(R.id.buttonCreateAccount) diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/MainActivity.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/MainActivity.java index 3b0734262491..925cabe6f9e9 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/MainActivity.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/MainActivity.java @@ -18,7 +18,6 @@ import android.view.MenuItem; import android.view.View; import android.widget.CompoundButton; - import com.afollestad.materialdialogs.DialogAction; import com.afollestad.materialdialogs.MaterialDialog; import com.mikepenz.fastadapter.utils.RecyclerViewCacheUtil; @@ -36,8 +35,7 @@ import com.mikepenz.materialdrawer.model.interfaces.IDrawerItem; import com.mikepenz.materialdrawer.model.interfaces.IProfile; import com.mikepenz.materialdrawer.model.interfaces.Nameable; - -import butterknife.Bind; +import butterknife.BindView; import openfoodfacts.github.scrachx.openfood.R; import openfoodfacts.github.scrachx.openfood.fragments.AlertUserFragment; import openfoodfacts.github.scrachx.openfood.fragments.FindProductFragment; @@ -52,7 +50,7 @@ public class MainActivity extends BaseActivity { private AccountHeader headerResult = null; private Drawer result = null; - @Bind(R.id.toolbar) Toolbar toolbar; + @BindView(R.id.toolbar) Toolbar toolbar; @Override protected void onCreate(Bundle savedInstanceState) { diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/ProductActivity.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/ProductActivity.java index 9ee0ecfb8222..defe8328fcc3 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/ProductActivity.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/ProductActivity.java @@ -13,8 +13,7 @@ import com.afollestad.materialdialogs.MaterialDialog; import java.util.ArrayList; import java.util.List; - -import butterknife.Bind; +import butterknife.BindView; import openfoodfacts.github.scrachx.openfood.R; import openfoodfacts.github.scrachx.openfood.models.Allergen; import openfoodfacts.github.scrachx.openfood.models.State; @@ -28,8 +27,8 @@ public class ProductActivity extends BaseActivity { private List mAllergens; private State mState; - @Bind(R.id.pager) ViewPager viewPager; - @Bind(R.id.toolbar) Toolbar toolbar; + @BindView(R.id.pager) ViewPager viewPager; + @BindView(R.id.toolbar) Toolbar toolbar; @Override protected void onCreate(Bundle savedInstanceState) { diff --git a/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/SaveProductOfflineActivity.java b/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/SaveProductOfflineActivity.java index 1bd191ba4d0b..3bd5cbb54915 100644 --- a/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/SaveProductOfflineActivity.java +++ b/app/src/main/java/openfoodfacts/github/scrachx/openfood/views/SaveProductOfflineActivity.java @@ -26,8 +26,7 @@ import com.squareup.picasso.Picasso; import java.io.File; import java.util.List; - -import butterknife.Bind; +import butterknife.BindView; import butterknife.OnClick; import butterknife.OnItemSelected; import openfoodfacts.github.scrachx.openfood.R; @@ -39,15 +38,15 @@ public class SaveProductOfflineActivity extends BaseActivity { - @Bind(R.id.imageSave) ImageView imgSave; - @Bind(R.id.editTextName) EditText name; - @Bind(R.id.editTextStores) EditText store; - @Bind(R.id.editTextWeight) EditText weight; - @Bind(R.id.spinnerImages) Spinner spinnerI; - @Bind(R.id.spinnerUnitWeight) Spinner spinnerW; - @Bind(R.id.buttonTakePicture) Button takePic; - @Bind(R.id.buttonFromGallery) Button takeGallery; - @Bind(R.id.buttonSaveProduct) Button save; + @BindView(R.id.imageSave) ImageView imgSave; + @BindView(R.id.editTextName) EditText name; + @BindView(R.id.editTextStores) EditText store; + @BindView(R.id.editTextWeight) EditText weight; + @BindView(R.id.spinnerImages) Spinner spinnerI; + @BindView(R.id.spinnerUnitWeight) Spinner spinnerW; + @BindView(R.id.buttonTakePicture) Button takePic; + @BindView(R.id.buttonFromGallery) Button takeGallery; + @BindView(R.id.buttonSaveProduct) Button save; private SendProduct mProduct = new SendProduct(); private String mBarcode = null; diff --git a/app/src/main/res/layout/fragment_scanner.xml b/app/src/main/res/layout/fragment_scanner.xml index a50e14cafcad..fb869ad28563 100644 --- a/app/src/main/res/layout/fragment_scanner.xml +++ b/app/src/main/res/layout/fragment_scanner.xml @@ -16,7 +16,7 @@ android:layout_gravity="top" android:minHeight="?attr/actionBarSize" android:background="@color/indigo_400" - app:theme="@style/MaterialTheme.TranslucentStatus" + android:theme="@style/MaterialTheme.TranslucentStatus" android:layout_width="match_parent" android:layout_height="wrap_content"/>