func FillWindowInfo(windowInfo *C.cef_window_info_t, hwnd unsafe.Pointer) { Logger.Println("FillWindowInfo") // Setting title isn't required for the CEF inner window. // -- // var windowName *C.char = C.CString("TODO Darwin example") // defer C.free(unsafe.Pointer(windowName)) // C.cef_string_from_utf8(windowName, C.strlen(windowName), // &windowInfo.window_name) var bounds C.NSRect = C.GetWindowBounds(hwnd) windowInfo.x = C.int(bounds.origin.x) windowInfo.y = C.int(bounds.origin.y) windowInfo.width = C.int(bounds.size.width) windowInfo.height = C.int(bounds.size.height) // parent windowInfo.parent_view = hwnd }
func CreateBrowser(browserSettings *BrowserSettings, url string, offscreenRendering bool) (browser *Browser) { log.Debug("CreateBrowser, url=%s", url) // Initialize cef_window_info_t structure. var windowInfo *C.cef_window_info_t windowInfo = (*C.cef_window_info_t)(C.calloc(1, C.sizeof_cef_window_info_t)) if offscreenRendering { windowInfo.windowless_rendering_enabled = 1 windowInfo.transparent_painting_enabled = 1 } C.cef_browser_host_create_browser(windowInfo, _ClientHandler, CEFString(url), browserSettings.ToCStruct(), nil) b, err := globalLifespanHandler.RegisterAndWaitForBrowser() if err != nil { log.Error("ERROR %v", err) panic("Failed to create a browser") } b.RenderHandler = &DefaultRenderHandler{b} browsers[b.Id] = b return b }
func FillWindowInfo(windowInfo *C.cef_window_info_t, hwnd unsafe.Pointer) { Logger.Println("FillWindowInfo") var rect C.RECT C.GetWindowRect((C.HWND)(hwnd), (*C.struct_tagRECT)(unsafe.Pointer(&rect))) windowInfo.style = C.WS_CHILD | C.WS_CLIPCHILDREN | C.WS_CLIPSIBLINGS | C.WS_TABSTOP | C.WS_VISIBLE windowInfo.parent_window = (C.HWND)(hwnd) windowInfo.x = C.int(rect.left) windowInfo.y = C.int(rect.top) windowInfo.width = C.int(rect.right - rect.left) windowInfo.height = C.int(rect.bottom - rect.top) }
func FillWindowInfo(windowInfo *C.cef_window_info_t, hwnd unsafe.Pointer) { Logger.Infof("FillWindowInfo") windowInfo.parent_widget = (*C.GtkWidget)(hwnd) }