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

Side by Side Diff: Source/core/svg/SVGElement.h

Issue 166163005: [SVG2] Add tabindex handling in svg. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: review fs+chris Created 6 years, 9 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) 2004, 2005, 2006, 2008 Nikolas Zimmermann <zimmermann@kde.org> 2 * Copyright (C) 2004, 2005, 2006, 2008 Nikolas Zimmermann <zimmermann@kde.org>
3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org> 3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org>
4 * Copyright (C) 2009 Apple Inc. All rights reserved. 4 * Copyright (C) 2009 Apple Inc. All rights reserved.
5 * 5 *
6 * This library is free software; you can redistribute it and/or 6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public 7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either 8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version. 9 * version 2 of the License, or (at your option) any later version.
10 * 10 *
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 class SVGElementRareData; 44 class SVGElementRareData;
45 class SVGFitToViewBox; 45 class SVGFitToViewBox;
46 class SVGSVGElement; 46 class SVGSVGElement;
47 47
48 void mapAttributeToCSSProperty(HashMap<StringImpl*, CSSPropertyID>* propertyName ToIdMap, const QualifiedName& attrName); 48 void mapAttributeToCSSProperty(HashMap<StringImpl*, CSSPropertyID>* propertyName ToIdMap, const QualifiedName& attrName);
49 49
50 class SVGElement : public Element { 50 class SVGElement : public Element {
51 public: 51 public:
52 virtual ~SVGElement(); 52 virtual ~SVGElement();
53 53
54 virtual bool supportsFocus() const OVERRIDE;
55 virtual short tabIndex() const OVERRIDE;
56 void setTabIndex(int);
57
54 bool isOutermostSVGSVGElement() const; 58 bool isOutermostSVGSVGElement() const;
55 59
56 virtual String title() const OVERRIDE; 60 virtual String title() const OVERRIDE;
57 bool hasRelativeLengths() const { return !m_elementsWithRelativeLengths.isEm pty(); } 61 bool hasRelativeLengths() const { return !m_elementsWithRelativeLengths.isEm pty(); }
58 virtual bool supportsMarkers() const { return false; } 62 virtual bool supportsMarkers() const { return false; }
59 PassRefPtrWillBeRawPtr<CSSValue> getPresentationAttribute(const AtomicString & name); 63 PassRefPtrWillBeRawPtr<CSSValue> getPresentationAttribute(const AtomicString & name);
60 static bool isAnimatableCSSProperty(const QualifiedName&); 64 static bool isAnimatableCSSProperty(const QualifiedName&);
61 enum CTMScope { 65 enum CTMScope {
62 NearestViewportScope, // Used by SVGGraphicsElement::getCTM() 66 NearestViewportScope, // Used by SVGGraphicsElement::getCTM()
63 ScreenScope, // Used by SVGGraphicsElement::getScreenCTM() 67 ScreenScope, // Used by SVGGraphicsElement::getScreenCTM()
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
185 private: 189 private:
186 friend class SVGElementInstance; 190 friend class SVGElementInstance;
187 191
188 // FIXME: Author shadows should be allowed 192 // FIXME: Author shadows should be allowed
189 // https://bugs.webkit.org/show_bug.cgi?id=77938 193 // https://bugs.webkit.org/show_bug.cgi?id=77938
190 virtual bool areAuthorShadowsAllowed() const OVERRIDE FINAL { return false; } 194 virtual bool areAuthorShadowsAllowed() const OVERRIDE FINAL { return false; }
191 195
192 RenderStyle* computedStyle(PseudoId = NOPSEUDO); 196 RenderStyle* computedStyle(PseudoId = NOPSEUDO);
193 virtual RenderStyle* virtualComputedStyle(PseudoId pseudoElementSpecifier = NOPSEUDO) OVERRIDE FINAL { return computedStyle(pseudoElementSpecifier); } 197 virtual RenderStyle* virtualComputedStyle(PseudoId pseudoElementSpecifier = NOPSEUDO) OVERRIDE FINAL { return computedStyle(pseudoElementSpecifier); }
194 virtual void willRecalcStyle(StyleRecalcChange) OVERRIDE; 198 virtual void willRecalcStyle(StyleRecalcChange) OVERRIDE;
195 virtual bool isKeyboardFocusable() const OVERRIDE;
196 199
197 void buildPendingResourcesIfNeeded(); 200 void buildPendingResourcesIfNeeded();
198 201
199 void mapInstanceToElement(SVGElementInstance*); 202 void mapInstanceToElement(SVGElementInstance*);
200 void removeInstanceMapping(SVGElementInstance*); 203 void removeInstanceMapping(SVGElementInstance*);
201 204
205 bool supportsSpatialNavigationFocus() const;
206
202 void cleanupAnimatedProperties(); 207 void cleanupAnimatedProperties();
203 friend class CleanUpAnimatedPropertiesCaller; 208 friend class CleanUpAnimatedPropertiesCaller;
204 209
205 HashSet<SVGElement*> m_elementsWithRelativeLengths; 210 HashSet<SVGElement*> m_elementsWithRelativeLengths;
206 211
207 typedef HashMap<QualifiedName, RefPtr<NewSVGAnimatedPropertyBase> > Attribut eToPropertyMap; 212 typedef HashMap<QualifiedName, RefPtr<NewSVGAnimatedPropertyBase> > Attribut eToPropertyMap;
208 AttributeToPropertyMap m_newAttributeToPropertyMap; 213 AttributeToPropertyMap m_newAttributeToPropertyMap;
209 214
210 #if !ASSERT_DISABLED 215 #if !ASSERT_DISABLED
211 bool m_inRelativeLengthClientsInvalidation; 216 bool m_inRelativeLengthClientsInvalidation;
(...skipping 14 matching lines...) Expand all
226 return DefaultHash<QualifiedName>::Hash::hash(key); 231 return DefaultHash<QualifiedName>::Hash::hash(key);
227 } 232 }
228 static bool equal(const QualifiedName& a, const QualifiedName& b) { return a .matches(b); } 233 static bool equal(const QualifiedName& a, const QualifiedName& b) { return a .matches(b); }
229 }; 234 };
230 235
231 DEFINE_ELEMENT_TYPE_CASTS(SVGElement, isSVGElement()); 236 DEFINE_ELEMENT_TYPE_CASTS(SVGElement, isSVGElement());
232 237
233 } 238 }
234 239
235 #endif 240 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698