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

Side by Side Diff: Source/modules/accessibility/AXScrollbar.h

Issue 1175533004: Refactor: Clear m_axObjectCache when AXObject detaches (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Added ASSERT Created 5 years, 6 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2010 Apple 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 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. 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 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 20 matching lines...) Expand all
31 31
32 #include "modules/accessibility/AXMockObject.h" 32 #include "modules/accessibility/AXMockObject.h"
33 33
34 namespace blink { 34 namespace blink {
35 35
36 class AXObjectCacheImpl; 36 class AXObjectCacheImpl;
37 class Scrollbar; 37 class Scrollbar;
38 38
39 class AXScrollbar final : public AXMockObject { 39 class AXScrollbar final : public AXMockObject {
40 public: 40 public:
41 static PassRefPtr<AXScrollbar> create(Scrollbar*, AXObjectCacheImpl*); 41 static PassRefPtr<AXScrollbar> create(Scrollbar*, AXObjectCacheImpl&);
42 42
43 Scrollbar* scrollbar() const { return m_scrollbar.get(); } 43 Scrollbar* scrollbar() const { return m_scrollbar.get(); }
44 44
45 private: 45 private:
46 AXScrollbar(Scrollbar*, AXObjectCacheImpl*); 46 AXScrollbar(Scrollbar*, AXObjectCacheImpl&);
47 47
48 virtual void detachFromParent() override; 48 virtual void detachFromParent() override;
49 49
50 virtual bool canSetValueAttribute() const override { return true; } 50 virtual bool canSetValueAttribute() const override { return true; }
51 51
52 virtual bool isAXScrollbar() const override { return true; } 52 virtual bool isAXScrollbar() const override { return true; }
53 virtual LayoutRect elementRect() const override; 53 virtual LayoutRect elementRect() const override;
54 54
55 virtual AccessibilityRole roleValue() const override { return ScrollBarRole; } 55 virtual AccessibilityRole roleValue() const override { return ScrollBarRole; }
56 virtual AccessibilityOrientation orientation() const override; 56 virtual AccessibilityOrientation orientation() const override;
57 virtual Document* document() const override; 57 virtual Document* document() const override;
58 58
59 virtual bool isEnabled() const override; 59 virtual bool isEnabled() const override;
60 60
61 // Assumes float [0..1] 61 // Assumes float [0..1]
62 virtual void setValue(float) override; 62 virtual void setValue(float) override;
63 virtual float valueForRange() const override; 63 virtual float valueForRange() const override;
64 64
65 // FIXME: Oilpan: turn this into a Member once the AXObject 65 // FIXME: Oilpan: turn this into a Member once the AXObject
66 // hierarchy is on the heap. 66 // hierarchy is on the heap.
67 RefPtrWillBePersistent<Scrollbar> m_scrollbar; 67 RefPtrWillBePersistent<Scrollbar> m_scrollbar;
68 }; 68 };
69 69
70 DEFINE_AX_OBJECT_TYPE_CASTS(AXScrollbar, isAXScrollbar()); 70 DEFINE_AX_OBJECT_TYPE_CASTS(AXScrollbar, isAXScrollbar());
71 71
72 } // namespace blink 72 } // namespace blink
73 73
74 #endif // AXScrollbar_h 74 #endif // AXScrollbar_h
OLDNEW
« no previous file with comments | « Source/modules/accessibility/AXScrollView.cpp ('k') | Source/modules/accessibility/AXScrollbar.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698