Build fix.
[WebKit-https.git] / WebKit / win / ChangeLog
1 2008-03-05  Anders Carlsson  <andersca@apple.com>
2
3         Build fix.
4
5         * WebKit.vcproj/WebKit.vcproj:
6
7 2008-03-04  Sam Weinig  <sam@webkit.org>
8
9         Reviewed by Mark Rowe.
10
11         - Remove all unnecessary includes of JSDOMWindowBase.h, we prefer including
12           JSDOMWindow.h
13
14         * WebFrame.cpp:
15
16 2008-03-04  Adam Roben  <aroben@apple.com>
17
18         WebScriptDebugServer cleanup
19
20         Reviewed by Anders.
21
22         * WebScriptDebugServer.cpp: Renamed m_callingServer to
23         m_callingListeners.
24         (WebScriptDebugServer::WebScriptDebugServer):
25         (WebScriptDebugServer::sharedWebScriptDebugServer): Changed to keep
26         the shared instance as a function-level static.
27         (WebScriptDebugServer::didLoadMainResourceForDataSource): Made return
28         void.
29         (WebScriptDebugServer::sourceParsed):
30         (WebScriptDebugServer::callEvent):
31         (WebScriptDebugServer::atStatement):
32         (WebScriptDebugServer::returnEvent):
33         (WebScriptDebugServer::exception):
34         (WebScriptDebugServer::serverDidDie): Made return void.
35         * WebScriptDebugServer.h:
36           - Removed unnecessary #includes
37           - Made inheritance from KJS::Debugger private
38           - Made some methods private
39
40 2008-03-04  Adam Roben  <aroben@apple.com>
41
42         Remove WebScriptDebugger
43
44         Reviewed by Anders.
45
46         * WebKit.vcproj/WebKit.vcproj: Removed files from project.
47         * WebScriptDebugServer.cpp:
48         (frame): Moved here from WebScriptDebugger.cpp.
49         (webFrame): Ditto.
50         (webView): Ditto.
51         (WebScriptDebugServer::WebScriptDebugServer): Initialize new member.
52         * WebScriptDebugServer.h: Changed to inherit directly from
53         KJS::Debugger instead of from WebScriptDebugger, and added
54         m_callingServer member that WebScriptDebugger used to own.
55         * WebScriptDebugger.cpp: Removed.
56         * WebScriptDebugger.h: Removed.
57
58 2008-03-04  Adam Roben  <aroben@apple.com>
59
60         Move sourceParsed to WebScriptDebugServer
61
62         Reviewed by Anders.
63
64         * WebScriptDebugServer.cpp:
65         (WebScriptDebugServer::sourceParsed): Moved here from
66         WebScriptDebugger and merged with didParseSource/failedToParseSource.
67         * WebScriptDebugServer.h: Removed didParseSource/failedToParseSource.
68         * WebScriptDebugger.cpp: Removed sourceParsed.
69         * WebScriptDebugger.h: Ditto.
70
71 2008-03-04  Adam Roben  <aroben@apple.com>
72
73         Move callEvent, returnEvent, and exception to WebScriptDebugServer
74
75         Reviewed by Anders.
76
77         * WebScriptDebugServer.cpp:
78         (WebScriptDebugServer::callEvent): Moved here from WebScriptDebugger
79         and merged with didEnterCallFrame.
80         (WebScriptDebugServer::returnEvent): Ditto for willLeaveCallFrame.
81         (WebScriptDebugServer::exception): Ditto for exceptionWasRaised.
82         * WebScriptDebugServer.h: Removed didEnterCallFrame,
83         willLeaveCallFrame, and exceptionWasRaised.
84         * WebScriptDebugger.cpp: Removed callEvent, returnEvent, and
85         exception.
86         * WebScriptDebugger.h: Ditto.
87
88 2008-03-04  Adam Roben  <aroben@apple.com>
89
90         Move atStatement to WebScriptDebugServer
91
92         Reviewed by Anders.
93
94         * WebScriptDebugServer.cpp:
95         (WebScriptDebugServer::atStatement): Moved here and merged with the
96         old willExecuteStatement method.
97         * WebScriptDebugServer.h: Removed inheritance from
98         IWebScriptDebugListener, which no one was relying on.
99         * WebScriptDebugger.cpp:
100         (webFrame): Made non-static.
101         (webView): Ditto.
102         * WebScriptDebugger.h: Added declarations of webFrame and webView
103         methods for WebScriptDebugServer's benefit. Removed unused m_webView
104         and m_frame members.
105
106 2008-03-04  Adam Roben  <aroben@apple.com>
107
108         Start to merge WebScriptDebugger and WebScriptDebugServer
109
110         WebScriptDebugServer now inherits from WebScriptDebugger.
111
112         Reviewed by Anders.
113
114         * WebScriptDebugServer.cpp:
115         (WebScriptDebugServer::pageCreated): Use sharedWebScriptDebugServer
116         instead of WebScriptDebugger::shared.
117         (WebScriptDebugServer::addListener): Ditto.
118         (WebScriptDebugServer::removeListener): Ditto.
119         * WebScriptDebugServer.h: Changed to inherit from WebScriptDebugger.
120         * WebScriptDebugger.cpp: Removed shared method.
121         * WebScriptDebugger.h: Made constructor/destructor protected, and
122         removed shared method.
123
124 2008-03-04  Adam Roben  <aroben@apple.com>
125
126         Use WebCore's new debugger-attaching code
127
128         Reviewed by Kevin M.
129
130         * WebCoreSupport/WebFrameLoaderClient.cpp: Moved a kit() function to
131         WebView.{cpp,h} so that other files can call it.
132         * WebFrame.cpp:
133         (WebFrame::WebFrame): Removed m_scriptDebugger member.
134         (WebFrame::windowObjectCleared): Removed attach/detach calls. This is
135         no longer needed because WebScriptDebugger no longer stores any
136         per-WebFrame state.
137         * WebFrame.h:
138         * WebScriptDebugServer.cpp:
139         (WebScriptDebugServer::pageCreated): Added. Attaches our shared
140         debugger to the Page if we have any listeners.
141         (WebScriptDebugServer::addListener): Sets our shared debugger for all
142         Pages when we get our first listener.
143         (WebScriptDebugServer::removeListener): Removes our shared debugger
144         from all Pages when we lose our last listener.
145         * WebScriptDebugServer.h:
146         * WebScriptDebugger.cpp:
147         (WebScriptDebugger::shared): Added.
148         (WebScriptDebugger::WebScriptDebugger): Removed m_frame member.
149         (WebScriptDebugger::~WebScriptDebugger): Added.
150         (frame): Gets a Frame from an ExecState.
151         (webFrame): Gets a WebFrame from an ExecState.
152         (webView): Gets a WebView from an ExecState.
153         (WebScriptDebugger::sourceParsed): Changed to call webFrame() and
154         webView() instead of using m_frame and m_webView members.
155         (WebScriptDebugger::callEvent): Ditto.
156         (WebScriptDebugger::atStatement): Ditto.
157         (WebScriptDebugger::returnEvent): Ditto.
158         (WebScriptDebugger::exception): Ditto.
159         * WebScriptDebugger.h:
160         * WebView.cpp:
161         (kit): Moved here from WebFrameLoaderClient.cpp.
162         (WebView::initWithFrame): Tell the WebScriptDebugServer about the new
163         Page so it can attach a debugger if needed.
164         * WebView.h:
165
166 2008-03-04  Adam Roben  <aroben@apple.com>
167
168         Change WebView's string-finding methods to call through to Page
169
170         These methods were added to Page back in r28878 (and the
171         implementation was copied from WebView!) but we never switched over to
172         using them.
173
174         Reviewed by Sam.
175
176         * WebView.cpp:
177         (WebView::searchFor): Call through to Page::findString.
178         (WebView::markAllMatchesForText): Call through to Page.
179         (WebView::unmarkAllTextMatches): Ditto.
180
181 2008-03-04  Adam Roben  <aroben@apple.com>
182
183         Actually pause the process while Drosera is at a breakpoint
184
185         WebScriptDebugServer::suspendProcessIfPaused is supposed to pause the
186         process while Drosera is at a breakpoint. Previously we were just
187         starting a message pump that would deliver messages to all windows in
188         the process, allowing mouse events, JS timers, etc. to execute.
189
190         Now we only deliver messages to COM's message window, which is all we
191         need to allow RPC to function.
192
193         Reviewed by Anders.
194
195         * WebScriptDebugServer.cpp:
196         (comMessageWindow): Added. Finds COM's message window.
197         (WebScriptDebugServer::suspendProcessIfPaused): Only deliver messages
198         to COM's message window so that mouse events, JS timers, etc., won't
199         execute.
200
201 2008-03-03  Adam Roben  <aroben@apple.com>
202
203         Generate WebScriptCallFrame instances dynamically
204
205         WebScriptDebugger no longer holds a reference to the topmost call
206         frame, and WebScriptCallFrame no longer holds a reference to its
207         caller. We now generate WebScriptCallFrame instances as needed by
208         walking the callingExecState chain.
209
210         By making WebKit no longer responsible for keeping track of the call
211         stack, we get one step closer to moving most JS debugging code out of
212         WebKit entirely.
213
214         This incidentally fixes a bug in Drosera where we'd never show the
215         global scope in the call stack.
216
217         Reviewed by Sam and Kevin M.
218
219         * WebScriptCallFrame.cpp:
220         (callingFunctionOrGlobalExecState): Finds the nearest calling
221         ExecState that is a FunctionExecState or GlobalExecState, if any, and
222         returns it.
223         (WebScriptCallFrame::WebScriptCallFrame):
224           - No longer takes a caller parameter.
225           - Sets m_state to the callingFunctionOrGlobalExecState of the
226             ExecState passed in.
227         (WebScriptCallFrame::createInstance): Removed the caller parameter.
228         (WebScriptCallFrame::caller): Generate a new WebScriptCallFrame on the
229         fly from our ExecState.
230         * WebScriptCallFrame.h: No longer holds a reference to the caller.
231         * WebScriptDebugger.cpp:
232         (WebScriptDebugger::WebScriptDebugger): Removed the call to callEvent
233         that was supposed to set up the global scope call frame, but never
234         worked because m_callingServer was set to true, which would cause
235         callEvent to return early without doing anything. Also removed the
236         m_callingServer guards since we're not calling callEvent anymore.
237         (WebScriptDebugger::callEvent): Create a WebScriptCallFrame on the
238         fly from the passed-in ExecState.
239         (WebScriptDebugger::atStatement): Ditto.
240         (WebScriptDebugger::returnEvent): Ditto, but use the callingExecState.
241         This is equivalent to what calling leaveFrame() did before.
242         (WebScriptDebugger::exception): Ditto, using the passed-in ExecState.
243         * WebScriptDebugger.h: Removed m_topStackFrame member and
244         enterFrame/leaveFrame methods.
245
246 2008-03-03  Sam Weinig  <sam@webkit.org>
247
248         Windows build fix.
249
250         * WebFrame.cpp:
251         (WebFrame::windowObjectCleared):
252
253 2008-03-03  David Hyatt  <hyatt@apple.com>
254
255         Full page zoom work.  Make setting of a zoom factor take a boolean saying whether it is a text only
256         or full page zoom.
257
258         Reviewed by Tim H.
259
260         * WebFrame.cpp:
261         (WebFrame::setTextSizeMultiplier):
262
263 2008-02-29  Adam Roben  <aroben@apple.com>
264
265         Delete an unused file
266
267         Rubberstamped by Brady.
268
269         * Interfaces/IWebScriptScope.idl: Removed.
270
271 2008-02-28  Adam Roben  <aroben@apple.com>
272
273         Change WebPreferences to be backed by CFPreferences
274
275         Reviewed by Ada, Geoff, Steve, and Darin.
276
277         * WebPreferenceKeysPrivate.h:
278         * WebPreferences.cpp:
279         (WebPreferences::sharedStandardPreferences): Changed to call
280         setAutoSaves(TRUE) before calling load(). This ensures that the
281         preferences being migrated to CFPreferences are saved to disk.
282         (WebPreferences::valueForKey): Changed to return a RetainPtr to ensure
283         that the refcount is managed properly. Now attempts to retrieve a
284         value from CFPreferences before falling back to the default settings.
285         (WebPreferences::setValueForKey): Now saves the value in
286         CFPreferences if m_autoSaves is true.
287         (WebPreferences::stringValueForKey): Updated for valueForKey changes.
288         (WebPreferences::integerValueForKey): DItto.
289         (WebPreferences::boolValueForKey): Ditto.
290         (WebPreferences::floatValueForKey): Ditto.
291         (WebPreferences::save): Now simply calls CFPreferencesAppSynchronize.
292         (WebPreferences::load): Always initializes m_privatePrefs to an empty
293         CFMutableDictionary.
294         (WebPreferences::migrateWebKitPreferencesToCFPreferences): Migrates
295         preferences from our old custom plist to CFPreferences and then
296         deletes our custom plist, if the migration has never occurred before.
297         (WebPreferences::copyWebKitPreferencesToCFPreferences): Copies
298         preferences to CFPreferences. If we've never migrated the default
299         settings from Safari 3 Beta before, we omit them from this copying
300         procedure.
301         * WebPreferences.h:
302
303 2008-02-28  Adam Roben  <aroben@apple.com>
304
305         Refactor value <-> CFNumber conversions into some helper functions
306
307         Reviewed by Jon.
308
309         * WebPreferences.cpp:
310         (preferencesPath): Changed to return a const String&.
311         (numberValueForPreferencesValue): Converts a value from preferences to
312         a native numeric type.
313         (cfNumber): Converts a native numeric value to a CFNumberRef.
314         (booleanValueForPreferencesValue): Converts a value from preferences
315         to a native boolean.
316         (WebPreferences::integerValueForKey): Changed to call
317         numberValueForPreferencesValue.
318         (WebPreferences::floatValueForKey): Ditto.
319         (WebPreferences::boolValueForKey): Changed to call
320         booleanValueForPreferencesValue.
321         (WebPreferences::setIntegerValue): Changed to call cfNumber.
322         (WebPreferences::setLongLongValue): Ditto.
323
324 2008-02-27  Adam Roben  <aroben@apple.com>
325
326         Add WebPreferences::setValueForKey
327
328         This is just a small refactoring of some duplicated logic into a
329         shared method.
330
331         Reviewed by Sam.
332
333         * WebPreferences.cpp:
334         (WebPreferences::setValueForKey): Added.
335         (WebPreferences::setStringValue): Call setValueForKey.
336         (WebPreferences::setIntegerValue): Ditto.
337         (WebPreferences::setBoolValue): Ditto.
338         (WebPreferences::setLongLongValue): Ditto.
339         * WebPreferences.h:
340
341 2008-02-27  Adam Roben  <aroben@apple.com>
342
343         Remove WebPreferences' static members
344
345         s_defaultSettings is now a file-level static, and
346         s_standardPreferences has been removed completely (it wasn't being
347         used).
348
349         Reviewed by Sam.
350
351         * WebPreferences.cpp:
352         (WebPreferences::initializeDefaultSettings):
353         (WebPreferences::valueForKey):
354         (WebPreferences::migrateDefaultSettingsFromSafari3Beta):
355         (WebPreferences::removeValuesMatchingDefaultSettings):
356         * WebPreferences.h:
357
358 2008-02-29  Steve Falkenburg  <sfalken@apple.com>
359
360         Don't free the VARIANT passed into Write, since it is an input parameter owned by the caller.
361         Found via code inspection.
362         
363         Reviewed by Adam.
364
365         * WebActionPropertyBag.cpp:
366         (WebActionPropertyBag::Write):
367         * WebElementPropertyBag.cpp:
368         (WebElementPropertyBag::Write):
369
370 2008-02-27  Matt Lilek  <webkit@mattlilek.com>
371
372         Reviewed by Adam Roben.
373
374         Bug 14348: Messing up the inspector by dragging an URL into it
375         http://bugs.webkit.org/show_bug.cgi?id=14348
376         <rdar://problem/5283620> and <rdar://problem/5712808>
377
378         Add a new class to handle the Inspector's delegate calls.
379
380         * WebCoreSupport/WebInspectorClient.cpp:
381         (WebInspectorClient::createPage):
382         * WebCoreSupport/WebInspectorDelegate.cpp: Added.
383         (:m_refCount):
384         (WebInspectorDelegate::createInstance):
385         (WebInspectorDelegate::AddRef):
386         (WebInspectorDelegate::Release):
387         (WebInspectorDelegate::dragDestinationActionMaskForDraggingInfo):
388         * WebCoreSupport/WebInspectorDelegate.h: Added.
389         (WebInspectorDelegate::QueryInterface):
390         (WebInspectorDelegate::createWebViewWithRequest):
391         (WebInspectorDelegate::webViewShow):
392         (WebInspectorDelegate::webViewClose):
393         (WebInspectorDelegate::webViewFocus):
394         (WebInspectorDelegate::webViewUnfocus):
395         (WebInspectorDelegate::webViewFirstResponder):
396         (WebInspectorDelegate::makeFirstResponder):
397         (WebInspectorDelegate::setStatusText):
398         (WebInspectorDelegate::webViewStatusText):
399         (WebInspectorDelegate::webViewAreToolbarsVisible):
400         (WebInspectorDelegate::setToolbarsVisible):
401         (WebInspectorDelegate::webViewIsStatusBarVisible):
402         (WebInspectorDelegate::setStatusBarVisible):
403         (WebInspectorDelegate::webViewIsResizable):
404         (WebInspectorDelegate::setResizable):
405         (WebInspectorDelegate::setFrame):
406         (WebInspectorDelegate::webViewFrame):
407         (WebInspectorDelegate::setContentRect):
408         (WebInspectorDelegate::webViewContentRect):
409         (WebInspectorDelegate::runJavaScriptAlertPanelWithMessage):
410         (WebInspectorDelegate::runJavaScriptConfirmPanelWithMessage):
411         (WebInspectorDelegate::runJavaScriptTextInputPanelWithPrompt):
412         (WebInspectorDelegate::runBeforeUnloadConfirmPanelWithMessage):
413         (WebInspectorDelegate::runOpenPanelForFileButtonWithResultListener):
414         (WebInspectorDelegate::mouseDidMoveOverElement):
415         (WebInspectorDelegate::contextMenuItemsForElement):
416         (WebInspectorDelegate::validateUserInterfaceItem):
417         (WebInspectorDelegate::shouldPerformAction):
418         (WebInspectorDelegate::willPerformDragDestinationAction):
419         (WebInspectorDelegate::dragSourceActionMaskForPoint):
420         (WebInspectorDelegate::willPerformDragSourceAction):
421         (WebInspectorDelegate::contextMenuItemSelected):
422         (WebInspectorDelegate::hasCustomMenuImplementation):
423         (WebInspectorDelegate::trackCustomPopupMenu):
424         (WebInspectorDelegate::measureCustomMenuItem):
425         (WebInspectorDelegate::drawCustomMenuItem):
426         (WebInspectorDelegate::addCustomMenuDrawingData):
427         (WebInspectorDelegate::cleanUpCustomMenuDrawingData):
428         (WebInspectorDelegate::canTakeFocus):
429         (WebInspectorDelegate::takeFocus):
430         (WebInspectorDelegate::registerUndoWithTarget):
431         (WebInspectorDelegate::removeAllActionsWithTarget):
432         (WebInspectorDelegate::setActionTitle):
433         (WebInspectorDelegate::undo):
434         (WebInspectorDelegate::redo):
435         (WebInspectorDelegate::canUndo):
436         (WebInspectorDelegate::canRedo):
437         * WebKit.vcproj/WebKit.vcproj:
438
439 2008-02-26  Adam Roben  <aroben@apple.com>
440
441         Move ResourceLoadDelegate methods to WebFrameLoaderClient
442
443         Changed all methods to use early returns where possible and COMPtr's
444         AdoptCOM/Query constructors.
445
446         Reviewed by Anders.
447
448         * WebCoreSupport/WebFrameLoaderClient.cpp:
449         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
450         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
451         (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
452         (WebFrameLoaderClient::dispatchWillSendRequest):
453         (WebFrameLoaderClient::dispatchDidReceiveResponse):
454         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
455         (WebFrameLoaderClient::dispatchDidFinishLoading):
456         (WebFrameLoaderClient::dispatchDidFailLoading):
457         * WebCoreSupport/WebFrameLoaderClient.h:
458         * WebFrame.cpp:
459         * WebFrame.h:
460
461 2008-02-26  Adam Roben  <aroben@apple.com>
462
463         Move two more methods to WebFrameLoaderClient
464
465         Reviewed by Anders.
466
467         * WebCoreSupport/WebFrameLoaderClient.cpp:
468         (kit):
469         (WebFrameLoaderClient::dispatchCreatePage): Changed nested ifs to
470         early returns, and changed to use the COMPtr Query constructor.
471         (WebFrameLoaderClient::dispatchDidLoadMainResource): Added an early
472         return, and changed to use getWebDataSource.
473         * WebCoreSupport/WebFrameLoaderClient.h:
474         * WebFrame.cpp:
475         * WebFrame.h:
476
477 2008-02-26  Adam Roben  <aroben@apple.com>
478
479         Get rid of IID_WebFrame
480
481         Reviewed by Anders.
482
483         * WebFrame.cpp: Removed IID_WebFrame definition.
484         (WebFrame::QueryInterface): Use __uuidof(WebFrame) instead of
485         IID_WebFrame.
486         (WebFrame::isDescendantOfFrame): Use COMPtr's Query constructor
487         instead of a manual QueryInterface.
488         * WebFrame.h: Removed IID_WebFrame declaration, gave WebFrame a
489         DECLSPEC_UUID.
490
491 2008-02-26  Adam Roben  <aroben@apple.com>
492
493         Move WebHistory-related methods to WebFrameLoaderClient
494
495         Reviewed by Anders.
496
497         * WebCoreSupport/WebFrameLoaderClient.cpp:
498         (WebFrameLoaderClient::updateGlobalHistory):
499         (WebFrameLoaderClient::shouldGoToHistoryItem):
500         (WebFrameLoaderClient::setTitle): Changed some nested ifs into early
501         returns.
502         (WebFrameLoaderClient::webHistory): Changed to return a COMPtr to
503         make the reference management foolproof.
504         * WebCoreSupport/WebFrameLoaderClient.h:
505         * WebFrame.cpp:
506         * WebFrame.h:
507
508 2008-02-26  Adam Roben  <aroben@apple.com>
509
510         Move cache-related methods to WebFrameLoaderClient
511
512         Reviewed by Anders.
513
514         * WebCoreSupport/WebFrameLoaderClient.cpp:
515         (getWebDataSource): Moved to the top of the file.
516         (WebFrameLoaderClient::savePlatformDataToCachedPage):
517         (WebFrameLoaderClient::transitionToCommittedForNewPage):
518         (WebFrameLoaderClient::canCachePage):
519         * WebCoreSupport/WebFrameLoaderClient.h:
520         * WebFrame.cpp:
521         * WebFrame.h:
522
523 2008-02-25  Adam Roben  <aroben@apple.com>
524
525         Move plugin-related methods to WebFrameLoaderClient
526
527         Reviewed by Anders.
528
529         * WebCoreSupport/WebFrameLoaderClient.cpp:
530         (WebFrameLoaderClient::WebFrameLoaderClient):
531         (WebFrameLoaderClient::setMainDocumentError):
532         (WebFrameLoaderClient::committedLoad): Added some early returns.
533         (WebFrameLoaderClient::receivedData):
534         (WebFrameLoaderClient::finishedLoading): Ditto.
535         (getWebDataSource):
536         (WebFrameLoaderClient::createPlugin):
537         * WebCoreSupport/WebFrameLoaderClient.h:
538         * WebFrame.cpp:
539         (WebFrame::WebFramePrivate::WebFramePrivate):
540         * WebFrame.h:
541
542 2008-02-25  Adam Roben  <aroben@apple.com>
543
544         Move createFrame to WebFrameLoaderClient
545
546         Reviewed by Anders.
547
548         * WebCoreSupport/WebFrameLoaderClient.cpp:
549         (WebFrameLoaderClient::createFrame):
550         (WebFrameLoaderClient::loadURLIntoChild):
551         * WebCoreSupport/WebFrameLoaderClient.h:
552         * WebFrame.cpp:
553         * WebFrame.h:
554
555 2008-02-25  Adam Roben  <aroben@apple.com>
556
557         Move progress-related methods to WebFrameLoaderClient
558
559         Reviewed by Anders.
560
561         * WebCoreSupport/WebFrameLoaderClient.cpp:
562         (WebFrameLoaderClient::postProgressStartedNotification):
563         (WebFrameLoaderClient::postProgressEstimateChangedNotification):
564         (WebFrameLoaderClient::postProgressFinishedNotification):
565         * WebCoreSupport/WebFrameLoaderClient.h:
566         * WebFrame.cpp:
567         * WebFrame.h:
568
569 2008-02-25  Adam Roben  <aroben@apple.com>
570
571         Remove WebFrame::detachedFromParent1
572
573         This method was removed from FrameLoaderClient in r19042, but was
574         never removed from WebFrame.
575
576         Reviewed by Anders.
577
578         * WebFrame.cpp:
579         * WebFrame.h:
580
581 2008-02-23  Adam Roben  <aroben@apple.com>
582
583         Move many dispatch methods to WebFrameLoaderClient
584
585         Reviewed by Sam.
586
587         * WebCoreSupport/WebFrameLoaderClient.cpp:
588         (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
589         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
590         (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
591         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
592         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
593         (WebFrameLoaderClient::dispatchWillClose):
594         (WebFrameLoaderClient::dispatchDidReceiveIcon):
595         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
596         (WebFrameLoaderClient::dispatchDidReceiveTitle):
597         (WebFrameLoaderClient::dispatchDidCommitLoad):
598         (WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
599         (WebFrameLoaderClient::dispatchDidFinishLoad):
600         (WebFrameLoaderClient::dispatchDidFirstLayout):
601         (WebFrameLoaderClient::dispatchShow):
602         * WebCoreSupport/WebFrameLoaderClient.h:
603         * WebFrame.cpp:
604         * WebFrame.h:
605
606 2008-02-23  Adam Roben  <aroben@apple.com>
607
608         Move two more methods to WebFrameLoaderClient
609
610         Reviewed by Sam.
611
612         * WebCoreSupport/WebFrameLoaderClient.cpp:
613         (WebFrameLoaderClient::hasFrameView):
614         (WebFrame::forceLayout):
615         * WebCoreSupport/WebFrameLoaderClient.h:
616         * WebFrame.cpp:
617         * WebFrame.h:
618
619 2008-02-24  Darin Adler  <darin@apple.com>
620
621         Reviewed by Sam.
622
623         - remove separate client calls for "standard" and "reload' history
624
625         * WebFrame.cpp:
626         (WebFrame::updateGlobalHistory):
627         * WebFrame.h:
628
629 2008-02-23  Brent Fulgham  <bfulgham@gmail.com>
630
631         Not reviewed, build fix.
632
633         * WebIconDatabase.cpp:
634         * WebIconDatabase.h:
635
636 2008-02-22  Adam Roben  <aroben@apple.com>
637
638         Move hasWebView to WebFrameLoaderClient
639
640         I added an m_webFrame member to WebFrameLoaderClient. This is slightly
641         strange because WebFrame inherits from WebFrameLoaderClient, but this
642         member will be needed once we remove the inheritance, so we might as
643         well prepare for that now.
644
645         Reviewed by Anders.
646
647         * WebCoreSupport/WebFrameLoaderClient.cpp:
648         (WebFrameLoaderClient::WebFrameLoaderClient): Changed to take a
649         WebFrame* parameter.
650         (WebFrameLoaderClient::hasWebView): Moved here from WebFrame.cpp.
651         * WebCoreSupport/WebFrameLoaderClient.h: Added an m_webFrame
652         parameter.
653         * WebFrame.cpp: Removed hasWebView.
654         (WebFrame::WebFrame): Updated for WebFrameLoaderClient constructor
655         change.
656         * WebFrame.h:
657
658 2008-02-22  Adam Roben  <aroben@apple.com>
659
660         Start to move FrameLoaderClient methods off WebFrame onto a separate class
661
662         WebFrame now inherits from a new WebFrameLoaderClient class, which
663         will gradually assume all FrameLoaderClient responsibilities. Once
664         that process is complete, WebFrame will no longer inherit from
665         WebFrameLoaderClient.
666
667         In this first patch, I've only moved createDocumentLoader up to the
668         WebFrameLoaderClient class.
669
670         Reviewed by Anders.
671
672         * WebCoreSupport/WebFrameLoaderClient.cpp: Added.
673         (WebFrameLoaderClient::WebFrameLoaderClient):
674         (WebFrameLoaderClient::~WebFrameLoaderClient):
675         (WebFrameLoaderClient::createDocumentLoader): Moved here from
676         WebFrame.cpp.
677         * WebCoreSupport/WebFrameLoaderClient.h: Added.
678         * WebFrame.cpp: Removed createDocumentLoader implementation.
679         * WebFrame.h: Changed to inherit from WebFrameLoaderClient.
680         * WebKit.vcproj/WebKit.vcproj: Added new files to the project.
681
682 2008-02-22  Adam Roben  <aroben@apple.com>
683
684         Move FormValuesPropertyBag into its own files
685
686         Reviewed by Sam.
687
688         * WebCoreSupport/FormValuesPropertyBag.cpp: Added.
689         (FormValuesPropertyBag::QueryInterface):
690         (FormValuesPropertyBag::AddRef):
691         (FormValuesPropertyBag::Release):
692         (FormValuesPropertyBag::Read):
693         (FormValuesPropertyBag::Write):
694         (FormValuesPropertyBag::CountProperties):
695         (FormValuesPropertyBag::GetPropertyInfo):
696         (FormValuesPropertyBag::LoadObject):
697         * WebCoreSupport/FormValuesPropertyBag.h: Added.
698         (FormValuesPropertyBag::FormValuesPropertyBag):
699         * WebFrame.cpp: Deleted FormValuesPropertyBag code.
700         * WebKit.vcproj/WebKit.vcproj: Added new files to the project.
701
702 2008-02-22  Adam Roben  <aroben@apple.com>
703
704         Remove some unused WebFrame methods
705
706         FrameWinClient was deleted back in r22965, but these methods were
707         never deleted.
708
709         Reviewed by Sam.
710
711         * WebFrame.cpp:
712         * WebFrame.h: Made one createFrame overload protected, since it's only
713         called internally by WebFrame.
714
715 2008-02-21  Adam Roben  <aroben@apple.com>
716
717         Move Client implementations into a WebCoreSupport directory
718
719         Reviewed by Anders.
720
721         * WebKit.vcproj/WebKit.vcproj: Updated file paths, and added
722         WebCoreSupport directory to the include path.
723         * WebCoreSupport/WebChromeClient.cpp: Renamed from WebKit/win/WebChromeClient.cpp.
724         * WebCoreSupport/WebChromeClient.h: Renamed from WebKit/win/WebChromeClient.h.
725         * WebCoreSupport/WebContextMenuClient.cpp: Renamed from WebKit/win/WebContextMenuClient.cpp.
726         * WebCoreSupport/WebContextMenuClient.h: Renamed from WebKit/win/WebContextMenuClient.h.
727         * WebCoreSupport/WebDragClient.cpp: Renamed from WebKit/win/WebDragClient.cpp.
728         * WebCoreSupport/WebDragClient.h: Renamed from WebKit/win/WebDragClient.h.
729         * WebCoreSupport/WebEditorClient.cpp: Renamed from WebKit/win/WebEditorClient.cpp.
730         * WebCoreSupport/WebEditorClient.h: Renamed from WebKit/win/WebEditorClient.h.
731         * WebCoreSupport/WebInspectorClient.cpp: Renamed from WebKit/win/WebInspectorClient.cpp.
732         * WebCoreSupport/WebInspectorClient.h: Renamed from WebKit/win/WebInspectorClient.h.
733
734 2008-02-20  Sam Weinig  <sam@webkit.org>
735
736         Reviewed by Darin and Geoff.
737
738         - WebKit part of <rdar://problem/5754378> work around missing video on YouTube front page with a site-specific hack
739
740         * WebView.cpp:
741         (WebView::notifyPreferencesChanged): Added a call to Settings::setNeedsSiteSpecificQuirks.
742         (WebView::setAllowSiteSpecificHacks): Added a comment about the problem Darin noticed, where
743         after you disable the site-specific hacks they persist until you open a new window or tweak
744         some other preference.
745
746 2008-02-19  Darin Adler  <darin@apple.com>
747
748         Reviewed by Sam.
749
750         * WebFrame.cpp:
751         (WebFrame::renderTreeAsExternalRepresentation): Changed to use String instead
752         of DeprecatedString.
753
754 2008-02-18  Steve Falkenburg  <sfalken@apple.com>
755
756         Make Drosera work on Vista.
757         
758         Runtime type library registration on Vista requires use of two new call:
759         RegisterTypeLibraryForUser and UnRegisterTypeLibraryForUser, which write to
760         HKCU.  LoadTypeLib[Ex] registers under HKLM, which fails under vista due to UAC.
761         
762         Reviewed by Adam.
763
764         * WebKitDLL.cpp:
765         (DllUnregisterServer): Call UnRegisterTypeLibraryForUser if available. Fix version number.
766         (DllRegisterServer): Call RegisterTypeLibraryForUser if available.
767
768 2008-02-18  Matt Lilek  <webkit@mattlilek.com>
769
770         Reviewed by Adam.
771
772         Remove FindSafari's Release configuration.
773
774         * WebKit.vcproj/WebKit.sln:
775
776 2008-02-16  Alexey Proskuryakov  <ap@webkit.org>
777
778         Reviewed by Darin.
779
780         http://bugs.webkit.org/show_bug.cgi?id=17397
781         <rdar://problem/5748245> REGRESSION (r30236-30336): Cannot backspace/enter in forms on Windows
782
783         * WebKit.vcproj/WebKit.vcproj: Add ENABLE_CROSS_DOCUMENT_MESSAGING definitions.
784
785 2008-02-15  Darin Adler  <darin@apple.com>
786
787         Reviewed by Adam.
788
789         - quick fix for a problem causing an assertion on launch
790
791         * WebFrame.cpp:
792         (WebFrame::loadData): Make an empty KURL even if the BSTR is null.
793         Later we might want to rethink this.
794
795 2008-02-14  Darin Adler  <darin@apple.com>
796
797         - updated for WebCore KURL changes
798
799         * MarshallingHelpers.cpp:
800         (MarshallingHelpers::BSTRToKURL): Removed deprecatedString call.
801         (MarshallingHelpers::KURLToBSTR): Tweaked for efficiency.
802         * WebContextMenuClient.cpp:
803         (WebContextMenuClient::searchWithGoogle): Updated for KURL changes.
804         * WebDataSource.cpp:
805         (WebDataSource::unreachableURL): Ditto.
806         * WebDownload.cpp:
807         (WebDownload::init): Ditto.
808         (WebDownload::initWithRequest): Ditto.
809         * WebFrame.cpp:
810         (WebFrame::loadData): Ditto.
811         (WebFrame::loadURLIntoChild): Ditto.
812         (WebFrame::objectContentType): Ditto.
813         * WebResource.cpp:
814         (WebResource::initWithData): Ditto.
815         * WebURLResponse.cpp:
816         (WebURLResponse::createInstance): Ditto.
817         (WebURLResponse::initWithURL): Ditto.
818         * WebView.cpp:
819         (WebView::userAgentForURL): Ditto.
820         (WebView::copyURL): Ditto.
821         (WebView::notifyPreferencesChanged): Ditto.
822
823 2008-02-14  Alexey Proskuryakov  <ap@webkit.org>
824
825         * WebChromeClient.cpp: (WebChromeClient::exceededDatabaseQuota): Forgot to re-apply review comments to
826         the previous check-in, fixing.
827
828 2008-02-14  Alexey Proskuryakov  <ap@webkit.org>
829
830         Reviewed by Adam Roben.
831
832         http://bugs.webkit.org/show_bug.cgi?id=17207
833         Database example doesn't work (requires not-yet-released Safari)
834
835         * WebChromeClient.cpp:
836         (WebChromeClient::exceededDatabaseQuota): Check Safari version, and allow 5 megabytes of storage
837         if it's too old.
838
839 2008-02-13  Ada Chan  <adachan@apple.com>
840
841         <rdar://problem/5740656> Leak in postDidAddIconNotification in WebIconDatabase
842
843         Reviewed by Darin.
844
845         * WebIconDatabase.cpp:
846         (postDidAddIconNotification): Need to adopt the newly created instance of CFDictionaryPropertyBag, 
847         which already has a ref count of 1.
848
849 2008-02-13  Rodney Dawes  <dobey@wayofthemonkey.com>
850
851         Fix Bug 17220: Illogical dependency between PluginView and
852         PluginDatabase
853         
854         <http://bugs.webkit.org/show_bug.cgi?id=17220>
855
856         Reviewed by Adam and Darin.
857
858         Update for the rename of PluginDatabase::createPluginView
859         to PluginView::create
860
861         * WebFrame.cpp:
862
863 2008-02-13  Adam Roben  <aroben@apple.com>
864
865         Windows build fix
866
867         * Interfaces/WebKit.idl: Create the typelib version symbol ourselves.
868
869 2008-02-12  Steve Falkenburg  <sfalken@apple.com>
870
871         Use a precompiled header to build WebKit.
872         
873         Reviewed by Adam.
874
875         * WebKit.vcproj/WebKit.vcproj:
876         * WebKitPrefix.cpp: Added.
877         * WebKitPrefix.h: Added.
878
879 2008-02-12  Steve Falkenburg  <sfalken@apple.com>
880
881         Changes to support merged MIDL output.
882
883         All COM interfaces are now generated to WebKit.h.
884
885         Reviewed by Sam, Ada.
886
887         * DOMCSSClasses.h:
888         * DOMCoreClasses.h:
889         * DOMEventsClasses.h:
890         * DOMHTMLClasses.h:
891         * DefaultDownloadDelegate.h:
892         * DefaultPolicyDelegate.cpp:
893         * DefaultPolicyDelegate.h:
894         * GEN_DOMObject.h:
895         * Interfaces/DOMCSS.idl:
896         * Interfaces/DOMCore.idl:
897         * Interfaces/DOMEvents.idl:
898         * Interfaces/DOMExtensions.idl:
899         * Interfaces/DOMHTML.idl:
900         * Interfaces/DOMPrivate.idl:
901         * Interfaces/DOMRange.idl:
902         * Interfaces/DOMWindow.idl:
903         * Interfaces/IGEN_DOMObject.idl:
904         * Interfaces/IWebArchive.idl:
905         * Interfaces/IWebBackForwardList.idl:
906         * Interfaces/IWebBackForwardListPrivate.idl:
907         * Interfaces/IWebCache.idl:
908         * Interfaces/IWebDataSource.idl:
909         * Interfaces/IWebDatabaseManager.idl:
910         * Interfaces/IWebDocument.idl:
911         * Interfaces/IWebDownload.idl:
912         * Interfaces/IWebEditingDelegate.idl:
913         * Interfaces/IWebError.idl:
914         * Interfaces/IWebErrorPrivate.idl:
915         * Interfaces/IWebFormDelegate.idl:
916         * Interfaces/IWebFrame.idl:
917         * Interfaces/IWebFrameLoadDelegate.idl:
918         * Interfaces/IWebFrameLoadDelegatePrivate.idl:
919         * Interfaces/IWebFramePrivate.idl:
920         * Interfaces/IWebFrameView.idl:
921         * Interfaces/IWebHTMLRepresentation.idl:
922         * Interfaces/IWebHTTPURLResponse.idl:
923         * Interfaces/IWebHistory.idl:
924         * Interfaces/IWebHistoryItem.idl:
925         * Interfaces/IWebHistoryItemPrivate.idl:
926         * Interfaces/IWebIconDatabase.idl:
927         * Interfaces/IWebInspector.idl:
928         * Interfaces/IWebJavaScriptCollector.idl:
929         * Interfaces/IWebKitStatistics.idl:
930         * Interfaces/IWebMutableURLRequest.idl:
931         * Interfaces/IWebMutableURLRequestPrivate.idl:
932         * Interfaces/IWebNotification.idl:
933         * Interfaces/IWebNotificationCenter.idl:
934         * Interfaces/IWebNotificationObserver.idl:
935         * Interfaces/IWebPolicyDelegate.idl:
936         * Interfaces/IWebPreferences.idl:
937         * Interfaces/IWebPreferencesPrivate.idl:
938         * Interfaces/IWebResource.idl:
939         * Interfaces/IWebResourceLoadDelegate.idl:
940         * Interfaces/IWebResourceLoadDelegatePrivate.idl:
941         * Interfaces/IWebScriptCallFrame.idl:
942         * Interfaces/IWebScriptDebugListener.idl:
943         * Interfaces/IWebScriptDebugServer.idl:
944         * Interfaces/IWebScriptObject.idl:
945         * Interfaces/IWebScriptScope.idl:
946         * Interfaces/IWebScrollBarDelegatePrivate.idl:
947         * Interfaces/IWebScrollBarPrivate.idl:
948         * Interfaces/IWebSecurityOrigin.idl:
949         * Interfaces/IWebTextRenderer.idl:
950         * Interfaces/IWebUIDelegate.idl:
951         * Interfaces/IWebUIDelegatePrivate.idl:
952         * Interfaces/IWebURLAuthenticationChallenge.idl:
953         * Interfaces/IWebURLRequest.idl:
954         * Interfaces/IWebURLResponse.idl:
955         * Interfaces/IWebURLResponsePrivate.idl:
956         * Interfaces/IWebUndoManager.idl:
957         * Interfaces/IWebUndoTarget.idl:
958         * Interfaces/IWebView.idl:
959         * Interfaces/IWebViewPrivate.idl:
960         * Interfaces/WebKit.idl:
961         * WebActionPropertyBag.cpp:
962         * WebBackForwardList.h:
963         * WebCache.h:
964         * WebDataSource.cpp:
965         * WebDataSource.h:
966         * WebDatabaseManager.h:
967         * WebDownload.h:
968         * WebEditorClient.cpp:
969         * WebEditorClient.h:
970         * WebError.h:
971         * WebFrame.cpp:
972         * WebFrame.h:
973         * WebFramePolicyListener.h:
974         * WebHTMLRepresentation.cpp:
975         * WebHTMLRepresentation.h:
976         * WebHistory.cpp:
977         * WebHistory.h:
978         * WebHistoryItem.h:
979         * WebIconDatabase.h:
980         * WebInspector.h:
981         * WebJavaScriptCollector.h:
982         * WebKit.vcproj/Interfaces.vcproj:
983         * WebKit.vcproj/WebKitGUID.vcproj:
984         * WebKitDLL.cpp:
985         * WebKitStatistics.h:
986         * WebMutableURLRequest.cpp:
987         * WebMutableURLRequest.h:
988         * WebNotification.h:
989         * WebNotificationCenter.h:
990         * WebPreferences.h:
991         * WebResource.h:
992         * WebScriptCallFrame.h:
993         * WebScriptDebugServer.cpp:
994         * WebScriptDebugServer.h:
995         * WebScriptDebugger.cpp:
996         * WebScriptDebugger.h:
997         * WebScriptObject.h:
998         * WebScrollBar.h:
999         * WebSecurityOrigin.h:
1000         * WebTextRenderer.h:
1001         * WebURLAuthenticationChallenge.h:
1002         * WebURLAuthenticationChallengeSender.h:
1003         * WebURLCredential.h:
1004         * WebURLProtectionSpace.h:
1005         * WebURLResponse.h:
1006         * WebView.cpp:
1007         * WebView.h:
1008
1009 2008-02-12  Anders Carlsson  <andersca@apple.com>
1010
1011         Reviewed by Adam.
1012
1013         Implement imageTitle.
1014         
1015         * WebCoreLocalizedStrings.cpp:
1016         (WebCore::imageTitle):
1017
1018 2008-02-12  Anders Carlsson  <andersca@apple.com>
1019
1020         Reviewed by Mitz.
1021
1022         * WebCoreLocalizedStrings.cpp:
1023         (WebCore::imageTitle):
1024         Add stub.
1025         
1026
1027 2008-02-07  Ada Chan  <adachan@apple.com>
1028
1029         <rdar://problem/5292433> certificate authentication support broken in Safari 3.0
1030         Added mechanism to communicate client certificate info back to CFNetwork.
1031
1032         Reviewed by Adam.
1033
1034         * Interfaces/IWebError.idl: Added new WebURLErrorClientCertificateRequired error.
1035         * Interfaces/IWebMutableURLRequestPrivate.idl: Added. Added method to set client 
1036         certificate info on the request.
1037         * WebKit.vcproj/Interfaces.vcproj: Added new idl.
1038         * WebKit.vcproj/WebKit.vcproj: Link crypt32.lib
1039         * WebKit.vcproj/WebKitGUID.vcproj:
1040         * WebMutableURLRequest.cpp:
1041         (WebMutableURLRequest::QueryInterface): Implements IWebMutableURLRequestPrivate.
1042         (deallocCertContext): Free certificate context.
1043         (copyCert): Duplicate the certificate context and returns it in a CFDataRef.
1044         (WebMutableURLRequest::setClientCertificate):
1045         * WebMutableURLRequest.h:
1046
1047 2008-02-05  Rodney Dawes  <dobey@wayofthemonkey.com>
1048
1049         Reviewed by Anders Carlsson.
1050
1051         Part one of http://bugs.webkit.org/show_bug.cgi?id=16924.
1052         Shared PluginDatabase, PluginInfoStore and PluginPackage implementations.
1053
1054         Track WebCore renames.
1055
1056         * WebFrame.cpp:
1057         (WebFrame::createPlugin):
1058         (WebFrame::redirectDataToPlugin):
1059         (WebFrame::createJavaAppletWidget):
1060         (WebFrame::objectContentType):
1061         * WebView.cpp:
1062         (WebViewWndProc):
1063         (WebView::canShowMIMEType):
1064         (WebView::addAdditionalPluginPath):
1065
1066 2008-02-05  Alexey Proskuryakov  <ap@webkit.org>
1067
1068         Reviewed by Darin.
1069
1070         http://bugs.webkit.org/show_bug.cgi?id=15248
1071         <rdar://problem/5497032> Can not enter accented characters using alt-numeric keypad (take two)
1072
1073         * WebView.cpp: (WebViewWndProc): KeyUp messages need to be translated, too.
1074
1075 2008-02-01  Darin Adler  <darin@apple.com>
1076
1077         - fix <rdar://problem/5680469> Each database worker thread takes a JSLock,
1078           which slows down all JavaScript execution until the thread terminates
1079
1080         * WebIconDatabase.cpp:
1081         (WebIconDatabase::scheduleNotificationDelivery): Updated for new callOnMainThread.
1082         (WebIconDatabase::deliverNotifications): Ditto.
1083         * WebIconDatabase.h: Ditto.
1084
1085 2008-01-31  Adam Roben  <aroben@apple.com>
1086
1087         Fix <rdar://5713172> Focus lost from Gmail message body after toggling
1088         tabs
1089
1090         This regressed in r29583. Prior to r29583, the code path that resulted
1091         in calling focusController->setFocusedFrame(0) was never getting hit.
1092         r29583 changed the code to adhere to the comment above the code and
1093         actually call setFocusedFrame(0) when losing focus to another part of
1094         the window. It turns out this is wrong behavior (and not what
1095         WebKit/mac does). The only time we should clear the focused frame is
1096         when we tab out of the WebView, and that's already taken care of by
1097         FocusController::advanceFocus. The code to clear the focused frame in
1098         WebView was written before FocusController::advanceFocus, so it was
1099         correct at one point but no longer is.
1100
1101         We now never call setFocusedFrame(0) when the WebView receives a
1102         WM_KILLFOCUS message. Instead we just call setFocused(false) on the
1103         focused frame so that blur events will be sent. This matches what
1104         WebKit/mac does.
1105
1106         Reviewed by Darin and Adele.
1107
1108         * WebView.cpp:
1109         (WebViewWndProc): Also reworded a couple of comments to make them
1110         clearer.
1111
1112 2008-01-31  Adam Roben  <aroben@apple.com>
1113
1114         Let WebCore take care of the highlight drawing entirely
1115
1116         Reviewed by Darin.
1117
1118         * WebInspectorClient.cpp:
1119         (WebInspectorClient::highlight): We now just show our highlight
1120         window and let WebCore figure out what/where to paint. Once all ports
1121         follow suit the Node* parameter to this method should be removed
1122         entirely, and the name should probably change to
1123         updateAndShowHighlight or something similar.
1124         * WebNodeHighlight.cpp: Renamed m_webView to m_inspectedWebViewWindow.
1125         (WebNodeHighlight::WebNodeHighlight): Now takes a WebView* parameter.
1126         (WebNodeHighlight::show): Renamed from highlight(). Now gets the
1127         WebView's HWND. Updated for member rename/removal.
1128         (WebNodeHighlight::updateWindow): Updated for member rename and for
1129         InspectorController changes.
1130         * WebNodeHighlight.h: Added m_inspectedWebView member, removed m_rect
1131         member, renamed highlight(Node*) -> show().
1132
1133 2008-01-31  Adam Roben  <aroben@apple.com>
1134
1135         Move node highlight drawing code to WebCore
1136
1137         Reviewed by Darin.
1138
1139         * WebNodeHighlight.cpp:
1140         (WebNodeHighlight::updateWindow): Call into WebCore to do the node
1141         highlight drawing.
1142
1143 2008-01-29  Adam Roben  <aroben@apple.com>
1144
1145         Fix a crash when opening the Inspector
1146
1147         Reviewed by Anders.
1148
1149         * WebInspectorClient.cpp:
1150         (WebInspectorClient::createPage): Call
1151         WebPreferences::initWithIdentifier so our custom WebPreferences will
1152         have all its members initialized.
1153
1154 2008-01-29  Adam Roben  <aroben@apple.com>
1155
1156         Fix Bug 16786: "Display images when page opens" preference affects
1157         Inspector
1158
1159         <http://bugs.webkit.org/show_bug.cgi?id=16786>
1160         <rdar://5712914>
1161
1162         Reviewed by Anders and Darin.
1163
1164         * WebInspectorClient.cpp:
1165         (WebInspectorClient::createPage): Create our own custom WebPreferences
1166         so that we won't be affected by global preference changes. This
1167         matches what Mac does.
1168
1169 2008-01-29  Adam Roben  <aroben@apple.com>
1170
1171         Fix <rdar://5713302> Web Inspector on Windows is not using the
1172         localized strings
1173
1174         Reviewed by Steve.
1175
1176         * WebInspectorClient.cpp:
1177         (getWebKitBundle): Added.
1178         (WebInspectorClient::createPage): Call getWebKitBundle.
1179         (WebInspectorClient::localizedStringsURL): Implemented.
1180
1181 2008-01-29  Alexey Proskuryakov  <ap@webkit.org>
1182
1183         Reviewed by Darin.
1184
1185         <rdar://problem/5710692> All storage tests fail/crash
1186
1187         * WebChromeClient.cpp: (WebChromeClient::exceededDatabaseQuota): Clients that do not implement
1188         database quota callbacks should have no database support - but not crash.
1189
1190 2008-01-26  Steve Falkenburg  <sfalken@apple.com>
1191
1192         <rdar://problem/5707607> REGRESSION: I hear a beep when selecting Alt-enter in address or search fields
1193         
1194         Reviewed by Oliver.
1195
1196         * WebView.cpp:
1197         (WebView::keyDown): Allow alt-return to be marked as handled by WebKit.
1198
1199 2008-01-24  Steve Falkenburg  <sfalken@apple.com>
1200
1201         Build fix
1202
1203         * WebKit.vcproj/WebKit.sln:
1204         * WebKit.vcproj/WebKit.submit.sln:
1205
1206 2008-01-24  Adam Roben  <aroben@apple.com>
1207
1208         Build fix
1209
1210         * WebView.cpp: Added a comma.
1211
1212 2008-01-24  Alexey Proskuryakov  <ap@webkit.org>
1213
1214         Reviewed by Adam Roben.
1215
1216         <rdar://problem/5702734> REGRESSION(r28936/r15890): Shift+del does not work in win Safari
1217
1218         * WebView.cpp: Fixed keyDownEntries to list this shortcut (and related ones, for consistency).
1219
1220 2008-01-23  Steve Falkenburg  <sfalken@apple.com>
1221
1222         <rdar://problem/5698732> Copyright strings should include 2008
1223         
1224         Reviewed by Sam.
1225
1226         * WebKit.vcproj/WebKit.rc:
1227
1228 2008-01-23  Adam Roben  <aroben@apple.com>
1229
1230         Fix <rdar://5698502> Inspector window reverts to default position/size unexpectedly
1231
1232         Reviewed by Hyatt.
1233
1234         * WebInspectorClient.cpp:
1235         (defaultWindowRect): Added.
1236         (WebInspectorClient::createPage):
1237             - Use defaultWindowRect() to set the initial size/position of the
1238               Inspector window.
1239             - Pass the Inspector window's client rect to
1240               IWebView::initWithFrame so that the WebView will be initially
1241               sized to fill the window.
1242         (WebInspectorClient::showWindow): Don't move/resize the window back to
1243         the defaults every time this method is called.
1244
1245 2008-01-23  Adam Roben  <aroben@apple.com>
1246
1247         Fix <rdar://5700620> REGRESSION (r28190): "Open frame in new tab" instead of "Open link in new tab" @ digg.com
1248
1249         Test: fast/events/contextmenu-scrolled-page-with-frame.html
1250
1251         Reviewed by Dan.
1252
1253         * WebView.cpp:
1254         (WebView::handleContextMenuEvent): Translate the mouse coordinates
1255         into document coordinates before performing the hit-test. This is what
1256         EventHandler does internally.
1257
1258 2008-01-23  Steve Falkenburg  <sfalken@apple.com>
1259
1260         <rdar://problem/5699509> Allow file upload dialog to be localized.
1261         
1262         Reviewed by Darin.
1263
1264         * English.lproj/Localizable.strings: Updated.
1265         * WebCoreLocalizedStrings.cpp:
1266         (WebCore::uploadFileText): Added.
1267         (WebCore::allFilesText): Added.
1268
1269 2008-01-22  Adam Roben  <aroben@apple.com>
1270
1271         Fix <rdar://5693599> REGRESSION (r29369): scroll bars are drawing when they shouldn't be on an ad on cnn.com
1272
1273         Now that we have multiple FrameViews per Frame on Windows, we need to
1274         make sure each FrameView gets its scrolling mode set correctly. On Mac
1275         this works because WebFrameView holds the scrolling mode and a single
1276         WebFrameView is shared by many FrameViews. On Windows, we have no such
1277         shared object, so we just ask the Frame's owner element for the
1278         scrolling mode.
1279
1280         Tests: fast/frames/frame-scrolling-attribute.html
1281                fast/frames/iframe-scrolling-attribute.html
1282
1283         Reviewed by Hyatt.
1284
1285         * WebFrame.cpp:
1286         (WebFrame::transitionToCommittedForNewPage): Set the scrolling mode
1287         on the FrameView based on the scrolling mode of the Frame's owner
1288         element.
1289
1290 2008-01-21  Darin Adler  <darin@apple.com>
1291
1292         Reviewed by John Sullivan.
1293
1294         - fix <rdar://problem/5644324> Delegate-less WebKit clients should have no databases
1295         - fix incorrect value for WebDatabaseDisplayNameKey in header
1296         
1297         * Interfaces/IWebDatabaseManager.idl: Renamed detailsForDatabaseWithOrigin to
1298         detailsForDatabase. Replaced deleteDatabasesWithOrigin with deleteOrigin.
1299         Renamed deleteDatabaseWithOrigin to deleteDatabase. Fixed incorrect value for
1300         WebDatabaseDisplayNameKey.
1301         * Interfaces/IWebPreferencesPrivate.idl: Removed defaultDatabaseQuota and
1302         setDefaultDatabaseQuota.
1303         * Interfaces/IWebUIDelegatePrivate.idl: Replaced the two database quota functions
1304         with a single one.
1305
1306         * WebChromeClient.cpp:
1307         (WebChromeClient::exceededDatabaseQuota): Replaced the two database quota functions
1308         with a single one.
1309         * WebChromeClient.h: Ditto.
1310
1311         * WebDatabaseManager.cpp:
1312         (WebDatabaseManager::detailsForDatabase): Changed to check for a name of null to
1313         detect a nonexistent database rather than using isValid.
1314         (WebDatabaseManager::deleteOrigin): Updated for name change (actually a semantic
1315         change too, but both have the same name).
1316         (WebDatabaseManager::deleteDatabase): Updated for name change.
1317         (WebKitSetWebDatabasesPathIfNecessary): Ditto.
1318
1319         * WebDatabaseManager.h: Updated for name changes.
1320
1321         * WebPreferenceKeysPrivate.h: Removed WebKitDefaultDatabaseQuotaKey.
1322         * WebPreferences.cpp:
1323         (WebPreferences::initializeDefaultSettings): Removed the default for
1324         WebKitDefaultDatabaseQuotaKey.
1325         * WebPreferences.h: Removed defaultDatabaseQuota and setDefaultDatabaseQuota.
1326         * WebView.cpp:
1327         (WebView::notifyPreferencesChanged): Removed the code to set the
1328         default database origin quota in WebCore::Settings based on IWebPreferencesPrivate.
1329
1330 2008-01-19  Mark Rowe  <mrowe@apple.com>
1331
1332         Fix inconsistent line endings and set svn:eol-style=native
1333         on IDL files that did not have it set.
1334
1335         * Interfaces/IGEN_DOMObject.idl:
1336
1337 2008-01-18  Adam Roben  <aroben@apple.com>
1338
1339         Fix <rdar://5693854> REGRESSION (r29581): fast/events/frame-click-focus.html failing
1340
1341         Restored the previous behavior of IWebViewPrivate::updateActiveState,
1342         which DRT depends on, and renamed it to
1343         IWebViewPrivate::updateFocusedAndActiveState to be clearer about its
1344         side-effects.
1345
1346         Reviewed by Adele.
1347
1348         * Interfaces/IWebViewPrivate.idl:
1349         * WebView.cpp:
1350         (WebViewWndProc): Removed some FIXMEs that we no longer want to fix
1351         because the current design is better.
1352         (WebView::updateActiveState): This is now just a method of WebView,
1353         not any of its public interfaces.
1354         (WebView::updateFocusedAndActiveState): Performs the tasks that the
1355         old IWebViewPrivate::updateActiveState performed.
1356         * WebView.h:
1357
1358 2008-01-18  Alexey Proskuryakov  <ap@webkit.org>
1359
1360         Reviewed by Adam Roben.
1361
1362         Fix plugin-related tests in Debug_Internal configuration, which are failing because of CRT version mismatch
1363         between DRT and TestNetscapePlugin.
1364
1365         * WebKit.vcproj/WebKit.sln: Use newly added TestNetscapePlugin Debug_Internal configuration.
1366
1367 2008-01-17  Steve Falkenburg  <sfalken@apple.com>
1368
1369         Build fix.
1370
1371         * WebKit.vcproj/WebKit.make:
1372
1373 2008-01-16  Adam Roben  <aroben@apple.com>
1374
1375         Trigger activation changes at the right time by listening for WM_NCACTIVATE
1376
1377         This is the final part of <rdar://5006915> Inactive look for Aqua
1378         controls
1379
1380         WebView now listens to messages sent to its top-level parent window.
1381         When the top-level parent receives a WM_NCACTIVATE message, WebView
1382         recalculates whether it is contained within the current active window.
1383
1384         Reviewed by Darin.
1385
1386         * Interfaces/IWebViewPrivate.idl:
1387         (IWebViewPrivate::windowAncestryDidChange): Added. WebKit clients
1388         should call this when they change the parent window chain of a
1389         WebView.
1390         * WebView.cpp:
1391         (WebView::WebView): Initialize new member.
1392         (findTopLevelParent): Added.
1393         (WebViewWndProc):
1394             - Separated activation handling from focus handling, now that
1395               activation handling is taken care of by updateActiveState
1396               exclusively.
1397             - Compare top-level parents in our WM_KILLFOCUS handler so that we
1398               really know if focus is staying inside our top-level window.
1399             - Update our active state on WM_WINDOWPOSCHANGED.
1400             - Added a WM_TIMER handler.
1401         (WebView::initWithFrame): Call windowAncestryDidChange after setting
1402         up our HWND as a child of the host window.
1403         (WebView::windowReceivedMessage): Added. Update our active state when
1404         our top-level parent receives a WM_NCACTIVATE message.
1405         (WebView::updateActiveStateSoon): Added.
1406         (WebView::setHostWindow): Call windowAncestryDidChange after changing
1407         the host window.
1408         (WebView::updateActiveState): We are active if our top-level parent is
1409         the same as the top-level parent of the active window.
1410         (WebView::windowAncestryDidChange): Added. Recalculates our top-level
1411         parent and registers as a listener for the new top-level parent's
1412         messages.
1413         * WebView.h: Made WebView and WindowMessageListener so that it can
1414         utilize WindowMessageBroadcaster to listen to its top-level parent's
1415         messages.
1416
1417 2008-01-16  Adam Roben  <aroben@apple.com>
1418
1419         Updated for ScrollBarClient changes
1420
1421         Reviewed by Darin.
1422
1423         * WebScrollBar.h:
1424         (WebScrollBar::isActive): Added.
1425
1426 2008-01-16  Adam Roben  <aroben@apple.com>
1427
1428         Updated for changes to WebCore methods
1429
1430         Focus and active state are now handled (somewhat) separately. Future
1431         patches will further separate these concepts.
1432
1433         Reviewed by Darin.
1434
1435         * WebView.cpp:
1436         (WebViewWndProc): Updated for method renames.
1437         (WebView::updateActiveState): Only change the active state here. Focus
1438         is handled inside WM_SETFOCUS and WM_KILLFOCUS message handlers.
1439
1440 2008-01-16  Steve Falkenburg  <sfalken@apple.com>
1441
1442         <rdar://problem/5097419> Cursor flickers when over window resizer
1443         
1444         Reviewed by Sam.
1445
1446         * WebView.cpp:
1447         (WebViewWndProc): Don't set the resize cursor when over the non-border resize area.
1448
1449 2008-01-15  Steve Falkenburg  <sfalken@apple.com>
1450
1451         <rdar://problem/5663888> Cannot type into a JavaScript prompt created from a timer
1452         
1453         Allow nested timers from javascript prompts to allow for WebView-based edit fields.
1454         
1455         Reviewed by Darin.
1456
1457         * WebChromeClient.cpp:
1458         (WebChromeClient::runJavaScriptPrompt):
1459
1460 2008-01-14  Steve Falkenburg  <sfalken@apple.com>
1461
1462         Use shared vsprops for most vcproj properties.
1463         
1464         Reviewed by Darin.
1465
1466         * WebKit.vcproj/Interfaces.vcproj:
1467         * WebKit.vcproj/WebKit.vcproj:
1468         * WebKit.vcproj/WebKitGUID.vcproj: Add missing Debug_Internal config.
1469
1470 2008-01-11  Steve Falkenburg  <sfalken@apple.com>
1471
1472         Share common files across projects.
1473         
1474         Unify vsprops files
1475         Debug:          common.vsprops, debug.vsprops
1476         Debug_Internal: common.vsprops, debug.vsprops, debug_internal.vsprops
1477         Release:        common.vsprops, release.vsprops
1478         
1479         Shared properties can go into common.vsprops, shared debug settings can go into debug.vsprops.
1480         debug_internal.vsprops will be mostly empty except for file path prefix modifiers.
1481
1482         Pull auto-version.sh, VERSION, and PRODUCTVERSION from tools.
1483
1484         Reviewed by Adam Roben.
1485
1486         * WebKit.vcproj/Interfaces.vcproj:
1487         * WebKit.vcproj/PRODUCTVERSION: Removed.
1488         * WebKit.vcproj/VERSION: Removed.
1489         * WebKit.vcproj/WebKit.vcproj:
1490         * WebKit.vcproj/WebKitGUID.vcproj:
1491         * WebKit.vcproj/auto-version.sh: Removed.
1492         * WebKit.vcproj/debug.vsprops: Removed.
1493         * WebKit.vcproj/debug_internal.vsprops: Removed.
1494         * WebKit.vcproj/release.vsprops: Removed.
1495
1496 2008-01-11  Adam Roben  <aroben@apple.com>
1497
1498         Fix Bug 16828: WebView never paints if first page load is canceled after being committed but before layout
1499
1500         <http://bugs.webkit.org/show_bug.cgi?id=16828>
1501         <rdar://5682402>
1502
1503         Now that we have 1) a real loader and 2) multiple FrameViews per
1504         Frame, we no longer need the hackery we had in our WM_PAINT handler
1505         that decided whether or not to paint. We now always want to paint,
1506         letting the swapping of FrameViews that happens in
1507         transitionToCommittedForNewPage handle which document gets painted.
1508
1509         Reviewed by Hyatt.
1510
1511         * WebView.cpp:
1512         (WebViewWndProc): Removed hackery that decided sometimes not to paint.
1513
1514 2008-01-11  Mark Rowe  <mrowe@apple.com>
1515
1516         Windows build fix.  Update to match method name in WebCore.
1517
1518         * WebJavaScriptCollector.cpp:
1519         (WebJavaScriptCollector::collectOnAlternateThread):
1520
1521 2008-01-10  Geoffrey Garen  <ggaren@apple.com>
1522
1523         Reviewed by John Sullivan.
1524
1525         Updated for transition away from JavaScriptStatistics, which is gone now.
1526
1527         * WebJavaScriptCollector.cpp:
1528         (WebJavaScriptCollector::collect):
1529         (WebJavaScriptCollector::collectOnAlternateThread):
1530         (WebJavaScriptCollector::objectCount):
1531
1532 2008-01-10  Maciej Stachowiak  <mjs@apple.com>
1533
1534         Not reviewed, build fix.
1535         
1536         - more build fixing
1537
1538         * WebDatabaseManager.cpp:
1539         * WebSecurityOrigin.h:
1540
1541 2008-01-10  Maciej Stachowiak  <mjs@apple.com>
1542
1543         Not reviewed, build fix.
1544         
1545         - try to fix build
1546
1547         * WebDatabaseManager.cpp:
1548         (WebDatabaseManager::databasesWithOrigin):
1549         * WebSecurityOrigin.h:
1550
1551 2008-01-10  Maciej Stachowiak  <mjs@apple.com>
1552
1553         Reviewed by Sam.
1554
1555         - remove SecurityOriginData and fold its functionality into SecurityOrigin
1556
1557         * WebChromeClient.cpp:
1558         (WebChromeClient::requestQuotaIncreaseForNewDatabase):
1559         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
1560         * WebChromeClient.h:
1561         * WebDatabaseManager.cpp:
1562         (WebDatabaseManager::origins):
1563         (WebDatabaseManager::databasesWithOrigin):
1564         (WebDatabaseManager::detailsForDatabaseWithOrigin):
1565         (WebDatabaseManager::deleteDatabasesWithOrigin):
1566         (WebDatabaseManager::deleteDatabaseWithOrigin):
1567         (WebDatabaseManager::dispatchDidModifyOrigin):
1568         (WebDatabaseManager::dispatchDidModifyDatabase):
1569         * WebDatabaseManager.h:
1570         * WebSecurityOrigin.cpp:
1571         (WebSecurityOrigin::createInstance):
1572         (WebSecurityOrigin::WebSecurityOrigin):
1573         (WebSecurityOrigin::protocol):
1574         (WebSecurityOrigin::domain):
1575         (WebSecurityOrigin::port):
1576         (WebSecurityOrigin::usage):
1577         (WebSecurityOrigin::quota):
1578         (WebSecurityOrigin::setQuota):
1579         * WebSecurityOrigin.h:
1580
1581 2008-01-10  David Kilzer  <ddkilzer@apple.com>
1582
1583         dftables should be rewritten as a script
1584
1585         <http://bugs.webkit.org/show_bug.cgi?id=16818>
1586         <rdar://problem/5681463>
1587
1588         Reviewed by Darin.
1589
1590         * WebKit.vcproj/WebKit.sln: Removed reference to dftables project.
1591
1592 2008-01-10  Adam Roben  <aroben@apple.com>
1593
1594         Fix many bugs by giving Windows one FrameView per page load
1595         
1596         Bugs include:
1597             <rdar://5659200>
1598                 Windows back/forward cache causes crashes in the layout tests
1599             <rdar://5659355>
1600             <http://bugs.webkit.org/show_bug.cgi?id=16808>
1601                 REGRESSION: PLT broken on Windows due to back/forward cache
1602             <rdar://5663654>
1603             <http://bugs.webkit.org/show_bug.cgi?id=16607>
1604                 Random crashes in FrameView::scheduleRelayout while surfing
1605                 Thinkgeek
1606
1607         On Windows until now we've only had one FrameView per Frame. Once the
1608         back/forward cache was turned on this started causing assertions to
1609         fail and crashes to occur due to a single FrameView being both in the
1610         back/forward cache (possibly multiple times!) and used by a live
1611         document. We now create a new FrameView for each page load, just as
1612         Mac does.
1613
1614         This has the side-effect of plugging some of the world leaks seen at
1615         the end of the PLT.
1616
1617         Reviewed by Hyatt.
1618
1619         * WebFrame.cpp:
1620         (WebFrame::initWithWebFrameView): Don't create the FrameView right
1621         away -- it'll be created when the load is committed.
1622         (WebFrame::transitionToCommittedFromCachedPage): Match the Mac by no
1623         longer calling resetMultipleFormSubmissionProtection here.
1624         (WebFrame::transitionToCommittedForNewPage): Ported code from
1625         -[WebCoreFrameBridge
1626         createFrameViewWithNSView:marginWidth:marginHeight:],
1627         -[WebCoreFrameBridge installInFrame:], and moved code here from
1628         WebFrame::initWithWebFrameView and WebView::initWithFrame. WebCore
1629         takes care of resetMultipleFormSubmissionProtection, just like it does
1630         on the Mac.
1631         * WebView.cpp:
1632         (WebView::initWithFrame): Moved FrameView initialization code to
1633         WebFrame::transitionToCommittedForNewPage.
1634
1635 2008-01-09  Ada Chan  <adachan@apple.com>
1636
1637         Fix crash that could happen if the key we are passing to the HashMap is 0 in WebView::interpretKeyEvent().
1638
1639         Reviewed by Darin.
1640
1641         * WebView.cpp:
1642         (WebView::interpretKeyEvent):
1643
1644 2008-01-08  Steve Falkenburg  <sfalken@apple.com>
1645
1646         Fix build.
1647
1648         * DOMCoreClasses.cpp:
1649
1650 2008-01-07  Antti Koivisto  <antti@apple.com>
1651
1652         Try to fix the Windows build.
1653
1654         * WebKit.vcproj/WebKit.sln:
1655
1656 2008-01-07  Antti Koivisto  <antti@apple.com>
1657
1658         Reviewed by Steve.
1659         
1660         Re-enable media support in Windows build.
1661
1662         * WebKit.vcproj/WebKit.vcproj:
1663
1664 2008-01-07  Steve Falkenburg  <sfalken@apple.com>
1665
1666         Build fix.
1667
1668         * WebKit.vcproj/InterfacesGenerated.vcproj:
1669
1670 2008-01-07  Dan Bernstein  <mitz@apple.com>
1671
1672         Reviewed by Dave Hyatt.
1673
1674         - <rdar://problem/5665216> Support the unicode-range property in @font-face rules
1675
1676         * WebView.cpp:
1677         (WebView::setShouldApplyMacFontAscentHack):
1678
1679 2008-01-07  Holger Freyther  <zecke@selfish.org>
1680
1681         Reviewed by Alp Toker.
1682
1683         * Qt and Gtk must know if a ContextMenuItem is checkable. Add a new ContextMenuItemType for checkable
1684         actions.
1685         * Use this information in the Gtk platform to create a GtkCheckMenuItem when needed.
1686         * Update the ContextMenuController to accept CheckableActionTypes as well.
1687         * Change ContextMenu.cpp to use the CheckableActionType. The information if a item is checkable
1688         was extracted from ContextMenu::checkOrEnableIfNeeded.
1689         * Update the Qt and Windows port.
1690
1691         * WebContextMenuClient.cpp:
1692
1693 2008-01-04  Alexey Proskuryakov  <ap@webkit.org>
1694
1695         Reviewed by Adam Roben.
1696
1697         http://bugs.webkit.org/show_bug.cgi?id=16733
1698         REGRESSION: Crash on Safari Start
1699
1700         * Interfaces/IWebViewPrivate.idl: Should have added a new method at the end.
1701
1702 2008-01-04  Alexey Proskuryakov  <ap@webkit.org>
1703
1704         Reviewed by Darin.
1705
1706         <rdar://problem/5611712> xsl:sort does not use a case folding sort, and the 'case-order' attribute is ignored (16077)
1707
1708         * WebKit.vcproj/WebKit.vcproj: Link to icuin{_debug}.lib
1709
1710 2008-01-04  Adam Roben  <aroben@apple.com>
1711
1712         Fix <rdar://4968855> Shift-PageUp/Shift-PageDown only select one line of text
1713
1714         Test: platform/win/editing/selection/shift-page-down-up.html
1715
1716         Reviewed by Oliver.
1717
1718         * WebView.cpp: Correct the commands associated with
1719         Shift-PageUp/Shift-PageDown.
1720
1721 2008-01-03  Alexey Proskuryakov  <ap@webkit.org>
1722
1723         Reviewed by Darin.
1724
1725         <rdar://problem/5463489> A number of layout tests should be using execCommand instead of textInputController
1726
1727         * Interfaces/IWebViewPrivate.idl:
1728         * WebView.cpp:
1729         (WebView::executeCoreCommandByName):
1730         * WebView.h:
1731         Added an SPI to implement layoutTestController.execCommand.
1732
1733 2008-01-03  Ada Chan  <adachan@apple.com>
1734
1735         Replaced the use of editor command "ForwardDelete" with "DeleteForward" to be consistent
1736         with our use of "DeleteBackward".
1737
1738         Rubber-stamped by Jon.
1739
1740         * WebView.cpp:
1741
1742 2008-01-03  Ada Chan  <adachan@apple.com>
1743
1744         Regression: backspace stopped working on text inputs
1745         - Replaced the use of editor command "BackwardDelete" with "DeleteBackward" since it's no longer supported.
1746
1747         Reviewed by Adam.
1748
1749         * WebEditorClient.cpp:
1750         (WebEditorClient::textWillBeDeletedInTextField):
1751         * WebView.cpp:
1752
1753 2008-01-02  Alice Liu  <alice.liu@apple.com>
1754
1755         Reviewed by Maciej.
1756
1757         Fixed <rdar://5283861> (problems scrolling in gmail message content area)
1758
1759         * WebView.cpp:
1760         (WebView::keyDown):
1761         bubble scrolling from a key event
1762
1763 2008-01-01  Matt Lilek  <webkit@mattlilek.com>
1764
1765         Attempt to fix the Windows bots until the bots
1766         can get the Quicktime SDK installed.
1767
1768         * WebKit.vcproj/WebKit.sln:
1769         * WebKit.vcproj/WebKit.vcproj:
1770
1771 2007-12-30  Matt Lilek  <webkit@mattlilek.com>
1772
1773         Reviewed by Darin.
1774
1775         Bug 16578: Windows Web Inspector window needs minimum size
1776         http://bugs.webkit.org/show_bug.cgi?id=16578
1777
1778         * WebInspectorClient.cpp:
1779         (WebInspectorClient::onGetMinMaxInfo):
1780         (WebInspectorWndProc):
1781         * WebInspectorClient.h:
1782
1783 2007-12-21  Antti Koivisto  <antti@apple.com>
1784
1785         Reviewed by Steve.
1786         
1787         Build media support on Windows.
1788
1789         * WebKit.vcproj/WebKit.sln:
1790         * WebKit.vcproj/WebKit.vcproj:
1791
1792 2007-12-21  Ada Chan  <adachan@apple.com>
1793
1794         Implemented DOMDocument::getElementById().
1795
1796         Reviewed by Darin.
1797
1798         * DOMCoreClasses.cpp:
1799         (DOMDocument::getElementById):
1800
1801 2007-12-21  Alexey Proskuryakov  <ap@webkit.org>
1802
1803         Reviewed by Steve and Darin.
1804
1805         <rdar://problem/5497037> Win32: Accelerator keys (ctrl-x,c,v,w,q,etc) only fire keyUp,
1806         keyDown/Press consumed by accelerator table (14104)
1807
1808         <rdar://problem/5346299> preventing default behavior for key down does not block accelerators like Ctrl+N
1809
1810         This is WebKit part of a fix, most of which will be in Safari.
1811
1812         * WebView.cpp:
1813         (WebViewWndProc): Return our result for WM_(SYS)KEYDOWN to let the client know whether
1814         further procesing is desired.
1815
1816 2007-12-21  Alexey Proskuryakov  <ap@webkit.org>
1817
1818         Build fix: cannot use framework-style include for ProgIDMacros.h,
1819         because the file is only created on a later step. 
1820
1821         * ForEachCoClass.h:
1822
1823 2007-12-20  Kevin McCullough  <kmccullough@apple.com>
1824
1825         Reviewed by Steve.
1826
1827         - <rdar://5656485> Drosera: Win: Nightly does not reliably connect to 
1828         WebKit.
1829
1830         - Drosera and Safari need to use the same ProgIDs in order for
1831         CoCreateInstance to work properly.  The most robust way to do this is
1832         for WebKit to dynamically publish those ProgIDs.
1833
1834         * ForEachCoClass.cpp: Added.
1835         (setUseOpenSourceWebKit):
1836         (progIDForClass):
1837         * ForEachCoClass.h: Added functionality to publish ProgIDs.
1838         * WebKit.vcproj/WebKit.def: Exposed added functions for applications.
1839         * WebKit.vcproj/WebKit.vcproj: Added ForEachCoClass.cpp
1840         * WebKit.vcproj/WebKit_debug.def: Exposed added functions fori
1841         applications.
1842
1843 2007-12-19  Dave Hyatt <hyatt@apple.com>
1844
1845         Add a fourth preference value for GDI text in the font smoothing prefs.
1846         
1847         Reviewed by mitz
1848
1849         * Interfaces/IWebPreferences.idl:
1850         * WebPreferenceKeysPrivate.h:
1851         * WebPreferences.cpp:
1852         (WebPreferences::initializeDefaultSettings):
1853         (WebPreferences::fontSmoothing):
1854         (WebPreferences::setFontSmoothing):
1855         * WebView.cpp:
1856         (WebView::notifyPreferencesChanged):
1857
1858 2007-12-17  Darin Adler  <darin@apple.com>
1859
1860         Reviewed by Sam.
1861
1862         - <rdar://4516170> Back/Forward Cache on Windows
1863
1864         * WebFrame.cpp:
1865         (WebFrame::forceLayout): Implemented this. Just calling through to
1866         Frame::forceLayout matches the Mac pretty well and should be enough
1867         for now. Without this we won't repaint the new page when we go back
1868         and forward.
1869         (WebFrame::dispatchWillSubmitForm): Use COMPtr's AdoptCOM constructor
1870         instead of the adoptRef function.
1871         (WebFrame::restoreViewState): Removed unneeded notImplemented() call.
1872         This is implemented as much as it needs to be.
1873         (WebFrame::shouldGoToHistoryItem): Ditto.
1874         (WebFrame::saveViewStateToItem): Ditto.
1875         (WebFrame::canCachePage): Ditto, also changed it to return true. This
1876         is what was preventing the back/forward cache from running, and there's
1877         no need for any additional checks in the Windows version.
1878
1879         * WebView.cpp:
1880         (PreferencesChangedOrRemovedObserver::onNotify): Fix backwards null check
1881         that was preventing this notification from ever being sent, which in turn
1882         meant that page cache had a capacity of 0.
1883         (WebView::initWithFrame): Removed unneeded setUsesPageCache(false) code.
1884         This actually was ineffective and ended up doing no harm, but we don't
1885         need it.
1886
1887 2007-12-16  Alexey Proskuryakov  <ap@webkit.org>
1888
1889         Reviewed by Darin.
1890
1891         http://bugs.webkit.org/show_bug.cgi?id=16462
1892         REGRESSION: access keys broken on Windows
1893
1894         * WebView.cpp: (WebView::keyPress): Handle system key presses as access keys.
1895
1896 2007-12-15  Alexey Proskuryakov  <ap@webkit.org>
1897
1898         Reviewed by Maciej.
1899
1900         http://bugs.webkit.org/show_bug.cgi?id=16436
1901         Alt+Space works incorrectly
1902
1903         Test: platform/win/fast/events/alt-space-scroll.html
1904
1905         * WebView.cpp:
1906         (WebView::keyDown):
1907         (WebView::keyPress):
1908         We do not handle WM_SYSCHAR events.
1909
1910 2007-12-14  Dan Bernstein  <mitz@apple.com>
1911
1912         - yet another build fix
1913
1914         * DOMHTMLClasses.cpp:
1915         (DOMHTMLDocument::URL):
1916
1917 2007-12-14  Dan Bernstein  <mitz@apple.com>
1918
1919         - build fix
1920
1921         * WebIconDatabase.h:
1922
1923 2007-12-14  Darin Adler  <darin@apple.com>
1924
1925         Reviewed by Adele.
1926
1927         - http://bugs.webkit.org/show_bug.cgi?id=16443
1928           implement some missing Windows WebKit functions
1929
1930         * DOMHTMLClasses.cpp:
1931         (DOMHTMLDocument::URL): Implemented.
1932
1933         * WebActionPropertyBag.cpp:
1934         (WebActionPropertyBag::Read): Fixed the WebActionElementKey case. 
1935
1936 2007-12-14  Darin Adler  <darin@apple.com>
1937
1938         Reviewed by Alexey.
1939
1940         * WebView.cpp:
1941         (WebView::execCommand): Switched from Editor::execCommand to Editor:command.
1942         Updated name from MoveUpByPageAndModifyCaret to MovePageUp and from
1943         MoveDownByPageAndModifyCaret to MovePageDown.
1944         (WebView::copy): Switched from Editor::execCommand to Editor:command.
1945         (WebView::cut): Ditto.
1946         (WebView::paste): Ditto.
1947         (WebView::delete_): Ditto.
1948
1949 2007-12-13  Steve Falkenburg  <sfalken@apple.com>
1950
1951         Move source file generation into its own vcproj to fix build dependencies.
1952
1953         Reviewed by Adam.
1954
1955         * WebKit.vcproj/Interfaces.vcproj:
1956         * WebKit.vcproj/InterfacesGenerated.vcproj: Added.
1957         * WebKit.vcproj/WebKit.sln:
1958         * WebKit.vcproj/WebKit.submit.sln:
1959         * WebKit.vcproj/build-generated-files.sh:
1960
1961 2007-12-13  Adam Roben  <aroben@apple.com>
1962
1963         Fix <rdar://5517707> Crash on wptv.wp.pl when "make bigger" button is clicked
1964
1965         Reviewed by Anders.
1966
1967         * WebView.cpp:
1968         (WebViewWndProc): Repost paint messages and ignore all other messages
1969         when we're calling a plugin.
1970
1971 2007-12-13  Steve Falkenburg  <sfalken@apple.com>
1972
1973         Fix project dependencies based on JavaScriptCore change.
1974
1975         * WebKit.vcproj/WebKit.sln:
1976
1977 2007-12-13  Alexey Proskuryakov  <ap@webkit.org>
1978
1979         Reviewed by Adele.
1980
1981         http://bugs.webkit.org/show_bug.cgi?id=16421
1982         REGRESSION(r28669): Page scrolls down when you hit space key in text area
1983
1984         Test: fast/events/space-scroll-event.html
1985
1986         * WebView.cpp:
1987         (WebView::keyDown):
1988         (WebView::keyPress):
1989         Moved space handling to keyPress() to fix this bug and to match IE. Scrolling via arrow keys is correctly handled
1990         in keyDown().
1991
1992 2007-12-12  Brady Eidson  <beidson@apple.com>
1993
1994         Reviewed by Sam Weinig
1995
1996         Fix for <rdar://problem/4886844> and lay groundwork for <rdar://problem/4516170> (Back/Forward Cache on Windows)
1997
1998         Even though this new code isn't exercised yet because the page cache is still turned off for Windows, local testing
1999         has indicated it works well.
2000
2001         * WebCachedPagePlatformData.h: Added.
2002         (WebCachedPagePlatformData::WebCachedPagePlatformData): Constructor takes an IWebDataSource and the object retains it
2003         (WebCachedPagePlatformData::clear):
2004         (WebCachedPagePlatformData::webDataSource):
2005
2006         * WebFrame.cpp:
2007         (WebFrame::savePlatformDataToCachedPage):
2008         (WebFrame::transitionToCommittedFromCachedPage):
2009         (WebFrame::transitionToCommittedForNewPage):
2010         * WebFrame.h:
2011
2012         * WebKit.vcproj/WebKit.vcproj:
2013
2014 2007-12-12  Steve Falkenburg  <sfalken@apple.com>
2015
2016         Build fix.
2017
2018         * WebKit.vcproj/WebKit.make: Copy only what we need out of obj/bin.
2019
2020 2007-12-12  Dan Bernstein  <mitz@apple.com>
2021
2022         Reviewed by Darin Adler.
2023
2024         - revert my earlier crash fix after making WebCore return the empty
2025           editor command for the empty command name.
2026
2027         * WebView.cpp:
2028         (WebView::handleEditingKeyboardEvent):
2029
2030 2007-12-12  Oliver Hunt  <oliver@apple.com>
2031
2032         Reviewed by Maciej.
2033
2034         <rdar://problem/5071781> window.mouseout events are not 
2035         sent to window when mouse moves out of window 
2036         
2037         Hook up the windows mouse tracking logic to allow us to 
2038         detect the mouse leaving the window.
2039
2040         * WebView.cpp:
2041         (WebView::close):
2042         (WebView::handleMouseEvent):
2043         (WebViewWndProc):
2044         * WebView.h:
2045
2046 2007-12-12  Dan Bernstein  <mitz@apple.com>
2047
2048         Reviewed by Alexey Proskuryakov.
2049
2050         - fix a crash when pressing a key that is not associated with a command
2051
2052         * WebView.cpp:
2053         (WebView::handleEditingKeyboardEvent): Check if the result of
2054         interpretKeyEvent() is empty.
2055
2056 2007-12-11  Sam Weinig  <sam@webkit.org>
2057
2058         Reviewed by Darin Adler.
2059
2060         Scrub URL out of the tree in preparation for renaming KURL to URL.
2061
2062         * WebFrame.cpp:
2063         (WebFrame::url):
2064         (WebFrame::dispatchWillPerformClientRedirect):
2065         (WebFrame::setTitle):
2066         (WebFrame::updateGlobalHistoryForStandardLoad):
2067         (WebFrame::updateGlobalHistoryForReload):
2068         (WebFrame::cancelledError):
2069         (WebFrame::blockedError):
2070         (WebFrame::interruptForPolicyChangeError):
2071         (WebFrame::createPlugin):
2072         * WebView.cpp:
2073         (WebView::notifyDidAddIcon):
2074
2075 2007-12-10  Anders Carlsson  <andersca@apple.com>
2076
2077         Reviewed by Darin.
2078     
2079         <rdar://problem/5636865>
2080         WebKit needs API to allow registering a protocol as local (RSS feeds appear unstyled)
2081         
2082         * Interfaces/IWebView.idl:
2083         * WebView.cpp:
2084         (WebView::registerURLSchemeAsLocal):
2085         * WebView.h:
2086
2087 2007-12-11  Ada Chan  <adachan@apple.com>
2088
2089         Updated the database SPI to take in IWebFrame.
2090
2091         Reviewed by Adam.
2092
2093         * Interfaces/IWebUIDelegatePrivate.idl:
2094         * WebChromeClient.cpp:
2095         (WebChromeClient::requestQuotaIncreaseForNewDatabase):
2096         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
2097
2098 2007-12-11  Alexey Proskuryakov  <ap@webkit.org>
2099
2100         Windows build fix.
2101
2102         * WebView.cpp:
2103         (WebView::interpretKeyEvent):
2104
2105 2007-12-11  Darin Adler  <darin@apple.com>
2106
2107         * WebView.cpp:
2108         (WebView::handleEditingKeyboardEvent): Update for change to Editor API.
2109
2110 2007-12-11  Alexey Proskuryakov  <ap@webkit.org>
2111
2112         Reviewed by Darin.
2113
2114         <rdar://problem/5535636>
2115         Have to press 4 times instead of 2 times to get the expected result of ^^ with german keyboard.
2116
2117         http://bugs.webkit.org/show_bug.cgi?id=13916
2118         JavaScript detects Tab as a character input on a textfield validation
2119
2120         Listen to WM_CHAR messages, and actually pass the type of message received down to WebCore.
2121         Since WM_KEYDOWN == keydown and WM_CHAR == keypress, this allows for much better IE compatibility
2122         than layering Windows keyboard event handling on top of Mac one.
2123
2124         * WebView.cpp:
2125         (WebView::keyUp): Do not special case Alt+F4 and Alt+Space - we don't get keyups for those anyway!
2126         (WebView::interpretKeyEvent): Renamed WindowsKeyCode() to windowsVirtualKeyCode().
2127         (WebView::handleEditingKeyboardEvent): Use the additional information about event type that
2128         we now pass with PlatformKeyboardEvent.
2129         (WebView::keyDown): (WebView::keyPress): Split WM_KEYDOWN and WM_CHAR handling in separate
2130         functions, pass them down as is, without trying to guess what WM_CHAR Windows would have sent
2131         for a given WM_KEYDOWN.
2132
2133         (WebViewWndProc): Handle WM_CHAR and WM_SYSCHAR.
2134
2135         * WebView.h: Removed inIMEKeyDown() - it doesn't look like we need it at all. At least, I didn't
2136         notice any regressions after removing the only call to it in WebEditorClient.
2137
2138         * WebEditorClient.cpp:
2139         (WebEditorClient::handleKeyboardEvent):
2140         (WebEditorClient::handleInputMethodKeydown):
2141         * WebEditorClient.h:
2142         Renamed handleKeypress() to handleKeyboardEvent(), as it gets both keydowns and keypresses.
2143         Renamed handleInputMethodKeypress() to handleInputMethodKeydown() and removed
2144         inIMEKeyDown()-related code.
2145
2146 2007-12-10  Geoffrey Garen  <ggaren@apple.com>
2147
2148         Reviewed by Sam Weinig.
2149
2150         Updated for rename in JavaScriptCore.
2151
2152         * WebScriptCallFrame.cpp:
2153         (WebScriptCallFrame::functionName):
2154         (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
2155
2156 2007-12-07  Steve Falkenburg  <sfalken@apple.com>
2157
2158         Fix version parsing.
2159
2160         Rubber-stamped by Oliver.
2161
2162         * WebKit.vcproj/auto-version.sh:
2163
2164 2007-12-07  Steve Falkenburg  <sfalken@apple.com>
2165
2166         Fix build.
2167
2168         * WebKit.vcproj/WebKit.vcproj:
2169         * WebScriptCallFrame.cpp:
2170
2171 2007-12-07  Steve Falkenburg  <sfalken@apple.com>
2172
2173         Fix build.
2174
2175         * WebHistory.cpp:
2176         (_WebCoreHistoryProvider::containsURL):
2177
2178 2007-12-07  Geoffrey Garen  <ggaren@apple.com>
2179
2180         Tried to fix build by suppressing warning.
2181
2182         * WebScriptCallFrame.cpp:
2183
2184 2007-12-07  Darin Adler  <darin@apple.com>
2185
2186         Reviewed by Mitz.
2187
2188         - http://bugs.webkit.org/show_bug.cgi?id=15981
2189           speed up visited-link code a bit
2190
2191         * WebHistory.cpp: Removed unused Latin-1 code path.
2192         (_WebCoreHistoryProvider::containsItem): Updated for function name change.
2193
2194 2007-12-07  Steve Falkenburg  <sfalken@apple.com>
2195
2196         Re-named our B&I flag from BUILDBOT to PRODUCTION.
2197         Fix our tiny versioning.
2198         Bump our product version.
2199         Use just the major version in the fallback VERSION files.
2200         Pick up the version numbers from the production builder.
2201
2202         Reviewed by Sam Weinig.
2203
2204         * Interfaces/WebKit.idl:
2205         * WebKit.vcproj/Interfaces.vcproj:
2206         * WebKit.vcproj/PRODUCTVERSION:
2207         * WebKit.vcproj/VERSION:
2208         * WebKit.vcproj/WebKit.make:
2209         * WebKit.vcproj/WebKit.rc:
2210         * WebKit.vcproj/WebKit.vcproj:
2211         * WebKit.vcproj/auto-version.sh:
2212         * WebKitDLL.cpp:
2213         (DllUnregisterServer):
2214
2215 2007-12-07  Adam Roben  <aroben@apple.com>
2216
2217         Fix <rdar://5624866> CFStringRef UI_STRING should use a cache and follow the CF "Get" model (current uses leak)
2218
2219         Added a new class, LocalizedString, that wraps a CFStringRef and a
2220         WebCore::String. We store one LocalizedString for each key string.
2221
2222         Reviewed by Steve.
2223
2224         * WebLocalizableStrings.cpp: Changed our two HashMaps to map from
2225         WebCore::String to LocalizedString*.
2226         (LocalizedString::LocalizedString):
2227         (LocalizedString::operator CFStringRef):
2228         (LocalizedString::operator LPCTSTR): Code moved here from
2229         localizedLPCTSTR.
2230         (findCachedString): Changed to return a LocalizedString*.
2231         (cacheString): Changed to take a LocalizedString*.
2232         (localizedString): Changed to return a const LocalizedString&. We
2233         first try to find a cached LocalizedString. If there isn't one, we
2234         create a new one and cache it.
2235         (WebLocalizedLPCTSTRUTF8): Changed to call localizedString.
2236         (WebLocalizedLPCTSTR): Ditto.
2237
2238 2007-12-07  Adam Roben  <aroben@apple.com>
2239
2240         Make WebLocalizableStrings work a little more like the Mac version
2241
2242         Reviewed by Steve.
2243
2244         * WebKit.vcproj/WebKit.def: Deprecated SetWebLocalizedStringMainBundle.
2245         * WebKit.vcproj/WebKit_debug.def: Ditto.
2246         * WebLocalizableStrings.cpp:
2247         (createWebKitBundle): Changed to only create the bundle once.
2248         (cfBundleForStringsBundle): Added. Code was factored out of
2249         copyLocalizedStringFromBundle. We now use the CFBundleGetMainBundle to
2250         get the main bundle and WebLocalizableStringsBundle's identifier to
2251         fetch the framework's bundle.
2252         (copyLocalizedStringFromBundle): Changed to call
2253         cfBundleForStringsBundle.
2254         (cacheString): Cleaned up logic a bit with an early return.
2255         (SetWebLocalizedStringMainBundle): Moved down with the other
2256         deprecated functions and made into a no-op.
2257
2258 2007-12-07  Adam Roben  <aroben@apple.com>
2259
2260         Use SoftLinking.h in WebKitClassFactory.
2261
2262         Reviewed by Oliver.
2263
2264         * WebKitClassFactory.cpp:
2265         (WebKitClassFactory::WebKitClassFactory): We don't have to worry about
2266         not finding STInitialize anymore now that a version of SafariTheme
2267         containing this function has shipped.
2268
2269 2007-12-06  Ada Chan  <adachan@apple.com>
2270
2271         <rdar://problem/5556378> Implemented database related UI delegate methods (prompts for new/enlarged databases)
2272
2273         Reviewed by Darin.
2274
2275         * Interfaces/IWebUIDelegatePrivate.idl:
2276         * WebChromeClient.cpp:
2277         (WebChromeClient::requestQuotaIncreaseForNewDatabase):
2278         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
2279
2280 2007-12-06  Alice Liu  <alice.liu@apple.com>
2281
2282         Fixed <rdar://5540000> onbeforeunload doesn't fire when closing window/tab
2283
2284         Reviewed by Darin.
2285
2286         * Interfaces/IWebViewPrivate.idl:
2287         * WebView.cpp:
2288         (WebView::shouldClose):
2289         * WebView.h:
2290
2291 2007-12-06  Adam Roben  <aroben@apple.com>
2292
2293         Fix <rdar://5615283> Crash in WebFrame::receivedPolicyDecision
2294
2295         It's possible for a second policy listener to be created while we're
2296         waiting for a decision on the first policy listener. In this case we
2297         would crash when the first policy listener had a decision made. Mac
2298         WebKit already handles this by invalidating any existing policy
2299         listener when creating a new one.
2300
2301         A test case is coming in a future commit.
2302
2303         Reviewed by Anders.
2304
2305         * WebFrame.cpp:
2306         (WebFrame::setUpPolicyListener): Copy the Mac behavior of invalidating
2307         any existing policy listener, and remove some assertions that we know
2308         can fire.
2309
2310 2007-12-06  Adam Roben  <aroben@apple.com>
2311
2312         Add SPI so that DumpRenderTree can turn on the Mac font ascent hack
2313
2314         Reviewed by Hyatt.
2315
2316         * Interfaces/IWebViewPrivate.idl: Added new method declaration.
2317         * WebView.cpp:
2318         (WebView::setShouldApplyMacFontAscentHack): Added. Just calls down to
2319         FontData.
2320         * WebView.h:
2321
2322 2007-12-06  Ada Chan  <adachan@apple.com>
2323
2324         Build fix.
2325
2326         Reviewed by Geoff.
2327
2328         * WebScriptCallFrame.cpp:
2329         (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
2330
2331 2007-12-04  Geoffrey Garen  <ggaren@apple.com>
2332
2333         Reviewed by Darin Adler.
2334
2335         Third step in refactoring JSGlobalObject: Moved data members and data
2336         member access from Interpreter to JSGlobalObject.
2337         
2338         * WebFrame.cpp:
2339         (WebFrame::globalContext):
2340         (WebFrame::attachScriptDebugger):
2341         (WebFrame::windowObjectCleared):
2342         * WebScriptDebugger.cpp:
2343         (WebScriptDebugger::WebScriptDebugger):
2344
2345 2007-12-05  Steve Falkenburg  <sfalken@apple.com>
2346
2347         <rdar://problem/5625327> Crash toggling check grammar w/ spelling when no spell checker exists.
2348         
2349         Reviewed by Adam.
2350
2351         * WebView.cpp:
2352         (WebView::setGrammarCheckingEnabled): Add null check
2353
2354 2007-12-05  Adam Roben  <aroben@apple.com>
2355
2356         Expose WebView::setProhibitsMainFrameScrolling through IWebViewPrivate
2357
2358         Reviewed by Steve.
2359
2360         * Interfaces/IWebViewPrivate.idl: Added declaration.
2361         * WebInspectorClient.cpp:
2362         (WebInspectorClient::createPage): Updated for change to
2363         setProhibitsMainFrameScrolling signature.
2364         * WebView.cpp:
2365         (WebView::setProhibitsMainFrameScrolling): Updated and robustified.
2366         * WebView.h:
2367
2368 2007-12-05  Dan Bernstein  <mitz@apple.com>
2369
2370         Reviewed by Darin Adler.
2371
2372         - WebKit/win part of fixing <rdar://problem/5111082> Flash popup video ad doesn't close when clicked at http://www.firestonecompleteautocare.com/
2373
2374         * WebView.cpp:
2375         (WebView::initWithFrame): Attach the main frame's view.
2376
2377 2007-12-04  Ada Chan  <adachan@apple.com>
2378
2379         Provide API for setting the default storage quota per database origin
2380
2381         Reviewed by Jon.
2382
2383         * Interfaces/IWebPreferencesPrivate.idl: added SPI to get/set default database quota
2384         * WebPreferenceKeysPrivate.h:
2385         * WebPreferences.cpp:
2386         (WebPreferences::initializeDefaultSettings): default database quota is 5MB
2387         (WebPreferences::longlongValueForKey):
2388         (WebPreferences::setLongLongValue):
2389         (WebPreferences::defaultDatabaseQuota):
2390         (WebPreferences::setDefaultDatabaseQuota):
2391         * WebPreferences.h:
2392         * WebView.cpp:
2393         (WebView::notifyPreferencesChanged): propagate default database quota change to WebCore settings.
2394
2395 2007-12-04  Kevin McCullough  <kmccullough@apple.com>
2396
2397         Reviewed by Adam and Darin.
2398
2399         - Fixed a crasher where the top of the stack was not updated correctly.
2400         And set the eol style on IWebScriptCallFrame.idl file.
2401
2402         * Interfaces/IWebScriptCallFrame.idl:
2403         * WebScriptDebugger.cpp:
2404         (WebScriptDebugger::atStatement):
2405         (WebScriptDebugger::leaveFrame):
2406
2407 2007-11-27  Adam Roben  <aroben@apple.com>
2408
2409         Hook up the authorAndUserStylesEnabled preference
2410
2411         This is the Windows counterpart of r28071.
2412
2413         Reviewed by Maciej.
2414
2415         * Interfaces/IWebPreferencesPrivate.idl: Added new method
2416         declarations.
2417         * WebPreferenceKeysPrivate.h: Added a new preference key.
2418         * WebPreferences.cpp:
2419         (WebPreferences::initializeDefaultSettings): Set the default for the
2420         new preference.
2421         (WebPreferences::setAuthorAndUserStylesEnabled): Added.
2422         (WebPreferences::authorAndUserStylesEnabled): Added.
2423         * WebPreferences.h:
2424         * WebView.cpp:
2425         (WebView::notifyPreferencesChanged): Communicate the new preference
2426         down to WebCore::Settings.
2427
2428 2007-12-04  Jon Honeycutt  <jhoneycutt@apple.com>
2429
2430         Reviewed by Ollie.
2431
2432         Don't crash if our JavaPlugin DLL can't be found 
2433
2434         * WebFrame.cpp:
2435         (WebFrame::createJavaAppletWidget): Added null check
2436
2437 2007-12-04  Darin Adler  <darin@apple.com>
2438
2439         Reviewed by Kevin Decker.
2440
2441         * WebFrame.cpp: Removed obsolete privateBrowsingEnabled.
2442         * WebFrame.h: Ditto.
2443
2444 2007-12-04  Adam Roben  <aroben@apple.com>
2445
2446         Windows build fix
2447
2448         * WebScriptCallFrame.cpp:
2449
2450 2007-12-03  Dan Bernstein  <mitz@apple.com>
2451
2452         Reviewed by Dave Hyatt.
2453
2454         - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
2455
2456         * WebView.cpp:
2457         (WebViewWndProc): Removed call to sendResizeEvent() since FrameView
2458         sends them now.
2459
2460 2007-12-03  Kevin McCullough  <kmccullough@apple.com>
2461
2462         Reviewed by Adam.
2463
2464         - <rdar://5618942> Drosera: Console window does not process everything
2465         correctly.
2466         - <rdar://5619005> Drosera: could be sped up by moving the
2467         WebScriptScope stuff into the WebScriptCallFrame.
2468         - Now the console can correctly process objects and does not receive
2469         notifications from JavaScriptCore about the JavaScript in Drosera's
2470         own process.
2471
2472         * Interfaces/IWebScriptCallFrame.idl: Moved the variable lookup
2473         functions from WebScriptScope to here.
2474         * Interfaces/WebKit.idl: Removed WebScriptScope.
2475         * WebKit.vcproj/Interfaces.vcproj: Ditto.
2476         * WebKit.vcproj/WebKit.vcproj: Ditto.
2477         * WebKit.vcproj/WebKitGUID.vcproj: Ditto.
2478         * WebScriptCallFrame.cpp: Moved WebScriptScope functionality into here.
2479         (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString): Now
2480         returns a string value for things that are not strings.
2481         (WebScriptCallFrame::variableNames): Moved from WebScriptScope.
2482         (WebScriptCallFrame::valueForVariable): Moved from WebScriptScope.
2483         (WebScriptCallFrame::jsValueToString): Helper functions that converts
2484         any JSValue to a String.
2485         * WebScriptCallFrame.h: Moved WebScriptScope functionality into here.
2486         * WebScriptDebugger.cpp: Added nested guards so that Drosera does not
2487         receive notifications about JavaScript that Drosera is running just the
2488         JavaScript WebKit is running.
2489         (WebScriptDebugger::WebScriptDebugger):
2490         (WebScriptDebugger::sourceParsed):
2491         (WebScriptDebugger::callEvent):
2492         (WebScriptDebugger::atStatement):
2493         (WebScriptDebugger::returnEvent):
2494         (WebScriptDebugger::exception):
2495         * WebScriptDebugger.h: Ditto.
2496         * WebScriptScope.cpp: Removed.
2497         * WebScriptScope.h: Removed.
2498
2499 2007-12-03  Mark Rowe  <mrowe@apple.com>
2500
2501         Speculative Windows build fix.
2502
2503         * WebScriptCallFrame.cpp:
2504         (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
2505
2506 2007-12-03  Adam Roben  <aroben@apple.com>
2507
2508         Another speculative Windows build fix
2509
2510         * WebScriptCallFrame.cpp:
2511         (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
2512
2513 2007-12-03  Adam Roben  <aroben@apple.com>
2514
2515         Speculative Windows build fix
2516
2517         * WebFrame.cpp:
2518         (WebFrame::globalContext):
2519         (WebFrame::windowObjectCleared):
2520         * WebScriptDebugger.cpp:
2521         (WebScriptDebugger::WebScriptDebugger):
2522
2523 2007-12-01  Sam Weinig  <sam@webkit.org>
2524
2525         Rename IWebViewPrivate::selectionImageRect to IWebViewPrivate::selectionRect.
2526
2527         Rubber stamped by Adam Roben.
2528
2529         * Interfaces/IWebViewPrivate.idl:
2530         * WebView.cpp:
2531         (WebView::selectionRect):
2532         * WebView.h:
2533
2534 2007-11-30  Ada Chan  <adachan@apple.com>
2535
2536         <rdar://problem/5621373> Added a way for the client to clear undo/redo
2537         operations from a WebView.
2538
2539         Reviewed by Steve.
2540
2541         * Interfaces/IWebViewPrivate.idl:
2542         * WebView.cpp:
2543         (WebView::clearUndoRedoOperations):
2544         * WebView.h:
2545
2546 2007-11-29  Anders Carlsson  <andersca@apple.com>
2547
2548         Reviewed by Sam.
2549
2550         Add an IWebFrameLoadDelegate2 interface with a didClearWindowObject method 
2551         that passes in the frame whose window has been cleared. This matches a newly
2552         added delegate method on the Mac.
2553         
2554         * Interfaces/IWebFrameLoadDelegate.idl:
2555         * WebFrame.cpp:
2556         (WebFrame::windowObjectCleared):
2557
2558 2007-11-29  Kevin McCullough  <kmccullough@apple.com>
2559
2560         Reviewed by Sam.
2561
2562         - <rdar://5618976> Drosera: should listen for the WebScriptDebugServer
2563         dying and vice versa.
2564
2565         * Interfaces/IWebScriptDebugListener.idl: Added the new function to the
2566         interface.
2567         * WebKit.vcproj/WebKit.def: Added the new function to the def file so
2568         Safari can tell WebKit when the server is dying.
2569         * WebKit.vcproj/WebKit_debug.def: Ditto.
2570         * WebKitDLL.cpp: Added the new function for Safari to call.
2571         (RunAsLocalServer):
2572         (LocalServerDidDie):
2573         * WebScriptDebugServer.cpp: 
2574         (WebScriptDebugServer::WebScriptDebugServer): Removed unused member.
2575         (WebScriptDebugServer::sharedWebScriptDebugServer): Ditto, and added new
2576         member to prevent adding or removing listeners when the server is dying.
2577         (WebScriptDebugServer::addListener): Don't let new listeners be added
2578         when the server is dying.
2579         (WebScriptDebugServer::removeListener): Don't let listeners remove
2580         themselves when the server is dying.  The server will remove them all
2581         anyways.
2582         (WebScriptDebugServer::serverDidDie): Notify all listeners that the
2583         server is dying and remove all listeners.
2584         * WebScriptDebugServer.h: Added the new method and removed an unused
2585         member.
2586
2587 2007-11-29  Brady Eidson  <beidson@apple.com>
2588
2589         Build fix that works...?
2590
2591         * WebChromeClient.h:
2592
2593 2007-11-29  Brady Eidson  <beidson@apple.com>
2594
2595         Build fix
2596
2597         * WebChromeClient.cpp:
2598         (WebChromeClient::requestQuotaIncreaseForNewDatabase):
2599         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
2600
2601 2007-11-29  Brady Eidson  <beidson@apple.com>
2602
2603         Keep it building with new client method
2604
2605         * WebChromeClient.cpp:
2606         (ChromeClient::requestQuotaIncreaseForNewDatabase):
2607         (ChromeClient::requestQuotaIncreaseForDatabaseOperation):
2608         * WebChromeClient.h:
2609
2610 2007-11-29  Dan Bernstein  <mitz@apple.com>
2611
2612         Reviewed by Beth Dakin and Darin Adler.
2613
2614         - fix <rdar://problem/5346394> Contextmenu event doesn't fire on body element inside frame
2615
2616         * WebView.cpp:
2617         (WebView::handleContextMenuEvent): Send the context menu event to the
2618         frame containing the node that was hit.
2619
2620 2007-11-28  Kevin McCullough  <kmccullough@apple.com>
2621
2622         Reviewed by Tim.
2623
2624         - Added guards to the wait loop so execution would not hang and now the
2625         console window can process JavaScript.
2626
2627         * WebScriptDebugServer.cpp:
2628         (WebScriptDebugServer::suspendProcessIfPaused):
2629
2630 2007-11-28  Anders Carlsson  <andersca@apple.com>
2631
2632         Reviewed by Adam.
2633
2634         Implement the last bits of the WebDatabaseManager API.
2635         
2636         * Interfaces/IWebDatabaseManager.idl:
2637         * WebDatabaseManager.cpp:
2638         (isEqual):
2639         (WebDatabaseManager::sharedWebDatabaseManager):
2640         (WebDatabaseManager::dispatchDidModifyOrigin):
2641         (WebDatabaseManager::dispatchDidModifyDatabase):
2642         * WebDatabaseManager.h:
2643
2644 2007-11-28  Anders Carlsson  <andersca@apple.com>
2645
2646         Get Drosera working again for real.
2647         
2648         * COMEnumVariant.h:
2649         (::Next):
2650
2651 2007-11-27  Kevin McCullough  <kmccullough@apple.com>
2652
2653         Reviewed by Maciej and Adam.
2654
2655         - Added Drosera to the WebKit project.
2656
2657         * WebKit.vcproj/WebKit.sln:
2658
2659 2007-11-27  Jon Honeycutt  <jhoneycutt@apple.com>
2660
2661         Reviewed by Adam.
2662
2663         Return bool from registerWebViewWindowClass, as nothing uses the ATOM.
2664         Set haveRegisteredWindowClass to true
2665
2666         * WebView.cpp:
2667         (registerWebViewWindowClass):
2668
2669 2007-11-27  Anders Carlsson  <andersca@apple.com>
2670
2671         Speculative fix to get Drosera working.
2672         
2673         * COMEnumVariant.h:
2674         (::Next):
2675         Update the number of elements fetched correctly.
2676         
2677 2007-11-27  Anders Carlsson <andersca@apple.com>
2678
2679         Reviewed by Adam.
2680
2681         Some COM cleanup.
2682         
2683         * CFDictionaryPropertyBag.cpp:
2684         (CFDictionaryPropertyBag::QueryInterface):
2685         * CFDictionaryPropertyBag.h:
2686         * WebBackForwardList.cpp:
2687         (WebBackForwardList::addItem):
2688         (WebBackForwardList::removeItem):
2689         * WebDownload.cpp:
2690         (WebDownload::initWithRequest):
2691         * WebFrame.cpp:
2692         (WebFrame::loadRequest):
2693         (WebFrame::initWithWebFrameView):
2694         (WebFrame::webHistory):
2695         (WebFrame::dispatchWillSendRequest):
2696         * WebURLAuthenticationChallenge.cpp:
2697         (WebURLAuthenticationChallenge::QueryInterface):
2698         (WebURLAuthenticationChallenge::initWithProtectionSpace):
2699         * WebURLAuthenticationChallenge.h:
2700         * WebURLAuthenticationChallengeSender.cpp:
2701         (WebURLAuthenticationChallengeSender::QueryInterface):
2702         * WebURLAuthenticationChallengeSender.h:
2703         * WebURLResponse.cpp:
2704         (WebURLResponse::QueryInterface):
2705         * WebURLResponse.h:
2706         * WebView.cpp:
2707         (WebView::notifyDidAddIcon):
2708         (WebView::goToBackForwardItem):
2709         (WebView::canHandleRequest):
2710         (WebView::loadBackForwardListFromOtherView):
2711         (core):
2712
2713 2007-11-27  Anders Carlsson  <andersca@apple.com>
2714
2715         Add COMEnumVariant.h to the project.
2716         
2717         * WebKit.vcproj/WebKit.vcproj:
2718
2719 2007-11-27  Anders Carlsson  <andersca@apple.com>
2720
2721         Reviewed by Adam.
2722
2723         Return E_INVALIDARG if the databaseName BSTR is null.
2724         
2725         * WebDatabaseManager.cpp:
2726         (WebDatabaseManager::detailsForDatabaseWithOrigin):
2727         (WebDatabaseManager::deleteDatabaseWithOrigin):
2728
2729 2007-11-27  Anders Carlsson  <andersca@apple.com>
2730
2731         Reviewed by Adam.
2732
2733         Implement the rest of the WebDatabaseManager API.
2734
2735         * COMEnumVariant.h:
2736         * Interfaces/IWebDatabaseManager.idl:
2737         * WebDatabaseManager.cpp:
2738         (isEqual):
2739         (DatabaseDetailsPropertyBag::DatabaseDetailsPropertyBag):
2740         (DatabaseDetailsPropertyBag::~DatabaseDetailsPropertyBag):
2741         (DatabaseDetailsPropertyBag::createInstance):
2742         (DatabaseDetailsPropertyBag::AddRef):
2743         (DatabaseDetailsPropertyBag::Release):
2744         (DatabaseDetailsPropertyBag::QueryInterface):
2745         (DatabaseDetailsPropertyBag::Read):
2746         (DatabaseDetailsPropertyBag::Write):
2747         (WebDatabaseManager::detailsForDatabaseWithOrigin):
2748         (WebDatabaseManager::deleteAllDatabases):
2749         (WebDatabaseManager::deleteDatabasesWithOrigin):
2750         (WebDatabaseManager::deleteDatabaseWithOrigin):
2751         * WebDatabaseManager.h:
2752
2753 2007-11-27  Ada Chan  <adachan@apple.com>
2754
2755         <rdar://problem/5616098> The BSTR returned by WebHistoryItem::alternateTitle
2756         was not allocated correctly.
2757
2758         Reviewed by Anders.
2759
2760         * WebHistoryItem.cpp:
2761         (WebHistoryItem::setAlternateTitle):
2762         (WebHistoryItem::alternateTitle):
2763         * WebHistoryItem.h:
2764
2765 2007-11-27  Anders Carlsson  <andersca@apple.com>
2766
2767         Reviewed by Adam.
2768
2769         Use COMEnumVariant in WebScriptCallFrame and WebScriptScope.
2770         
2771         * WebScriptCallFrame.cpp:
2772         (WebScriptCallFrame::scopeChain):
2773         * WebScriptScope.cpp:
2774         (WebScriptScope::variableNames):
2775
2776 2007-11-27  Anders Carlsson  <andersca@apple.com>
2777
2778         Reviewed by Adam.
2779
2780         Use the correct include paths.
2781         
2782         * COMEnumVariant.h:
2783
2784 2007-11-27  Anders Carlsson  <andersca@apple.com>
2785
2786         Reviewed by Darin.
2787    
2788         Add COMEnumVariant, a templatized class with implements IEnumVARIANT and lets
2789         you enumerate over a C++ container, be it WTF or STL.
2790         
2791         * COMEnumVariant.h: Added.
2792         
2793         * WebDatabaseManager.cpp:
2794         (WebDatabaseManager::origins):
2795         (WebDatabaseManager::databasesWithOrigin):
2796         Implement these using COMEnumVariant.
2797         
2798         * WebSecurityOrigin.cpp:
2799         (WebSecurityOrigin::QueryInterface):
2800         * WebSecurityOrigin.h:
2801         Add a UUID for the implementation so that other parts of WebKit can access
2802         the WebCore::SecurityOriginData object.
2803         
2804 2007-11-26  Adam Roben  <aroben@apple.com>
2805
2806         Take advantage of the new Color constructor that takes a CGColorRef
2807
2808         This lets us handle grayscale colors (which only have 2 components).
2809
2810         Reviewed by Darin.
2811
2812         * WebKitGraphics.cpp:
2813         (DrawTextAtPoint):
2814
2815 2007-11-26  Steve Falkenburg  <sfalken@apple.com>
2816
2817         Build fix.
2818
2819         * WebKit.vcproj/WebKit.make:
2820
2821 2007-11-26  Steve Falkenburg  <sfalken@apple.com>
2822
2823         Build fix.
2824
2825         * WebKit.vcproj/build-generated-files.sh:
2826
2827 2007-11-26  Steve Falkenburg  <sfalken@apple.com>
2828
2829         Build fix.
2830
2831         * WebKit.vcproj/build-generated-files.sh:
2832
2833 2007-11-26  Anders Carlsson  <andersca@apple.com>
2834
2835         Reviewed by Adam.
2836
2837         Add an implementation of IWebSecurityOrigin and a partially stubbed out
2838         implementation of IWebDatabaseManager.
2839         
2840         * ForEachCoClass.h:
2841         * Interfaces/IWebDatabaseManager.idl:
2842         * Interfaces/WebKit.idl:
2843         * WebDatabaseManager.cpp:
2844         (WebDatabaseManager::createInstance):
2845         (WebDatabaseManager::WebDatabaseManager):
2846         (WebDatabaseManager::~WebDatabaseManager):
2847         (WebDatabaseManager::QueryInterface):
2848         (WebDatabaseManager::AddRef):
2849         (WebDatabaseManager::Release):
2850         (WebDatabaseManager::sharedWebDatabaseManager):
2851         (WebDatabaseManager::origins):
2852         (WebDatabaseManager::databasesWithOrigin):
2853         (WebDatabaseManager::detailsForDatabaseWithOrigin):
2854         (WebDatabaseManager::deleteAllDatabases):
2855         (WebDatabaseManager::deleteDatabasesWithOrigin):
2856         (WebDatabaseManager::deleteDatabaseWithOrigin):
2857         * WebDatabaseManager.h:
2858         * WebKit.vcproj/WebKit.vcproj:
2859         * WebKitClassFactory.cpp:
2860         * WebSecurityOrigin.cpp: Added.
2861         (WebSecurityOrigin::createInstance):
2862         (WebSecurityOrigin::WebSecurityOrigin):
2863         (WebSecurityOrigin::~WebSecurityOrigin):
2864         (WebSecurityOrigin::QueryInterface):
2865         (WebSecurityOrigin::AddRef):
2866         (WebSecurityOrigin::Release):
2867         (WebSecurityOrigin::protocol):
2868         (WebSecurityOrigin::domain):
2869         (WebSecurityOrigin::port):
2870         (WebSecurityOrigin::usage):
2871         (WebSecurityOrigin::quota):
2872         (WebSecurityOrigin::setQuota):
2873         * WebSecurityOrigin.h: Added.
2874
2875 2007-11-26  Kevin McCullough  <kmccullough@apple.com>
2876
2877         Reviewed by Maciej.
2878
2879         - Implemented displaying variables for Drosera on Win.
2880
2881         * Interfaces/IWebScriptCallFrame.idl: Added a local function to be
2882         able to access the WebScriptCallFrame.
2883         * Interfaces/IWebScriptScope.idl: Implemented.
2884         * Interfaces/WebKit.idl: Added WebScriptScope to the tlb.
2885         * WebKit.vcproj/Interfaces.vcproj: 
2886         * WebScriptCallFrame.cpp: Implemented the helper and accessor methods.
2887         (EnumScopes::Next): Fixed a bug where we did not release correctly and
2888         would accidentally destroy scopes.
2889         (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
2890         Implemented.
2891         (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString): Implemented
2892         * WebScriptCallFrame.h: Implemented the helper and accessor methods.
2893         (WebScriptCallFrame::impl):
2894         (WebScriptCallFrame::state):
2895         * WebScriptScope.cpp: Implmented.
2896         (EnumVariables::EnumVariables): Created an IEnumVariant over the
2897         variables to be able to pass a DCOM acceptable structure back to
2898         Drosera.
2899         (EnumVariables::createInstance):
2900         (EnumVariables::QueryInterface):
2901         (EnumVariables::AddRef):
2902         (EnumVariables::Release):
2903         (EnumVariables::Next):
2904         (EnumVariables::Skip):
2905         (EnumVariables::Reset):
2906         (EnumVariables::Clone):
2907         (WebScriptScope::WebScriptScope):
2908         (WebScriptScope::createInstance): Implemented.
2909         (WebScriptScope::variableNames): Implemented.
2910         (WebScriptScope::valueForVariable):
2911         * WebScriptScope.h: Implmeneted.
2912
2913 2007-11-26  Anders Carlsson  <andersca@apple.com>
2914
2915         Reviewed by Brady.
2916
2917         Add IWebDatabaseManager and IWebSecurityOrigin interfaces.
2918         
2919         * Interfaces/IWebDatabaseManager.idl: Added.
2920         * Interfaces/IWebSecurityOrigin.idl: Added.
2921         * WebKit.vcproj/Interfaces.vcproj:
2922         * WebKit.vcproj/WebKitGUID.vcproj:
2923
2924 2007-11-26  Alice Liu  <alice.liu@apple.com>
2925
2926         Reviewed by Jon Honeycutt.
2927
2928         Fall back to the default Policy Delegate in these functions, 
2929         as is already done in dispatchDecidePolicyForNavigationAction
2930
2931         * WebFrame.cpp:
2932         (WebFrame::dispatchDecidePolicyForMIMEType):
2933         (WebFrame::dispatchDecidePolicyForNewWindowAction):
2934         (WebFrame::dispatchUnableToImplementPolicy):
2935
2936 2007-11-25  Adam Roben  <aroben@apple.com>
2937
2938         Fix a leak pointed out by Alexey
2939
2940         * WebView.cpp:
2941         (getUpdateRects): Use a Vector<unsigned char>, since OwnPtr doesn't
2942         know to call delete[].
2943
2944 2007-11-25  Adam Roben  <aroben@apple.com>
2945
2946         Fix Bug 16138: Reduce code duplication in WebView.cpp
2947
2948         http://bugs.webkit.org/show_bug.cgi?id=16138
2949
2950         Reviewed by Sam.
2951
2952         * WebView.cpp:
2953         (getUpdateRects): Factored code out of updateBackingStore and paint
2954         into this new helper function.
2955         (WebView::updateBackingStore): Use getUpdateRects.
2956         (WebView::paint): Ditto.
2957         (WebView::paintIntoBackingStore): Changed to take a const IntRect&.
2958         (WebView::paintIntoWindow): Ditto.
2959         * WebView.h:
2960
2961 2007-11-25  Adam Roben  <aroben@apple.com>
2962
2963         Add ImageDiff.vcproj to WebKit.sln
2964
2965         Reviewed by Sam.
2966
2967         * WebKit.vcproj/WebKit.sln:
2968
2969 2007-11-17  Timothy Hatcher  <timothy@apple.com>
2970
2971         Reviewed by Mark Rowe.
2972
2973         Bug 13470: i18n: The Web Inspector is not localizable
2974         http://bugs.webkit.org/show_bug.cgi?id=13470
2975
2976         * English.lproj/Localizable.strings: Updated.
2977         * WebInspectorClient.cpp:
2978         (WebInspectorClient::localizedStringsURL): Empty stub.
2979         * WebInspectorClient.h: Added localizedStringsURL.
2980
2981 2007-11-17  Alexey Proskuryakov  <ap@webkit.org>
2982
2983         Windows build fix.
2984
2985         * WebView.cpp:
2986         (WebView::deleteSelection): Use canSmartCopyOrDelete() directly.
2987
2988 2007-11-14  Adam Roben  <aroben@apple.com>
2989
2990         Change Interfaces to be a "Static Library" project
2991
2992         Being a Utility project meant that Interfaces was rebuilding every
2993         time (Utility projects are supposed to handle their own dependencies).
2994         Interfaces isn't really a static library, but it means that VS will
2995         handle dependencies for us (and not complain about missing manifests
2996         like it did when the project was an Application).
2997
2998         * WebKit.vcproj/Interfaces.vcproj:
2999
3000 2007-11-14  Adam Roben  <aroben@apple.com>
3001
3002         Shut up FixMIDLHeaders.pl
3003
3004         * WebKit.vcproj/FixMIDLHeaders.pl:
3005
3006 2007-11-14  Adam Roben  <aroben@apple.com>
3007
3008         Change Interfaces to use a Utility configuration
3009
3010         It had previously been marked as an "Application (.exe)", which is
3011         wrong but worked with most versions of Visual Studio.
3012
3013         Rubberstamped by Steve.
3014
3015         * WebKit.vcproj/Interfaces.vcproj:
3016
3017 2007-11-14  Anders Carlsson  <andersca@apple.com>
3018
3019         Reviewed by Adam.
3020
3021         Get the new focus window from the wParam instead of calling GetFocus().
3022         Also, send blur even if there is no focused frame.
3023                
3024         * WebView.cpp:
3025         (WebViewWndProc):
3026
3027 2007-11-14  Adam Roben  <aroben@apple.com>
3028
3029         Another build fix for systems without Cygwin in their PATH
3030
3031         * WebKit.vcproj/Interfaces.vcproj: Add Cygwin to the PATH in the
3032         Post-Build Event.
3033
3034 2007-11-13  Kevin McCullough  <kmccullough@apple.com>
3035
3036         Reviewed by Adam.
3037
3038         - Make Drosera show source, source URLs, and function stack on Windows
3039         and some minor fixes.
3040
3041         * WebScriptCallFrame.cpp: Fixed a bug where the callFrame was not reffed
3042         properly before being returned, and changed functionName() to check for
3043         Null or if the name is empty.
3044         (EnumScopes::Clone):
3045         (WebScriptCallFrame::WebScriptCallFrame):
3046         (WebScriptCallFrame::createInstance):
3047         (WebScriptCallFrame::caller):
3048         (WebScriptCallFrame::functionName):
3049         * WebScriptCallFrame.h: Ditto
3050         * WebScriptDebugServer.cpp: Made the listenerSet static since we were
3051         already treating it as if it were. Removed the EnumViews stuff.  This
3052         was added by Steve to demonstrate DCOM and he thought it would be needed
3053         by Drosera, but I don't believe it will be.
3054         Implemented suspendProcessIfPaused() also added calls to it at the end
3055         of several functions to ensure we pause if Drosera has told WebKit to.
3056         (WebScriptDebugServer::WebScriptDebugServer):
3057         (WebScriptDebugServer::sharedWebScriptDebugServer):
3058         (WebScriptDebugServer::addListener):
3059         (WebScriptDebugServer::removeListener):
3060         (WebScriptDebugServer::suspendProcessIfPaused):
3061         (WebScriptDebugServer::didLoadMainResourceForDataSource):
3062         (WebScriptDebugServer::didParseSource):
3063         (WebScriptDebugServer::failedToParseSource):
3064         (WebScriptDebugServer::didEnterCallFrame):
3065         (WebScriptDebugServer::willExecuteStatement):
3066         (WebScriptDebugServer::willLeaveCallFrame):
3067         (WebScriptDebugServer::exceptionWasRaised):
3068         * WebScriptDebugServer.h: Ditto.
3069         * WebScriptDebugger.cpp: The important change here is that leaveFrame()
3070         is called before willLeaveCallFrame().  I think there is some EOL stuff
3071         going on too.
3072         - It was the implementing of these functions that allows source, the
3073         source URLs and function stack to be displayed.
3074         (WebScriptDebugger::callEvent):
3075         (WebScriptDebugger::atStatement):
3076         (WebScriptDebugger::returnEvent):
3077         (WebScriptDebugger::exception):
3078         (WebScriptDebugger::enterFrame):
3079         (WebScriptDebugger::leaveFrame):
3080         * WebView.cpp: Removed the EnumView functions.
3081         (WebView::WebView):
3082         (WebView::~WebView):
3083
3084 2007-11-13  Adam Roben  <aroben@apple.com>
3085
3086         Fix <rdar://5346832> Infinite recursion when opening Web Inspector on more than one tab
3087
3088         The bug was that multiple WebNodeHighlights would subclass the same
3089         browser window, leading to infinite recursion within
3090         SubclassedWndProc.
3091
3092         WebNodeHighlight is now a WindowMessageListener, and lets
3093         WindowMessageBroadcaster handle subclassing the window.
3094
3095         Reviewed by Ada.
3096
3097         * WebNodeHighlight.cpp:
3098         (WebNodeHighlight::WebNodeHighlight): Initialize m_observedWindow
3099         member.
3100         (WebNodeHighlight::~WebNodeHighlight): Unregister as a listener for
3101         m_observedWindow.
3102         (WebNodeHighlight::highlight): Register as a listener.
3103         (WebNodeHighlight::windowReceivedMessage): Do the work that used to be
3104         done in SubclassedWndProc.
3105         * WebNodeHighlight.h: Made WebNodeHighlight a WindowMessageListener,
3106         and renamed m_subclassedWindow to m_observedWindow.
3107
3108 2007-11-13  Adam Roben  <aroben@apple.com>
3109
3110         Build fix for systems that don't have Cygwin in their PATH
3111
3112         * WebKit.vcproj/Interfaces.vcproj: Put Cygwin in the PATH before
3113         trying to run bash.
3114
3115 2007-11-13  Steve Falkenburg  <sfalken@apple.com>
3116
3117         Add IDOMElementPrivate::font() to get an element's font
3118         as a WebFontDescription.
3119         
3120         Reviewed by Darin.
3121
3122         * DOMCoreClasses.cpp:
3123         (DOMElement::font):
3124         * DOMCoreClasses.h:
3125         * Interfaces/DOMPrivate.idl:
3126
3127 2007-11-12  Adam Roben  <aroben@apple.com>
3128
3129         Windows build fix
3130
3131         * WebKit.vcproj/WebKit.def: Export fastZeroedMalloc.
3132         * WebKit.vcproj/WebKit_debug.def: Ditto.
3133
3134 2007-11-09  Jon Honeycutt  <jhoneycutt@apple.com>
3135
3136         Reviewed by Sam.
3137
3138         <rdar://5585900>: Safari crashes when selected in context menu to open
3139         audio format files (au, aif) with QT 7.3
3140
3141         The crash occurred on a machine where QT 7.3 was failing to initialize.
3142         The fix is to avoid sending streams to full-page plugins that've failed 
3143         to load
3144
3145         * WebFrame.cpp:
3146         (WebFrame::finishedLoading): Check plugin status before calling manual
3147         stream methods
3148         (WebFrame::setMainDocumentError): Same
3149         (WebFrame::committedLoad): Same
3150
3151 2007-11-09  Sam Weinig  <sam@webkit.org>
3152
3153         Rubber stamped by Oliver.
3154
3155         Make WebCore a dependency of Interfaces.
3156
3157         * WebKit.vcproj/WebKit.sln:
3158
3159 2007-11-04  Sam Weinig  <sam@webkit.org>
3160
3161         Reviewed by Adam Roben.
3162
3163         <rdar://problem/5435940>
3164         The COM bindings for the DOM should be autogenerated like the other DOM bindings
3165
3166         Initial commit of the autogeneration of the COM DOM Bindings.  No behavior change
3167         is being introduced in this patch and to insure that no conflicts arise, a temporary
3168         prefix of "GEN_" has been used for all the new classes.
3169
3170         The build architecture for these bindings differs slightly from the other autogenerated
3171         bindings.  Instead of building in WebCore and migrating the resuting code to WebKit (as
3172         is done for the Objective-C bindigs currently), the IDLs and generation scripts are
3173         migrated to WebKit and built there.  This is done with a series of scripts and Makefiles.
3174
3175         This commit includes:
3176             - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
3177               and ref-counting.
3178             - Generating all of the Core DOM and most of HTML and CSS
3179             - Generating Event, EventTarget, and EventListener
3180
3181         * DOMCreateInstance.cpp: Added.
3182         (domWrapperCache):
3183         (getDOMWrapper):
3184         (setDOMWrapper):
3185         (removeDOMWrapper):
3186         (GEN_DOMNode::createInstance):
3187         (GEN_DOMImplementation::createInstance):
3188         (GEN_DOMCSSRule::createInstance):
3189         (GEN_DOMStyleSheet::createInstance):
3190         (GEN_DOMCSSValue::createInstance):
3191         * DOMCreateInstance.h: Added.
3192         Temporary location for createInstance/object caching methods.  This will be broken up
3193         into seperate files in the near future.
3194
3195         * GEN_DOMObject.cpp: Added.
3196         (GEN_DOMObject::GEN_DOMObject):
3197         (GEN_DOMObject::~GEN_DOMObject):
3198         (GEN_DOMObject::QueryInterface):
3199         (GEN_DOMObject::AddRef):
3200         (GEN_DOMObject::Release):
3201         * GEN_DOMObject.h: Added.
3202         Hand rolled base class.
3203
3204         * Interfaces/IGEN_DOMObject.idl: Added. 
3205         Hand rolled base interface.
3206
3207         * WebKit.vcproj/DerivedSources.make: Added.
3208         * WebKit.vcproj/FixMIDLHeaders.pl: Added.
3209         This script is required because MIDL is producing un-buildable code due to
3210         circular dependencies.
3211
3212         * WebKit.vcproj/Interfaces.vcproj:
3213         * WebKit.vcproj/WebKit.vcproj:
3214         * WebKit.vcproj/WebKitGUID.vcproj:
3215         * WebKit.vcproj/build-generated-files.sh: Added.
3216
3217 2007-11-08  Kevin McCullough  <kmccullough@apple.com>
3218
3219         Reviewed by Adam.
3220
3221         - This patch does two main things.
3222         1) It adds pragma warning guards around WebCore includes in WebKit files
3223         that were previously overlooked.
3224         2) It implements almost the entireity of WebScriptDebugger.  Only one
3225         function remains and that implementation is dependent on finishing the
3226         implementation of WebScriptScope.
3227
3228         * WebScriptCallFrame.h:
3229         * WebScriptDebugServer.h:
3230         * WebScriptDebugger.cpp:
3231         (WebScriptDebugger::WebScriptDebugger):
3232         (WebScriptDebugger::sourceParsed):
3233         (WebScriptDebugger::callEvent):
3234         (WebScriptDebugger::atStatement):
3235         (WebScriptDebugger::returnEvent):
3236         (WebScriptDebugger::exception):
3237         (WebScriptDebugger::enterFrame):
3238         (WebScriptDebugger::leaveFrame):
3239         * WebScriptDebugger.h:
3240
3241 2007-11-08  Steve Falkenburg  <sfalken@apple.com>
3242
3243         <rdar://problem/5491463> Wrong dates shown in History menu.
3244         
3245         Fix off-by-one error in Windows epoch.
3246         
3247         For the Windows DATE type, 1/1/1900 should be 2.0, not 1.0.
3248         DATE is the number of days since 12/30/1899.
3249         
3250         Reviewed by Ada.
3251
3252         * MarshallingHelpers.cpp:
3253         (MarshallingHelpers::windowsEpochAbsoluteTime):
3254
3255 2007-11-08  Kevin McCullough  <kmccullough@apple.com>
3256
3257         Reviewed by Sam.
3258
3259         - With this change Drosera can now get the source of a website and the
3260         listings of the sources it gets.  This also lays the foundation for
3261         letting Drosera show the scope chain of the JavaScript stack.
3262
3263         * Interfaces/IWebFrame.idl: Changed the signature of the local function,
3264         globalContext(), because COM was unable to marshal this object with the
3265         other signature.
3266         * Interfaces/IWebScriptDebugServer.idl: Of course adding and removing
3267         a listener cannot be done in a const function.
3268         * WebChromeClient.h: Added accessor to the WebView for the new added
3269         kit() function in WebFrame.
3270         (WebChromeClient::webView):
3271         * WebFrame.cpp: Added a script debugger object and the necessary
3272         functions to attach and communicate with it. Also needed to change the
3273         local function, globalContext(), because of a COM issue.
3274         (kit):
3275         (WebFrame::WebFrame):
3276         (WebFrame::globalContext):
3277         (WebFrame::loadData):
3278         (WebFrame::attachScriptDebugger):
3279         (WebFrame::detachScriptDebugger):
3280         (WebFrame::dispatchDidLoadMainResource):
3281         (WebFrame::windowObjectCleared):
3282         * WebFrame.h: Ditto.
3283         * WebHTMLRepresentation.cpp: Implemented documentSource so Drosera has
3284         some source code to display.
3285         (WebHTMLRepresentation::WebHTMLRepresentation):
3286         (WebHTMLRepresentation::documentSource):
3287         * WebKit.vcproj/WebKit.vcproj: Added the new WebScriptDebugger class.
3288         * WebScriptCallFrame.cpp: Implemented much of this class' functionality.
3289         (EnumScopes::EnumScopes): Made an EnumScopes class to create an
3290         IEnumVARIANT to wrap a ScopeChain for Drosera.
3291         (EnumScopes::QueryInterface):
3292         (EnumScopes::AddRef):
3293         (EnumScopes::Release):
3294         (EnumScopes::Next):
3295         (EnumScopes::Skip):
3296         (EnumScopes::Reset):
3297         (EnumScopes::Clone):
3298         (WebScriptCallFrame::caller):
3299         (WebScriptCallFrame::scopeChain):
3300         (WebScriptCallFrame::functionName):
3301         (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
3302         * WebScriptCallFrame.h: Added member data needed for the above functions
3303         * WebScriptDebugServer.cpp: Began implementing. 
3304         (WebScriptDebugServer::listenerCount):
3305         (EnumViews::QueryInterface):
3306         (EnumViews::AddRef):
3307         (EnumViews::Release):
3308         (EnumViews::Next):
3309         (EnumViews::Skip):
3310         (EnumViews::Reset):
3311         (EnumViews::Clone):
3312         (WebScriptDebugServer::WebScriptDebugServer):
3313         (WebScriptDebugServer::createInstance):
3314         (WebScriptDebugServer::sharedWebScriptDebugServer):
3315         (WebScriptDebugServer::AddRef):
3316         (WebScriptDebugServer::Release):
3317         (WebScriptDebugServer::addListener):
3318         (WebScriptDebugServer::removeListener):
3319         (WebScriptDebugServer::step):
3320         (WebScriptDebugServer::pause):
3321         (WebScriptDebugServer::resume):
3322         (WebScriptDebugServer::isPaused):
3323         (WebScriptDebugServer::suspendProcessIfPaused):
3324         (WebScriptDebugServer::didLoadMainResourceForDataSource):
3325         (WebScriptDebugServer::didParseSource):
3326         (WebScriptDebugServer::failedToParseSource):
3327         (WebScriptDebugServer::didEnterCallFrame):
3328         (WebScriptDebugServer::willExecuteStatement):
3329         (WebScriptDebugServer::willLeaveCallFrame):
3330         (WebScriptDebugServer::exceptionWasRaised):
3331         * WebScriptDebugServer.h: Began implementing.
3332         * WebScriptDebugger.cpp: Added.
3333         (WebScriptDebugger::WebScriptDebugger):
3334         (WebScriptDebugger::sourceParsed):
3335         * WebScriptDebugger.h: Added.
3336         * WebScriptScope.cpp: Make this class use createInstance which is more
3337         in line with our guidelines.
3338         (WebScriptScope::WebScriptScope):
3339         (WebScriptScope::createInstance):
3340         * WebScriptScope.h:
3341
3342
3343 2007-11-07  Darin Adler  <darin@apple.com>
3344
3345         Reviewed by Steve.
3346
3347         * Interfaces/IWebUIDelegate.idl: Added the functions needed below.
3348         * WebChromeClient.cpp:
3349         (WebChromeClient::setMenubarVisible): Eliminated the notImplemented()
3350         here by calling through the UI delegate.
3351         (WebChromeClient::menubarVisible): Ditto.
3352         (WebChromeClient::runDatabaseSizeLimitPrompt): Ditto.
3353
3354 2007-11-07  Steve Falkenburg  <sfalken@apple.com>
3355
3356         Added IWebDocumentText available via QI from WebFrame.
3357         
3358         Reviewed by Sam.
3359
3360         * WebFrame.cpp:
3361         (WebFrame::QueryInterface): Added IID_IWebDocumentText.
3362         (WebFrame::supportsTextEncoding): Stubbed out.
3363         (WebFrame::selectedString): Implemented.
3364         (WebFrame::selectAll): Stubbed out.
3365         (WebFrame::deselectAll): Stubbed out.
3366         * WebFrame.h:
3367
3368 2007-11-07  Adam Roben  <aroben@apple.com>
3369
3370         Fix <rdar://5569268> Crash when opening any FTP site in second tab/window
3371
3372         Reviewed by Sam.
3373
3374         * WebView.cpp:
3375         (WebView::initWithFrame): Set the ftpDirectoryTemplatePath for every
3376         Page, not just the first one.
3377
3378 2007-11-06  Adam Roben  <aroben@apple.com>
3379
3380         Change WebLocalizableStrings to take UTF-8 C strings
3381
3382         This matches the way things work on the Mac, and will allow source
3383         files containing localizable strings to be shared between Mac and
3384         Windows. The old functions have not been removed for compatibility
3385         reasons, but are now just wrappers around the new UTF-8 functions.
3386
3387         Reviewed by Ada.
3388
3389         * WebKit.vcproj/WebKit.def: Added new functions.
3390         * WebKit.vcproj/WebKit_debug.def: Ditto.
3391         * WebLocalizableStrings.cpp:
3392         (copyLocalizedStringFromBundle): Changed to take a WebCore::String
3393         representing the key.
3394         (localizedString): Refactored from WebLocalizedString. Takes a
3395         WebCore::String representing the key.
3396         (localizedLPCTSTR): Ditto for WebLocalizedLPCTSTR.
3397         (WebLocalizedStringUTF8): Added. Takes a UTF-8 C string as the key.
3398         (WebLocalizedLPCTSTRUTF8): Ditto.
3399         (WebLocalizedString): Changed to call localizedString.
3400         (WebLocalizedLPCTSTR): Changed to call localizedLPCTSTR.
3401         * WebLocalizableStrings.h: Changed macros to use the new UTF-8
3402         functions.
3403
3404 2007-11-06  Darin Adler  <darin@apple.com>
3405
3406         Reviewed by Adam and Steve.
3407
3408         - added hooks needed to implement showModalDialog on Windows
3409
3410         * Interfaces/IWebUIDelegate.idl: Added canRunModal, createModalDialog,
3411         and runModal functions to the end of IWebUIDelegate3.
3412
3413         * WebChromeClient.h: Added uiDelegate and uiDelegate2 helper functions,
3414         so it's easier to write client functions.
3415         * WebChromeClient.cpp:
3416         (WebChromeClient::createWindow): Implemented dialog case. Calls IWebUIDelegate3.
3417         (WebChromeClient::canRunModal): Implemented. Calls IWebUIDelegate3.
3418         (WebChromeClient::runModal): Ditto.
3419         (WebChromeClient::uiDelegate): Added.
3420         (WebChromeClient::uiDelegate2): Added.
3421         (WebChromeClient::uiDelegate3): Added.
3422
3423 2007-11-06  Alexey Proskuryakov  <ap@webkit.org>
3424
3425         Rubber-stamped by Adam Roben.
3426
3427         Windows build fix.
3428
3429         * WebFrame.cpp:
3430         (WebFrame::string): plainText() returns a String now.
3431
3432 2007-11-05  Ada Chan  <adachan@apple.com>
3433
3434         <rdar://problem/5579772> Regression: AltGr does not work
3435         Testing whether alt-key is down is not the right test for system key event.
3436         Added a m_isSystemKey flag in PlatformKeyboardEvent to keep track of whether
3437         this is a system key event, check that flag instead in handleEditingKeyboardEvent().
3438
3439         Reviewed by Oliver.
3440
3441         * WebView.cpp:
3442         (WebView::keyUp):
3443         (WebView::handleEditingKeyboardEvent):
3444         (WebView::keyDown):
3445         (WebViewWndProc):
3446         * WebView.h:
3447
3448 2007-11-05  Ada Chan  <adachan@apple.com>
3449
3450         Build fix.
3451
3452         Reviewed by Tristan.
3453
3454         * WebChromeClient.h:
3455
3456 2007-11-05  Tristan O'Tierney  <tristan@apple.com>
3457
3458         Reviewed by Darin Adler.
3459         
3460         Part of the WebKit/WebCore API changes for
3461         <rdar://problem/5368188>
3462
3463         * WebChromeClient.cpp:
3464         (WebChromeClient::createWindow):
3465         Removed usage of createModalDialog and revised to use new createWindow
3466         ChromeClient API.
3467
3468 2007-11-04  Adam Roben  <aroben@apple.com>
3469
3470         Add IWebCache::disabled
3471
3472         This matches the Mac WebCache class.
3473
3474         Reviewed by Sam.
3475
3476         * Interfaces/IWebCache.idl:
3477         * WebCache.cpp:
3478         (WebCache::disabled):
3479         * WebCache.h:
3480
3481 2007-11-04  Adam Roben  <aroben@apple.com>
3482
3483         Add IWebInspector and a way to get one from a WebView
3484
3485         This API matches the Mac one added in r27266.
3486
3487         Reviewed by Sam.
3488
3489         * Interfaces/IWebInspector.idl: Added.
3490         * Interfaces/IWebViewPrivate.idl: Added a new inspector method to
3491         match Mac.
3492         * WebInspector.cpp: Added.
3493         (WebInspector::createInstance):
3494         (WebInspector::WebInspector):
3495         (WebInspector::~WebInspector):
3496         (WebInspector::webViewClosed):
3497         (WebInspector::QueryInterface):
3498         (WebInspector::AddRef):
3499         (WebInspector::Release):
3500         (WebInspector::show):
3501         (WebInspector::showConsole):
3502         (WebInspector::showTimeline):
3503         (WebInspector::close):
3504         (WebInspector::attach):
3505         (WebInspector::detach):
3506         * WebInspector.h: Added.
3507         * WebKit.vcproj/Interfaces.vcproj: Added IWebInspector.idl.
3508         * WebKit.vcproj/WebKit.vcproj: Added WebInspector.{cpp,h}.
3509         * WebKit.vcproj/WebKitGUID.vcproj: Added IWebInspector_i.c.
3510         * WebView.cpp:
3511         (WebView::close): Notify the WebInspector that we're closing.
3512         (WebView::inspector): Added.
3513         * WebView.h:
3514
3515 2007-11-04  Adam Roben  <aroben@apple.com>
3516
3517         Cache strings that come directly from WebLocalizedString
3518
3519         Reviewed by Steve.
3520
3521         * WebLocalizableStrings.cpp:
3522         (copyLocalizedStringFromBundle): This used to be WebLocalizedString,
3523         but is now just a static helper function.
3524         (findCachedStringInMap): Added static helper.
3525         (findCachedString): Refactored and cleaned up code from
3526         WebLocalizedLPCTSTR.
3527         (cacheString): Ditto.
3528         (WebLocalizedString): Rewrote to use the new helper functions.
3529         (WebLocalizedLPCTSTR): Changed to use the new helper functions.
3530
3531 2007-11-03  Adam Roben  <aroben@apple.com>
3532
3533         Only override the default user agent string if we're actually given a custom one
3534
3535         Reviewed by Sam.
3536
3537         * WebView.cpp:
3538         (WebView::setCustomUserAgent):
3539
3540 2007-11-01  Oliver Hunt  <oliver@apple.com>
3541
3542         Reviewed by Alexey.
3543
3544         Allow Shift, Ctrl, Alt, Meta and Capslock keys to be sent into WebCore.
3545
3546         * WebView.cpp:
3547         (WebView::keyDown):
3548         (WebView::keyUp):
3549
3550 2007-11-01  Kevin McCullough  <kmccullough@apple.com>
3551
3552         - Fixed a build failure
3553
3554         * WebEditorClient.cpp:
3555         (WebEditorClient::textWillBeDeletedInTextField):
3556
3557 2007-11-01  Adam Roben  <aroben@apple.com>
3558
3559         Fix the parameter type of WebLocalizedString to match the UI_STRING macro
3560
3561         Reviewed by Sam.
3562
3563         * WebLocalizableStrings.cpp:
3564         (WebLocalizedString):
3565         (WebLocalizedLPCTSTR):
3566         * WebLocalizableStrings.h:
3567
3568 2007-11-01  Alexey Proskuryakov  <ap@webkit.org>
3569
3570         Rubber-stamped by Adam Roben.
3571
3572         Rolled out r27326 - debug CRT seems to cause no problems after all.
3573
3574         * WebKit.vcproj/WebKit.vcproj:
3575
3576 2007-10-31  Adam Roben  <aroben@apple.com>
3577
3578         Switch the Debug configuration to using the non-debug CRT
3579
3580         The debug CRT conflicts with what Safari uses, which causes loading
3581         problems.
3582
3583         Reviewed by Steve.
3584
3585         * WebKit.vcproj/WebKit.vcproj:
3586
3587 2007-10-30  Kevin McCullough  <kmccullough@apple.com>
3588
3589         Reviewed by Adam and Geoff.
3590
3591         - Added the globalContext method so Drosera can ask a WebFrame for its
3592         context.
3593
3594         * Interfaces/IWebFrame.idl:
3595         * WebFrame.cpp:
3596         * WebFrame.h:
3597
3598 2007-10-30  Adele Peterson  <adele@apple.com>
3599
3600         Reviewed by Darin.
3601
3602         WebKitWin part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
3603         <rdar://problem/5110427> REGRESSION: Caps lock icon should show in password fields
3604
3605         * WebView.cpp: (WebView::keyDown): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field.
3606
3607 2007-10-29  Kevin McCullough  <kmccullough@apple.com>
3608
3609         Reviewed by Adam and Maciej.
3610
3611         - Added the IWebScriptScope interface which is used by Drosera to get
3612         information and run contextually significant code with respect to the
3613         current JS stack frame.
3614
3615         * Interfaces/IWebScriptCallFrame.idl: Line endings changed, not sure why
3616         but the real changes were to change the return type of scopeChain() and
3617         the return type and name of evaluateWebScript() to
3618         stringByEvaluatingJavaScriptFromString().
3619         * Interfaces/IWebScriptScope.idl: Added.
3620         * WebKit.vcproj/Interfaces.vcproj: Added the new interface.
3621         * WebKit.vcproj/WebKit.vcproj: Added the files for the new class.
3622         * WebKit.vcproj/WebKitGUID.vcproj: Added the new interfaces.
3623         * WebScriptCallFrame.cpp: Changed the return type to E_NOTIMPL and
3624         asserted so it would be obvious if I accidentally try to use one of
3625         these functions before it's implemented.
3626         (WebScriptCallFrame::caller):
3627         (WebScriptCallFrame::scopeChain):
3628         (WebScriptCallFrame::functionName):
3629         (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
3630         * WebScriptCallFrame.h: Changed the return types mentioned above.
3631         * WebScriptDebugServer.cpp: Also changed the return type to E_NOTIMPL.
3632         (WebScriptDebugServer::addListener):
3633         (WebScriptDebugServer::removeListener):