RESOLVED FIXED 238060
Web Inspector: `console.screenshot` has extra transparent pixels at bottom of screenshot on platforms with viewports that are obscured by browser chrome
https://bugs.webkit.org/show_bug.cgi?id=238060
Summary Web Inspector: `console.screenshot` has extra transparent pixels at bottom of...
Patrick Angle
Reported 2022-03-17 17:04:08 PDT
.
Attachments
Screenshot of Issue (457.60 KB, image/png)
2022-03-17 17:04 PDT, Patrick Angle
no flags
Patch v1.0 (2.33 KB, patch)
2022-03-17 17:08 PDT, Patrick Angle
no flags
Screenshot of Patch v1.0 (423.50 KB, image/png)
2022-03-17 17:08 PDT, Patrick Angle
no flags
Patch v1.1 (2.45 KB, patch)
2022-03-18 13:11 PDT, Patrick Angle
no flags
Radar WebKit Bug Importer
Comment 1 2022-03-17 17:04:19 PDT
Patrick Angle
Comment 2 2022-03-17 17:04:26 PDT
Created attachment 455046 [details] Screenshot of Issue
Patrick Angle
Comment 3 2022-03-17 17:08:19 PDT
Created attachment 455049 [details] Patch v1.0
Patrick Angle
Comment 4 2022-03-17 17:08:44 PDT
Created attachment 455050 [details] Screenshot of Patch v1.0
Devin Rousso
Comment 5 2022-03-17 17:17:39 PDT
Comment on attachment 455049 [details] Patch v1.0 View in context: https://bugs.webkit.org/attachment.cgi?id=455049&action=review r=me, lol oops great catch Any way to test this? > Source/WebCore/page/PageConsoleClient.cpp:414 > + IntRect imageRect(IntPoint::zero(), m_page.mainFrame().view()->unobscuredContentRect().size()); Do we care about the `location()` of the `unobscuredContentRect()`? Should we maybe just use that as the `imageRect` instead of only taking it's `size()` with `IntPoint::zero()` as the `location`?
Patrick Angle
Comment 6 2022-03-17 17:22:27 PDT
Comment on attachment 455049 [details] Patch v1.0 View in context: https://bugs.webkit.org/attachment.cgi?id=455049&action=review >> Source/WebCore/page/PageConsoleClient.cpp:414 >> + IntRect imageRect(IntPoint::zero(), m_page.mainFrame().view()->unobscuredContentRect().size()); > > Do we care about the `location()` of the `unobscuredContentRect()`? Should we maybe just use that as the `imageRect` instead of only taking it's `size()` with `IntPoint::zero()` as the `location`? The implementation of `unobscuredContentRect()` sets the `location()` to the current scroll position, which we don't want... although I guess we could stop passing `SnapshotFlags::InViewCoordinates` into `snapshotFrameRect` below and that would work (I think).
Patrick Angle
Comment 7 2022-03-18 13:11:12 PDT
Created attachment 455128 [details] Patch v1.1
EWS
Comment 8 2022-03-18 20:26:48 PDT
Committed r291519 (248625@main): <https://commits.webkit.org/248625@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 455128 [details].
Note You need to log in before you can comment on or make changes to this bug.