diff --git a/assets/icons/medmind/clear-highlight-dark.svg b/assets/icons/medmind/clear-highlight-dark.svg new file mode 100644 index 0000000..9a1932e --- /dev/null +++ b/assets/icons/medmind/clear-highlight-dark.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/assets/icons/medmind/labs-lightmode.png.import b/assets/icons/medmind/clear-highlight-dark.svg.import similarity index 64% rename from assets/icons/medmind/labs-lightmode.png.import rename to assets/icons/medmind/clear-highlight-dark.svg.import index 5f2a8ed..1e99851 100644 --- a/assets/icons/medmind/labs-lightmode.png.import +++ b/assets/icons/medmind/clear-highlight-dark.svg.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://b16pf3mq67md3" -path="res://.godot/imported/labs-lightmode.png-24b48bf8e309293bae3439edb1ab7c9b.ctex" +uid="uid://bx3x2rqpurqqw" +path="res://.godot/imported/clear-highlight-dark.svg-67d9eee7c448efe7f572e5fc819b8ea0.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://assets/icons/medmind/labs-lightmode.png" -dest_files=["res://.godot/imported/labs-lightmode.png-24b48bf8e309293bae3439edb1ab7c9b.ctex"] +source_file="res://assets/icons/medmind/clear-highlight-dark.svg" +dest_files=["res://.godot/imported/clear-highlight-dark.svg-67d9eee7c448efe7f572e5fc819b8ea0.ctex"] [params] @@ -38,3 +38,6 @@ process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/assets/icons/medmind/clear-highlight-darkmode.png b/assets/icons/medmind/clear-highlight-darkmode.png deleted file mode 100644 index 158e81e..0000000 Binary files a/assets/icons/medmind/clear-highlight-darkmode.png and /dev/null differ diff --git a/assets/icons/medmind/clear-highlight-light.svg b/assets/icons/medmind/clear-highlight-light.svg new file mode 100644 index 0000000..454dd9e --- /dev/null +++ b/assets/icons/medmind/clear-highlight-light.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/assets/icons/medmind/clear-highlight-light.svg.import b/assets/icons/medmind/clear-highlight-light.svg.import new file mode 100644 index 0000000..c18ede7 --- /dev/null +++ b/assets/icons/medmind/clear-highlight-light.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bgpsqicfixhew" +path="res://.godot/imported/clear-highlight-light.svg-93f7a6cb5f22325bc90fadf2e89641fc.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/icons/medmind/clear-highlight-light.svg" +dest_files=["res://.godot/imported/clear-highlight-light.svg-93f7a6cb5f22325bc90fadf2e89641fc.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/assets/icons/medmind/clear-highlight-lightmode.png b/assets/icons/medmind/clear-highlight-lightmode.png deleted file mode 100644 index 05ffb80..0000000 Binary files a/assets/icons/medmind/clear-highlight-lightmode.png and /dev/null differ diff --git a/assets/icons/medmind/labs-dark.svg b/assets/icons/medmind/labs-dark.svg new file mode 100644 index 0000000..3d84553 --- /dev/null +++ b/assets/icons/medmind/labs-dark.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/assets/icons/medmind/labs-darkmode.png.import b/assets/icons/medmind/labs-dark.svg.import similarity index 66% rename from assets/icons/medmind/labs-darkmode.png.import rename to assets/icons/medmind/labs-dark.svg.import index 1c40951..a3bcd82 100644 --- a/assets/icons/medmind/labs-darkmode.png.import +++ b/assets/icons/medmind/labs-dark.svg.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://ctqpsk2edv23" -path="res://.godot/imported/labs-darkmode.png-2db95305c902b01413a007879b51e169.ctex" +uid="uid://ca0ufwd3k2hiw" +path="res://.godot/imported/labs-dark.svg-9956a70852ba813a103e5d27fe480209.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://assets/icons/medmind/labs-darkmode.png" -dest_files=["res://.godot/imported/labs-darkmode.png-2db95305c902b01413a007879b51e169.ctex"] +source_file="res://assets/icons/medmind/labs-dark.svg" +dest_files=["res://.godot/imported/labs-dark.svg-9956a70852ba813a103e5d27fe480209.ctex"] [params] @@ -38,3 +38,6 @@ process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/assets/icons/medmind/labs-darkmode.png b/assets/icons/medmind/labs-darkmode.png deleted file mode 100644 index 7b0bcb1..0000000 Binary files a/assets/icons/medmind/labs-darkmode.png and /dev/null differ diff --git a/assets/icons/medmind/labs-light.svg b/assets/icons/medmind/labs-light.svg new file mode 100644 index 0000000..3a4241b --- /dev/null +++ b/assets/icons/medmind/labs-light.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/assets/icons/medmind/clear-highlight-darkmode.png.import b/assets/icons/medmind/labs-light.svg.import similarity index 66% rename from assets/icons/medmind/clear-highlight-darkmode.png.import rename to assets/icons/medmind/labs-light.svg.import index 95c87c2..cdf0a4e 100644 --- a/assets/icons/medmind/clear-highlight-darkmode.png.import +++ b/assets/icons/medmind/labs-light.svg.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://bv0vo5enee88m" -path="res://.godot/imported/clear-highlight-darkmode.png-f5af287fe98280a6ca2fcd51ab9af5a5.ctex" +uid="uid://3qi5vup3wmpj" +path="res://.godot/imported/labs-light.svg-d27c8dfba099c7b70505068994cfe676.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://assets/icons/medmind/clear-highlight-darkmode.png" -dest_files=["res://.godot/imported/clear-highlight-darkmode.png-f5af287fe98280a6ca2fcd51ab9af5a5.ctex"] +source_file="res://assets/icons/medmind/labs-light.svg" +dest_files=["res://.godot/imported/labs-light.svg-d27c8dfba099c7b70505068994cfe676.ctex"] [params] @@ -38,3 +38,6 @@ process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/assets/icons/medmind/labs-lightmode.png b/assets/icons/medmind/labs-lightmode.png deleted file mode 100644 index ac93f3a..0000000 Binary files a/assets/icons/medmind/labs-lightmode.png and /dev/null differ diff --git a/assets/icons/medmind/report-question-dark.svg b/assets/icons/medmind/report-question-dark.svg new file mode 100644 index 0000000..442a927 --- /dev/null +++ b/assets/icons/medmind/report-question-dark.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/assets/icons/medmind/clear-highlight-lightmode.png.import b/assets/icons/medmind/report-question-dark.svg.import similarity index 64% rename from assets/icons/medmind/clear-highlight-lightmode.png.import rename to assets/icons/medmind/report-question-dark.svg.import index 38b6edb..c2a2de3 100644 --- a/assets/icons/medmind/clear-highlight-lightmode.png.import +++ b/assets/icons/medmind/report-question-dark.svg.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://sfq2s5fx5vs4" -path="res://.godot/imported/clear-highlight-lightmode.png-dd2abfaa944c65e8d3e917cd1fc470e8.ctex" +uid="uid://d1rf1y5ym0abp" +path="res://.godot/imported/report-question-dark.svg-0c56358e403130829c20d7684d988f4f.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://assets/icons/medmind/clear-highlight-lightmode.png" -dest_files=["res://.godot/imported/clear-highlight-lightmode.png-dd2abfaa944c65e8d3e917cd1fc470e8.ctex"] +source_file="res://assets/icons/medmind/report-question-dark.svg" +dest_files=["res://.godot/imported/report-question-dark.svg-0c56358e403130829c20d7684d988f4f.ctex"] [params] @@ -38,3 +38,6 @@ process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/assets/icons/medmind/report-question-darkmode.png b/assets/icons/medmind/report-question-darkmode.png deleted file mode 100644 index 2f11475..0000000 Binary files a/assets/icons/medmind/report-question-darkmode.png and /dev/null differ diff --git a/assets/icons/medmind/report-question-darkmode.png.import b/assets/icons/medmind/report-question-darkmode.png.import deleted file mode 100644 index c70de89..0000000 --- a/assets/icons/medmind/report-question-darkmode.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://duumt7vato28c" -path="res://.godot/imported/report-question-darkmode.png-47c7d15d7daf464037cdd7712879b6cc.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://assets/icons/medmind/report-question-darkmode.png" -dest_files=["res://.godot/imported/report-question-darkmode.png-47c7d15d7daf464037cdd7712879b6cc.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/assets/icons/medmind/report-question-light.svg b/assets/icons/medmind/report-question-light.svg new file mode 100644 index 0000000..425c867 --- /dev/null +++ b/assets/icons/medmind/report-question-light.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/assets/icons/medmind/report-question-light.svg.import b/assets/icons/medmind/report-question-light.svg.import new file mode 100644 index 0000000..856d312 --- /dev/null +++ b/assets/icons/medmind/report-question-light.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://btqfcwm8c1ymy" +path="res://.godot/imported/report-question-light.svg-d6a637ee28802ff5e54da98728d1db20.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/icons/medmind/report-question-light.svg" +dest_files=["res://.godot/imported/report-question-light.svg-d6a637ee28802ff5e54da98728d1db20.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/assets/icons/medmind/report-question-lightmode.png b/assets/icons/medmind/report-question-lightmode.png deleted file mode 100644 index 5df4743..0000000 Binary files a/assets/icons/medmind/report-question-lightmode.png and /dev/null differ diff --git a/assets/icons/medmind/report-question-lightmode.png.import b/assets/icons/medmind/report-question-lightmode.png.import deleted file mode 100644 index 23f1f0a..0000000 --- a/assets/icons/medmind/report-question-lightmode.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://cj8futh2o3ixp" -path="res://.godot/imported/report-question-lightmode.png-3006440fd905de3664fbd0b81dddda26.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://assets/icons/medmind/report-question-lightmode.png" -dest_files=["res://.godot/imported/report-question-lightmode.png-3006440fd905de3664fbd0b81dddda26.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/scripts/ui/main.gd b/scripts/ui/main.gd index 9fb0f72..0319276 100644 --- a/scripts/ui/main.gd +++ b/scripts/ui/main.gd @@ -727,13 +727,6 @@ func _build_app_menu() -> void: sound_toggle.toggled.connect(UISoundService.set_sounds_enabled) content.add_child(sound_toggle) - var profile := Button.new() - profile.text = "Profile" - profile.custom_minimum_size = Vector2(0, 48) - Style.style_chip(profile, Style.CYAN) - profile.pressed.connect(_open_profile_from_menu) - content.add_child(profile) - menu_exit_button = Button.new() menu_exit_button.text = "Exit Run" menu_exit_button.custom_minimum_size = Vector2(0, 48) @@ -786,12 +779,3 @@ func _exit_run() -> void: elif BlockSessionService.session_kind == "simulation": BlockSessionService.block_started = false show_screen("selection", "exam" if was_core_run else "step3") - - -func _open_profile_from_menu() -> void: - _close_app_menu() - if BlockSessionService.block_started and BlockSessionService.session_kind != "simulation": - BlockSessionService.finish_block() - elif BlockSessionService.session_kind == "simulation": - BlockSessionService.block_started = false - show_screen("profile") diff --git a/scripts/ui/question_player.gd b/scripts/ui/question_player.gd index adbb2c5..2cabb60 100644 --- a/scripts/ui/question_player.gd +++ b/scripts/ui/question_player.gd @@ -2,12 +2,12 @@ extends VBoxContainer const Style := preload("res://scripts/ui/ui_style.gd") const Brand := preload("res://scripts/ui/medmind_style.gd") -const CLEAR_HIGHLIGHT_DARK_ICON := preload("res://assets/icons/medmind/clear-highlight-darkmode.png") -const CLEAR_HIGHLIGHT_LIGHT_ICON := preload("res://assets/icons/medmind/clear-highlight-lightmode.png") -const LABS_DARK_ICON := preload("res://assets/icons/medmind/labs-darkmode.png") -const LABS_LIGHT_ICON := preload("res://assets/icons/medmind/labs-lightmode.png") -const REPORT_QUESTION_DARK_ICON := preload("res://assets/icons/medmind/report-question-darkmode.png") -const REPORT_QUESTION_LIGHT_ICON := preload("res://assets/icons/medmind/report-question-lightmode.png") +const CLEAR_HIGHLIGHT_DARK_ICON := preload("res://assets/icons/medmind/clear-highlight-dark.svg") +const CLEAR_HIGHLIGHT_LIGHT_ICON := preload("res://assets/icons/medmind/clear-highlight-light.svg") +const LABS_DARK_ICON := preload("res://assets/icons/medmind/labs-dark.svg") +const LABS_LIGHT_ICON := preload("res://assets/icons/medmind/labs-light.svg") +const REPORT_QUESTION_DARK_ICON := preload("res://assets/icons/medmind/report-question-dark.svg") +const REPORT_QUESTION_LIGHT_ICON := preload("res://assets/icons/medmind/report-question-light.svg") const FEEDBACK_FADE_SECONDS := 0.45 const CORRECT_ADVANCE_DELAY_SECONDS := 1.25 const TEXT_SCALE_MIN := 0.85 @@ -680,17 +680,20 @@ func _style_theme_toggle_button(dark: bool) -> void: theme_button.add_theme_constant_override("h_separation", 0) -func _style_asset_toolbar_button(button: Button, texture: Texture2D) -> void: +func _style_asset_toolbar_button(button: Button, texture: Texture2D, dark: bool) -> void: if button == null: return button.text = "" - button.icon = null + button.icon = texture + button.expand_icon = false button.focus_mode = Control.FOCUS_NONE - var texture_box := StyleBoxTexture.new() - texture_box.texture = texture - for state in ["normal", "hover", "pressed"]: - button.add_theme_stylebox_override(state, texture_box) + button.add_theme_constant_override("icon_max_width", 25) + button.add_theme_stylebox_override("normal", _toolbar_box(dark)) + button.add_theme_stylebox_override("hover", _toolbar_box(dark, true)) + button.add_theme_stylebox_override("pressed", _toolbar_box(dark, true)) button.add_theme_stylebox_override("focus", StyleBoxEmpty.new()) + for color_name in ["icon_normal_color", "icon_hover_color", "icon_pressed_color", "icon_focus_color"]: + button.add_theme_color_override(color_name, Color.WHITE) func _primary_action_box(dark: bool, state: String) -> StyleBoxFlat: @@ -823,9 +826,9 @@ func _apply_question_theme() -> void: control.add_theme_stylebox_override("pressed", _toolbar_box(dark, true)) control.add_theme_color_override("font_color", Brand.text_color(dark)) control.add_theme_color_override("icon_normal_color", Brand.SKY_BLUE) - _style_asset_toolbar_button(labs_button, LABS_DARK_ICON if dark else LABS_LIGHT_ICON) - _style_asset_toolbar_button(clear_highlight_button, CLEAR_HIGHLIGHT_DARK_ICON if dark else CLEAR_HIGHLIGHT_LIGHT_ICON) - _style_asset_toolbar_button(report_button, REPORT_QUESTION_DARK_ICON if dark else REPORT_QUESTION_LIGHT_ICON) + _style_asset_toolbar_button(labs_button, LABS_DARK_ICON if dark else LABS_LIGHT_ICON, dark) + _style_asset_toolbar_button(clear_highlight_button, CLEAR_HIGHLIGHT_DARK_ICON if dark else CLEAR_HIGHLIGHT_LIGHT_ICON, dark) + _style_asset_toolbar_button(report_button, REPORT_QUESTION_DARK_ICON if dark else REPORT_QUESTION_LIGHT_ICON, dark) _style_theme_toggle_button(dark) if skip_button != null: skip_button.add_theme_stylebox_override("normal", _toolbar_box(dark)) diff --git a/tests/post_answer_review_test.gd b/tests/post_answer_review_test.gd index d5c3723..9980f4f 100644 --- a/tests/post_answer_review_test.gd +++ b/tests/post_answer_review_test.gd @@ -345,18 +345,13 @@ func _test_player_runtime_construction() -> void: _assert(player.navigator_popup != null, "question player should construct its popup navigator") _assert(player.header_row.get_node_or_null("StepBadge") == null, "question player should not display a redundant STEP 3 badge") _assert(player.header_row.get_child(0) == player.progress_button, "question progress should be the first header item") - var clear_box := player.clear_highlight_button.get_theme_stylebox("normal") as StyleBoxTexture - var report_box := player.report_button.get_theme_stylebox("normal") as StyleBoxTexture - var labs_box := player.labs_button.get_theme_stylebox("normal") as StyleBoxTexture - _assert(clear_box != null and clear_box.texture != null, "clear highlights should use the supplied toolbar artwork") - _assert(report_box != null and report_box.texture != null, "report question should use the supplied toolbar artwork") - _assert(labs_box != null and labs_box.texture != null, "lab results should use the supplied toolbar artwork") - player._style_asset_toolbar_button(player.clear_highlight_button, player.CLEAR_HIGHLIGHT_LIGHT_ICON) - clear_box = player.clear_highlight_button.get_theme_stylebox("normal") as StyleBoxTexture - _assert(clear_box.texture == player.CLEAR_HIGHLIGHT_LIGHT_ICON, "clear highlights should support its light-mode artwork") - player._style_asset_toolbar_button(player.report_button, player.REPORT_QUESTION_LIGHT_ICON) - report_box = player.report_button.get_theme_stylebox("normal") as StyleBoxTexture - _assert(report_box.texture == player.REPORT_QUESTION_LIGHT_ICON, "report question should support its light-mode artwork") + _assert(player.clear_highlight_button.icon != null, "clear highlights should use the supplied toolbar artwork") + _assert(player.report_button.icon != null, "report question should use the supplied toolbar artwork") + _assert(player.labs_button.icon != null, "lab results should use the supplied toolbar artwork") + player._style_asset_toolbar_button(player.clear_highlight_button, player.CLEAR_HIGHLIGHT_LIGHT_ICON, false) + _assert(player.clear_highlight_button.icon == player.CLEAR_HIGHLIGHT_LIGHT_ICON, "clear highlights should support its light-mode artwork") + player._style_asset_toolbar_button(player.report_button, player.REPORT_QUESTION_LIGHT_ICON, false) + _assert(player.report_button.icon == player.REPORT_QUESTION_LIGHT_ICON, "report question should support its light-mode artwork") var toggle_box := player.theme_button.get_theme_stylebox("normal") as StyleBoxFlat _assert(player.theme_button.custom_minimum_size == Vector2(44, 44), "question theme toggle should retain the shared square footprint") _assert(toggle_box != null and toggle_box.corner_radius_top_left == 22, "question theme toggle should use the shared circular treatment") diff --git a/tests/web_responsive_test.gd b/tests/web_responsive_test.gd index 5f55e54..9dd2002 100644 --- a/tests/web_responsive_test.gd +++ b/tests/web_responsive_test.gd @@ -48,6 +48,11 @@ func _run() -> void: _assert(main_screen.theme_button.get_index() < main_screen.account_button.get_index(), "the theme toggle should appear before the account dropdown") _assert(main_screen.account_chevron_button.get_index() == main_screen.account_button.get_index() + 1, "the account avatar and chevron should remain adjacent") _assert(main_screen.header_panel.find_child("HeaderStats", true, false) == null, "the application header should not display rating or role labels") + var pause_menu_has_profile := false + for menu_button in main_screen.app_menu.find_children("*", "Button", true, false): + if menu_button.text == "Profile": + pause_menu_has_profile = true + _assert(not pause_menu_has_profile, "the paused-run menu should not duplicate profile navigation") _assert(not main_screen.account_chevron_button.visible, "nonessential account controls should collapse on phone-width headers") var question_bank_nav := main_screen.sidebar.find_child("NavQuestionBank", true, false) as Button _assert(question_bank_nav != null and question_bank_nav.text == "Question Bank", "the Practice navigation item should be replaced by Question Bank")