Skip to content

[FEATURE] Quick-Launching #2

@NexilFromNullFrame

Description

@NexilFromNullFrame

Feature Request: Integrate Lightweight Apps (Profile, My Games & Apps, Settings) into the Home Screen Scene

Description

Currently, apps like Profile, My Games & Apps, and Settings are loaded as separate scenes, which can lead to slower navigation and potential crashes during scene transitions. To improve performance and user experience, merge these lightweight apps directly into the main Home_Screen scene as sub-panels or overlays.

Why Add This?

Faster Navigation: Users can switch between apps instantly without scene loads, reducing wait times and improving responsiveness.
Avoid Godot Scene-Switching Issues: Godot crashes miserably if users double-press during await coroutines in scene changes. Embedding apps eliminates this risk by handling everything in one scene.

Proposed Implementation

Convert apps to Control nodes or Panel subtrees within Home_Screen.tscn.
Use visibility toggles (e.g., visible = true/false) or animations (e.g., fade in/out via Tween) to "open/close" apps.
Example code snippet for toggling:

func open_profile() -> void:
    $HomeScreen/ProfilePanel.visible = true
    $AnimationPlayer.play("profile_fade_in")

func close_profile() -> void:
    $AnimationPlayer.play("profile_fade_out")
    await $AnimationPlayer.animation_finished
    $HomeScreen/ProfilePanel.visible = false

Benefits: No scene switches = no crashes; easier state management (e.g., share variables across apps).

Potential Challenges

UI clutter: Use z-index or modal overlays to keep the home screen clean.
Performance: Test with many apps open — if laggy, optimize with lazy loading (instancing nodes on demand).

Priority: High (fixes crashes, boosts UX).

Metadata

Metadata

Assignees

No one assigned

    Labels

    Heavy OverhaulMajor Upgrade, Might be Breaking for Older AccountsenhancementNew feature or requestgood first issueGood for newcomershelp wantedExtra attention is needed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions