diff --git a/Habitica/res/layout/drawer_main.xml b/Habitica/res/layout/drawer_main.xml index 1807a46f9..23859a725 100644 --- a/Habitica/res/layout/drawer_main.xml +++ b/Habitica/res/layout/drawer_main.xml @@ -4,9 +4,6 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/white" - android:choiceMode="singleChoice" - android:dividerHeight="0dp" - android:fitsSystemWindows="true" android:orientation="vertical" tools:context="com.habitrpg.android.habitica.ui.fragments.NavigationDrawerFragment"> diff --git a/Habitica/res/layout/drawer_main_item.xml b/Habitica/res/layout/drawer_main_item.xml index eee63f6dd..f866b557a 100644 --- a/Habitica/res/layout/drawer_main_item.xml +++ b/Habitica/res/layout/drawer_main_item.xml @@ -28,7 +28,6 @@ android:visibility="gone"/> \ No newline at end of file + android:textAllCaps="true" + android:gravity="center_vertical"/> \ No newline at end of file diff --git a/Habitica/res/layout/quest_progress.xml b/Habitica/res/layout/quest_progress.xml index acf74622b..28bc4a114 100644 --- a/Habitica/res/layout/quest_progress.xml +++ b/Habitica/res/layout/quest_progress.xml @@ -24,7 +24,7 @@ android:layout_weight="1" android:text="@string/boss_art" android:textColor="@color/white" - style="@style/Body1" /> + android:textSize="16sp" /> + android:layout_width="wrap_content" + android:layout_height="wrap_content" /> + android:layout_height="wrap_content" + android:clipChildren="true"> + android:layout_gravity="center_horizontal" /> + + @@ -90,19 +101,33 @@ app:textColor="@color/white" app:barBackgroundColor="@color/white_15_alpha" app:barHeight="8dp" + app:labelSpacing="@dimen/spacing_medium" android:paddingLeft="@dimen/spacing_large" android:paddingRight="@dimen/spacing_large" /> - + android:paddingRight="@dimen/spacing_large"> + + + + diff --git a/Habitica/res/layout/value_bar.xml b/Habitica/res/layout/value_bar.xml index f4419fe08..b1fe33657 100644 --- a/Habitica/res/layout/value_bar.xml +++ b/Habitica/res/layout/value_bar.xml @@ -27,11 +27,12 @@ android:orientation="horizontal" /> + android:paddingTop="4dp"> + android:layout_height="wrap_content" + tools:parentTag="android.widget.LinearLayout"> + android:paddingRight="32dp" /> \ No newline at end of file diff --git a/Habitica/res/values/attrs.xml b/Habitica/res/values/attrs.xml index d9c1ed5e4..c3ec3baab 100644 --- a/Habitica/res/values/attrs.xml +++ b/Habitica/res/values/attrs.xml @@ -45,6 +45,7 @@ + @@ -81,5 +82,6 @@ + diff --git a/Habitica/res/values/strings.xml b/Habitica/res/values/strings.xml index af3058207..0796c3146 100644 --- a/Habitica/res/values/strings.xml +++ b/Habitica/res/values/strings.xml @@ -776,6 +776,6 @@ %s attacks! Ian the Quest Guide Seasonal Sorceress - Rage attack: %s + Rage attack: Oh dear, pay no heed to the monster below -- this is still a safe haven to chat on your breaks. diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/CollapsibleSectionView.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/CollapsibleSectionView.kt index 3da2e929f..1a7817dd5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/CollapsibleSectionView.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/CollapsibleSectionView.kt @@ -143,4 +143,8 @@ class CollapsibleSectionView(context: Context?, attrs: AttributeSet?) : LinearLa isCollapsed = true } } + + fun setCaretOffset(offset: Int) { + caretView.setPadding(0, 0, offset, 0) + } } \ No newline at end of file diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/ValueBar.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/ValueBar.kt index 5ebd0f508..87d0a5eb8 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/ValueBar.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/ValueBar.kt @@ -6,6 +6,7 @@ import android.graphics.drawable.Drawable import android.support.v4.content.ContextCompat import android.util.AttributeSet import android.view.View +import android.view.ViewGroup import android.widget.FrameLayout import android.widget.ImageView import android.widget.TextView @@ -20,6 +21,7 @@ class ValueBar(context: Context?, attrs: AttributeSet?) : FrameLayout(context, a private val valueTextView: TextView by bindView(R.id.valueLabel) private val descriptionTextView: TextView by bindView(R.id.descriptionLabel) private val progressBar: HabiticaProgressBar by bindView(R.id.progressBar) + private val labelWrapper: ViewGroup by bindView(R.id.labelWrapper) private val formatter = NumberFormat.getInstance() @@ -45,7 +47,7 @@ class ValueBar(context: Context?, attrs: AttributeSet?) : FrameLayout(context, a private fun updateBar() { this.progressBar.set(currentValue, maxValue) - this.setValueText(formatter.format(currentValue) + "/" + formatter.format(maxValue.toInt())) + this.setValueText(formatter.format(currentValue) + " / " + formatter.format(maxValue.toInt())) } init { @@ -60,6 +62,10 @@ class ValueBar(context: Context?, attrs: AttributeSet?) : FrameLayout(context, a progressBar.barForegroundColor = attributes?.getColor(R.styleable.ValueBar_barForegroundColor, 0) ?: 0 progressBar.barBackgroundColor = attributes?.getColor(R.styleable.ValueBar_barBackgroundColor, 0) ?: 0 + val labelSpacing = attributes?.getDimension(R.styleable.ValueBar_labelSpacing, context.resources.getDimension(R.dimen.spacing_small)) + if (labelSpacing != null) { + labelWrapper.setPadding(0, labelSpacing.toInt(), 0, 0) + } barHeight = attributes?.getDimension(R.styleable.ValueBar_barHeight, context.resources.getDimension(R.dimen.bar_size))?.toInt() diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/social/ChatBarView.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/social/ChatBarView.kt index c2077c952..de76e7307 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/social/ChatBarView.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/social/ChatBarView.kt @@ -8,6 +8,7 @@ import android.text.Editable import android.text.TextWatcher import android.util.AttributeSet import android.view.LayoutInflater +import android.view.View import android.widget.EditText import android.widget.FrameLayout import android.widget.ImageButton @@ -72,8 +73,8 @@ class ChatBarView : FrameLayout { val navbarHeight = NavbarUtils.getNavbarHeight(context) val finalHeight = currentHeight + navbarHeight - chatBarContainer.layoutParams.height = finalHeight - invalidate() + layoutParams.height = finalHeight + (parent as? View)?.invalidate() } } } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/social/QuestProgressView.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/social/QuestProgressView.kt index a137bcb15..7979ab0a8 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/social/QuestProgressView.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/social/QuestProgressView.kt @@ -41,6 +41,7 @@ class QuestProgressView : LinearLayout { private val questImageWrapper: FrameLayout by bindView(R.id.questImageWrapper) private val questImageView: SimpleDraweeView by bindView(R.id.questImageView) + private val questFlourishesImageView: SimpleDraweeView by bindView(R.id.questFlourishesImageView) private val questImageTitle: View by bindView(R.id.questImageTitle) private val artCreditTextView: TextView by bindView(R.id.artCreditTextView) private val questImageSeparator: View by bindView(R.id.questImageSeparator) @@ -101,6 +102,10 @@ class QuestProgressView : LinearLayout { rageStrikeDescriptionView.setOnClickListener { showStrikeDescriptionAlert() } + val density = resources.displayMetrics.density + + questDescriptionSection.setCaretOffset((12 * density).toInt()) + preferences = context.getSharedPreferences("collapsible_sections", 0) if (preferences?.getBoolean("boss_art_collapsed", false) == true) { hideQuestImage() @@ -140,7 +145,7 @@ class QuestProgressView : LinearLayout { if (quest.boss.hasRage()) { rageMeterView.visibility = View.VISIBLE bossRageView.visibility = View.VISIBLE - rageMeterView.text = context.getString(R.string.rage_attack, quest.boss.rage?.title) + rageMeterView.text = quest.boss.rage?.title bossRageView.set(progress.progress?.rage ?: 0.0, quest.boss?.rage?.value ?: 0.0) if (progress.hasRageStrikes()) { setupRageStrikeViews() @@ -166,6 +171,7 @@ class QuestProgressView : LinearLayout { } questDescriptionView.text = MarkdownParser.parseMarkdown(quest.notes) DataBindingUtils.loadImage(questImageView, "quest_"+quest.key, "gif") + DataBindingUtils.loadImage(questFlourishesImageView, "quest_"+quest.key+"_flourishes") val lightColor = quest.colors?.lightColor if (lightColor != null) { questDescriptionSection.separatorColor = lightColor @@ -312,7 +318,7 @@ class QuestProgressView : LinearLayout { private fun showQuestImage() { - questImageView.visibility = View.VISIBLE + questImageWrapper.visibility = View.VISIBLE DataBindingUtils.loadImage(questImageView, "quest_"+quest?.key) val editPreferences = preferences?.edit() editPreferences?.putBoolean("boss_art_collapsed", false) @@ -321,7 +327,7 @@ class QuestProgressView : LinearLayout { } private fun hideQuestImage() { - questImageView.visibility = View.GONE + questImageWrapper.visibility = View.GONE val editPreferences = preferences?.edit() editPreferences?.putBoolean("boss_art_collapsed", true) editPreferences?.apply()