Attention is currently required from: Kentaro Hara.
Xianzhu Wang would like Kentaro Hara to review this change.
Replace FloatRect/FloatSize with gfx::RectF/gfx::SizeF/gfx::Vector2dF
FloatRects are replaced with gfx::RectFs. FloatRects with negative
sizes are supposed to have been addressed in previous CLs for the bug.
Most FloatSizes are replaced with gfx::SizeF. Others representing
relative offsets are replaced with gfx::Vector2dF.
The steps to create this CL are similar to crrev.com/c/3252774.
Bug: 738465
Change-Id: I565b8c5a0ec74fc0810fdfdee9e7aed426d8e3f0
---
M third_party/blink/renderer/core/layout/ng/svg/layout_ng_svg_text.h
M third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
M third_party/blink/renderer/core/frame/visual_viewport_test.cc
M third_party/blink/renderer/core/inspector/inspector_layer_tree_agent.cc
M third_party/blink/renderer/core/css/properties/computed_style_utils.cc
M third_party/blink/renderer/core/loader/preload_helper.cc
M third_party/blink/renderer/core/geometry/dom_matrix.cc
M third_party/blink/renderer/core/svg/svg_length_context.cc
M third_party/blink/renderer/core/paint/paint_layer_clipper.cc
M third_party/blink/renderer/core/page/chrome_client_impl.cc
M third_party/blink/renderer/core/style/basic_shapes.cc
M third_party/blink/renderer/platform/graphics/gradient.cc
M third_party/blink/renderer/modules/csspaint/nativepaint/background_color_paint_image_generator_impl.h
M third_party/blink/renderer/core/paint/paint_layer.cc
M third_party/blink/web_tests/flag-specific/highdpi/virtual/scroll-unification/fast/forms/select-popup/popup-menu-appearance-transform-expected.png
M third_party/blink/renderer/core/editing/finder/find_in_page_coordinates.h
M third_party/blink/renderer/core/page/spatial_navigation.h
M third_party/blink/renderer/core/scroll/scrollbar.cc
M third_party/blink/renderer/core/input/touch_event_manager.cc
M third_party/blink/renderer/core/dom/range.cc
M third_party/blink/renderer/platform/transforms/affine_transform.h
M third_party/blink/renderer/core/layout/ng/ng_block_node.cc
M third_party/blink/renderer/modules/autofill_assistant/node_signals.cc
M third_party/blink/renderer/core/layout/ng/inline/ng_fragment_item.h
M third_party/blink/renderer/core/frame/dom_visual_viewport.cc
M third_party/blink/renderer/core/page/viewport_description.cc
D third_party/blink/renderer/platform/geometry/cg/float_rect_cg.cc
M third_party/blink/renderer/core/layout/layout_block_flow.cc
M third_party/blink/renderer/core/layout/layout_box_model_object.h
M third_party/blink/renderer/core/layout/ng/ng_ink_overflow_test.cc
M third_party/blink/renderer/modules/accessibility/ax_object.h
M third_party/blink/renderer/core/frame/browser_controls.cc
D third_party/blink/renderer/platform/geometry/float_rect.cc
M third_party/blink/renderer/platform/geometry/double_size.h
M third_party/blink/renderer/core/html/parser/html_preload_scanner.cc
M third_party/blink/renderer/modules/canvas/canvas2d/canvas_formatted_text.h
M third_party/blink/renderer/core/intersection_observer/intersection_observer_entry.cc
M third_party/blink/renderer/core/editing/finder/text_finder.h
M third_party/blink/renderer/core/events/web_input_event_conversion_test.cc
M third_party/blink/renderer/core/frame/root_frame_viewport.cc
M third_party/blink/renderer/core/layout/layout_inline.h
M third_party/blink/renderer/core/layout/ng/svg/layout_ng_svg_text.cc
M third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer_test.cc
M third_party/blink/renderer/core/page/print_context_test.cc
M third_party/blink/renderer/core/layout/layout_box_model_object.cc
M third_party/blink/renderer/modules/accessibility/ax_node_object.cc
M third_party/blink/renderer/core/geometry/dom_rect_read_only.cc
M third_party/blink/renderer/core/input/touch.h
M third_party/blink/renderer/core/clipboard/data_transfer.cc
M third_party/blink/renderer/modules/xr/xr_ray.cc
M third_party/blink/renderer/core/input/touch_action_test.cc
D third_party/blink/renderer/platform/geometry/float_rect_test.cc
M third_party/blink/renderer/platform/transforms/transformation_matrix.cc
M third_party/blink/renderer/core/editing/finder/text_finder_test.cc
M third_party/blink/renderer/core/layout/layout_object.cc
M third_party/blink/renderer/core/frame/local_frame_view.cc
D third_party/blink/web_tests/platform/linux/virtual/scroll-unification/fast/forms/select-popup/popup-menu-appearance-transform-expected.png
M third_party/blink/renderer/core/layout/layout_text.cc
M third_party/blink/renderer/modules/accessibility/ax_image_map_link.cc
M third_party/blink/renderer/core/layout/shapes/box_shape.cc
M third_party/blink/renderer/core/layout/svg/transformed_hit_test_location.cc
M third_party/blink/renderer/core/frame/page_scale_constraints_set.cc
M third_party/blink/renderer/core/layout/svg/layout_svg_resource_marker.h
M third_party/blink/renderer/core/page/scrolling/root_scroller_controller.cc
M third_party/blink/renderer/platform/graphics/bitmap_image.cc
M third_party/blink/renderer/core/style/shadow_list.cc
M third_party/blink/renderer/core/inspector/inspector_dom_snapshot_agent.cc
M third_party/blink/renderer/core/page/autoscroll_controller.h
M third_party/blink/renderer/core/paint/box_painter_base.cc
M third_party/blink/renderer/platform/geometry/layout_point.h
M third_party/blink/renderer/core/style/shadow_list.h
M third_party/blink/renderer/platform/geometry/layout_size.h
M third_party/blink/renderer/core/layout/layout_text_test.cc
M third_party/blink/renderer/core/exported/web_view_impl.h
M third_party/blink/renderer/core/input/event_handler.h
M third_party/blink/renderer/platform/graphics/path.cc
M third_party/blink/renderer/core/layout/layout_view.cc
M third_party/blink/renderer/modules/csspaint/css_paint_definition.h
M third_party/blink/renderer/modules/exported/web_ax_object.cc
M third_party/blink/renderer/core/animation/element_animations.h
M third_party/blink/renderer/core/layout/layout_object.h
M third_party/blink/renderer/modules/virtualkeyboard/virtual_keyboard.cc
M third_party/blink/renderer/core/layout/svg/layout_svg_filter_primitive.h
M third_party/blink/renderer/modules/accessibility/ax_object.cc
M third_party/blink/renderer/core/page/chrome_client.h
M third_party/blink/renderer/core/paint/document_marker_painter.cc
M third_party/blink/renderer/core/layout/layout_box.h
M third_party/blink/renderer/core/resize_observer/resize_observer_utilities.cc
M third_party/blink/renderer/platform/transforms/affine_transform.cc
M third_party/blink/renderer/core/layout/layout_object_test.cc
M third_party/blink/renderer/core/animation/keyframe_effect_test.cc
D third_party/blink/renderer/platform/geometry/float_size.h
M third_party/blink/renderer/core/input/touch.cc
M third_party/blink/renderer/core/layout/geometry/physical_size.h
M third_party/blink/renderer/core/layout/svg/layout_svg_model_object.cc
M third_party/blink/renderer/modules/accessibility/ax_inline_text_box.h
M third_party/blink/renderer/core/layout/svg/svg_text_metrics.cc
M third_party/blink/renderer/platform/transforms/transformation_matrix_test.cc
M third_party/blink/renderer/core/layout/hit_test_result.cc
M third_party/blink/renderer/core/frame/visual_viewport.cc
M third_party/blink/renderer/core/editing/finder/text_finder.cc
M third_party/blink/renderer/core/paint/paint_layer_painter.cc
M third_party/blink/renderer/platform/geometry/length_functions.cc
M third_party/blink/web_tests/platform/win/fast/forms/select-popup/popup-menu-appearance-transform-expected.png
M third_party/blink/renderer/core/css/background_color_paint_image_generator.h
M third_party/blink/renderer/core/frame/frame_view.cc
M third_party/blink/renderer/core/page/spatial_navigation.cc
M third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge.h
M third_party/blink/renderer/modules/accessibility/ax_node_object.h
M third_party/blink/renderer/platform/graphics/picture_snapshot.cc
M third_party/blink/renderer/core/layout/geometry/transform_state.cc
M third_party/blink/renderer/modules/csspaint/css_paint_image_generator_impl.h
M third_party/blink/renderer/core/layout/svg/svg_text_fragment.h
M third_party/blink/renderer/core/loader/empty_clients.h
M third_party/blink/renderer/core/page/drag_image.cc
M third_party/blink/renderer/core/frame/remote_frame_view.cc
M third_party/blink/renderer/core/inspector/inspector_dom_agent.cc
M third_party/blink/renderer/core/inspector/inspector_overlay_agent.cc
M third_party/blink/renderer/core/animation/keyframe_effect.cc
M third_party/blink/renderer/platform/geometry/layout_rect.cc
M third_party/blink/renderer/core/dom/range.h
M third_party/blink/renderer/platform/graphics/picture_snapshot.h
M third_party/blink/renderer/core/paint/selection_bounds_recorder.cc
M third_party/blink/renderer/core/frame/web_frame_widget_impl.cc
M third_party/blink/renderer/core/paint/compositing/paint_layer_compositor.cc
M third_party/blink/renderer/platform/graphics/paint/cull_rect_test.cc
M third_party/blink/renderer/core/css/properties/computed_style_utils.h
M third_party/blink/renderer/core/page/print_context.cc
M third_party/blink/renderer/core/dom/element.cc
M third_party/blink/renderer/platform/graphics/placeholder_image_test.cc
M third_party/blink/renderer/core/layout/svg/svg_layout_support.cc
M third_party/blink/renderer/core/layout/ng/ng_layout_overflow_calculator.cc
M third_party/blink/renderer/core/paint/paint_property_tree_builder_test.h
M third_party/blink/renderer/core/page/chrome_client_impl.h
M third_party/blink/renderer/core/editing/visible_units.cc
M third_party/blink/renderer/core/events/web_input_event_conversion.cc
M third_party/blink/renderer/core/layout/layout_inline.cc
M third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc
M third_party/blink/renderer/core/page/scrolling/snap_coordinator.cc
M third_party/blink/renderer/core/paint/embedded_object_painter.cc
M third_party/blink/renderer/core/editing/visible_units.h
M third_party/blink/renderer/core/style/computed_style_extra_fields.json5
M third_party/blink/renderer/platform/graphics/bitmap_image_test.cc
M third_party/blink/renderer/core/css/style_engine_test.cc
M third_party/blink/renderer/platform/graphics/graphics_layer.cc
M third_party/blink/renderer/core/layout/layout_table_section.cc
M third_party/blink/renderer/core/animation/element_animations.cc
M third_party/blink/renderer/core/layout/layout_text.h
M third_party/blink/renderer/core/page/scrolling/viewport_scroll_callback.cc
M third_party/blink/renderer/core/paint/paint_property_tree_builder.cc
M third_party/blink/renderer/platform/geometry/layout_size.cc
M third_party/blink/renderer/core/layout/hit_test_result.h
M third_party/blink/renderer/modules/csspaint/nativepaint/box_shadow_paint_image_generator_impl.h
M third_party/blink/renderer/platform/graphics/graphics_layer.h
M third_party/blink/renderer/modules/csspaint/nativepaint/background_color_paint_definition.h
M third_party/blink/renderer/core/input/event_handler.cc
M third_party/blink/renderer/core/svg/svg_transform_distance.cc
M third_party/blink/renderer/core/svg/graphics/svg_image_for_container.h
M third_party/blink/renderer/core/editing/finder/find_in_page_coordinates.cc
M third_party/blink/renderer/core/events/pointer_event_factory.cc
M third_party/blink/renderer/modules/accessibility/ax_image_map_link.h
D third_party/blink/renderer/platform/geometry/cg/float_size_cg.cc
M third_party/blink/renderer/core/layout/hit_test_location.h
M third_party/blink/renderer/core/layout/layout_view.h
M third_party/blink/renderer/platform/geometry/float_quad_test.cc
M third_party/blink/renderer/platform/geometry/double_point.h
M third_party/blink/renderer/modules/accessibility/ax_inline_text_box.cc
M third_party/blink/renderer/core/inspector/inspector_highlight.cc
M third_party/blink/renderer/core/paint/paint_layer_scrollable_area.cc
M third_party/blink/renderer/core/layout/scroll_anchor.cc
M third_party/blink/renderer/platform/graphics/graphics_context.cc
M third_party/blink/renderer/core/paint/svg_shape_painter.cc
M third_party/blink/renderer/core/mobile_metrics/mobile_friendliness_checker.cc
M third_party/blink/renderer/core/animation/animation_test.cc
M third_party/blink/renderer/platform/graphics/paint/cull_rect.cc
M third_party/blink/renderer/platform/graphics/image.cc
M third_party/blink/renderer/modules/accessibility/ax_validation_message.cc
M third_party/blink/renderer/platform/geometry/float_quad.h
M third_party/blink/renderer/core/frame/local_frame_view.h
M third_party/blink/renderer/core/css/box_shadow_paint_image_generator.h
M third_party/blink/renderer/core/scroll/scrollable_area.cc
M third_party/blink/renderer/core/layout/svg/layout_svg_text.cc
M third_party/blink/renderer/core/page/viewport_test.cc
M third_party/blink/renderer/modules/delegated_ink/delegated_ink_trail_presenter.cc
M third_party/blink/renderer/modules/accessibility/ax_validation_message.h
M third_party/blink/renderer/core/dom/document.cc
M third_party/blink/renderer/core/animation/compositor_animations_test.cc
M third_party/blink/renderer/core/html/html_popup_element.cc
M third_party/blink/renderer/core/frame/root_frame_viewport_test.cc
M third_party/blink/renderer/core/geometry/dom_rect.cc
M third_party/blink/renderer/core/resize_observer/resize_observer_utilities.h
M third_party/blink/renderer/core/frame/web_frame_test.cc
M third_party/blink/renderer/core/geometry/dom_rect_read_only.h
M third_party/blink/renderer/core/frame/frame_test_helpers.h
M third_party/blink/renderer/core/layout/adjust_for_absolute_zoom.h
M third_party/blink/renderer/platform/graphics/image.h
M third_party/blink/renderer/core/paint/frame_painter.cc
M third_party/blink/renderer/core/html/html_anchor_element.cc
M third_party/blink/renderer/core/layout/layout_box.cc
D third_party/blink/renderer/platform/geometry/float_size_test.cc
M third_party/blink/renderer/core/layout/visual_rect_mapping_test.cc
M third_party/blink/renderer/platform/geometry/double_rect.h
M third_party/blink/renderer/core/svg/svg_fit_to_view_box.cc
M third_party/blink/renderer/modules/canvas/canvas2d/canvas_path.cc
M third_party/blink/renderer/core/geometry/dom_rect_list.cc
M third_party/blink/renderer/core/layout/shapes/raster_shape.h
M third_party/blink/renderer/core/frame/resize_viewport_anchor.cc
M third_party/blink/renderer/core/page/viewport_description.h
M third_party/blink/renderer/core/exported/web_view_impl.cc
M third_party/blink/renderer/core/paint/text_decoration_info.h
M third_party/blink/renderer/platform/graphics/paint_generated_image.cc
M third_party/blink/renderer/core/frame/visual_viewport.h
M third_party/blink/web_tests/flag-specific/highdpi/fast/forms/select-popup/popup-menu-appearance-transform-expected.png
M third_party/blink/renderer/core/resize_observer/resize_observer_entry.cc
M third_party/blink/renderer/core/geometry/dom_rect.h
M third_party/blink/renderer/core/layout/svg/layout_svg_block.cc
M third_party/blink/renderer/core/inspector/dev_tools_emulator.cc
M third_party/blink/renderer/modules/accessibility/ax_menu_list_option.cc
M third_party/blink/renderer/platform/graphics/filters/fe_box_reflect.cc
M third_party/blink/renderer/platform/graphics/paint/float_clip_rect_test.cc
M third_party/blink/renderer/core/dom/range_test.cc
M third_party/blink/renderer/core/layout/shapes/shape_outside_info.h
D third_party/blink/web_tests/platform/linux/fast/forms/select-popup/popup-menu-appearance-transform-expected.png
M third_party/blink/renderer/core/frame/web_local_frame_impl.h
M third_party/blink/renderer/core/paint/inline_text_box_painter.cc
M third_party/blink/renderer/platform/geometry/layout_rect.h
M third_party/blink/renderer/core/layout/svg/transform_helper.cc
M third_party/blink/renderer/core/layout/svg/layout_svg_model_object.h
M third_party/blink/renderer/platform/transforms/transformation_matrix.h
M content/test/data/accessibility/html/br-expected-blink.txt
M third_party/blink/renderer/platform/geometry/double_rect.cc
M third_party/blink/renderer/platform/BUILD.gn
M third_party/blink/renderer/core/events/simulated_event_util.cc
M third_party/blink/renderer/modules/media_controls/media_controls_display_cutout_delegate_test.cc
M third_party/blink/renderer/core/page/scrolling/overscroll_controller.h
M third_party/blink/renderer/platform/graphics/paint/geometry_mapper.h
M third_party/blink/renderer/core/testing/internals.cc
M third_party/blink/renderer/core/frame/page_scale_constraints.h
M third_party/blink/renderer/core/layout/map_coordinates_test.cc
M third_party/blink/renderer/build/scripts/core/style/make_computed_style_base.py
M third_party/blink/renderer/core/paint/ng/ng_highlight_painter.cc
M third_party/blink/renderer/core/exported/web_view_test.cc
M third_party/blink/renderer/modules/accessibility/ax_menu_list_option.h
M third_party/blink/renderer/platform/geometry/float_quad.cc
M third_party/blink/renderer/core/css/media_query_evaluator.cc
M third_party/blink/renderer/core/layout/shapes/shape.cc
M third_party/blink/renderer/core/layout/layout_flow_thread.cc
M third_party/blink/renderer/core/layout/geometry/physical_rect.h
M third_party/blink/renderer/core/style/style_generated_image.cc
M third_party/blink/renderer/platform/graphics/placeholder_image.cc
M third_party/blink/renderer/core/layout/ng/svg/layout_ng_svg_text_test.cc
M third_party/blink/renderer/core/scroll/mac_scrollbar_animator_impl.h
M third_party/blink/renderer/core/frame/fullscreen_controller.cc
M third_party/blink/renderer/core/page/scrolling/overscroll_controller.cc
M third_party/blink/renderer/platform/graphics/image_data_buffer.h
M third_party/blink/renderer/modules/csspaint/nativepaint/clip_path_paint_image_generator_impl.h
M third_party/blink/renderer/core/dom/document.h
M third_party/blink/renderer/core/layout/hit_test_location.cc
D third_party/blink/renderer/platform/geometry/float_rect.h
M third_party/blink/renderer/core/resize_observer/resize_observation.cc
M third_party/blink/renderer/core/svg/svg_transform.cc
M third_party/blink/renderer/core/animation/keyframe_effect.h
M third_party/blink/renderer/core/svg/graphics/svg_image_test.cc
M third_party/blink/renderer/modules/csspaint/nativepaint/clip_path_paint_definition.cc
M third_party/blink/renderer/core/animation/svg_transform_list_interpolation_type.cc
M third_party/blink/renderer/core/editing/selection_controller.cc
M third_party/blink/renderer/platform/graphics/draw_looper_builder.cc
M third_party/blink/renderer/core/html/lazy_load_frame_observer_test.cc
M third_party/blink/renderer/core/geometry/dom_rect_list.h
M third_party/blink/renderer/core/frame/remote_frame.cc
M third_party/blink/renderer/core/dom/element.h
M third_party/blink/renderer/modules/canvas/canvas2d/canvas_formatted_text.cc
M third_party/blink/renderer/core/layout/layout_embedded_content.cc
M third_party/blink/renderer/core/svg/svg_transform.h
M third_party/blink/renderer/core/display_lock/display_lock_utilities.h
M third_party/blink/renderer/core/layout/svg/layout_svg_inline.cc
M third_party/blink/renderer/core/svg/svg_preserve_aspect_ratio.cc
M third_party/blink/renderer/core/layout/geometry/physical_offset.h
M third_party/blink/renderer/core/layout/ng/ng_physical_fragment.cc
D third_party/blink/renderer/platform/geometry/float_size.cc
M third_party/blink/renderer/core/frame/local_frame.cc
M third_party/blink/renderer/core/intersection_observer/intersection_geometry.cc
M third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc
M third_party/blink/renderer/core/svg/svg_svg_element.cc
284 files changed, 915 insertions(+), 2,282 deletions(-)
To view, visit change 3320781. To unsubscribe, or for help writing mail filters, visit settings.
Attention is currently required from: Kentaro Hara.
3 comments:
Patchset:
The CQ bot failures are because of
File content/test/data/accessibility/html/br-expected-blink.txt:
Patch Set #10, Line 4: ++++++lineBreak name='<newline>'
This is because of the change in LayoutText::LocalBoundingBoxRectForAccessibility() [1] which previously returned FloatRect(0, 0, 0, 0) for <br> but now returns a gfx::RectF with correct location and height (thought still empty). Currently the accessibility tree-dump code outputs "size=(0,0)" for zero sizes but strips other sizes (including empty sizes like (0,18)). I think the new dump is more correct because now the <br> and the inline text box containing the <br> have the same geometry in the accessibility tree.
The root cause of this is the slight difference between FloatRect::Union() and gfx::RectF::Union() when uniting two empty rects, e.g. (0,0 0x0) and (0,0 0x18). FloatRect::Union() returns (0,0 0x0) while gfx::RectF::Union() returns (0,0 0x18).
https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/layout/layout_text.cc;drc=825dafb67567bc870e57f5af02b964c97a7fdf78;l=793
File third_party/blink/web_tests/flag-specific/highdpi/fast/forms/select-popup/popup-menu-appearance-transform-expected.png:
The 1px change is because of the difference between blink::RoundedIntRect(FloatRect) and gfx::ToRoundedRect(gfx::RectF). The blink function rounds location and size of the input rect separately, which may result bigger than 1 pixel error on the right or the bottom side. gfx::ToRoundedRect() is like blink's PixelSnappedRect(LayoutRect) which considers location when rounding size.
Attention is currently required from: Xianzhu Wang.
Patch set 11:Code-Review +1
1 comment:
Patchset:
rs LGTM
Attention is currently required from: Xianzhu Wang.
Patch set 12:Commit-Queue +2
Chromium LUCI CQ submitted this change.
11 is the latest approved patch-set.
The change was submitted with unreviewed changes in the following files:
```
The name of the file: third_party/blink/web_tests/platform/linux/fast/forms/select-popup/popup-menu-appearance-transform-expected.png
Insertions: 0, Deletions: 0.
```
Replace FloatRect/FloatSize with gfx::RectF/gfx::SizeF/gfx::Vector2dF
FloatRects are replaced with gfx::RectFs. FloatRects with negative
sizes are supposed to have been addressed in previous CLs for the bug.
Most FloatSizes are replaced with gfx::SizeF. Others representing
relative offsets are replaced with gfx::Vector2dF.
The steps to create this CL are similar to crrev.com/c/3252774.
Bug: 738465
Change-Id: I565b8c5a0ec74fc0810fdfdee9e7aed426d8e3f0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3320781
Reviewed-by: Kentaro Hara <har...@chromium.org>
Commit-Queue: Xianzhu Wang <wangx...@chromium.org>
Cr-Commit-Position: refs/heads/main@{#951261}
M third_party/blink/web_tests/platform/linux/fast/forms/select-popup/popup-menu-appearance-transform-expected.png
284 files changed, 919 insertions(+), 2,282 deletions(-)