add color to advanced options dialog

pull/610/head
KristianTashkov 5 years ago
parent 2bb2c25fd3
commit e7f0f59379

@ -20,6 +20,8 @@
package org.isoron.uhabits.activities.common.dialogs package org.isoron.uhabits.activities.common.dialogs
import android.content.* import android.content.*
import android.graphics.*
import android.os.*
import android.view.* import android.view.*
import android.widget.* import android.widget.*
import androidx.appcompat.app.* import androidx.appcompat.app.*
@ -28,6 +30,7 @@ import org.isoron.androidbase.utils.*
import org.isoron.uhabits.* import org.isoron.uhabits.*
import org.isoron.uhabits.core.models.* import org.isoron.uhabits.core.models.*
import org.isoron.uhabits.core.ui.screens.habits.list.* import org.isoron.uhabits.core.ui.screens.habits.list.*
import org.isoron.uhabits.utils.*
import javax.inject.* import javax.inject.*
@ -40,11 +43,21 @@ class CheckmarkOptionPickerFactory
value: Int, value: Int,
callback: ListHabitsBehavior.CheckmarkOptionsCallback): AlertDialog { callback: ListHabitsBehavior.CheckmarkOptionsCallback): AlertDialog {
var habitColor = PaletteUtils.getColor(context, habit.color)
val res = StyledResources(context)
val titleTextView = TextView(context)
titleTextView.setText(habit.name)
titleTextView.setTextSize(20F)
titleTextView.setPadding(20, 30, 20, 30);
titleTextView.setTextColor(res.getColor(R.attr.highContrastReverseTextColor))
titleTextView.setBackgroundColor(habitColor)
val inflater = LayoutInflater.from(context) val inflater = LayoutInflater.from(context)
val view = inflater.inflate(R.layout.checkmark_option_picker_dialog, null) val view = inflater.inflate(R.layout.checkmark_option_picker_dialog, null)
val dialog = AlertDialog.Builder(context) val dialog = AlertDialog.Builder(context)
.setView(view) .setView(view)
.setTitle(habit.name) .setCustomTitle(titleTextView)
.setOnDismissListener{ .setOnDismissListener{
callback.onCheckmarkOptionDismissed() callback.onCheckmarkOptionDismissed()
} }
@ -63,6 +76,7 @@ class CheckmarkOptionPickerFactory
Checkmark.UNCHECKED_EXPLICITLY_UNNECESSARY to R.id.no_button Checkmark.UNCHECKED_EXPLICITLY_UNNECESSARY to R.id.no_button
) )
for ((buttonId, buttonValue) in buttonValues) { for ((buttonId, buttonValue) in buttonValues) {
val button = view.findViewById<Button>(buttonId) val button = view.findViewById<Button>(buttonId)
button.setOnClickListener{ button.setOnClickListener{
@ -73,6 +87,7 @@ class CheckmarkOptionPickerFactory
valuesToButton.containsKey(value) && valuesToButton.containsKey(value) &&
valuesToButton[value] == buttonId) valuesToButton[value] == buttonId)
button.typeface = InterfaceUtils.getFontAwesome(context) button.typeface = InterfaceUtils.getFontAwesome(context)
button.background.setTint(habitColor)
} }
val questionTextView = view.findViewById<TextView>(R.id.choose_checkmark_question_textview) val questionTextView = view.findViewById<TextView>(R.id.choose_checkmark_question_textview)
@ -83,6 +98,7 @@ class CheckmarkOptionPickerFactory
val questionFullText = context.resources.getString( val questionFullText = context.resources.getString(
R.string.choose_checkmark_question, question, habitTimestamp) R.string.choose_checkmark_question, question, habitTimestamp)
questionTextView.text = questionFullText questionTextView.text = questionFullText
questionTextView.setTextColor(habitColor)
dialog.window?.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE) dialog.window?.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE)

@ -38,46 +38,48 @@
<LinearLayout <LinearLayout
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:divider="?android:dividerVertical"
android:gravity="center" android:gravity="center"
android:orientation="horizontal" android:orientation="horizontal">
android:showDividers="middle">
<Button <Button
android:id="@+id/yes_button" android:id="@+id/yes_button"
style="@style/Widget.AppCompat.Button.Borderless.Colored" style="@style/Widget.AppCompat.Button"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:layout_weight="1"
android:text="@string/yes_button_text" android:text="@string/yes_button_text"
android:textColor="?attr/highContrastReverseTextColor"
app:cornerRadius="0dp" /> app:cornerRadius="0dp" />
<Button <Button
android:id="@+id/no_button" android:id="@+id/no_button"
style="@style/Widget.AppCompat.Button.Borderless.Colored" style="@style/Widget.AppCompat.Button"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:layout_weight="1"
android:text="@string/no_button_text" android:text="@string/no_button_text"
android:textColor="?attr/highContrastReverseTextColor"
app:cornerRadius="0dp" /> app:cornerRadius="0dp" />
<Button <Button
android:id="@+id/skip_button" android:id="@+id/skip_button"
style="@style/Widget.AppCompat.Button.Borderless.Colored" style="@style/Widget.AppCompat.Button"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:layout_weight="1"
android:text="@string/skip_button_text" android:text="@string/skip_button_text"
android:textColor="?attr/highContrastReverseTextColor"
app:cornerRadius="0dp" /> app:cornerRadius="0dp" />
<Button <Button
android:id="@+id/clear_button" android:id="@+id/clear_button"
style="@style/Widget.AppCompat.Button.Borderless.Colored" style="@style/Widget.AppCompat.Button"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:layout_weight="1"
android:text="@string/delete_button_text" android:text="@string/delete_button_text"
android:textColor="?attr/highContrastReverseTextColor"
app:cornerRadius="0dp" /> app:cornerRadius="0dp" />
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>
Loading…
Cancel
Save