#ifndef CEF_LIBCEF_BROWSER_VIEWS_PANEL_VIEW_H_
#define CEF_LIBCEF_BROWSER_VIEWS_PANEL_VIEW_H_
#pragma once
#include "include/views/cef_panel_delegate.h"
#include "libcef/browser/thread_util.h"
#include "libcef/browser/views/view_view.h"
#include "base/logging.h"
#define CEF_PANEL_VIEW_T CEF_VIEW_VIEW_T
#define CEF_PANEL_VIEW_A CEF_VIEW_VIEW_A
#define CEF_PANEL_VIEW_D CefPanelView<CEF_PANEL_VIEW_A>
CEF_PANEL_VIEW_T class CefPanelView : public CEF_VIEW_VIEW_D {
public:
using ParentClass = CEF_VIEW_VIEW_D;
template <typename... Args>
explicit CefPanelView(CefViewDelegateClass* cef_delegate, Args... args)
: ParentClass(cef_delegate, args...) {}
CefRefPtr<CefPanel> GetCefPanel() const {
CefRefPtr<CefPanel> panel = ParentClass::GetCefView()->AsPanel();
DCHECK(panel);
return panel;
}
};
#endif