2007-10-20 Rodney Dawes <dobey@wayofthemonkey.com>
[WebKit-https.git] / WebCore / ChangeLog
1 2007-10-20  Rodney Dawes  <dobey@wayofthemonkey.com>
2
3         Reviewd by Darin.
4
5         http://bugs.webkit.org/show_bug.cgi?id=15563
6         Fix conflict with X11 Window type in WebCore
7
8         * WebCore/bindings/js/JSDocumentCustom.cpp:
9         * WebCore/bindings/js/JSHTMLDocumentCustom.cpp:
10         * WebCore/bindings/js/JSHTMLFrameSetElementCustom.cpp:
11         * WebCore/bindings/js/kjs_dom.cpp:
12         * WebCore/bindings/js/kjs_events.cpp:
13         * WebCore/bindings/js/kjs_proxy.cpp:
14         * WebCore/history/CachedPage.cpp:
15         * WebCore/page/Chrome.cpp:
16         * WebCore/page/Frame.cpp:
17
18 2007-10-20  Simon Hausmann  <hausmann@kde.org>
19
20         Build fix, not reviewed.
21
22         Fix the Qt build by adding the two missing FileSystem functions.
23
24         * platform/qt/FileSystemQt.cpp:
25         (WebCore::makeAllDirectories):
26         (WebCore::pathByAppendingComponent):
27
28 2007-10-19  Alp Toker  <alp@atoker.com>
29
30         Reviewed by Oliver.
31
32         GTK+ build fix enabling the new local database storage feature.
33         There is also a prospective Qt build fix.
34
35         * WebCore.pro:
36         * bindings/js/JSDatabaseCustom.cpp:
37         * platform/gtk/FileSystemGtk.cpp:
38         (WebCore::pathByAppendingComponent):
39         (WebCore::makeAllDirectories):
40
41 2007-10-19  Andrew Wellington  <proton@wiretapped.net>
42
43         Reviewed by Brady Eidson.
44
45         Mac build fix.
46
47         * WebCore.xcodeproj/project.pbxproj:
48
49 2007-10-19  Alp Toker  <alp@atoker.com>
50
51         Reviewed by Oliver.
52
53         Use platform colors for text selection.
54         Update the cache when the GTK style is changed.
55
56         * platform/gtk/RenderThemeGtk.cpp:
57         (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
58         (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
59         (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
60         (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
61         (WebCore::RenderThemeGtk::gtkStyleSet):
62         (WebCore::RenderThemeGtk::gtkEntry):
63         * platform/gtk/RenderThemeGtk.h:
64
65 2007-10-19  Adele Peterson  <adele@apple.com>
66
67         Reviewed by Beth.
68
69         Fix for: <rdar://problem/5518461> REGRESSION (2.0.4-3): Popup arrows are missing in small popups at homedepot.com
70
71         Test: fast/forms/menulist-no-overflow.html
72
73         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::setStyle): Don't allow overflow on menu lists.
74
75 2007-10-19  Anders Carlsson  <andersca@apple.com>
76
77         Reviewed by Brady.
78
79         Move some SQL-related classes to platform/sql.
80         
81         * WebCore.vcproj/WebCore.vcproj:
82         * WebCore.xcodeproj/project.pbxproj:
83         * loader/icon/SQLDatabase.cpp: Removed.
84         * loader/icon/SQLDatabase.h: Removed.
85         * loader/icon/SQLStatement.cpp: Removed.
86         * loader/icon/SQLStatement.h: Removed.
87         * loader/icon/SQLTransaction.cpp: Removed.
88         * loader/icon/SQLTransaction.h: Removed.
89         * platform/sql/SQLDatabase.cpp: Copied from loader/icon/SQLDatabase.cpp.
90         * platform/sql/SQLDatabase.h: Copied from loader/icon/SQLDatabase.h.
91         * platform/sql/SQLStatement.cpp: Copied from loader/icon/SQLStatement.cpp.
92         * platform/sql/SQLStatement.h: Copied from loader/icon/SQLStatement.h.
93         * platform/sql/SQLTransaction.cpp: Copied from loader/icon/SQLTransaction.cpp.
94         * platform/sql/SQLTransaction.h: Copied from loader/icon/SQLTransaction.h.
95
96 2007-10-19  Anders Carlsson  <andersca@apple.com>
97
98         Reviewed by Adam.
99
100         Update to match the latest version of the spec. Now, executeSQL takes an array
101         of SQL parameters instead of them being passed as arguments.
102         
103         * bindings/js/JSDatabaseCustom.cpp:
104         (WebCore::JSDatabase::executeSql):
105         * page/inspector/DatabasePanel.js:
106         * storage/Database.idl:
107
108 2007-10-19  Brady Eidson  <beidson@apple.com>
109
110         Reviewed by Tim
111
112         Tiger's SQLite doesn't support CREATE TABLE IF NOT EXISTS :(
113
114         * storage/Database.cpp:
115         (WebCore::Database::performOpenAndVerify):
116         * storage/DatabaseTracker.cpp:
117         (WebCore::DatabaseTracker::DatabaseTracker):
118
119 2007-10-19  Anders Carlsson  <andersca@apple.com>
120
121         Release build fix.
122         
123         * WebCore.vcproj/WebCore.vcproj:
124
125 2007-10-19  Brady Eidson  <beidson@apple.com>
126
127         Remove stray printfs
128
129         * dom/Document.cpp:
130         (WebCore::Document::Document):
131         (WebCore::Document::~Document):
132
133 2007-10-19  Anders Carlsson  <andersca@apple.com>
134
135         Reviewed by Brady.
136
137         Apparently the Win32 pthreads impl we use does not allow unlocking a mutex that has not
138         already been locked, so lock the mutex first.
139         
140         * storage/DatabaseThread.cpp:
141         (WebCore::DatabaseThread::databaseThread):
142
143 2007-10-19  Brady Eidson  <beidson@apple.com>
144
145         Better build fix
146
147         * loader/icon/SQLDatabase.cpp:
148         (WebCore::SQLDatabase::authorizerFunction):  Definite works by 3.3.13
149
150 2007-10-19  Brady Eidson  <beidson@apple.com>
151
152         Build fix
153
154         * loader/icon/SQLDatabase.cpp:
155         (WebCore::SQLDatabase::authorizerFunction): I don't know *when* these constants were
156           added to SQLite, but I know they were by 3.4.0
157
158 2007-10-19  Brady Eidson  <beidson@apple.com>
159         Reviewed by Anders
160
161         Windows specific changes, as well as renaming Queue -> Deque
162
163         * ForwardingHeaders/wtf/Deque.h: Added.
164         * ForwardingHeaders/wtf/Queue.h: Removed.
165         * platform/win/FileSystemWin.cpp:
166         (WebCore::fileSize):
167         (WebCore::fileExists):
168         (WebCore::deleteFile):
169         (WebCore::pathByAppendingComponent):
170         (WebCore::fileSystemRepresentation):
171         (WebCore::makeAllDirectories):
172         (WebCore::homeDirectoryPath):
173         * storage/Database.h:
174         * storage/DatabaseThread.cpp:
175         (WebCore::DatabaseThread::documentGoingAway):
176         (WebCore::DatabaseThread::databaseGoingAway):
177         (WebCore::DatabaseThread::dispatchNextTaskIdentifier):
178         (WebCore::DatabaseThread::scheduleTask):
179         (WebCore::DatabaseThread::scheduleImmediateTask):
180         * storage/DatabaseThread.h:
181
182 2007-10-19  Brady Eidson <beidson@apple.com>
183
184         Reviewed by Tim and Anders
185
186         Preliminary support for HTML5 local database storage (http://www.whatwg.org/specs/web-apps/current-work/)
187
188         The specification is still in flux but the fundamentals are pretty solid and we can start using and testing 
189         this implementation even while filing bugs to track changes in the spec as it becomes more final
190
191         There are some implementation details in this patch that seem unused or useless, but they remain in place 
192         while the spec is in flux and might go one way or another.
193
194         * platform/Logging.cpp: Add StorageAPI logging channel
195         * platform/Logging.h:
196
197         * storage/Database.cpp: Added.
198         (WebCore::Database::databaseInfoTableName):
199         (WebCore::databaseVersionKey):
200         (WebCore::Database::openDatabase): C++ version of the window.openDatabase() javascript API
201         (WebCore::Database::Database):
202         (WebCore::Database::~Database):
203         (WebCore::Database::openAndVerifyVersion):
204         (WebCore::retrieveTextResultFromDatabase):
205         (WebCore::Database::getVersionFromDatabase):
206         (WebCore::setTextValueInDatabase):
207         (WebCore::Database::setVersionInDatabase):
208         (WebCore::Database::databaseThreadGoingAway): May be removed in the future
209         (WebCore::Database::disableAuthorizer): For internal (WebInspector) use to get around the authorizer's restrictions
210         (WebCore::Database::enableAuthorizer):
211         (WebCore::Database::guidForOriginAndName): Candidate for refactoring and/or moving to the database tracker.  
212           The GUID for each database identifier is currently for tracking the database version, but might be rescoped in the future
213         (WebCore::Database::resetAuthorizer):
214         (WebCore::Database::performPolicyChecks): Currently, the only post-executeSql policy check planned is the origin size usage 
215         (WebCore::Database::scheduleDatabaseCallback):
216         (WebCore::Database::performOpenAndVerify): 
217         (WebCore::Database::performChangeVersion):
218         (WebCore::Database::performExecuteSql):
219         (WebCore::Database::performCloseTransaction):
220         (WebCore::Database::performGetTableNames):
221         (WebCore::Database::version): C++ version of the javascript API
222         (WebCore::Database::changeVersion): Ditto
223         (WebCore::Database::executeSql): Ditto
224         (WebCore::Database::closeTransaction): Ditto
225         (WebCore::Database::tableNames): For internal (WebInspector) use
226         (WebCore::Database::deliverAllPendingCallbacks):
227         (WebCore::Database::deliverPendingCallbacks):
228         * storage/Database.h: Added.
229         (WebCore::Database::databaseDebugName): For debug logging purposes
230         * storage/Database.idl: Added.
231
232         * storage/DatabaseAuthorizer.cpp: Added.
233           The DatabaseAuthorizer is used to both prevent the script from doing "illegal" things in sql as well as
234           tracking when effects certain sql statements might have (such as increasing the size of the database)
235         (WebCore::DatabaseAuthorizer::DatabaseAuthorizer):
236         (WebCore::DatabaseAuthorizer::reset):
237         (WebCore::DatabaseAuthorizer::createTable):
238         (WebCore::DatabaseAuthorizer::createTempTable):
239         (WebCore::DatabaseAuthorizer::dropTable):
240         (WebCore::DatabaseAuthorizer::dropTempTable):
241         (WebCore::DatabaseAuthorizer::allowAlterTable):
242         (WebCore::DatabaseAuthorizer::createIndex):
243         (WebCore::DatabaseAuthorizer::createTempIndex):
244         (WebCore::DatabaseAuthorizer::dropIndex):
245         (WebCore::DatabaseAuthorizer::dropTempIndex):
246         (WebCore::DatabaseAuthorizer::createTrigger):
247         (WebCore::DatabaseAuthorizer::createTempTrigger):
248         (WebCore::DatabaseAuthorizer::dropTrigger):
249         (WebCore::DatabaseAuthorizer::dropTempTrigger):
250         (WebCore::DatabaseAuthorizer::createVTable):
251         (WebCore::DatabaseAuthorizer::dropVTable):
252         (WebCore::DatabaseAuthorizer::allowDelete):
253         (WebCore::DatabaseAuthorizer::allowInsert):
254         (WebCore::DatabaseAuthorizer::allowUpdate):
255         (WebCore::DatabaseAuthorizer::allowRead):
256         (WebCore::DatabaseAuthorizer::allowAnalyze):
257         (WebCore::DatabaseAuthorizer::allowPragma):
258         (WebCore::DatabaseAuthorizer::allowAttach):
259         (WebCore::DatabaseAuthorizer::allowDetach):
260         (WebCore::DatabaseAuthorizer::allowFunction):
261         (WebCore::DatabaseAuthorizer::disable):
262         (WebCore::DatabaseAuthorizer::enable):
263         (WebCore::DatabaseAuthorizer::denyBasedOnTableName): Don't allow access to the __WebKit meta info table as
264           it should be invisible to scripts
265         * storage/DatabaseAuthorizer.h: Added.
266         (WebCore::DatabaseAuthorizer::lastActionWasInsert):
267         (WebCore::DatabaseAuthorizer::lastActionIncreasedSize):
268
269         * storage/DatabaseCallback.cpp: Added.
270           Generic item to queue up for callbacks on the main thread for database activities that take place on 
271           a secondary thread
272         (WebCore::DatabaseChangeVersionCallback::DatabaseChangeVersionCallback):
273         (WebCore::DatabaseChangeVersionCallback::performCallback):
274         (WebCore::DatabaseExecuteSqlCallback::DatabaseExecuteSqlCallback):
275         (WebCore::DatabaseExecuteSqlCallback::performCallback):
276         * storage/DatabaseCallback.h: Added.
277         (WebCore::DatabaseCallback::~DatabaseCallback):
278         (WebCore::DatabaseChangeVersionCallback::~DatabaseChangeVersionCallback):
279         (WebCore::DatabaseExecuteSqlCallback::~DatabaseExecuteSqlCallback):
280
281         * storage/DatabaseTask.h: Added.
282           Generic work-item to be queued up on the background database thread
283         (WebCore::DatabaseTask::isComplete):
284         (WebCore::DatabaseOpenTask::exceptionCode):
285         (WebCore::DatabaseOpenTask::openSuccessful):
286         (WebCore::DatabaseTableNamesTask::tableNames):
287         * storage/DatabaseTask.cpp: Added.
288         (WebCore::DatabaseTask::DatabaseTask):
289         (WebCore::DatabaseTask::~DatabaseTask):
290         (WebCore::DatabaseTask::performTask):
291         (WebCore::DatabaseTask::lockForSynchronousScheduling): Used when the main thread needs this task accomplished 
292           synchronously
293         (WebCore::DatabaseTask::waitForSynchronousCompletion):
294
295         (WebCore::DatabaseOpenTask::DatabaseOpenTask):
296         (WebCore::DatabaseOpenTask::doPerformTask):
297
298         (WebCore::DatabaseExecuteSqlTask::DatabaseExecuteSqlTask):
299         (WebCore::DatabaseExecuteSqlTask::doPerformTask):
300
301         (WebCore::DatabaseChangeVersionTask::DatabaseChangeVersionTask):
302         (WebCore::DatabaseChangeVersionTask::doPerformTask):
303
304         (WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask):
305         (WebCore::DatabaseTableNamesTask::doPerformTask):
306
307         * storage/DatabaseThread.cpp: Added.
308           The current design is that each Document will have its own DatabaseThread.  This makes scripts on each
309           individual document more response at the cost of adding more threads and potentially creating concurrency
310           issues when the same database is open twice from two different documents
311         (WebCore::DatabaseThread::DatabaseThread):
312         (WebCore::DatabaseThread::~DatabaseThread):
313         (WebCore::DatabaseThread::start):
314         (WebCore::DatabaseThread::documentGoingAway): Called to shut the thread down when the document is destroyed
315         (WebCore::DatabaseThread::databaseGoingAway): Remove all pending tasks for this database
316         (WebCore::DatabaseThread::databaseThreadStart):
317         (WebCore::DatabaseThread::databaseThread):
318         (WebCore::DatabaseThread::dispatchNextTaskIdentifier):
319         (WebCore::DatabaseThread::scheduleTask):
320         (WebCore::DatabaseThread::scheduleImmediateTask): Schedule a task that gets to "cut to the front of the line" when
321           the main thread requires a task be performed synchronously
322         (WebCore::DatabaseThread::wakeWorkThread):
323         * storage/DatabaseThread.h: Added.
324
325         * storage/DatabaseTracker.cpp: Added.
326           The DatabaseTracker is the master management of all databases.  It will keep track of the filename for a given
327           unique database, keep track of the total disk usage per-origin, and policys per database/origin
328         (WebCore::DatabaseTracker::setDatabasePath):
329         (WebCore::DatabaseTracker::databasePath):
330         (WebCore::DatabaseTracker::tracker):
331         (WebCore::DatabaseTracker::DatabaseTracker):
332         (WebCore::DatabaseTracker::fullPathForDatabase):
333         (WebCore::DatabaseTracker::populateOrigins):
334         (WebCore::DatabaseTracker::origins):
335         (WebCore::DatabaseTracker::databaseNamesForOrigin):
336         (WebCore::DatabaseTracker::addDatabase):
337         (WebCore::DatabaseTracker::deleteAllDatabases):
338         (WebCore::DatabaseTracker::deleteAllDatabasesForOrigin):
339         * storage/DatabaseTracker.h: Added.
340
341         * storage/SQLCallback.h: Added. C++ version of the javascript executeSql() callback
342         (WebCore::SQLCallback::~SQLCallback):
343         * storage/SQLCallback.idl: Added.
344
345         * storage/SQLResultSet.cpp: Added. C++ version of the javascript SQLResultSet object
346         (WebCore::SQLResultSet::SQLResultSet):
347         (WebCore::SQLResultSet::insertId):
348         (WebCore::SQLResultSet::rowsAffected):
349         (WebCore::SQLResultSet::errorCode):
350         (WebCore::SQLResultSet::error):
351         (WebCore::SQLResultSet::rows):
352         (WebCore::SQLResultSet::setInsertId):
353         (WebCore::SQLResultSet::setRowsAffected):
354         (WebCore::SQLResultSet::setErrorCode):
355         (WebCore::SQLResultSet::setErrorMessage):
356         * storage/SQLResultSet.h: Added.
357         * storage/SQLResultSet.idl: Added.
358
359         * storage/SQLResultSetRowList.cpp: Added. C++ version of the javascript SQLResultSetRowList object
360         (WebCore::SQLResultSetRowList::length):
361         * storage/SQLResultSetRowList.h: Added.
362         (WebCore::SQLResultSetRowList::columnNames):
363         (WebCore::SQLResultSetRowList::values):
364         (WebCore::SQLResultSetRowList::addColumn):
365         (WebCore::SQLResultSetRowList::addResult):
366         * storage/SQLResultSetRowList.idl: Added.
367
368         * storage/VersionChangeCallback.h: Added. C++ version of the javascript changeVersion() callback
369         (WebCore::VersionChangeCallback::~VersionChangeCallback):
370         * storage/VersionChangeCallback.idl: Added.
371
372 2007-10-19  Brady Eidson <beidson@apple.com>
373
374         Reviewed by Oliver + Same
375
376         Forwarding header for the new wtf/Queue.h
377
378         * ForwardingHeaders/wtf/Queue.h: Added.
379
380 2007-10-19  Anders Carlsson <beidson@apple.com>
381
382         Reviewed by Sam Weinig
383
384         Most of the Javascript binding support for the Storage API
385
386         * bindings/js/JSCustomSQLCallback.cpp: Added.
387         (WebCore::JSCustomSQLCallback::JSCustomSQLCallback):
388         (WebCore::JSCustomSQLCallback::handleEvent):
389         * bindings/js/JSCustomSQLCallback.h: Added.
390                 Add JSCustomSQLCallback which is an SQLCallback implementation that dispatches
391                 handleEvent to a JS function or a JS object with a handleEvent function.
392
393         * bindings/js/JSCustomVersionChangeCallback.cpp: Added.
394         (WebCore::JSCustomVersionChangeCallback::JSCustomVersionChangeCallback):
395         (WebCore::JSCustomVersionChangeCallback::handleEvent):
396         * bindings/js/JSCustomVersionChangeCallback.h: Added.
397                 Add JSCustomSQLCallback which is an SQLCallback implementation that dispatches
398                 handleEvent to a JS function or a JS object with a handleEvent function.
399
400         * bindings/js/JSDatabaseCustom.cpp: Added.
401         (WebCore::JSDatabase::executeSql):
402                 Custom implementation of executeSql that takes an array of parameters.
403                 
404         (WebCore::JSDatabase::changeVersion):
405                 Custom implementation of changeVersion.
406                 
407         * bindings/js/JSSQLResultSetRowListCustom.cpp: Added.
408         (WebCore::JSSQLResultSetRowList::item):
409                 Custom method that returns a JS object that corresponds to a given row in the database.
410
411         * bindings/scripts/CodeGeneratorJS.pm:
412
413         * page/DOMWindow.cpp:
414         (WebCore::DOMWindow::openDatabase):
415         * page/DOMWindow.h:
416         * page/DOMWindow.idl:
417                 Add openDatabase implementation.
418
419 2007-10-19  Brady Eidson <beidson@apple.com>
420
421         Reviewed by Oliver
422
423         Added tons of utility to the FileSystem abstractions, including moving
424         some stuff over from IconDatabase
425
426         * platform/FileSystem.h:
427
428         * platform/cf/FileSystemCF.cpp: Added.
429         (WebCore::fileSystemRepresentation):
430
431         * platform/mac/FileSystemMac.mm:
432
433         * platform/posix/FileSystemPOSIX.cpp: Added.
434         (WebCore::fileExists):
435         (WebCore::deleteFile):
436         (WebCore::fileSize):
437         (WebCore::pathByAppendingComponent):
438         (WebCore::makeAllDirectories):
439
440 2007-10-19  Timothy Hatcher  <timothy@apple.com>
441
442         Reviewed by Adam Roben
443
444         Preliminary Web Inspector support for the Storage API
445         (This patch does not include the support artwork)
446
447         * page/InspectorController.cpp:
448         (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
449         (WebCore::InspectorDatabaseResource::setScriptObject):
450         (WebCore::databaseTableNames): Return the table names for a Database object.
451         (WebCore::InspectorController::setWindowVisible):
452         (WebCore::InspectorController::windowScriptObjectAvailable):
453         (WebCore::InspectorController::populateScriptResources):
454         (WebCore::InspectorController::addDatabaseScriptResource): Add the script object for the database.
455         (WebCore::InspectorController::removeDatabaseScriptResource): Remove the script object for the database.
456         (WebCore::InspectorController::clearDatabaseScriptResources): Remove all the database resources.
457         (WebCore::InspectorController::didCommitLoad): Call clearDatabaseScriptResources().
458         (WebCore::InspectorController::didOpenDatabase): Make a new InspectorDatabaseResource and add it to m_databaseResources.
459         * page/InspectorController.h:
460         * page/inspector/Database.js: Added.
461         * page/inspector/DatabasePanel.js: Added.
462         * page/inspector/ResourceCategory.js: Make resource categories assume less about the resource.
463         * page/inspector/inspector.css: Add styles for the database panel.
464         * page/inspector/inspector.html: Include DatabasePanel.js
465         * page/inspector/inspector.js: Support for adding and removing Database resources.
466
467 2007-10-19  Brady Eidson <beidson@apple.com>
468
469         Reviewed by Tim Hatcher
470
471         Added support for Chrome prompts required by the Storage API
472
473         * page/Chrome.cpp:
474         (WebCore::Chrome::runDatabaseSizeLimitPrompt):
475         * page/Chrome.h:
476         * page/ChromeClient.h:
477         * platform/graphics/svg/SVGImageEmptyClients.h:
478
479 2007-10-19  Brady Eidson <beidson@apple.com>
480
481         Contributions and Review by Anders
482
483         Various SQLite tweaks in preparation for the storage API
484
485         * loader/icon/SQLDatabase.cpp:
486         (WebCore::SQLDatabase::~SQLDatabase):
487         (WebCore::SQLDatabase::authorizerFunction): Static callback from sqlite for authorizer functions
488         (WebCore::SQLDatabase::setAuthorizer):
489         (WebCore::SQLDatabase::lock):
490         (WebCore::SQLDatabase::unlock):
491         * loader/icon/SQLDatabase.h:
492
493         * loader/icon/SQLStatement.cpp:
494         (WebCore::SQLStatement::prepare): Switch to prepare16_v2
495         (WebCore::SQLStatement::bindDouble): Added
496         (WebCore::SQLStatement::bindValue): Bind a wrapped SQLValue object (described later)
497         (WebCore::SQLStatement::bindParameterCount): Accessor to the sqlite3 API for validating statements
498         * loader/icon/SQLStatement.h:
499         (WebCore::SQLStatement::isPrepared):
500
501         * platform/sql/SQLAuthorizer.cpp: Added.  Fully virtual interface to implement your own SQLite authorizer
502         * platform/sql/SQLAuthorizer.h: Added.
503         (WebCore::SQLAuthorizer::~SQLAuthorizer):
504         (WebCore::SQLAuthorizer::createTable):
505         (WebCore::SQLAuthorizer::createTempTable):
506         (WebCore::SQLAuthorizer::dropTable):
507         (WebCore::SQLAuthorizer::dropTempTable):
508         (WebCore::SQLAuthorizer::allowAlterTable):
509         (WebCore::SQLAuthorizer::createIndex):
510         (WebCore::SQLAuthorizer::createTempIndex):
511         (WebCore::SQLAuthorizer::dropIndex):
512         (WebCore::SQLAuthorizer::dropTempIndex):
513         (WebCore::SQLAuthorizer::createTrigger):
514         (WebCore::SQLAuthorizer::createTempTrigger):
515         (WebCore::SQLAuthorizer::dropTrigger):
516         (WebCore::SQLAuthorizer::dropTempTrigger):
517         (WebCore::SQLAuthorizer::createView):
518         (WebCore::SQLAuthorizer::createTempView):
519         (WebCore::SQLAuthorizer::dropView):
520         (WebCore::SQLAuthorizer::dropTempView):
521         (WebCore::SQLAuthorizer::createVTable):
522         (WebCore::SQLAuthorizer::dropVTable):
523         (WebCore::SQLAuthorizer::allowDelete):
524         (WebCore::SQLAuthorizer::allowInsert):
525         (WebCore::SQLAuthorizer::allowUpdate):
526         (WebCore::SQLAuthorizer::allowTransaction):
527         (WebCore::SQLAuthorizer::allowSelect):
528         (WebCore::SQLAuthorizer::allowRead):
529         (WebCore::SQLAuthorizer::allowAttach):
530         (WebCore::SQLAuthorizer::allowDetach):
531         (WebCore::SQLAuthorizer::allowReindex):
532         (WebCore::SQLAuthorizer::allowAnalyze):
533         (WebCore::SQLAuthorizer::allowFunction):
534
535         * platform/sql/SQLValue.cpp: Added.  Contains a value for a SQLite database that can be one of a few types.  
536           For now, just a String or a double
537         (WebCore::SQLValue::SQLValue):
538         (WebCore::SQLValue::string):
539         (WebCore::SQLValue::number):
540         * platform/sql/SQLValue.h: Added.
541         (WebCore::SQLValue::):
542         (WebCore::SQLValue::SQLValue):
543         (WebCore::SQLValue::type):
544
545 2007-10-19  Brady Eidson <beidson@apple.com>
546
547         Reviewed by Maciej
548
549         Changed IconDatabase over to use new FileSystem apis
550
551         * loader/icon/IconDatabase.cpp:
552         (WebCore::IconDatabase::open):
553
554 2007-10-19  David Hyatt  <hyatt@apple.com>
555
556         Fix for ebay parser crash.
557
558         Reviewed by Beth
559
560         fast/invalid/table-residual-style-crash.html added as a test
561
562         * html/HTMLParser.cpp:
563         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
564
565 2007-10-19  Sam Weinig  <sam@webkit.org>
566
567         Fix Windows, Qt and GTK builds.
568
569         * WebCore.pro:
570         * WebCore.vcproj/WebCore.vcproj:
571
572 2007-10-19  Sam Weinig  <sam@webkit.org>
573
574         Reviewed by Darin.
575
576         Encapsulate the same origin check into the new SecurityOrigin class.
577
578         * WebCore.xcodeproj/project.pbxproj:
579         * bindings/js/kjs_window.cpp:
580         (KJS::Window::isSafeScript):
581         * dom/Document.cpp:
582         (WebCore::Document::Document):
583         (WebCore::Document::defaultEventHandler):
584         * dom/Document.h:
585         (WebCore::Document::securityOrigin):
586         * loader/FrameLoader.cpp:
587         (WebCore::FrameLoader::begin):
588         (WebCore::FrameLoader::setOpener):
589         * loader/FrameLoader.h:
590         * platform/SecurityOrigin.cpp: Added.
591         (WebCore::SecurityOrigin::SecurityOrigin):
592         (WebCore::SecurityOrigin::clear):
593         (WebCore::SecurityOrigin::isEmpty):
594         (WebCore::SecurityOrigin::setForFrame):
595         (WebCore::SecurityOrigin::setDomainFromDOM):
596         (WebCore::SecurityOrigin::allowsAccessFrom):
597         (WebCore::SecurityOrigin::isSecureTransitionTo):
598         * platform/SecurityOrigin.h: Added.
599
600 2007-10-19  Simon Hausmann  <hausmann@kde.org>
601
602         Fix the Qt/Windows build: Added missing FontSelector.h include.
603
604         * platform/qt/FontQt.cpp:
605
606 2007-10-19  Simon Hausmann  <hausmann@kde.org>
607
608         Reviewed by Lars.
609
610         Qt/Windows build fix: Threading.h uses int32_t but doesn't include stdint.h.
611
612         * platform/Threading.h:
613
614 2007-10-19  Simon Hausmann  <hausmann@kde.org>
615
616         Reviewed by Lars.
617
618         Fix the Qt/Windows build, don't use cat but use the perl print trick
619         instead.
620
621         * WebCore.pro:
622
623 2007-10-18  Justin Garcia  <justin.garcia@apple.com>
624
625         Reviewed by Kevin McCullough.
626
627         <rdar://problem/5483526> 
628         GoogleDocs: A hang occurs when applying list styling to a selection containing a table and line breaks
629
630         * editing/TextIterator.cpp:
631         (WebCore::TextIterator::exitNode): For selection preservation, we must emit a character
632         between every VisiblePosition.  We weren't emitting a space after some tables, because
633         we won't try to emit a space if shouldEmitNewlineAFterNode is true, even if no newline
634         was emitted.
635
636 2007-10-18  Dan Bernstein  <dan.bernstein@apple.com>
637
638         Reviewed by Adam Roben.
639
640         - fix <rdar://problem/5313523>
641         REGRESSION(Leopard): http/tests/incremental/slow-utf8-text.pl fails on Leopard
642
643         * platform/network/mac/ResourceResponseMac.mm:
644         (WebCore::ResourceResponse::doUpdateResourceResponse): Work around
645         <rdar://problem/5321972> by testing for the case of a response
646         with a MIME type of application/octet-stream and a Content-Type header
647         starting with text/plain and setting the MIME type to text/plain in
648         that case.
649
650 2007-10-18  Mark Rowe  <mrowe@apple.com>
651
652         Fix the no-SVG build.
653
654         * css/CSSPrimitiveValueMappings.h: Move the CSSPrimitiveValue implementations for
655         LineCap, LineJoin and WindRule inside #if ENABLE(SVG).
656
657 2007-10-18  Darin Adler  <darin@apple.com>
658
659         Reviewed by Anders.
660
661         - some small tweaks to the threading implementation
662
663         I had trouble building on Windows. Either the problem went away by itself
664         or one of these changes fixed it.
665
666         * platform/Threading.h: Eliminated the use of friend, and shared a single
667         declaration for the initializeThreading function.
668
669         * platform/pthreads/ThreadingPthreads.cpp: (WebCore::ThreadCondition::wait):
670         Call impl() here.
671
672         * platform/win/ThreadingWin.cpp: Got rid of two globals here with static
673         constructors. Also added a typedef for the type of the function queue.
674         (WebCore::functionQueueMutex): Added function.
675         (WebCore::functionQueue): Ditto.
676         (WebCore::callFunctionsOnMainThread): Use functions instead of using the
677         globals directly.
678         (WebCore::callOnMainThread): Ditto.
679
680         * css/CSSParser.cpp: Had to touch this file to make things build.
681
682 2007-10-18  Adam Roben  <aroben@apple.com>
683
684         Fix <rdar://5547462> Need to copy Inspector resources in Production builds
685
686         I also added an excludes file for the xcopy command to avoid copying
687         .svn folders.
688
689         Reviewed by Geoff.
690
691         * WebCore.vcproj/WebCore.make: Make sure we copy the Inspector
692         resources.
693         * WebCore.vcproj/WebCore.vcproj: Pass /exclude:xcopy.excludes to
694         xcopy.
695         * WebCore.vcproj/xcopy.excludes: Added.
696
697 2007-10-18  Darin Adler  <darin@apple.com>
698
699         Reviewed by Sam.
700
701         - fix http://bugs.webkit.org/show_bug.cgi?id=15541
702           REGRESSION (r26616): prompt with one argument uses the literal "undefined" as default reply
703
704         * page/DOMWindow.idl: Add ConvertUndefinedOrNullToNullString back for defaultValue.
705
706 2007-10-18  Nikolas Zimmermann  <zimmermann@kde.org>
707
708         Build fix. Not reviewed.
709
710         Hopefully fix win build by including wtf/MathExtras.h.
711
712         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
713
714 2007-10-18  Dan Bernstein  <dan.bernstein@apple.com>
715
716         Reviewed by Nikolas Zimmermann.
717
718         - fix http://bugs.webkit.org/show_bug.cgi?id=15367
719           Assertion failure inspecting a document including soft hyphen code (0xad)
720
721         Test: fast/text/word-break-soft-hyphen.html
722
723         * rendering/RenderText.cpp:
724         (WebCore::RenderText::calcPrefWidths): Changed to treat soft hyphens as 
725         word boundaries. This fixes the bug and is consistent with the fact that
726         run rounding does occur at soft hyphens.
727
728 2007-10-18  Nikolas Zimmermann  <zimmermann@kde.org>
729
730         Reviewed by Anders.
731
732         Fix last layout test failure seen on buildbot "trunk-mac-ppc-release".
733         Problem: "svg/custom/mask-excessive-malloc.svg -> crashed"
734
735         Clamp any ImageBuffer allocation within SVG to the RenderView's visibleSize
736         to avoid excessive mallocs (in the testcase above 1000000x1000000)
737
738         * ksvg2/svg/SVGMaskElement.cpp:
739         (WebCore::SVGMaskElement::drawMaskerContent):
740         * ksvg2/svg/SVGPatternElement.cpp:
741         (WebCore::SVGPatternElement::buildPattern):
742         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
743         (WebCore::SVGPaintServerGradient::teardown):
744         (WebCore::SVGPaintServerGradient::setup):
745         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
746         (WebCore::SVGResourceMasker::applyMask):
747         * rendering/SVGRenderSupport.cpp:
748         (WebCore::clampImageBufferSizeToViewport):
749         * rendering/SVGRenderSupport.h:
750
751 2007-10-18  Alexey Proskuryakov  <ap@webkit.org>
752
753         Windows build fix.
754
755         * css/CSSStyleSelector.cpp:
756         (WebCore::CSSStyleSelector::applyProperty): Add braces around cases that have local variables now.
757
758 2007-10-18  Alexey Proskuryakov  <ap@webkit.org>
759
760         Release build fix.
761
762         * css/CSSStyleSelector.cpp:
763         (WebCore::CSSStyleSelector::applyProperty): 
764
765 2007-10-18  Alexey Proskuryakov  <ap@webkit.org>
766
767         Reviewed by Darin.
768
769         Split most of CSSPrimitiveValue enum mapping out of CSSComputedStyleDeclaration::getPropertyCSSValue()
770         and CSSStyleSelector::applyProperty() (and their SVG counterparts). This should make the code more readable.
771
772         * WebCore.xcodeproj/project.pbxproj:
773         * css/CSSComputedStyleDeclaration.cpp:
774         (WebCore::getPositionOffsetValue):
775         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
776         * css/CSSPrimitiveValue.cpp:
777         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
778         (WebCore::CSSPrimitiveValue::init):
779         * css/CSSPrimitiveValue.h:
780         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
781         * css/CSSPrimitiveValueMappings.h: Added.
782         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
783         (WebCore::CSSPrimitiveValue::operator EBorderStyle):
784         (WebCore::CSSPrimitiveValue::operator CompositeOperator):
785         (WebCore::CSSPrimitiveValue::operator EAppearance):
786         (WebCore::CSSPrimitiveValue::operator EBackgroundBox):
787         (WebCore::CSSPrimitiveValue::operator EBackgroundRepeat):
788         (WebCore::CSSPrimitiveValue::operator EBoxAlignment):
789         (WebCore::CSSPrimitiveValue::operator EBoxDirection):
790         (WebCore::CSSPrimitiveValue::operator EBoxLines):
791         (WebCore::CSSPrimitiveValue::operator EBoxOrient):
792         (WebCore::CSSPrimitiveValue::operator ECaptionSide):
793         (WebCore::CSSPrimitiveValue::operator EClear):
794         (WebCore::CSSPrimitiveValue::operator ECursor):
795         (WebCore::CSSPrimitiveValue::operator EDisplay):
796         (WebCore::CSSPrimitiveValue::operator EEmptyCell):
797         (WebCore::CSSPrimitiveValue::operator EFloat):
798         (WebCore::CSSPrimitiveValue::operator EKHTMLLineBreak):
799         (WebCore::CSSPrimitiveValue::operator EListStylePosition):
800         (WebCore::CSSPrimitiveValue::operator EListStyleType):
801         (WebCore::CSSPrimitiveValue::operator EMarginCollapse):
802         (WebCore::CSSPrimitiveValue::operator EMarqueeBehavior):
803         (WebCore::CSSPrimitiveValue::operator EMarqueeDirection):
804         (WebCore::CSSPrimitiveValue::operator EMatchNearestMailBlockquoteColor):
805         (WebCore::CSSPrimitiveValue::operator ENBSPMode):
806         (WebCore::CSSPrimitiveValue::operator EOverflow):
807         (WebCore::CSSPrimitiveValue::operator EPageBreak):
808         (WebCore::CSSPrimitiveValue::operator EPosition):
809         (WebCore::CSSPrimitiveValue::operator EResize):
810         (WebCore::CSSPrimitiveValue::operator ETableLayout):
811         (WebCore::CSSPrimitiveValue::operator ETextAlign):
812         (WebCore::CSSPrimitiveValue::operator ETextSecurity):
813         (WebCore::CSSPrimitiveValue::operator ETextTransform):
814         (WebCore::CSSPrimitiveValue::operator EUnicodeBidi):
815         (WebCore::CSSPrimitiveValue::operator EUserDrag):
816         (WebCore::CSSPrimitiveValue::operator EUserModify):
817         (WebCore::CSSPrimitiveValue::operator EUserSelect):
818         (WebCore::CSSPrimitiveValue::operator EVisibility):
819         (WebCore::CSSPrimitiveValue::operator EWhiteSpace):
820         (WebCore::CSSPrimitiveValue::operator EWordBreak):
821         (WebCore::CSSPrimitiveValue::operator EWordWrap):
822         (WebCore::CSSPrimitiveValue::operator LineCap):
823         (WebCore::CSSPrimitiveValue::operator LineJoin):
824         (WebCore::CSSPrimitiveValue::operator TextDirection):
825         (WebCore::CSSPrimitiveValue::operator WindRule):
826         (WebCore::CSSPrimitiveValue::operator EAlignmentBaseline):
827         (WebCore::CSSPrimitiveValue::operator EColorInterpolation):
828         (WebCore::CSSPrimitiveValue::operator EColorRendering):
829         (WebCore::CSSPrimitiveValue::operator EDominantBaseline):
830         (WebCore::CSSPrimitiveValue::operator EImageRendering):
831         (WebCore::CSSPrimitiveValue::operator EPointerEvents):
832         (WebCore::CSSPrimitiveValue::operator EShapeRendering):
833         (WebCore::CSSPrimitiveValue::operator ETextAnchor):
834         (WebCore::CSSPrimitiveValue::operator ETextRendering):
835         (WebCore::CSSPrimitiveValue::operator EWritingMode):
836         * css/CSSStyleSelector.cpp:
837         (WebCore::CSSStyleSelector::checkSelector):
838         (WebCore::CSSStyleSelector::checkOneSelector):
839         (WebCore::CSSRuleSet::addRulesFromSheet):
840         (WebCore::convertToLength):
841         (WebCore::CSSStyleSelector::applyDeclarations):
842         (WebCore::CSSStyleSelector::applyProperty):
843         (WebCore::CSSStyleSelector::mapBackgroundAttachment):
844         (WebCore::CSSStyleSelector::mapBackgroundClip):
845         (WebCore::CSSStyleSelector::mapBackgroundComposite):
846         (WebCore::CSSStyleSelector::mapBackgroundOrigin):
847         (WebCore::CSSStyleSelector::mapBackgroundRepeat):
848         (WebCore::CSSStyleSelector::mapBackgroundXPosition):
849         (WebCore::CSSStyleSelector::mapBackgroundYPosition):
850         * ksvg2/css/SVGCSSComputedStyleDeclaration.cpp:
851         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
852         * ksvg2/css/SVGCSSStyleSelector.cpp:
853         (WebCore::CSSStyleSelector::applySVGProperty):
854
855 2007-10-18  Eric Seidel  <eric@webkit.org>
856
857         Reviewed by Maciej.
858
859         Fix crashers in SVGViewSpec::parseViewSpec
860         http://bugs.webkit.org/show_bug.cgi?id=15504
861
862         Test is blocked by bug 15503, landed as:
863         * svg/dom/viewspec-parser.html-disabled
864
865         * bindings/scripts/CodeGeneratorObjC.pm: support classes where all parents are interfaces
866         * ksvg2/svg/SVGViewSpec.cpp:
867         (WebCore::SVGViewSpec::parseViewSpec):
868         * ksvg2/svg/SVGViewSpec.idl: Added.
869
870 2007-10-17  Rob Buis  <buis@kde.org>
871
872         Reviewed by Darin, Adam, and Maciej.
873
874         http://bugs.webkit.org/show_bug.cgi?id=12988
875         First element (in document order) is not returned when other duplicate ID-ed elements were created first
876
877         Reset the element id cache when an id is added and there is a duplicate for that id.
878
879         * dom/Document.cpp:
880         (WebCore::Document::addElementById):
881
882 2007-10-17  Mark Rowe  <mrowe@apple.com>
883
884         Mac build fix.
885
886         * Configurations/WebCore.xcconfig:  Make it possible to include CoreGraphics header files.
887
888 2007-10-17  Adam Roben  <aroben@apple.com>
889
890         Fix an ASSERT on launch on Windows
891
892         Fix dictated to me by Brady.
893
894         * loader/icon/IconDatabase.cpp:
895         (WebCore::IconDatabase::syncThreadMainLoop): Make sure we hold
896         m_syncLock before going into the loop.
897
898 2007-10-17  Adam Roben  <aroben@apple.com>
899
900         Windows build fix
901
902         Reviewed by NOBODY.
903
904         * platform/graphics/AffineTransform.h: Don't #include
905         ApplicationServices.h.
906         * platform/graphics/cg/GraphicsContextCG.cpp: Add an #include that's
907         needed now that we're not #including ApplicationServices.h.
908
909 2007-10-17  Mark Rowe  <mrowe@apple.com>
910
911         Gtk build fix.  Move non-pthread stubs from Threading.h to ThreadingNone.cpp to prevent
912         multiple-definition link errors.
913
914         * WebCore.pro:
915         * platform/Threading.h:
916         * platform/ThreadingNone.cpp: Added.
917         (WebCore::createThread):
918         (WebCore::waitForThreadCompletion):
919         (WebCore::detachThread):
920         (WebCore::Mutex::Mutex):
921         (WebCore::Mutex::~Mutex):
922         (WebCore::Mutex::lock):
923         (WebCore::Mutex::tryLock):
924         (WebCore::Mutex::unlock):
925         (WebCore::ThreadCondition::ThreadCondition):
926
927 2007-10-17  Anders Carlsson  <andersca@apple.com>
928
929         Reviewed by Oliver.
930
931         * WebCore.xcodeproj/project.pbxproj:
932         * WebCore.vcproj/WebCore.vcproj:
933         
934         * config.h:
935         #define USE_PTHREADS on Windows.
936         
937         * loader/icon/IconDatabase.cpp:
938         (WebCore::IconDatabase::getOrCreateIconRecord):
939         (WebCore::IconDatabase::getOrCreatePageURLRecord):
940         Update for mutex changes.
941         
942         * platform/Threading.h:
943         (WebCore::):
944         (WebCore::ThreadSafeShared::ThreadSafeShared):
945         (WebCore::ThreadSafeShared::ref):
946         (WebCore::ThreadSafeShared::deref):
947         (WebCore::ThreadSafeShared::hasOneRef):
948         (WebCore::ThreadSafeShared::refCount):
949         (WebCore::ThreadSafeShared::isThreadSafe):
950         Add a new Shared base class that uses a mutex to manage its refcount.
951         
952         (WebCore::createThread):
953         (WebCore::waitForThreadCompletion):
954         (WebCore::detachThread):
955         New functions for thread creation.
956         
957         (WebCore::Mutex::Mutex):
958         (WebCore::Mutex::~Mutex):
959         (WebCore::Mutex::lock):
960         (WebCore::Mutex::tryLock):
961         (WebCore::Mutex::unlock):
962         Move the definitions to ThreadingPthreads.cpp
963         
964         (WebCore::ThreadCondition::ThreadCondition):
965         (WebCore::ThreadCondition::~ThreadCondition):
966         (WebCore::ThreadCondition::wait):
967         (WebCore::ThreadCondition::signal):
968         (WebCore::ThreadCondition::broadcast):
969         Move the definitions to ThreadingPthreads.cpp
970         
971         * platform/pthreads: Added.
972         * platform/pthreads/ThreadingPthreads.cpp: Added.
973         Add pthread specific implementation of the thread creation functions, Mutex and ThreadCondition.
974
975 2007-10-17  David Hyatt  <hyatt@apple.com>
976
977         Add support for creating a layer when a transform is in effect.  Add support to RenderStyle for
978         handing back a computed AffineTransform.
979
980         Reviewed by Mitz Pettel
981
982         * css/CSSStyleSelector.cpp:
983         (WebCore::CSSStyleSelector::adjustRenderStyle):
984         * rendering/RenderBox.cpp:
985         (WebCore::RenderBox::setStyle):
986         * rendering/RenderObject.cpp:
987         (WebCore::RenderObject::RenderObject):
988         (WebCore::RenderObject::requiresLayer):
989         (WebCore::RenderObject::setStyle):
990         * rendering/RenderObject.h:
991         (WebCore::RenderObject::hasTransform):
992         (WebCore::RenderObject::setHasTransform):
993         * rendering/RenderStyle.cpp:
994         (WebCore::RenderStyle::applyTransform):
995         * rendering/RenderStyle.h:
996         (WebCore::RenderStyle::hasTransform):
997         * rendering/RenderTableCell.cpp:
998         (WebCore::RenderTableCell::requiresLayer):
999         * rendering/RenderTableRow.h:
1000         (WebCore::RenderTableRow::requiresLayer):
1001
1002 2007-10-17  David Hyatt  <hyatt@apple.com>
1003
1004         Add support for mapping of the transform CSS property into RenderStyles.  Everything is now ready for the front
1005         end to use.
1006
1007         Reviewed by Mitz Pettel
1008
1009         * WebCore.xcodeproj/project.pbxproj:
1010         * css/CSSStyleSelector.cpp:
1011         (WebCore::CSSStyleSelector::applyProperty):
1012         * css/CSSTransformValue.h:
1013         (WebCore::CSSTransformValue::type):
1014         (WebCore::CSSTransformValue::values):
1015         * platform/graphics/AffineTransform.cpp:
1016         (WebCore::AffineTransform::skew):
1017         * platform/graphics/AffineTransform.h:
1018         * rendering/RenderStyle.cpp:
1019         (WebCore::StyleTransformData::StyleTransformData):
1020         (WebCore::StyleTransformData::operator==):
1021         (WebCore::StyleTransformData::transformDataEquivalent):
1022         * rendering/RenderStyle.h:
1023         (WebCore::TransformOperation::~TransformOperation):
1024         (WebCore::TransformOperation::operator!=):
1025         (WebCore::TransformOperation::isScaleOperation):
1026         (WebCore::TransformOperation::isRotateOperation):
1027         (WebCore::TransformOperation::isSkewOperation):
1028         (WebCore::TransformOperation::isTranslateOperation):
1029         (WebCore::TransformOperation::isMatrixOperation):
1030         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
1031         (WebCore::ScaleTransformOperation::isScaleOperation):
1032         (WebCore::ScaleTransformOperation::operator==):
1033         (WebCore::ScaleTransformOperation::apply):
1034         (WebCore::RotateTransformOperation::RotateTransformOperation):
1035         (WebCore::RotateTransformOperation::isRotateOperation):
1036         (WebCore::RotateTransformOperation::operator==):
1037         (WebCore::RotateTransformOperation::apply):
1038         (WebCore::SkewTransformOperation::SkewTransformOperation):
1039         (WebCore::SkewTransformOperation::isSkewOperation):
1040         (WebCore::SkewTransformOperation::operator==):
1041         (WebCore::SkewTransformOperation::apply):
1042         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
1043         (WebCore::TranslateTransformOperation::isTranslateOperation):
1044         (WebCore::TranslateTransformOperation::operator==):
1045         (WebCore::TranslateTransformOperation::apply):
1046         (WebCore::MatrixTransformOperation::MatrixTransformOperation):
1047         (WebCore::MatrixTransformOperation::isMatrixOperation):
1048         (WebCore::MatrixTransformOperation::operator==):
1049         (WebCore::MatrixTransformOperation::apply):
1050         (WebCore::StyleTransformData::operator!=):
1051         (WebCore::RenderStyle::transform):
1052         (WebCore::RenderStyle::setTransform):
1053         (WebCore::RenderStyle::initialTransform):
1054
1055 2007-10-17  Adam Roben  <aroben@apple.com>
1056
1057         * page/Frame.cpp: I had to touch this file when fixing the Windows
1058         build. Checking it in in case it helps others, too.
1059
1060 2007-10-17  Eric Seidel  <eric@webkit.org>
1061
1062         Reviewed by Mark Rowe.
1063         
1064         Remove a couple more uses of svg_dynamic_cast.
1065
1066         No functional changes, no tests.
1067
1068         * ksvg2/svg/SVGPatternElement.cpp:
1069         (WebCore::SVGPatternElement::buildPattern):
1070
1071 2007-10-17  Mark Rowe  <mrowe@apple.com>
1072
1073         Reviewed by Eric and Geoff.
1074
1075         <rdar://problem/5453743> Repro ASSERT in CachedResource::setEncodedSize() loading image in background tab
1076         http://bugs.webkit.org/show_bug.cgi?id=15191
1077
1078         * loader/DocLoader.cpp:
1079         (WebCore::DocLoader::setAutoLoadImages): Don't start a load if the CachedImage is already loading.
1080
1081 2007-10-17  Justin Garcia  <justin.garcia@apple.com>
1082
1083         Reviewed by Harrison.
1084         
1085         <rdar://problem/5481523> 
1086         GoogleDocs: Safari hangs when indenting a particular table twice
1087         
1088         Fixed by fixing problems with the selection preservation done by IndentOutdentCommand.
1089         It is now more difficult to create selections that cause hangs.  Those are covered by:
1090         <rdar://problem/5543472>
1091
1092         * editing/IndentOutdentCommand.cpp:
1093         (WebCore::indexForVisiblePosition): Compute indices from the first VisiblePosition
1094         in the document, instead of the first Position.
1095         Use rangeCompliantEquivalents when creating the Range that we pass to rangeLength.
1096         Tell TextIterator::rangeLength that we're doing selection preservation, so that it
1097         will emit characters between all VisiblePositions.
1098         (WebCore::IndentOutdentCommand::indentRegion): Fixed a bug where the range and location
1099         passed to rangeFromLocationAndLength were reversed.
1100         Tell rangeFromLocationAndLength that we're doing doing selection preservation, as
1101         above.
1102         * editing/TextIterator.cpp:
1103         (WebCore::CharacterIterator::CharacterIterator): 
1104         (WebCore::TextIterator::rangeLength): Rename emitSpacesForReplacedElements
1105         to forSelectionPreservation, to match the name of the boolean inside TextIterator and
1106         to match its meaning after r25522.
1107         (WebCore::TextIterator::rangeFromLocationAndLength): Ditto.
1108
1109 2007-10-16  Darin Adler  <darin@apple.com>
1110
1111         Reviewed by Mitz.
1112
1113         - fix http://bugs.webkit.org/show_bug.cgi?id=15536
1114           need to cache missing glyph so we're not slow on pages that show missing glyphs
1115
1116         - <rdar://problem/5404359> UI thread stall (>60sec) in MLANG running stress test
1117           (related to font data caching)
1118
1119         * platform/Font.cpp: (WebCore::Font::glyphDataForCharacter): Check for a null value
1120         for fontData rather than for glyph to detect non-cached entries in the glyph data.
1121
1122         * platform/gtk/GlyphPageTreeNodeGtk.cpp: (WebCore::GlyphPage::fill):
1123         * platform/mac/GlyphPageTreeNodeMac.cpp: (WebCore::GlyphPage::fill):
1124         * platform/win/GlyphPageTreeNodeWin.cpp: (WebCore::GlyphPage::fill):
1125         Set fontData to 0 for missing glyph entries. Also fixed the Windows and GTK versions
1126         to return the proper value for haveGlyphs.
1127
1128 2007-10-16  Mark Rowe  <mrowe@apple.com>
1129
1130         Gtk build fix.  Replace use of assert with ASSERT_NOT_REACHED.
1131
1132         * platform/gtk/FontCacheGtk.cpp:
1133         (WebCore::FontCache::platformInit):
1134
1135 2007-10-16  Darin Adler  <darin@apple.com>
1136
1137         Reviewed by Adam.
1138
1139         - fix http://bugs.webkit.org/show_bug.cgi?id=15534
1140           WebScriptObject.h has some formatting and editorial mistakes
1141
1142         * bindings/objc/WebScriptObject.h: Fix wording and formatting.
1143
1144 2007-10-16  Darin Adler  <darin@apple.com>
1145
1146         - try to fix the Qt build
1147
1148         * config.h: Don't use DisallowCType.h, since it's incompatible with some C++ headers
1149         that are used in some Qt-specific source files.
1150
1151 2007-10-16  Darin Adler  <darin@apple.com>
1152
1153         Reviewed by Adele.
1154
1155         - fix http://bugs.webkit.org/show_bug.cgi?id=15525
1156           transpose (control-T) should do the last two characters on a line if at end of line
1157         - remove unused CommandByName class
1158         - move transpose command implementation here from Mac OS X WebKit
1159
1160         * editing/Editor.h:
1161         * editing/Editor.cpp:
1162         (WebCore::execTranspose): Added.
1163         (WebCore::Editor::transpose): Added. This has the transpose implementation from
1164         WebCoreFrameBridge and WebHTMLView, translated into WebCore-style C++ and with
1165         a special case for the end of a paragraph.
1166
1167         * page/Frame.h: Removed unused command() function member.
1168         * page/FramePrivate.h: Removed unused m_command data member.
1169         * page/Frame.cpp: Ditto.
1170
1171         * page/mac/WebCoreFrameBridge.h: Removed rangeOfCharactersAroundCaret method.
1172         * page/mac/WebCoreFrameBridge.mm: Ditto.
1173
1174         * WebCore.pro: Removed CommandByName.h/cpp.
1175         * WebCore.vcproj/WebCore.vcproj: Ditto.
1176         * WebCore.xcodeproj/project.pbxproj: Ditto.
1177
1178         * editing/CommandByName.cpp: Removed.
1179         * editing/CommandByName.h: Removed.
1180
1181 2007-10-16  Darin Adler  <darin@apple.com>
1182
1183         Reviewed by Maciej and Geoff (and looked over by Eric).
1184
1185         - http://bugs.webkit.org/show_bug.cgi?id=15519
1186           eliminate use of <ctype.h> for processing ASCII
1187
1188         * ForwardingHeaders/wtf/ASCIICType.h: Added.
1189         * ForwardingHeaders/wtf/DisallowCType.h: Added.
1190
1191         * WebCorePrefix.h: Get rid of inclusion of <ctype.h>.
1192         * config.h: Include DisallowCType.h.
1193
1194         * css/CSSParser.cpp:
1195         (WebCore::ParseString::lower):
1196         * css/CSSPrimitiveValue.cpp:
1197         (WebCore::isCSSTokenizerIdentifier):
1198         * css/CSSStyleDeclaration.cpp:
1199         (WebCore::propertyID):
1200         * html/HTMLSelectElement.cpp:
1201         (WebCore::stripLeadingWhiteSpace):
1202         * html/HTMLTokenizer.cpp:
1203         (WebCore::tagMatch):
1204         * loader/FTPDirectoryParser.cpp:
1205         (WebCore::parseOneFTPLine):
1206         * loader/TextResourceDecoder.cpp:
1207         (WebCore::TextResourceDecoder::checkForHeadCharset):
1208         * platform/DeprecatedCString.cpp:
1209         (WebCore::DeprecatedCString::lower):
1210         (WebCore::DeprecatedCString::upper):
1211         (WebCore::DeprecatedCString::find):
1212         (WebCore::DeprecatedCString::contains):
1213         * platform/DeprecatedString.cpp:
1214         (WebCore::equalCaseInsensitive):
1215         (WebCore::isCharacterAllowedInBase):
1216         (WebCore::DeprecatedString::find):
1217         (WebCore::DeprecatedString::contains):
1218         (WebCore::toIntegralType):
1219         * platform/DeprecatedString.h:
1220         (WebCore::DeprecatedChar::isSpace):
1221         (WebCore::DeprecatedChar::lower):
1222         (WebCore::DeprecatedChar::upper):
1223         * platform/KURL.cpp:
1224         (WebCore::KURL::parse):
1225         * platform/StringImpl.cpp:
1226         (WebCore::isSpace):
1227         (WebCore::StringImpl::containsOnlyWhitespace):
1228         (WebCore::StringImpl::isLower):
1229         (WebCore::StringImpl::lower):
1230         (WebCore::StringImpl::find):
1231         (WebCore::StringImpl::reverseFind):
1232         (WebCore::equalIgnoringCase):
1233         * platform/TextEncodingRegistry.cpp:
1234         (WebCore::TextEncodingNameHash::equal):
1235         (WebCore::TextEncodingNameHash::hash):
1236         (WebCore::atomicCanonicalTextEncodingName):
1237         * platform/mac/KeyEventMac.mm:
1238         (WebCore::keyIdentifierForKeyEvent):
1239         * platform/win/KeyEventWin.cpp:
1240         (WebCore::keyIdentifierForWindowsKeyCode):
1241         * platform/win/PopupMenuWin.cpp:
1242         (WebCore::isASCIIPrintable):
1243         (WebCore::PopupWndProc):
1244         * plugins/win/PluginViewWin.cpp:
1245         (WebCore::capitalizeRFC822HeaderFieldName):
1246         * rendering/RenderText.cpp:
1247         (WebCore::RenderText::widthFromCache):
1248         Use ASCIICType.h functions instead of ctype.h ones.
1249
1250 2007-10-16  Mitz Pettel  <mitz@webkit.org>
1251
1252         Reviewed by Dave Hyatt.
1253
1254         - fix http://bugs.webkit.org/show_bug.cgi?id=15296
1255           REGRESSION (r19716-r19719): width not specified for <marquee> tag is causing the alignment issue.
1256
1257         Test: fast/block/float/marquee-shrink-to-avoid-floats.html
1258
1259         * rendering/RenderObject.cpp:
1260         (WebCore::RenderObject::shrinkToAvoidFloats): Changed to return 'true' for <marquee>s with auto width.
1261
1262 2007-10-16  Beth Dakin  <bdakin@apple.com>
1263
1264         Reviewed by Darin.
1265
1266         Fix for <rdar://problem/5517118> REGRESSION: 9A570 - Safari renders 
1267         Amazon seller page way too small
1268
1269         The font size at Amazon was way too small because the calls to 
1270         getComputedStyle and getPropertyValue did not cause the div to 
1271         attach because there was a pending stylesheet. The fix is to call 
1272         updateLayoutIgnorePendingStylesheets() instead of just 
1273         updateLayout().
1274
1275         * css/CSSComputedStyleDeclaration.cpp:
1276         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1277
1278 2007-10-16  David Hyatt  <hyatt@apple.com>
1279
1280         Get transform-origin(x/y) mapped into the front end RenderStyle.  Adds a new StyleTransformData struct that
1281         holds transform-origin (and that will also eventually hold the parsed transform operations as well).
1282
1283         Reviewed by Beth
1284
1285         * css/CSSStyleSelector.cpp:
1286         (WebCore::CSSStyleSelector::applyProperty):
1287         * rendering/RenderStyle.cpp:
1288         (WebCore::StyleTransformData::StyleTransformData):
1289         (WebCore::StyleTransformData::operator==):
1290         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1291         (WebCore::StyleRareNonInheritedData::operator==):
1292         (WebCore::RenderStyle::RenderStyle):
1293         (WebCore::RenderStyle::diff):
1294         * rendering/RenderStyle.h:
1295         (WebCore::StyleTransformData::operator!=):
1296         (WebCore::RenderStyle::transformOriginX):
1297         (WebCore::RenderStyle::transformOriginY):
1298         (WebCore::RenderStyle::setTransformOriginX):
1299         (WebCore::RenderStyle::setTransformOriginY):
1300         (WebCore::RenderStyle::initialTransformOriginX):
1301         (WebCore::RenderStyle::initialTransformOriginY):
1302
1303 2007-10-16  Adele Peterson  <adele@apple.com>
1304
1305         Reviewed by Alice.
1306
1307         Fix for <rdar://problem/5538793> REGRESSION: Failing layout test: fast/forms/select-change-listbox-to-popup.html (due to landing feature branch)
1308
1309         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseMappedAttribute):  When switching between types of select elements, call setRecalcListItems
1310           since recalcListItems updates the default selection in different ways for the different controls. 
1311
1312 2007-10-16  Alice Liu  <alice.liu@apple.com>
1313
1314         rubber-stamped by Darin.
1315
1316         flipping my previous fix around so that mac is special-cased instead of win.
1317
1318         * dom/Document.cpp:
1319         (WebCore::Document::defaultEventHandler):
1320
1321 2007-10-16  David Hyatt  <hyatt@apple.com>
1322
1323         Clean up transform parsing.  Fix a crash, ditch the extra parse context class, and use RefPtr/PassRefPtr more
1324         to simplify the code.
1325
1326         Reviewed by aroben
1327
1328         * css/CSSParser.cpp:
1329         (WebCore::CSSParser::parseValue):
1330         (WebCore::CSSParser::parseTransform):
1331         * css/CSSParser.h:
1332
1333 2007-10-16  Alice Liu  <alice.liu@apple.com>
1334
1335         Reviewed by Adele.
1336
1337         fixed <rdar://5085596> Accesskeys don't work
1338         
1339         * dom/Document.cpp:
1340         (WebCore::Document::defaultEventHandler):
1341         accesskey modifier is platform-depedent.
1342
1343 2007-10-15  Mark Rowe  <mrowe@apple.com>
1344
1345         Reviewed by John.
1346
1347         <rdar://problem/5494040> Reproducible assertion failure in WebCore::IconDatabase::iconForPageURL
1348
1349         A race condition between icon database import and Safari asking for an icon for the empty URL
1350         was resulting in a PageURLRecord being created for a URL that can never be retained.  By enforcing
1351         that PageURLRecord's cannot be created for the empty URL we can prevent the assertion from failing.
1352
1353         * loader/icon/IconDatabase.cpp:
1354         (WebCore::IconDatabase::iconForPageURL):
1355         (WebCore::IconDatabase::getOrCreatePageURLRecord): Bail out early if the URL is empty.
1356         (WebCore::IconDatabase::performURLImport): Don't create the PageURLRecord if the URL is empty.
1357
1358 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
1359
1360         Reviewed by Ollie.
1361
1362         Use OwnPtr for m_deliveryData, and fix a bug where we were memmove()ing
1363         over m_deliveryData instead of its data buffer
1364
1365         * plugins/win/PluginStreamWin.cpp:
1366         (WebCore::PluginStreamWin::~PluginStreamWin): Don't delete
1367         m_deliveryData
1368         (WebCore::PluginStreamWin::deliverData): Fix memmove() call
1369         (WebCore::PluginStreamWin::didReceiveData): Assign using OwnPtr::set()
1370         * plugins/win/PluginStreamWin.h: Use OwnPtr
1371
1372 2007-10-15  Steve Falkenburg  <sfalken@apple.com>
1373
1374         Reviewed by Oliver.
1375
1376         Add missing null check.
1377
1378         * platform/network/cf/AuthenticationCF.cpp:
1379         (WebCore::core):
1380
1381 2007-10-15  Mark Rowe  <mrowe@apple.com>
1382
1383         Fix the no-SVG build again.  Add new transform CSS properties to the switch statements.
1384
1385         * css/CSSComputedStyleDeclaration.cpp:
1386         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1387         * css/CSSStyleSelector.cpp:
1388         (WebCore::CSSStyleSelector::applyProperty):
1389
1390 2007-10-15  Darin Adler  <darin@apple.com>
1391
1392         Reviewed by Mitz.
1393
1394         - http://bugs.webkit.org/show_bug.cgi?id=15518
1395           Remove the unused attemptFontSubstitution feature and do some
1396           cleanup of glyphDataForCharacter.
1397
1398         * platform/Font.h:
1399         * platform/Font.cpp:
1400         (WebCore::WidthIterator::advance): Eliminated uneeded attemptFontSubstitution
1401         and cluster parameters to the glyphDataForCharacter function.
1402         (WebCore::Font::glyphDataForCharacter): Removed the cluster parameter and
1403         attemptFontSubstitution parameter. Removed the isUpper check before calling
1404         toUpper in the small caps code path. Split up the inner loop into separate
1405         copies for non-small-caps and small caps. Broke out the system fallback
1406         page handling so it's not inside the loop. Changed system fallback so it uses
1407         the character and breaks it up into UTF-16 as needed, instead of using a
1408         passed-in "character cluster".
1409
1410         * platform/TextStyle.h:
1411         (WebCore::TextStyle::TextStyle): Removed attemptFontSubstitution.
1412         (WebCore::TextStyle::applyWordRounding): Ditto.
1413
1414 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
1415
1416         Reviewed by Ollie.
1417
1418         Remove an operator precedence warning on Windows
1419
1420         * editing/markup.cpp:
1421         (WebCore::escapeContentText): Use (a) | (b)
1422         (WebCore::appendEscapedContent): Use (a) | (b)
1423
1424 2007-10-15  Kevin McCullough  <kmccullough@apple.com>
1425
1426         Reviewed by Darin.
1427
1428         - <rdar://problem/5238818> window.resizeTo doesn't restrict the resized window to the size of the screen
1429         - Now we take the doc into account when resizing.
1430         - Also I found an issue where we would resize to outside the window, because
1431           the resize would be smaller than the window size but the location of the
1432           window would make the resize go off-screen. Now we move the window back into the screen.
1433
1434         * bindings/js/kjs_window.cpp:
1435         (KJS::adjustWindowRect):
1436         (KJS::WindowFunc::callAsFunction):
1437
1438 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
1439
1440         Reviewed by Anders.
1441
1442         <rdar://5510700> Repro crash loading embedded Windows Media Player
1443         content
1444
1445         Anders noticed that the older Windows Media Player plugin (npdsplay.dll)
1446         will crash if it receives its resource requests out of order, whereas we
1447         were immediately fulfilling untargeted, non-JavaScript requests and
1448         scheduling targeted or JavaScript resource requests. Implement his
1449         suggested fix, which is to schedule PluginRequests for all resource
1450         requests 
1451
1452         * plugins/win/PluginViewWin.cpp:
1453         (WebCore::getString):
1454         (WebCore::PluginViewWin::performRequest): If this non-JavaScript request
1455         has no target, create a stream for it
1456         (WebCore::PluginViewWin::load): Schedule PluginRequests for all resource
1457         requests
1458
1459 2007-10-15  Mark Rowe  <mrowe@apple.com>
1460
1461         Gtk and Qt build fix.  Add new .cpp file to project.
1462
1463         * WebCore.pro:
1464
1465 2007-10-15  John Sullivan  <sullivan@apple.com>
1466
1467         * platform/mac/FontDataMac.mm:
1468         D'oh! Added missing #import to fix build
1469
1470 2007-10-15  John Sullivan  <sullivan@apple.com>
1471
1472         Reviewed by Geoff
1473
1474         * platform/mac/FontDataMac.mm:
1475         (WebCore::FontData::smallCapsFontData):
1476         replace NS_DURING/NS_HANDLER with WebCore-style BEGIN/END_BLOCK_OBJC_EXCEPTIONS
1477
1478 2007-10-15  David Hyatt  <hyatt@apple.com>
1479
1480         The CSS WG has been discussing the concept of rotation.  In the latest draft specification, two properties
1481         have been introduced: rotation and rotation-point.  I believe these properties should be generalized to
1482         allow for arbitrary transformations (e.g., translation, skew, rotate, scale).
1483
1484         This patch adds support for the back-end parsing of two new CSS properties: transform and transform-origin.
1485         They are directly analogous to the properties specified by the CSS WG, except that they are designed to allow
1486         for arbitrary affine transforms rather than just rotation.
1487
1488         Reviewed by Beth Dakin
1489
1490         * WebCore.xcodeproj/project.pbxproj:
1491         * WebCore.vcproj/WebCore.vcproj:
1492         * css/CSSComputedStyleDeclaration.cpp:
1493         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1494         * css/CSSParser.cpp:
1495         (WebCore::CSSParser::parseValue):
1496         (WebCore::TransformParseContext:::m_list):
1497         (WebCore::TransformParseContext::list):
1498         (WebCore::TransformParseContext::failed):
1499         (WebCore::TransformParseContext::addValue):
1500         (WebCore::TransformOperationInfo::TransformOperationInfo):
1501         (WebCore::TransformOperationInfo::type):
1502         (WebCore::TransformOperationInfo::argCount):
1503         (WebCore::TransformOperationInfo::unit):
1504         (WebCore::TransformOperationInfo::unknown):
1505         (WebCore::TransformOperationInfo::hasCorrectArgCount):
1506         (WebCore::CSSParser::parseTransform):
1507         (WebCore::CSSParser::parseTransformOrigin):
1508         * css/CSSParser.h:
1509         * css/CSSPropertyNames.in:
1510         * css/CSSTransformValue.cpp: Added.
1511         (WebCore::CSSTransformValue::CSSTransformValue):
1512         (WebCore::CSSTransformValue::~CSSTransformValue):
1513         (WebCore::CSSTransformValue::addValue):
1514         (WebCore::CSSTransformValue::cssText):
1515         * css/CSSTransformValue.h: Added.
1516         (WebCore::CSSTransformValue::):
1517
1518 2007-10-15  Mark Rowe  <mrowe@apple.com>
1519
1520         Reviewed by Oliver.
1521
1522         Fix the no-SVG build.
1523
1524         * DerivedSources.make: Use the correct file as input to generate CSSPropertyNames.h.
1525         * rendering/RenderObject.cpp:
1526         (WebCore::objectIsRelayoutBoundary):
1527
1528 2007-10-15  Darin Adler  <darin@apple.com>
1529
1530         Reviewed by Sam.
1531
1532         - fix http://bugs.webkit.org/show_bug.cgi?id=15520
1533           alert(undefined) should say "undefined" in the alert
1534
1535         Test: fast/dom/Window/alert-undefined.html
1536
1537         * page/DOMWindow.idl: Remove ConvertUndefinedOrNullToNullString from alert, confirm, and prompt.
1538         It turns out that the default behavior is what the other browsers do (browsers tested: IE 7,
1539         Firefox 2).
1540
1541 2007-10-15  Adele Peterson  <adele@apple.com>
1542
1543         Reviewed by Darin.
1544
1545         Fix for http://bugs.webkit.org/show_bug.cgi?id=15252
1546         <rdar://problem/5498184> REGRESSION: <select multiple> doesn't scroll to top when old options are removed and new ones are added, leaving listbox empty-looking
1547
1548         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::calcHeight): If the scrollbar is disabled, make sure the scroll offset gets reset to 0.  In general,
1549           we don't want to unnecessarily adjust the scroll offset, but in this case, there won't be an obvious way for the user to adjust the scroller position once it's disabled.
1550
1551 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
1552
1553         Reviewed by Maciej.
1554
1555         Return a more appropriate error from NPN_RequestRange, which is
1556         currently unimplemented
1557
1558         * plugins/win/npapi.cpp: return NPERR_STREAM_NOT_SEEKABLE 
1559         (NPN_RequestRead):
1560
1561 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
1562
1563         Reviewed by Maciej.
1564
1565         Add a missing function pointer to the m_browserFuncs structure
1566
1567         * plugins/win/PluginPackageWin.cpp:
1568         (WebCore::PluginPackageWin::load):
1569
1570 2007-10-15  Simon Hausmann  <hausmann@kde.org>
1571
1572         Reviewed by Lars.
1573
1574         Fix the compilation of the Font code in the Qt port by adding the necessary stubs to support downloadable fonts through the @font-face rules.
1575
1576         * WebCore.pro:
1577         * loader/CachedFont.cpp:
1578         * platform/qt/FontCacheQt.cpp: Removed.
1579         * platform/qt/FontCustomPlatformData.cpp: Removed.
1580         * platform/qt/FontCustomPlatformData.h: Removed.
1581         * platform/qt/FontDataQt.cpp: Removed.
1582         * platform/qt/FontPlatformData.h: Removed.
1583         * platform/qt/FontQt.cpp:
1584         * platform/qt/GlyphPageTreeNodeQt.cpp: Removed.
1585
1586 2007-10-15  Simon Hausmann  <hausmann@kde.org>
1587
1588         Reviewed by Lars.
1589
1590         Adapt to the latest API changes in the SVG API/Code.
1591
1592         * platform/graphics/svg/qt/RenderPathQt.cpp:
1593         (WebCore::RenderPath::strokeContains):
1594         (WebCore::getPathStroke):
1595         * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
1596         (WebCore::SVGPaintServer::setPenProperties):
1597         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
1598
1599 2007-10-14  Nikolas Zimmermann  <zimmermann@kde.org>
1600
1601         Reviewed by Eric.
1602
1603         Fix bad abstraction in ImageBuffer class.
1604         While the class itself is platform-aware and thus it's location in platform/graphics
1605         is fine, it contains the "renderSubtreeToImage" method which operates on RenderObject.
1606
1607         As it's SVG specific I decided to move this method into SVGRenderSupport, to avoid
1608         implicit platform/ <-> rendering/ dependencies.
1609
1610         * WebCore.pro:
1611         * WebCore.vcproj/WebCore.vcproj:
1612         * WebCore.xcodeproj/project.pbxproj:
1613         * ksvg2/svg/SVGMaskElement.cpp:
1614         (WebCore::SVGMaskElement::drawMaskerContent):
1615         * ksvg2/svg/SVGPatternElement.cpp:
1616         (WebCore::SVGPatternElement::buildPattern):
1617         * platform/graphics/ImageBuffer.cpp: Removed.
1618         * platform/graphics/ImageBuffer.h:
1619         (WebCore::ImageBuffer::size):
1620         * platform/graphics/svg/SVGImage.cpp:
1621         (WebCore::SVGImage::nativeImageForCurrentFrame):
1622         * rendering/SVGRenderSupport.cpp:
1623         (WebCore::renderSubtreeToImage):
1624         * rendering/SVGRenderSupport.h:
1625
1626 2007-10-14  Peter Kasting  <zerodpx@gmail.com>
1627
1628         Reviewed by Maciej.
1629
1630         http://bugs.webkit.org/show_bug.cgi?id=15210
1631         Draw the image outline even for broken images.
1632
1633         * rendering/RenderImage.cpp:
1634         (WebCore::RenderImage::paint):
1635
1636 2007-10-14  Kevin Ollivier  <kevino@theolliviers.com>
1637
1638         Reviewed by Adam.
1639
1640         Add support for MSVC7, and fix cases where PLATFORM(WIN) should
1641         be PLATFORM(WIN_OS) for other ports building on Windows.
1642
1643         * dom/XMLTokenizer.cpp:
1644         * page/FrameTree.cpp:
1645         * platform/StaticConstructors.h:
1646         * platform/String.cpp:
1647
1648 2007-10-14  Maxime Britto  <mbritto@pleyo.com>
1649
1650         Reviewed by Mitz.
1651
1652         Fix an error in the goBackOrForward() function : confusion between forwardListCount and backListCount.
1653         http://bugs.webkit.org/show_bug.cgi?id=15212
1654
1655         * loader/FrameLoader.cpp:
1656         (WebCore::FrameLoader::goBackOrForward):
1657
1658 2007-10-14  Mitz Pettel  <mitz@webkit.org>
1659
1660         Reviewed by Darin.
1661
1662         - fix http://bugs.webkit.org/show_bug.cgi?id=15181
1663           text-transform: uppercase not working in input (submit, reset, button) elements
1664           <rdar://problem/5474647>
1665
1666         Test: fast/forms/button-text-transform.html
1667
1668         Text transformations require access to the original text. The button's inner
1669         text was an anonymous RenderText, meaning it did not have a node to retrieve
1670         the original text from. The patch fixes this by changing the inner text into a
1671         RenderTextFragment, which stores its own original text.
1672
1673         * rendering/RenderButton.cpp:
1674         (WebCore::RenderButton::setText):
1675         * rendering/RenderButton.h:
1676
1677 2007-10-14  Eric Seidel  <eric@webkit.org>
1678
1679         Reviewed by Maciej.
1680
1681         REGRESSION: Javascript bug in getElementsByName
1682         http://bugs.webkit.org/show_bug.cgi?id=15274
1683
1684         Test: fast/dom/getelementbyname-invalidation.html
1685
1686         * dom/NameNodeList.h: remove empty rootNodeChildrenChanged override
1687
1688 2007-10-14  Mitz Pettel  <mitz@webkit.org>
1689
1690         Reviewed by Maciej.
1691
1692         - http://bugs.webkit.org/show_bug.cgi?id=15303
1693           Remove now-redundant code to restore dialog arguments after clear
1694
1695         This patch reverts the kjs_window.* parts of r25576 because following
1696         r25783, window properties, including dialog arguments, are not cleared
1697         when the newly created modal dialog transitions to the document.
1698
1699         * bindings/js/kjs_window.cpp:
1700         (KJS::WindowPrivate::WindowPrivate):
1701         (KJS::createWindow):
1702         (KJS::showModalDialog):
1703         (KJS::Window::clear):
1704         (KJS::WindowFunc::callAsFunction):
1705         (KJS::Window::setReturnValueSlot):
1706         * bindings/js/kjs_window.h:
1707
1708 2007-10-14  Mitz Pettel  <mitz@webkit.org>
1709
1710         Reviewed by Dave Hyatt.
1711
1712         - fix http://bugs.webkit.org/show_bug.cgi?id=15309
1713           <rdar://problem/5512020> Crash due to infinite recursion in RenderTable::addChild
1714
1715         Test: fast/table/generated-caption.html
1716
1717         * rendering/RenderTable.cpp:
1718         (WebCore::RenderTable::addChild): Changed to make sure that the child is
1719         not added into generated after content. Also made adding a child before
1720         a table caption work correctly instead of adding the child after the caption.
1721
1722 2007-10-14  Peter Kasting  <zerodpx@gmail.com>
1723
1724         Reviewed by Maciej.
1725
1726         http://bugs.webkit.org/show_bug.cgi?id=15141
1727         Feed GIF reader data from the point in the stream it expects.  Also,
1728         mirror the reader's failure state up to the wrapping decoder.
1729
1730         * platform/image-decoders/gif/GIFImageReader.cpp:
1731         (GIFImageReader::read):
1732
1733 2007-10-14  Peter Kasting  <zerodpx@gmail.com>
1734
1735         Reviewed by Maciej.
1736
1737         http://bugs.webkit.org/show_bug.cgi?id=15142
1738         Return correct frame count in GIFImageDecoder::frameBufferAtIndex(),
1739         even if more data has arrived since the last decoding pass.
1740
1741         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1742         (WebCore::GIFImageDecoder::frameBufferAtIndex):
1743
1744 == Rolled over to ChangeLog-2007-10-14 ==