Changeset 28902 in webkit
- Timestamp:
- Dec 20, 2007 1:06:54 PM (16 years ago)
- Location:
- trunk/WebKit/mac
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebKit/mac/ChangeLog
r28884 r28902 1 2007-12-20 Kevin Decker <kdecker@apple.com> 2 3 Reviewed by Anders. 4 5 Fixed: <rdar://problem/5638288> REGRESSION: Flash movies show up in other tabs above the page (16373) 6 7 * Plugins/WebBaseNetscapePluginView.mm: 8 (-[WebBaseNetscapePluginView updateAndSetWindow]): QuickDraw plug-ins must manually be told when to stop 9 writing to the window backing store. The problem was that change-set 28400 introduced an early return 10 which prevented this necessary operation. The fix is to limit the scope of the early return to CG and GL 11 plug-ins and to tweak the needsFocus check to prevent an exception from occurring in QuickDraw-based plug-ins. 12 1 13 2007-12-19 Geoffrey Garen <ggaren@apple.com> 2 14 -
trunk/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
r28400 r28902 1195 1195 // A plug-in can only update if it's (1) already been started (2) isn't stopped 1196 1196 // and (3) is able to draw on-screen. To meet condition (3) the plug-in must not 1197 // be hidden and be attached to a window. 1198 if (!isStarted || ![self canDraw]) 1197 // be hidden and be attached to a window. QuickDraw plug-ins are an important 1198 // excpetion to rule (3) because they manually must be told when to stop writing 1199 // bits to the window backing store, thus to do so requires a new call to 1200 // NPP_SetWindow() with an empty NPWindow struct. 1201 if (!isStarted) 1199 1202 return; 1200 1201 BOOL needsFocus = [NSView focusView] != self; 1203 if ((drawingModel == NPDrawingModelCoreGraphics || drawingModel == NPDrawingModelOpenGL) && ![self canDraw]) 1204 return; 1205 1206 BOOL needsFocus = [self window] && ([NSView focusView] != self); 1202 1207 if (needsFocus) 1203 [self lockFocus]; 1208 [self lockFocus]; 1209 1204 1210 PortState portState = [self saveAndSetNewPortState]; 1205 1211 if (portState) { … … 1207 1213 [self restorePortState:portState]; 1208 1214 free(portState); 1209 } 1215 } 1210 1216 if (needsFocus) 1211 1217 [self unlockFocus];
Note: See TracChangeset
for help on using the changeset viewer.