You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
77 lines
2.5 KiB
77 lines
2.5 KiB
using CPF; |
|
using CPF.Cef; |
|
using CPF.Cef.JSExtenstions; |
|
using CPF.Mac.CoreText; |
|
using CPF.Reflection; |
|
using System; |
|
using System.Collections.Generic; |
|
using System.Linq; |
|
using System.Runtime.ConstrainedExecution; |
|
using System.Text; |
|
using System.Threading.Tasks; |
|
|
|
namespace AksWebBrowser |
|
{ |
|
|
|
public class CusWebBrowser : CPF.Cef.WebBrowser |
|
{ |
|
public CusCefRequestHandler CusRequest = new CusCefRequestHandler(); |
|
public CusWebBrowser() { } |
|
|
|
protected override CpfCefClient OnCreateWebBrowser(CefBrowserSettings settings) |
|
{ |
|
CpfCefClient cefClient = base.OnCreateWebBrowser(settings); |
|
cefClient.RequestHandler = CusRequest; |
|
cefClient.ContextMenuHandler = new MenuHandler(); |
|
cefClient.DragHandler = new DragHandler(); |
|
return cefClient; |
|
} |
|
} |
|
|
|
public class CusCefRequestHandler : CpfCefRequestHandler |
|
{ |
|
public delegate void CusResquestDelegate(CefPostData postData, CefRequest request); |
|
public event CusResquestDelegate CusResquestEvent; |
|
|
|
public CusCefRequestHandler() { } |
|
|
|
protected override CefResourceRequestHandler GetResourceRequestHandler(CefBrowser browser, CefFrame frame, CefRequest request, bool isNavigation, bool isDownload, string requestInitiator, ref bool disableDefaultHandling) |
|
{ |
|
//CusResquestEvent(request.PostData, request); |
|
return null; |
|
} |
|
} |
|
|
|
public class DragHandler : CpfCefDragHandler |
|
{ |
|
protected override bool OnDragEnter(CefBrowser browser, CefDragData dragData, CefDragOperationsMask mask) |
|
{ |
|
return true; |
|
} |
|
protected override void OnDraggableRegionsChanged(CefBrowser browser, CefFrame frame, CefDraggableRegion[] regions) |
|
{ |
|
|
|
} |
|
} |
|
|
|
public class MenuHandler : CpfCefContextMenuHandler |
|
{ |
|
protected override void OnBeforeContextMenu(CefBrowser browser, CefFrame frame, CefContextMenuParams state, CefMenuModel model) |
|
{ |
|
model.Clear(); |
|
} |
|
protected override bool OnContextMenuCommand(CefBrowser browser, CefFrame frame, CefContextMenuParams state, int commandId, CefEventFlags eventFlags) |
|
{ |
|
return false; |
|
} |
|
protected override void OnContextMenuDismissed(CefBrowser browser, CefFrame frame) |
|
{ |
|
|
|
} |
|
protected override bool RunContextMenu(CefBrowser browser, CefFrame frame, CefContextMenuParams parameters, CefMenuModel model, CefRunContextMenuCallback callback) |
|
{ |
|
return false; |
|
} |
|
} |
|
|
|
}
|
|
|