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

Side by Side Diff: Source/core/layout/LayoutBR.h

Issue 1350973003: Invalidate line break selection rects when selected. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Preserve prior LayoutBR selection rect behavior when REF is off. Created 5 years, 3 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) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * 3 *
4 * This library is free software; you can redistribute it and/or 4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public 5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either 6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version. 7 * version 2 of the License, or (at your option) any later version.
8 * 8 *
9 * This library is distributed in the hope that it will be useful, 9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 18 matching lines...) Expand all
29 */ 29 */
30 namespace blink { 30 namespace blink {
31 31
32 class LayoutBR final : public LayoutText { 32 class LayoutBR final : public LayoutText {
33 public: 33 public:
34 explicit LayoutBR(Node*); 34 explicit LayoutBR(Node*);
35 ~LayoutBR() override; 35 ~LayoutBR() override;
36 36
37 const char* name() const override { return "LayoutBR"; } 37 const char* name() const override { return "LayoutBR"; }
38 38
39 LayoutRect selectionRectForPaintInvalidation(const LayoutBoxModelObject* /* paintInvalidationContainer */) const override 39 LayoutRect selectionRectForPaintInvalidation(const LayoutBoxModelObject* /* paintInvalidationContainer */) const override;
40 {
41 // TODO(wkorman): When selected we need to return a rect that includes t he
42 // space highlighted to illustrate a newline.
43 return LayoutRect();
44 }
45 40
46 float width(unsigned /* from */, unsigned /* len */, const Font&, LayoutUnit /* xpos */, TextDirection, HashSet<const SimpleFontData*>* = nullptr /* fallbac kFonts */ , FloatRect* /* glyphBounds */ = nullptr) const override { return 0; } 41 float width(unsigned /* from */, unsigned /* len */, const Font&, LayoutUnit /* xpos */, TextDirection, HashSet<const SimpleFontData*>* = nullptr /* fallbac kFonts */ , FloatRect* /* glyphBounds */ = nullptr) const override { return 0; }
47 float width(unsigned /* from */, unsigned /* len */, LayoutUnit /* xpos */, TextDirection, bool = false /* firstLine */, HashSet<const SimpleFontData*>* = n ullptr /* fallbackFonts */, FloatRect* /* glyphBounds */ = nullptr) const overri de { return 0; } 42 float width(unsigned /* from */, unsigned /* len */, LayoutUnit /* xpos */, TextDirection, bool = false /* firstLine */, HashSet<const SimpleFontData*>* = n ullptr /* fallbackFonts */, FloatRect* /* glyphBounds */ = nullptr) const overri de { return 0; }
48 43
49 int lineHeight(bool firstLine) const; 44 int lineHeight(bool firstLine) const;
50 45
51 bool isOfType(LayoutObjectType type) const override { return type == LayoutO bjectBr || LayoutText::isOfType(type); } 46 bool isOfType(LayoutObjectType type) const override { return type == LayoutO bjectBr || LayoutText::isOfType(type); }
52 47
53 int caretMinOffset() const override; 48 int caretMinOffset() const override;
54 int caretMaxOffset() const override; 49 int caretMaxOffset() const override;
55 50
56 PositionWithAffinity positionForPoint(const LayoutPoint&) final; 51 PositionWithAffinity positionForPoint(const LayoutPoint&) final;
57 52
58 protected: 53 protected:
59 void styleDidChange(StyleDifference, const ComputedStyle* oldStyle) override ; 54 void styleDidChange(StyleDifference, const ComputedStyle* oldStyle) override ;
60 }; 55 };
61 56
62 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutBR, isBR()); 57 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutBR, isBR());
63 58
64 } // namespace blink 59 } // namespace blink
65 60
66 #endif // LayoutBR_h 61 #endif // LayoutBR_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698