Bug 130169

Summary: [iOS] Use the window size instead of the device size to compute device-width/device-height viewport arguments
Product: WebKit Reporter: Sam Weinig <sam>
Component: New BugsAssignee: Sam Weinig <sam>
Status: RESOLVED WONTFIX    
Severity: Normal CC: ddkilzer, simon.fraser
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Sam Weinig 2014-03-12 17:29:07 PDT
[iOS] Use the window size instead of the device size to compute device-width/device-height viewport arguments
Comment 1 Sam Weinig 2014-03-12 17:29:30 PDT
Created attachment 226564 [details]
Patch
Comment 2 Benjamin Poulain 2014-03-12 18:00:59 PDT
Comment on attachment 226564 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=226564&action=review

> Source/WebCore/dom/Document.cpp:2940
> +        finalizeViewportArguments(m_viewportArguments, page()->chrome().windowRect().size());

I don't think that works. The value from windowRect() will have the orientation taken into account (and the window size could be smaller than the screen size in some cases).
Comment 3 Benjamin Poulain 2014-03-12 18:08:13 PDT
Comment on attachment 226564 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=226564&action=review

> Source/WebCore/dom/ViewportArguments.cpp:-419
> +void finalizeViewportArguments(ViewportArguments& arguments, FloatSize screenSize)
>  {
> -    CGSize screenSize = wkGetViewportScreenSize();
> -

As a temporary workaround:
What about modifying the screenSize to make it "in portrait", then use that value to update ViewportArguments?
Comment 4 Sam Weinig 2014-03-12 18:53:36 PDT
Comment on attachment 226564 [details]
Patch

Removing this. I have a better fix.