[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
darin
darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 06:20:57 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit c1cee061745a3d6688d834ff3ee4875923739cc6
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Jun 22 00:24:09 2002 +0000
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer nextFrame:]): Add back the higher-speed case where
we draw directly for opaque animated images.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@1417 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 117d13c..a279662 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,5 +1,11 @@
2002-06-21 Darin Adler <darin at apple.com>
+ * WebCoreSupport.subproj/IFImageRenderer.m:
+ (-[IFImageRenderer nextFrame:]): Add back the higher-speed case where
+ we draw directly for opaque animated images.
+
+2002-06-21 Darin Adler <darin at apple.com>
+
Cache the patterns we make for tiled images for added speed.
* WebCoreSupport.subproj/IFImageRenderer.h: Removed declarations of
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 117d13c..a279662 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,5 +1,11 @@
2002-06-21 Darin Adler <darin at apple.com>
+ * WebCoreSupport.subproj/IFImageRenderer.m:
+ (-[IFImageRenderer nextFrame:]): Add back the higher-speed case where
+ we draw directly for opaque animated images.
+
+2002-06-21 Darin Adler <darin at apple.com>
+
Cache the patterns we make for tiled images for added speed.
* WebCoreSupport.subproj/IFImageRenderer.h: Removed declarations of
diff --git a/WebKit/WebCoreSupport.subproj/IFImageRenderer.m b/WebKit/WebCoreSupport.subproj/IFImageRenderer.m
index 562c194..772501c 100644
--- a/WebKit/WebCoreSupport.subproj/IFImageRenderer.m
+++ b/WebKit/WebCoreSupport.subproj/IFImageRenderer.m
@@ -134,6 +134,7 @@ static NSMutableArray *activeImageRenderers;
- (void)nextFrame:(id)context
{
int currentFrame;
+ NSWindow *window;
// Release the timer that just fired.
[frameTimer release];
@@ -145,25 +146,28 @@ static NSMutableArray *activeImageRenderers;
}
[self setCurrentFrame:currentFrame];
- [frameView displayRect:targetRect];
- [[frameView window] flushWindow];
-
-#if 0 // The following would be more efficient than using displayRect if we knew the image was opaque.
- if ([frameView canDraw]) {
- [frameView lockFocus];
- [self drawInRect:targetRect
- fromRect:imageRect
- operation:NSCompositeSourceOver // Renders transparency correctly
- fraction:1.0];
- [frameView unlockFocus];
+ window = [frameView window];
+
+ if ([[[self representations] objectAtIndex:0] isOpaque]) {
+ if ([frameView canDraw]) {
+ [frameView lockFocus];
+ [self drawInRect:targetRect
+ fromRect:imageRect
+ operation:NSCompositeSourceOver // Renders transparency correctly
+ fraction:1.0];
+ [frameView unlockFocus];
+ }
+
+ frameTimer = [[NSTimer scheduledTimerWithTimeInterval:[self frameDuration]
+ target:self
+ selector:@selector(nextFrame:)
+ userInfo:nil
+ repeats:NO] retain];
+ } else {
+ [frameView displayRect:targetRect];
}
-
- frameTimer = [[NSTimer scheduledTimerWithTimeInterval:[self frameDuration]
- target:self
- selector:@selector(nextFrame:)
- userInfo:nil
- repeats:NO] retain];
-#endif
+
+ [window flushWindow];
}
- (void)beginAnimationInRect: (NSRect)ir fromRect: (NSRect)fr
diff --git a/WebKit/WebCoreSupport.subproj/WebImageRenderer.m b/WebKit/WebCoreSupport.subproj/WebImageRenderer.m
index 562c194..772501c 100644
--- a/WebKit/WebCoreSupport.subproj/WebImageRenderer.m
+++ b/WebKit/WebCoreSupport.subproj/WebImageRenderer.m
@@ -134,6 +134,7 @@ static NSMutableArray *activeImageRenderers;
- (void)nextFrame:(id)context
{
int currentFrame;
+ NSWindow *window;
// Release the timer that just fired.
[frameTimer release];
@@ -145,25 +146,28 @@ static NSMutableArray *activeImageRenderers;
}
[self setCurrentFrame:currentFrame];
- [frameView displayRect:targetRect];
- [[frameView window] flushWindow];
-
-#if 0 // The following would be more efficient than using displayRect if we knew the image was opaque.
- if ([frameView canDraw]) {
- [frameView lockFocus];
- [self drawInRect:targetRect
- fromRect:imageRect
- operation:NSCompositeSourceOver // Renders transparency correctly
- fraction:1.0];
- [frameView unlockFocus];
+ window = [frameView window];
+
+ if ([[[self representations] objectAtIndex:0] isOpaque]) {
+ if ([frameView canDraw]) {
+ [frameView lockFocus];
+ [self drawInRect:targetRect
+ fromRect:imageRect
+ operation:NSCompositeSourceOver // Renders transparency correctly
+ fraction:1.0];
+ [frameView unlockFocus];
+ }
+
+ frameTimer = [[NSTimer scheduledTimerWithTimeInterval:[self frameDuration]
+ target:self
+ selector:@selector(nextFrame:)
+ userInfo:nil
+ repeats:NO] retain];
+ } else {
+ [frameView displayRect:targetRect];
}
-
- frameTimer = [[NSTimer scheduledTimerWithTimeInterval:[self frameDuration]
- target:self
- selector:@selector(nextFrame:)
- userInfo:nil
- repeats:NO] retain];
-#endif
+
+ [window flushWindow];
}
- (void)beginAnimationInRect: (NSRect)ir fromRect: (NSRect)fr
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list