Lecrapouille / gdcef

[Plugin][Version 0.12.1][Functional] Chromium Embedded Framework Webview for Godot 3 and 4
https://discord.gg/EckEwy7S5U
MIT License
250 stars 31 forks source link

Initial port to Godot 4.2 #37

Closed BlayTheNinth closed 9 months ago

BlayTheNinth commented 9 months ago

This isn't really a full port and I can't dedicate the time to make everything neat, so submitting it as a draft. Feel free to use as a base or build upon this.

The basics of the 2D demo are working in Godot 4.2 (via gdextension below, did not test gdnative). I was able to view the GitHub page, interact with it, and watched YouTube with both Video and Audio. The 3D demo was left untouched for now and I've only tested on Windows.

Changes

The barebones gdcef.gdextension I used for testing (obviously not using correct targets) is below. I also had to update the cef artifacts path to use that same bin folder but did not change this in the build script since it seemed more involved.

[configuration]
entry_symbol = "gdcef_library_init"
compatibility_minimum = 4.2

[libraries]
linux.x86_64.debug = "bin/libgdcef.so"
linux.x86_64.release = "bin/libgdcef.so"
linux.x86_32.debug = "bin/libgdcef.so"
linux.x86_32.release = "bin/libgdcef.so"

windows.x86_64.debug = "bin/libgdcef.dll"
windows.x86_64.release = "bin/libgdcef.dll"
windows.x86_32.debug = "bin/libgdcef.dll"
windows.x86_32.release = "bin/libgdcef.dll"

macos.debug = "bin/Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libgdcef.dylib"
macos.release = "bin/Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libgdcef.dylib"

30

Lecrapouille commented 9 months ago

@BlayTheNinth Thank you ! Nice work. Of course, no problem to merge it inside the dev-godot-4 branch. I will test it on Linux. No worries if "something" broke ... since this branch is initially not working ;)

Lecrapouille commented 9 months ago

@BlayTheNinth I made commits on the master branch (godot-3.5) but also some cherry picking and fixes on the godot-4 branch. I added gdextension files, remove gdnative files. The window reshape was fixed on the master branch. The compilation of the 3d demo shall be fixed as well as the keyboard. Tested on Linux.