141 .background_images =
true,
165 DestroyWindow(nsw32_cw->
hWnd);
174 nserror (*cb)(
bool proceed,
void *pw),
192 NSLOG(netsurf, INFO,
"creating hInstance %p SSL window",
hinst);
193 ncwin->
hWnd = CreateWindowEx(0,
195 "SSL Certificate viewer",
196 WS_OVERLAPPEDWINDOW |
208 if (ncwin->
hWnd == NULL) {
209 NSLOG(netsurf, INFO,
"Window create failed");
226 (
struct core_window *)ncwin,
233 ncwin->hAccept = CreateWindowEx(0,
236 WS_TABSTOP|WS_VISIBLE|
237 WS_CHILD|BS_DEFPUSHBUTTON,
246 HGDIOBJ hfDefault=GetStockObject(DEFAULT_GUI_FONT);
247 SendMessage(ncwin->hAccept, WM_SETFONT, (WPARAM)hfDefault, MAKELPARAM(FALSE,0));
248 ncwin->hReject = CreateWindowEx(0,
251 WS_TABSTOP|WS_VISIBLE|
252 WS_CHILD|BS_DEFPUSHBUTTON,
261 SendMessage(ncwin->hReject, WM_SETFONT, (WPARAM)hfDefault, MAKELPARAM(FALSE,0));
266 WS_VISIBLE | WS_CHILD | SS_ICON,
275 ncwin->hTxt = CreateWindowEx(0,
277 "NetSurf failed to verify the authenticity of an SSL certificate. Verify the certificate details",
278 WS_VISIBLE | WS_CHILD | SS_LEFT,
287 SendMessage(ncwin->hTxt, WM_SETFONT, (WPARAM)hfDefault, MAKELPARAM(FALSE,0));
289 SetProp(ncwin->hWnd, TEXT(
"CertWnd"), (HANDLE)ncwin);
307 GetClientRect(hwnd, &rc);
330 MoveWindow(certwin->
hTxt,
352 DestroyWindow(crtwin->
hWnd);
372 int notification_code,
377 "notification_code %x identifier %x ctrl_window %p",
408 static LRESULT CALLBACK
415 crtwin = GetProp(hwnd, TEXT(
"CertWnd"));
416 if (crtwin != NULL) {
427 (HWND)lparam) == 0) {
439 return DefWindowProc(hwnd, msg, wparam, lparam);
450 wc.cbSize =
sizeof(WNDCLASSEX);
455 wc.hInstance = hInstance;
458 wc.hbrBackground = (HBRUSH)(COLOR_MENU + 1);
459 wc.lpszMenuName = NULL;
463 if (RegisterClassEx(&wc) == 0) {
HWND hAccept
accept button handle
Target independent plotting interface.
nserror sslcert_viewer_create_session_data(struct nsurl *url, nserror(*cb)(bool proceed, void *pw), void *cbpw, const struct cert_chain *chain, struct sslcert_session_data **ssl_d)
Create ssl certificate viewer session data.
#define IDC_SSLCERT_BTN_REJECT
nserror nsw32_cert_verify(struct nsurl *url, const struct cert_chain *chain, nserror(*cb)(bool proceed, void *pw), void *cbpw)
Prompt the user to verify a certificate with issuse.
#define WRN_ICO_H
warning icon height
win32 ssl certificate view context
#define CMD_BTN_W
comand button width
browser_mouse_state
Mouse state.
Functionality is not implemented.
HWND hReject
reject button handle
nserror sslcert_viewer_accept(struct sslcert_session_data *ssl_d)
Accept a certificate chain.
const struct plotter_table win_plotters
win32 API plot operation table
struct sslcert_session_data * ssl_data
SSL certificate viewer context data.
struct core_window_callback_table * cb_table
table of callbacks for core window operations
#define CMD_BTN_H
command button height
nserror nsws_create_cert_verify_class(HINSTANCE hInstance)
Create the ssl viewer window class.
nserror(* draw)(struct nsw32_corewindow *nsw32_cw, int scrollx, int scrolly, struct rect *r)
callback to draw on drawable area of nsw32 core window
void sslcert_viewer_redraw(struct sslcert_session_data *ssl_d, int x, int y, struct rect *clip, const struct redraw_context *ctx)
Redraw the ssl certificate viewer.
Interface to key press operations.
bool sslcert_viewer_keypress(struct sslcert_session_data *ssl_d, uint32_t key)
Key press handling.
bool interactive
Redraw to show interactive features.
Option reading and saving interface.
nserror nsw32_corewindow_init(HINSTANCE hInstance, HWND hWndParent, struct nsw32_corewindow *nsw32_cw)
initialise elements of nsw32 core window.
nserror sslcert_viewer_init(struct core_window_callback_table *cw_t, void *core_window_handle, struct sslcert_session_data *ssl_d)
Initialise a ssl certificate viewer from session data.
nserror(* close)(struct nsw32_corewindow *nsw32_cw)
callback for window close event
nserror
Enumeration of error codes.
nserror(* key)(struct nsw32_corewindow *nsw32_cw, uint32_t nskey)
callback for keypress on nsw32 core window
static LRESULT nsw32_window_ssl_cert_command(HWND hwnd, struct nsw32_sslcert_window *crtwin, int notification_code, int identifier, HWND ctrl_window)
handle command message on ssl certificate viewing window.
nserror(* mouse)(struct nsw32_corewindow *nsw32_cw, browser_mouse_state mouse_state, int x, int y)
callback for mouse event on nsw32 core window
HWND hWnd
dialog window handle
HWND hTxt
warning text handle
#define NSLOG(catname, level, logmsg, args...)
static void nsw32_window_ssl_cert_size(HWND hwnd, struct nsw32_sslcert_window *certwin)
position and size ssl cert window widgets.
#define DLG_MRGN
dialog margin
static nserror nsw32_sslcert_viewer_close(struct nsw32_corewindow *nsw32_cw)
callback on close event for ssl certificate window
void win_perror(const char *lpszFunction)
SSL Certificate verification UI interface.
static nserror nsw32_sslcert_viewer_key(struct nsw32_corewindow *nsw32_cw, uint32_t nskey)
callback for keypress on ssl certificate window
struct nsw32_corewindow core
nserror sslcert_viewer_fini(struct sslcert_session_data *ssl_d)
Finalise a ssl certificate viewer.
static nserror nsw32_sslcert_viewer_draw(struct nsw32_corewindow *nsw32_cw, int scrollx, int scrolly, struct rect *r)
callback on draw event for ssl certificate window
HINSTANCE hinst
win32 application instance handle.
static LRESULT CALLBACK nsw32_window_ssl_cert_event_callback(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
callback for SSL certificate window win32 events
static nserror nsw32_sslcert_viewer_mouse(struct nsw32_corewindow *nsw32_cw, browser_mouse_state mouse_state, int x, int y)
callback for mouse action on ssl certificate window
#define IDC_SSLCERT_BTN_ACCEPT
nserror sslcert_viewer_reject(struct sslcert_session_data *ssl_d)
Reject a certificate chain.
ssl certificate verification context.
Interface to win32 certificate viewing using nsw32 core windows.
void sslcert_viewer_mouse_action(struct sslcert_session_data *ssl_d, browser_mouse_state mouse, int x, int y)
Handles all kinds of mouse action.
struct nsurl nsurl
NetSurf URL object.
static const char windowclassname_sslcert[]
nserror nsw32_corewindow_fini(struct nsw32_corewindow *nsw32_cw)
finalise elements of nsw32 core window.
static nserror nsw32_crtvrfy_destroy(struct nsw32_sslcert_window *crtwin)
Destroy a certificate viewing window.
const char * title
window title