Changeset 24940 in webkit
- Timestamp:
- Aug 8, 2007 2:51:54 PM (17 years ago)
- Location:
- S60/branches/3.1m/WebKit
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
S60/branches/3.1m/WebKit/ChangeLog
r24939 r24940 1 2007-08-06 vmalaiya, <vikram.malaiya@nokia.com> 2 Reviewed by Sachin 3 DESC: VMAA-75EP3L - Browser plugin does not implement memory collection on an out-of-memory condition 4 http://bugs.webkit.org/show_bug.cgi?id=14753 5 6 * Plugin/inc/PluginSkin.h: 7 (CPluginSkin::Frame): 8 * Plugin/src/PluginSkin.cpp: 9 (COOMPluginCollector::COOMPluginCollector): 10 (COOMPluginCollector::~COOMPluginCollector): 11 (COOMPluginCollector::Collect): 12 (COOMPluginCollector::Restore): 13 (COOMPluginCollector::Priority): 14 (COOMPluginCollector::IsCollecting): 15 (CPluginSkin::ConstructL): 16 (CPluginSkin::~CPluginSkin): 17 (CPluginSkin::RemovePluginWin): 18 1 19 2007-08-08 yadavall <sriram.yadavalli@nokia.com> 2 20 -
S60/branches/3.1m/WebKit/Plugin/inc/PluginSkin.h
r21537 r24940 58 58 class CPluginLoader; 59 59 class CWebKitControl; 60 class COOMPluginCollector; 60 61 61 62 /** … … 70 71 public MWebCoreObjectWidget, 71 72 public MPluginInstance 72 73 73 74 { 74 75 public: // Constructors and destructor … … 178 179 * @return The WebKitControl object 179 180 */ 180 CWebKitFrame* Frame() const { return iWebKitFrame; } 181 CWebKitFrame* Frame() const { return iWebKitFrame; } 181 182 182 183 /** … … 196 197 void Resized() { iResized = ETrue; } 197 198 198 199 /** 200 * RemovePluginWin 201 * Remove plugin window on the skin 202 * @since 3.2 203 * @return 204 */ 205 void RemovePluginWin(); 206 199 207 public: // Methods From MWebCoreObjectWidget 200 208 … … 378 386 * @return 379 387 */ 380 void *PluginScriptableObject(); 388 void *PluginScriptableObject(); 389 381 390 public: // Functions from MViewFocusObserver 382 391 … … 451 460 HBufC* iUrl; 452 461 453 // ETrue if plugin has resized 454 TBool iResized; 455 456 //ETrue if plugin can be activated to interact with user. Only if plugin is generated from external js 457 TBool iCanPluginInteract; 458 462 // ETrue if plugin has resized 463 TBool iResized; 464 465 //ETrue if plugin can be activated to interact with user. Only if plugin is generated from external js 466 TBool iCanPluginInteract; 467 468 COOMPluginCollector* iOOMCollector; 459 469 }; 460 470 #endif // __PLUGINSKIN_H__ -
S60/branches/3.1m/WebKit/Plugin/src/PluginSkin.cpp
r21537 r24940 54 54 #include "WebUiCRKeys.h" 55 55 #else 56 #include <BrowserUi InternalCRKeys.h>56 #include <BrowserUiSDKCRKeys.h> 57 57 #endif 58 58 … … 66 66 #include "WebKitFrame.h" 67 67 #include "CannedImages.h" 68 #include "BrCtl.h"69 68 #include "WebKitView.h" 70 69 #include "WebKitControl.h" 71 70 #include "WebCoreGraphicsContext.h" 72 71 #include "WidgetExtension.h" 72 #include "MemoryManager.h" 73 73 74 74 // CONSTANTS … … 93 93 94 94 //DATATYPES 95 96 class COOMPluginCollector : public MMemoryCollector, public CBase 97 { 98 public: 99 COOMPluginCollector(CPluginSkin* aPlugin) : iPlugin( aPlugin ) { MemoryManager::AddCollector( this ); } 100 ~COOMPluginCollector() { MemoryManager::RemoveCollector( this );} 101 TUint Collect(TUint /*aRequired*/) { iPlugin->RemovePluginWin(); iIsCollecting = ETrue; return 0; } 102 void Restore() { iIsCollecting = EFalse; } 103 TOOMPriority Priority() { return EOOM_PriorityLow; } 104 TBool IsCollecting() { return iIsCollecting; } 105 private: 106 CPluginSkin* iPlugin; 107 TBool iIsCollecting; 108 }; 95 109 96 110 // ---------------------------------------------------------------------------- … … 141 155 TBool aHasFallbackContent) 142 156 { 157 iOOMCollector = new (ELeave) COOMPluginCollector( this ); 143 158 // Get the canned object images 144 159 CCannedImages& cannedImages = CStaticObjectContainer::Instance().CannedImagesL(); … … 286 301 delete iPluginLoader; 287 302 delete iUrl; 303 delete iOOMCollector; 288 304 } 289 305 … … 696 712 } 697 713 714 // ----------------------------------------------------------------------------- 715 // CPluginSkin::RemovePluginWin 716 // Remove plugin window 717 // ----------------------------------------------------------------------------- 718 // 719 void CPluginSkin::RemovePluginWin() 720 { 721 delete iPluginWin; 722 iPluginWin = NULL; 723 }
Note: See TracChangeset
for help on using the changeset viewer.