This is a gigantic kerfuffle because Chromium expects a very specific directory & app bundle layout. Have to change a bunch of resource loading code to account for content development being launched from an app bundle, and also had to make automatic MSBuild tooling & a python script to generate such an app bundle
* Multiple CEF instances on a single machine
* remove unused
* meh implementation
* cefextension
* me when partials, race conditions and extractiion of methods exists
* Change remote debugging handling
It now defaults to 9222 again. This doesn't seem to cause any issues when launching 3 clients. The debug port can be reconfigured via CVar if desired.
Also disabled debugging by default outside dev builds.
* Lower MaxAttempts to 15
100 was way too much and gave me anxiety idk.
* Fix non-TOOLS default of remote debug port
* Rewrite locking implementation.
It is much smaller, less complicated and probably more robust too. Should be fully atomic (the previous one wasn't).
* Undo unnecessary style changes
---------
Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com>
* Bump cefglue
* another bump
* Update build-test.yml
* Update to latest CEF natives and fix code to be compatible.
* Switch CEF CreateBrowserWindow to Alloy style
you will NOT open Chrome
* Update cefglue, again
---------
Co-authored-by: ike709 <ike709@github.com>
Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com>
* Start converting SDL2 backend to SDL3.
Game starts, but a lot of stuff is broken. Oh well.
* Fix text input
SDL3 changed the API somewhat, for the better. Changes all over UI/Clyde/SDL3 layer.
* Fix mouse buttons being broken
* Remove records from SDL3 WSI
The fact that this shaved 2-3% off Robust.Client.dll is mindboggling. Records are so bad.
* Set Windows/X11 native window properties
* Fix window resize events getting wrong size
oops
* Remove "using static" from SDL3 WSI
Seriously seems to hurt IDE performance, oh well.
* Apparently I never called CheckThreadApartment().
* Add STAThreadAttribute to sandbox
Necessary for content start
* Set window title on creation properly.
* Load window icons
* Fix GLFW NoTitleBar style handling
Yeah this PR is supposed to be about SDL3, so what?
* Implement more window creation settings in SDL3
Mostly the ones that need a lot of platform-specific stuff to work.
* Make fullscreen work properly in SDL3.
* File dialogs with SDL3
Removes need for swnfd.
* Fix some TODOs
* Fix WebView build
Re-organize initialization so that User-Agent CVar actually works.
Add web.headless CVar to not load CEF even on graphical client.
Clean up init logic to not rely on static IoC, and clean up loggers used too.
* Trying to get res:// and usr:// cookies to wrok
* Update CefGlue
* Bump CEF
* Seal types in WebView
Fixes warnings
* Move most of client cleanup to game thread.
This used to run in the windowing thread which broke CEF shutdown, most notably cookie saving.
* "flushcookies" command for CEF.
* Remove unecessary res:// code.
* Fix tests
* More request handler fixes.
* Good thing I don't have to care about commit quality in PRs like this.