Change the Supplementable class to not use AtomicString.
authormark.lam@apple.com <mark.lam@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 23 Jan 2013 06:49:45 +0000 (06:49 +0000)
committermark.lam@apple.com <mark.lam@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 23 Jan 2013 06:49:45 +0000 (06:49 +0000)
commit4bfbcc104131352e0741f88edc08690f8164fc80
treed008cbc9f0618c9821e3fcb908b60856512e43cf
parente01e806ef7613356b44e7d3d7518285f452eb652
Change the Supplementable class to not use AtomicString.
https://bugs.webkit.org/show_bug.cgi?id=107535.

Reviewed by Adam Barth.

Replaced the use of AtomicString keys with literal const char* keys.
This simplifies the SupplementMap and makes it slightly leaner and faster.

Source/WebCore:

No new tests.

* Modules/battery/BatteryController.cpp:
(WebCore::BatteryController::supplementName):
* Modules/battery/BatteryController.h:
(BatteryController):
* Modules/battery/NavigatorBattery.cpp:
(WebCore::NavigatorBattery::supplementName):
(WebCore):
(WebCore::NavigatorBattery::from):
* Modules/battery/NavigatorBattery.h:
(NavigatorBattery):
* Modules/filesystem/chromium/DraggedIsolatedFileSystem.cpp:
(WebCore::DraggedIsolatedFileSystem::supplementName):
* Modules/filesystem/chromium/DraggedIsolatedFileSystem.h:
(DraggedIsolatedFileSystem):
* Modules/gamepad/NavigatorGamepad.cpp:
(WebCore::NavigatorGamepad::supplementName):
(WebCore):
(WebCore::NavigatorGamepad::from):
* Modules/gamepad/NavigatorGamepad.h:
(NavigatorGamepad):
* Modules/geolocation/GeolocationController.cpp:
(WebCore::GeolocationController::supplementName):
* Modules/geolocation/GeolocationController.h:
(GeolocationController):
* Modules/geolocation/NavigatorGeolocation.cpp:
(WebCore::NavigatorGeolocation::supplementName):
(WebCore):
(WebCore::NavigatorGeolocation::from):
* Modules/geolocation/NavigatorGeolocation.h:
(NavigatorGeolocation):
* Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
(WebCore::DOMWindowIndexedDatabase::supplementName):
(WebCore):
(WebCore::DOMWindowIndexedDatabase::from):
* Modules/indexeddb/DOMWindowIndexedDatabase.h:
(DOMWindowIndexedDatabase):
* Modules/indexeddb/PageGroupIndexedDatabase.cpp:
(WebCore::PageGroupIndexedDatabase::supplementName):
(WebCore):
(WebCore::PageGroupIndexedDatabase::from):
* Modules/indexeddb/PageGroupIndexedDatabase.h:
(PageGroupIndexedDatabase):
* Modules/indexeddb/WorkerContextIndexedDatabase.cpp:
(WebCore::WorkerContextIndexedDatabase::supplementName):
(WebCore):
(WebCore::WorkerContextIndexedDatabase::from):
* Modules/indexeddb/WorkerContextIndexedDatabase.h:
(WorkerContextIndexedDatabase):
* Modules/intents/DOMWindowIntents.cpp:
(WebCore::DOMWindowIntents::supplementName):
(WebCore):
(WebCore::DOMWindowIntents::from):
* Modules/intents/DOMWindowIntents.h:
(DOMWindowIntents):
* Modules/mediastream/UserMediaController.cpp:
(WebCore::UserMediaController::supplementName):
* Modules/mediastream/UserMediaController.h:
(UserMediaController):
* Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
(WebCore::NavigatorContentUtils::supplementName):
* Modules/navigatorcontentutils/NavigatorContentUtils.h:
(NavigatorContentUtils):
* Modules/networkinfo/NavigatorNetworkInfoConnection.cpp:
(WebCore::NavigatorNetworkInfoConnection::supplementName):
(WebCore):
(WebCore::NavigatorNetworkInfoConnection::from):
* Modules/networkinfo/NavigatorNetworkInfoConnection.h:
(NavigatorNetworkInfoConnection):
* Modules/networkinfo/NetworkInfoController.cpp:
(WebCore::NetworkInfoController::supplementName):
* Modules/networkinfo/NetworkInfoController.h:
(NetworkInfoController):
* Modules/notifications/DOMWindowNotifications.cpp:
(WebCore::DOMWindowNotifications::supplementName):
(WebCore):
(WebCore::DOMWindowNotifications::from):
* Modules/notifications/DOMWindowNotifications.h:
(DOMWindowNotifications):
* Modules/notifications/NotificationController.cpp:
(WebCore::NotificationController::supplementName):
* Modules/notifications/NotificationController.h:
(NotificationController):
* Modules/notifications/WorkerContextNotifications.cpp:
(WebCore::WorkerContextNotifications::supplementName):
(WebCore):
(WebCore::WorkerContextNotifications::from):
* Modules/notifications/WorkerContextNotifications.h:
(WorkerContextNotifications):
* Modules/quota/DOMWindowQuota.cpp:
(WebCore::DOMWindowQuota::supplementName):
(WebCore):
(WebCore::DOMWindowQuota::from):
* Modules/quota/DOMWindowQuota.h:
(DOMWindowQuota):
* Modules/speech/DOMWindowSpeechSynthesis.cpp:
(WebCore::DOMWindowSpeechSynthesis::supplementName):
(WebCore):
(WebCore::DOMWindowSpeechSynthesis::from):
* Modules/speech/DOMWindowSpeechSynthesis.h:
(DOMWindowSpeechSynthesis):
* Modules/speech/SpeechRecognitionController.cpp:
(WebCore::SpeechRecognitionController::supplementName):
* Modules/speech/SpeechRecognitionController.h:
(SpeechRecognitionController):
* Modules/vibration/Vibration.cpp:
(WebCore::Vibration::supplementName):
* Modules/vibration/Vibration.h:
(Vibration):
* Modules/webdatabase/DatabaseContext.cpp:
(WebCore::DatabaseContext::supplementName):
(WebCore):
(WebCore::DatabaseContext::existingDatabaseContextFrom):
(WebCore::DatabaseContext::from):
* Modules/webdatabase/DatabaseContext.h:
(DatabaseContext):
* dom/ContextFeatures.cpp:
(WebCore::ContextFeatures::supplementName):
* dom/ContextFeatures.h:
* dom/DeviceMotionController.cpp:
(WebCore::DeviceMotionController::supplementName):
* dom/DeviceMotionController.h:
(DeviceMotionController):
* dom/DeviceOrientationController.cpp:
(WebCore::DeviceOrientationController::supplementName):
* dom/DeviceOrientationController.h:
(DeviceOrientationController):
* loader/PrerendererClient.cpp:
(WebCore::PrerendererClient::supplementName):
* loader/PrerendererClient.h:
(PrerendererClient):
* page/DOMWindowPagePopup.cpp:
(WebCore::DOMWindowPagePopup::supplementName):
* page/DOMWindowPagePopup.h:
(DOMWindowPagePopup):
* page/SpeechInput.cpp:
(WebCore::SpeechInput::supplementName):
* page/SpeechInput.h:
(SpeechInput):
* platform/RefCountedSupplement.h:
(WebCore::RefCountedSupplement::provideTo):
(WebCore::RefCountedSupplement::from):
* platform/Supplementable.h:
(WebCore):
(WebCore::Supplement::provideTo):
(WebCore::Supplement::from):
(WebCore::Supplementable::provideSupplement):
(WebCore::Supplementable::removeSupplement):
(WebCore::Supplementable::requireSupplement):
(Supplementable):
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::supplementName):
(WebCore):
(WebCore::InternalSettings::from):
* testing/InternalSettings.h:
(InternalSettings):

Source/WebKit/chromium:

* src/ContextFeaturesClientImpl.cpp:
(ContextFeaturesCache):
(WebKit::ContextFeaturesCache::supplementName):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@140509 268f45cc-cd09-0410-ab3c-d52691b4dbfc
63 files changed:
Source/WebCore/ChangeLog
Source/WebCore/Modules/battery/BatteryController.cpp
Source/WebCore/Modules/battery/BatteryController.h
Source/WebCore/Modules/battery/NavigatorBattery.cpp
Source/WebCore/Modules/battery/NavigatorBattery.h
Source/WebCore/Modules/filesystem/chromium/DraggedIsolatedFileSystem.cpp
Source/WebCore/Modules/filesystem/chromium/DraggedIsolatedFileSystem.h
Source/WebCore/Modules/gamepad/NavigatorGamepad.cpp
Source/WebCore/Modules/gamepad/NavigatorGamepad.h
Source/WebCore/Modules/geolocation/GeolocationController.cpp
Source/WebCore/Modules/geolocation/GeolocationController.h
Source/WebCore/Modules/geolocation/NavigatorGeolocation.cpp
Source/WebCore/Modules/geolocation/NavigatorGeolocation.h
Source/WebCore/Modules/indexeddb/DOMWindowIndexedDatabase.cpp
Source/WebCore/Modules/indexeddb/DOMWindowIndexedDatabase.h
Source/WebCore/Modules/indexeddb/PageGroupIndexedDatabase.cpp
Source/WebCore/Modules/indexeddb/PageGroupIndexedDatabase.h
Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.cpp
Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.h
Source/WebCore/Modules/intents/DOMWindowIntents.cpp
Source/WebCore/Modules/intents/DOMWindowIntents.h
Source/WebCore/Modules/mediastream/UserMediaController.cpp
Source/WebCore/Modules/mediastream/UserMediaController.h
Source/WebCore/Modules/navigatorcontentutils/NavigatorContentUtils.cpp
Source/WebCore/Modules/navigatorcontentutils/NavigatorContentUtils.h
Source/WebCore/Modules/networkinfo/NavigatorNetworkInfoConnection.cpp
Source/WebCore/Modules/networkinfo/NavigatorNetworkInfoConnection.h
Source/WebCore/Modules/networkinfo/NetworkInfoController.cpp
Source/WebCore/Modules/networkinfo/NetworkInfoController.h
Source/WebCore/Modules/notifications/DOMWindowNotifications.cpp
Source/WebCore/Modules/notifications/DOMWindowNotifications.h
Source/WebCore/Modules/notifications/NotificationController.cpp
Source/WebCore/Modules/notifications/NotificationController.h
Source/WebCore/Modules/notifications/WorkerContextNotifications.cpp
Source/WebCore/Modules/notifications/WorkerContextNotifications.h
Source/WebCore/Modules/quota/DOMWindowQuota.cpp
Source/WebCore/Modules/quota/DOMWindowQuota.h
Source/WebCore/Modules/speech/DOMWindowSpeechSynthesis.cpp
Source/WebCore/Modules/speech/DOMWindowSpeechSynthesis.h
Source/WebCore/Modules/speech/SpeechRecognitionController.cpp
Source/WebCore/Modules/speech/SpeechRecognitionController.h
Source/WebCore/Modules/vibration/Vibration.cpp
Source/WebCore/Modules/vibration/Vibration.h
Source/WebCore/Modules/webdatabase/DatabaseContext.cpp
Source/WebCore/Modules/webdatabase/DatabaseContext.h
Source/WebCore/dom/ContextFeatures.cpp
Source/WebCore/dom/ContextFeatures.h
Source/WebCore/dom/DeviceMotionController.cpp
Source/WebCore/dom/DeviceMotionController.h
Source/WebCore/dom/DeviceOrientationController.cpp
Source/WebCore/dom/DeviceOrientationController.h
Source/WebCore/loader/PrerendererClient.cpp
Source/WebCore/loader/PrerendererClient.h
Source/WebCore/page/DOMWindowPagePopup.cpp
Source/WebCore/page/DOMWindowPagePopup.h
Source/WebCore/page/SpeechInput.cpp
Source/WebCore/page/SpeechInput.h
Source/WebCore/platform/RefCountedSupplement.h
Source/WebCore/platform/Supplementable.h
Source/WebCore/testing/InternalSettings.cpp
Source/WebCore/testing/InternalSettings.h
Source/WebKit/chromium/ChangeLog
Source/WebKit/chromium/src/ContextFeaturesClientImpl.cpp