mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
bug 800668 - doubling of Cocoa widget sizes should depend on whether the context is HiDPI, not on the zoom factor. r=mstange
This commit is contained in:
parent
3075806156
commit
9475a2e7d3
@ -1898,11 +1898,10 @@ nsNativeThemeCocoa::DrawResizer(CGContextRef cgContext, const HIRect& aRect,
|
||||
}
|
||||
|
||||
static bool
|
||||
IsContextZoomedToHighResolution(nsDeviceContext* aContext)
|
||||
IsHiDPIContext(nsDeviceContext* aContext)
|
||||
{
|
||||
const float devPixelsPerCSSPixel = 1.0f *
|
||||
nsPresContext::AppUnitsPerCSSPixel() / aContext->AppUnitsPerDevPixel();
|
||||
return devPixelsPerCSSPixel > 1.5f;
|
||||
return nsPresContext::AppUnitsPerCSSPixel() >=
|
||||
2 * aContext->UnscaledAppUnitsPerDevPixel();
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
@ -1932,7 +1931,7 @@ nsNativeThemeCocoa::DrawWidgetBackground(nsRenderingContext* aContext,
|
||||
|
||||
gfxContextMatrixAutoSaveRestore save(thebesCtx);
|
||||
|
||||
if (IsContextZoomedToHighResolution(aContext->DeviceContext())) {
|
||||
if (IsHiDPIContext(aContext->DeviceContext())) {
|
||||
// Use high-resolution drawing.
|
||||
nativeWidgetRect.ScaleInverse(2.0f);
|
||||
nativeDirtyRect.ScaleInverse(2.0f);
|
||||
@ -2487,7 +2486,7 @@ nsNativeThemeCocoa::GetWidgetBorder(nsDeviceContext* aContext,
|
||||
break;
|
||||
}
|
||||
|
||||
if (IsContextZoomedToHighResolution(aContext)) {
|
||||
if (IsHiDPIContext(aContext)) {
|
||||
*aResult = *aResult + *aResult; // doubled
|
||||
}
|
||||
|
||||
@ -2760,7 +2759,7 @@ nsNativeThemeCocoa::GetMinimumWidgetSize(nsRenderingContext* aContext,
|
||||
}
|
||||
}
|
||||
|
||||
if (IsContextZoomedToHighResolution(aContext->DeviceContext())) {
|
||||
if (IsHiDPIContext(aContext->DeviceContext())) {
|
||||
*aResult = *aResult * 2;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user