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
a29e2ebb
Commit
a29e2ebb
authored
Aug 27, 2015
by
Adam Barth
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #882 from abarth/image_logging
Add logging to help diagnose image loading failures
parents
07d96a23
d6e949fb
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
22 additions
and
10 deletions
+22
-10
image_resource.dart
packages/flutter/lib/base/image_resource.dart
+18
-7
basic.dart
packages/flutter/lib/widgets/basic.dart
+4
-3
No files found.
packages/flutter/lib/base/image_resource.dart
View file @
a29e2ebb
...
@@ -9,11 +9,7 @@ typedef void ImageListener(sky.Image image);
...
@@ -9,11 +9,7 @@ typedef void ImageListener(sky.Image image);
class
ImageResource
{
class
ImageResource
{
ImageResource
(
this
.
_futureImage
)
{
ImageResource
(
this
.
_futureImage
)
{
_futureImage
.
then
((
sky
.
Image
image
)
{
_futureImage
.
then
(
_handleImageLoaded
,
onError:
_handleImageError
);
_image
=
image
;
_resolved
=
true
;
_notifyListeners
();
});
}
}
bool
_resolved
=
false
;
bool
_resolved
=
false
;
...
@@ -33,10 +29,25 @@ class ImageResource {
...
@@ -33,10 +29,25 @@ class ImageResource {
_listeners
.
remove
(
listener
);
_listeners
.
remove
(
listener
);
}
}
void
_handleImageLoaded
(
sky
.
Image
image
)
{
_image
=
image
;
_resolved
=
true
;
_notifyListeners
();
}
void
_handleImageError
(
e
,
stackTrace
)
{
print
(
'Failed to load image:
$e
\n
Stack trace:
$stackTrace
'
);
}
void
_notifyListeners
()
{
void
_notifyListeners
()
{
assert
(
_resolved
);
assert
(
_resolved
);
List
<
ImageListener
>
localListeners
=
new
List
<
ImageListener
>.
from
(
_listeners
);
List
<
ImageListener
>
localListeners
=
new
List
<
ImageListener
>.
from
(
_listeners
);
for
(
ImageListener
listener
in
localListeners
)
for
(
ImageListener
listener
in
localListeners
)
{
listener
(
_image
);
try
{
listener
(
_image
);
}
catch
(
e
)
{
print
(
'Image listener had exception:
$e
'
);
}
}
}
}
}
}
packages/flutter/lib/widgets/basic.dart
View file @
a29e2ebb
...
@@ -633,7 +633,9 @@ class ImageListener extends StatefulComponent {
...
@@ -633,7 +633,9 @@ class ImageListener extends StatefulComponent {
this
.
colorFilter
,
this
.
colorFilter
,
this
.
fit
:
ImageFit
.
scaleDown
,
this
.
fit
:
ImageFit
.
scaleDown
,
this
.
repeat
:
ImageRepeat
.
noRepeat
this
.
repeat
:
ImageRepeat
.
noRepeat
})
:
super
(
key:
key
);
})
:
super
(
key:
key
)
{
assert
(
image
!=
null
);
}
ImageResource
image
;
ImageResource
image
;
double
width
;
double
width
;
...
@@ -645,8 +647,7 @@ class ImageListener extends StatefulComponent {
...
@@ -645,8 +647,7 @@ class ImageListener extends StatefulComponent {
sky
.
Image
_resolvedImage
;
sky
.
Image
_resolvedImage
;
void
_handleImageChanged
(
sky
.
Image
resolvedImage
)
{
void
_handleImageChanged
(
sky
.
Image
resolvedImage
)
{
if
(!
mounted
)
assert
(
mounted
);
return
;
setState
(()
{
setState
(()
{
_resolvedImage
=
resolvedImage
;
_resolvedImage
=
resolvedImage
;
});
});
...
...
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