Improve donation defaults and light contrast

This commit is contained in:
hz
2026-07-19 23:12:51 -05:00
parent df94247b3b
commit 743399f647
2 changed files with 11 additions and 4 deletions
+7 -2
View File
@@ -5,7 +5,7 @@ const Style := preload("res://scripts/ui/ui_style.gd")
const DonationAmount := preload("res://scripts/ui/donation_amount.gd")
const MINIMUM_CENTS := 500
const MAXIMUM_CENTS := 1000000
const DEFAULT_CENTS := 2500
const DEFAULT_CENTS := 500
var main: Control
var content_grid: GridContainer
@@ -13,6 +13,7 @@ var mission_panel: PanelContainer
var contribution_panel: PanelContainer
var preset_grid: GridContainer
var amount_buttons: Array[Button] = []
var muted_labels: Array[Label] = []
var amount_group := ButtonGroup.new()
var custom_amount: LineEdit
var donate_button: Button
@@ -61,6 +62,7 @@ func _build_ui() -> void:
subtitle.add_theme_font_size_override("font_size", 18)
subtitle.add_theme_color_override("font_color", Brand.muted_color(UIThemeService.is_dark_mode()))
subtitle.autowrap_mode = TextServer.AUTOWRAP_WORD_SMART
muted_labels.append(subtitle)
page.add_child(subtitle)
content_grid = GridContainer.new()
@@ -141,7 +143,7 @@ func _build_ui() -> void:
contribution.add_child(custom_amount)
donate_button = Button.new()
donate_button.text = "Donate $25 securely"
donate_button.text = "Donate $5 securely"
donate_button.custom_minimum_size = Vector2(0, 58)
donate_button.pressed.connect(_on_donate_pressed)
contribution.add_child(donate_button)
@@ -270,6 +272,7 @@ func _body(value: String) -> Label:
label.add_theme_font_size_override("font_size", 17)
label.add_theme_color_override("font_color", Brand.muted_color(UIThemeService.is_dark_mode()))
label.autowrap_mode = TextServer.AUTOWRAP_WORD_SMART
muted_labels.append(label)
return label
@@ -282,6 +285,8 @@ func _update_layout() -> void:
func refresh_theme_controls() -> void:
var dark := UIThemeService.is_dark_mode()
for label in muted_labels:
label.add_theme_color_override("font_color", Brand.muted_color(dark))
for panel in [mission_panel, contribution_panel]:
if panel != null:
var box := Brand.content_card_box(dark, false)
+4 -2
View File
@@ -18,8 +18,8 @@ func _run() -> void:
host.add_child(screen)
await process_frame
_assert(screen.content_grid.columns == 2, "wide donation layouts should use two columns")
_assert(screen.selected_amount_cents == 2500, "the default preset should be $25")
_assert(screen.donate_button.text.contains("$25.00"), "the donation action should state the selected amount")
_assert(screen.selected_amount_cents == 500, "the default preset should be $5")
_assert(screen.donate_button.text.contains("$5.00"), "the donation action should state the selected amount")
screen.size = Vector2(760, 800)
screen._update_layout()
_assert(screen.content_grid.columns == 1, "narrow donation layouts should stack")
@@ -34,6 +34,8 @@ func _run() -> void:
await process_frame
var light_box := screen.mission_panel.get_theme_stylebox("panel") as StyleBoxFlat
_assert(light_box.bg_color.is_equal_approx(Color.WHITE), "donation cards should use light surfaces in light mode")
_assert(screen.muted_labels[0].get_theme_color("font_color").is_equal_approx(Color("64748b")),
"secondary donation text should use the readable light-mode color")
host.queue_free()
await process_frame
theme_service.set_dark_mode(prior_dark_mode)