Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(53)

Side by Side Diff: third_party/WebKit/public/web/WebAXObject.h

Issue 2956053005: Keep track of fixed positioning in accessibility tree.
Patch Set: GetSimpleRelativeBounds, add failing test for fixed with transform Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/WebKit/Source/modules/exported/WebAXObject.cpp ('k') | ui/accessibility/ax_node.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2009 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after
337 // Every object's bounding box is returned relative to a 337 // Every object's bounding box is returned relative to a
338 // container object (which is guaranteed to be an ancestor) and 338 // container object (which is guaranteed to be an ancestor) and
339 // optionally a transformation matrix that needs to be applied too. 339 // optionally a transformation matrix that needs to be applied too.
340 // To compute the absolute bounding box of an element, start with its 340 // To compute the absolute bounding box of an element, start with its
341 // boundsInContainer and apply the transform. Then as long as its container is 341 // boundsInContainer and apply the transform. Then as long as its container is
342 // not null, walk up to its container and offset by the container's offset 342 // not null, walk up to its container and offset by the container's offset
343 // from origin, the container's scroll position if any, and apply the 343 // from origin, the container's scroll position if any, and apply the
344 // container's transform. Do this until you reach the root of the tree. 344 // container's transform. Do this until you reach the root of the tree.
345 BLINK_EXPORT void GetRelativeBounds(WebAXObject& offset_container, 345 BLINK_EXPORT void GetRelativeBounds(WebAXObject& offset_container,
346 WebFloatRect& bounds_in_container, 346 WebFloatRect& bounds_in_container,
347 SkMatrix44& container_transform) const; 347 SkMatrix44& container_transform,
348 bool& is_fixed_positioned) const;
348 349
349 // Make this object visible by scrolling as many nested scrollable views as 350 // Make this object visible by scrolling as many nested scrollable views as
350 // needed. 351 // needed.
351 BLINK_EXPORT void ScrollToMakeVisible() const; 352 BLINK_EXPORT void ScrollToMakeVisible() const;
352 // Same, but if the whole object can't be made visible, try for this subrect, 353 // Same, but if the whole object can't be made visible, try for this subrect,
353 // in local coordinates. 354 // in local coordinates.
354 BLINK_EXPORT void ScrollToMakeVisibleWithSubFocus(const WebRect&) const; 355 BLINK_EXPORT void ScrollToMakeVisibleWithSubFocus(const WebRect&) const;
355 // Scroll this object to a given point in global coordinates of the top-level 356 // Scroll this object to a given point in global coordinates of the top-level
356 // window. 357 // window.
357 BLINK_EXPORT void ScrollToGlobalPoint(const WebPoint&) const; 358 BLINK_EXPORT void ScrollToGlobalPoint(const WebPoint&) const;
358 359
359 #if BLINK_IMPLEMENTATION 360 #if BLINK_IMPLEMENTATION
360 BLINK_EXPORT WebAXObject(AXObject*); 361 BLINK_EXPORT WebAXObject(AXObject*);
361 WebAXObject& operator=(AXObject*); 362 WebAXObject& operator=(AXObject*);
362 operator AXObject*() const; 363 operator AXObject*() const;
363 #endif 364 #endif
364 365
365 private: 366 private:
366 WebPrivatePtr<AXObject> private_; 367 WebPrivatePtr<AXObject> private_;
367 }; 368 };
368 369
369 } // namespace blink 370 } // namespace blink
370 371
371 #endif 372 #endif
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/modules/exported/WebAXObject.cpp ('k') | ui/accessibility/ax_node.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698