private void SetBrowserZoom() { int windowsZoomPercent = WindowsDpiHelper.ZoomPercent; if (WindowsDpiHelper.IsProcessDPIAware() && 100 != windowsZoomPercent && !_zoomed) { // There is a bug in some versions of the IE browser control that causes it to // ignore scaling unless it is changed. SetBrowserControlZoom(windowsZoomPercent - 1); SetBrowserControlZoom(windowsZoomPercent); _zoomed = true; } }
public int GetHostInfo(NativeWrapper.DOCHOSTUIINFO info) { const int DOCHOSTUIFLAG_ENABLE_REDIRECT_NOTIFICATION = 0x4000000; const int DOCHOSTUIFLAG_NO3DOUTERBORDER = 0x0020000; const int DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE = 0x00000010; const int DOCHOSTUIFLAG_NOTHEME = 0x00080000; const int DOCHOSTUIFLAG_SCROLL_NO = 0x00000008; const int DOCHOSTUIFLAG_FLAT_SCROLLBAR = 0x00000080; const int DOCHOSTUIFLAG_THEME = 0x00040000; const int DOCHOSTUIFLAG_DPI_AWARE = 0x40000000; info.dwDoubleClick = 0; info.dwFlags = DOCHOSTUIFLAG_NO3DOUTERBORDER | DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE; if (WindowsDpiHelper.IsProcessDPIAware()) { info.dwFlags |= DOCHOSTUIFLAG_DPI_AWARE; } if (host.ScrollBarsEnabled) { info.dwFlags |= DOCHOSTUIFLAG_FLAT_SCROLLBAR; } else { info.dwFlags |= DOCHOSTUIFLAG_SCROLL_NO; } if (Application.RenderWithVisualStyles) { info.dwFlags |= DOCHOSTUIFLAG_THEME; } else { info.dwFlags |= DOCHOSTUIFLAG_NOTHEME; } info.dwFlags |= DOCHOSTUIFLAG_ENABLE_REDIRECT_NOTIFICATION; return(S_OK); }