Changeset 97232 in webkit
- Timestamp:
- Oct 11, 2011 10:35:44 PM (13 years ago)
- Location:
- trunk/Source
- Files:
-
- 1 added
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r97229 r97232 1 2011-10-11 Antoine Labour <piman@chromium.org> 2 3 Separate compositor client thread from webkit's main thread. 4 https://bugs.webkit.org/show_bug.cgi?id=69048 5 6 Reviewed by Darin Fisher. 7 8 Covered by compositing tests. 9 10 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp: 11 (WebCore::CCLayerTreeHost::CCLayerTreeHost): 12 * platform/graphics/chromium/cc/CCMainThread.cpp: 13 * platform/graphics/chromium/cc/CCMainThread.h: 14 * platform/graphics/chromium/cc/CCProxy.cpp: 15 (WebCore::CCProxy::isMainThread): 16 (WebCore::CCProxy::setMainThread): 17 (WebCore::CCProxy::CCProxy): 18 * platform/graphics/chromium/cc/CCProxy.h: 19 1 20 2011-10-11 Simon Fraser <simon.fraser@apple.com> 2 21 -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.cpp
r96766 r97232 34 34 #include "cc/CCLayerTreeHostCommon.h" 35 35 #include "cc/CCLayerTreeHostImpl.h" 36 #include "cc/CCMainThread.h" 36 37 #include "cc/CCSingleThreadProxy.h" 37 38 #include "cc/CCThread.h" … … 57 58 , m_visible(true) 58 59 { 60 CCMainThread::initialize(); 59 61 ASSERT(CCProxy::isMainThread()); 60 62 } -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCMainThread.cpp
r95901 r97232 39 39 } 40 40 41 void CCMainThread::postTask(PassOwnPtr<Task> task)42 {43 callOnMainThread(performTask, task.leakPtr());44 41 } 45 46 } -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCMainThread.h
r95901 r97232 44 44 }; 45 45 46 static void initialize(); 46 47 static void postTask(PassOwnPtr<Task>); // Executes the task on main thread asynchronously. 47 48 private: -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCProxy.cpp
r96066 r97232 42 42 bool fakeImplThread = false; 43 43 static WTF::ThreadIdentifier implThreadID; 44 static WTF::ThreadIdentifier mainThreadID; 44 45 } 45 46 46 47 bool CCProxy::isMainThread() 47 48 { 48 return ::isMainThread() && !fakeImplThread;49 return !fakeImplThread && currentThread() == mainThreadID; 49 50 } 50 51 … … 64 65 } 65 66 67 void CCProxy::setMainThread(WTF::ThreadIdentifier id) 68 { 69 mainThreadID = id; 70 } 71 66 72 #endif // !NDEBUG 67 73 74 CCProxy::CCProxy() 75 { 76 ASSERT(isMainThread()); 68 77 } 78 79 } -
trunk/Source/WebCore/platform/graphics/chromium/cc/CCProxy.h
r96736 r97232 87 87 static void setImplThread(bool); 88 88 static void setImplThread(WTF::ThreadIdentifier); 89 static void setMainThread(WTF::ThreadIdentifier); 89 90 #endif 90 91 91 92 protected: 92 CCProxy() { }93 CCProxy(); 93 94 friend class DebugScopedSetImplThread; 94 95 }; -
trunk/Source/WebKit/chromium/ChangeLog
r97227 r97232 1 2011-10-11 Antoine Labour <piman@chromium.org> 2 3 Separate compositor client thread from webkit's main thread. 4 https://bugs.webkit.org/show_bug.cgi?id=69048 5 6 Reviewed by Darin Fisher. 7 8 * WebKit.gyp: 9 * public/WebKitPlatformSupport.h: 10 (WebKit::WebKitPlatformSupport::currentThread): 11 * src/CCMainThreadImpl.cpp: Added. 12 (WTF::TaskWrapper::TaskWrapper): 13 (WTF::TaskWrapper::~TaskWrapper): 14 (WTF::TaskWrapper::run): 15 (WebCore::CCMainThread::initialize): 16 (WebCore::CCMainThread::postTask): 17 1 18 2011-10-11 Simon Fraser <simon.fraser@apple.com> 2 19 -
trunk/Source/WebKit/chromium/WebKit.gyp
r97068 r97232 339 339 'src/BoundObject.cpp', 340 340 'src/BoundObject.h', 341 'src/CCMainThreadImpl.cpp', 341 342 'src/CCThreadImpl.cpp', 342 343 'src/CCThreadImpl.h', -
trunk/Source/WebKit/chromium/public/WebKitPlatformSupport.h
r95901 r97232 187 187 virtual WebThread* createThread(const char* name) { return 0; } 188 188 189 // Returns an interface to the current thread. This is owned by the 190 // embedder. 191 virtual WebThread* currentThread() { return 0; } 192 189 193 190 194 // Message Ports -------------------------------------------------------
Note: See TracChangeset
for help on using the changeset viewer.