Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
F
Front-End
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
abdullh.alsoleman
Front-End
Commits
160a5680
Unverified
Commit
160a5680
authored
Jun 06, 2019
by
Gary Qian
Committed by
GitHub
Jun 06, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Re-add deprecated method for plugin migration compatibility. (#34006)
parent
3f4ce348
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
53 additions
and
2 deletions
+53
-2
inline_span.dart
packages/flutter/lib/src/painting/inline_span.dart
+10
-0
placeholder_span.dart
packages/flutter/lib/src/painting/placeholder_span.dart
+9
-0
text_painter.dart
packages/flutter/lib/src/painting/text_painter.dart
+6
-1
text_span.dart
packages/flutter/lib/src/painting/text_span.dart
+28
-1
No files found.
packages/flutter/lib/src/painting/inline_span.dart
View file @
160a5680
...
...
@@ -8,6 +8,7 @@ import 'package:flutter/foundation.dart';
import
'basic_types.dart'
;
import
'text_painter.dart'
;
import
'text_span.dart'
;
import
'text_style.dart'
;
/// Mutable wrapper of an integer that can be passed by reference to track a
...
...
@@ -103,6 +104,15 @@ abstract class InlineSpan extends DiagnosticableTree {
/// [Paragraph] objects can be drawn on [Canvas] objects.
void
build
(
ui
.
ParagraphBuilder
builder
,
{
double
textScaleFactor
=
1.0
,
List
<
PlaceholderDimensions
>
dimensions
});
// TODO(garyq): Remove this after next stable release.
/// Walks this [TextSpan] and any descendants in pre-order and calls `visitor`
/// for each span that has content.
///
/// When `visitor` returns true, the walk will continue. When `visitor` returns
/// false, then the walk will end.
@Deprecated
(
'Use to visitChildren instead'
)
bool
visitTextSpan
(
bool
visitor
(
TextSpan
span
));
/// Walks this [InlineSpan] and any descendants in pre-order and calls `visitor`
/// for each span that has content.
///
...
...
packages/flutter/lib/src/painting/placeholder_span.dart
View file @
160a5680
...
...
@@ -60,6 +60,15 @@ abstract class PlaceholderSpan extends InlineSpan {
}
}
// TODO(garyq): Remove this after next stable release.
/// The [visitTextSpan] method is invalid on [PlaceholderSpan]s
@override
@Deprecated
(
'Use to visitChildren instead'
)
bool
visitTextSpan
(
bool
visitor
(
TextSpan
span
))
{
assert
(
false
,
'visitTextSpan is deprecated. Use visitChildren to support InlineSpans'
);
return
false
;
}
/// Populates the `semanticsOffsets` and `semanticsElements` with the appropriate data
/// to be able to construct a [SemanticsNode].
///
...
...
packages/flutter/lib/src/painting/text_painter.dart
View file @
160a5680
...
...
@@ -164,8 +164,13 @@ class TextPainter {
/// The (potentially styled) text to paint.
///
/// After this is set, you must call [layout] before the next call to [paint].
///
/// This and [textDirection] must be non-null before you call [layout].
///
/// The [InlineSpan] this provides is in the form of a tree that may contain
/// multiple instances of [TextSpan]s and [WidgetSpan]s. To obtain a plaintext
/// representation of the contents of this [TextPainter], use [InlineSpan.toPlainText]
/// to get the full contents of all nodes in the tree. [TextSpan.text] will
/// only provide the contents of the first node in the tree.
InlineSpan
get
text
=>
_text
;
InlineSpan
_text
;
set
text
(
InlineSpan
value
)
{
...
...
packages/flutter/lib/src/painting/text_span.dart
View file @
160a5680
...
...
@@ -205,8 +205,11 @@ class TextSpan extends InlineSpan {
builder
.
pop
();
}
/// Walks this
text span
and its descendants in pre-order and calls [visitor]
/// Walks this
[TextSpan]
and its descendants in pre-order and calls [visitor]
/// for each span that has text.
///
/// When `visitor` returns true, the walk will continue. When `visitor` returns
/// false, then the walk will end.
@override
bool
visitChildren
(
InlineSpanVisitor
visitor
)
{
if
(
text
!=
null
)
{
...
...
@@ -222,6 +225,30 @@ class TextSpan extends InlineSpan {
return
true
;
}
// TODO(garyq): Remove this after next stable release.
/// Walks this [TextSpan] and any descendants in pre-order and calls `visitor`
/// for each span that has content.
///
/// When `visitor` returns true, the walk will continue. When `visitor` returns
/// false, then the walk will end.
@override
@Deprecated
(
'Use to visitChildren instead'
)
bool
visitTextSpan
(
bool
visitor
(
TextSpan
span
))
{
if
(
text
!=
null
)
{
if
(!
visitor
(
this
))
return
false
;
}
if
(
children
!=
null
)
{
for
(
InlineSpan
child
in
children
)
{
assert
(
child
is
TextSpan
,
'visitTextSpan is deprecated. Use visitChildren to support InlineSpans'
);
final
TextSpan
textSpanChild
=
child
;
if
(!
textSpanChild
.
visitTextSpan
(
visitor
))
return
false
;
}
}
return
true
;
}
/// Returns the text span that contains the given position in the text.
@override
InlineSpan
getSpanForPositionVisitor
(
TextPosition
position
,
Accumulator
offset
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment