New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor(theme): Completely rewrite the default theme #1442
Conversation
Those animations look 🔥 |
# Conflicts: # src-theme/altmanager/public/index.html # src-theme/build.py # src-theme/package-lock.json # src-theme/package.json
926d787
to
d1e3bb3
Compare
Replaced ultralight implementation with MCEF. It uses CEF and is able to render web pages for the UI. This improves performance and also makes it easier to provide a known feature set for web developers. For communication between the UI and the client, we will use our Netty RestAPI and WebSocket protocol. This protocol allows us to listen for events on the WebSocket while tasks are being executed via the RestAPI. Clean-up and sorted The following commits will extend the functionality of the RestAPI/WS to match our theme implementation from #1442
thorium_MD4HUOCPzx.mp4 |
thorium_1SyCV3x3q5.mp4 |
looks wonderful, but can this color at the bottom of the gui at 0:15 be fully dark? Would be really nice (since the whole clickgui is dark themed) |
472d140
to
72f8cff
Compare
Due to the fact that #1442 will still take some time to finish and I want to continue adding everything necessary to the RestAPI, I will try to integrate the old theme as before. - title done - altmanager missing - proxymanager missing - clickgui missing - hud missing - splashscreen missing
This commit represents a major overhaul of our client's existing user interface and integration capabilities. The following list of enhancements have been implemented to improve usability, performance and maintainability: MCEF integration and browser support: - Successfully integrated browser support via the Minecraft Chromium Embedded Framework (MCEF). - Switched default browser implementation from Ultralight to Java Chromium (JCEF) for improved performance and compatibility. - Extended the framework to allow for future browser implementations, increasing the versatility of browser integration. REST API and WebSocket enhancements: - Implemented a Netty-based REST API and WebSocket (WS) server to facilitate server-client communication. - Enhanced WebSocket functionality with the introduction of WebSocket events, allowing the client to listen to client events. - Unified theme serving through the Netty Web Server, consolidating web-related functions under a single port and streamlining the theme management process. Streamlined theme integration and hash router: - Updated theme architecture to utilise Svelte and its Hash Router, improving routing efficiency and reducing page load times. - Enabled REST/WS API support within the Svelte framework, paving the way for a more interactive and responsive user interface. HTML screen optimisation: - Optimised HTML screen integration for faster loading, improving the overall user experience by reducing wait times for screen transitions. ClickGUI Enhancements: - Added drop shadow and blur behind filter These updates mark a significant step forward in our goal to provide the most beautiful and customisable client possible. The following pull request #1442 will take advantage of this and completely overhaul the existing theme.
# Conflicts: # src-theme/src/routes/title/Title.svelte
# Conflicts: # src-theme/bundle.cjs
# Conflicts: # src-theme/public/global.css # src-theme/src/App.svelte # src-theme/src/client/api.svelte # src-theme/src/client/ws.svelte # src-theme/src/routes.js # src-theme/src/routes/altmanager/AltManager.svelte # src-theme/src/routes/clickgui/ClickGui.svelte # src-theme/src/routes/container/Container.svelte # src-theme/src/routes/proxymanager/ProxyManager.svelte # src-theme/src/routes/splashscreen/Splashscreen.svelte # src-theme/src/routes/title/Title.svelte # src/main/java/net/ccbluex/liquidbounce/injection/mixins/minecraft/gui/MixinSplashOverlay.java
# Conflicts: # src-theme/public/client.svg # src-theme/src/App.svelte # src-theme/src/client/api.svelte # src-theme/src/routes/clickgui/ClickGui.svelte # src-theme/src/routes/clickgui/clickgui/Module.svelte # src-theme/src/routes/clickgui/clickgui/Panel.svelte # src-theme/src/routes/clickgui/clickgui/settings/RangeSetting.svelte # src-theme/src/routes/container/Container.svelte # src-theme/src/routes/title/Title.svelte # src/main/java/net/ccbluex/liquidbounce/injection/mixins/minecraft/client/MixinMinecraftClient.java # src/main/java/net/ccbluex/liquidbounce/injection/mixins/minecraft/entity/MixinClientPlayerEntity.java
# Conflicts: # build.gradle # src-theme/src/assets/background.png # src-theme/src/routes/altmanager/AltManager.svelte # src-theme/src/routes/proxymanager/ProxyManager.svelte # src-theme/src/routes/title/Title.svelte
2024-02-10.09-25-59.mp4 |
I think this pull request can now be closed? |
why? This looks so good |
Yes it looks good and @NurMarvin put a lot of effort into it, but it was never finished. Since we have another equal version of the UI we don't need this anymore |
This PR completely rewrites the default theme to make it easier to maintain.
Some notable changes are:
At the moment the client is unable to render the built theme for some unknown reason, but I will fix this while finishing the rest of the theme. Some parts of the theme also still use TailwindCSS, but I will move everything to CSS Modules in due time.
Here's a quick video of the current progress:
chrome_EEm18vChaw.mp4
Fixes #1442