1. 06 Mar, 2008 1 commit
  2. 23 Feb, 2008 2 commits
  3. 04 Feb, 2008 1 commit
  4. 01 Feb, 2008 1 commit
    • darin@apple.com's avatar
      WebCore: · 381f8145
      darin@apple.com authored
              Reviewed by Geoff and Brady.
      
              - fix <rdar://problem/5680469> Each database worker thread takes a JSLock,
                which slows down all JavaScript execution until the thread terminates
      
              * bindings/js/JSCustomSQLTransactionCallback.cpp:
              (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
              Explicitly gcProtect, since we aren't using ProtectedPtr any more.
              (WebCore::unprotectOnMainThread): Added.
              (WebCore::JSCustomSQLTransactionCallback::~JSCustomSQLTransactionCallback):
              Use unprotectOnMainThread rather than doing a gcUnprotect here.
              * bindings/js/JSCustomSQLTransactionCallback.h: Changed m_callback from
              a ProtectedPtr to a plain old JSObject*; we gcProtect by hand now.
      
              * loader/icon/IconDatabase.cpp:
              (WebCore::IconDatabase::notifyPendingLoadDecisionsOnMainThread):
              Renamed. Changed to takea a void* with the icon database pointer.
              (WebCore::IconDatabase::notifyPendingLoadDecisions): Renamed.
              (WebCore::IconDatabase::performURLImport): Updated name, and pass the
              icon database pointer in.
              * loader/icon/IconDatabase.h: Renamed and added void* parameter.
      
              * platform/Threading.h: Changed callOnMainThread to take a function with a
              single parameter rather than a function with no parameters. Added a typedef.
      
              * platform/gtk/ThreadingGtk.cpp:
              (WebCore::callFunctionOnMainThread): Changed to use a structure with both
              a function pointer and a context pointer, and delete it after calling.
              (WebCore::callOnMainThread): Changed to create the structure with both
              the function and context pointer.
      
              * platform/mac/Threading.mm:
              (-[WebCoreFunctionWrapper initWithFunction:context:]): Added context.
              (-[WebCoreFunctionWrapper invoke]): Updated to do both function and context.
              Renamed from _call.
              (WebCore::callOnMainThread): Updated to take both function and context.
      
              * platform/qt/ThreadingQt.cpp:
              (WebCore::PerformFunctionEvent::PerformFunctionEvent): Added context.
              (WebCore::PerformFunctionEvent::invoke): Added. Calls function with context pointer.
              (WebCore::MainThreadInvoker::event): Changed to call invoke.
              (WebCore::callOnMainThread): Updated to take both function and context.
      
              * platform/win/ThreadingWin.cpp: Added FunctionWithContext.
              (WebCore::callFunctionsOnMainThread): Changed to pass call function with context.
              (WebCore::callOnMainThread): Updated to queue both function and context.
      
              * platform/wx/ThreadingWx.cpp:
              (WebCore::callOnMainThread): Updated to take both function and context.
      
              * storage/Database.cpp:
              (WebCore::Database::scheduleTransactionCallback): Pass 0 for context.
              (WebCore::Database::deliverAllPendingCallbacks): Changed to take ignored context pointer.
              * storage/Database.h: Added void* parameter to deliverAllPendingCallbacks.
      
              * storage/DatabaseTracker.cpp:
              (WebCore::DatabaseTracker::scheduleForNotification): Pass 0 for context.
              (WebCore::DatabaseTracker::notifyDatabasesChanged): Changed to take ignored context pointer.
              * storage/DatabaseTracker.h: Added void* parameter to notifyDatabasesChanged.
      
      WebKit/win:
      
              - fix <rdar://problem/5680469> Each database worker thread takes a JSLock,
                which slows down all JavaScript execution until the thread terminates
      
              * WebIconDatabase.cpp:
              (WebIconDatabase::scheduleNotificationDelivery): Updated for new callOnMainThread.
              (WebIconDatabase::deliverNotifications): Ditto.
              * WebIconDatabase.h: Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@29922 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      381f8145
  5. 12 Dec, 2007 1 commit
  6. 11 Nov, 2007 1 commit
  7. 22 Oct, 2007 1 commit
    • bdash's avatar
      2007-10-21 Mark Rowe <mrowe@apple.com> · a45b878a
      bdash authored
              Reviewed by Alp.
      
              http://bugs.webkit.org/show_bug.cgi?id=15575
              Bug 15575: [GTK] Implement threading using GThread
      
              * wtf/Platform.h: Do not enable pthreads for Gtk.
      
      2007-10-21  Mark Rowe  <mrowe@apple.com>
      
              Reviewed by Alp.
      
              http://bugs.webkit.org/show_bug.cgi?id=15575
              Bug 15575: [GTK] Implement threading using GThread
      
              * WebCore.pro: Remove ThreadingPthreads.cpp from the Gtk build and link against libgthreads.
              * loader/icon/IconDatabase.cpp: Initialize threading before the mutex is created to be compatible with gthreads.
              (WebCore::iconDatabase):
              (WebCore::IconDatabase::open):
              * platform/Threading.h:
              * platform/gtk/ThreadingGtk.cpp: Threading implementation in terms of GThread, based heavily on the pthreads implementation.
              (WebCore::initializeThreading):
              (WebCore::threadMapMutex):
              (WebCore::threadMap):
              (WebCore::establishIdentifierForThread):
              (WebCore::threadForIdentifier):
              (WebCore::clearThreadForIdentifier):
              (WebCore::createThread):
              (WebCore::waitForThreadCompletion):
              (WebCore::detachThread):
              (WebCore::Mutex::Mutex):
              (WebCore::Mutex::~Mutex):
              (WebCore::Mutex::lock):
              (WebCore::Mutex::tryLock):
              (WebCore::Mutex::unlock):
              (WebCore::ThreadCondition::ThreadCondition):
              (WebCore::ThreadCondition::~ThreadCondition):
              (WebCore::ThreadCondition::wait):
              (WebCore::ThreadCondition::signal):
              (WebCore::ThreadCondition::broadcast):
              * storage/Database.cpp:
              (WebCore::Database::Database): Initialize threading when Database is used so that it will be initialized even
              if the icon database is compiled out
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@26864 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a45b878a
  8. 20 Oct, 2007 1 commit
    • bdash's avatar
      2007-10-20 Mark Rowe <mrowe@apple.com> · 9b544719
      bdash authored
              Reviewed by Alp.
      
              Implement callOnMainThread for Gtk+ via a one-shot zero-delay timer that will be dispatched
              from the main event loop.
      
              * WebCore.pro:
              * platform/gtk/TemporaryLinkStubs.cpp:
              * platform/gtk/ThreadingGtk.cpp: Added.
              (WebCore::callFunctionOnMainThread):
              (WebCore::callOnMainThread):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@26823 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9b544719
  9. 19 Oct, 2007 1 commit
    • beidson's avatar
      JavaScriptCore: · e5def340
      beidson authored
      2007-10-19  Brady Eidson  <beidson@apple.com>
      
              Reviewed by Sam
      
              Queue -> Deque! and small style tweaks
      
              * JavaScriptCore.vcproj/WTF/WTF.vcproj:
              * JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
              * wtf/Deque.h: Added.
              (WTF::DequeNode::DequeNode):
              (WTF::Deque::Deque):
              (WTF::Deque::~Deque):
              (WTF::Deque::size):
              (WTF::Deque::isEmpty):
              (WTF::Deque::append):
              (WTF::Deque::prepend):
              (WTF::Deque::first):
              (WTF::Deque::last):
              (WTF::Deque::removeFirst):
              (WTF::Deque::clear):
              * wtf/Queue.h: Removed.
      
      2007-10-19  Brady Eidson <beidson@apple.com>
      
              Reviewed by Oliver
      
              Added a simple LinkedList based Queue to wtf
              We can make a better, more sophisticated an efficient one later, but have
              needed one for some time, now!
      
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * wtf/Queue.h: Added.
              (WTF::QueueNode::QueueNode):
              (WTF::Queue::Queue):
              (WTF::Queue::~Queue):
              (WTF::Queue::size):
              (WTF::Queue::isEmpty):
              (WTF::Queue::append):
              (WTF::Queue::prepend):
              (WTF::Queue::first):
              (WTF::Queue::last):
              (WTF::Queue::removeFirst):
              (WTF::Queue::clear):
      
      WebCore:
      2007-10-19  Brady Eidson  <beidson@apple.com>
              Reviewed by Anders
      
              Windows specific changes, as well as renaming Queue -> Deque
      
              * ForwardingHeaders/wtf/Deque.h: Added.
              * ForwardingHeaders/wtf/Queue.h: Removed.
              * platform/win/FileSystemWin.cpp:
              (WebCore::fileSize):
              (WebCore::fileExists):
              (WebCore::deleteFile):
              (WebCore::pathByAppendingComponent):
              (WebCore::fileSystemRepresentation):
              (WebCore::makeAllDirectories):
              (WebCore::homeDirectoryPath):
              * storage/Database.h:
              * storage/DatabaseThread.cpp:
              (WebCore::DatabaseThread::documentGoingAway):
              (WebCore::DatabaseThread::databaseGoingAway):
              (WebCore::DatabaseThread::dispatchNextTaskIdentifier):
              (WebCore::DatabaseThread::scheduleTask):
              (WebCore::DatabaseThread::scheduleImmediateTask):
              * storage/DatabaseThread.h:
      
      2007-10-19  Brady Eidson <beidson@apple.com>
      
              Reviewed by Tim and Anders
      
              Preliminary support for HTML5 local database storage (http://www.whatwg.org/specs/web-apps/current-work/)
      
              The specification is still in flux but the fundamentals are pretty solid and we can start using and testing
              this implementation even while filing bugs to track changes in the spec as it becomes more final
      
              There are some implementation details in this patch that seem unused or useless, but they remain in place
              while the spec is in flux and might go one way or another.
      
              * platform/Logging.cpp: Add StorageAPI logging channel
              * platform/Logging.h:
      
              * storage/Database.cpp: Added.
              (WebCore::Database::databaseInfoTableName):
              (WebCore::databaseVersionKey):
              (WebCore::Database::openDatabase): C++ version of the window.openDatabase() javascript API
              (WebCore::Database::Database):
              (WebCore::Database::~Database):
              (WebCore::Database::openAndVerifyVersion):
              (WebCore::retrieveTextResultFromDatabase):
              (WebCore::Database::getVersionFromDatabase):
              (WebCore::setTextValueInDatabase):
              (WebCore::Database::setVersionInDatabase):
              (WebCore::Database::databaseThreadGoingAway): May be removed in the future
              (WebCore::Database::disableAuthorizer): For internal (WebInspector) use to get around the authorizer's restrictions
              (WebCore::Database::enableAuthorizer):
              (WebCore::Database::guidForOriginAndName): Candidate for refactoring and/or moving to the database tracker.
                The GUID for each database identifier is currently for tracking the database version, but might be rescoped in the future
              (WebCore::Database::resetAuthorizer):
              (WebCore::Database::performPolicyChecks): Currently, the only post-executeSql policy check planned is the origin size usage
              (WebCore::Database::scheduleDatabaseCallback):
              (WebCore::Database::performOpenAndVerify):
              (WebCore::Database::performChangeVersion):
              (WebCore::Database::performExecuteSql):
              (WebCore::Database::performCloseTransaction):
              (WebCore::Database::performGetTableNames):
              (WebCore::Database::version): C++ version of the javascript API
              (WebCore::Database::changeVersion): Ditto
              (WebCore::Database::executeSql): Ditto
              (WebCore::Database::closeTransaction): Ditto
              (WebCore::Database::tableNames): For internal (WebInspector) use
              (WebCore::Database::deliverAllPendingCallbacks):
              (WebCore::Database::deliverPendingCallbacks):
              * storage/Database.h: Added.
              (WebCore::Database::databaseDebugName): For debug logging purposes
              * storage/Database.idl: Added.
      
              * storage/DatabaseAuthorizer.cpp: Added.
                The DatabaseAuthorizer is used to both prevent the script from doing "illegal" things in sql as well as
                tracking when effects certain sql statements might have (such as increasing the size of the database)
              (WebCore::DatabaseAuthorizer::DatabaseAuthorizer):
              (WebCore::DatabaseAuthorizer::reset):
              (WebCore::DatabaseAuthorizer::createTable):
              (WebCore::DatabaseAuthorizer::createTempTable):
              (WebCore::DatabaseAuthorizer::dropTable):
              (WebCore::DatabaseAuthorizer::dropTempTable):
              (WebCore::DatabaseAuthorizer::allowAlterTable):
              (WebCore::DatabaseAuthorizer::createIndex):
              (WebCore::DatabaseAuthorizer::createTempIndex):
              (WebCore::DatabaseAuthorizer::dropIndex):
              (WebCore::DatabaseAuthorizer::dropTempIndex):
              (WebCore::DatabaseAuthorizer::createTrigger):
              (WebCore::DatabaseAuthorizer::createTempTrigger):
              (WebCore::DatabaseAuthorizer::dropTrigger):
              (WebCore::DatabaseAuthorizer::dropTempTrigger):
              (WebCore::DatabaseAuthorizer::createVTable):
              (WebCore::DatabaseAuthorizer::dropVTable):
              (WebCore::DatabaseAuthorizer::allowDelete):
              (WebCore::DatabaseAuthorizer::allowInsert):
              (WebCore::DatabaseAuthorizer::allowUpdate):
              (WebCore::DatabaseAuthorizer::allowRead):
              (WebCore::DatabaseAuthorizer::allowAnalyze):
              (WebCore::DatabaseAuthorizer::allowPragma):
              (WebCore::DatabaseAuthorizer::allowAttach):
              (WebCore::DatabaseAuthorizer::allowDetach):
              (WebCore::DatabaseAuthorizer::allowFunction):
              (WebCore::DatabaseAuthorizer::disable):
              (WebCore::DatabaseAuthorizer::enable):
              (WebCore::DatabaseAuthorizer::denyBasedOnTableName): Don't allow access to the __WebKit meta info table as
                it should be invisible to scripts
              * storage/DatabaseAuthorizer.h: Added.
              (WebCore::DatabaseAuthorizer::lastActionWasInsert):
              (WebCore::DatabaseAuthorizer::lastActionIncreasedSize):
      
              * storage/DatabaseCallback.cpp: Added.
                Generic item to queue up for callbacks on the main thread for database activities that take place on
                a secondary thread
              (WebCore::DatabaseChangeVersionCallback::DatabaseChangeVersionCallback):
              (WebCore::DatabaseChangeVersionCallback::performCallback):
              (WebCore::DatabaseExecuteSqlCallback::DatabaseExecuteSqlCallback):
              (WebCore::DatabaseExecuteSqlCallback::performCallback):
              * storage/DatabaseCallback.h: Added.
              (WebCore::DatabaseCallback::~DatabaseCallback):
              (WebCore::DatabaseChangeVersionCallback::~DatabaseChangeVersionCallback):
              (WebCore::DatabaseExecuteSqlCallback::~DatabaseExecuteSqlCallback):
      
              * storage/DatabaseTask.h: Added.
                Generic work-item to be queued up on the background database thread
              (WebCore::DatabaseTask::isComplete):
              (WebCore::DatabaseOpenTask::exceptionCode):
              (WebCore::DatabaseOpenTask::openSuccessful):
              (WebCore::DatabaseTableNamesTask::tableNames):
              * storage/DatabaseTask.cpp: Added.
              (WebCore::DatabaseTask::DatabaseTask):
              (WebCore::DatabaseTask::~DatabaseTask):
              (WebCore::DatabaseTask::performTask):
              (WebCore::DatabaseTask::lockForSynchronousScheduling): Used when the main thread needs this task accomplished
                synchronously
              (WebCore::DatabaseTask::waitForSynchronousCompletion):
      
              (WebCore::DatabaseOpenTask::DatabaseOpenTask):
              (WebCore::DatabaseOpenTask::doPerformTask):
      
              (WebCore::DatabaseExecuteSqlTask::DatabaseExecuteSqlTask):
              (WebCore::DatabaseExecuteSqlTask::doPerformTask):
      
              (WebCore::DatabaseChangeVersionTask::DatabaseChangeVersionTask):
              (WebCore::DatabaseChangeVersionTask::doPerformTask):
      
              (WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask):
              (WebCore::DatabaseTableNamesTask::doPerformTask):
      
              * storage/DatabaseThread.cpp: Added.
                The current design is that each Document will have its own DatabaseThread.  This makes scripts on each
                individual document more response at the cost of adding more threads and potentially creating concurrency
                issues when the same database is open twice from two different documents
              (WebCore::DatabaseThread::DatabaseThread):
              (WebCore::DatabaseThread::~DatabaseThread):
              (WebCore::DatabaseThread::start):
              (WebCore::DatabaseThread::documentGoingAway): Called to shut the thread down when the document is destroyed
              (WebCore::DatabaseThread::databaseGoingAway): Remove all pending tasks for this database
              (WebCore::DatabaseThread::databaseThreadStart):
              (WebCore::DatabaseThread::databaseThread):
              (WebCore::DatabaseThread::dispatchNextTaskIdentifier):
              (WebCore::DatabaseThread::scheduleTask):
              (WebCore::DatabaseThread::scheduleImmediateTask): Schedule a task that gets to "cut to the front of the line" when
                the main thread requires a task be performed synchronously
              (WebCore::DatabaseThread::wakeWorkThread):
              * storage/DatabaseThread.h: Added.
      
              * storage/DatabaseTracker.cpp: Added.
                The DatabaseTracker is the master management of all databases.  It will keep track of the filename for a given
                unique database, keep track of the total disk usage per-origin, and policys per database/origin
              (WebCore::DatabaseTracker::setDatabasePath):
              (WebCore::DatabaseTracker::databasePath):
              (WebCore::DatabaseTracker::tracker):
              (WebCore::DatabaseTracker::DatabaseTracker):
              (WebCore::DatabaseTracker::fullPathForDatabase):
              (WebCore::DatabaseTracker::populateOrigins):
              (WebCore::DatabaseTracker::origins):
              (WebCore::DatabaseTracker::databaseNamesForOrigin):
              (WebCore::DatabaseTracker::addDatabase):
              (WebCore::DatabaseTracker::deleteAllDatabases):
              (WebCore::DatabaseTracker::deleteAllDatabasesForOrigin):
              * storage/DatabaseTracker.h: Added.
      
              * storage/SQLCallback.h: Added. C++ version of the javascript executeSql() callback
              (WebCore::SQLCallback::~SQLCallback):
              * storage/SQLCallback.idl: Added.
      
              * storage/SQLResultSet.cpp: Added. C++ version of the javascript SQLResultSet object
              (WebCore::SQLResultSet::SQLResultSet):
              (WebCore::SQLResultSet::insertId):
              (WebCore::SQLResultSet::rowsAffected):
              (WebCore::SQLResultSet::errorCode):
              (WebCore::SQLResultSet::error):
              (WebCore::SQLResultSet::rows):
              (WebCore::SQLResultSet::setInsertId):
              (WebCore::SQLResultSet::setRowsAffected):
              (WebCore::SQLResultSet::setErrorCode):
              (WebCore::SQLResultSet::setErrorMessage):
              * storage/SQLResultSet.h: Added.
              * storage/SQLResultSet.idl: Added.
      
              * storage/SQLResultSetRowList.cpp: Added. C++ version of the javascript SQLResultSetRowList object
              (WebCore::SQLResultSetRowList::length):
              * storage/SQLResultSetRowList.h: Added.
              (WebCore::SQLResultSetRowList::columnNames):
              (WebCore::SQLResultSetRowList::values):
              (WebCore::SQLResultSetRowList::addColumn):
              (WebCore::SQLResultSetRowList::addResult):
              * storage/SQLResultSetRowList.idl: Added.
      
              * storage/VersionChangeCallback.h: Added. C++ version of the javascript changeVersion() callback
              (WebCore::VersionChangeCallback::~VersionChangeCallback):
              * storage/VersionChangeCallback.idl: Added.
      
      2007-10-19  Brady Eidson <beidson@apple.com>
      
              Reviewed by Oliver + Same
      
              Forwarding header for the new wtf/Queue.h
      
              * ForwardingHeaders/wtf/Queue.h: Added.
      
      2007-10-19  Anders Carlsson <beidson@apple.com>
      
             	Reviewed by Sam Weinig
      
             	Most of the Javascript binding support for the Storage API
      
             	* bindings/js/JSCustomSQLCallback.cpp: Added.
             	(WebCore::JSCustomSQLCallback::JSCustomSQLCallback):
             	(WebCore::JSCustomSQLCallback::handleEvent):
             	* bindings/js/JSCustomSQLCallback.h: Added.
      		Add JSCustomSQLCallback which is an SQLCallback implementation that dispatches
      		handleEvent to a JS function or a JS object with a handleEvent function.
      
             	* bindings/js/JSCustomVersionChangeCallback.cpp: Added.
             	(WebCore::JSCustomVersionChangeCallback::JSCustomVersionChangeCallback):
             	(WebCore::JSCustomVersionChangeCallback::handleEvent):
             	* bindings/js/JSCustomVersionChangeCallback.h: Added.
      		Add JSCustomSQLCallback which is an SQLCallback implementation that dispatches
      		handleEvent to a JS function or a JS object with a handleEvent function.
      
             	* bindings/js/JSDatabaseCustom.cpp: Added.
             	(WebCore::JSDatabase::executeSql):
      		Custom implementation of executeSql that takes an array of parameters.
      
             	(WebCore::JSDatabase::changeVersion):
      		Custom implementation of changeVersion.
      
             	* bindings/js/JSSQLResultSetRowListCustom.cpp: Added.
             	(WebCore::JSSQLResultSetRowList::item):
      		Custom method that returns a JS object that corresponds to a given row in the database.
      
             	* bindings/scripts/CodeGeneratorJS.pm:
      
             	* page/DOMWindow.cpp:
             	(WebCore::DOMWindow::openDatabase):
             	* page/DOMWindow.h:
             	* page/DOMWindow.idl:
      		Add openDatabase implementation.
      
      2007-10-19  Brady Eidson <beidson@apple.com>
      
              Reviewed by Oliver
      
              Added tons of utility to the FileSystem abstractions, including moving
              some stuff over from IconDatabase
      
              * platform/FileSystem.h:
      
              * platform/cf/FileSystemCF.cpp: Added.
              (WebCore::fileSystemRepresentation):
      
              * platform/mac/FileSystemMac.mm:
      
              * platform/posix/FileSystemPOSIX.cpp: Added.
              (WebCore::fileExists):
              (WebCore::deleteFile):
              (WebCore::fileSize):
              (WebCore::pathByAppendingComponent):
              (WebCore::makeAllDirectories):
      
      2007-10-19  Timothy Hatcher  <timothy@apple.com>
      
              Reviewed by Adam Roben
      
              Preliminary Web Inspector support for the Storage API
              (This patch does not include the support artwork)
      
              * page/InspectorController.cpp:
              (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
              (WebCore::InspectorDatabaseResource::setScriptObject):
              (WebCore::databaseTableNames): Return the table names for a Database object.
              (WebCore::InspectorController::setWindowVisible):
              (WebCore::InspectorController::windowScriptObjectAvailable):
              (WebCore::InspectorController::populateScriptResources):
              (WebCore::InspectorController::addDatabaseScriptResource): Add the script object for the database.
              (WebCore::InspectorController::removeDatabaseScriptResource): Remove the script object for the database.
              (WebCore::InspectorController::clearDatabaseScriptResources): Remove all the database resources.
              (WebCore::InspectorController::didCommitLoad): Call clearDatabaseScriptResources().
              (WebCore::InspectorController::didOpenDatabase): Make a new InspectorDatabaseResource and add it to m_databaseResources.
              * page/InspectorController.h:
              * page/inspector/Database.js: Added.
              * page/inspector/DatabasePanel.js: Added.
              * page/inspector/ResourceCategory.js: Make resource categories assume less about the resource.
              * page/inspector/inspector.css: Add styles for the database panel.
              * page/inspector/inspector.html: Include DatabasePanel.js
              * page/inspector/inspector.js: Support for adding and removing Database resources.
      
      2007-10-19  Brady Eidson <beidson@apple.com>
      
              Reviewed by Tim Hatcher
      
              Added support for Chrome prompts required by the Storage API
      
              * page/Chrome.cpp:
              (WebCore::Chrome::runDatabaseSizeLimitPrompt):
              * page/Chrome.h:
              * page/ChromeClient.h:
              * platform/graphics/svg/SVGImageEmptyClients.h:
      
      2007-10-19  Brady Eidson <beidson@apple.com>
      
              Contributions and Review by Anders
      
              Various SQLite tweaks in preparation for the storage API
      
              * loader/icon/SQLDatabase.cpp:
              (WebCore::SQLDatabase::~SQLDatabase):
              (WebCore::SQLDatabase::authorizerFunction): Static callback from sqlite for authorizer functions
              (WebCore::SQLDatabase::setAuthorizer):
              (WebCore::SQLDatabase::lock):
              (WebCore::SQLDatabase::unlock):
              * loader/icon/SQLDatabase.h:
      
              * loader/icon/SQLStatement.cpp:
              (WebCore::SQLStatement::prepare): Switch to prepare16_v2
              (WebCore::SQLStatement::bindDouble): Added
              (WebCore::SQLStatement::bindValue): Bind a wrapped SQLValue object (described later)
              (WebCore::SQLStatement::bindParameterCount): Accessor to the sqlite3 API for validating statements
              * loader/icon/SQLStatement.h:
              (WebCore::SQLStatement::isPrepared):
      
              * platform/sql/SQLAuthorizer.cpp: Added.  Fully virtual interface to implement your own SQLite authorizer
              * platform/sql/SQLAuthorizer.h: Added.
              (WebCore::SQLAuthorizer::~SQLAuthorizer):
              (WebCore::SQLAuthorizer::createTable):
              (WebCore::SQLAuthorizer::createTempTable):
              (WebCore::SQLAuthorizer::dropTable):
              (WebCore::SQLAuthorizer::dropTempTable):
              (WebCore::SQLAuthorizer::allowAlterTable):
              (WebCore::SQLAuthorizer::createIndex):
              (WebCore::SQLAuthorizer::createTempIndex):
              (WebCore::SQLAuthorizer::dropIndex):
              (WebCore::SQLAuthorizer::dropTempIndex):
              (WebCore::SQLAuthorizer::createTrigger):
              (WebCore::SQLAuthorizer::createTempTrigger):
              (WebCore::SQLAuthorizer::dropTrigger):
              (WebCore::SQLAuthorizer::dropTempTrigger):
              (WebCore::SQLAuthorizer::createView):
              (WebCore::SQLAuthorizer::createTempView):
              (WebCore::SQLAuthorizer::dropView):
              (WebCore::SQLAuthorizer::dropTempView):
              (WebCore::SQLAuthorizer::createVTable):
              (WebCore::SQLAuthorizer::dropVTable):
              (WebCore::SQLAuthorizer::allowDelete):
              (WebCore::SQLAuthorizer::allowInsert):
              (WebCore::SQLAuthorizer::allowUpdate):
              (WebCore::SQLAuthorizer::allowTransaction):
              (WebCore::SQLAuthorizer::allowSelect):
              (WebCore::SQLAuthorizer::allowRead):
              (WebCore::SQLAuthorizer::allowAttach):
              (WebCore::SQLAuthorizer::allowDetach):
              (WebCore::SQLAuthorizer::allowReindex):
              (WebCore::SQLAuthorizer::allowAnalyze):
              (WebCore::SQLAuthorizer::allowFunction):
      
              * platform/sql/SQLValue.cpp: Added.  Contains a value for a SQLite database that can be one of a few types.
                For now, just a String or a double
              (WebCore::SQLValue::SQLValue):
              (WebCore::SQLValue::string):
              (WebCore::SQLValue::number):
              * platform/sql/SQLValue.h: Added.
              (WebCore::SQLValue::):
              (WebCore::SQLValue::SQLValue):
              (WebCore::SQLValue::type):
      
      2007-10-19  Brady Eidson <beidson@apple.com>
      
              Reviewed by Maciej
      
              Changed IconDatabase over to use new FileSystem apis
      
              * loader/icon/IconDatabase.cpp:
              (WebCore::IconDatabase::open):
      
      WebKit:
      
              Reviewed by Tim Hatcher
      
              Added support for Chrome prompts required by the Storage API
              Added support API for future managing of databases from the WebKit client
              Added preference and initialization for the databases path
      
              * Misc/WebDatabaseManager.h: Added.  WebDatabaseManager is how a WebKit application can list and
                remove the current available databases
              * Misc/WebDatabaseManager.mm: Added.
              (+[WebDatabaseManager origins]):
              (+[WebDatabaseManager databasesWithOrigin:]):
              (+[WebDatabaseManager deleteAllDatabases]):
              (+[WebDatabaseManager deleteAllDatabasesWithOrigin:]):
              (+[WebDatabaseManager deleteDatabaseWithOrigin:named:]):
              (WebKitSetWebDatabasesPathIfNecessary): Setup the database path
              * Misc/WebDatabaseManagerPrivate.h: Added.
      
              * WebCoreSupport/WebChromeClient.h: Support for calling the delegate to run the prompt for
                an origin exceeding its size limit
              * WebCoreSupport/WebChromeClient.mm:
              (WebChromeClient::runDatabaseSizeLimitPrompt):
              * WebKit.xcodeproj/project.pbxproj:
              * WebView/WebUIDelegate.h:
      
              * WebView/WebView.mm:
              (-[WebView _commonInitializationWithFrameName:groupName:]): Setup the database path
              * WebView/WebViewInternal.h:
      
      WebKitSite:
      
              Reviewed by Tim Hatcher
      
              Sample database API usage
      
              * misc/DatabaseExample.html: Added.
      
      WebKit/win:
      
              Reviewed by Anders
      
              Keep windows building with new Chrome additions
      
              * WebChromeClient.cpp:
              * WebChromeClient.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@26787 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e5def340
  10. 14 Sep, 2007 2 commits
  11. 14 Aug, 2007 1 commit
    • beidson's avatar
      WebCore: · 9b723725
      beidson authored
              Reviewed by Darin, John, Maciej, Oliver, and Tim
      
              <rdar://problem/5394708> - Crash on launch with corrupt icon database
      
              The main part of the fix is to not disable SQLite's default level of protection - to leave the sync options at their normal,
              mostly safe levels.  
      
              But in case lightning strikes at the exact right moment and someone ends up with a corrupt database, add some support code to
              detect that condition and recover from it.  
      
              This is mainly accomplished by exposing the "PRAGMA integrity_check;" facilities of sqlite through IconDatabase SPI as well as
              running that integrity check if a journal file is detected at launch (a strong indication that the last quit was not clean).
              There's also a method exposed to allow clients to tell the icon database "I suspect something bad happened, please check integrity"
      
              * loader/icon/IconDatabase.cpp:
              (WebCore::IconDatabase::checkIntegrityBeforeOpening): Allow clients to suggest an integrity check
              (WebCore::IconDatabase::open): Add a check to see if the journal file for the database exists.  If it does, run the integrity
                check.  Also run the check if a client has suggested it to be necessary.
                If the integrity-check fails, we sadly have to destroy the database and recreate from scratch.
                Also - quite importantly - do not adjust the default sync preferences for the SQLDatabase.  They were an optimization that 
                might have been valid at one time but no longer affects any benchmarks we care about.
              (WebCore::IconDatabase::checkIntegrity): Perform the SQLite integrity_check pragma
              * loader/icon/IconDatabase.h:
      
              * loader/icon/IconDatabaseNone.cpp:
              (WebCore::IconDatabase::checkIntegrity): Keep IconDatabaseNone users building
              (WebCore::IconDatabase::checkIntegrityBeforeOpening): Ditto
      
              * loader/icon/SQLDatabase.cpp:
              (WebCore::SQLDatabase::open): Make a copy of the path string so we don't accidentally mutate anyone else's string on ::close()
      
              * platform/FileSystem.h: Added. Begin a long-needed platform file system abstraction
              * platform/mac/FileSystemMac.mm: Added.
              (WebCore::fileExists): Check if a file exists
              (WebCore::deleteFile): Delete a file
      
              * platform/gdk/TemporaryLinkStubs.cpp:
              (WebCore::fileExists):
              (WebCore::deleteFile):
              * platform/qt/TemporaryLinkStubs.cpp:
              (WebCore::fileExists):
              (WebCore::deleteFile):
              * platform/win/TemporaryLinkStubs.cpp:
              (WebCore::fileExists):
              (WebCore::deleteFile):
      
              * WebCore.exp:
              * WebCore.xcodeproj/project.pbxproj:
      
      WebKit:
      
              Reviewed by Darin, John, Maciej, Oliver, and Tim
      
              <rdar://problem/5394708> - Crash on launch with corrupt icon database
      
              Expose some new SPI to help recover from this case should it happen again
      
              * Misc/WebIconDatabase.mm:
              (-[WebIconDatabase init]): Use the new _databaseDirectory to determine where to open the database on disk
              (+[WebIconDatabase _checkIntegrityBeforeOpening]): Tell the icon database to check integrity when it opens
              (-[WebIconDatabase _databaseDirectory]): Moved the database-directory-determining logic here as it's now used in two places
              * Misc/WebIconDatabasePrivate.h: Added _checkIntegrityBeforeOpening SPI for clients to give hints about when the
                integrity check should run
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25081 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9b723725
  12. 22 Apr, 2007 1 commit
    • darin's avatar
      Reviewed by Maciej. · 44091a99
      darin authored
              - fix http://bugs.webkit.org/show_bug.cgi?id=5196
                <rdar://problem/4537384> input type=file fields with style=display:none do not post
                their values (5196)
      
              - fix http://bugs.webkit.org/show_bug.cgi?id=8248
                Can not clear file input field
      
              * manual-tests/clear-input-file.html: Added.
      
              * html/HTMLInputElement.cpp:
              (WebCore::HTMLInputElement::appendFormData): Remove check that prevents submission of
              form data when there is no renderer or the renderer is invisible. While well-intentioned,
              the rule does not match the behavior of other web browsers.
              (WebCore::HTMLInputElement::setValue): Instead of disallowing all value changes for file
              type, allow changes to the empty string.
              (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): Made file type return true
              for this. 1) The file type does store its value separate from the value attribute.
              2) The code in setInputType() should do the right thing given this new value, according to
              my inspection of the code. 3) The code in both reset() and setValue() will work properly
              if this is true, which was the motivation for changing it.
      
              * platform/FileChooser.h: Added a clear function.
              * platform/FileChooser.cpp: (WebCore::FileChooser::clear): Clear the filename and the icon.
      
              * rendering/RenderFileUploadControl.cpp:
              (WebCore::RenderFileUploadControl::valueChanged): Used a local variable to make the code
              a little bit more readable (and match the change below).
              (WebCore::RenderFileUploadControl::updateFromElement): Used local variables a bit more in
              the old code. Added code that will call clear on the FileChooser and repaint if the DOM
              element has an empty value and the FileChooser does not.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@21010 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      44091a99
  13. 26 Jan, 2007 1 commit
    • darin's avatar
      Reviewed by Brady. · a069e994
      darin authored
              - fix <rdar://problem/4956688> move Mac-specific part of icon code into IconMac
              - fix a GC-compatibility problem in the icon code I noticed by code inspection
      
              * platform/FileChooser.cpp: (WebCore::FileChooser::chooseIcon): Removed Mac-specific
              path check -- that's in newIconForFile now.
      
              * platform/graphics/Icon.h: Changed the image to be a RetainPtr. The old code was
              using -[NSObject retain] which is not good enough for a pointer in a C++ object.
              * platform/graphics/mac/IconMac.mm:
              (WebCore::Icon::Icon): Got rid of unneeded code to do what RetainPtr does for us.
              (WebCore::Icon::~Icon): Ditto.
              (WebCore::Icon::newIconForFile): Added check for non-absolute file names. Updated
              for use of RetainPtr. Use constructor that takes NSImage.
              (WebCore::Icon::paint): Add get() calls needed now that we are using a RetainPtr.
      
              * WebCore.xcodeproj/project.pbxproj: Let Xcode do its thing.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19160 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a069e994
  14. 22 Jan, 2007 1 commit
    • darin's avatar
      Reviewed by Adam. · 03488715
      darin authored
              - fix http://bugs.webkit.org/show_bug.cgi?id=12273
                REGRESSION: File input value invisible after removing and re-appending
      
              - made more of the file chooser code cross-platform
      
              - fixed an Objective-C garbage collection problem in FileChooser
      
              - tried to remove layering violations where FileChooser in the platform
                directory knows about the rendering and DOM trees (but wasn't able to
                do it entirely)
      
              * platform/FileChooser.cpp: Added.
              (WebCore::FileChooser::create): Changed parameters.
              (WebCore::FileChooser::chooseFile): Changed to call chooseIcon function.
              (WebCore::FileChooser::chooseIcon): Added.
      
              * platform/FileChooser.h: Added FileChooserClient so this file doesn't have
              to know about RenderFileUploadControl. Used RetainPtr instead of retain/release
              so this works properly with Objective-C GC. Replaced disconnectUploadControl
              with disconnectClient, which has a simple inline implementation. Moved the
              Document parameter from the constructor to openFileChooser, along with a comment
              about why it should not be there. Added a filename parameter to the constructor
              for the initial filename. Added a font parameter to basenameForWidth so we don't
              depend on having a pointer to the renderer. Removed the uploadControl() and
              document() functions since no one calls either of them.
      
              * platform/mac/FileChooserMac.mm: Removed code that is now cross-platform.
              (-[OpenPanelController beginSheetWithFrame:]): Added frame parameter, instead
              of storing a document pointer in the FileChooser.
              (WebCore::FileChooser::FileChooser): Updated for changed parameters. Also added
              code to choose the icon based on the initial filename. Pass the adopt parameter
              to the constructor of the RetainPtr.
              (WebCore::FileChooser::~FileChooser): Removed the release call, since the
              RetainPtr will take care of it. Added a call to disconnectFileChooser here.
              There's no need to disconnect at disconnectClient time, and that lets us have
              one more cross-platform function.
              (WebCore::FileChooser::openFileChooser): Added document parameter. Added code
              to get the frame from the document. And added a nil check since there's no
              ironclad guarantee the document won't have outlived its frame.
              (WebCore::FileChooser::basenameForWidth): Added font parameter. Use that instead
              of going at the upload control's style. The caller can handle that now.
      
              * rendering/RenderFileUploadControl.h: Removed unnecessary includes.
              Made class inherit privately from FileChooserClient. Changed constructor
              parameter to HTMLInputElement rather than Node. Made protected members be
              private instead, and made a couple function members const.
              * rendering/RenderFileUploadControl.cpp: Moved constants to the top of the file,
              but after the "using namespace"
              (WebCore::RenderFileUploadControl::RenderFileUploadControl): Updated for changes
              to the FileChooser::create function and the parameter types.
              (WebCore::RenderFileUploadControl::~RenderFileUploadControl): Removed unneeded
              null check -- there's no case where the FileChooser fails to be created.
              (WebCore::RenderFileUploadControl::click): Pass document to openFileChooser.
              (WebCore::RenderFileUploadControl::updateFromElement): Tweaked code a bit by
              using updateFromElement and setValue instead of casting the renderer to a
              RenderButton and calling setText directly. Put setInputType call here.
              (WebCore::RenderFileUploadControl::maxFilenameWidth): Made const. Broke long line.
              (WebCore::RenderFileUploadControl::createButtonStyle): Made const.
              (WebCore::RenderFileUploadControl::paintObject): Moved buttonShadowHeight constant
              to the top of the file. Call isEmpty instead of checking width and height of
              IntRect for 0. Computed font to pass to FileChooser::basenameForWidth. Broke
              long lines.
              (WebCore::HTMLFileUploadInnerButtonElement::HTMLFileUploadInnerButtonElement):
              Moved the setInputType call to the caller; concept here is that this class is
              as simple as possible, rather than doing as much of the button job as possible.
      
              * WebCore.xcodeproj/project.pbxproj: Added FileChooser.cpp.
              * WebCore.pro: Ditto.
              * CMakeLists.txt: Ditto.
              * WebCoreSources.bkl: Ditto.
      
              * platform/gdk/TemporaryLinkStubs.cpp: Updated stubs.
              * platform/qt/FileChooserQt.cpp: Updated stubs.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19035 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      03488715
  15. 11 Dec, 2006 1 commit
    • darin's avatar
      WebCore: · cb3524af
      darin authored
              Reviewed by Brady.
      
              - http://bugs.webkit.org/show_bug.cgi?id=11794
                fix lifetime problems affecting Frame's ownerElement pointer
      
              * CMakeLists.txt:
              * WebCore.vcproj/WebCore/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
              Updated for new source files.
      
              * WebCore.exp: Updated for changes to entry point names.
      
              * bridge/mac/FrameMac.h:
              * bridge/mac/FrameMac.mm: (WebCore::FrameMac::FrameMac):
              * bridge/win/FrameWin.h:
              * bridge/win/FrameWin.cpp: (WebCore::FrameWin::FrameWin):
              * platform/qt/FrameQt.h:
              * platform/qt/FrameQt.cpp: (WebCore::FrameQt::FrameQt):
              Updated owner element type to HTMLFrameOwnerElement.
      
              * bridge/mac/WebCoreFrameBridge.h: Removed non-C++ case since we don't
              use that any more. Updated owner element type to HTMLFrameOwnerElement.
      
              * dom/Document.cpp: Added include so that the ownerElement function can
              compile (since it downcasts an HTMLFrameOwnerElement to an Element).
      
              * html/HTMLFrameElement.cpp:
              (WebCore::containingFrameSetElement): Moved this function in here; it
              doesn't need to be a member function.
              (WebCore::HTMLFrameElement::attach): Updated to call this.
      
              * html/HTMLFrameElementBase.h:
              * html/HTMLFrameElementBase.cpp:
              (WebCore::HTMLFrameElementBase::HTMLFrameElementBase): Inherit from
              HTMLFrameOwnerElement. Removed contentFrame, contentDocument, and
              containingFrameSetElement. Removed friend classes.
      
              * html/HTMLFrameOwnerElement.h: Added.
              * html/HTMLFrameOwnerElement.cpp: Added.
      
              * html/HTMLEmbedElement.h:
              * html/HTMLEmbedElement.cpp:
              * html/HTMLObjectElement.h:
              * html/HTMLObjectElement.cpp:
              Remove now-unneeded contentDocument functions.
      
              * html/HTMLPlugInElement.h:
              * html/HTMLPlugInElement.cpp:
              (WebCore::HTMLPlugInElement::HTMLPlugInElement): Inherit from
              HTMLFrameOwnerElement.
      
              * loader/FormState.h:
              * loader/FormState.cpp: Use HTMLFormElement instead of just Element.
      
              * loader/FrameLoader.h:
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::requestFrame): Use HTMLFormElement.
              (WebCore::FrameLoader::loadSubframe): Ditto.
              (WebCore::FrameLoader::requestObject): Don't pass an element parameter
              to shouldUsePlugin, and remove now-unneeded type casts.
              (WebCore::FrameLoader::shouldUsePlugin): Removed unneeded element parameter.
              (WebCore::FrameLoader::handleFallbackContent): Use HTMLFrameOwnerElement.
              (WebCore::FrameLoader::updateBaseURLForEmptyDocument): Ditto.
              (WebCore::FrameLoader::isHostedByObjectElement): Ditto.
              * loader/mac/FrameLoaderMac.mm:
              (WebCore::FrameLoader::load): Use HTMLFormElement.
              (WebCore::FrameLoader::post): Ditto.
              (WebCore::FrameLoader::createFrame): Use HTMLFrameOwnerElement.
      
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/Frame.cpp:
              (WebCore::parentFromOwnerElement): Use HTMLFrameOwnerElement.
              (WebCore::Frame::Frame): Ditto. Also set m_contentFrame on the owner element.
              (WebCore::Frame::ownerElement): Ditto.
              (WebCore::Frame::ownerRenderer): Ditto.
              (WebCore::Frame::disconnectOwnerElement): Clear m_contentFrame on the owner
              element before disconnecting it.
              (WebCore::FramePrivate::FramePrivate): Use HTMLFrameOwnerElement.
      
              * page/mac/EventHandlerMac.mm: Include HTMLFrameOwnerElement.h so that
              the code here will compile (no code changes needed).
      
              * rendering/RenderFrame.cpp: (WebCore::RenderFrame::viewCleared):
              Updated so that RenderFrame doesn't need to be a friend of HTMLFrameElementBase.
      
              * rendering/RenderPart.h:
              * rendering/RenderPart.cpp: (WebCore::RenderPart::RenderPart):
              Use HTMLFrameOwnerElement.
      
              * rendering/RenderPartObject.h:
              * rendering/RenderPartObject.cpp:
              (WebCore::RenderPartObject::RenderPartObject): Use HTMLFrameOwnerElement.
              (WebCore::RenderPartObject::viewCleared): Updated so that RenderFrame doesn't
              need to be a friend of HTMLFrameElementBase.
      
              - other changes
      
              * platform/network/ResourceHandleInternal.h: Added Noncopyable and
              fixed indentation.
      
      WebKit:
      
              Reviewed by Brady.
      
              - http://bugs.webkit.org/show_bug.cgi?id=11794
                fix lifetime problems affecting Frame's ownerElement pointer
      
              * WebCoreSupport/WebFrameBridge.mm:
              (-[WebFrameBridge finishInitializingWithPage:WebCore::frameName:frameView:ownerElement:]):
              (-[WebFrameBridge initSubframeWithOwnerElement:frameName:frameView:]):
              (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
              Use HTMLFrameOwnerElement.
      
              * WebCoreSupport/WebFrameLoaderClient.mm: Include the relevant headers for the
              HTMLFormElement class.
      
              * WebKit.xcodeproj/project.pbxproj: Let Xcode have its way.
      
              * WebView/WebFrame.mm: (-[WebFrame frameElement]): Update includes and types for the
              change in return type of ownerElement.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18163 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cb3524af
  16. 30 Oct, 2006 1 commit
    • darin's avatar
      Reviewed by Adam. · c1116559
      darin authored
              - fix FrameLoader files so they can be built on non-Mac platforms
      
              * page/FramePrivate.h:
              (WebCore::FramePrivate::FramePrivate): Added code to create the frame loader.
              (WebCore::FramePrivate::~FramePrivate): Added code to delete the frame loader.
      
              * page/Page.h:
              * page/Page.cpp: (WebCore::Page::setDefersLoading): Removed the
              #if PLATFORM(MAC) that Adam added as a stop-gap when I did this wrong
              the other day.
      
              * bridge/mac/FrameMac.mm:
              (WebCore::FrameMac::FrameMac): Removed code to create the frame loader.
              (WebCore::FrameMac::~FrameMac): Removed code to delete the frame loader.
      
              * loader/FrameLoader.h: Changed import to include, added #if PLATFORM(MAC)
              around the PolicyCheck definition.
      
              * loader/FormState.cpp: Changed import to include.
              * loader/FrameLoader.cpp: Ditto.
              * loader/MainResourceLoader.h: Ditto.
      
              * loader/FrameLoaderTypes.h: Added a header guard.
      
              * loader/NetscapePlugInStreamLoader.h: Changed import to include.
              Added #if PLATFORM(MAC) around Mac-specific details.
              * loader/SubresourceLoader.h: Ditto.
      
              * page/Frame.cpp: (WebCore::Frame::loader): Updated name of loader to
              m_loader from m_frameLoader.
      
              * CMakeLists.txt: Updated.
              * WebCoreSources.bkl: Updated.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17442 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c1116559
  17. 29 Oct, 2006 3 commits
    • darin's avatar
      WebCore: · 27bd662b
      darin authored
              - one last name change -- WebFormState.h to FormState.h
              - added more empty placeholder platform-independent files
                for currently-Mac-specific loader classes
      
              * loader/FormState.cpp: Updated include.
              * loader/FrameLoader.cpp: Updated include.
              * loader/mac/FrameLoaderMac.mm: Updated include.
      
              * loader/WebFormState.h: Removed.
              * loader/FormState.h: Added.
      
              * loader/DocumentLoader.cpp: Added.
              * loader/MainResourceLoader.cpp: Added.
              * loader/NetscapePlugInStreamLoader.cpp: Added.
              * loader/ResourceLoader.cpp: Added.
              * loader/SubresourceLoader.cpp: Added.
      
              * WebCore.xcodeproj/project.pbxproj: Updated for changes above.
      
      WebKit:
      
              - update for the WebCore rename
      
              * WebCoreSupport/WebFrameLoaderClient.mm:
              * WebView/WebFrame.mm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17433 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      27bd662b
    • darin's avatar
      Reviewed by Adam. · fa7a4e37
      darin authored
              - moving towards use of FrameLoader cross-platform; get FrameLoader.h
                and FrameLoader.cpp mostly ready
      
              * WebCore.xcodeproj/project.pbxproj: Added FrameLoader.cpp and
              FormState.cpp. Removed WebFormState.mm.
      
              * loader/FrameLoader.h: Put in lots of #if statements to see if we can
              get this header compiling on non-Mac.
              * loader/FrameLoader.cpp: Added. Has non-Mac-specific bits of FrameLoader.
              * loader/mac/FrameLoader.mm: Moved some non-Mac-specific bits out.
      
              * loader/FrameLoaderClient.h: Added some ifdefs.
              * loader/WebDocumentLoader.h: Ditto.
              * loader/WebLoader.h: Ditto.
              * loader/WebMainResourceLoader.h: Ditto.
      
              * loader/mac/WebDocumentLoader.mm:
              (WebCore::DocumentLoader::isLoadingInAPISense):
              Rewrote to work without bridge, partly to remove the need for ObjC
              bridge type in the header, and also because we're tearing down the bridge.
      
              * loader/mac/WebMainResourceLoader.mm:
              (WebCore::MainResourceLoader::MainResourceLoader): Removed unused
              m_contentLength and m_bytesReceived.
              (WebCore::MainResourceLoader::didReceiveResponse): Ditto.
              (WebCore::MainResourceLoader::didReceiveData): Ditto.
      
              * bridge/mac/WebCoreFrameBridge.h: Removed doneProcessingData.
              * bridge/mac/WebCoreFrameBridge.mm: Ditto.
      
              * loader/mac/FormState.mm: Removed.
              * loader/FormState.cpp: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17429 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fa7a4e37
    • darin's avatar
      JavaScriptCore: · e4d34c61
      darin authored
              Reviewed by Maciej.
      
              - renamed PassRefPtr::release to releaseRef to make it clearer that
                it's the counterpart of adoptRef, and to make it harder to confuse
                it with the safer-to-use RefPtr::release
      
              * kjs/identifier.cpp:
              (KJS::CStringTranslator::translate):
              (KJS::UCharBufferTranslator::translate):
              * kjs/ustring.cpp:
              (KJS::UString::Rep::create):
              * wtf/PassRefPtr.h:
              (WTF::PassRefPtr::PassRefPtr):
              (WTF::PassRefPtr::~PassRefPtr):
              (WTF::PassRefPtr::get):
              (WTF::PassRefPtr::releaseRef):
              (WTF::PassRefPtr::operator->):
              (WTF::PassRefPtr::operator=):
              (WTF::adoptRef):
              (WTF::static_pointer_cast):
              (WTF::const_pointer_cast):
              * wtf/RefPtr.h:
              (WTF::RefPtr::RefPtr):
              (WTF::RefPtr::operator=):
      
      WebCore:
      
              Reviewed by Maciej.
      
              - eliminated the use of Objective-C for the policy decider
                machinery, obviating the need for WebPolicyDecider,
                WebCoreFrameLoaderAsDelegate, and
                WebCoreMainResourceLoaderAsPolicyDelegate
      
              - grouped the state related to policy decisions into a PolicyCheck
                class to simplify the FrameLoader logic
      
              - removed six methods from the bridge, reducing FrameLoader's use of
                the bridge to a single method
      
              - changed form state to always use HashMap instead of NSDictionary
      
              - moved the defersLoading flag from WebView to WebCore::Page
                and changed code to consistently call it defersLoading rather
                than defersCallbacks
      
              - updated for rename of PassRefPtr::release to releaseRef
              - replaced all uses of __APPLE__ with appropriate PLATFORM defines
              - cleaned up kjs_binding.h a bit
              - cleaned up FrameMac.h a bit
      
              * loader/mac/WebPolicyDecider.h: Removed.
              * loader/mac/WebPolicyDecider.mm: Removed.
              * WebCore.xcodeproj/project.pbxproj: Updated for removal.
      
              * WebCore.exp:
              * bindings/js/kjs_binding.cpp:
              (KJS::ScriptInterpreter::ScriptInterpreter):
              (KJS::ScriptInterpreter::wasRunByUserGesture):
              * bindings/js/kjs_binding.h:
              (KJS::ScriptInterpreter::setCurrentEvent):
              (KJS::ScriptInterpreter::setInlineCode):
              (KJS::ScriptInterpreter::setProcessingTimerCallback):
              (KJS::ScriptInterpreter::getCurrentEvent):
              (KJS::cacheDOMObject):
              (KJS::DOMExceptionTranslator::DOMExceptionTranslator):
              * bridge/AXObjectCache.h:
              * bridge/mac/BrowserExtensionMac.mm:
              (WebCore::BrowserExtensionMac::createNewWindow):
              * bridge/mac/FrameMac.h:
              * bridge/mac/FrameMac.mm:
              (WebCore::FrameMac::loadRequest):
              (WebCore::FrameMac::submitForm):
              (WebCore::FrameMac::urlSelected):
              (WebCore::FrameMac::userAgent):
              (WebCore::FrameMac::passMouseDownEventToWidget):
              (WebCore::FrameMac::handleMouseMoveEvent):
              * bridge/mac/PageMac.mm:
              (WebCore::Page::Page):
              * bridge/mac/WebCoreEditCommand.mm:
              * bridge/mac/WebCoreFrameBridge.h:
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
              (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
              * css/CSSComputedStyleDeclaration.cpp:
              (WebCore::):
              (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
              * css/CSSPrimitiveValue.cpp:
              (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
              (WebCore::CSSPrimitiveValue::cleanup):
              (WebCore::CSSPrimitiveValue::cssText):
              * css/CSSPrimitiveValue.h:
              (WebCore::CSSPrimitiveValue::):
              * css/CSSValueList.cpp:
              (WebCore::CSSValueList::append):
              * css/cssparser.cpp:
              (WebCore::CSSParser::parseValue):
              * css/cssparser.h:
              * css/cssstyleselector.cpp:
              (WebCore::CSSStyleSelector::applyProperty):
              * dom/Document.cpp:
              (WebCore::Document::Document):
              (WebCore::Document::updateSelection):
              (WebCore::Document::implicitClose):
              (WebCore::Document::setFocusNode):
              * dom/Document.h:
              * editing/ReplaceSelectionCommand.h:
              * html/HTMLParser.cpp:
              (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
              * loader/mac/FrameLoader.h:
              (WebCore::PolicyCheck::request):
              * loader/mac/FrameLoader.mm:
              (WebCore::FrameLoader::~FrameLoader):
              (WebCore::FrameLoader::safeLoad):
              (WebCore::FrameLoader::load):
              (WebCore::FrameLoader::open):
              (WebCore::FrameLoader::stopLoading):
              (WebCore::setAllDefersLoading):
              (WebCore::FrameLoader::setDefersLoading):
              (WebCore::FrameLoader::willSendRequest):
              (WebCore::FrameLoader::receivedMainResourceError):
              (WebCore::FrameLoader::callContinueFragmentScrollAfterNavigationPolicy):
              (WebCore::FrameLoader::commitProvisionalLoad):
              (WebCore::FrameLoader::checkNavigationPolicy):
              (WebCore::FrameLoader::checkContentPolicy):
              (WebCore::FrameLoader::cancelContentPolicyCheck):
              (WebCore::FrameLoader::stopPolicyCheck):
              (WebCore::FrameLoader::checkNewWindowPolicy):
              (WebCore::FrameLoader::continueAfterNewWindowPolicy):
              (WebCore::FrameLoader::continueAfterNavigationPolicy):
              (WebCore::FrameLoader::continueAfterContentPolicy):
              (WebCore::FrameLoader::continueAfterWillSubmitForm):
              (WebCore::FrameLoader::callContinueLoadAfterNavigationPolicy):
              (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
              (WebCore::FrameLoader::closeDocument):
              (WebCore::FrameLoader::transitionToCommitted):
              (WebCore::FrameLoader::callContinueLoadAfterNewWindowPolicy):
              (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
              (WebCore::FrameLoader::post):
              (WebCore::FrameLoader::detachFromParent):
              (WebCore::FrameLoader::addExtraFieldsToRequest):
              (WebCore::PolicyCheck::PolicyCheck):
              (WebCore::PolicyCheck::clear):
              (WebCore::PolicyCheck::set):
              (WebCore::PolicyCheck::call):
              (WebCore::PolicyCheck::dropRequest):
              (WebCore::FrameLoaderClient::~FrameLoaderClient):
              * loader/mac/WebFormState.h:
              * loader/mac/WebFormState.mm:
              * loader/mac/WebFrameLoaderClient.h:
              * loader/mac/WebLoader.h:
              (WebCore::WebResourceLoader::defersLoading):
              * loader/mac/WebLoader.mm:
              (WebCore::WebResourceLoader::WebResourceLoader):
              (WebCore::WebResourceLoader::load):
              (WebCore::WebResourceLoader::setDefersLoading):
              * loader/mac/WebMainResourceLoader.h:
              * loader/mac/WebMainResourceLoader.mm:
              (WebCore::MainResourceLoader::MainResourceLoader):
              (WebCore::MainResourceLoader::releaseDelegate):
              (WebCore::MainResourceLoader::didCancel):
              (WebCore::MainResourceLoader::callContinueAfterNavigationPolicy):
              (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
              (WebCore::MainResourceLoader::willSendRequest):
              (WebCore::MainResourceLoader::callContinueAfterContentPolicy):
              (WebCore::MainResourceLoader::continueAfterContentPolicy):
              (WebCore::MainResourceLoader::didReceiveResponse):
              (WebCore::MainResourceLoader::didReceiveData):
              (WebCore::MainResourceLoader::didFinishLoading):
              (WebCore::MainResourceLoader::didFail):
              (WebCore::MainResourceLoader::loadNow):
              (WebCore::MainResourceLoader::load):
              (WebCore::MainResourceLoader::setDefersLoading):
              * page/Frame.cpp:
              (WebCore::Frame::paint):
              * page/FrameView.cpp:
              (WebCore::FrameView::layout):
              * page/FrameView.h:
              * page/Page.cpp:
              (WebCore::Page::setDefersLoading):
              * page/Page.h:
              (WebCore::Page::defersLoading):
              * platform/DeprecatedString.h:
              * platform/DeprecatedStringList.h:
              * platform/FontFallbackList.h:
              * platform/PlatformKeyboardEvent.h:
              * platform/PlatformMouseEvent.h:
              * platform/PlatformWheelEvent.h:
              * platform/mac/ClipboardMac.h:
              * platform/mac/ClipboardMac.mm:
              (WebCore::ClipboardMac::setDragImage):
              (WebCore::ClipboardMac::dragNSImage):
              (WebCore::ClipboardMac::sourceOperation):
              (WebCore::ClipboardMac::destinationOperation):
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::setStyle):
              * rendering/break_lines.cpp:
              (WebCore::nextBreakablePosition):
      
      WebKit:
      
              Reviewed by Maciej.
      
              - eliminated the use of Objective-C for the policy decider
                machinery, obviating the need for WebPolicyDeciderMac
      
              - moved the defersLoading flag from WebView to WebCore::Page
      
              - removed unused copies of four methods that in the frame bridge;
                the actually-used copies are in the page bridge
      
              - updated for rename of PassRefPtr::release to releaseRef
      
              * WebView/WebPolicyDeciderMac.h: Removed.
              * WebView/WebPolicyDeciderMac.m: Removed.
              * WebKit.xcodeproj/project.pbxproj: Updated for removal.
      
              * Plugins/WebBaseNetscapePluginView.mm:
              (-[WebBaseNetscapePluginView sendEvent:]):
              * Plugins/WebNetscapePluginStream.mm:
              * WebCoreSupport/WebFrameBridge.mm:
              * WebCoreSupport/WebFrameLoaderClient.h:
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (getWebView):
              (WebFrameLoaderClient::WebFrameLoaderClient):
              (WebFrameLoaderClient::willCloseDocument):
              (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
              (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
              (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
              (WebFrameLoaderClient::cancelPolicyCheck):
              (WebFrameLoaderClient::dispatchWillSubmitForm):
              (WebFrameLoaderClient::setDefersLoading):
              (WebFrameLoaderClient::setTitle):
              (WebFrameLoaderClient::deliverArchivedResourcesAfterDelay):
              (WebFrameLoaderClient::deliverArchivedResources):
              (WebFrameLoaderClient::setUpPolicyListener):
              (WebFrameLoaderClient::receivedPolicyDecison):
              (WebFrameLoaderClient::userAgent):
              (-[WebFramePolicyListener initWithWebCoreFrame:]):
              (-[WebFramePolicyListener invalidate]):
              (-[WebFramePolicyListener dealloc]):
              (-[WebFramePolicyListener finalize]):
              (-[WebFramePolicyListener receivedPolicyDecision:]):
              (-[WebFramePolicyListener ignore]):
              (-[WebFramePolicyListener download]):
              (-[WebFramePolicyListener use]):
              (-[WebFramePolicyListener continue]):
              * WebCoreSupport/WebPageBridge.mm:
              (-[WebPageBridge runModal]):
              * WebView/WebArchiver.m:
              (+[WebArchiver archiveSelectionInFrame:]):
              * WebView/WebFormDelegate.h:
              * WebView/WebFormDelegate.m:
              (+[WebFormDelegate _sharedWebFormDelegate]):
              (-[WebFormDelegate textFieldDidBeginEditing:inFrame:]):
              (-[WebFormDelegate textFieldDidEndEditing:inFrame:]):
              (-[WebFormDelegate textDidChangeInTextField:inFrame:]):
              (-[WebFormDelegate textDidChangeInTextArea:inFrame:]):
              (-[WebFormDelegate frame:sourceFrame:willSubmitForm:withValues:submissionListener:]):
              * WebView/WebFrame.mm:
              (-[WebFrame _loadURL:referrer:intoChild:]):
              (-[WebFrame _isFrameSet]):
              * WebView/WebFrameInternal.h:
              * WebView/WebFrameView.mm:
              (-[WebFrameView _shouldDrawBorder]):
              * WebView/WebHTMLView.m:
              (-[NSArray knowsPageRange:]):
              * WebView/WebView.mm:
              (-[WebView _formDelegate]):
              * WebView/WebViewInternal.h:
              * WebView/WebViewPrivate.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17405 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e4d34c61
  18. 25 Oct, 2006 1 commit
    • darin's avatar
      WebCore: · 7095f0f5
      darin authored
              Reviewed by Anders.
      
              - removed 55 methods from WebCoreFrameBridge
              - changed callers to use Frame directly instead
              - put FrameLoaderTypes.h types into the WebCore namespace
              - first steps to get FrameLoader.h ready for cross-platform duty
      
              * WebCore.exp:
              * WebCore.xcodeproj/project.pbxproj:
              * bridge/mac/BrowserExtensionMac.mm:
              (WebCore::BrowserExtensionMac::createNewWindow):
              * bridge/mac/FrameMac.h:
              * bridge/mac/FrameMac.mm:
              (WebCore::FrameMac::loadRequest):
              (WebCore::FrameMac::startRedirectionTimer):
              (WebCore::FrameMac::stopRedirectionTimer):
              (WebCore::FrameMac::passSubframeEventToSubframe):
              (WebCore::FrameMac::handledOnloadEvents):
              (WebCore::FrameMac::isLoadTypeReload):
              * bridge/mac/WebCoreFrameBridge.h:
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge executionContextForView:]):
              (updateRenderingForBindings):
              (-[WebCoreFrameBridge canTargetLoadInFrame:]):
              (-[WebCoreFrameBridge forceLayoutAdjustingViewSize:]):
              (-[WebCoreFrameBridge forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
              (-[WebCoreFrameBridge installInFrame:]):
              (-[WebCoreFrameBridge numPendingOrLoadingRequests]):
              (-[WebCoreFrameBridge replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]):
              (-[WebCoreFrameBridge baseWritingDirectionForSelectionStart]):
              (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
              (stringByCollapsingNonPrintingCharacters):
              (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
              (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
              (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
              * loader/FrameLoaderTypes.h:
              * loader/mac/FrameLoader.h:
              * loader/mac/FrameLoader.mm:
              (WebCore::FrameLoader::FrameLoader):
              (WebCore::FrameLoader::setupForReplace):
              (WebCore::FrameLoader::load):
              (WebCore::FrameLoader::activeDocumentLoader):
              (WebCore::FrameLoader::state):
              (WebCore::FrameLoader::setState):
              (WebCore::FrameLoader::clearProvisionalLoad):
              (WebCore::FrameLoader::markLoadComplete):
              (WebCore::FrameLoader::commitProvisionalLoad):
              (WebCore::FrameLoader::receivedMainResourceError):
              (WebCore::FrameLoader::handleFallbackContent):
              (WebCore::FrameLoader::isLoadingMainFrame):
              (WebCore::FrameLoader::continueAfterNewWindowPolicy):
              (WebCore::FrameLoader::continueAfterNavigationPolicy):
              (WebCore::FrameLoader::continueAfterWillSubmitForm):
              (WebCore::FrameLoader::continueLoadRequestAfterNavigationPolicy):
              (WebCore::FrameLoader::transitionToCommitted):
              (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
              (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
              (-[WebCoreFrameLoaderAsDelegate continueAfterNewWindowPolicy:]):
              (-[WebCoreFrameLoaderAsDelegate continueAfterNavigationPolicy:]):
              (-[WebCoreFrameLoaderAsDelegate continueAfterWillSubmitForm:]):
              * loader/mac/ImageDocumentMac.mm:
              (WebCore::finishImageLoad):
              * loader/mac/WebDocumentLoader.mm:
              (WebCore::DocumentLoader::isLoadingInAPISense):
              * loader/mac/WebMainResourceLoader.h:
              * loader/mac/WebMainResourceLoader.mm:
              (WebCore::MainResourceLoader::continueAfterContentPolicy):
              (-[WebCoreMainResourceLoaderAsPolicyDelegate continueAfterContentPolicy:]):
              * loader/mac/WebSubresourceLoader.mm:
              (-[WebCoreSubresourceHandle initWithLoader:]):
              * platform/mac/ListBoxMac.mm:
              (-[WebCoreTableView keyDown:]):
              (-[WebCoreTableView keyUp:]):
              * platform/mac/WebCoreTextField.mm:
              (-[WebCoreTextFieldController textView:shouldHandleEvent:]):
      
      WebKit:
      
              Reviewed by Anders.
      
              - removed 55 methods from WebCoreFrameBridge
              - changed callers to use Frame directly instead
              - put FrameLoaderTypes.h types into the WebCore namespace
              - first steps to get FrameLoader.h ready for cross-platform duty
      
              * DefaultDelegates/WebDefaultContextMenuDelegate.m:
              (-[WebDefaultUIDelegate openNewWindowWithURL:element:]):
              * Plugins/WebBaseNetscapePluginView.mm:
              (-[WebBaseNetscapePluginView requestWithURLCString:]):
              (-[WebBaseNetscapePluginView loadPluginRequest:]):
              (-[WebBaseNetscapePluginView getVariable:value:]):
              * Plugins/WebNetscapePluginEmbeddedView.m:
              (-[WebNetscapePluginEmbeddedView didStart]):
              * Plugins/WebNetscapePluginStream.mm:
              * Plugins/WebPluginContainerCheck.m:
              (-[WebPluginContainerCheck _continueWithPolicy:]):
              (-[WebPluginContainerCheck _isForbiddenFileLoad]):
              * WebCoreSupport/WebEditorClient.mm:
              (WebEditorClient::shouldDeleteRange):
              (WebEditorClient::shouldShowDeleteInterface):
              * WebCoreSupport/WebFrameBridge.mm:
              (-[WebFrameBridge webView]):
              (-[WebFrameBridge finishInitializingWithFrameName:view:]):
              (-[WebFrameBridge createWindowWithURL:]):
              (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
              (-[WebFrameBridge windowObjectCleared]):
              (-[WebFrameBridge createModalDialogWithURL:]):
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (WebFrameLoaderClient::dispatchCreatePage):
              (WebFrameLoaderClient::dispatchWillSubmitForm):
              * WebKit.xcodeproj/project.pbxproj:
              * WebView/WebArchiver.m:
              (+[WebArchiver archiveSelectionInFrame:]):
              * WebView/WebDataSource.mm:
              (-[WebDataSource _documentFragmentWithImageResource:]):
              (-[WebDataSource _imageElementWithImageResource:]):
              * WebView/WebEditingDelegatePrivate.h:
              * WebView/WebFrame.mm:
              (core):
              (kit):
              (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):
              (-[WebFrame _canCachePage]):
              (-[WebFrame _childFramesMatchItem:]):
              (-[WebFrame _URLsMatchItem:]):
              (-[WebFrame _loadItem:withLoadType:]):
              (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]):
              (-[WebFrame _viewWillMoveToHostWindow:]):
              (-[WebFrame _viewDidMoveToHostWindow]):
              (-[WebFrame _addChild:]):
              (-[WebFrame _saveDocumentAndScrollState]):
              (-[WebFrame _numPendingOrLoadingRequests:]):
              (-[WebFrame _reloadForPluginChanges]):
              (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
              (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
              (-[WebFrame _initWithWebFrameView:webView:coreFrame:]):
              (-[WebFrame _documentViews]):
              (-[WebFrame _updateBackground]):
              (-[WebFrame _unmarkAllMisspellings]):
              (-[WebFrame _hasSelection]):
              (-[WebFrame _atMostOneFrameHasSelection]):
              (-[WebFrame _findFrameWithSelection]):
              (-[WebFrame _frameLoader]):
              (-[WebFrame _isDescendantOfFrame:]):
              (-[WebFrame _setShouldCreateRenderers:]):
              (-[WebFrame _bodyBackgroundColor]):
              (-[WebFrame init]):
              (-[WebFrame initWithName:webFrameView:webView:]):
              (-[WebFrame dealloc]):
              (-[WebFrame finalize]):
              (-[WebFrame name]):
              (-[WebFrame webView]):
              (-[WebFrame DOMDocument]):
              (-[WebFrame frameElement]):
              (-[WebFrame findFrameNamed:]):
              (-[WebFrame parentFrame]):
              (-[WebFrame childFrames]):
              (-[WebFrame _invalidateCurrentItemPageCache]):
              (-[WebFrame _dispatchCreateWebViewWithRequest:]):
              (-[WebFrame _dispatchSourceFrame:willSubmitForm:withValues:submissionDecider:]):
              (-[WebFrame _prepareForDataSourceReplacement]):
              (-[WebFrame _provisionalLoadStarted]):
              * WebView/WebFrameInternal.h:
              * WebView/WebHTMLRepresentation.m:
              (-[WebHTMLRepresentation DOMDocument]):
              (-[WebHTMLRepresentation attributedText]):
              * WebView/WebHTMLView.m:
              (-[WebHTMLView _documentRange]):
              (-[WebHTMLView _documentFragmentWithPaths:]):
              (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
              (-[WebHTMLView _selectedRange]):
              (-[WebHTMLView _updateMouseoverWithEvent:]):
              (-[WebHTMLView _canEditRichly]):
              (-[WebHTMLView _hasSelection]):
              (-[WebHTMLView _hasSelectionOrInsertionPoint]):
              (-[WebHTMLView _hasInsertionPoint]):
              (-[WebHTMLView _isEditable]):
              (-[WebHTMLView _isSelectionInPasswordField]):
              (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
              (-[WebHTMLView _selectionDraggingImage]):
              (-[WebHTMLView _canIncreaseSelectionListLevel]):
              (-[WebHTMLView _canDecreaseSelectionListLevel]):
              (-[WebHTMLView _updateActiveState]):
              (-[NSArray readSelectionFromPasteboard:]):
              (-[NSArray validateUserInterfaceItem:]):
              (-[NSArray maintainsInactiveSelection]):
              (-[NSArray menuForEvent:]):
              (-[NSArray scrollWheel:]):
              (-[NSArray acceptsFirstMouse:]):
              (-[NSArray shouldDelayWindowOrderingForEvent:]):
              (-[NSArray mouseDown:]):
              (-[NSArray mouseDragged:]):
              (-[NSArray mouseUp:]):
              (-[NSArray keyDown:]):
              (-[NSArray keyUp:]):
              (-[NSArray centerSelectionInVisibleArea:]):
              (-[NSArray _selectionStartFontAttributesAsRTF]):
              (-[NSArray _emptyStyle]):
              (-[NSArray performKeyEquivalent:]):
              (-[NSArray indent:]):
              (-[NSArray outdent:]):
              (-[WebHTMLView cut:]):
              (-[WebHTMLView paste:]):
              (-[WebHTMLView _selectRangeInMarkedText:]):
              (-[WebTextCompleteController doCompletion]):
              (-[WebHTMLView selectionRect]):
              (-[WebHTMLView selectionImageForcingWhiteText:]):
              (-[WebHTMLView selectionImageRect]):
              (-[WebHTMLView attributedString]):
              (-[WebHTMLView _isMoveDrag]):
              (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]):
              * WebView/WebPolicyDelegate.mm:
              (-[WebPolicyDecisionListener _usePolicy:]):
              (-[WebPolicyDecisionListener use]):
              (-[WebPolicyDecisionListener ignore]):
              (-[WebPolicyDecisionListener download]):
              (-[WebPolicyDecisionListener continue]):
              * WebView/WebScriptDebugDelegate.m:
              (-[WebScriptCallFrame _initWithFrame:initWithWebFrame:]):
              (-[WebScriptCallFrame globalObject]):
              * WebView/WebView.mm:
              (-[WebView _attachScriptDebuggerToAllFrames]):
              (-[WebView _detachScriptDebuggerFromAllFrames]):
              (-[WebView windowScriptObject]):
              (incrementFrame):
              (-[WebView searchFor:direction:caseSensitive:wrap:]):
              (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]):
              (-[WebView removeDragCaret]):
              (-[WebView setScriptDebugDelegate:]):
              (-[WebView scriptDebugDelegate]):
              (-[WebView shouldClose]):
              (-[WebView selectedDOMRange]):
              (-[WebView styleDeclarationWithText:]):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17299 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7095f0f5
  19. 24 Oct, 2006 1 commit
    • darin's avatar
      WebCore: · 1473b919
      darin authored
              Reviewed by Anders.
      
              - converted WebFrameLoaderClient to C++
              - renamed frame->frameLoader() function to frame->loader()
              - renamed [bridge impl] to [bridge _frame]
              - removed some bridge methods
      
              * WebCore.exp: Added more exports.
              * WebCore.xcodeproj/project.pbxproj: Made FrameTree.h private instead of project-internal
              so it can be used in WebKit.
      
              * bridge/mac/BrowserExtensionMac.mm:
              (WebCore::BrowserExtensionMac::createNewWindow):
              * bridge/mac/FrameMac.mm:
              (WebCore::FrameMac::createFrame):
              (WebCore::FrameMac::didFirstLayout):
              * bridge/mac/WebCoreAXObject.mm:
              (-[WebCoreAXObject rendererForView:]):
              * bridge/mac/WebCoreFrameBridge.h:
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge _shouldAllowAccessFrom:]):
              (-[WebCoreFrameBridge canTargetLoadInFrame:]):
              (-[WebCoreFrameBridge setOpener:]):
              (-[WebCoreFrameBridge getData:andResponse:forURL:]):
              (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
              (-[WebCoreFrameBridge setTitle:]):
              (-[WebCoreFrameBridge originalRequestURL]):
              (-[WebCoreFrameBridge isLoadTypeReload]):
              (-[WebCoreFrameBridge frameDetached]):
              (-[WebCoreFrameBridge tokenizerProcessedData]):
              (-[WebCoreFrameBridge receivedData:textEncodingName:]):
              (-[WebCoreFrameBridge objectLoadedFromCacheWithURL:response:data:]):
              (-[WebCoreFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
              (-[WebCoreFrameBridge reportClientRedirectCancelled:]):
              (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
              (-[WebCoreFrameBridge incomingReferrer]):
              (-[WebCoreFrameBridge isReloading]):
              (-[WebCoreFrameBridge handledOnloadEvents]):
              (-[WebCoreFrameBridge mainResourceURLResponse]):
              (-[WebCoreFrameBridge loadEmptyDocumentSynchronously]):
              (-[WebCoreFrameBridge _frame]):
              (-[WebCoreFrameBridge executionContextForView:]):
              * bridge/mac/WebCorePageBridge.mm:
              (-[WebCorePageBridge setMainFrame:]):
              * dom/Position.cpp:
              (WebCore::Position::upstream):
              * loader/mac/IconLoaderMac.mm:
              (IconLoader::notifyIconChanged):
              * loader/mac/WebDocumentLoader.mm:
              (WebCore::DocumentLoader::frameLoader):
              (WebCore::DocumentLoader::stopLoading):
              (WebCore::DocumentLoader::finishedLoading):
              (WebCore::DocumentLoader::setupForReplaceByMIMEType):
              * loader/mac/WebFormState.mm:
              (WebCore::FormState::FormState):
              * loader/mac/WebFrameLoader.h:
              * loader/mac/WebFrameLoader.mm:
              (WebCore::FrameLoader::~FrameLoader):
              (WebCore::FrameLoader::prepareForLoadStart):
              (WebCore::FrameLoader::finalSetupForReplace):
              (WebCore::FrameLoader::safeLoad):
              (WebCore::FrameLoader::load):
              (WebCore::FrameLoader::startLoading):
              (WebCore::FrameLoader::stopLoadingSubframes):
              (WebCore::FrameLoader::stopLoading):
              (WebCore::FrameLoader::cancelPendingArchiveLoad):
              (WebCore::FrameLoader::defersCallbacksChanged):
              (WebCore::FrameLoader::setDefersCallbacks):
              (WebCore::FrameLoader::setDocumentLoader):
              (WebCore::FrameLoader::provisionalLoadStarted):
              (WebCore::FrameLoader::clearProvisionalLoad):
              (WebCore::FrameLoader::identifierForInitialRequest):
              (WebCore::FrameLoader::willSendRequest):
              (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
              (WebCore::FrameLoader::didCancelAuthenticationChallenge):
              (WebCore::FrameLoader::didReceiveResponse):
              (WebCore::FrameLoader::didReceiveData):
              (WebCore::FrameLoader::didFinishLoad):
              (WebCore::FrameLoader::didFailToLoad):
              (WebCore::FrameLoader::privateBrowsingEnabled):
              (WebCore::FrameLoader::receivedMainResourceError):
              (WebCore::FrameLoader::clientRedirectCancelledOrFinished):
              (WebCore::FrameLoader::clientRedirected):
              (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
              (WebCore::FrameLoader::closeOldDataSources):
              (WebCore::FrameLoader::opened):
              (WebCore::FrameLoader::commitProvisionalLoad):
              (WebCore::FrameLoader::download):
              (WebCore::FrameLoader::finishedLoading):
              (WebCore::FrameLoader::notifyIconChanged):
              (WebCore::FrameLoader::cancelledError):
              (WebCore::FrameLoader::fileDoesNotExistError):
              (WebCore::FrameLoader::willUseArchive):
              (WebCore::FrameLoader::isArchiveLoadPending):
              (WebCore::FrameLoader::handleUnimplementablePolicy):
              (WebCore::FrameLoader::cannotShowMIMEType):
              (WebCore::FrameLoader::interruptionForPolicyChangeError):
              (WebCore::FrameLoader::canShowMIMEType):
              (WebCore::FrameLoader::representationExistsForURLScheme):
              (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
              (WebCore::FrameLoader::checkContentPolicy):
              (WebCore::FrameLoader::reloadAllowingStaleData):
              (WebCore::FrameLoader::reload):
              (WebCore::FrameLoader::didReceiveServerRedirectForProvisionalLoadForFrame):
              (WebCore::FrameLoader::finishedLoadingDocument):
              (WebCore::FrameLoader::committedLoad):
              (WebCore::FrameLoader::revertToProvisional):
              (WebCore::FrameLoader::setMainDocumentError):
              (WebCore::FrameLoader::mainReceivedCompleteError):
              (WebCore::FrameLoader::subframeIsLoading):
              (WebCore::FrameLoader::willChangeTitle):
              (WebCore::FrameLoader::didChangeTitle):
              (WebCore::FrameLoader::checkNewWindowPolicy):
              (WebCore::FrameLoader::continueAfterNewWindowPolicy):
              (WebCore::FrameLoader::checkNavigationPolicy):
              (WebCore::FrameLoader::continueAfterNavigationPolicy):
              (WebCore::FrameLoader::continueLoadRequestAfterNavigationPolicy):
              (WebCore::FrameLoader::didFirstLayout):
              (WebCore::FrameLoader::frameLoadCompleted):
              (WebCore::FrameLoader::transitionToCommitted):
              (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
              (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
              (WebCore::FrameLoader::sendRemainingDelegateMessages):
              (WebCore::FrameLoader::requestFromDelegate):
              (WebCore::FrameLoader::post):
              (WebCore::FrameLoader::detachChildren):
              (WebCore::FrameLoader::detachFromParent):
              (WebCore::FrameLoader::addExtraFieldsToRequest):
              (WebCore::FrameLoader::actionInformation):
              (WebCore::FrameLoader::checkLoadComplete):
              (WebCore::FrameLoader::setClient):
              (WebCore::FrameLoader::client):
              (WebCore::FrameLoaderClient::~FrameLoaderClient):
              * loader/mac/WebFrameLoaderClient.h:
              * loader/mac/WebLoader.mm:
              (WebCore::WebResourceLoader::frameLoader):
              * loader/mac/WebSubresourceLoader.mm:
              (-[WebCoreSubresourceHandle initWithLoader:]):
              * page/Frame.cpp:
              (WebCore::Frame::loader):
              * page/Frame.h:
              * platform/mac/SliderMac.mm:
              (Slider::focusPolicy):
      
      WebKit:
      
              Reviewed by Anders.
      
              - converted WebFrameLoaderClient to C++
              - renamed frame->frameLoader() function to frame->loader()
              - renamed [bridge impl] to [bridge _frame]
              - removed some bridge methods
      
              * Plugins/WebNetscapePluginStream.mm:
              * WebCoreSupport/WebEditorClient.mm:
              * WebCoreSupport/WebFrameLoaderClient.h: Added.
              (WebFrameLoaderClient::webFrame):
              * WebCoreSupport/WebFrameLoaderClient.mm: Added.
              (WebFrameLoaderClient::detachFrameLoader):
              (WebFrameLoaderClient::hasWebView):
              (WebFrameLoaderClient::hasFrameView):
              (WebFrameLoaderClient::hasBackForwardList):
              (WebFrameLoaderClient::resetBackForwardList):
              (WebFrameLoaderClient::provisionalItemIsTarget):
              (WebFrameLoaderClient::loadProvisionalItemFromPageCache):
              (WebFrameLoaderClient::invalidateCurrentItemPageCache):
              (WebFrameLoaderClient::privateBrowsingEnabled):
              (WebFrameLoaderClient::makeDocumentView):
              (WebFrameLoaderClient::makeRepresentation):
              (WebFrameLoaderClient::setDocumentViewFromPageCache):
              (WebFrameLoaderClient::forceLayout):
              (WebFrameLoaderClient::forceLayoutForNonHTML):
              (WebFrameLoaderClient::updateHistoryForCommit):
              (WebFrameLoaderClient::updateHistoryForBackForwardNavigation):
              (WebFrameLoaderClient::updateHistoryForReload):
              (WebFrameLoaderClient::updateHistoryForStandardLoad):
              (WebFrameLoaderClient::updateHistoryForInternalLoad):
              (WebFrameLoaderClient::updateHistoryAfterClientRedirect):
              (WebFrameLoaderClient::setCopiesOnScroll):
              (WebFrameLoaderClient::tokenForLoadErrorReset):
              (WebFrameLoaderClient::resetAfterLoadError):
              (WebFrameLoaderClient::doNotResetAfterLoadError):
              (WebFrameLoaderClient::detachedFromParent1):
              (WebFrameLoaderClient::detachedFromParent2):
              (WebFrameLoaderClient::detachedFromParent3):
              (WebFrameLoaderClient::detachedFromParent4):
              (WebFrameLoaderClient::loadedFromPageCache):
              (WebFrameLoaderClient::download):
              (WebFrameLoaderClient::dispatchIdentifierForInitialRequest):
              (WebFrameLoaderClient::dispatchWillSendRequest):
              (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
              (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
              (WebFrameLoaderClient::dispatchDidReceiveResponse):
              (WebFrameLoaderClient::dispatchDidReceiveContentLength):
              (WebFrameLoaderClient::dispatchDidFinishLoading):
              (WebFrameLoaderClient::dispatchDidFailLoading):
              (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
              (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
              (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
              (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
              (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
              (WebFrameLoaderClient::dispatchWillClose):
              (WebFrameLoaderClient::dispatchDidReceiveIcon):
              (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
              (WebFrameLoaderClient::dispatchDidReceiveTitle):
              (WebFrameLoaderClient::dispatchDidCommitLoad):
              (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
              (WebFrameLoaderClient::dispatchDidFailLoad):
              (WebFrameLoaderClient::dispatchDidFinishLoad):
              (WebFrameLoaderClient::dispatchDidFirstLayout):
              (WebFrameLoaderClient::dispatchCreatePage):
              (WebFrameLoaderClient::dispatchShow):
              (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
              (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
              (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
              (WebFrameLoaderClient::dispatchUnableToImplementPolicy):
              (WebFrameLoaderClient::dispatchWillSubmitForm):
              (WebFrameLoaderClient::dispatchDidLoadMainResource):
              (WebFrameLoaderClient::clearLoadingFromPageCache):
              (WebFrameLoaderClient::isLoadingFromPageCache):
              (WebFrameLoaderClient::revertToProvisionalState):
              (WebFrameLoaderClient::setMainDocumentError):
              (WebFrameLoaderClient::clearUnarchivingState):
              (WebFrameLoaderClient::progressStarted):
              (WebFrameLoaderClient::progressCompleted):
              (WebFrameLoaderClient::incrementProgress):
              (WebFrameLoaderClient::completeProgress):
              (WebFrameLoaderClient::setMainFrameDocumentReady):
              (WebFrameLoaderClient::startDownload):
              (WebFrameLoaderClient::willChangeTitle):
              (WebFrameLoaderClient::didChangeTitle):
              (WebFrameLoaderClient::committedLoad):
              (WebFrameLoaderClient::finishedLoading):
              (WebFrameLoaderClient::finalSetupForReplace):
              (WebFrameLoaderClient::cancelledError):
              (WebFrameLoaderClient::cannotShowURLError):
              (WebFrameLoaderClient::interruptForPolicyChangeError):
              (WebFrameLoaderClient::cannotShowMIMETypeError):
              (WebFrameLoaderClient::fileDoesNotExistError):
              (WebFrameLoaderClient::shouldFallBack):
              (WebFrameLoaderClient::mainFrameURL):
              (WebFrameLoaderClient::setDefersCallbacks):
              (WebFrameLoaderClient::willUseArchive):
              (WebFrameLoaderClient::isArchiveLoadPending):
              (WebFrameLoaderClient::cancelPendingArchiveLoad):
              (WebFrameLoaderClient::clearArchivedResources):
              (WebFrameLoaderClient::canHandleRequest):
              (WebFrameLoaderClient::canShowMIMEType):
              (WebFrameLoaderClient::representationExistsForURLScheme):
              (WebFrameLoaderClient::generatedMIMETypeForURLScheme):
              (WebFrameLoaderClient::elementForEvent):
              (WebFrameLoaderClient::createPolicyDecider):
              (WebFrameLoaderClient::frameLoadCompleted):
              (WebFrameLoaderClient::restoreScrollPositionAndViewState):
              (WebFrameLoaderClient::provisionalLoadStarted):
              (WebFrameLoaderClient::shouldTreatURLAsSameAsCurrent):
              (WebFrameLoaderClient::addHistoryItemForFragmentScroll):
              (WebFrameLoaderClient::didFinishLoad):
              (WebFrameLoaderClient::prepareForDataSourceReplacement):
              (WebFrameLoaderClient::createDocumentLoader):
              (WebFrameLoaderClient::setTitle):
              * WebKit.xcodeproj/project.pbxproj:
              * WebView/WebDataSource.mm:
              (-[WebDataSource webFrame]):
              * WebView/WebFrame.mm:
              (frame):
              (-[WebFrame _loadItem:withLoadType:]):
              (-[WebFrame _reloadForPluginChanges]):
              (-[WebFrame _initWithWebFrameView:webView:bridge:]):
              (-[WebFrame _frameLoader]):
              (-[WebFrame provisionalDataSource]):
              (-[WebFrame dataSource]):
              (-[WebFrame parentFrame]):
              (-[WebFrame _provisionalLoadStarted]):
              * WebView/WebFrameInternal.h:
              * WebView/WebHTMLRepresentation.m:
              (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
              * WebView/WebHTMLView.m:
              (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
              (-[NSArray validateUserInterfaceItem:]):
              (-[NSArray scrollWheel:]):
              (-[NSArray acceptsFirstMouse:]):
              (-[NSArray shouldDelayWindowOrderingForEvent:]):
              (-[NSArray _selectionStartFontAttributesAsRTF]):
              (-[NSArray changeBaseWritingDirection:]):
              (-[NSArray indent:]):
              (-[NSArray outdent:]):
              (-[WebHTMLView copy:]):
              (-[WebHTMLView cut:]):
              (-[WebHTMLView paste:]):
              * WebView/WebView.mm:
              (-[WebView _dashboardRegions]):
              (-[WebView setProhibitsMainFrameScrolling:]):
              (-[WebView _setInViewSourceMode:]):
              (-[WebView _inViewSourceMode]):
              (-[WebView setEditable:]):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17280 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1473b919
  20. 20 Oct, 2006 1 commit
  21. 13 Oct, 2006 1 commit
    • darin's avatar
      WebCore: · 9ab4ef2b
      darin authored
              Reviewed by Adele.
      
              - converted WebFormState from Objective-C to C++
      
              * WebCore.exp: Added a new symbol, changed one symbol from C to C++.
      
              * WebCore.xcodeproj/project.pbxproj: Made lots of headers "private" instead of "project".
              Added UChar.h and FrameLoaderTypes.h.
      
              * loader/FrameLoaderTypes.h: Added. Has enums from WebFrameLoader.h.
      
              * loader/mac/WebFormState.h: Converted class to C++.
              * loader/mac/WebFormState.mm: Ditto.
      
              * loader/mac/WebFrameLoader.h:
              * loader/mac/WebFrameLoader.mm:
              (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
              (-[WebFrameLoader continueFragmentScrollAfterNavigationPolicy:formState:]):
              (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]):
              (-[WebFrameLoader invalidatePendingPolicyDecisionCallingDefaultAction:]):
              (-[WebFrameLoader checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]):
              (-[WebFrameLoader continueAfterNewWindowPolicy:]):
              (-[WebFrameLoader checkNavigationPolicyForRequest:documentLoader:formState:andCall:withSelector:]):
              (-[WebFrameLoader continueAfterNavigationPolicy:]):
              (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]):
              (-[WebFrameLoader loadDocumentLoader:withLoadType:formState:]):
              (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
              (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
              Changed Objective-C WebFormState uses to C++ WebCore::FormState.
      
      WebKit:
      
              Reviewed by Adele.
      
              - converted WebFormState from Objective-C to C++
      
              * ForwardingHeaders: Added an entire copy of WebCore's forwarding headers here.
              We should eventually come up with a more-elegant solution.
      
              * WebKit.xcodeproj/project.pbxproj: Added ForwardingHeaders to the include paths.
              Converted many files from Objective-C to Objective-C++. In a later check-in, I'll
              rename them to .mm instead of .m. Removed C-only warning options for now. In a
              later check-in I will add these back in a way that omits them for C++.
      
              * Plugins/WebPluginContainerCheck.m: Updated for header changes.
      
              * WebView/WebFrameInternal.h: Updated for header changes. Removed WebFrameLoaderClient category
              so this file can still be used by Objective-C code (not just Objective-C++).
      
              * WebView/WebFrame.m: Put WebFrameLoaderClient category in here.
              (-[WebFrame _loadItem:withLoadType:]): Changed to use 0 instead of nil for FormState and fixed
              enum code for C++ compatibility.
              (-[WebFrame _initWithWebFrameView:webView:bridge:]): Added call to setFrameLoaderClient: here.
              (-[WebFrame _updateHistoryForCommit]): Fixed enum code for C++ compatibility.
              (-[WebFrame _updateHistoryForReload]): Ditto.
      
              * WebCoreSupport/WebFrameBridge.m:
              (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): Removed call to setFrameLoaderClient:.
              (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): Ditto.
              (-[WebFrameBridge _retrieveKeyboardUIModeFromPreferences:]): Fixed enum code for C++ compatibility.
              (-[WebFrameBridge runModal]): Changed code to not use "namespace" as a local variable name.
      
              * WebView/WebPDFView.m: Added extern "C" so this can compile as Objective-C++.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17029 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9ab4ef2b
  22. 10 Oct, 2006 2 commits
    • darin's avatar
      Rubber stamped by Maciej. · ecce3e9e
      darin authored
              - convert many of the loader source files to Objective-C++ to prepare
                to convert some of them to C++
      
              * WebCore.xcodeproj/project.pbxproj:
              * loader/mac/WebDataProtocol.m: Removed.
              * loader/mac/WebDocumentLoader.m: Removed.
              * loader/mac/WebFormState.m: Removed.
              * loader/mac/WebFrameLoader.m: Removed.
              * loader/mac/WebLoader.m: Removed.
              * loader/mac/WebMainResourceLoader.m: Removed.
              * loader/mac/WebNetscapePlugInStreamLoader.m: Removed.
              * loader/mac/WebPolicyDecider.m: Removed.
              * loader/mac/WebSubresourceLoader.m: Removed.
              * loader/mac/WebDataProtocol.mm: Added.
              * loader/mac/WebDocumentLoader.mm: Added.
              * loader/mac/WebFormState.mm: Added.
              * loader/mac/WebFrameLoader.mm: Added.
              * loader/mac/WebLoader.mm: Added.
              * loader/mac/WebMainResourceLoader.mm: Added.
              * loader/mac/WebNetscapePlugInStreamLoader.mm: Added.
              * loader/mac/WebPolicyDecider.mm: Added.
              * loader/mac/WebSubresourceLoader.mm: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@16973 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ecce3e9e
    • mjs's avatar
      WebCore: · b9c2c0e4
      mjs authored
              Rubber stamped by Eric.
      
              - moved a big honkin' pile of code over from WebKit; made minimal needed changes to compile
      
              * WebCore.exp:
              * WebCore.xcodeproj/project.pbxproj:
              * loader/mac/LoaderNSURLExtras.m: Added.
              * loader/mac/WebDataProtocol.m: Added.
              * loader/mac/WebDocumentLoader.m: Added.
              * loader/mac/WebFormDataStream.m: Added.
              * loader/mac/WebFrameLoader.m: Added.
              * loader/mac/WebLoader.m: Added.
              (-[NSURLProtocol didReceiveResponse:]):
              (-[NSURLProtocol didReceiveData:lengthReceived:allAtOnce:]):
              * loader/mac/WebMainResourceLoader.m: Added.
              (-[WebMainResourceLoader didReceiveResponse:]):
              * loader/mac/WebPolicyDecider.m: Added.
              * loader/mac/WebSubresourceLoader.h: Added.
              * loader/mac/WebSubresourceLoader.m: Added.
      
      WebKit:
      
              Rubber stamped by Eric.
              
              - moved a whole bunch of stuff over to WebCore - updated includes appropriately
      
              * Loader/LoaderNSURLExtras.h: Removed.
              * Loader/LoaderNSURLExtras.m: Removed.
              * Loader/WebDataProtocol.h: Removed.
              * Loader/WebDataProtocol.m: Removed.
              * Loader/WebDocumentLoader.h: Removed.
              * Loader/WebDocumentLoader.m: Removed.
              * Loader/WebFormDataStream.h: Removed.
              * Loader/WebFormDataStream.m: Removed.
              * Loader/WebFormState.h: Removed.
              * Loader/WebFormState.m: Removed.
              * Loader/WebFrameLoader.h: Removed.
              * Loader/WebFrameLoader.m: Removed.
              * Loader/WebFrameLoaderClient.h: Removed.
              * Loader/WebLoader.h: Removed.
              * Loader/WebLoader.m: Removed.
              * Loader/WebMainResourceLoader.h: Removed.
              * Loader/WebMainResourceLoader.m: Removed.
              * Loader/WebNetscapePlugInStreamLoader.h: Removed.
              * Loader/WebNetscapePlugInStreamLoader.m: Removed.
              * Loader/WebPlugInStreamLoaderDelegate.h: Removed.
              * Loader/WebPolicyDecider.h: Removed.
              * Loader/WebPolicyDecider.m: Removed.
              * Loader/WebSubresourceLoader.h: Removed.
              * Loader/WebSubresourceLoader.m: Removed.
              * Misc/WebNSURLExtras.m:
              * Plugins/WebBaseNetscapePluginStream.h:
              * Plugins/WebBaseNetscapePluginView.m:
              * Plugins/WebNetscapePluginStream.m:
              * Plugins/WebPluginContainerCheck.m:
              * Plugins/WebPluginController.m:
              * WebCoreSupport/WebFrameBridge.m:
              * WebKit.xcodeproj/project.pbxproj:
              * WebView/WebDataSource.m:
              * WebView/WebDocumentLoaderMac.h:
              * WebView/WebFrame.m:
              * WebView/WebFrameInternal.h:
              * WebView/WebHTMLView.m:
              * WebView/WebPolicyDeciderMac.h:
              * WebView/WebPolicyDelegate.m:
              * WebView/WebView.m:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@16967 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b9c2c0e4
  23. 09 Oct, 2006 1 commit
    • mjs's avatar
      Reviewed by Alice. · 95611588
      mjs authored
              - moved WebFormState into Loader directory and tweaked to void WebKit dependencies
              
              * Loader/WebDocumentLoader.h:
              * Loader/WebFormState.h: Added.
              * Loader/WebFormState.m: Added.
              (-[WebFormState initWithForm:values:sourceFrame:]):
              (-[WebFormState dealloc]):
              (-[WebFormState form]):
              (-[WebFormState values]):
              (-[WebFormState sourceFrame]):
              * Loader/WebFrameLoader.h:
              * Loader/WebFrameLoader.m:
              (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
              (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]):
              (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
              * WebKit.xcodeproj/project.pbxproj:
              * WebView/WebFrame.m:
              * WebView/WebFrameInternal.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@16926 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      95611588
  24. 06 Feb, 2006 1 commit
    • mjs's avatar
      Rubber stamped by Hyatt. · cf09000b
      mjs authored
              
              - renamed subproject directories to not end with .subproj
      
              * Carbon: renamed from Carbon.subproj
              * DOM: renamed from DOM.subproj
              * History: renamed from History.subproj
              * Misc: renamed from Misc.subproj
              * Panels: renamed from Panels.subproj
              * Plugins: renamed from Plugins.subproj
              * WebCoreSupport: renamed from WebCoreSupport.subproj
              * WebInspector: renamed from WebInspector.subproj
              * WebView: renamed from WebView.subproj
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12595 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cf09000b
  25. 15 Jan, 2006 1 commit
    • thatcher's avatar
      WebCore: · e3439707
      thatcher authored
              Reviewed by Darin.
      
              Support for the new DOM Inspector.
      
              * khtml/ecma/kjs_dom.cpp: exposes scrollIntoViewIfNeeded to JS
              * khtml/ecma/kjs_dom.h:
              * khtml/rendering/RenderText.cpp:
              (RenderText::lineBoxRects): returns text run rects
              * khtml/rendering/RenderText.h:
              * khtml/rendering/render_container.cpp:
              (RenderContainer::lineBoxRects): returns all child line box rects
              * khtml/rendering/render_container.h:
              * khtml/rendering/render_object.cpp:
              (RenderObject::lineBoxRects): returns an empty list
              * khtml/rendering/render_object.h:
              * khtml/xml/dom_elementimpl.cpp:
              (ElementImpl::scrollIntoViewIfNeeded): scrolls only if needed, bool decides to center to align to nearest edge
              * khtml/xml/dom_elementimpl.h: Ditto
              * kwq/DOM.mm:
              (-[DOMNode boundingBox]): returns the bounding box for a node
              (-[DOMNode lineBoxRects]): returns text runs for a node
              * kwq/DOMCore.h: added missing @protocol DOMEventListener and @class DOMEvent
              * kwq/DOMExtensions.h: removes methods that haven't been API reviewed
              * kwq/DOMPrivate.h: new pending public API added for the Inspector
      
      WebKit:
      
              Reviewed by Darin.
       
              New DOM Inspector that lives in WebKit and is accessible from any WebView.
              Accessible from a contextual menu when the WebKitEnableInspectElementContextMenuItem default is
              true or you have a development build. Browsing the tree, serialized HTML and CSS rules work.
       
              To always enable enter the following in the Terminal (change the bundle id to affect other WebKit apps):
              defaults write com.apple.Safari WebKitEnableInspectElementContextMenuItem -bool true
       
              http://bugzilla.opendarwin.org/show_bug.cgi?id=6571
      
              * English.lproj/Localizable.strings:
              * English.lproj/StringsNotToBeLocalized.txt: reorder of the entries
              * Misc.subproj/WebKitNSStringExtras.h:
              * Misc.subproj/WebKitNSStringExtras.m:
              (-[NSString _webkit_stringByCollapsingWhitespaceCharacters]): collapses consecutive whitespace into a single space
              * WebCoreSupport.subproj/WebFrameBridge.m:
              (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]): cleanup
              (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]): call the new UI delegate method
              * WebInspector.subproj: Added.
              * WebInspector.subproj/WebInspector.h: Added.
              * WebInspector.subproj/WebInspector.m: Added.
              (+[WebInspector sharedWebInspector]):
              (-[WebInspector init]):
              (-[WebInspector initWithWebFrame:]):
              (-[WebInspector dealloc]):
              (-[WebInspector window]):
              (-[WebInspector windowDidLoad]):
              (-[WebInspector windowWillClose:]):
              (-[WebInspector showWindow:]):
              (-[WebInspector setWebFrame:]):
              (-[WebInspector webFrame]):
              (-[WebInspector setRootDOMNode:]):
              (-[WebInspector rootDOMNode]):
              (-[WebInspector setFocusedDOMNode:]):
              (-[WebInspector focusedDOMNode]):
              (-[WebInspector setSearchQuery:]):
              (-[WebInspector searchQuery]):
              (-[WebInspector searchResults]):
              (-[WebInspector showOptionsMenu]):
              (-[WebInspector selectNewRoot:]):
              (-[WebInspector resizeTopArea:]):
              (-[WebInspector treeViewScrollTo:]):
              (-[WebInspector treeViewOffsetTop]):
              (-[WebInspector treeViewScrollHeight]):
              (-[WebInspector traverseTreeBackward]):
              (-[WebInspector traverseTreeForward]):
              (-[WebInspector _toggleIgnoreWhitespace:]):
              (-[WebInspector _highlightNode:]):
              (-[WebInspector _nodeHighlightExpired:]):
              (-[WebInspector _focusRootNode:]):
              (-[WebInspector _revealAndSelectNodeInTree:]):
              (-[WebInspector _showSearchResults:]):
              (-[WebInspector _refreshSearch]):
              (-[WebInspector _update]):
              (-[WebInspector _updateRoot]):
              (-[WebInspector _updateTreeScrollbar]):
              (+[WebInspector isSelectorExcludedFromWebScript:]):
              (+[WebInspector webScriptNameForSelector:]):
              (+[WebInspector isKeyExcludedFromWebScript:]):
              (-[WebInspector handleEvent:]):
              (-[WebInspector webView:didFinishLoadForFrame:]):
              (-[WebInspector webView:plugInViewWithArguments:]):
              (-[WebInspector outlineView:numberOfChildrenOfItem:]):
              (-[WebInspector outlineView:isItemExpandable:]):
              (-[WebInspector outlineView:child:ofItem:]):
              (-[WebInspector outlineView:objectValueForTableColumn:byItem:]):
              (-[WebInspector outlineView:willDisplayOutlineCell:forTableColumn:item:]):
              (-[WebInspector outlineViewItemDidCollapse:]):
              (-[WebInspector outlineViewSelectionDidChange:]):
              (-[WebInspectorPrivate dealloc]):
              (-[DOMHTMLElement _addClassName:]): Helper method for the Inspector to append style classes
              (-[DOMHTMLElement _removeClassName:]): Helper method for the Inspector to remove style classes
              (-[DOMNode _contentPreview]):
              (-[DOMNode _isAncestorOfNode:]):
              (-[DOMNode _isDescendantOfNode:]):
              (-[DOMNode _isWhitespace]):
              (-[DOMNode _lengthOfChildNodesIgnoringWhitespace]):
              (-[DOMNode _childNodeAtIndexIgnoringWhitespace:]):
              (-[DOMNode _nextSiblingSkippingWhitespace]):
              (-[DOMNode _previousSiblingSkippingWhitespace]):
              (-[DOMNode _firstChildSkippingWhitespace]):
              (-[DOMNode _lastChildSkippingWhitespace]):
              (-[DOMNode _firstAncestorCommonWithNode:]):
              (-[DOMNode _traverseNextNodeStayingWithin:]):
              (-[DOMNode _traverseNextNodeSkippingWhitespaceStayingWithin:]):
              (-[DOMNode _traversePreviousNode]):
              (-[DOMNode _traversePreviousNodeSkippingWhitespace]):
              (-[DOMNode _nodeTypeName]):
              (-[DOMNode _shortDisplayName]):
              (-[DOMNode _displayName]):
              * WebInspector.subproj/WebInspectorInternal.h: Added.
              * WebInspector.subproj/WebInspectorOutlineView.h: Added.
              * WebInspector.subproj/WebInspectorOutlineView.m: Added.
              (-[WebInspectorOutlineView isOpaque]):
              (-[WebInspectorOutlineView _highlightColorForCell:]):
              (-[WebInspectorOutlineView _highlightRow:clipRect:]):
              (-[WebInspectorOutlineView drawBackgroundInClipRect:]):
              * WebInspector.subproj/WebInspectorPanel.h: Added.
              * WebInspector.subproj/WebInspectorPanel.m: Added.
              (-[WebInspectorPanel canBecomeKeyWindow]):
              (-[WebInspectorPanel canBecomeMainWindow]):
              (-[WebInspectorPanel moveWindow:]):
              (-[WebInspectorPanel resizeWindow:]):
              (-[WebInspectorPanel sendEvent:]):
              * WebInspector.subproj/WebNodeHighlight.h: Added.
              * WebInspector.subproj/WebNodeHighlight.m: Added.
              (-[WebNodeHighlight initWithBounds:andRects:forView:]):
              (-[WebNodeHighlight dealloc]):
              (-[WebNodeHighlight fractionComplete]):
              (-[WebNodeHighlight expire]):
              (-[WebNodeHighlight redraw:]):
              * WebInspector.subproj/WebNodeHighlightView.h: Added.
              * WebInspector.subproj/WebNodeHighlightView.m: Added.
              (-[WebNodeHighlightView roundedRect:withRadius:]):
              (-[WebNodeHighlightView initWithHighlight:andRects:forView:]):
              (-[WebNodeHighlightView dealloc]):
              (-[WebNodeHighlightView isOpaque]):
              (-[WebNodeHighlightView drawRect:]):
              * WebInspector.subproj/webInspector: Added.
              * WebInspector.subproj/webInspector/Images: Added.
              * WebInspector.subproj/webInspector/Images/close.png: Added.
              * WebInspector.subproj/webInspector/Images/closePressed.png: Added.
              * WebInspector.subproj/webInspector/Images/downTriangle.png: Added.
              * WebInspector.subproj/webInspector/Images/menu.png: Added.
              * WebInspector.subproj/webInspector/Images/menuPressed.png: Added.
              * WebInspector.subproj/webInspector/Images/popupFill.png: Added.
              * WebInspector.subproj/webInspector/Images/popupFillPressed.png: Added.
              * WebInspector.subproj/webInspector/Images/popupLeft.png: Added.
              * WebInspector.subproj/webInspector/Images/popupLeftPressed.png: Added.
              * WebInspector.subproj/webInspector/Images/popupRight.png: Added.
              * WebInspector.subproj/webInspector/Images/popupRightPressed.png: Added.
              * WebInspector.subproj/webInspector/Images/rightTriangle.png: Added.
              * WebInspector.subproj/webInspector/Images/scrollThumbBottom.png: Added.
              * WebInspector.subproj/webInspector/Images/scrollThumbMiddle.png: Added.
              * WebInspector.subproj/webInspector/Images/scrollThumbTop.png: Added.
              * WebInspector.subproj/webInspector/Images/scrollTrackBottom.png: Added.
              * WebInspector.subproj/webInspector/Images/scrollTrackMiddle.png: Added.
              * WebInspector.subproj/webInspector/Images/scrollTrackTop.png: Added.
              * WebInspector.subproj/webInspector/Images/squareButtonRight.png: Added.
              * WebInspector.subproj/webInspector/Images/squareButtonRightPressed.png: Added.
              * WebInspector.subproj/webInspector/Images/upTriangle.png: Added.
              * WebInspector.subproj/webInspector/inspector.css: Added.
              * WebInspector.subproj/webInspector/inspector.html: Added.
              * WebInspector.subproj/webInspector/inspector.js: Added.
              * WebKit.xcodeproj/project.pbxproj: Adds Web Inspector files
              * WebView.subproj/WebUIDelegatePrivate.h: new UI delegate method to supply a replacement view for plugins
              * WebView.subproj/WebView.m:
              (-[WebView _menuForElement:defaultItems:]): Add a new context menu item for inspecting
              (-[WebView _inspectElement:]): Context menu item target for inspecting
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12122 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e3439707
  26. 14 Jan, 2006 1 commit
    • mjs's avatar
      WebCore: · e2913e52
      mjs authored
              Reviewed by Eric.
      
              - added bridging infrastructure for Page class
              
              The Page class itself is coming very soon.
      
              * WebCore.exp: Export WebCorePageBridge.
              * WebCore.xcodeproj/project.pbxproj: Add new files.
              * bridge/mac/WebCorePageBridge.h: Added.
              * bridge/mac/WebCorePageBridge.mm: Added.
              (-[WebCorePageBridge initWithMainFrame:]): Added new class, obvious
              (-[WebCorePageBridge dealloc]): ditto
              (-[WebCorePageBridge mainFrame]): ditto
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge init]): Fixed style a bit.
      
      WebKit:
      
              Reviewed by Eric.
      
              - added bridging infrastructure for Page class
              
              * WebCoreSupport.subproj/WebPageBridge.h: Added.
              * WebCoreSupport.subproj/WebPageBridge.m: Added.
              (-[WebPageBridge initWithMainFrameName:view:]): New class, somewhat obvious.
              * WebKit.xcodeproj/project.pbxproj:
              * WebView.subproj/WebView.m:
              (-[WebViewPrivate dealloc]): Don't use _mainFrameBrige, use _pageBridge
              (-[WebView _close]): ditto
              (-[WebView _commonInitializationWithFrameName:groupName:]): ditto
              (-[WebView mainFrame]): ditto
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12104 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e2913e52
  27. 05 Jun, 2005 1 commit
  28. 28 Jan, 2004 1 commit
    • sullivan's avatar
      Tests: · deb73251
      sullivan authored
              Reviewed by Dave.
      
              * Blot/blot-tasks.txt:
              Mentioned NSTextView's (and therefore Mail's) option-Escape behavior here
              since we will probably have to implement it also; clarified a comment.
      
      WebCore:
      
              Reviewed by Dave.
      
              * khtml/rendering/render_text.cpp:
              (RenderText::paintObject):
              Increment s in the while() clause so it is incremented even
              after a continue statement. This fixes an infinite loop I ran
              into in the printing code path at certain scaled print sizes
              on certain pages.
      
      WebKit:
      
              More header/footer work: refactored the header/footer code so it could
              be easily reused by other WebDocument classes; used it from WebImageView
              and WebTextView; removed the page count parameters because it's possible
              (though currently nasty, see 3543078) to determine this in the client.
      
              Reviewed by Dave.
      
              * Misc.subproj/WebNSPrintOperationExtras.h Added.
              * Misc.subproj/WebNSPrintOperationExtras.m Added.
              (-[NSPrintOperation _web_pageSetupScaleFactor]):
              new convenience method.
      
              * WebView.subproj/WebUIDelegatePrivate.h:
              Removed page index and page count parameters from delegate methods.
      
              * WebView.subproj/WebViewPrivate.h:
              New private category for header/footer printing methods so that different
              WebDocument methods can share almost all of the code.
      
              * WebView.subproj/WebView.m:
              (-[WebView _headerHeight]):
              (-[WebView _footerHeight]):
              (-[WebView _drawHeaderInRect:]):
              (-[WebView _drawFooterInRect:]):
              (-[WebView _adjustPrintingMarginsForHeaderAndFooter]):
              (-[WebView _drawHeaderAndFooter]):
              Moved all of these methods here, formerly in WebHTMLView. Removed the
              page index and page count parameters.
      
              * WebView.subproj/WebHTMLView.m:
              Removed all the header/footer code that's now in WebView.m, and the
              method that's now -[NSPrintOperation _web_pageSetupScaleFactor]
              (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
              call methods differently that have now been moved
              (-[WebHTMLView _scaleFactorForPrintOperation:]):
              ditto
              (-[WebHTMLView knowsPageRange:]):
              ditto
              (-[WebHTMLView drawPageBorderWithSize:]):
              now just turns around and calls -[WebView _drawHeaderAndFooter]
      
              * WebView.subproj/WebImageView.m:
              (-[WebImageView drawPageBorderWithSize:]):
              new method, just calls -[WebView _drawHeaderAndFooter]
              (-[WebImageView beginDocument]):
              now calls -[WebView _adjustPrintMarginsForHeaderAndFooter], also moved in file.
              (-[WebImageView endDocument]):
              just moved in file.
      
              * WebView.subproj/WebTextView.m:
              (-[WebTextView drawPageBorderWithSize:]):
              new method, just calls -[WebView _drawHeaderAndFooter]
              (-[WebTextView knowsPageRange:]):
              overridden to call -[WebView _adjustPrintMarginsForHeaderAndFooter]
      
              * WebKit.pbproj/project.pbxproj:
              updated for added files
      
      WebBrowser:
      
              Some header/footer cleanup.
      
              Reviewed by Dave.
      
              * BrowserWebViewPrinting.m:
              (-[BrowserWebView webView:drawHeaderInRect:]):
              Removed obsolete page index and count parameters.
              Use displayName rather than currentTitle because it works for all
              document types (currentTitle didn't work for plain text pages).
              (-[BrowserWebView webView:drawFooterInRect:]):
              Removed obsolete page index and count parameters.
              Did some AppKit hackery to get the total document page count in a way that
              works for any print operation. Now handles the case where the page count
              is unknown (by printing "Page <x>" instead of "Page <x> of <n>"). Also added
              a 1 pixel offset to the footer's baseline to work around AppKit bug where
              the descenders in the footer were getting slightly clipped at some scale
              factors.
      
              * English.lproj/Localizable.strings:
              updated for these changes
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@6004 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      deb73251