CollapseLauncher / Collapse

An Advanced Launcher for miHoYo/HoYoverse Games
MIT License
1.41k stars 65 forks source link

UI Changes and Runtime Improvements (Part 1) #406

Closed neon-nyan closed 9 months ago

neon-nyan commented 9 months ago

Description

As the title name suggest, this PR introduces some UI changes into the launcher and some minor runtime improvements.

What's New?

New OOBE UI

The OOBE (Out of the Box Experience) now has a new UI. Keep it in mind that the implementation is still in early stage and might be changed over time. Let me know if you have any concerns or advice regarding to this change.

1.OobenewAV1v2.webm

Image Cropper for Custom Background Image

You can now select a specific area of your backgroud

2.BackgroundimagecropperAV1.webm

New Loading Indicator UI

Also the new UI is now shared to the entire app as it's now a part of MainWindow's element

image

Changing old CommunityToolkit's DataTable to the new one

Due to some issues with the repo not being maintained, we are deciding to move into the new CommunityToolkit. You might notice that the UI is slightly changed.

Old New
image image

"Game Type" Aware Mascot for Empty News Display

The news panel will now show the mascot representing each game instead of always showing Paimon as the default mascot.

Genshin Impact Honkai Impact 3rd
image image
Honkai: Star Rail Zenless Zone Zero
image image

Other Changes

TBA

What's Fixed?

TBA

github-actions[bot] commented 9 months ago

Qodana for .NET

217 new problems were found

Inspection name Severity Problems
Unused local variable 🔶 Warning 84
Non-accessed field 🔶 Warning 80
Possible 'System.NullReferenceException' 🔶 Warning 12
Redundant namespace alias 🔶 Warning 7
Possible 'System.InvalidOperationException' 🔶 Warning 6
Missing grid column/row setter for non-first child 🔶 Warning 5
Redundant class or interface specification in base types list 🔶 Warning 4
Redundant control flow jump statement 🔶 Warning 4
'value' parameter is not used 🔶 Warning 4
Empty general catch clause 🔶 Warning 3
Heuristically unreachable code 🔶 Warning 2
Redundant cast 🔶 Warning 2
Possible 'null' assignment to non-nullable entity 🔶 Warning 1
Assignment in conditional expression 🔶 Warning 1
Redundant using directive 🔶 Warning 1
Remove redundant attached property setter 🔶 Warning 1

💡 Qodana analysis was run in the pull request mode: only the changed files were checked ☁️ View the detailed Qodana report

Contact Qodana team Contact us at [qodana-support@jetbrains.com](mailto:qodana-support@jetbrains.com) - Or via our issue tracker: https://jb.gg/qodana-issue - Or share your feedback: https://jb.gg/qodana-discussions
Cryotechnic commented 9 months ago

UI itself looks great, going to be reviewing the code when I have a bit more time. Is there a way to refresh the latency for the CDNs? Right now it seems to be hardlocked at whatever the initial test said, but would be great if the user could see which one is the best by also manually refreshing the page or just that single UI component.

@neon-nyan @bagusnl

neon-nyan commented 9 months ago

Is there a way to refresh the latency for the CDNs?

I will be planning to add this feature later.

neon-nyan commented 9 months ago

UI itself looks great, going to be reviewing the code when I have a bit more time. Is there a way to refresh the latency for the CDNs? Right now it seems to be hardlocked at whatever the initial test said, but would be great if the user could see which one is the best by also manually refreshing the page or just that single UI component.

@neon-nyan @bagusnl

Preview

2024-02-18 17-31-05.webm

shatyuka commented 9 months ago

changing the accept button to go to the "3rd parties notice" first, and only on this page allowing to actually accept it.

That sounds good.

Also the "next" button for each pages does not align to a same direction.

neon-nyan commented 9 months ago

changing the accept button to go to the "3rd parties notice" first, and only on this page allowing to actually accept it.

That sounds good.

Also the "next" button for each pages does not align to a same direction.

The style has been adjusted in the latest commit. Let me know if something related with the style need to be changed again.

neon-nyan commented 9 months ago

As a reply regarding to @gablm comment:

Agreement page

Additionally, I think it would be nice if scrolling down or up after reaching the limit of the agreement content would change to the other page.

As per now, I still can't figured out why the chained scroll down doesn't work on mouse scroll wheel while using touch input like touch bar seems to scroll just fine as expected where the next agreement is shown if the current one has reached its end offset.

The arrow to change between the "pages" is not that noticeable.

The arrow style has been changed as per below:

2024-02-23 00-59-50.webm

Data folder choice page

The TextBox should be a little bit bigger.

The size has been adjusted on small size window mode.

image

It would be useful to have a "Back" button here as sometimes people only remember to change a specific setting after actually closing the "first time settings selection" page.

Also, shouldn't the "Enter Launcher" button follow the same design of the other new buttons? Or is it still highlighted as it is the last button before exiting setup?

The Back button has been re-added to the Game Selection page and the button style has been adjusted to match the other buttons as well.

2024-02-23 01-09-53.webm

bagusnl commented 9 months ago

Good work @neon-nyan <3

Is there anything left to do for the scope of this PR? Dont mind the Qodana report, I'll handle it on next codeQA wave

neon-nyan commented 9 months ago

Good work @neon-nyan <3

Is there anything left to do for the scope of this PR? Dont mind the Qodana report, I'll handle it on next codeQA wave

I'll be working on Honkai Impact 3rd's 7.3 Repair adjustment regarding to the changes on the backend stuffs. Once that's finished, we can continue to merge this PR

bagusnl commented 9 months ago

Good work @neon-nyan <3

Is there anything left to do for the scope of this PR? Dont mind the Qodana report, I'll handle it on next codeQA wave

I'll be working on Honkai Impact 3rd's 7.3 Repair adjustment regarding to the changes on the backend stuffs. Once that's finished, we can continue to merge this PR

Can we merge this PR first ? I dont want this to be 'small-changes part. 2' :derp:

neon-nyan commented 9 months ago

Can we merge this PR first ? I dont want this to be 'small-changes part. 2' :derp:

Welp, yeah. We can merge this first then since the 7.3 changes are unrelated with this PR :klee_derp:

neon-nyan commented 9 months ago

As per internal discussion, I will be merging this PR now. Thank you guys for the feedback and your help on this!