Make window metrics doubles to reduce rounding issues.

This commit is contained in:
Andrew Wilson 2018-06-18 09:43:30 -07:00
parent 8d4d455f45
commit 15b76dd33c
2 changed files with 21 additions and 21 deletions

View File

@ -10,17 +10,17 @@
namespace blink {
struct ViewportMetrics {
float device_pixel_ratio = 1.0;
int32_t physical_width = 0;
int32_t physical_height = 0;
int32_t physical_padding_top = 0;
int32_t physical_padding_right = 0;
int32_t physical_padding_bottom = 0;
int32_t physical_padding_left = 0;
int32_t physical_view_inset_top = 0;
int32_t physical_view_inset_right = 0;
int32_t physical_view_inset_bottom = 0;
int32_t physical_view_inset_left = 0;
double device_pixel_ratio = 1.0;
double physical_width = 0;
double physical_height = 0;
double physical_padding_top = 0;
double physical_padding_right = 0;
double physical_padding_bottom = 0;
double physical_padding_left = 0;
double physical_view_inset_top = 0;
double physical_view_inset_right = 0;
double physical_view_inset_bottom = 0;
double physical_view_inset_left = 0;
};
struct LogicalSize {

View File

@ -149,16 +149,16 @@ void Window::UpdateWindowMetrics(const ViewportMetrics& metrics) {
library_.value(), "_updateWindowMetrics",
{
ToDart(metrics.device_pixel_ratio),
ToDart(static_cast<double>(metrics.physical_width)),
ToDart(static_cast<double>(metrics.physical_height)),
ToDart(static_cast<double>(metrics.physical_padding_top)),
ToDart(static_cast<double>(metrics.physical_padding_right)),
ToDart(static_cast<double>(metrics.physical_padding_bottom)),
ToDart(static_cast<double>(metrics.physical_padding_left)),
ToDart(static_cast<double>(metrics.physical_view_inset_top)),
ToDart(static_cast<double>(metrics.physical_view_inset_right)),
ToDart(static_cast<double>(metrics.physical_view_inset_bottom)),
ToDart(static_cast<double>(metrics.physical_view_inset_left)),
ToDart(metrics.physical_width),
ToDart(metrics.physical_height),
ToDart(metrics.physical_padding_top),
ToDart(metrics.physical_padding_right),
ToDart(metrics.physical_padding_bottom),
ToDart(metrics.physical_padding_left),
ToDart(metrics.physical_view_inset_top),
ToDart(metrics.physical_view_inset_right),
ToDart(metrics.physical_view_inset_bottom),
ToDart(metrics.physical_view_inset_left),
});
}