Files
VRCX/Dotnet/Overlay/Cef/VRForm.cs
2026-01-12 11:14:33 +13:00

65 lines
1.9 KiB
C#

using System.IO;
using System.Windows.Forms;
using CefSharp;
using CefSharp.WinForms;
namespace VRCX
{
public partial class VRForm : WinformBase
{
public static VRForm Instance;
private ChromiumWebBrowser _browser1;
private ChromiumWebBrowser _browser2;
public VRForm()
{
Instance = this;
InitializeComponent();
_browser1 = new ChromiumWebBrowser(
Path.Join(Program.BaseDirectory, "html/vr.html?wrist")
)
{
DragHandler = new CefNoopDragHandler(),
RequestHandler = new CustomRequestHandler(),
BrowserSettings =
{
DefaultEncoding = "UTF-8",
},
Dock = DockStyle.Fill
};
_browser2 = new ChromiumWebBrowser(
Path.Join(Program.BaseDirectory, "html/vr.html?hmd")
)
{
DragHandler = new CefNoopDragHandler(),
BrowserSettings =
{
DefaultEncoding = "UTF-8",
},
Dock = DockStyle.Fill
};
JavascriptBindings.ApplyVrJavascriptBindings(_browser1.JavascriptObjectRepository);
JavascriptBindings.ApplyVrJavascriptBindings(_browser2.JavascriptObjectRepository);
panel1.Controls.Add(_browser1);
panel2.Controls.Add(_browser2);
}
private void button_refresh_Click(object sender, System.EventArgs e)
{
_browser1.ExecuteScriptAsync("location.reload()");
_browser2.ExecuteScriptAsync("location.reload()");
Program.VRCXVRInstance.Refresh();
}
private void button_devtools_Click(object sender, System.EventArgs e)
{
_browser1.ShowDevTools();
_browser2.ShowDevTools();
}
}
}