move things around

This commit is contained in:
Phillip Thelen 2017-05-15 11:54:39 +02:00
parent 693b0fd8fe
commit c21bdb0690
31 changed files with 210 additions and 242 deletions

View file

@ -162,7 +162,7 @@
android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
<activity android:name=".ui.activities.GemPurchaseActivity"
android:screenOrientation="portrait" />
<receiver android:process=":remote" android:name=".NotificationPublisher" />
<receiver android:process=":remote" android:name=".receivers.NotificationPublisher" />
<receiver
android:process=":remote"

View file

@ -1,17 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:bind="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<import type="com.habitrpg.android.habitica.models.user.Preferences" />
<import type="android.view.View" />
<variable
name="preferences"
type="Preferences" />
</data>
<android.support.v4.widget.NestedScrollView
<android.support.v4.widget.NestedScrollView xmlns:bind="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbarSize="3dp"
@ -153,4 +142,3 @@
</android.support.v7.widget.CardView>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
</layout>

View file

@ -1,68 +1,51 @@
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<data>
<import type="com.habitrpg.android.habitica.models.tasks.Task" />
<import type="android.view.View"/>
<variable
name="task"
type="Task" />
</data>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@color/white">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@color/white">
<LinearLayout
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_centerVertical="true"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingEnd="16dp"
android:paddingBottom="20dp"
android:paddingTop="20dp">
<TextView
android:id="@+id/titleTextView"
style="@style/CardTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_centerVertical="true"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingEnd="16dp"
android:paddingBottom="20dp"
android:paddingTop="20dp">
<TextView
android:id="@+id/checkedTextView"
style="@style/CardTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@{task.text}" />
android:layout_height="wrap_content" />
<TextView
android:id="@+id/notesTextView"
style="@style/CardText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@{task.notes}"
android:visibility="@{task.notes != null ? View.VISIBLE : View.GONE}"/>
</LinearLayout>
<View
android:id="@+id/rightBorderView"
android:layout_width="5dp"
android:layout_height="match_parent"
app:backgroundColor="@{task.getLightTaskColor}"
android:gravity="center"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
</RelativeLayout>
</LinearLayout>
<View
android:id="@+id/bottomBorderView"
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/cell_separator"/>
<TextView
android:id="@+id/notesTextView"
style="@style/CardText"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
<View
android:id="@+id/rightBorderView"
android:layout_width="5dp"
android:layout_height="match_parent"
android:gravity="center"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
</RelativeLayout>
</LinearLayout>
</layout>
<View
android:id="@+id/bottomBorderView"
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/cell_separator"/>
</LinearLayout>

View file

@ -21,10 +21,11 @@ import com.amplitude.api.Amplitude;
import com.amplitude.api.Identify;
import com.facebook.FacebookSdk;
import com.facebook.drawee.backends.pipeline.Fresco;
import com.habitrpg.android.habitica.api.HostConfig;
import com.habitrpg.android.habitica.components.AppComponent;
import com.habitrpg.android.habitica.data.ApiClient;
import com.habitrpg.android.habitica.helpers.RxErrorHandler;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import com.habitrpg.android.habitica.ui.activities.IntroActivity;
import com.habitrpg.android.habitica.ui.activities.LoginActivity;
import com.squareup.leakcanary.LeakCanary;

View file

@ -11,6 +11,7 @@ import com.habitrpg.android.habitica.helpers.PurchaseTypes;
import com.habitrpg.android.habitica.models.PurchaseValidationRequest;
import com.habitrpg.android.habitica.models.SubscriptionValidationRequest;
import com.habitrpg.android.habitica.models.Transaction;
import com.habitrpg.android.habitica.models.responses.ErrorResponse;
import com.playseeds.android.sdk.Seeds;
import org.greenrobot.eventbus.EventBus;

View file

@ -1,9 +1,12 @@
package com.habitrpg.android.habitica;
package com.habitrpg.android.habitica.api;
import android.content.Context;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import com.habitrpg.android.habitica.BuildConfig;
import com.habitrpg.android.habitica.R;
/**
* The configuration of the host<br />
* Currently, the Port isn't used at all.

View file

@ -1,7 +1,7 @@
package com.habitrpg.android.habitica.components;
import com.habitrpg.android.habitica.HabiticaBaseApplication;
import com.habitrpg.android.habitica.NotificationPublisher;
import com.habitrpg.android.habitica.receivers.NotificationPublisher;
import com.habitrpg.android.habitica.data.ApiClient;
import com.habitrpg.android.habitica.helpers.RemindersManager;
import com.habitrpg.android.habitica.helpers.SoundManager;

View file

@ -2,7 +2,7 @@ package com.habitrpg.android.habitica.data;
import android.support.annotation.Nullable;
import com.habitrpg.android.habitica.ErrorResponse;
import com.habitrpg.android.habitica.models.responses.ErrorResponse;
import com.habitrpg.android.habitica.models.AchievementResult;
import com.habitrpg.android.habitica.models.ContentResult;
import com.habitrpg.android.habitica.models.LeaveChallengeBody;

View file

@ -4,16 +4,14 @@ import android.content.Context;
import android.support.v7.app.AlertDialog;
import com.amplitude.api.Amplitude;
import com.google.gson.ExclusionStrategy;
import com.google.gson.FieldAttributes;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
import com.habitrpg.android.habitica.BuildConfig;
import com.habitrpg.android.habitica.ErrorResponse;
import com.habitrpg.android.habitica.models.responses.ErrorResponse;
import com.habitrpg.android.habitica.HabiticaApplication;
import com.habitrpg.android.habitica.HabiticaBaseApplication;
import com.habitrpg.android.habitica.HostConfig;
import com.habitrpg.android.habitica.api.HostConfig;
import com.habitrpg.android.habitica.R;
import com.habitrpg.android.habitica.data.ApiClient;
import com.habitrpg.android.habitica.database.CheckListItemExcludeStrategy;
@ -21,7 +19,7 @@ import com.habitrpg.android.habitica.helpers.PopupNotificationsManager;
import com.habitrpg.android.habitica.models.inventory.Equipment;
import com.habitrpg.android.habitica.models.inventory.QuestCollect;
import com.habitrpg.android.habitica.models.user.User;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import com.habitrpg.android.habitica.api.ApiService;
import com.habitrpg.android.habitica.api.Server;
import com.habitrpg.android.habitica.models.AchievementResult;

View file

@ -14,7 +14,7 @@ import android.widget.TimePicker;
import com.habitrpg.android.habitica.HabiticaBaseApplication;
import com.habitrpg.android.habitica.R;
import com.habitrpg.android.habitica.models.tasks.RemindersItem;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import java.text.DateFormat;
import java.text.ParseException;

View file

@ -2,9 +2,7 @@ package com.habitrpg.android.habitica.helpers;
import android.content.Context;
import android.os.AsyncTask;
import android.os.Environment;
import android.support.v7.preference.PreferenceManager;
import android.util.Log;
import org.json.JSONException;
import org.json.JSONObject;
@ -12,7 +10,6 @@ import org.json.JSONObject;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
@ -20,8 +17,6 @@ import java.io.OutputStream;
import java.net.URL;
import java.net.URLConnection;
import bolts.Bolts;
/**
* Created by keith holliday on 4/7/2017.
*/
@ -58,7 +53,7 @@ public class RemoteConfigManager {
}
}
class DownloadFileFromURL extends AsyncTask<String, String, String> {
private class DownloadFileFromURL extends AsyncTask<String, String, String> {
private String filename = "config.json";
@Override

View file

@ -9,13 +9,13 @@ import android.os.Build;
import android.support.v7.preference.PreferenceManager;
import com.habitrpg.android.habitica.HabiticaBaseApplication;
import com.habitrpg.android.habitica.NotificationPublisher;
import com.habitrpg.android.habitica.receivers.NotificationPublisher;
import com.habitrpg.android.habitica.data.TaskRepository;
import com.habitrpg.android.habitica.events.ReminderDeleteEvent;
import com.habitrpg.android.habitica.models.tasks.RemindersItem;
import com.habitrpg.android.habitica.models.tasks.Task;
import com.habitrpg.android.habitica.modules.AppModule;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import com.habitrpg.android.habitica.receivers.TaskReceiver;
import org.greenrobot.eventbus.EventBus;

View file

@ -1,23 +1,23 @@
package com.habitrpg.android.habitica;
import com.habitrpg.android.habitica.models.responses.HabiticaError;
import java.util.List;
public class ErrorResponse {
public String message;
public List<HabiticaError> errors;
public String getDisplayMessage() {
if (errors != null && errors.size() > 0) {
HabiticaError error = errors.get(0);
if (error.message != null && error.message.length() > 0) {
return error.message;
}
}
if (message != null && message.length() > 0) {
return message;
}
return "";
}
}
package com.habitrpg.android.habitica.models.responses;
import com.habitrpg.android.habitica.models.responses.HabiticaError;
import java.util.List;
public class ErrorResponse {
public String message;
public List<HabiticaError> errors;
public String getDisplayMessage() {
if (errors != null && errors.size() > 0) {
HabiticaError error = errors.get(0);
if (error.message != null && error.message.length() > 0) {
return error.message;
}
}
if (message != null && message.length() > 0) {
return message;
}
return "";
}
}

View file

@ -3,12 +3,12 @@ package com.habitrpg.android.habitica.modules;
import android.content.Context;
import android.content.SharedPreferences;
import com.habitrpg.android.habitica.HostConfig;
import com.habitrpg.android.habitica.api.HostConfig;
import com.habitrpg.android.habitica.api.MaintenanceApiService;
import com.habitrpg.android.habitica.data.ApiClient;
import com.habitrpg.android.habitica.data.implementation.ApiClientImpl;
import com.habitrpg.android.habitica.helpers.PopupNotificationsManager;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import javax.inject.Singleton;

View file

@ -1,8 +1,8 @@
package com.habitrpg.android.habitica.modules;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.impl.EmptyCrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.implementation.EmptyCrashlyticsProxy;
import javax.inject.Singleton;

View file

@ -1,4 +1,4 @@
package com.habitrpg.android.habitica.proxy.ifce;
package com.habitrpg.android.habitica.proxy;
import android.content.Context;

View file

@ -1,9 +1,9 @@
package com.habitrpg.android.habitica.proxy.impl;
package com.habitrpg.android.habitica.proxy.implementation;
import android.content.Context;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
public class EmptyCrashlyticsProxy implements CrashlyticsProxy {
@Override

View file

@ -1,103 +1,105 @@
package com.habitrpg.android.habitica;
import android.annotation.TargetApi;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.support.v4.content.ContextCompat;
import com.habitrpg.android.habitica.data.TaskRepository;
import com.habitrpg.android.habitica.helpers.RxErrorHandler;
import com.habitrpg.android.habitica.helpers.TaskAlarmManager;
import com.habitrpg.android.habitica.models.tasks.Task;
import com.habitrpg.android.habitica.modules.AppModule;
import com.habitrpg.android.habitica.ui.activities.MainActivity;
import javax.inject.Inject;
import javax.inject.Named;
//https://gist.github.com/BrandonSmith/6679223
public class NotificationPublisher extends BroadcastReceiver {
@Inject
TaskRepository taskRepository;
@Inject
@Named(AppModule.NAMED_USER_ID)
String userId;
public static String NOTIFICATION_ID = "notification-id";
public static String CHECK_DAILIES = "check-dailies";
private Context context;
public void onReceive(Context context, Intent intent) {
this.context = context;
if (taskRepository == null) {
HabiticaApplication.getComponent().inject(this);
}
boolean check_dailies = intent.getBooleanExtra(CHECK_DAILIES, false);
Notification notification = getNotification();
if (check_dailies) {
taskRepository.getTasks(Task.TYPE_DAILY, userId).subscribe(dailies -> {
boolean showNotifications = false;
for (Task task : dailies) {
if (task.checkIfDue(0)) {
showNotifications = true;
break;
}
}
TaskAlarmManager.scheduleDailyReminder(context);
if (showNotifications) {
NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
int id = intent.getIntExtra(NOTIFICATION_ID, 0);
notificationManager.notify(id, notification);
}
}, RxErrorHandler.handleEmptyError());
} else {
NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
int id = intent.getIntExtra(NOTIFICATION_ID, 0);
notificationManager.notify(id, notification);
}
}
@TargetApi(21)
private Notification getNotification() {
int currentapiVersion = android.os.Build.VERSION.SDK_INT;
Notification notification;
Notification.Builder builder = new Notification.Builder(context);
builder.setContentTitle(context.getString(R.string.app_name));
builder.setContentText(context.getString(R.string.reminder_title));
builder.setSmallIcon(R.drawable.ic_gryphon_white);
Intent notificationIntent = new Intent(context, MainActivity.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP
| Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent intent = PendingIntent.getActivity(context, 0,
notificationIntent, 0);
builder.setContentIntent(intent);
if (currentapiVersion >= Build.VERSION_CODES.LOLLIPOP) {
builder.setColor(ContextCompat.getColor(context, R.color.brand_300));
}
if (currentapiVersion >= Build.VERSION_CODES.JELLY_BEAN) {
notification = builder.build();
} else {
notification = builder.getNotification();
}
notification.defaults |= Notification.DEFAULT_LIGHTS;
notification.flags |= Notification.FLAG_AUTO_CANCEL | Notification.FLAG_SHOW_LIGHTS;
return notification;
}
}
package com.habitrpg.android.habitica.receivers;
import android.annotation.TargetApi;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.support.v4.content.ContextCompat;
import com.habitrpg.android.habitica.HabiticaApplication;
import com.habitrpg.android.habitica.R;
import com.habitrpg.android.habitica.data.TaskRepository;
import com.habitrpg.android.habitica.helpers.RxErrorHandler;
import com.habitrpg.android.habitica.helpers.TaskAlarmManager;
import com.habitrpg.android.habitica.models.tasks.Task;
import com.habitrpg.android.habitica.modules.AppModule;
import com.habitrpg.android.habitica.ui.activities.MainActivity;
import javax.inject.Inject;
import javax.inject.Named;
//https://gist.github.com/BrandonSmith/6679223
public class NotificationPublisher extends BroadcastReceiver {
@Inject
TaskRepository taskRepository;
@Inject
@Named(AppModule.NAMED_USER_ID)
String userId;
public static String NOTIFICATION_ID = "notification-id";
public static String CHECK_DAILIES = "check-dailies";
private Context context;
public void onReceive(Context context, Intent intent) {
this.context = context;
if (taskRepository == null) {
HabiticaApplication.getComponent().inject(this);
}
boolean check_dailies = intent.getBooleanExtra(CHECK_DAILIES, false);
Notification notification = getNotification();
if (check_dailies) {
taskRepository.getTasks(Task.TYPE_DAILY, userId).subscribe(dailies -> {
boolean showNotifications = false;
for (Task task : dailies) {
if (task.checkIfDue(0)) {
showNotifications = true;
break;
}
}
TaskAlarmManager.scheduleDailyReminder(context);
if (showNotifications) {
NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
int id = intent.getIntExtra(NOTIFICATION_ID, 0);
notificationManager.notify(id, notification);
}
}, RxErrorHandler.handleEmptyError());
} else {
NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
int id = intent.getIntExtra(NOTIFICATION_ID, 0);
notificationManager.notify(id, notification);
}
}
@TargetApi(21)
private Notification getNotification() {
int currentapiVersion = android.os.Build.VERSION.SDK_INT;
Notification notification;
Notification.Builder builder = new Notification.Builder(context);
builder.setContentTitle(context.getString(R.string.app_name));
builder.setContentText(context.getString(R.string.reminder_title));
builder.setSmallIcon(R.drawable.ic_gryphon_white);
Intent notificationIntent = new Intent(context, MainActivity.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP
| Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent intent = PendingIntent.getActivity(context, 0,
notificationIntent, 0);
builder.setContentIntent(intent);
if (currentapiVersion >= Build.VERSION_CODES.LOLLIPOP) {
builder.setColor(ContextCompat.getColor(context, R.color.brand_300));
}
if (currentapiVersion >= Build.VERSION_CODES.JELLY_BEAN) {
notification = builder.build();
} else {
notification = builder.getNotification();
}
notification.defaults |= Notification.DEFAULT_LIGHTS;
notification.flags |= Notification.FLAG_AUTO_CANCEL | Notification.FLAG_SHOW_LIGHTS;
return notification;
}
}

View file

@ -15,7 +15,7 @@ import com.habitrpg.android.habitica.HabiticaApplication;
import com.habitrpg.android.habitica.R;
import com.habitrpg.android.habitica.components.AppComponent;
import com.habitrpg.android.habitica.helpers.PurchaseTypes;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import com.habitrpg.android.habitica.ui.fragments.GemsPurchaseFragment;
import com.habitrpg.android.habitica.ui.fragments.SubscriptionFragment;
import com.playseeds.android.sdk.Seeds;

View file

@ -50,7 +50,7 @@ import com.google.android.gms.common.AccountPicker;
import com.google.android.gms.common.GooglePlayServicesUtil;
import com.google.android.gms.common.Scopes;
import com.habitrpg.android.habitica.BuildConfig;
import com.habitrpg.android.habitica.HostConfig;
import com.habitrpg.android.habitica.api.HostConfig;
import com.habitrpg.android.habitica.R;
import com.habitrpg.android.habitica.components.AppComponent;
import com.habitrpg.android.habitica.data.ApiClient;

View file

@ -36,7 +36,7 @@ import android.widget.FrameLayout;
import com.facebook.drawee.view.SimpleDraweeView;
import com.habitrpg.android.habitica.HabiticaApplication;
import com.habitrpg.android.habitica.HostConfig;
import com.habitrpg.android.habitica.api.HostConfig;
import com.habitrpg.android.habitica.R;
import com.habitrpg.android.habitica.api.MaintenanceApiService;
import com.habitrpg.android.habitica.components.AppComponent;
@ -85,7 +85,7 @@ import com.habitrpg.android.habitica.models.tasks.Task;
import com.habitrpg.android.habitica.models.user.Preferences;
import com.habitrpg.android.habitica.models.user.SpecialItems;
import com.habitrpg.android.habitica.models.user.User;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import com.habitrpg.android.habitica.ui.AvatarView;
import com.habitrpg.android.habitica.ui.AvatarWithBarsViewModel;
import com.habitrpg.android.habitica.ui.TutorialView;

View file

@ -9,7 +9,7 @@ import android.support.v7.preference.PreferenceScreen;
import android.support.v7.widget.Toolbar;
import com.habitrpg.android.habitica.BuildConfig;
import com.habitrpg.android.habitica.HostConfig;
import com.habitrpg.android.habitica.api.HostConfig;
import com.habitrpg.android.habitica.R;
import com.habitrpg.android.habitica.components.AppComponent;
import com.habitrpg.android.habitica.ui.fragments.preferences.AccountDetailsFragment;

View file

@ -17,7 +17,7 @@ import android.view.View;
import android.view.Window;
import android.widget.Button;
import com.habitrpg.android.habitica.HostConfig;
import com.habitrpg.android.habitica.api.HostConfig;
import com.habitrpg.android.habitica.R;
import com.habitrpg.android.habitica.components.AppComponent;
import com.habitrpg.android.habitica.data.ApiClient;

View file

@ -13,7 +13,7 @@ import com.habitrpg.android.habitica.components.AppComponent;
import com.habitrpg.android.habitica.data.TaskRepository;
import com.habitrpg.android.habitica.helpers.TaskFilterHelper;
import com.habitrpg.android.habitica.models.tasks.Task;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import com.habitrpg.android.habitica.ui.viewHolders.tasks.BaseTaskViewHolder;
import java.util.ArrayList;

View file

@ -11,7 +11,7 @@ import android.view.ViewGroup;
import com.habitrpg.android.habitica.R;
import com.habitrpg.android.habitica.components.AppComponent;
import com.habitrpg.android.habitica.helpers.PurchaseTypes;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import com.habitrpg.android.habitica.ui.GemPurchaseOptionsView;
import com.habitrpg.android.habitica.ui.activities.GemPurchaseActivity;

View file

@ -18,7 +18,7 @@ import com.habitrpg.android.habitica.events.UserSubscribedEvent;
import com.habitrpg.android.habitica.helpers.PurchaseTypes;
import com.habitrpg.android.habitica.models.user.User;
import com.habitrpg.android.habitica.models.user.SubscriptionPlan;
import com.habitrpg.android.habitica.proxy.ifce.CrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy;
import com.habitrpg.android.habitica.ui.activities.GemPurchaseActivity;
import com.habitrpg.android.habitica.ui.views.subscriptions.SubscriptionDetailsView;
import com.habitrpg.android.habitica.ui.views.subscriptions.SubscriptionOptionView;

View file

@ -27,8 +27,6 @@ public class AvatarOverviewFragment extends BaseMainFragment implements AdapterV
@Inject
UserRepository userRepository;
FragmentAvatarOverviewBinding viewBinding;
@BindView(R.id.avatar_size_spinner)
Spinner avatarSizeSpinner;

View file

@ -4,7 +4,7 @@ import android.content.Context;
import com.habitrpg.android.habitica.HabiticaApplication;
import com.habitrpg.android.habitica.HabiticaBaseApplication;
import com.habitrpg.android.habitica.HostConfig;
import com.habitrpg.android.habitica.api.HostConfig;
import com.habitrpg.android.habitica.R;
import com.habitrpg.android.habitica.data.ApiClient;

View file

@ -3,10 +3,9 @@ package com.habitrpg.android.habitica.api;
import com.habitrpg.android.habitica.data.implementation.ApiClientImpl;
import com.habitrpg.android.habitica.helpers.PopupNotificationsManager;
import com.habitrpg.android.habitica.proxy.impl.EmptyCrashlyticsProxy;
import com.habitrpg.android.habitica.proxy.implementation.EmptyCrashlyticsProxy;
import com.habitrpg.android.habitica.data.ApiClient;
import com.habitrpg.android.habitica.BuildConfig;
import com.habitrpg.android.habitica.HostConfig;
import com.habitrpg.android.habitica.models.user.User;
import com.habitrpg.android.habitica.models.auth.UserAuthResponse;

View file

@ -3,8 +3,8 @@ package com.habitrpg.android.habitica.helpers;
import com.habitrpg.android.habitica.data.implementation.ApiClientImpl;
import com.habitrpg.android.habitica.BuildConfig;
import com.habitrpg.android.habitica.HabiticaApplication;
import com.habitrpg.android.habitica.HostConfig;
import com.habitrpg.android.habitica.proxy.impl.EmptyCrashlyticsProxy;
import com.habitrpg.android.habitica.api.HostConfig;
import com.habitrpg.android.habitica.proxy.implementation.EmptyCrashlyticsProxy;
import com.habitrpg.android.habitica.data.ApiClient;
import com.habitrpg.android.habitica.models.Notification;
import com.habitrpg.android.habitica.models.notifications.NotificationData;

View file

@ -5,7 +5,7 @@ buildscript {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.1'
classpath 'com.android.tools.build:gradle:2.3.2'
classpath 'com.android.databinding:dataBinder:1.0-rc4'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
classpath 'com.google.gms:google-services:3.0.0'