diff --git a/Habitica/res/drawable-hdpi/diamond_button.9.png b/Habitica/res/drawable-hdpi/diamond_button.9.png new file mode 100644 index 000000000..c6e7621e2 Binary files /dev/null and b/Habitica/res/drawable-hdpi/diamond_button.9.png differ diff --git a/Habitica/res/drawable-hdpi/diamond_button_white.9.png b/Habitica/res/drawable-hdpi/diamond_button_white.9.png new file mode 100644 index 000000000..f2890c15c Binary files /dev/null and b/Habitica/res/drawable-hdpi/diamond_button_white.9.png differ diff --git a/Habitica/res/drawable-mdpi/diamond_button.9.png b/Habitica/res/drawable-mdpi/diamond_button.9.png new file mode 100644 index 000000000..257a3ccd0 Binary files /dev/null and b/Habitica/res/drawable-mdpi/diamond_button.9.png differ diff --git a/Habitica/res/drawable-mdpi/diamond_button_white.9.png b/Habitica/res/drawable-mdpi/diamond_button_white.9.png new file mode 100644 index 000000000..699149917 Binary files /dev/null and b/Habitica/res/drawable-mdpi/diamond_button_white.9.png differ diff --git a/Habitica/res/drawable-xhdpi/diamond_button.9.png b/Habitica/res/drawable-xhdpi/diamond_button.9.png new file mode 100644 index 000000000..9018972c2 Binary files /dev/null and b/Habitica/res/drawable-xhdpi/diamond_button.9.png differ diff --git a/Habitica/res/drawable-xhdpi/diamond_button_white.9.png b/Habitica/res/drawable-xhdpi/diamond_button_white.9.png new file mode 100644 index 000000000..6f2e33dfe Binary files /dev/null and b/Habitica/res/drawable-xhdpi/diamond_button_white.9.png differ diff --git a/Habitica/res/drawable-xxhdpi/diamond_button.9.png b/Habitica/res/drawable-xxhdpi/diamond_button.9.png new file mode 100644 index 000000000..81e28fd3d Binary files /dev/null and b/Habitica/res/drawable-xxhdpi/diamond_button.9.png differ diff --git a/Habitica/res/drawable-xxhdpi/diamond_button_white.9.png b/Habitica/res/drawable-xxhdpi/diamond_button_white.9.png new file mode 100644 index 000000000..714d0c475 Binary files /dev/null and b/Habitica/res/drawable-xxhdpi/diamond_button_white.9.png differ diff --git a/Habitica/res/layout/activity_setup.xml b/Habitica/res/layout/activity_setup.xml index 56913b267..69b1a48b4 100644 --- a/Habitica/res/layout/activity_setup.xml +++ b/Habitica/res/layout/activity_setup.xml @@ -50,8 +50,6 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerInParent="true" - android:layout_toLeftOf="@id/nextButton" - android:layout_toRightOf="@id/previousButton" /> diff --git a/Habitica/res/layout/fragment_setup_tasks.xml b/Habitica/res/layout/fragment_setup_tasks.xml index 0324b4775..6f72f2f3d 100644 --- a/Habitica/res/layout/fragment_setup_tasks.xml +++ b/Habitica/res/layout/fragment_setup_tasks.xml @@ -1,27 +1,55 @@ - + - + - - + android:layout_below="@id/heart_icon" + android:src="@drawable/creator_purple_bg" + android:layout_centerHorizontal="true" /> + + - \ No newline at end of file + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_alignParentBottom="true" + android:background="@drawable/avatar_customization_category_bg" + android:id="@+id/recyclerView" + android:padding="17dp"/> + + + + \ No newline at end of file diff --git a/Habitica/res/layout/task_setup_item.xml b/Habitica/res/layout/task_setup_item.xml index 4730ce78d..9953cf875 100644 --- a/Habitica/res/layout/task_setup_item.xml +++ b/Habitica/res/layout/task_setup_item.xml @@ -1,42 +1,8 @@ - - - - - - - - - - - + style="@style/DiamondButton" + android:background="@drawable/diamond_button_white" + android:layout_margin="6dp" /> diff --git a/Habitica/res/layout/tavern_chat_item.xml b/Habitica/res/layout/tavern_chat_item.xml index cc287c3b8..a879839cd 100644 --- a/Habitica/res/layout/tavern_chat_item.xml +++ b/Habitica/res/layout/tavern_chat_item.xml @@ -1,6 +1,4 @@ - - 36dp - @drawable/login_button + @drawable/diamond_button 36dp 36dp @color/white diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/HabiticaBaseApplication.java b/Habitica/src/main/java/com/habitrpg/android/habitica/HabiticaBaseApplication.java index 27fe75434..c320ffb01 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/HabiticaBaseApplication.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/HabiticaBaseApplication.java @@ -110,7 +110,6 @@ public abstract class HabiticaBaseApplication extends MultiDexApplication { } public static boolean checkUserAuthentication(Context context, HostConfig hostConfig) { - startActivity(SetupActivity.class, context); if (hostConfig == null || hostConfig.getApi() == null || hostConfig.getApi().equals("") || hostConfig.getUser() == null || hostConfig.getUser().equals("")) { startActivity(IntroActivity.class, context); diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/SetupActivity.java b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/SetupActivity.java index bb1d419f9..059bfc861 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/SetupActivity.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/SetupActivity.java @@ -4,8 +4,10 @@ import com.habitrpg.android.habitica.APIHelper; import com.habitrpg.android.habitica.HostConfig; import com.habitrpg.android.habitica.R; import com.habitrpg.android.habitica.callbacks.HabitRPGUserCallback; +import com.habitrpg.android.habitica.callbacks.ItemsCallback; import com.habitrpg.android.habitica.callbacks.MergeUserCallback; import com.habitrpg.android.habitica.components.AppComponent; +import com.habitrpg.android.habitica.events.commands.EquipCommand; import com.habitrpg.android.habitica.events.commands.UpdateUserCommand; import com.habitrpg.android.habitica.helpers.AmplitudeManager; import com.habitrpg.android.habitica.ui.fragments.setup.AvatarSetupFragment; @@ -30,6 +32,7 @@ import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; +import android.support.v4.content.ContextCompat; import android.support.v4.view.ViewPager; import android.support.v7.content.res.AppCompatResources; import android.support.v7.preference.PreferenceManager; @@ -95,7 +98,7 @@ public class SetupActivity extends BaseActivity implements ViewPager.OnPageChang if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { Window window = getWindow(); - window.setStatusBarColor(getResources().getColor(R.color.light_gray_bg)); + window.setStatusBarColor(ContextCompat.getColor(this, R.color.days_gray)); } } @@ -144,6 +147,14 @@ public class SetupActivity extends BaseActivity implements ViewPager.OnPageChang }); } + @Subscribe + public void onEvent(EquipCommand event) { + this.apiHelper.apiService.equipItem(event.type, event.key) + .compose(apiHelper.configureApiCallObserver()) + .subscribe(new ItemsCallback(this, this.user), throwable -> { + }); + } + @OnClick(R.id.nextButton) public void nextClicked(View v) { SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this); @@ -197,6 +208,7 @@ public class SetupActivity extends BaseActivity implements ViewPager.OnPageChang this.nextButton.setText(this.getString(R.string.intro_finish_button)); } else { this.setPreviousButtonEnabled(true); + this.nextButton.setText(this.getString(R.string.next_button)); } } @@ -257,6 +269,7 @@ public class SetupActivity extends BaseActivity implements ViewPager.OnPageChang } case 2: { taskSetupFragment = new TaskSetupFragment(); + taskSetupFragment.setUser(user); fragment = taskSetupFragment; break; } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/setup/CustomizationSetupAdapter.java b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/setup/CustomizationSetupAdapter.java index 7c73988d7..00280f097 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/setup/CustomizationSetupAdapter.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/setup/CustomizationSetupAdapter.java @@ -4,6 +4,7 @@ import com.facebook.drawee.view.SimpleDraweeView; import com.facebook.imagepipeline.request.ImageRequest; import com.facebook.imagepipeline.request.ImageRequestBuilder; import com.habitrpg.android.habitica.R; +import com.habitrpg.android.habitica.events.commands.EquipCommand; import com.habitrpg.android.habitica.events.commands.UpdateUserCommand; import com.habitrpg.android.habitica.ui.helpers.DataBindingUtils; import com.magicmicky.habitrpgwrapper.lib.models.Customization; @@ -165,18 +166,21 @@ public class CustomizationSetupAdapter extends RecyclerView.Adapter updateData = new HashMap<>(); if (customization.path.equals("glasses")) { - String updatePath = "items.gear.equipped.eyewear"; - updateData.put(updatePath, customization.key); + EquipCommand command = new EquipCommand(); + command.key = customization.key; + command.type = "equipped"; + EventBus.getDefault().post(command); } else { + UpdateUserCommand command = new UpdateUserCommand(); + Map updateData = new HashMap<>(); String updatePath = "preferences." + customization.getPath(); updateData.put(updatePath, customization.key); - } - command.updateData = updateData; - EventBus.getDefault().post(command); + command.updateData = updateData; + + EventBus.getDefault().post(command); + } } } } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/setup/TaskSetupAdapter.java b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/setup/TaskSetupAdapter.java index 8ae6d05b8..c0380b3a3 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/setup/TaskSetupAdapter.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/setup/TaskSetupAdapter.java @@ -2,7 +2,11 @@ package com.habitrpg.android.habitica.ui.adapter.setup; import com.habitrpg.android.habitica.R; +import android.content.Context; import android.content.res.Resources; +import android.graphics.PorterDuff; +import android.graphics.drawable.Drawable; +import android.support.v4.content.ContextCompat; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; @@ -51,28 +55,26 @@ public class TaskSetupAdapter extends RecyclerView.Adapter