MCPcopy Create free account
hub / github.com/OpenEndedGroup/Field2 / CefSystem

Class CefSystem

src/main/java/fieldcef/browser/CefSystem.kt:28–342  ·  view source on GitHub ↗

* Singleton class, has all of the CEF singleton stuff hidden inside. */

Source from the content-addressed store, hash-verified

26import org.cef.handler.CefLifeSpanHandler
27import org.cef.browser.CefFrame
28import org.cef.handler.CefDisplayHandler
29import org.cef.handler.CefLoadHandlerAdapter
30import org.cef.network.CefRequest.TransitionType
31import org.cef.handler.CefLoadHandler
32import org.cef.handler.CefMessageRouterHandler
33import org.cef.callback.CefQueryCallback
34import java.awt.Point
35import java.awt.Rectangle
36import java.nio.ByteBuffer
37import java.util.ArrayList
38import java.util.function.Consumer
39
40/**
41 * Singleton class, has all of the CEF singleton stuff hidden inside.
42 */
43class CefSystem protected constructor() {
44 private val cefApp: CefApp
45 private val client: CefClient
46 private val router: CefMessageRouter
47
48 fun interface PaintCallback {
49 fun onPaint(popup: Boolean, dirtyRects: Array<Rectangle>?, buffer: ByteBuffer?, width: Int, height: Int)
50 }
51
52 fun interface MessageCallback {
53 fun message(id: Long, message: String?, answer: Consumer<String?>?)
54 }
55
56 var callbacks: MutableMap<CefBrowser, MessageCallback> = MapMaker().weakKeys().makeMap()
57 var completionCallbacks: MutableMap<CefBrowser, Runnable> = MapMaker().weakKeys().makeMap()
58 fun makeBrowser(
59 w: Int,
60 h: Int,
61 callback: PaintCallback,
62 message: MessageCallback,
63 completionCallback: Runnable
64 ): CefBrowserOsrWithHandler {
65// CefRenderer cefRenderer = new CefRenderer(false) {
66//
67//
68// @Override
69// public void onPaint(boolean popup, Rectangle[] dirtyRects, ByteBuffer buffer, int width, int height) {
70// callback.onPaint(popup, dirtyRects, buffer, width, height);
71// }
72// };
73// CefRendererBrowserBuffer browser = (CefRendererBrowserBuffer) CefBrowserFactory.create(client, null, CefRendering.BYTEBUFFER, false, null, w, h, cefRenderer);
74 val r = Rectangle(0, 0, w, h)
75 val browser = CefBrowserOsrWithHandler(
76 client,
77 null,
78 CefRequestContext.getGlobalContext(),
79 object : CefRenderHandlerAdapter() {
80 override fun getViewRect(browser: CefBrowser): Rectangle {
81// println(" ** getViewRect $browser ** ")
82 // return super.getViewRect(browser);
83 return r
84 }
85

Callers

nothing calls this directly

Calls 9

GetOwnPidClass · 0.85
FileFunction · 0.85
getInstanceMethod · 0.80
addHandlerMethod · 0.80
addAllMethod · 0.45
addMethod · 0.45
printlnMethod · 0.45
goMethod · 0.45
createMethod · 0.45

Tested by

no test coverage detected