572cc191d54f2573cb6984677d405154a425e760
[WebKit-https.git] / WebKit / win / ChangeLog
1 2010-01-17  Jon Honeycutt  <jhoneycutt@apple.com>
2
3         MSAA: The child <option> elements of a non-multiple <select> are not
4         exposed
5
6         https://bugs.webkit.org/show_bug.cgi?id=33773
7         <rdar://problem/7550556>
8
9         Reviewed by Alice Liu.
10
11         * AccessibleBase.cpp:
12         (AccessibleBase::get_accState):
13         If the object is invisible, set the invisible state flag. If the object
14         is collapsed, set the collapsed state. If the object is a combo box,
15         set the has popup flag, and if it's not collapsed, set the expanded
16         flag.
17         (MSAARole):
18         Add new WebCore to MSAA role mappings.
19
20         * WebCoreLocalizedStrings.cpp:
21         (WebCore::AXMenuListActionVerb):
22         Return the action verb that Firefox uses for <select> elements with
23         popups.
24         (WebCore::AXMenuListPopupActionVerb):
25         Return the verb that Firefox uses for a popup list.
26
27 2010-01-19  John Sullivan  <sullivan@apple.com>
28
29         https://bugs.webkit.org/show_bug.cgi?id=33854
30         Would like a variant of WebHTMLRepresentation's searchForLabelsBeforeElement that returns 
31         more info about where the result was found
32
33         Reviewed by Darin Adler
34
35         * Interfaces/IWebHTMLRepresentation.idl:
36         Created variant of searchForLabels that includes additional in/out parameters resultDistance and resultIsInCellAbove.
37         
38         * Interfaces/WebKit.idl:
39         Touched in order to get other idl change to propagate correctly.
40
41         * WebHTMLRepresentation.cpp:
42         (WebHTMLRepresentation::deprecatedSearchForLabels):
43         Renamed since iDL doesn't support two functions with the same name but different signatures.
44         (WebHTMLRepresentation::searchForLabels):
45         Implemented variant of searchForLabels that includes additional in/out parameters resultDistance and resultIsInCellAbove.
46
47         * WebHTMLRepresentation.h:
48         Declared variant of searchForLabels that includes additional in/out parameters resultDistance and resultIsInCellAbove.
49
50 2010-01-19  Adam Roben  <aroben@apple.com>
51
52         Windows build fix
53
54         * WebScriptWorld.cpp: Added missing #include.
55
56 2010-01-19  Dave Hyatt  <hyatt@apple.com>
57
58         Build bustage fix. Make sure the newly added scriptWorldForGlobalContext function is [local] in the IDL.
59
60         * Interfaces/IWebScriptWorld.idl:
61
62 2010-01-19  Dave Hyatt  <hyatt@apple.com>
63
64         Reviewed by Adam Roben.
65
66         Add an API to obtain a WebScriptWorld from a JSGlobalContextRef.
67
68         * Interfaces/IWebScriptWorld.idl:
69         * WebScriptWorld.cpp:
70         (WebScriptWorld::scriptWorldForGlobalContext):
71         * WebScriptWorld.h:
72
73 2010-01-18  Adam Roben  <aroben@apple.com>
74
75         Add IWebViewPrivate::setDomainRelaxationForbiddenForURLScheme
76
77         WebKit/win part of fixing <http://webkit.org/b/33806>
78         <rdar://problem/7552837> Would like API to disallow setting of
79         document.domain for pages with certain URL schemes
80
81         Reviewed by Sam Weinig.
82
83         * Interfaces/IWebViewPrivate.idl: Added
84         setDomainRelaxationForbiddenForURLScheme.
85
86         * Interfaces/WebKit.idl: Touched to force a build.
87
88         * WebView.cpp:
89         (WebView::setDomainRelaxationForbiddenForURLScheme):
90         * WebView.h:
91         Added. Calls through to SecurityOrigin.
92
93 2010-01-18  Chris Marrin  <cmarrin@apple.com>
94
95         Reviewed by Darin Adler.
96
97         Use new setScrollFrame API
98         https://bugs.webkit.org/show_bug.cgi?id=32279
99
100         * WebView.cpp:
101         (WebView::updateRootLayerContents):
102
103 2010-01-15  Jon Honeycutt  <jhoneycutt@apple.com>
104
105         MSAA: Screen rect for <option> elements is always the zero rect
106
107         https://bugs.webkit.org/show_bug.cgi?id=33758
108
109         Reviewed by Oliver Hunt.
110
111         * AccessibleBase.cpp:
112         (AccessibleBase::accLocation):
113         Use elementRect() rather than boundingBoxRect(), which
114         AccessibilityListBoxOption overrides.
115
116 2010-01-15  Jon Honeycutt  <jhoneycutt@apple.com>
117
118         get_accParent should try to retrieve parent AccessibilityObject, before
119         calling upon window
120
121         https://bugs.webkit.org/show_bug.cgi?id=22893
122
123         Reviewed by Darin Adler.
124
125         * AccessibleBase.cpp:
126         (AccessibleBase::get_accParent):
127         If the object has a parent object, return it. If not, return the
128         accessible for the WebView window.
129
130 2010-01-12  Jon Honeycutt  <jhoneycutt@apple.com>
131
132         MSAA: selected, selectable, extended selectable, and multiple
133         selectable states are not reported
134
135         https://bugs.webkit.org/show_bug.cgi?id=33574
136         <rdar://problem/7536826>
137
138         Reviewed by Darin Adler.
139
140         * AccessibleBase.cpp:
141         (AccessibleBase::get_accState):
142         Remove the call to isMultiSelect(). Call the correctly-named
143         isMultiSelectable(), and if it returns true, set both the "extended
144         selectable" and "multiple selectable" states. Check whether the object
145         is selected or selectable, and report those states.
146
147 2010-01-13  Steve Falkenburg  <sfalken@apple.com>
148
149         Reviewed by Adam Roben.
150
151         Add additional Geolocation interfaces in WebKit for Windows.
152
153         * Interfaces/IWebGeolocationPolicyListener.idl: Added.
154         * Interfaces/IWebUIDelegatePrivate.idl: Add decidePolicyForGeolocationRequest to IWebUIDelegatePrivate2.
155         Append since this version hasn't shipped.
156         * Interfaces/WebKit.idl: Add include of IWebGeolocationPolicyListener.idl.
157         * WebCoreSupport/WebChromeClient.cpp:
158         (WebChromeClient::requestGeolocationPermissionForFrame): Call into decidePolicyForGeolocationRequest.
159         * WebCoreSupport/WebGeolocationControllerClient.cpp:
160         (WebGeolocationControllerClient::WebGeolocationControllerClient): Moved *.
161         * WebGeolocationPolicyListener.cpp: Added.
162         * WebGeolocationPolicyListener.h: Added.
163         * WebKit.vcproj/Interfaces.vcproj: Added IWebGeolocationPolicyListener.
164         * WebKit.vcproj/WebKit.vcproj: Added WebGeolocationPolicyListener, WebGeolocationPolicyListener.
165         * WebView.cpp:
166         (WebView::setGeolocationProvider): Removed extraneous STDMETHODCALLTYPE.
167         (WebView::geolocationProvider): Removed extraneous STDMETHODCALLTYPE.
168         (WebView::geolocationDidChangePosition): Removed extraneous STDMETHODCALLTYPE.
169         (WebView::geolocationDidFailWithError): Removed extraneous STDMETHODCALLTYPE.
170
171 2010-01-12  Steve Falkenburg  <sfalken@apple.com>
172
173         Reviewed by Adam Roben, Sam Weinig.
174
175         Add Geolocation interfaces in WebKit for Windows.
176
177         * ForEachCoClass.h: Added WebGeolocationPosition.
178         * Interfaces/IWebError.idl:
179         * Interfaces/IWebGeolocationPosition.idl: Added.
180         * Interfaces/IWebGeolocationProvider.idl: Added.
181         * Interfaces/IWebViewPrivate.idl:
182         * Interfaces/WebKit.idl:
183         * WebCoreSupport/WebGeolocationControllerClient.cpp: Added.
184         (WebGeolocationControllerClient::WebGeolocationControllerClient):
185         (WebGeolocationControllerClient::startUpdating):
186         (WebGeolocationControllerClient::stopUpdating):
187         (WebGeolocationControllerClient::lastPosition):
188         * WebCoreSupport/WebGeolocationControllerClient.h: Added.
189         * WebGeolocationPosition.cpp: Added IWebGeolocationPosition implementation.
190         * WebGeolocationPosition.h: Added IWebGeolocationPosition implementation.
191         * WebKit.vcproj/Interfaces.vcproj: Added IWebGeolocationPosition.idl, IWebGeolocationProvider.idl,
192         relocated JavaScriptCoreAPITypes.idl, WebScrollbarTypes.idl
193         * WebKit.vcproj/WebKit.vcproj: Added WebGeolocationPosition.h/.cpp, WebGeolocationControllerClient.h/cpp,        
194         * WebKitClassFactory.cpp: Add WebGeolocationPosition include.
195         * WebView.cpp:
196         (WebView::initWithFrame): Create WebGeolocationControllerClient if Geolocation is enabled.
197         (WebView::setGeolocationProvider): Added Geolocation-specific method.
198         (WebView::geolocationProvider): Added Geolocation-specific method.
199         (WebView::geolocationDidChangePosition): Added Geolocation-specific method.
200         (WebView::geolocationDidFailWithError): Added Geolocation-specific method.
201         * WebView.h: Added setGeolocationProvider, geolocationProvider, geolocationDidChangePosition, geolocationDidFailWithError.
202
203 2010-01-11  Jon Honeycutt  <jhoneycutt@apple.com>
204
205         MSAA: Accessibility role of <select multiple> elements is wrong
206
207         https://bugs.webkit.org/show_bug.cgi?id=33522
208
209         Reviewed by Darin Adler.
210
211         * AccessibleBase.cpp:
212         (MSAARole):
213         Map the WebCore::ListBox and WebCore::ListBoxOption roles to the MSAA
214         "list" and "list item" roles.
215
216 2010-01-08  Brent Fulgham  <bfulgham@webkit.org>
217
218         Build fix, no review.
219
220         Protect video control logic inside ENABLE(VIDEO).
221
222         * WebView.cpp:
223         (WebView::enterFullscreenForNode):
224         (WebView::exitFullscreen):
225         * WebView.h:
226
227 2010-01-08  Chris Marrin  <cmarrin@apple.com>
228
229         Reviewed by Adam Roben.
230
231         Implement full-screen video for Windows
232         https://bugs.webkit.org/show_bug.cgi?id=31318
233         
234         This adds a full-screen controller, FullscreenVideoController, 
235         which manages going in and out of full-screen. The actual 
236         full-screen window is created and managed by logic added 
237         to QTMovieWin. FullscreenVideoController also creates and
238         manages a HUD. The HUD renders and manages events to
239         control the playing video. Movie controller events go to 
240         FullscreenVideoController which then sends them to HTMLMediaElement, 
241         which is passed to the controller by WebView, which gets the call 
242         to go into full-screen mode from HTMLMediaElement via 
243         ChromeClient.
244         
245         I've also updated the icons so the related sets (Play/Pause and
246         volume high/volume low/exit fullscreen) are the same size. This 
247         allows me to position them using common code.
248
249         * WebCoreSupport/WebChromeClient.cpp:
250         (WebChromeClient::supportsFullscreenForNode):
251         (WebChromeClient::enterFullscreenForNode):
252         (WebChromeClient::exitFullscreenForNode):
253         * WebCoreSupport/WebChromeClient.h:
254         * WebKit.vcproj/WebKit.vcproj:
255         * WebKit.vcproj/fsVideoAudioVolumeHigh.png:
256         * WebKit.vcproj/fsVideoAudioVolumeLow.png:
257         * WebKit.vcproj/fsVideoExitFullscreen.png:
258         * WebKit.vcproj/fsVideoPause.png:
259         * WebKit.vcproj/fsVideoPlay.png:
260         * WebKitDLL.cpp:
261         (loadResourceIntoBuffer):
262         * FullscreenVideoController.cpp: Added.
263         * FullscreenVideoController.h: Added.
264         * WebView.cpp:
265         (WebView::enterFullscreenForNode):
266         (WebView::exitFullscreen):
267         * WebView.h:
268
269 2010-01-08  Brent Fulgham  <bfulgham@webkit.org>
270
271         Unreviewed correction. 
272
273         Accidentally left unnecessary modification to hdcFromContext
274         in when landing r52995.
275
276         * WebFrame.cpp:
277         (hdcFromContext): Back out unneeded modification.
278
279 2010-01-08  Brent Fulgham  <bfulgham@webkit.org>
280
281         Reviewed by Adam Roben.
282
283         Use correct cairo surface data type for handling print operations.
284         https://bugs.webkit.org/show_bug.cgi?id=33022.
285
286         * WebFrame.cpp:
287         (scaleFactor): Handle 'scale = 0' case.
288         (WebFrame::spoolPage): Use scaleFactor helper function.  Account for
289          margin size in region passed to header/footer routines.
290         (WebFrame::spoolPages): Properly clean up Cairo surface.
291
292 2010-01-07  Kent Tamura  <tkent@chromium.org>
293
294         Reviewed by Maciej Stachowiak.
295
296         Remove COM code generation files.
297         https://bugs.webkit.org/show_bug.cgi?id=32854
298
299         * WebKit.vcproj/DerivedSources.make: Removed.
300         * WebKit.vcproj/build-generated-files.sh: Removed.
301
302 2010-01-05  Adam Roben  <aroben@apple.com>
303
304         Make IWebView::close and destroying a WebView's HWND optional for
305         WebKit clients
306
307         WebView will now take care of these operations itself when its last
308         reference is released, if they haven't already been done.
309
310         IWebView::close now also destroys the WebView's HWND. All WebKit
311         clients were already performing these operations in succession anyway,
312         or were attempting to by calling IWebView::close then destroying the
313         WebView's host window (which actually resulted in the WebView's HWND
314         leaking, and the crash in the below bug).
315
316         Fixes <rdar://problem/7374218> <http://webkit.org/b/32827> Crash when
317         calling IWebView::close, then releasing the WebView, without calling
318         DestroyWindow
319
320         Fixes a few WebViewDestruction tests, too.
321
322         Reviewed by Steve Falkenburg.
323
324         * WebView.cpp:
325         (WebView::~WebView): Don't try to destroy m_viewWindow here. That
326         should already have happened. Assert that this is the case.
327         (WebView::close): If m_viewWindow isn't already being destroyed,
328         destroy it now. Moved the call to revokeDragDrop() here from our
329         WM_DESTROY handler because it needs to be done before m_viewWindow is
330         nulled out.
331         (WebView::WebViewWndProc): Removed call to revokeDragDrop() that
332         close() now performs.
333         (WebView::Release): If our last reference is being released, call
334         close() so that clients don't have to. (It's harmless to call close()
335         multiple times.) We do this here instead of in the destructor because
336         close() can cause AddRef() and Release() to be called, and calling
337         those from within the destructor leads to double-destruction.
338         (WebView::setHostWindow): Removed an unnecessary (and now harmful)
339         null-check.
340         (WebView::revokeDragDrop): Changed an assertion into a run-time check,
341         since this will now sometimes be called when m_viewWindow hasn't been
342         created yet. Changed the IsWindow call to a null-check because we
343         never hold onto a destroyed m_viewWindow.
344         (WebView::windowAncestryDidChange): If we don't have a view window,
345         stop tracking changes to our parent's active state.
346
347 2010-01-05  Adam Roben  <aroben@apple.com>
348
349         Make it safe to call IWebView::close when IWebView::initWithFrame
350         hasn't been called
351
352         Part of <rdar://problem/7374218> <http://webkit.org/b/32827> Crash
353         when IWebView::close, then releasing the WebView, without calling
354         DestroyWindow
355
356         Reviewed by Steve Falkenburg.
357
358         * WebView.cpp:
359         (WebView::close): Null-check m_page and m_preferences before using
360         them. They will be null if initWithFrame was never called.
361
362 2010-01-05  Adam Roben  <aroben@apple.com>
363
364         Add assertions to catch double-destruction of WebViews earlier
365
366         I basically copied the m_deletionHasBegun logic from WTF::RefCounted.
367
368         Fixes <http://webkit.org/b/33219>.
369
370         Reviewed by Darin Adler.
371
372         * WebView.cpp:
373         (WebView::WebView): Initialize m_deletionHasBegun
374         (WebView::AddRef): Assert that deletion hasn't already begun.
375         (WebView::Release): Assert that deletion hasn't already begun, then
376         record when deletion *does* begin.
377
378         * WebView.h: Added m_deletionHasBegun.
379
380 2010-01-05  Adam Roben  <aroben@apple.com>
381
382         Remove dead code in WebViewWndProc
383
384         Fixes <http://webkit.org/b/33218>.
385
386         Reviewed by Darin Adler.
387
388         * WebView.cpp:
389         (WebView::WebViewWndProc): Removed a redundant isBeingDestroyed check.
390         We bail out much earlier in this function if isBeingDestroyed is true.
391
392 2010-01-04  Jon Honeycutt  <jhoneycutt@apple.com>
393
394         MSAA: Accessibility role of <select> elements is wrong
395
396         https://bugs.webkit.org/show_bug.cgi?id=33192
397
398         Reviewed by Sam Weinig.
399
400         * AccessibleBase.cpp:
401         (MSAARole):
402         Map WebCore::PopUpButtonRole to MSAA's ROLE_SYSTEM_COMBOBOX.
403
404 2010-01-04  Alexey Proskuryakov  <ap@apple.com>
405
406         Reviewed by Darin Adler.
407
408         https://bugs.webkit.org/show_bug.cgi?id=33181
409         The first letter is not removed properly from inline input hole
410
411         * WebView.cpp: (WebView::onIMEEndComposition): If composition is ended before it was
412         confirmed, cancel it.
413
414 2010-01-04  Alexey Proskuryakov  <ap@apple.com>
415
416         Reviewed by Darin Adler.
417
418         https://bugs.webkit.org/show_bug.cgi?id=33161
419         Assertion failure in WebView when using Chinese Simplified IME
420
421         * WebView.cpp: (WebView::onIMERequestCharPosition): Changed the assertion into release mode
422         check. We can't make assertions about arguments passed from outside WebKit.
423
424 2010-01-04  Alexey Proskuryakov  <ap@apple.com>
425
426         Reviewed by Darin Adler.
427
428         https://bugs.webkit.org/show_bug.cgi?id=33157
429         Implement TextInput logging channel on Windows
430
431         * WebKitLogging.cpp: (WebKitInitializeLoggingChannelsIfNecessary):
432         * WebKitLogging.h:
433         Added a TextInput channel in place of unused Network one.
434
435         * WebView.cpp:
436         (WebView::WebViewWndProc): Changed onIMERequest to return result directly. We never forward
437         it to DefWindowProc, so there is no need to return an unused boolean result for "handled".
438         (WebView::onIMEStartComposition): Added logging.
439         (imeCompositionArgumentNames): A helper function for detailed logging in onIMEComposition.
440         (imeNotificationName): A helper function for detailed logging in onIMENotify.
441         (imeRequestName): A helper function for detailed logging in onIMERequest.
442         (WebView::onIMEComposition): Added logging.
443         (WebView::onIMEEndComposition): Ditto.
444         (WebView::onIMEChar): Ditto.
445         (WebView::onIMENotify): Ditto.
446         (WebView::onIMERequestCharPosition): Changed to return result directly.
447         (WebView::onIMERequestReconvertString): Ditto.
448         (WebView::onIMERequest): Changed to return result directly. Added logging.
449         (WebView::onIMESelect): Added logging.
450         (WebView::onIMESetContext): Added logging.
451
452         * WebView.h: onIMERequest functions now return result directly.
453
454
455 2010-01-04  Adam Roben  <aroben@apple.com>
456
457         Add WebKitAPITest
458
459         Fixes <http://webkit.org/b/33167>.
460
461         Reviewed by Sam Weinig.
462
463         * WebKit.vcproj/WebKit.sln: Added WebKitAPITest.vcproj. It builds just
464         after DumpRenderTree.vcproj.
465
466 2010-01-04  Dan Bernstein  <mitz@apple.com>
467
468         Reviewed by Ada Chan and Mark Rowe.
469
470         Updated copyright string
471
472         * WebKit.vcproj/WebKit.rc:
473
474 2009-12-22  Darin Adler  <darin@apple.com>
475
476         Another try at fixing Windows build.
477
478         * WebKitPrefix.cpp: Touch it.
479
480 2009-12-22  Darin Adler  <darin@apple.com>
481
482         Reviewed by Mark Rowe.
483
484         Turn off datagrid by default, at least for all platforms Apple ships.
485         The datagrid implementation isn't ready for general web use yet.
486
487         * WebKit.vcproj/WebKit.vcproj: Turn off datagrid by default.
488
489 2009-12-21  Adam Roben  <aroben@apple.com>
490
491         Fix non-ACCELERATED_COMPOSITING builds
492
493         * WebPreferences.cpp:
494         (WebPreferences::acceleratedCompositingEnabled): Guard use of
495         WKCACFLayerRenderer with USE(ACCELERATED_COMPOSITING).
496
497 2009-12-18  Adam Roben  <aroben@apple.com>
498
499         Add IWebPreferencesPrivate::[set]AcceleratedCompositingEnabled
500
501         Fixes <http://webkit.org/b/32745>.
502
503         Reviewed by Ada Chan.
504
505         * Interfaces/IWebPreferencesPrivate.idl: Added
506         [set]AcceleratedCompositingEnabled.
507
508         * Interfaces/WebKit.idl: Touched to force a build.
509
510         * WebPreferenceKeysPrivate.h: Added
511         WebKitAcceleratedCompositingEnabledPreferenceKey.
512
513         * WebPreferences.cpp:
514         (WebPreferences::initializeDefaultSettings): Make accelerated
515         compositing be on by default.
516         (WebPreferences::setAcceleratedCompositingEnabled): Store the new
517         value.
518         (WebPreferences::acceleratedCompositingEnabled): If accelerated
519         compositing isn't available, return false. Otherwise, return the value
520         stored in preferences.
521
522         * WebPreferences.h: Added [set]AcceleratedCompositingAvailable.
523
524         * WebView.cpp:
525         (WebView::notifyPreferencesChanged): Just pass the value from
526         WebPreferences on down.
527
528 2009-12-17  Jon Honeycutt  <jhoneycutt@apple.com>
529
530         MSAA: Accessibility role of list items is wrong
531
532         https://bugs.webkit.org/show_bug.cgi?id=32688
533
534         Reviewed by Adam Roben.
535
536         * AccessibleBase.cpp:
537         (MSAARole):
538         Make the WebCore list item role map to the MSAA list item role.
539
540 2009-12-17  Jon Honeycutt  <jhoneycutt@apple.com>
541
542         MSAA: Accessibility role of list markers is wrong
543
544         https://bugs.webkit.org/show_bug.cgi?id=32687
545
546         Reviewed by Adam Roben.
547
548         * AccessibleBase.cpp:
549         (MSAARole):
550         Make the WebCore list marker role map to the MSAA static text role.
551
552 2009-12-18  Adam Roben  <aroben@apple.com>
553
554         Add #includes needed after WebCore clean-up
555
556         Rubber-stamped by Anders Carlsson.
557
558         Fixes <http://webkit.org/b/32718>.
559
560         * WebCoreSupport/WebContextMenuClient.cpp:
561         * WebDataSource.cpp:
562         * WebHTMLRepresentation.cpp:
563         * WebView.cpp:
564         * WebView.h:
565
566 2009-12-17  Benjamin Otte  <otte@gnome.org>
567
568         Reviewed by Adam Roben.
569
570         Don't include all JSC headers everywhere
571         https://bugs.webkit.org/show_bug.cgi?id=32663
572
573         * WebCoreLocalizedStrings.cpp: Added now-needed #include of
574         MathExtras.h.
575
576 2009-12-17  Adam Roben  <aroben@apple.com>
577
578         Remove WebKit.sln's Debug_All and Debug_Internal configurations
579
580         These configurations aren't buildable by people outside of Apple, and
581         Apple doesn't use this solution file.
582
583         Fixes <http://webkit.org/b/31000> Windows WebKit Build Configuration
584         should default to Debug instead of Debug_all.
585
586         Rubber-stamped by Dan Bernstein.
587
588         * WebKit.vcproj/WebKit.sln:
589
590 2009-12-16  Jon Honeycutt  <jhoneycutt@apple.com>
591
592         MSAA: Accessibility role of text nodes is wrong
593
594         https://bugs.webkit.org/show_bug.cgi?id=32631
595         <rdar://problem/7369084>
596
597         Reviewed by Alice Liu.
598
599         * AccessibleBase.cpp:
600         (MSAARole):
601         If the role is WebCore::EditableTextRole, return ROLE_SYSTEM_TEXT.
602         (AccessibleBase::role):
603         Call roleValueForMSAA().
604
605 2009-12-14  Brent Fulgham  <bfulgham@webkit.org>
606
607         Reviewed by Adam Roben.
608
609         Provide working printing support for WinCairo port.
610
611         * WebFrame.cpp:
612         (WebFrame::spoolPage): Conditionalize initialization of
613           PlatformGraphicsContext handling for CG vs. Cairo.
614         (scaleFactor): Add helper function.
615         (hdcFromContext): Add helper function.
616         (WebFrame::drawHeader): Correct Cairo variation.
617         (WebFrame::drawFooter): Correct Cairo variation.
618         (WebFrame::spoolPages): Correct Cairo variation.
619
620 2009-12-13  Sam Weinig  <sam@webkit.org>
621
622         Reviewed by Dan Bernstein.
623
624         Fix for https://bugs.webkit.org/show_bug.cgi?id=32499
625         Add client based Geolocation provider
626
627         Add first cut of a client based Geolocation provider. This is guarded by
628         ENABLE(CLIENT_BASED_GEOLOCATION) and is off by default for now. This adds a
629         GeolocationControllerClient interface that no-one currently implements,
630         but will in a subsequent patch.
631
632         * WebView.cpp:
633         (WebView::initWithFrame):
634
635 2009-12-14  Adam Roben  <aroben@apple.com>
636
637         Change IWebFramePrivate's vtable to be compatible with Safari 4.0.4
638
639         Reviewed by Steve Falkenburg.
640
641         Fixes <http://webkit.org/b/32433> REGRESSION (r51567): Right click on
642         a link element crashes WebKit nightly
643
644         * Interfaces/IWebFramePrivate.idl: Moved pauseSVGAnimation to the end
645         of the interface so the vtable that Safari 4.0.4 sees is unchanged.
646
647 2009-12-14  Adam Roben  <aroben@apple.com>
648
649         Build fix
650
651         * WebKit.vcproj/WebKit.vcproj: Added $(DXSDK_DIR)\Lib\x86 to the
652         libpath for all non-Cairo configurations (it was missing from most of
653         them).
654
655 2009-12-11  Chris Marrin  <cmarrin@apple.com>
656
657         Reviewed by Jon Honeycutt.
658
659         Added icons for full-screen video on Windows
660         https://bugs.webkit.org/show_bug.cgi?id=31318
661
662         * WebKit.vcproj/WebKit.rc:
663         * WebKit.vcproj/WebKit.vcproj:
664         * WebKit.vcproj/fsVideoAudioVolumeHigh.png: Added.
665         * WebKit.vcproj/fsVideoAudioVolumeLow.png: Added.
666         * WebKit.vcproj/fsVideoExitFullscreen.png: Added.
667         * WebKit.vcproj/fsVideoPause.png: Added.
668         * WebKit.vcproj/fsVideoPlay.png: Added.
669         * WebKit.vcproj/resource.h:
670
671 2009-12-11  Chris Marrin  <cmarrin@apple.com>
672
673         Reviewed by Adam Roben.
674
675         Delay load DLLs for accelerated compositing
676         https://bugs.webkit.org/show_bug.cgi?id=31856
677         
678         If the DLLs (d3d9 and QuartzCore). are not present it
679         turns off accelerated compositing and avoids calling 
680         any of the functions in the DLLs.
681
682         * WebView.cpp:
683         (WebView::notifyPreferencesChanged):
684
685 2009-12-10  Jon Honeycutt  <jhoneycutt@apple.com>
686
687         Pass more information about a plug-in to the PluginHalterDelegate
688
689         Reviewed by Adam Roben.
690
691         * Interfaces/IWebPluginHalterDelegate.idl:
692         Add new parameters.
693
694         * WebCoreSupport/WebPluginHalterClient.cpp:
695         (WebPluginHalterClient::shouldHaltPlugin):
696         Update for new parameters. Pass them when making the delegate call.
697
698         * WebCoreSupport/WebPluginHalterClient.h:
699         Update for new parameters.
700
701 2009-12-09  Brent Fulgham  <bfulgham@webkit.org>
702
703         Revert incorrect commit-box update r51911.
704         It mistakenly set the selectAll implementation in the
705         deslectAll method. 
706
707         * WebFrame.cpp:
708         (WebFrame::deselectAll):
709
710 2009-12-09  Brent Fulgham  <bfulgham@webkit.org>
711
712         Reviewed by Darin Adler.
713
714         Provide an implementation for 'selectAll'
715         https://bugs.webkit.org/show_bug.cgi?id=32296
716
717         * WebFrame.cpp:
718         (WebFrame::selectAll): Implement "SelectAll" command.
719
720 2009-12-09  Brent Fulgham  <bfulgham@webkit.org>
721
722         Reviewed by Darin Adler.
723
724         Provide an implementation for 'selectAll'
725         https://bugs.webkit.org/show_bug.cgi?id=32296
726
727         * WebFrame.cpp:
728         (WebFrame::selectAll): Implement "SelectAll" command.
729
730 2009-12-08  Chris Marrin  <cmarrin@apple.com>
731
732         Reviewed by Adam Roben.
733
734         Delay load DLLs for accelerated compositing
735         https://bugs.webkit.org/show_bug.cgi?id=31856
736         
737         If the DLLs (d3d9 and QuartzCore). are not present it
738         turns off accelerated compositing and avoids calling 
739         any of the functions in the DLLs.
740
741         * WebView.cpp:
742         * WebView.h:
743
744 2009-12-08  Adam Roben  <aroben@apple.com>
745
746         Windows build fix
747
748         * Interfaces/WebKit.idl: Touched this to force Interfaces.vcproj to rebuild.
749
750 2009-12-08  John Sullivan  <sullivan@apple.com>
751
752         Reviewed by Dan Bernstein
753
754         Split two-clause assertions into two separate assertions.
755
756         * DOMHTMLClasses.cpp:
757         (DOMHTMLInputElement::isTextField):
758         Split a two-clause assertion into two separate assertions.
759         (DOMHTMLInputElement::rectOnScreen):
760         Added the two assertions here that all other functions in this group shared.
761         (DOMHTMLInputElement::selectedRange):
762         Split a two-clause assertion into two separate assertions.
763         (DOMHTMLInputElement::setAutofilled):
764         Split a two-clause assertion into two separate assertions.
765         (DOMHTMLInputElement::isAutofilled):
766         Split a two-clause assertion into two separate assertions.
767
768 2009-12-08  Nikolas Zimmermann  <nzimmermann@rim.com>
769
770         Rubber-stamped by Maciej Stachowiak.
771
772         Turn on (SVG) Filters for Win.
773         https://bugs.webkit.org/show_bug.cgi?id=32224
774
775         * WebKit.vcproj/WebKit.vcproj:
776
777 2009-12-08  John Sullivan  <sullivan@apple.com>
778
779         Add isAutofilled getter to match existing setter.
780
781         Reviewed by Ada Chan.
782
783         * DOMHTMLClasses.cpp:
784         (DOMHTMLInputElement::isAutofilled):
785         Implemented new cover function.
786         
787         * DOMHTMLClasses.h:
788         Declared new cover function.
789         
790         * Interfaces/DOMPrivate.idl:
791         Declared new interface.
792
793 2009-12-07  Gavin Barraclough  <barraclough@apple.com>
794
795         Reviewed by NOBODY (Windows build fix part III).
796
797         * WebView.cpp:
798         (WebView::stringByEvaluatingJavaScriptFromString):
799
800 2009-12-07  Gavin Barraclough  <barraclough@apple.com>
801
802         Reviewed by NOBODY (Windows build fix part II).
803
804         * WebView.cpp:
805         (WebView::stringByEvaluatingJavaScriptFromString):
806
807 2009-12-03  Brady Eidson  <beidson@apple.com>
808
809         Reviewed by Sam Weinig.
810
811         <rdar://problem/7214236> and http://webkit.org/b/32052 - Implement HTML5 state object history API
812
813         * Interfaces/IWebFrameLoadDelegatePrivate2.idl:
814         * WebCoreSupport/WebFrameLoaderClient.cpp:
815         (WebFrameLoaderClient::dispatchDidPushStateWithinPage):
816         (WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
817         (WebFrameLoaderClient::dispatchDidPopStateWithinPage):
818         * WebCoreSupport/WebFrameLoaderClient.h:
819
820 2009-12-03  Pavel Feldman  <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
821
822         Reviewed by Timothy Hatcher.
823
824         Web Inspector: Simplify the settings support in inspector controller.
825
826         https://bugs.webkit.org/show_bug.cgi?id=32076
827
828         * WebCoreSupport/WebInspectorClient.cpp:
829         (WebInspectorClient::attachWindow):
830         (WebInspectorClient::detachWindow):
831         (WebInspectorClient::showWindowWithoutNotifications):
832         * WebCoreSupport/WebInspectorClient.h:
833
834 2009-12-03  Ben Murdoch  <benm@google.com>
835
836         Reviewed by Brady Eidson.
837
838         [Android] The FrameLoaderClient is unaware of BackForwardList changes.
839         https://bugs.webkit.org/show_bug.cgi?id=31914
840
841         * WebCoreSupport/WebFrameLoaderClient.cpp:
842         (WebFrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug).
843         (WebFrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto.
844         (WebFrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto.
845         * WebCoreSupport/WebFrameLoaderClient.h:
846
847 2009-12-02  Timothy Hatcher  <timothy@apple.com>
848
849         Move setValueForUser to the end of the DOMHTMLInputElement interface
850         so it is fine for binary compatibility.
851
852         Directed by Steve Falkenburg.
853
854         * Interfaces/DOMHTML.idl:
855
856 2009-12-02  Timothy Hatcher  <timothy@apple.com>
857
858         Expose setValueForUser for the COM DOMHTMLInputElement.
859
860         <rdar://problem/6760590> Would like a way to detect a login form AutoFill from JavaScript
861
862         Reviewed by Dan Bernstein.
863
864         * DOMHTMLClasses.cpp:
865         (DOMHTMLInputElement::setValueForUser):
866         * Interfaces/DOMHTML.idl:
867
868 2009-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
869
870         Not reviewed. Try to fix windows build.
871
872         * WebFrame.cpp:
873
874 2009-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
875
876         Reviewed by Simon Fraser.
877
878         Add SVG animation test framework with 'snapshot' functionality
879         https://bugs.webkit.org/show_bug.cgi?id=31897
880
881         Add API used by the new 'sampleSVGAnimationForElementAtTime' DRT method,
882         forwarding the call to SVGDocumentExtensions, if SVG is enabled.
883
884         Implemented just like the existing pauseAnimation* methods for CSS animations.
885
886         * Interfaces/IWebFramePrivate.idl:
887         * WebFrame.cpp:
888         (WebFrame::pauseSVGAnimation):
889         * WebFrame.h:
890
891 2009-11-30  Adam Roben  <aroben@apple.com>
892
893         Fix double-free of BSTRs passed to WebNavigationData::createInstance
894
895         WebFrameLoaderClient::updateGlobalHistory was converting
896         WebCore::Strings to WebCore::BStrings, then passing them to
897         WebNavigationData::createInstance. But the latter function takes BSTR
898         parameters and adopts them into WebCore::BStrings. So the end result
899         was that two WebCore::BStrings would end up freeing each underlying
900         BSTR.
901
902         The fix is to only convert to WebCore::BString inside
903         WebNavigationData.
904
905         Fixes <http://webkit.org/b/31998> <rdar://problem/7383452> REGRESSION
906         (r49564): Crash in updateGlobalHistory when running Javascript iBench
907         test
908
909         I couldn't find a way to reproduce this in DumpRenderTree.
910
911         Reviewed by Steve Falkenburg.
912
913         * WebCoreSupport/WebFrameLoaderClient.cpp:
914         (WebFrameLoaderClient::updateGlobalHistory): Pass WebCore::Strings to
915         WebNavigationData::createInstance.
916
917         * WebNavigationData.cpp:
918         (WebNavigationData::WebNavigationData):
919         (WebNavigationData::createInstance):
920         * WebNavigationData.h:
921         Changed to take const WebCore::String&s instead of BSTRs and to
922         convert the Strings to BStrings at this level.
923
924 2009-11-30  Steve Falkenburg  <sfalken@apple.com>
925
926         Reviewed by Adam Roben.
927
928         WebKit clients that don't implement didClearWindowObjectForFrameInScriptWorld should fall back to didClearWindowObject
929         https://bugs.webkit.org/show_bug.cgi?id=31986
930
931         * WebFrame.cpp:
932         (WebFrame::dispatchDidClearWindowObjectInWorld): Fall back if E_NOTIMPL returned.
933
934 2009-11-24  Chris Marrin  <cmarrin@apple.com>
935
936         Another Windows build fix
937         
938         Got rid of d3d.lib and d3dx9.lib dependency. Not needed until
939         we turn on ACCELERATED_COMPOSITING
940
941         * WebKit.vcproj/WebKit.vcproj:
942
943 2009-11-24  Chris Marrin  <cmarrin@apple.com>
944
945         Fixed Windows build
946         
947         Got rid of QuartzCore.lib dependency. Not needed until
948         we turn on ACCELERATED_COMPOSITING
949
950         * WebKit.vcproj/WebKit.vcproj:
951
952 2009-11-24  Chris Marrin  <cmarrin@apple.com>
953
954         Reviewed by Simon Fraser.
955
956         Implement accelerated compositing
957         https://bugs.webkit.org/show_bug.cgi?id=27314
958         
959         This is the WebKit side of the implementation. It plumbs the root layer
960         from WebCore. It also makes changes to WebView which places the 
961         backing store of the page into the root compositing layer so it is 
962         properly composited with all the other layers. This deals with resizing, 
963         scrolling, and incremental repaint of the page.
964
965         * WebCoreSupport/WebChromeClient.cpp:
966         (WebChromeClient::attachRootGraphicsLayer):
967         (WebChromeClient::scheduleCompositingLayerSync):
968         * WebCoreSupport/WebChromeClient.h:
969         (WebChromeClient::setNeedsOneShotDrawingSynchronization):
970         * WebKit.vcproj/WebKit.vcproj:
971         * WebView.cpp:
972         (WebView::WebView):
973         (WebView::close):
974         (WebView::repaint):
975         (WebView::scrollBackingStore):
976         (WebView::paint):
977         (WebViewWndProc):
978         (WebView::setRootChildLayer):
979         (WebView::setAcceleratedCompositing):
980         (WebView::setRootLayerContents):
981         * WebView.h:
982         (WebView::isAcceleratedCompositing):
983         (WebView::resizeLayerWindow):
984         (WebView::layerWindowBecameVisible):
985         (WebView::setRootLayerNeedsDisplay):
986
987 2009-11-23  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
988
989         Reviewed by Kenneth Rohde Christiansen.
990
991         Include "config.h" to meet Coding Style Guidelines
992         https://bugs.webkit.org/show_bug.cgi?id=31792
993
994         * GEN_DOMObject.cpp:
995         * WebScriptObject.cpp:
996
997 2009-11-21  Jon Honeycutt  <jhoneycutt@apple.com>
998
999         Windows build fix. Unreviewed.
1000
1001         * Interfaces/IWebSerializedJSValue.idl:
1002
1003 2009-11-20  Jon Honeycutt  <jhoneycutt@apple.com>
1004
1005         DOMElement::tagName() is unimplemented
1006
1007         https://bugs.webkit.org/show_bug.cgi?id=31746
1008
1009         Reviewed by Darin Adler.
1010
1011         * DOMCoreClasses.cpp:
1012         (DOMElement::tagName):
1013         Create a BString from the element's tag name, and release its BSTR
1014         into result.
1015
1016 2009-11-20  Jon Honeycutt  <jhoneycutt@apple.com>
1017
1018         DOMNode::childNodes() is unimplemented
1019
1020         https://bugs.webkit.org/show_bug.cgi?id=31745
1021
1022         Reviewed by Darin Adler.
1023
1024         * DOMCoreClasses.cpp:
1025         (DOMNode::childNodes):
1026         Create a DOMNodeList from the node's child nodes.
1027
1028 2009-11-20  Dave Hyatt  <hyatt@apple.com>
1029
1030         Reviewed by Jon Honeycutt.
1031
1032         Change WebSerializedJSValue on Windows to have a zero-argument createInstance call.  Move the
1033         serialization into a separate serialize() function that can be called after the object has been
1034         created.
1035
1036         Fix a typo in serialize() caused when fixing build bustage (put a ! back in).
1037
1038         * Interfaces/IWebSerializedJSValue.idl:
1039         * WebSerializedJSValue.cpp:
1040         (WebSerializedJSValue::WebSerializedJSValue):
1041         (WebSerializedJSValue::createInstance):
1042         (WebSerializedJSValue::serialize):
1043         (WebSerializedJSValue::deserialize):
1044         * WebSerializedJSValue.h:
1045
1046 2009-11-20  Brian Weinstein  <bweinstein@apple.com>
1047
1048         Reviewed by Dave Hyatt.
1049
1050         Another go at the Windows Build Fix - this is a couple steps of it,
1051         so a little more involved than most build fixes.
1052
1053         * Interfaces/IWebSerializedJSValue.idl:
1054         * Interfaces/JavaScriptCoreAPITypes.idl:
1055         * WebKit.vcproj/Interfaces.vcproj:
1056         * WebSerializedJSValue.cpp:
1057         (WebSerializedJSValue::deserialize):
1058         * WebSerializedJSValue.h:
1059
1060 2009-11-20  Brian Weinstein  <bweinstein@apple.com>
1061
1062         Reviewed by Dave Hyatt.
1063
1064         Build fix for Windows - only declare JSContextRef once, instead
1065         of in two different idl files. Create a new file to hold the
1066         definition of JSContextRef.
1067
1068         * Interfaces/IWebFrameLoadDelegate.idl:
1069         * Interfaces/IWebSerializedJSValue.idl:
1070         * Interfaces/JavaScriptCoreAPITypes.idl: Added.
1071         * Interfaces/WebKit.idl:
1072         * WebKit.vcproj/Interfaces.vcproj:
1073
1074 2009-11-20  Dave Hyatt  <hyatt@apple.com>
1075
1076         Reviewed by Oliver Hunt and Jon Honeycutt.
1077
1078         Add support for WebSerializedJSValue to WebKit.  This object wraps the SerializedScriptValue functionality in WebCore
1079         and exposes the ability to do JS value serialization/deserialization to WebKit clients.
1080
1081         * Interfaces/IWebSerializedJSValue.idl: Added.
1082         * Interfaces/WebKit.idl:
1083         * WebKit.vcproj/WebKit.vcproj:
1084         * WebSerializedJSValue.cpp: Added.
1085         (WebSerializedJSValue::WebSerializedJSValue):
1086         (WebSerializedJSValue::~WebSerializedJSValue):
1087         (WebSerializedJSValue::createInstance):
1088         (WebSerializedJSValue::AddRef):
1089         (WebSerializedJSValue::Release):
1090         (WebSerializedJSValue::QueryInterface):
1091         (WebSerializedJSValue::deserialize):
1092         * WebSerializedJSValue.h: Added.
1093
1094 2009-11-19  Alexey Proskuryakov  <ap@apple.com>
1095
1096         Reviewed by Darin Adler.
1097
1098         https://bugs.webkit.org/show_bug.cgi?id=31690
1099         Make SocketStreamHandleCFNet work on Windows
1100
1101         * WebDownloadCFNet.cpp:
1102         (WebDownload::init):
1103         (WebDownload::initWithRequest):
1104         (WebDownload::initToResumeWithBundle):
1105         Update for loaderRunLoop() now being in its own header.
1106
1107 2009-11-19  Eric Carlson  <eric.carlson@apple.com>
1108
1109         Reviewed by Dan Bernstein.
1110
1111         <rdar://problem/7035231>
1112         Support closed caption in <video> element
1113
1114         * WebCoreLocalizedStrings.cpp:
1115         (WebCore::localizedMediaControlElementString):
1116         (WebCore::localizedMediaControlElementHelpText):
1117             Add accessibility help strings for media controller closed caption button.
1118
1119 2009-11-18  Michelangelo De Simone  <micdesim@gmail.com>
1120
1121         Reviewed by Darin Adler.
1122
1123         Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>.
1124         Support for validationMessage attribute, as per HTML5 specs.
1125
1126         * WebCoreLocalizedStrings.cpp:
1127         (WebCore::validationMessageValueMissingText):
1128         (WebCore::validationMessageTypeMismatchText):
1129         (WebCore::validationMessagePatternMismatchText):
1130         (WebCore::validationMessageTooLongText):
1131         (WebCore::validationMessageRangeUnderflowText):
1132         (WebCore::validationMessageRangeOverflowText):
1133         (WebCore::validationMessageStepMismatchText):
1134
1135 2009-11-18  Daniel Bates  <dbates@webkit.org>
1136
1137         Reviewed by Darin Adler.
1138
1139         https://bugs.webkit.org/show_bug.cgi?id=31186
1140
1141         Changes associated with renaming RenderTextControl::isUserEdited.
1142
1143         * DOMHTMLClasses.cpp:
1144         (DOMHTMLInputElement::isUserEdited): Formerly named isUserEdited.
1145         (DOMHTMLTextAreaElement::isUserEdited): Ditto.
1146
1147 2009-11-12  Jon Honeycutt  <jhoneycutt@apple.com>
1148
1149         Implement DOMHTMLInputElement::replaceCharactersInRange().
1150
1151         https://bugs.webkit.org/show_bug.cgi?id=31492
1152
1153         Reviewed by Dan Bernstein.
1154
1155         * DOMHTMLClasses.cpp:
1156         (DOMHTMLInputElement::replaceCharactersInRange):
1157         Get the text of the input field. Replace the given range with the
1158         replacement text, and set this new string as the input element's value.
1159         Select from index to the end of the field. This matches the
1160         implementation in the Obj-C bindings.
1161
1162 2009-11-12  Jon Honeycutt  <jhoneycutt@apple.com>
1163
1164         DOMHTMLOptionElement is missing some functionality.
1165
1166         https://bugs.webkit.org/show_bug.cgi?id=31491
1167
1168         Reviewed by Dan Bernstein.
1169
1170         * DOMHTMLClasses.cpp:
1171         (DOMHTMLOptionElement::text):
1172         Cast m_element to an HTMLOptionElement, and call its text() function.
1173         (DOMHTMLOptionElement::label):
1174         Ditto, for label().
1175
1176 2009-11-12  Jon Honeycutt  <jhoneycutt@apple.com>
1177
1178         DOMHTMLSelectElement is missing some implementation.
1179
1180         https://bugs.webkit.org/show_bug.cgi?id=31489
1181
1182         Reviewed by Dan Bernstein.
1183
1184         * DOMHTMLClasses.cpp:
1185         (DOMHTMLSelectElement::options):
1186         Cast m_element to an HTMLSelectElement. If it has no options, return
1187         E_FAIL. Otherwise, create a DOMHTMLOptionsCollection to wrap the
1188         options, and return it.
1189         (DOMHTMLSelectElement::activateItemAtIndex):
1190         If the index is out of bounds, return E_FAIL. Otherwise, select the
1191         item.
1192
1193 2009-11-12  Jon Honeycutt  <jhoneycutt@apple.com>
1194
1195         DOMHTMLOptionsCollection is missing some implementation.
1196
1197         https://bugs.webkit.org/show_bug.cgi?id=31488
1198
1199         Reviewed by Dan Bernstein.
1200
1201         * DOMHTMLClasses.cpp:
1202         (DOMHTMLOptionsCollection::DOMHTMLOptionsCollection):
1203         Initialize m_collection.
1204         (DOMHTMLOptionsCollection::createInstance):
1205         Create a DOMHTMLOptionsCollection. If we fail to query for
1206         IDOMHTMLOptionsCollection, delete it, and return 0. Otherwise, return
1207         the result.
1208         (DOMHTMLOptionsCollection::length):
1209         (DOMHTMLOptionsCollection::item):
1210         Create a DOMNode for the WebCore Node. If this is 0, return E_FAIL.
1211         (DOMHTMLOptionsCollection::namedItem):
1212         Correct the signature of this function.
1213
1214         * DOMHTMLClasses.h:
1215         Declare DOMHTMLOptionsCollection::createInstance(). Correct the
1216         signature of namedItem() to match IDOMHTMLOptionsCollection. Add a
1217         member to DOMHTMLOptionsCollection to hold the WebCore object.
1218
1219 2009-11-12  Jon Honeycutt  <jhoneycutt@apple.com>
1220
1221         DOMHTMLInputElement::rectOnScreen() returns the wrong rect
1222
1223         https://bugs.webkit.org/show_bug.cgi?id=31487
1224
1225         Reviewed by Darin Adler.
1226
1227         * DOMHTMLClasses.cpp:
1228         (DOMHTMLInputElement::rectOnScreen):
1229         Return the rect on screen, not the rect in the window.
1230
1231 2009-11-17  Brent Fulgham  <bfulgham@webkit.org>
1232
1233         Reviewed by NOBODY - Build Fix.
1234
1235         Correct build error in Debug_Cairo target after @49705.
1236
1237         * WebKit.vcproj/WebKit.vcproj: Revise JavaScriptCore.lib
1238           dependency to have proper "_debug" suffix needed by
1239           the Debug_Cairo target.
1240
1241 2009-11-17  Brian Weinstein  <bweinstein@apple.com>
1242
1243         Reviewed by NOBODY - Build Fix.
1244
1245         Touch files to try to fix the build.
1246
1247         * Interfaces/IWebInspector.idl:
1248         * Interfaces/WebKit.idl:
1249         * WebKit.vcproj/Interfaces.vcproj:
1250
1251 2009-11-17  Pavel Feldman  <pfeldman@chromium.org>
1252
1253         Reviewed by Timothy Hatcher.
1254
1255         Web Inspector: Make DRT show web inspector for tests in inspector/ folder.
1256         - Updated DRT to show/close inspector for all tests under /inspector
1257         - Introduced LayoutTestController::setTimelineProfilingEnabled and
1258           WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled
1259         - Removed reload on each inspector test
1260         - Renamed fast/inspector to fast/inspector-support in order not to trigger
1261         inspector for those.
1262         - Reimplemented timeline tests in order to get rid of reload there.
1263         - Moved tests that don't require harness into the fast group.
1264
1265         https://bugs.webkit.org/show_bug.cgi?id=31472
1266
1267         * Interfaces/IWebInspector.idl:
1268         * WebInspector.cpp:
1269         (WebInspector::isTimelineProfilingEnabled):
1270         (WebInspector::setTimelineProfilingEnabled):
1271         * WebInspector.h:
1272
1273 2009-11-13  Adam Roben  <aroben@apple.com>
1274
1275         Build fix
1276
1277         * Interfaces/WebKit.idl: Touch this to force interfaces to rebuild.
1278
1279 2009-11-13  Adam Roben  <aroben@apple.com>
1280
1281         Tell the WebFrameLoadDelegate when window objects in isolated worlds
1282         are cleared
1283
1284         Fixes <http://webkit.org/b/31124>.
1285
1286         Reviewed by Dave Hyatt.
1287
1288         * Interfaces/IWebFrameLoadDelegatePrivate2.idl: Added
1289         didClearWindowObjectForFrameInScriptWorld.
1290
1291         * WebFrame.cpp:
1292         (WebFrame::dispatchDidClearWindowObjectInWorld):
1293         * WebFrame.h:
1294         Replaced windowObjectCleared with this function. If the delegate
1295         implements IWebFrameLoadDelegatePrivate2, call
1296         didClearWindowObjectForFrameInScriptWorld. Otherwise, if the passed-in
1297         world is the mainThreadNormalWorld(), call
1298         didClearWindowObjectForFrame.
1299
1300         * WebScriptWorld.cpp:
1301         (allWorlds): Added. Returns a HashMap of all the WebScriptWorlds in
1302         existence.
1303         (WebScriptWorld::WebScriptWorld): Add ourselves to allWorlds().
1304         (WebScriptWorld::~WebScriptWorld): Remove ourselves from allWorlds().
1305         (WebScriptWorld::standardWorld): Added this non-COM getter for the
1306         standard world, which the COM getter now calls through to.
1307         (WebScriptWorld::findOrCreateWorld): Added. Returns the existing
1308         WebScriptWorld for this DOMWrapperWorld, or a new one if one doesn't
1309         already exist.
1310
1311         * WebScriptWorld.h: Added new standardWorld overload, made one
1312         overload of createInstance private, and added findOrCreateWorld.
1313
1314 2009-11-13  Adam Roben  <aroben@apple.com>
1315
1316         Build fix
1317
1318         * Interfaces/WebKit.idl: Un-sort the #includes again. Apparently they
1319         are order-dependent!
1320
1321 2009-11-13  Adam Roben  <aroben@apple.com>
1322
1323         Touch WebKit.idl to fix the Windows build
1324
1325         * Interfaces/WebKit.idl: Sorted #includes.
1326
1327 2009-11-13  Adam Roben  <aroben@apple.com>
1328
1329         Finish replacing worldIDs with world objects
1330
1331         The only remaining use of worldIDs was in a method only used by DRT
1332         for the isolated worlds tests.
1333
1334         Fixes <http://webkit.org/b/31414> Replace worldIDs with world objects
1335
1336         Reviewed by Mark Rowe.
1337
1338         * Interfaces/IWebFramePrivate.idl:
1339         * WebFrame.cpp:
1340         (WebFrame::stringByEvaluatingJavaScriptInScriptWorld):
1341         * WebFrame.h:
1342         Renamed from stringByEvaluatingJavaScriptInIsolatedWorld. Now takes an
1343         IWebScriptWorld instead of a worldID, so we don't need to maintain a
1344         map of worldID -> world anymore.
1345
1346 2009-11-12  Shinichiro Hamaji  <hamaji@chromium.org>
1347
1348         Reviewed by Darin Adler.
1349
1350         externalRepresentation should take Frame as the argument
1351         https://bugs.webkit.org/show_bug.cgi?id=31393
1352
1353         No new tests as this is just a refactoring.
1354
1355         * WebFrame.cpp:
1356         (WebFrame::renderTreeAsExternalRepresentation):
1357
1358 2009-11-12  Adam Roben  <aroben@apple.com>
1359
1360         Replace worldIDs with world objects
1361
1362         WebScriptWorld is the new object that represents a world.  The only
1363         place worldID is still used is in
1364         IWebFramePrivate::stringByEvaluatingJavaScriptInIsolatedWorld, but
1365         that will change soon.
1366
1367         Part of <http://webkit.org/b/31414> Implement new SPI for dealing with
1368         user scripts/stylesheets and isolated worlds
1369
1370         Reviewed by Sam Weinig.
1371
1372         * ForEachCoClass.h: Added WebScriptWorld.
1373
1374         * Interfaces/IWebFramePrivate.idl: Replaced contextForWorldID with
1375         contextForWorld.
1376
1377         * Interfaces/IWebScriptWorld.idl: Added.
1378
1379         * Interfaces/IWebViewPrivate.idl: Changed the user script/stylesheet
1380         functions to take an IWebScriptWorld instead of a worldID.
1381
1382         * Interfaces/WebKit.idl: Added WebScriptWorld.
1383
1384         * WebFrame.cpp:
1385         (WebFrame::contextForWorld): Renamed from contextForWorldID. Now takes
1386         an IWebScriptWorld.
1387         (WebFrame::stringByEvaluatingJavaScriptInIsolatedWorld): Moved the
1388         bizarre world caching/creation logic that DRT depends on here from the
1389         findWorld function in ScriptController.cpp. Updated to use
1390         ScriptController::executeScriptInWorld instead of
1391         ScriptController::executeScriptInIsolatedWorld.
1392
1393         * WebFrame.h: Replaced contextForWorldID with contextForWorld.
1394
1395         * WebScriptWorld.cpp: Added.
1396         (WebScriptWorld::WebScriptWorld):
1397         (WebScriptWorld::~WebScriptWorld):
1398         (WebScriptWorld::createInstance):
1399         (WebScriptWorld::AddRef):
1400         (WebScriptWorld::Release):
1401         (WebScriptWorld::QueryInterface):
1402         Standard COM class implementations.
1403
1404         (WebScriptWorld::standardWorld): Returns a shared instance that represents
1405         WebCore's mainThreadNormalWorld().
1406
1407         * WebScriptWorld.h: Added.
1408         (WebScriptWorld::world): Simple getter.
1409
1410         * WebKit.vcproj/Interfaces.vcproj: Added IWebScriptWorld.idl.
1411
1412         * WebKit.vcproj/WebKit.vcproj: Added WebScriptWorld.
1413
1414         * WebKitClassFactory.cpp: Added WebScriptWorld.
1415
1416         * WebView.cpp:
1417         (WebView::addUserScriptToGroup):
1418         (WebView::addUserStyleSheetToGroup):
1419         (WebView::removeUserScriptFromGroup):
1420         (WebView::removeUserStyleSheetFromGroup):
1421         (WebView::removeUserScriptsFromGroup):
1422         (WebView::removeUserStyleSheetsFromGroup):
1423         * WebView.h:
1424         Changed these functions to take an IWebScriptWorld instead of a worldID.
1425
1426 2009-11-12  Adam Roben  <aroben@apple.com>
1427
1428         Small clean-up in WebView's user content functions
1429
1430         Preparation for <http://webkit.org/b/31414> Implement new SPI for
1431         dealing with user scripts/stylesheets and isolated worlds
1432
1433         Reviewed by Dave Hyatt.
1434
1435         * WebView.cpp:
1436         (toString):
1437         (toKURL):
1438         Added these helper functions to convert BSTRs to WebCore types.
1439
1440         (toStringVector):
1441         (WebView::addUserScriptToGroup):
1442         (WebView::addUserStyleSheetToGroup):
1443         (WebView::removeUserScriptFromGroup):
1444         (WebView::removeUserStyleSheetFromGroup):
1445         (WebView::removeUserScriptsFromGroup):
1446         (WebView::removeUserStyleSheetsFromGroup):
1447         (WebView::removeAllUserContentFromGroup):
1448         Use the new helper functions.
1449
1450 2009-11-11  Beth Dakin  <bdakin@apple.com>
1451
1452         Build fix. No review needed.
1453
1454         * WebKitGraphics.cpp:
1455         (WebDrawText):
1456
1457 2009-11-10  Daniel Bates  <dbates@webkit.org>
1458
1459         Reviewed by Oliver Hunt.
1460
1461         https://bugs.webkit.org/show_bug.cgi?id=30754
1462
1463         Modified WebDropSource::QueryContinueDrag so as to not call EventHandler::dragSourceMovedTo.
1464
1465         * WebDropSource.cpp:
1466         (WebDropSource::QueryContinueDrag): Removed call to EventHandler::dragSourceMovedTo.
1467
1468 2009-11-10  Alexey Proskuryakov  <ap@apple.com>
1469
1470         Reviewed by Dan Bernstein.
1471
1472         https://bugs.webkit.org/show_bug.cgi?id=31312
1473         Decouple authentication panel callbacks from ResourceHandle
1474
1475         * WebCoreSupport/WebFrameLoaderClient.cpp:
1476         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
1477         * WebURLAuthenticationChallenge.cpp:
1478         (WebURLAuthenticationChallenge::initWithAuthenticationChallenge):
1479         (WebURLAuthenticationChallenge::sender):
1480         * WebURLAuthenticationChallengeSender.cpp:
1481         (WebURLAuthenticationChallengeSender::WebURLAuthenticationChallengeSender):
1482         (WebURLAuthenticationChallengeSender::createInstance):
1483         (WebURLAuthenticationChallengeSender::authenticationClient):
1484         * WebURLAuthenticationChallengeSender.h:
1485         * WebURLAuthenticationChallengeSenderCFNet.cpp:
1486         (WebURLAuthenticationChallengeSender::cancelAuthenticationChallenge):
1487         (WebURLAuthenticationChallengeSender::continueWithoutCredentialForAuthenticationChallenge):
1488         (WebURLAuthenticationChallengeSender::useCredential):
1489         Adjusted for WebCore changes.
1490
1491 2009-11-10  Brian Weinstein  <bweinstein@apple.com>
1492
1493         Reviewed by NOBODY - Build Fix.
1494
1495         Updated fillRoundedRect to take a ColorSpace argument.
1496
1497         * WebCoreSupport/WebDragClient.cpp:
1498         (WebDragClient::createDragImageForLink):
1499
1500 2009-11-08  Janne Koskinen  <janne.p.koskinen@digia.com>
1501
1502         Reviewed by Holger Freyther.
1503
1504         ResourceRequest to be class instead of struct
1505         https://bugs.webkit.org/show_bug.cgi?id=30670
1506
1507         Started as a compilation fix for Symbian where the compiler makes a distinction between
1508         class and struct in function argument signatures.
1509         Changed forward declaration of ResourceRequest to have class in the forward
1510         declaration instead of struct.
1511
1512         * WebDownload.h:
1513
1514 2009-11-05  Adam Roben  <aroben@apple.com>
1515
1516         Make CFDictionaryPropertyBag::createInstance return a COMPtr
1517
1518         I also cleaned up CFDictionaryPropertyBag's class declaration a little
1519         while I was at it.
1520
1521         Part of <http://webkit.org/b/25294> <rdar://problem/6803127> All
1522         WebKit/win classes should return COMPtrs from their static constructor
1523         members
1524
1525         Reviewed by Steve Falkenburg.
1526
1527         * CFDictionaryPropertyBag.cpp:
1528         (CFDictionaryPropertyBag::CFDictionaryPropertyBag): Changed to
1529         initialize m_refCount to 0. m_refCount gets increased to 1 by
1530         createInstance.
1531         (CFDictionaryPropertyBag::createInstance): Changed to return a COMPtr.
1532
1533         * CFDictionaryPropertyBag.h:
1534           - Updated copyright years
1535           - Fixed header guard to match current style
1536           - Replaced #include of CoreFoundation.h with forward-declaration of
1537             CFMutableDictionaryRef
1538           - Added #include of COMPtr.h
1539           - Fixed opening brace placement in class declaration
1540           - Made createInstance return a COMPtr
1541           - Made constructor/destructor private
1542           - Made QueryInterface and IPropertyBag functions private
1543           - Removed unnecessary parameter names and MIDL comments
1544
1545         * WebCache.cpp:
1546         (WebCache::statistics): Updated for change to
1547         CFDictionaryPropertyBag::createInstance. Now uses releaseRef to place
1548         the IPropertyBag pointers into the s array.
1549
1550         * WebCoreSupport/WebFrameLoaderClient.cpp:
1551         (WebFrameLoaderClient::dispatchDidFailToStartPlugin):
1552         * WebDatabaseManager.cpp:
1553         (WebDatabaseManager::dispatchDidModifyDatabase):
1554         * WebFrame.cpp:
1555         (WebFrame::createJavaAppletWidget):
1556         Updated for change to CFDictionaryPropertyBag::createInstance.
1557
1558         * WebHistory.cpp: Removed releaseUserInfo, which is no longer needed.
1559         That function was also doing an unnecessary call to setDictionary(0).
1560         (createUserInfoFromArray):
1561         (createUserInfoFromHistoryItem):
1562         Changed to return COMPtr.
1563
1564         (WebHistory::loadFromURL): Updated for change to
1565         CFDictionaryPropertyBag::createInstance.
1566
1567         (WebHistory::removeAllItems): Updated for change to
1568         CFDictionaryPropertyBag::createInstance, which fixed a leak! We had
1569         forgotten to call releaseUserInfo here.
1570
1571         (WebHistory::removeItem):
1572         (WebHistory::addItem):
1573         (WebHistory::visitedURL):
1574         * WebIconDatabase.cpp:
1575         (postDidAddIconNotification):
1576         Updated for change to CFDictionaryPropertyBag::createInstance.
1577
1578         * WebKitClassFactory.cpp:
1579         (releaseRefFromCreateInstance): Added this overloaded function
1580         template to abstract away the difference between createInstance
1581         functions that return a ref'd pointer and createInstance functions
1582         that return a COMPtr.
1583         (WebKitClassFactory::CreateInstance): Changed to use
1584         releaseRefFromCreateInstance.
1585
1586 2009-11-03  Brian Weinstein  <bweinstein@apple.com>
1587
1588         Reviewed by Steve Falkenburg.
1589
1590         WebActionModifierFlagsKey should return an unsigned, because
1591         flags imply a bitmask, and that is what other classes expect from
1592         it.
1593
1594         * WebActionPropertyBag.cpp:
1595         (WebActionPropertyBag::Read):
1596
1597 2009-11-02  Eric Carlson  <eric.carlson@apple.com>
1598
1599         Reviewed by John Sullivan and Mark Rowe.
1600
1601         <rdar://problem/7356733> Voiceover does not read correct media controller time values
1602
1603         * WebCoreLocalizedStrings.cpp:
1604         (WebCore::localizedMediaTimeDescription):
1605
1606 2009-10-29  Jon Honeycutt  <jhoneycutt@apple.com>
1607
1608         MSAA: Accessibility of headings is not correct
1609
1610         https://bugs.webkit.org/show_bug.cgi?id=30937
1611
1612         Reviewed by Alice Liu.
1613
1614         * AccessibleBase.cpp:
1615         (AccessibleBase::get_accDescription):
1616         Call the object's descriptionForMSAA(). Moved the comment to the
1617         WebCore file.
1618         (AccessibleBase::get_accRole):
1619         If the object has a string role, return that. Otherwise, return the
1620         integer role.
1621
1622         * AccessibleBase.h:
1623         Removed description(), as this was moved to WebCore.
1624
1625 2009-10-29  Jon Honeycutt  <jhoneycutt@apple.com>
1626
1627         MSAA: Accessibility of links is wrong
1628
1629         https://bugs.webkit.org/show_bug.cgi?id=30928
1630
1631         Reviewed by Darin Adler.
1632
1633         * AccessibleBase.cpp:
1634         (AccessibleBase::get_accState):
1635         Check whether the element is linked, instead of whether the node is an
1636         anchor, so the child "linkable" elements of anchor elements will also
1637         be "linked".
1638         (AccessibleBase::name):
1639         Return the name for MSAA.
1640         (AccessibleBase::value):
1641         Return the string value for MSAA.
1642
1643 2009-10-30  Evan Stade  <estade@chromium.org>
1644
1645         Reviewed by David Levin.
1646
1647         Notify the chrome when the focused node has changed.
1648         https://bugs.webkit.org/show_bug.cgi?id=30832
1649
1650         Added stub implementation for new ChromeClient function.
1651
1652         * WebCoreSupport/WebChromeClient.cpp:
1653         (WebChromeClient::focusedNodeChanged):
1654         * WebCoreSupport/WebChromeClient.h:
1655
1656 2009-10-30  Roland Steiner  <rolandsteiner@chromium.org>
1657
1658         Reviewed by Eric Seidel.
1659
1660         Remove ENABLE_RUBY guards as discussed with Dave Hyatt and Maciej Stachowiak.
1661
1662         Bug 28420 -  Implement HTML5 <ruby> rendering
1663         (https://bugs.webkit.org/show_bug.cgi?id=28420)
1664
1665         No new tests (no functional change).
1666
1667         * WebKit.vcproj/WebKit.vcproj:
1668
1669 2009-10-29  Mark Rowe  <mrowe@apple.com>
1670
1671         Rubber-stamped by Dan Bernstein.
1672
1673         <http://webkit.org/b/30938> REGRESSION(r50233): Windows nightlies crash on launch due to changes
1674         to IWebFramePrivate vtable ordering
1675
1676         * Interfaces/IWebFramePrivate.idl: Move the newly-added method to the end of the interface so that
1677         it doesn't affect the ordering of the vtable.
1678
1679 2009-10-28  Steve Falkenburg  <sfalken@apple.com>
1680
1681         Reviewed by Sam "Horatio" Weinig.
1682
1683         Should not generate/build COM DOM bindings
1684         https://bugs.webkit.org/show_bug.cgi?id=30880
1685
1686         * Interfaces/WebKit.idl: Remove generated interfaces.
1687         * WebKit.vcproj/InterfacesGenerated.vcproj: Removed.
1688         * WebKit.vcproj/WebKit.sln: Remove InterfacesGenerated.vcproj.
1689         * WebKit.vcproj/WebKit.submit.sln: Remove InterfacesGenerated.vcproj.
1690         * WebKit.vcproj/WebKit.vcproj: Remove generated interfaces.
1691
1692 2009-10-27  Shinichiro Hamaji  <hamaji@chromium.org>
1693
1694         Reviewed by Darin Adler.
1695
1696         Provide a way to get counter values with layoutTestContoller
1697         https://bugs.webkit.org/show_bug.cgi?id=30555
1698
1699         * Interfaces/IWebFramePrivate.idl:
1700         * WebFrame.cpp:
1701         (WebFrame::counterValueForElementById):
1702         * WebFrame.h:
1703
1704 2009-10-28  Joe Mason  <jmason@rim.com>
1705
1706         Reviewed by Adam Treat.
1707
1708         Call the shared FrameLoader::defaultObjectContentType instead of
1709         copying code into FrameLoaderClient::objectContentType.  This causes no
1710         behavioural change.
1711
1712         * WebFrame.cpp:
1713         (WebFrame::objectContentType):
1714
1715 2009-10-28  Holger Hans Peter Freyther  <zecke@selfish.org>
1716
1717         Speculative build-fix for WebElementPropertyBag.cpp
1718
1719         * WebElementPropertyBag.cpp: Include RenderObject.h
1720
1721 2009-10-27  Holger Hans Peter Freyther  <zecke@selfish.org>
1722
1723         Reviewed by Simon Fraser.
1724
1725         Change HitTestResult methods to use (3d) transformation aware methods
1726         https://bugs.webkit.org/show_bug.cgi?id=27347
1727
1728         The HitTestResult::boundingBox method was removed. The
1729         RenderObject must be used directly. In contrast to the
1730         old HitTestResult::boundingBox method this code must use
1731         a (3d) transformation aware method to not run into an
1732         assert in SVGRenderBase::mapLocalToContainer.
1733
1734         * WebElementPropertyBag.cpp:
1735         (WebElementPropertyBag::Read): Replace HitTestResult::boundingBox()
1736
1737 2009-10-26  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1738
1739         Reviewed by Darin Adler.
1740
1741         Make .rc files compile on Windows without depending on MFC headers
1742         https://bugs.webkit.org/show_bug.cgi?id=30750
1743
1744         * WebKit.vcproj/WebKit.rc: Use winresrc.h because it exists even 
1745         when MFC is not installed, and is all that's needed here.
1746
1747 2009-10-26  Sam Weinig  <sam@webkit.org>
1748
1749         Rubber-stamped by Darin Adler.
1750
1751         Rollout r50041-50043.  The HTML5 spec changed to make HTMLOptionsCollection
1752         inherit from HTMLCollection.
1753
1754         * DOMCreateInstance.cpp:
1755
1756 2009-10-25  Dan Bernstein  <mitz@apple.com>
1757
1758         Reviewed by John Sullivan.
1759
1760         Add contextForWorldID to the IWebFramePrivate interface.
1761
1762         * Interfaces/IWebFramePrivate.idl:
1763         * WebFrame.h:
1764
1765 2009-10-25  Sam Weinig  <sam@webkit.org>
1766
1767         Another try at fixing windows.
1768
1769         * DOMCreateInstance.cpp:
1770
1771 2009-10-25  Sam Weinig  <sam@webkit.org>
1772
1773         Touch WebKit.idl in an effort to try and regenerate the COM bindings.
1774
1775         * Interfaces/WebKit.idl:
1776
1777 2009-10-23  Mark Rowe  <mrowe@apple.com>
1778
1779         Build fix.  Include config.h before including other files.
1780
1781         * AccessibleImage.cpp:
1782
1783 2009-10-23  Gavin Barraclough  <barraclough@apple.com>
1784
1785         Reviewed by Geoff Garen.
1786
1787         https://bugs.webkit.org/show_bug.cgi?id=30729
1788         Provide private API to request the global context for a specific world.
1789         Used to initialize parameters on the global object.
1790
1791         * WebFrame.cpp:
1792         (WebFrame::contextForWorldID):
1793         * WebFrame.h:
1794
1795 2009-10-23  Brian Weinstein  <bweinstein@apple.com>
1796
1797         Reviewed by John Sullivan.
1798
1799         Pan-scrolling pointer shows up in other tabs or windows, can't "fix" it.
1800         <http://webkit.org/b/30732> and <rdar://7332018>.
1801         
1802         Turns off pan-scrolling on a WebView when it is about to lose focus.
1803
1804         * WebView.cpp:
1805         (WebViewWndProc):
1806
1807 2009-10-23  Jon Honeycutt  <jhoneycutt@apple.com>
1808
1809         MSAA: Name for image elements should use alt attribute text
1810
1811         https://bugs.webkit.org/show_bug.cgi?id=30727
1812         <rdar://problem/7328291>
1813
1814         Reviewed by Alice Liu.
1815
1816         * AccessibleBase.cpp:
1817         (AccessibleBase::createInstance):
1818         If the AccessibilityObject is an image, return an AccessibleImage.
1819
1820         * AccessibleImage.cpp: Added.
1821         (AccessibleImage::AccessibleImage):
1822         Call the base constructor.
1823         (AccessibleImage::name):
1824         If the object is not an AccessibilityRenderObject, return the base's
1825         name(). Look first for an ARIA "labeled-by" attribute, then look for an
1826         alternate text attribute. Fall back to the base's name().
1827
1828         * AccessibleImage.h: Added.
1829         (AccessibleImage::~AccessibleImage):
1830
1831         * WebKit.vcproj/WebKit.vcproj:
1832         Add AccessibleImage to the project.
1833
1834 2009-10-23  Sam Weinig  <sam@webkit.org>
1835
1836         Try and fix the windows build.
1837
1838         * Interfaces/WebKit.idl:
1839
1840 2009-10-22  Gavin Barraclough  <barraclough@apple.com>
1841
1842         Reviewed by Sam Weinig & Geoff Garen.
1843
1844         https://bugs.webkit.org/show_bug.cgi?id=30696
1845         Update to incorporate support for IsolatedWorlds in JSC bindings.
1846
1847         * Interfaces/IWebFramePrivate.idl:
1848         * WebFrame.cpp:
1849         (WebFrame::globalContext):
1850         (WebFrame::windowObjectCleared):
1851         (WebFrame::stringByEvaluatingJavaScriptInIsolatedWorld):
1852         * WebFrame.h:
1853
1854 2009-10-20  Fumitoshi Ukai  <ukai@chromium.org>
1855
1856         Reviewed by David Levin.
1857
1858         Removed WebSocket runtime settings.
1859         https://bugs.webkit.org/show_bug.cgi?id=29896
1860
1861         WebSocket runtime configuration is supported by chromium/v8 only.
1862
1863         * Interfaces/IWebPreferencesPrivate.idl:
1864         * WebPreferenceKeysPrivate.h:
1865         * WebPreferences.cpp:
1866         (WebPreferences::initializeDefaultSettings):
1867         (WebPreferences::experimentalNotificationsEnabled):
1868         * WebPreferences.h:
1869         * WebView.cpp:
1870         (WebView::notifyPreferencesChanged):
1871
1872 2009-10-19  Adam Roben  <aroben@apple.com>
1873
1874         Fix crashes/assertions when calling WebLocalizedString from multiple
1875         threads concurrently
1876
1877         Fixes <http://webkit.org/b/30534> WebLocalizedString asserts if called
1878         from multiple threads concurrently
1879
1880         Reviewed by John Sullivan.
1881
1882         * WebLocalizableStrings.cpp:
1883         (mainBundleLocStringsMutex):
1884         (frameworkLocStringsMutex):
1885         Added these new getters.
1886
1887         (findCachedString):
1888         (cacheString):
1889         Lock the relevant mutex before accessing each string map. Otherwise
1890         bad things could happen if two threads end up here at the same time.
1891
1892 2009-10-19  Adam Roben  <aroben@apple.com>
1893
1894         Get rid of a few static initializers/exit-time destructors in
1895         WebLocalizableStrings
1896
1897         Reviewed by Dan Bernstein.
1898
1899         * WebLocalizableStrings.cpp:
1900         (mainBundleLocStrings):
1901         (frameworkLocStrings):
1902         Added these functions instead of file-scope variables.
1903
1904         (findCachedString):
1905         (cacheString):
1906         Updated to use the new functions.
1907
1908 2009-10-19  Nate Chapin  <japhet@chromium.org>
1909
1910         Unreviewed, build fix.
1911
1912         Update call to FrameLoader::urlSelected().
1913
1914         * WebCoreSupport/WebContextMenuClient.cpp:
1915         (WebContextMenuClient::searchWithGoogle):
1916
1917 2009-10-16  Steve Falkenburg  <sfalken@apple.com>
1918
1919         Reviewed by Dan Bernstein.
1920
1921         https://bugs.webkit.org/show_bug.cgi?id=30456
1922         Fixes for new Debug_All Windows build configuration.
1923
1924         * WebKitClassFactory.cpp: Use new DEBUG_ALL preprocessor define for library naming.
1925
1926 2009-10-16  Jon Honeycutt  <jhoneycutt@apple.com>
1927
1928         Add SPI to determine whether a plug-in has ever been halted.
1929
1930         Part of <rdar://problem/7312158>.
1931
1932         Reviewed by Dan Bernstein.
1933
1934         * Interfaces/IWebViewPrivate.idl:
1935         Add hasPluginForNodeBeenHalted().
1936
1937         * WebView.cpp:
1938         (pluginViewForNode):
1939         Code factored out of isNodeHaltedPlugin().
1940         (WebView::isNodeHaltedPlugin):
1941         Remove STDMETHODCALLTYPE, as it has no use at the definition. Use
1942         pluginViewForNode().
1943         (WebView::restartHaltedPluginForNode):
1944         Ditto.
1945         (WebView::hasPluginForNodeBeenHalted):
1946         Get the PluginView for the given node. Return the result of
1947         PluginView::hasBeenHalted().
1948
1949         * WebView.h:
1950         Declare hasPluginForNodeBeenHalted().
1951
1952 2009-10-16  Steve Falkenburg  <sfalken@apple.com>
1953
1954         Reviewed by Adam Roben.
1955
1956         Add a Debug_All configuration to build entire stack as debug.
1957         Change Debug_Internal to:
1958         - stop using _debug suffix for all WebKit/Safari binaries
1959         - not use _debug as a DLL naming suffix
1960         - use non-debug C runtime lib.
1961
1962         * WebKit.vcproj/InterfacesGenerated.vcproj: Renamed single configuration from "Release" to "all".
1963         * WebKit.vcproj/WebKit.make: Debug build in makefile should build Debug_All.
1964         * WebKit.vcproj/WebKit.sln: Add Debug_All configuration.
1965         * WebKit.vcproj/WebKit.submit.sln: Add Debug_All configuration.
1966         * WebKit.vcproj/WebKit.vcproj:
1967         Remove extraneous OutputDirectory/IntermediateDirectory in Debug_Cairo.
1968         Add Debug_All configuration.
1969         * WebKit.vcproj/WebKitGUID.vcproj: Add Debug_All configuration.
1970
1971 2009-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
1972
1973         Add SPI to restart a halted plug-in.
1974
1975         Part of <rdar://problem/7273354> Halted plug-ins should restart on
1976         mouseover
1977
1978         https://bugs.webkit.org/show_bug.cgi?id=30151
1979
1980         Reviewed by Kevin Decker.
1981
1982         * Interfaces/IWebViewPrivate.idl:
1983         Add restartHaltedPluginForNode().
1984
1985         * WebView.cpp:
1986         (WebView::restartHaltedPluginForNode):
1987         From the IDOMNode, query for the DOMNode. From the DOMNode, get the
1988         WebCore::Node. Get the node's renderer, and check whether it is a
1989         RenderWidget. If so, get its Widget, and check whether it's a
1990         PluginView. If so, call PluginView::restart().
1991
1992         * WebView.h:
1993         Declare restartHaltedPluginForNode().
1994
1995 2009-10-14  Jon Honeycutt  <jhoneycutt@apple.com>
1996
1997         Add SPI to determine whether a node is a halted plug-in.
1998
1999         Part of <rdar://problem/7273354> Halted plug-ins should restart on
2000         mouseover
2001
2002         https://bugs.webkit.org/show_bug.cgi?id=30151
2003
2004         Reviewed by Darin Adler.
2005
2006         * Interfaces/IWebViewPrivate.idl:
2007         Add isNodehaltedPlugin().
2008
2009         * WebView.cpp:
2010         (WebView::isNodeHaltedPlugin):
2011         From the IDOMNode, query for the DOMNode. From the DOMNode, get the
2012         WebCore::Node. Get the node's renderer, and check whether it is a
2013         RenderWidget. If so, get its Widget, and check whether it's a
2014         PluginView. If so, return the result of PluginView::isHalted().
2015
2016         * WebView.h:
2017         Declare isNodeHaltedPlugin().
2018
2019 2009-10-15  Daniel Bates  <dbates@webkit.org>
2020
2021         Reviewed by Adam Roben.
2022
2023         https://bugs.webkit.org/show_bug.cgi?id=24731
2024         And
2025         rdar://problem/5015961
2026         
2027         Implements support for DHTML drag-and-drop operations (i.e. ondragstart, ondragend)
2028         in the Windows build so that it conforms to the Mac OS X build. Hence, dropEffect is
2029         correctly set.
2030         
2031         The WebView and WebDropSource drag-and-drop functions, as called by function
2032         DoDragDrop in its event loop, neither used the drop effect as specified by
2033         event.dataTransfer.dropEffect nor respected event.dataTransfer.effectsAllowed.
2034         Instead, these functions defaulted to some hardcoded drop effect and set of
2035         allowed drop effects, respectively.
2036
2037         Tests: fast/events/drag-and-drop.html
2038
2039         * WebCoreSupport/WebDragClient.cpp:
2040         (WebDragClient::startDrag):
2041         * WebDropSource.cpp:
2042         (WebDropSource::QueryContinueDrag): Moved call to EventHandler::dragSourceEndedAt
2043         into method WebDragClient::startDrag.
2044         * WebDropSource.h:
2045         * WebView.cpp:
2046         (WebView::keyStateToDragOperation): Fixes <rdar://problem/5015961>. Determines
2047         appropriate drop effect from state of keyboard and allowed effects
2048         m_page->dragController()->sourceDragOperation().
2049         (WebView::DragEnter):
2050         (WebView::DragOver):
2051         (WebView::Drop):
2052         * WebView.h:
2053
2054 2009-10-14  Adam Roben  <aroben@apple.com>
2055
2056         Windows build fix
2057
2058         * WebKit.vcproj/Interfaces.vcproj: Exclude IWebHistoryDelegate and
2059         IWebNavigationData from the build (they get #imported via WebKit.idl).
2060
2061 2009-10-14  Brady Eidson  <beidson@apple.com>
2062
2063         Reviewed by Sam Weinig.
2064
2065         WebKit Win API should provide a delegate interface for global history.
2066         https://bugs.webkit.org/show_bug.cgi?id=29905
2067
2068         -Add IWebHistoryDelegate for clients to implement.
2069         -Add (I)WebNavigationData for the history delegate's use.
2070         -When it exists, call the history delegate instead of using WebHistory.
2071         
2072         * Interfaces/IWebHistoryDelegate.idl: Added.
2073         * Interfaces/IWebHistoryPrivate.idl:
2074         * Interfaces/IWebNavigationData.idl: Added.
2075         * Interfaces/IWebViewPrivate.idl:
2076         * Interfaces/WebKit.idl:
2077         
2078         * WebKit.vcproj/Interfaces.vcproj:
2079         * WebKit.vcproj/WebKit.vcproj:
2080
2081         * WebCoreSupport/WebChromeClient.cpp:
2082         (WebChromeClient::populateVisitedLinks):
2083         * WebCoreSupport/WebFrameLoaderClient.cpp:
2084         (WebFrameLoaderClient::updateGlobalHistory):
2085         (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
2086         (WebFrameLoaderClient::setTitle):
2087  
2088          * WebView.cpp:
2089         (WebView::close):
2090         (WebView::mainFrameURL):
2091         (WebView::setHistoryDelegate):
2092         (WebView::historyDelegate):
2093         (WebView::addVisitedLinks):
2094         * WebView.h:
2095         
2096         * WebHistory.cpp:
2097         (WebHistory::setVisitedLinkTrackingEnabled):
2098         (WebHistory::removeAllVisitedLinks):
2099         * WebHistory.h:
2100
2101         * WebNavigationData.cpp: Added.
2102         (WebNavigationData::QueryInterface):
2103         (WebNavigationData::AddRef):
2104         (WebNavigationData::Release):
2105         (WebNavigationData::WebNavigationData):
2106         (WebNavigationData::~WebNavigationData):
2107         (WebNavigationData::createInstance):
2108         (WebNavigationData::url):
2109         (WebNavigationData::title):
2110         (WebNavigationData::originalRequest):
2111         (WebNavigationData::response):
2112         (WebNavigationData::hasSubstituteData):
2113         (WebNavigationData::clientRedirectSource):
2114         * WebNavigationData.h: Added.
2115
2116 2009-10-13  Dave Hyatt  <hyatt@apple.com>
2117
2118         Fix more WebView bustage.
2119
2120         * WebView.cpp:
2121         (WebView::addUserScriptToGroup):
2122         (WebView::addUserStyleSheetToGroup):
2123         (WebView::removeUserScriptsFromGroup):
2124         (WebView::removeUserStyleSheetsFromGroup):
2125
2126 2009-10-13  Dave Hyatt  <hyatt@apple.com>
2127
2128         Fix build bustage on Windows.
2129
2130         * WebView.cpp:
2131         (WebView::addUserScriptToGroup):
2132         (WebView::addUserStyleSheetToGroup):
2133         (WebView::removeUserScriptsFromGroup):
2134         (WebView::removeUserStyleSheetsFromGroup):
2135
2136 2009-10-13  Dave Hyatt  <hyatt@apple.com>
2137
2138         Reviewed by Adam Roben..
2139
2140         Split removal functions for user scripts and stylehseets based on type.
2141
2142         * Interfaces/IWebViewPrivate.idl:
2143         * WebView.cpp:
2144         (WebView::removeUserScriptFromGroup):
2145         (WebView::removeUserStyleSheetFromGroup):
2146         * WebView.h:
2147
2148 2009-10-09  Adam Barth  <abarth@webkit.org>
2149
2150         Reviewed by Darin Adler.
2151
2152         Factor HistoryController out of FrameLoader
2153         https://bugs.webkit.org/show_bug.cgi?id=30246
2154
2155         Update API call.
2156
2157         * WebView.cpp:
2158         (WebView::loadBackForwardListFromOtherView):
2159
2160 2009-10-08  Jon Honeycutt  <jhoneycutt@apple.com>
2161
2162         Remove the WebKitPluginHalterEnabledPreferenceKey in favor of checking
2163         for the existence of a PluginHalterDelegate.
2164
2165         Reviewed by Dan Bernstein.
2166
2167         * Interfaces/IWebPreferencesPrivate.idl:
2168         Remove the getter and setter.
2169
2170         * WebCoreSupport/WebPluginHalterClient.cpp:
2171         (WebPluginHalterClient::enabled):
2172         Return true if the delegate exists.
2173
2174         * WebCoreSupport/WebPluginHalterClient.h:
2175         Declare implementation of enabled().
2176
2177         * WebPreferenceKeysPrivate.h:
2178         Removed the pref key.
2179
2180         * WebPreferences.cpp:
2181         (WebPreferences::initializeDefaultSettings):
2182         Removed initialization of the pref.
2183
2184         * WebPreferences.h:
2185         Removed declaration of the getter/setter.
2186
2187         * WebView.cpp:
2188         (WebView::notifyPreferencesChanged):
2189         Don't propagate the pref.
2190
2191 2009-10-08  Adam Barth  <abarth@webkit.org>
2192
2193         Reviewed by Eric Seidel.
2194
2195         Move executeScript from FrameLoader to ScriptController
2196         https://bugs.webkit.org/show_bug.cgi?id=30200
2197
2198         Update API call.
2199
2200         * WebView.cpp:
2201         (WebView::stringByEvaluatingJavaScriptFromString):
2202
2203 2009-10-08  Anders Carlsson  <andersca@apple.com>
2204
2205         Reviewed by Sam Weinig.
2206
2207         Remove the shouldLoadMediaElementURL implementation.
2208
2209         * Interfaces/IWebPolicyDelegatePrivate.idl:
2210         * WebCoreSupport/WebFrameLoaderClient.cpp:
2211         (WebFrameLoaderClient::shouldUsePluginDocument):
2212         * WebCoreSupport/WebFrameLoaderClient.h:
2213
2214 2009-10-08  Adam Roben  <aroben@apple.com>
2215
2216         Make IWebInspectorPrivate be accessed in a more standard way
2217
2218         IWebViewPrivate::inspectorPrivate has been removed. Callers should
2219         instead use IWebViewPrivate::inspector and then use QueryInterface to
2220         get the IWebInspectorPrivate interface. This matches how our other COM
2221         classes work.
2222
2223         Fixes <http://webkit.org/b/30215> Make IWebInspectorPrivate be
2224         accessed in a more standard way
2225
2226         Reviewed by John Sullivan and Tim Hatcher.
2227
2228         * Interfaces/IWebViewPrivate.idl: Removed inspectorPrivate.
2229
2230         * WebInspector.cpp:
2231         (WebInspector::QueryInterface): Support querying to
2232         IWebInspectorPrivate.
2233
2234         * WebView.cpp:
2235         * WebView.h:
2236         Removed inspectorPrivate.
2237
2238 2009-10-08  Adam Roben  <aroben@apple.com>
2239
2240         Move the new IWebViewPrivate::inspectorPrivate function after all
2241         functions that existed when Safari 4.0.3 was released
2242
2243         Fixes <http://webkit.org/b/30085> REGRESSION (r49091): run-safari
2244         crashes in Safari.dll
2245
2246         Reviewed by John Sullivan.
2247
2248         * Interfaces/IWebViewPrivate.idl: Moved inspectorPrivate to the end of
2249         the interface, so it won't modify the vtable that Safari 4.0.3 sees.
2250
2251 2009-10-07  Adam Roben  <aroben@apple.com>
2252
2253         Expose origin whitelisting in the WebKit API on Windows
2254
2255         Fixes <http://webkit.org/b/30185>.
2256
2257         Reviewed by Eric Seidel.
2258
2259         * Interfaces/IWebViewPrivate.idl: Added whiteListAccessFromOrigin and
2260         resetOriginAccessWhiteLists, to match the Mac SPI.
2261
2262         * WebView.cpp:
2263         (WebView::whiteListAccessFromOrigin):
2264         (WebView::resetOriginAccessWhiteLists):
2265         * WebView.h:
2266         Added. These just call through to SecurityOrigin.
2267
2268 2009-10-07  Adam Barth  <abarth@webkit.org>
2269
2270         Reviewed by Darin Adler.
2271
2272         Factor PolicyChecker out of FrameLoader
2273         https://bugs.webkit.org/show_bug.cgi?id=30155
2274
2275         Move the policy callback to the policy object.
2276
2277         * WebFrame.cpp:
2278         (WebFrame::dispatchWillSubmitForm):
2279         (WebFrame::receivedPolicyDecision):
2280         (WebFrame::dispatchDecidePolicyForMIMEType):
2281         (WebFrame::dispatchDecidePolicyForNewWindowAction):
2282         (WebFrame::dispatchDecidePolicyForNavigationAction):
2283
2284 2009-10-07  Daniel Bates  <dbates@webkit.org>
2285
2286         Reviewed by Darin Adler.
2287
2288         https://bugs.webkit.org/show_bug.cgi?id=30102
2289         And
2290         <rdar://problem/5015957>
2291         
2292         Fixes an issue (in the Windows build) where the cursor does not change to the
2293         not-allowed cursor when the drag-and-drop operation is not allowed.
2294         
2295         The allowed effects in WebDragClient::startDrag are hard-coded to be 
2296         DROPEFFECT_COPY | DROPEFFECT_LINK | DROPEFFECT_MOVE. Instead, the list of 
2297         allowed drop effects should be determined by the allowed operations of the
2298         drag source.
2299         
2300         We cannot test this using DRT because DRT looks at the programmatic drop 
2301         cursor and until bug #24731 is fixed this value is hard-coded to DragOperationCopy.
2302         That is, there is a discrepancy in the Windows build between the Windows API-based 
2303         drop effect and the WebKit drop effect. Because DRT cannot read the screen buffer 
2304         to determine the cursor, a manual test is needed.
2305
2306         * WebCoreSupport/WebDragClient.cpp:
2307         (draggingSourceOperationMaskToDragCursors): Added method.
2308         (WebDragClient::startDrag):
2309
2310 2009-10-07  Steve Falkenburg  <sfalken@apple.com>
2311
2312         Reviewed by Darin Adler.
2313
2314         https://bugs.webkit.org/show_bug.cgi?id=30176
2315         <rdar://problem/7281553> Extra information in UA causes problems with gmail
2316         
2317         * WebKit.vcproj/WebKit.rc: Restore PRODUCTVERSION to build number only. Remove extra space.
2318
2319 2009-10-06  Pavel Feldman  <pfeldman@chromium.org>
2320
2321         Reviewed by Timothy Hatcher.
2322
2323         Web Inspector: default to an attached inspector window on Windows (as on Mac).
2324
2325         https://bugs.webkit.org/show_bug.cgi?id=30134
2326
2327         * WebCoreSupport/WebInspectorClient.cpp:
2328         (WebInspectorClient::showWindowWithoutNotifications):
2329
2330 2009-10-06  Adam Barth  <abarth@webkit.org>
2331
2332         Reviewed by Eric Seidel.
2333
2334         Move FrameLoader::canLoad to SecurityOrigin
2335         https://bugs.webkit.org/show_bug.cgi?id=30111
2336
2337         * WebFrame.cpp:
2338         (WebFrame::allowsFollowingLink):
2339
2340 2009-10-06  Pavel Feldman  <pfeldman@chromium.org>
2341
2342         Reviewed by Timothy Hatcher.
2343
2344         Web Inspector: close inspector client view on
2345         InspectorController::close API call.
2346
2347         In order to run batch web inspector layout tests (and not affect 
2348         subsequent tests) we should close inspector client's view upon
2349         InspectorController::close API call.
2350
2351         https://bugs.webkit.org/show_bug.cgi?id=30009
2352
2353         * WebCoreSupport/WebInspectorClient.cpp:
2354         (WebInspectorClient::createPage):
2355
2356 2009-10-06  David Levin  <levin@chromium.org>
2357
2358         Reviewed by NOBODY (windows build fix).
2359
2360         Speculative build fix for windows (due to r49160).
2361
2362         * WebDownloadCFNet.cpp:
2363         (WebDownload::initToResumeWithBundle):
2364         * WebIconDatabase.cpp:
2365         (WebIconDatabase::dispatchDidAddIconForPageURL):
2366
2367 2009-10-05  Pavel Feldman  <pfeldman@chromium.org>
2368
2369         Reviewed by Timothy Hatcher.
2370
2371         Web Inspector: add testing harness for Web Inspector.
2372
2373         https://bugs.webkit.org/show_bug.cgi?id=30010
2374
2375         * Interfaces/IWebInspectorPrivate.idl: Added.
2376         * Interfaces/IWebViewPrivate.idl:
2377         * Interfaces/WebKit.idl:
2378         * WebInspector.cpp:
2379         (WebInspector::evaluateInFrontend):
2380         * WebInspector.h:
2381         * WebView.cpp:
2382         (WebView::inspectorPrivate):
2383         * WebView.h:
2384
2385 2009-10-02  Dave Hyatt  <hyatt@apple.com>
2386
2387         Reviewed by Adam Roben.
2388
2389         Add support for blacklist patterns to user stylesheets and scripts in addition to whitelist patterns.
2390
2391         * Interfaces/IWebViewPrivate.idl:
2392         * WebView.cpp:
2393         (toStringVector):
2394         (WebView::addUserScriptToGroup):
2395         (WebView::addUserStyleSheetToGroup):
2396         * WebView.h:
2397
2398 2009-10-02  Steve Falkenburg  <sfalken@apple.com>
2399
2400         Reviewed by Mark Rowe.
2401
2402         <https://bugs.webkit.org/show_bug.cgi?id=29989>
2403         Safari version number shouldn't be exposed in WebKit code
2404         
2405         For a WebKit version of 532.3.4:
2406         Product version is: 5.32.3.4 (was 4.0.3.0)
2407         File version is: 5.32.3.4 (was 4.532.3.4)
2408
2409         * WebKit.vcproj/WebKit.rc:
2410
2411 2009-09-30  Sam Weinig  <sam@webkit.org>
2412
2413         Reviewed by Dan Bernstein.
2414
2415         Fix for <rdar://problem/7259706>
2416         Need WebKit API or SPI on Mac and Windows to test whether it's safe to load a page in a new tab/window
2417
2418         * Interfaces/IWebFramePrivate.idl:
2419         * WebFrame.cpp:
2420         (WebFrame::allowsFollowingLink):
2421         * WebFrame.h:
2422
2423 2009-09-30  Dave Hyatt  <hyatt@apple.com>
2424
2425         Reviewed by Adam Roben.
2426
2427         Add the ability to remove user stylesheets and scripts by URL.
2428
2429         * Interfaces/IWebViewPrivate.idl:
2430         * WebView.cpp:
2431         (WebView::removeUserContentWithURLFromGroup):
2432         * WebView.h:
2433
2434 2009-09-29  Kenneth Russell  <kbr@google.com>
2435
2436         Reviewed by Dimitri Glazkov.
2437
2438         Add support for run-time flag for 3D canvas
2439         https://bugs.webkit.org/show_bug.cgi?id=29826
2440
2441         * WebView.cpp:
2442         (WebView::notifyPreferencesChanged): Enable experimental WebGL
2443         flag when 3D_CANVAS is enabled in the build.
2444
2445 2009-09-28  Alexey Proskuryakov  <ap@apple.com>
2446
2447         Reviewed by Darin Adler and Sam Weinig.
2448
2449         Onclick not fired for an element copied with cloneContents() or cloneNode()
2450         https://bugs.webkit.org/show_bug.cgi?id=25130
2451
2452         * DOMCreateInstance.cpp: GEN_DOMEventListener is a pure interface now.
2453
2454         * WebKit.vcproj/WebKit.vcproj: Removed GEN_DOMEventListener.cpp.
2455
2456 2009-09-28  Fumitoshi Ukai  <ukai@chromium.org>
2457
2458         Reviewed by Eric Seidel.
2459
2460         Add experimentalWebSocketsEnabled in WebPreferences.
2461         https://bugs.webkit.org/show_bug.cgi?id=28941
2462
2463         * Interfaces/IWebPreferencesPrivate.idl:
2464         * WebPreferenceKeysPrivate.h:
2465         * WebPreferences.cpp:
2466         (WebPreferences::initializeDefaultSettings):
2467         (WebPreferences::setExperimentalWebSocketsEnabled):
2468         (WebPreferences::experimentalWebSocketsEnabled):
2469         * WebPreferences.h:
2470         * WebView.cpp:
2471         (WebView::notifyPreferencesChanged):
2472         (core):
2473
2474 2009-09-25  Darin Adler  <darin@apple.com>
2475
2476         Reviewed by Steve Falkenburg.
2477
2478         Speed up access to history items by caching date computation.
2479
2480         * History/WebHistory.mm:
2481         (getDayBoundaries): Refactored from timeIntervalForBeginningOfDay.
2482         Returns the beginning of the day that the passed time is within and
2483         the beginning of the next day.
2484         (beginningOfDay): Added. Uses getDayBoundaries so it can be fast for
2485         multiple dates within the same day, which is the common case.
2486         (dateKey): Added. Calls beginningOfDay and converts to an integer.
2487         (WebHistory::findKey): Changed to call dateKey instead of
2488         timeIntervalForBeginningOfDay.
2489
2490 2009-09-25  Adam Roben  <aroben@apple.com>
2491
2492         Add SPI to invalidate a WebView's backing store
2493
2494         This is useful in conjunction with
2495         IWebUIDelegatePrivate2::drawBackground. This provides a way for the UI
2496         delegate to force WebView to get its background redrawn.
2497
2498         Fixes <http://webkit.org/b/29737> Need SPI to invalidate a WebView's
2499         backing store
2500
2501         Reviewed by Anders Carlsson.
2502
2503         * Interfaces/IWebViewPrivate.idl: Added invalidateBackingStore.
2504         * WebView.cpp:
2505         (WebView::invalidateBackingStore): If rect is 0, invalidate our whole
2506         client rect. Otherwise invalidate the intersection of rect with our
2507         client rect.
2508         * WebView.h:
2509
2510 2009-09-24  Jon Honeycutt  <jhoneycutt@apple.com>
2511
2512         Add a mechanism for automatically halting plug-ins.
2513
2514         Reviewed by Oliver Hunt.
2515
2516         * Interfaces/IWebPluginHalterDelegate.idl: Added. Defines an interface
2517         for a delegate that determines whether plug-ins should be halted.
2518
2519         * Interfaces/IWebPreferencesPrivate.idl:
2520         Declare functions to get and set the enabled state of the plug-in
2521         halter and the plug-in allowed run time.
2522
2523         * Interfaces/IWebViewPrivate.idl:
2524         Declare functions to get and set the IWebPluginHalterDelegate.
2525
2526         * Interfaces/WebKit.idl:
2527
2528         * WebCoreSupport/WebPluginHalterClient.cpp: Added.
2529         (WebPluginHalterClient::WebPluginHalterClient):
2530         (WebPluginHalterClient::shouldHaltPlugin):
2531         Get the IWebPluginHalterDelegate for the WebView. Create a WebKit
2532         DOMNode for the WebCore Node. Call the delegate's shouldHaltPlugin().
2533         If the call fails, return false. Otherwise, return the result of the
2534         call.
2535
2536         * WebCoreSupport/WebPluginHalterClient.h: Added.
2537
2538         * WebKit.vcproj/Interfaces.vcproj:
2539         Add IWebPluginHalterDelegate.idl.
2540
2541         * WebKit.vcproj/WebKit.vcproj:
2542         Add WebPluginHalterClient.{h,cpp}.
2543
2544         * WebPreferenceKeysPrivate.h:
2545         Define WebKitPluginHalterEnabledPreferenceKey and
2546         WebKitPluginAllowedRunTimePreferenceKey.
2547
2548         * WebPreferences.cpp:
2549         (WebPreferences::initializeDefaultSettings):
2550         Leave plug-in halting disabled by default. Set the default value for
2551         the plug-in allowed run time to the max value of an unsigned int.
2552         (WebPreferences::setPluginHalterEnabled):
2553         (WebPreferences::pluginHalterEnabled):
2554         (WebPreferences::setPluginAllowedRunTime):
2555         (WebPreferences::pluginAllowedRunTime):
2556
2557         * WebPreferences.h:
2558
2559         * WebView.cpp:
2560         (WebView::close):
2561         Clear the IWebPluginHalterDelegate.
2562         (WebView::initWithFrame):
2563         Pass a WebPluginHalterClient when creating the Page.
2564         (WebView::notifyPreferencesChanged):
2565         Set the new settings when the preferences changed notification is
2566         received.
2567         (WebView::setPluginHalterDelegate):
2568         (WebView::pluginHalterDelegate):
2569
2570         * WebView.h:
2571         Declare overrides of setPluginHalterDelegate() and
2572         pluginHalterDelegate(). Added a member to track the
2573         IWebPluginHalterDelegate.
2574
2575 2009-09-14  John Gregg  <johnnyg@google.com>
2576
2577         Reviewed by Eric Seidel.
2578
2579         Enable switch for notifications (experimental) in Page Settings
2580         https://bugs.webkit.org/show_bug.cgi?id=28930
2581
2582         Adds support for the experimentalNotificationsEnabled flag in Settings through
2583         WebPreferencesPrivate interface.  Also cleans up some issues accessing the
2584         notification delegate through DumpRenderTree.
2585
2586         * Interfaces/IWebPreferencesPrivate.idl:
2587         * WebCoreSupport/WebDesktopNotificationsDelegate.cpp:
2588         (WebDesktopNotificationsDelegate::hasNotificationDelegate):
2589         (WebDesktopNotificationsDelegate::notificationDelegate):
2590         * WebPreferenceKeysPrivate.h:
2591         * WebPreferences.cpp:
2592         (WebPreferences::initializeDefaultSettings):
2593         (WebPreferences::setExperimentalNotificationsEnabled):
2594         (WebPreferences::experimentalNotificationsEnabled):
2595         * WebPreferences.h:
2596         * WebView.cpp:
2597         (WebView::notifyPreferencesChanged):
2598
2599 2009-09-23  Anders Carlsson  <andersca@apple.com>
2600
2601         Reviewed by Adam Roben.
2602
2603         <rdar://problem/7243354> 
2604         REGRESSION(48580-48636): Crash clicking embedded QT preview button on apple.com/trailers
2605         
2606         Check for a null IWebPolicyDelegatePrivate.
2607         
2608         * WebCoreSupport/WebFrameLoaderClient.cpp:
2609         (WebFrameLoaderClient::shouldLoadMediaElementURL):
2610
2611 2009-09-22  Sam Weinig  <sam@webkit.org>
2612
2613         Rubber-stamped by Adam Roben.
2614
2615         Remove accidentally left in declaration of reloadFromOrigin in IWebFramePrivate.idl
2616
2617         * Interfaces/IWebFramePrivate.idl:
2618
2619 2009-09-22  Sam Weinig  <sam@webkit.org>
2620
2621         Reviewed by Steve Falkenburg.
2622
2623         Fix for <rdar://problem/6451745>
2624         Windows WebKit needs to implement reloadFromOrigin()
2625
2626         * Interfaces/IWebFrame.idl:
2627         * Interfaces/IWebFramePrivate.idl:
2628         * Interfaces/IWebView.idl:
2629         * WebFrame.cpp:
2630         (WebFrame::reloadFromOrigin):
2631         * WebFrame.h:
2632         * WebView.cpp:
2633         (WebView::reloadFromOrigin):
2634         * WebView.h:
2635
2636 2009-09-22  Adam Roben  <aroben@apple.com>
2637
2638         Manage refcounts correctly in DefaultDownloadDelegate::willSendRequest
2639
2640         Fixes <http://webkit.org/b/29650> Crash in
2641         WebDownload::willSendRequest when using DefaultDownloadDelegate
2642
2643         Reviewed by Brady Eidson.
2644
2645         * DefaultDownloadDelegate.cpp:
2646         (DefaultDownloadDelegate::willSendRequest): Call AddRef() on the
2647         object we're returning via the finalRequest out-parameter.
2648
2649 2009-09-21  Anders Carlsson  <andersca@apple.com>
2650
2651         Reviewed by Adam Roben.
2652
2653         <rdar://problem/7135588> HTMLMediaElement should ask WebPolicyLoadDelegate before loading resource
2654
2655         Implement WebFrameLoaderClient::shouldLoadMediaElementURL and have it call the new private policy
2656         delegate method.
2657         
2658         * Interfaces/IWebPolicyDelegatePrivate.idl: Added.
2659         * Interfaces/WebKit.idl:
2660         * WebCoreSupport/WebFrameLoaderClient.cpp:
2661         (WebFrameLoaderClient::shouldLoadMediaElementURL):
2662         * WebCoreSupport/WebFrameLoaderClient.h:
2663         * WebKit.vcproj/Interfaces.vcproj:
2664
2665 2009-09-17  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2666
2667         Reviewed by Simon Hausmann.
2668
2669         Make PlatformWindow return something else than PlatformWidget
2670         https://bugs.webkit.org/show_bug.cgi?id=29085
2671
2672         Reflect the rename of platformWindow and it's return type.
2673
2674         * AccessibleBase.cpp:
2675         (AccessibleBase::get_accParent):
2676         * WebCoreSupport/WebChromeClient.cpp:
2677         (WebChromeClient::platformPageClient):
2678         * WebCoreSupport/WebChromeClient.h:
2679
2680 2009-09-17  Brian Weinstein  <bweinstein@apple.com>
2681
2682         Reviewed by Adam Roben.
2683
2684         Remove assertions that were being hit by calls to
2685         m_verticalScrollbar->invalidate(). These assertions were valid,
2686         but they were causing tests to fail, so replacing with a FIXME 
2687         until we can find out the real cause/solution that is being tracked 
2688         by http://webkit.org/b/29350.
2689
2690         * WebView.cpp:
2691         (WebView::addToDirtyRegion):
2692         (WebView::paintIntoBackingStore):
2693
2694 2009-09-17  Ada Chan  <adachan@apple.com>
2695
2696         Post WebViewDidChangeSelectionNotification when the text selection changes.
2697
2698         Fixes <http://webkit.org/b/29321>
2699
2700         Reviewed by Adam Roben.
2701
2702         * Interfaces/IWebView.idl:
2703         * WebCoreSupport/WebEditorClient.cpp:
2704         (WebEditorClient::respondToChangedSelection):
2705
2706 2009-09-17  Adam Roben  <aroben@apple.com>
2707
2708         Fix a crash when a WebView's HWND is destroyed before IWebView::close
2709         is called
2710
2711         WebView's HWND was being sent a WM_TIMER message after the WebView was
2712         destroyed. This normally isn't possible (we call DestroyWindow inside
2713         WebView's destructor to ensure the HWND doesn't outlive the WebView),
2714         but r48060 changed WebView to call SetParent(m_viewWindow,
2715         HWND_MESSAGE) while handling WM_DESTROY, and apparently this puts the
2716         HWND into some weird half-destroyed state where it can still receive
2717         WM_TIMER messages.
2718
2719         Fixes <http://webkit.org/b/29337> <rdar://problem/7209897> REGRESSION
2720         (r48060): unrepro but frequent crash in WebViewWndProc
2721
2722         Reviewed by Steve Falkenburg.
2723
2724         * WebView.cpp:
2725         (WebViewWndProc): When handling WM_DESTROY, call setIsBeingDestroyed()
2726         before calling close(). This allows setHostWindow to detect that we're
2727         handling WM_DESTROY. No other code in close() cared whether
2728         isBeingDestroyed() was true or not.
2729         (WebView::setHostWindow): If our host window is being set to 0 and
2730         we're being destroyed, don't become a message-only window. Doing this
2731         while handling WM_DESTROY seems to lead to crashes.
2732
2733 2009-09-16  Adam Roben  <aroben@apple.com>
2734
2735         Add a UI delegate callback to let the delegate draw a WebView's
2736         background
2737
2738         Fixes <http://webkit.org/b/29315>.
2739
2740         Reviewed by Dave Hyatt.
2741
2742         * Interfaces/IWebUIDelegatePrivate.idl: Added
2743         IWebUIDelegatePrivate2::drawBackground.
2744
2745         * WebView.cpp:
2746         (WebView::paintIntoBackingStore): After clearing or filling with
2747         white, let the delegate draw whatever background it wants. Also added
2748         an assertion that the dirty rect is within our bounds.
2749
2750 2009-09-16  Adam Roben  <aroben@apple.com>
2751
2752         Prevent WebView from painting over sibling windows
2753
2754         Fixes <http://webkit.org/b/29300> <rdar://problem/7227960> WebView can
2755         paint over sibling windows
2756
2757         Reviewed by Darin Adler.
2758
2759         * WebView.cpp:
2760         (WebView::initWithFrame): Create the WebView's HWND with the
2761         WS_CLIPSIBLINGS style.
2762
2763 2009-09-14  Brady Eidson  <beidson@apple.com>
2764
2765         Reviewed by Alexey Proskuryakov.
2766
2767         Safari 4 cannot be used to update firmware on Linksys routers.
2768         <rdar://problem/7174050> and https://bugs.webkit.org/show_bug.cgi?id=29160
2769
2770         Adopt the new WebCore::CredentialStorage in WebKit/Win.
2771
2772         * WebDownloadCFNet.cpp:
2773         (WebDownload::didReceiveAuthenticationChallenge):
2774
2775 2009-09-11  Steve Falkenburg  <sfalken@apple.com>
2776
2777         Reviewed by Dan Bernstein.
2778
2779         Properly propagate preference from WebPreferences to WebCore::Settings.
2780         https://bugs.webkit.org/show_bug.cgi?id=29192
2781
2782         * WebView.cpp:
2783         (WebView::initWithFrame): Apply setting when creating a new WebView.
2784         (WebView::notifyPreferencesChanged): Apply setting when preferences change.
2785
2786 2009-09-11  Steve Falkenburg  <sfalken@apple.com>
2787
2788         Reviewed by Darin Adler.
2789
2790         Allow WebKit clients to opt out of high resolution timers on Windows.
2791         https://bugs.webkit.org/show_bug.cgi?id=29192
2792
2793         * Interfaces/IWebPreferencesPrivate.idl: Added getter/setter.
2794         Put this just after last 4.0.3 method for future merging.
2795         * Interfaces/WebKit.idl: Touched to force a rebuild.
2796         * WebPreferenceKeysPrivate.h: Added prefs key for high res timers.
2797         * WebPreferences.cpp:
2798         (WebPreferences::initializeDefaultSettings): Initialize high res timers to enabled.
2799         (WebPreferences::setShouldUseHighResolutionTimers): Added.
2800         (WebPreferences::shouldUseHighResolutionTimers): Added.
2801         * WebPreferences.h: Added getter/setter.
2802
2803 2009-09-11  Adam Roben  <aroben@apple.com>
2804
2805         Get user script/stylesheet tests running on Windows
2806
2807         Fixes <http://webkit.org/b/29181> User script/stylesheet tests are
2808         skipped on Windows
2809
2810         Reviewed by John Sullivan.
2811
2812         * Interfaces/IWebViewPrivate.idl: Added addUserScriptToGroup,
2813         addUserStyleSheetToGroup, removeUserContentFromGroup,
2814         removeAllUserContentFromGropu to match the Mac SPI.
2815
2816         * WebView.cpp:
2817         (WebView::addUserScriptToGroup):
2818         (WebView::addUserStyleSheetToGroup):
2819         (WebView::removeUserContentFromGroup):
2820         (WebView::removeAllUserContentFromGroup):
2821         * WebView.h:
2822         Added. Implementation was based on similar methods in WebView.mm.
2823
2824 2009-09-11  Jon Honeycutt  <jhoneycutt@apple.com>
2825
2826         Fix crash on launch on Windows.
2827
2828         Rubber-stamped by Mark Rowe.
2829
2830         * WebKit.vcproj/WebKit.vcproj:
2831         Define ENABLE_WEB_SOCKETS for all configurations.
2832
2833 2009-09-07  Drew Wilson  <atwilson@google.com>
2834
2835         Reviewed by David Levin.
2836
2837         Enable SHARED_WORKERS by default.
2838         https://bugs.webkit.org/show_bug.cgi?id=28959
2839
2840         * WebKit.vcproj/WebKit.vcproj:
2841
2842 2009-09-04  Adam Roben  <aroben@apple.com>
2843
2844         Make WebView function without a parent window
2845
2846         When WebView has no parent window, it becomes a message-only window,
2847         which hides it from the screen and prevents it from appearing on the
2848         taskbar.
2849
2850         Fixes <http://webkit.org/b/28971> <rdar://problem/4976998>
2851         WebView::initWithFrame fails if there's no host window
2852
2853         Reviewed by Dave Hyatt.
2854
2855         * WebView.cpp:
2856         (WebView::initWithFrame): m_hostWindow is null, use HWND_MESSAGE as
2857         our parent window, which will make us a message-only window.
2858         (WebView::setHostWindow): If he new host window is null, use
2859         HWND_MESSAGE as our parent window, which will make us a message-only
2860         window.
2861
2862 2009-09-04  Adam Barth  <abarth@webkit.org>
2863
2864         Unreviewed attempt at a build fix.
2865
2866         Added missing include.
2867
2868         * WebCoreSupport/WebFrameLoaderClient.cpp:
2869
2870 2009-09-04  Adam Barth  <abarth@webkit.org>
2871
2872         Unreviewed attempt at a build fix.
2873
2874         Fix typo of IWebFrameLoadDelegatePrivate2 and make
2875         IWebFrameLoadDelegatePrivate inherit from IWebFrameLoadDelegatePrivate
2876         as requestd by Adam Roben.
2877
2878         * Interfaces/IWebFrameLoadDelegatePrivate2.idl:
2879         * WebCoreSupport/WebFrameLoaderClient.cpp:
2880         (WebFrameLoaderClient::didDisplayInsecureContent):
2881         (WebFrameLoaderClient::didRunInsecureContent):
2882
2883 2009-09-04  Adam Barth  <abarth@webkit.org>
2884
2885         Reviewed by Eric Seidel.
2886
2887         https://bugs.webkit.org/show_bug.cgi?id=24696
2888
2889         Plumb mixed content notifications to IWebFrameLoadDelegatePrivate.
2890
2891         * Interfaces/IWebFrameLoadDelegatePrivate2.idl: Added.
2892         * Interfaces/WebKit.idl:
2893         * WebCoreSupport/WebFrameLoaderClient.cpp:
2894         (WebFrameLoaderClient::didDisplayInsecureContent):
2895         (WebFrameLoaderClient::didRunInsecureContent):
2896         * WebKit.vcproj/Interfaces.vcproj:
2897
2898 2009-09-03  Adam Barth  <abarth@webkit.org>
2899
2900         Reviewed by eric@webkit.org.
2901
2902         https://bugs.webkit.org/show_bug.cgi?id=24696
2903
2904         Stub implementations of mixed content methods of FrameLoaderClient. 
2905
2906         * WebCoreSupport/WebFrameLoaderClient.cpp:
2907         (WebFrameLoaderClient::didDisplayInsecureContent):
2908         (WebFrameLoaderClient::didRunInsecureContent):
2909         * WebCoreSupport/WebFrameLoaderClient.h:
2910
2911 2009-09-01  Adam Roben  <aroben@apple.com>
2912
2913         Post a notification when a WebView is closing
2914
2915         This is useful for situations where some code wants to react to the
2916         WebView closing but isn't in charge of the WebView and can't otherwise
2917         be notified. This notification could replace
2918         IWebUIDelegatePrivate::webViewClosing if we decide that the
2919         notification system isn't too burdensome.
2920
2921         <http://webkit.org/b/28875>
2922
2923         Reviewed by John Sullivan.
2924
2925         * Interfaces/IWebViewPrivate.idl: Added the
2926         WebViewWillCloseNotification string constant.
2927         * WebKit.vcproj/WebKit.vcproj: Link against comsuppw.lib in all
2928         configurations so that we can use _bstr_t.
2929         * WebView.cpp:
2930         (WebView::close): Post the WebViewWillCloseNotification.
2931
2932 2009-08-31  Alexey Proskuryakov  <ap@webkit.org>
2933
2934         Reviewed by Darin Adler.
2935
2936         https://bugs.webkit.org/show_bug.cgi?id=28852
2937         Rename KURL single argument constructor to avoid confusion
2938
2939         * WebURLResponse.cpp: (WebURLResponse::createInstance): Adapt to the change.
2940
2941 2009-08-20  Adam Roben  <aroben@apple.com>
2942
2943         Give WebKit clients access to the window features specified in
2944         window.open
2945
2946         Reviewed by Steve Falkenburg.
2947
2948         * COMVariantSetter.h: Added COMVariantSetters for bool and float.
2949
2950         * Interfaces/IWebUIDelegatePrivate.idl: Added IWebUIDelegatePrivate2,
2951         which contains a new version of createWebViewWithRequest that also
2952         passes the window features as an IPropertyBag. This is analagous to
2953         the -createWebViewWithRequest:windowFeatures: method added to
2954         WebUIDelegate on Mac in r27452. Also added key strings for use with
2955         the window features property bag.
2956
2957         * WebCoreSupport/WebChromeClient.cpp:
2958         (createWindowFeaturesPropertyBag): Added this helper function to turn
2959         a WebCore::WindowFeatures into an IPropertyBag for passing to WebKit
2960         clients.
2961         (WebChromeClient::createWindow): If the UI delegate implements
2962         IWebUIDelegatePrivate2, call the new createWebViewWithRequest function
2963         that takes a window features property bag. If the delegate doesn't
2964         implement the new function, fall back to the old functions.
2965
2966 2009-08-20  Adam Roben  <aroben@apple.com>
2967
2968         A little clean-up in WebChromeClient::createWindow
2969
2970         Reviewed by Steve Falkenburg.
2971
2972         * WebCoreSupport/WebChromeClient.cpp:
2973         (WebChromeClient::createWindow): Refactored to share more code between
2974         the dialog and non-dialog cases.
2975
2976 2009-08-28  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2977
2978         Reviewed by Holger Freyther.
2979
2980         https://bugs.webkit.org/show_bug.cgi?id=25889
2981         [GTK] scrollbar policy for main frame is not implementable
2982
2983         Add empty implementation for new ChromeClient method.
2984
2985         * WebCoreSupport/WebChromeClient.h:
2986         (WebChromeClient::scrollbarsModeDidChange):
2987
2988 2009-08-27  Brent Fulgham  <bfulgham@webkit.org>
2989
2990         Reviewed by Adam Roben.
2991
2992         Modify Release_Cairo target to build testapi using the
2993         Release_CFLite target so that the correct CoreFoundation
2994         (in this case, CFLite.dll) is linked.
2995
2996         * WebKit.vcproj/WebKit.sln:
2997
2998 2009-08-26  Adam Barth  <abarth@webkit.org>
2999
3000         Reviewed by Oliver Hunt.
3001
3002         Don't let local files access web URLs
3003         https://bugs.webkit.org/show_bug.cgi?id=28480
3004
3005         * WebPreferences.cpp:
3006         (WebPreferences::initializeDefaultSettings):
3007
3008 2009-08-26  David Levin  <levin@chromium.org>
3009
3010         Reviewed by Darin Fisher.
3011
3012         ResourceRequestBase::*[Aa]llowHTTPCookies shouldn't mention http.
3013         https://bugs.webkit.org/show_bug.cgi?id=28735
3014
3015         * WebMutableURLRequest.cpp:
3016         (WebMutableURLRequest::setHTTPShouldHandleCookies):
3017
3018 2009-08-25  Eric Carlson  <eric.carlson@apple.com>
3019
3020         Reviewed by Oliver Hunt.
3021
3022         <video> and <audio> controller should be accessible
3023         https://bugs.webkit.org/show_bug.cgi?id=28081
3024
3025         * WebCoreLocalizedStrings.cpp:
3026         (WebCore::localizedMediaControlElementString):
3027         (WebCore::localizedMediaControlElementHelpText):
3028         (WebCore::localizedMediaTimeDescription):
3029             New.
3030
3031 2009-08-25  Brent Fulgham  <bfulgham@webkit.org>
3032
3033         Build fix for Windows.
3034
3035         Revise Debug_Cairo build target to build testapi, jsc, WinLauncher,
3036         DumpRenderTree, and TestNetscapeAPI using WinCairo debug build
3037         settings so they link against the proper libraries.
3038
3039         * WebKit.vcproj/WebKit.sln:
3040
3041 2009-08-25  David Levin  <levin@chromium.org>
3042
3043         Reviewed by Adam Roben.
3044
3045         PLATFORM(CFNETWORK) should be USE(CFNETWORK).
3046         https://bugs.webkit.org/show_bug.cgi?id=28713
3047
3048         Also, moved the #if header section after the other #includes.
3049
3050         * WebError.cpp:
3051         (WebError::localizedDescription):
3052
3053 2009-08-24  Brent Fulgham  <bfulgham@webkit.org>
3054
3055         Reviewed by Steve Falkenburg.
3056
3057         Revise CFLite Debug build to emit DLL's with _debug label.
3058         https://bugs.webkit.org/show_bug.cgi?id=28695.
3059
3060         * WebKit.vcproj/WebKit.vcproj: Modify Debug_Cairo target to
3061           inherit from new debug_wincairo property sheet, instead of
3062           the current debug sheet. 
3063
3064 2009-08-22  Adam Barth  <abarth@webkit.org>
3065
3066         Revert 47684.  We're going to do this later once clients have had a
3067         chance to opt into the setting they like.
3068
3069         * WebPreferences.cpp:
3070         (WebPreferences::initializeDefaultSettings):
3071
3072 2009-08-22  Adam Barth  <abarth@webkit.org>
3073
3074         Reviewed by Eric Seidel.
3075
3076         Don't let local files access web URLs
3077         https://bugs.webkit.org/show_bug.cgi?id=28480
3078
3079         * WebPreferences.cpp:
3080         (WebPreferences::initializeDefaultSettings):
3081
3082 2009-08-20  Brian Weinstein  <bweinstein@apple.com>
3083
3084         Reviewed by Adam Roben.
3085
3086         Fix of <http://webkit.org/b/27850>. Panning by emulating Mouse Wheel Events breaks Google Maps.
3087         
3088         Switched to using RenderLayer::scrollByRecursively instead of emulating a mouse wheel,
3089         and switched to handling the hit testing in WebView from doing it as part of the mouse wheel event.
3090         One downside of this fix is that panning will not jump out of frames anymore (same behavior as pan-scrolling), but
3091         this is tracked in <http://webkit.org/b/28237>.
3092
3093         * WebView.cpp:
3094         (WebView::gestureNotify): Added hit testing here to figure out the node the user started the gesture on.
3095         (WebView::gesture): Switched from emulating mouse wheel events for panning to calling RenderLayer::scrollByRecursively.
3096         * WebView.h:
3097
3098 2009-08-18  Brian Weinstein  <bweinstein@apple.com>
3099
3100         Reviewed by Oliver Hunt.
3101
3102         Fix of <https://bugs.webkit.org/show_bug.cgi?id=28326> DRT on Windows doesn't support 
3103         LayoutTestController::setQuota or print a callback on UIDelegate::exceededDatabaseQuota.
3104         
3105         Added a setQuota interface method to IWebDatabaseManager and implemented it.
3106
3107         * Interfaces/IWebDatabaseManager.idl:
3108         * WebDatabaseManager.cpp:
3109         (WebDatabaseManager::setQuota):
3110         * WebDatabaseManager.h:
3111
3112 2009-08-18  Drew Wilson  <atwilson@google.com>
3113
3114         Unreviewed (build break).
3115
3116         Added missing include for WebWorkersPrivate.h.
3117
3118         * WebKitClassFactory.cpp:
3119
3120 2009-08-18  Peter Kasting  <pkasting@google.com>
3121
3122         Reviewed by Eric Seidel.
3123
3124         https://bugs.webkit.org/show_bug.cgi?id=28415
3125         Set svn:eol-style CRLF on all .sln and .vcproj files that don't already
3126         have it.
3127
3128         * WebKit.vcproj/InterfacesGenerated.vcproj:
3129
3130 2009-08-18  Drew Wilson  <atwilson@google.com>
3131
3132         Reviewed by Eric Seidel.
3133
3134         Need to extend DumpRenderTree to expose number of worker threads
3135         https://bugs.webkit.org/show_bug.cgi?id=28292
3136
3137         Defined/implemented COM interfaces to expose WorkerThread::workerThreadCount() for DumpRenderTree.
3138
3139         * ForEachCoClass.h:
3140         Added WebWorkersPrivate.
3141         * Interfaces/IWebWorkersPrivate.idl: Added.
3142         * Interfaces/WebKit.idl:
3143         Added WebWorkersPrivate.
3144         * WebKit.vcproj/Interfaces.vcproj:
3145         * WebKit.vcproj/WebKit.vcproj:
3146         * WebWorkersPrivate.cpp: Added.
3147         Implementation of the IWebWorkersPrivate COM interface, to expose workerThreadCount() for DumpRenderTree.
3148         (WebWorkersPrivate::QueryInterface):
3149         (WebWorkersPrivate::AddRef):
3150         (WebWorkersPrivate::Release):
3151         (WebWorkersPrivate::workerThreadCount):
3152         (WebWorkersPrivate::createInstance):
3153         (WebWorkersPrivate::WebWorkersPrivate):
3154         (WebWorkersPrivate::~WebWorkersPrivate):
3155         * WebWorkersPrivate.h: Added.
3156
3157 2009-08-17  Peter Kasting  <pkasting@google.com>
3158
3159         Reviewed by Steve Falkenburg.
3160
3161         https://bugs.webkit.org/show_bug.cgi?id=27323
3162         Only add Cygwin to the path when it isn't already there.  This avoids
3163         causing problems for people who purposefully have non-Cygwin versions of
3164         executables like svn in front of the Cygwin ones in their paths.
3165
3166         * WebKit.vcproj/Interfaces.vcproj:
3167         * WebKit.vcproj/InterfacesGenerated.vcproj:
3168         * WebKit.vcproj/WebKit.vcproj:
3169         * WebKit.vcproj/WebKitGUID.vcproj:
3170
3171 2009-08-17  Simon Fraser  <simon.fraser@apple.com>
3172
3173         Speculative fix for Windows build bustage.
3174
3175         * DOMHTMLClasses.cpp:
3176         (DOMHTMLElement::idName):
3177
3178 2009-08-13  Jon Honeycutt  <jhoneycutt@apple.com>
3179
3180         Part of <rdar://problem/6218721> No MSAA focus events fired for Webkit
3181         nightly (20866)
3182
3183         https://bugs.webkit.org/show_bug.cgi?id=20866
3184
3185         Reviewed by Oliver Hunt.
3186
3187         * AccessibleBase.cpp:
3188         (AccessibleBase::getAccessibilityObjectForChild):
3189         If the child ID is negative, negate it and treat it as an AXID.
3190
3191 2009-08-12  Brian Weinstein  <bweinstein@apple.com>
3192
3193         Reviewed by Adam Roben.
3194
3195         Fix of <rdar://6728361> Mouse wheel scrolling on a page with expanded drop down 
3196         list detaches drop down.
3197         
3198         Added a check in mouseWheel to see if our focus is currently in a popup, if so, close
3199         the popup (matches other browser behavior).
3200
3201         * WebView.cpp:
3202         (WebView::mouseWheel):
3203
3204 2009-08-12  Adam Roben  <aroben@apple.com>
3205
3206         Make WebPreferenceKeysPrivate.h available for client use
3207
3208         Reviewed by Dave Hyatt.
3209
3210         Fixes <http://webkit.org/b/28227>.
3211
3212         * WebKit.vcproj/WebKit.vcproj: Copy WebPreferenceKeysPrivate.h to
3213         $WebKitOutputDir, just like we do for a few other headers. Also let VS
3214         reorder some XML attributes.
3215
3216         * WebPreferenceKeysPrivate.h: Touched this file to force a build.
3217
3218 2009-08-11  Adam Roben  <aroben@apple.com>
3219
3220         Remove support for a window resizer within the WebView
3221
3222         Starting with Safari 4, there is never a window resizer inside the
3223         WebView, so we no longer need to support that functionality.
3224
3225         Fixes <http://webkit.org/b/28190> Remove support for a window resizer
3226         within the WebView
3227
3228         Reviewed by Dave Hyatt.
3229
3230         * Interfaces/IWebUIDelegatePrivate.idl: Replaced the delegate
3231         functions related to the window resizer with unused*() functions. We
3232         can't remove them entirely because we need to keep the vtable
3233         unchanged so new versions of WebKit will work with old versions of
3234         Safari (e.g., for nightlies and WebKit development).
3235
3236         * WebCoreSupport/WebChromeClient.cpp:
3237         (WebChromeClient::windowResizerRect): Now always returns an empty
3238         rect.
3239
3240         * WebView.cpp:
3241         (WebView::paint):
3242         (WebView::handleMouseEvent):
3243         * WebView.h:
3244         Removed window-resizer-related code.
3245
3246 2009-08-11  John Gregg  <johnnyg@google.com>
3247
3248         Reviewed by Maciej Stachowiak.
3249
3250         Move the accessor for notifications presenter from WebUIDelegate
3251         to WebUIDelegate2 which extends it.  When making this call from
3252         WebCoreSupport, check using QueryInterface before calling.
3253
3254         https://bugs.webkit.org/show_bug.cgi?id=28198
3255
3256         * Interfaces/IWebUIDelegate.idl:
3257         * Interfaces/IWebUIDelegate2.idl: Added.
3258         * Interfaces/WebKit.idl:
3259         * WebCoreSupport/WebDesktopNotificationsDelegate.cpp:
3260         (WebDesktopNotificationsDelegate::show):
3261         (WebDesktopNotificationsDelegate::cancel):
3262         (WebDesktopNotificationsDelegate::notificationObjectDestroyed):
3263         (WebDesktopNotificationsDelegate::requestPermission):
3264         (WebDesktopNotificationsDelegate::checkPermission):
3265         (WebDesktopNotificationsDelegate::hasNotificationDelegate):
3266         (WebDesktopNotificationsDelegate::notificationDelegate):
3267         * WebCoreSupport/WebDesktopNotificationsDelegate.h:
3268
3269 2009-08-11  Drew Wilson  <atwilson@google.com>
3270
3271         Reviewed by NOBODY (build break).
3272
3273         Speculative Windows build fix - undo previous unnecessary change.
3274
3275         * WebCoreSupport/WebDesktopNotificationsDelegate.h:
3276
3277 2009-08-11  Brian Weinstein  <bweinstein@apple.com>
3278
3279         Reviewed by Steve Falkenburg.
3280
3281         Refactored MIMETypeforExtension to be a member of IWebViewPrivate
3282         instead of IWebView.
3283
3284         * Interfaces/IWebView.idl:
3285         * Interfaces/IWebViewPrivate.idl:
3286         * WebView.cpp:
3287         (WebView::MIMETypeForExtension):
3288         * WebView.h:
3289
3290 2009-08-11  Drew Wilson <atwilson@google.com>
3291
3292         Reviewed by NOBODY (build break)
3293
3294         Speculative fix for windows build break.
3295
3296         * WebKitSupport/WebDesktopNotificationsDelegate.h:
3297         WebCore/Notification*.h => WebCore/notifications/Notification*.h
3298
3299 2009-08-11  John Gregg  <johnnyg@google.com>
3300
3301         Reviewed by Maciej Stachowiak.
3302
3303         Desktop Notifications API
3304         https://bugs.webkit.org/show_bug.cgi?id=25643
3305
3306         Adds test hooks for notification features to WebCoreSupport for
3307         use in DumpRenderTree.
3308
3309         * Interfaces/IWebDesktopNotificationsDelegate.idl: Added.
3310         * Interfaces/IWebUIDelegate.idl:
3311         * Interfaces/WebKit.idl:
3312         * WebCoreSupport/WebChromeClient.cpp:
3313         (WebChromeClient::WebChromeClient):
3314         * WebCoreSupport/WebChromeClient.h:
3315         (WebChromeClient::notificationPresenter):
3316         * WebCoreSupport/WebDesktopNotificationsDelegate.cpp: Added.
3317         (NotificationCOMWrapper::create):
3318         (NotificationCOMWrapper::NotificationCOMWrapper):
3319         (NotificationCOMWrapper::QueryInterface):
3320         (NotificationCOMWrapper::AddRef):
3321         (NotificationCOMWrapper::Release):
3322         (NotificationCOMWrapper::isHTML):
3323         (NotificationCOMWrapper::contentsURL):
3324         (NotificationCOMWrapper::iconURL):
3325         (NotificationCOMWrapper::title):
3326         (NotificationCOMWrapper::text):
3327         (NotificationCOMWrapper::notifyDisplay):
3328         (NotificationCOMWrapper::notifyError):
3329         (NotificationCOMWrapper::notifyClose):
3330         (WebDesktopNotificationsDelegate::WebDesktopNotificationsDelegate):
3331         (WebDesktopNotificationsDelegate::show):
3332         (WebDesktopNotificationsDelegate::cancel):
3333         (WebDesktopNotificationsDelegate::notificationObjectDestroyed):
3334         (WebDesktopNotificationsDelegate::requestPermission):
3335         (WebDesktopNotificationsDelegate::checkPermission):
3336         (WebDesktopNotificationsDelegate::notificationDelegate):
3337         * WebCoreSupport/WebDesktopNotificationsDelegate.h: Added.
3338         * WebCoreSupport/WebInspectorDelegate.h:
3339         (WebInspectorDelegate::desktopNotificationsDelegate):
3340         * WebKit.vcproj/Interfaces.vcproj:
3341         * WebKit.vcproj/WebKit.vcproj:
3342
3343 2009-08-11  Brian Weinstein  <bweinstein@apple.com>
3344
3345         Reviewed by Adam Roben.
3346
3347         Fix of <rdar://5016504> SVG file cannot be dragged to webview,
3348         but can be opened via Open File.
3349         
3350         Added a new function to IWebView that gets the MIME type for a given 
3351         extension from the MIMETypeRegistry.
3352
3353         * Interfaces/IWebView.idl:
3354         * WebView.cpp:
3355         (WebView::MIMETypeForExtension):
3356         * WebView.h:
3357
3358 2009-08-11  Dmitry Titov <dimich@chromium.org>
3359
3360         Reviewed by Adam Roben.
3361
3362         Originally implemented by Glenn Wilson  <gwilson@chromium.org>.
3363
3364         Added support for overriding default preferences per-test.
3365         See https://bugs.webkit.org/show_bug.cgi?id=20534
3366
3367         * Interfaces/IWebPreferencesPrivate.idl: added new method setPreferenceForTest
3368         * WebPreferences.cpp: same.
3369         * WebPreferences.h: same.
3370
3371 2009-08-10  Dan Bernstein  <mitz@apple.com>
3372
3373         Reviewed by Darin Adler.
3374
3375         Link drag images specify Lucida Grande on Windows and end up using Times
3376         New Roman
3377         <rdar://problem/7117835>
3378
3379         * WebCoreSupport/WebDragClient.cpp:
3380         (dragLabelFont): Added a RenderingMode parameter and changed to use the
3381             same typeface as the Windows small caption font.
3382         (WebDragClient::createDragImageForLink): Changed to respect the
3383             page’s rendering mode.
3384
3385 2009-08-10  Brent Fulgham  <bfulgham@webkit.org>
3386
3387         Reviewed by Adam Roben.
3388
3389         https://bugs.webkit.org/show_bug.cgi?id=28048.
3390         Move various WinCairo build settings into *.vsprops file.
3391
3392         * WebKit.vcproj/WebKit.vcproj: Add new cURL.vsprops property sheet
3393           (which contains link settings for cURL and its dependencies), and
3394           remove the corresponding entries from the vcproj file.  Remove
3395           png, jpeg, cairo library linking flags from vcproj, now that they
3396           are in the WinCairo.vsprops file.
3397
3398 2009-08-09  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
3399
3400         Reviewed by George Staikos.
3401
3402         [WML] Deck access control is completly broken
3403         https://bugs.webkit.org/show_bug.cgi?id=27721
3404
3405         Synchronize WebFrameLoadType with FrameLoadType enum. Append 'WebFrameLoadTypeBackWMLDeckNotAccessible'.
3406
3407         * Interfaces/IWebFramePrivate.idl:
3408
3409 2009-08-09  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
3410
3411         Reviewed by Maciej Stachowiak.
3412
3413         FrameLoadType / WebFrameLoadType enums are out of sync
3414         https://bugs.webkit.org/show_bug.cgi?id=28132
3415
3416         Synchronize FrameLoadType <-> WebFrameLoadType enums (append missing 'WebFrameLoadTypeReloadFromOrigin' value)
3417
3418         * Interfaces/IWebFramePrivate.idl:
3419
3420 2009-08-06  Adam Barth  <abarth@webkit.org>
3421
3422         Unreviewed revert.
3423
3424         http://bugs.webkit.org/show_bug.cgi?id=27879
3425
3426         Revert 46877 because it broke GTK.
3427
3428         * COMPropertyBag.h:
3429
3430 2009-08-06  Zoltan Horvath  <hzoltan@inf.u-szeged.hu>
3431
3432         Reviewed by Adam Barth.
3433
3434         Change Noncopyable inheriting to public
3435         http://bugs.webkit.org/show_bug.cgi?id=27879
3436
3437         Since Noncopyable is inherited from FastAllocBase,
3438         Noncopyable's inheriting has been changed to public.
3439
3440         * COMPropertyBag.h:
3441
3442 2009-08-04  Alice Liu  <alice.liu@apple.com>
3443
3444         "Shift + Enter" should behave like "Enter" in editable fields.
3445         Affects backward search in find-in-page in Safari for Windows
3446
3447         Reviewed by Jon Honeycutt.
3448
3449         * WebView.cpp:
3450         Register shift+enter as InsertNewline command, similar to other 
3451         modifier+Enter combinations.
3452
3453 2009-07-29  Jon Honeycutt  <jhoneycutt@apple.com>
3454
3455         Part of <rdar://problem/5698113> Safari shouldn't auto-activate
3456         plug-ins in background tabs (make Win consistent with Mac)
3457
3458         https://bugs.webkit.org/show_bug.cgi?id=27855
3459
3460         Reviewed by Adam Roben and Anders Carlsson.
3461
3462         * Interfaces/IWebViewPrivate.idl:
3463         Add setCanStartPlugins().
3464
3465         * WebCoreSupport/WebFrameLoaderClient.cpp:
3466         (WebFrameLoaderClient::dispatchDidFailToStartPlugin):
3467         Added; code moved from createPlugin(). Modified to obtain the plug-in's
3468         page URL, the plug-ins "plug-ins page" parameter value, and the
3469         plug-in's MIME type by calling getter functions on the passed
3470         PluginView.
3471         (WebFrameLoaderClient::createPlugin):
3472         If the plug-in status is not "success," call
3473         dispatchDidFailToStartPlugin().
3474
3475         * WebCoreSupport/WebFrameLoaderClient.h:
3476         Declare an override of dispatchDidFailToStartPlugin().
3477
3478         * WebView.cpp:
3479         (WebViewWndProc):
3480         Add a missing ) to a comment.
3481         (WebView::setCanStartPlugins):
3482         Call the Page's setCanStartPlugins() function.
3483
3484         * WebView.h:
3485
3486 2009-07-30  Darin Adler  <darin@apple.com>
3487
3488         Reviewed by David Levin.
3489
3490         Use checked casts for render tree
3491         https://bugs.webkit.org/show_bug.cgi?id=23522
3492
3493         * DOMHTMLClasses.cpp:
3494         (DOMHTMLInputElement::isUserEdited):
3495         (DOMHTMLTextAreaElement::isUserEdited):
3496         Use checked casts.
3497
3498 2009-07-31  Anders Carlsson  <andersca@apple.com>
3499
3500         Reviewed by Dan Bernstein.
3501
3502         -Fix <rdar://problem/7104097>
3503
3504         Make EmbeddedWidget::create return a PassRefPtr so it will have the correct ref count.
3505         
3506         * WebCoreSupport/EmbeddedWidget.cpp:
3507         (EmbeddedWidget::create):
3508         * WebCoreSupport/EmbeddedWidget.h:
3509
3510 2009-07-29  Brian Weinstein  <bweinstein@apple.com>
3511
3512         Was doing the build fix wrong, NotImplemented.h is in WebCore.
3513
3514         * WebCoreSupport/WebInspectorClient.cpp:
3515
3516 2009-07-29  Brian Weinstein  <bweinstein@apple.com>
3517
3518         Windows build fix.
3519
3520         * WebCoreSupport/WebInspectorClient.cpp:
3521
3522 2009-07-29  Kevin McCullough  <kmccullough@apple.com>
3523
3524         Reviewed by Darin Adler.
3525
3526         Added foundation work to allow a testing infrastructure for the Web
3527         Inspector.
3528
3529         * WebCoreSupport/WebInspectorClient.cpp:
3530         (WebInspectorClient::inspectorWindowObjectCleared): Empty definition
3531         to let Windows compile but we should implement this at some point so
3532         that the tests can be run on Windows too.
3533         * WebCoreSupport/WebInspectorClient.h:
3534
3535 2009-07-28  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3536
3537         Reviewed by Steve Falkenburg.
3538
3539         Add output directory for VS pre-build steps to enable out-of-tree builds
3540
3541         https://bugs.webkit.org/show_bug.cgi?id=27700
3542
3543         The tmp.obj file is now placed in the intermediate build directory.
3544
3545         * WebKit.vcproj/WebKit.vcproj:
3546
3547 2009-07-27  Brian Weinstein  <bweinstein@apple.com>
3548
3549         Build fix for Windows.
3550
3551         * WebView.cpp:
3552         (WebView::stringByEvaluatingJavaScriptFromString):
3553
3554 2009-07-27  Alexey Proskuryakov  <ap@webkit.org>
3555
3556         Reviewed by Darin Adler.
3557
3558         https://bugs.webkit.org/show_bug.cgi?id=27735
3559         Give a helpful name to JSLock constructor argument
3560
3561         * WebCoreStatistics.cpp:
3562         (WebCoreStatistics::javaScriptObjectsCount):
3563         (WebCoreStatistics::javaScriptGlobalObjectsCount):
3564         (WebCoreStatistics::javaScriptProtectedObjectsCount):
3565         (WebCoreStatistics::javaScriptProtectedGlobalObjectsCount):
3566         (WebCoreStatistics::javaScriptProtectedObjectTypeCounts):
3567         * WebJavaScriptCollector.cpp:
3568         (WebJavaScriptCollector::objectCount):
3569         * WebView.cpp:
3570         (WebView::stringByEvaluatingJavaScriptFromString):
3571
3572 2009-07-25  Kwang Yul Seo  <skyul@company100.net>
3573
3574         Reviewed by Darin Adler.
3575
3576         Windows build break due to warning C4819
3577         https://bugs.webkit.org/show_bug.cgi?id=27416
3578
3579         Disable C4819 warning to fix build.
3580
3581         * WebKit.vcproj/WebKit.vcproj:
3582
3583 2009-07-24  Brent Fulgham  <bfulgham@webkit.org>
3584
3585         Reviewed by Dave Hyatt.
3586
3587         Clean up dependencies on Apple support libraries for non-Apple build.
3588         http://bugs.webkit.org/show_bug.cgi?id=27532.
3589
3590         * DefaultDownloadDelegate.h: Conditionalize include of CFNetwork.h
3591         * WebDownload.h: Conditionalize include of CFNetwork.h
3592         * WebMutableURLRequest.cpp: Conditionalize include of CFNetwork.h
3593
3594 2009-07-24  Andrei Popescu  <andreip@google.com>
3595
3596         Reviewed by Anders Carlsson.
3597
3598         ApplicationCache should have size limit
3599         https://bugs.webkit.org/show_bug.cgi?id=22700
3600
3601         * WebCoreSupport/WebChromeClient.cpp:
3602         (WebChromeClient::reachedMaxAppCacheSize):
3603         Adds empty implementation of the reachedMaxAppCacheSize callback.
3604         * WebCoreSupport/WebChromeClient.h:
3605
3606 2009-07-23  Brady Eidson  <beidson@apple.com>
3607
3608         Reviewed by Geoff Garen.
3609
3610         WebFrameLoaderClient on Windows doesn't gracefully handle a null request returned from willSendRequest.
3611         https://bugs.webkit.org/show_bug.cgi?id=27595
3612
3613         * WebCoreSupport/WebFrameLoaderClient.cpp:
3614         (WebFrameLoaderClient::dispatchWillSendRequest):
3615
3616 2009-07-22  Takeshi Yoshino  <tyoshino@google.com>
3617
3618         Reviewed by Darin Adler.
3619
3620         VC++ 2005 Express failed to build WebKit due to raw UTF-8 string in WebKit/win/WebCoreLocalizedStrings.cpp
3621         https://bugs.webkit.org/show_bug.cgi?id=26375
3622
3623         Replace a multiplication sign (U+00D7) encoded in UTF-8 (0xC3 0x97) in WebCoreLocalizedStrings.cpp
3624         with hex escape sequences.
3625
3626         VC2005 failed to build due to this raw UTF-8 data in source code. Here's the warning message (
3627         treated as an error and stopped build).
3628
3629         WebCoreLocalizedStrings.cpp : warning C4819: The file contains a character that cannot be
3630         represented in the current code page (932). Save the file in Unicode format to prevent data loss
3631
3632         A change on WebKitTools/Scripts/extract-localizable-strings is attached to this change not to break
3633         localized string generation process.
3634
3635         * WebCoreLocalizedStrings.cpp:
3636         (WebCore::imageTitle):
3637
3638 2009-07-21  Roland Steiner  <rolandsteiner@google.com>
3639
3640         Reviewed by David Levin.
3641
3642         Add ENABLE_RUBY to list of build options
3643         https://bugs.webkit.org/show_bug.cgi?id=27324
3644
3645         * WebKit.vcproj/WebKit.vcproj: Added flag ENABLE_RUBY.
3646
3647 2009-07-20  Peter Kasting  <pkasting@google.com>
3648
3649         Reviewed by Mark Rowe.
3650
3651         https://bugs.webkit.org/show_bug.cgi?id=27468
3652         Back out r46060, which caused problems for some Apple developers.
3653
3654         * WebKit.vcproj/Interfaces.vcproj:
3655         * WebKit.vcproj/InterfacesGenerated.vcproj:
3656         * WebKit.vcproj/WebKit.vcproj:
3657         * WebKit.vcproj/WebKitGUID.vcproj:
3658
3659 2009-07-17  Brian Weinstein  <bweinstein@apple.com>
3660
3661         Reviewed by Adam Roben.
3662
3663         Fix of <rdar://problem/5712795> Win: Cannot change the height of the docked Web Inspector (14272)
3664         https://bugs.webkit.org/show_bug.cgi?id=14272
3665         
3666         Implemented resizing of inspector window when it is in attached mode. Implemented setAttachedWindowHeight
3667         to set window sizes and redraw the inspector and the inspected web view, and used stored preferences
3668         in InspectorController.cpp to remember user's preferred height.
3669
3670         * WebCoreSupport/WebInspectorClient.cpp:
3671
3672 2009-07-17  Peter Kasting  <pkasting@google.com>
3673
3674         Reviewed by Steve Falkenburg.
3675
3676         https://bugs.webkit.org/show_bug.cgi?id=27323
3677         Only add Cygwin to the path when it isn't already there.  This avoids
3678         causing problems for people who purposefully have non-Cygwin versions of
3679         executables like svn in front of the Cygwin ones in their paths.
3680
3681         * WebKit.vcproj/Interfaces.vcproj:
3682         * WebKit.vcproj/InterfacesGenerated.vcproj:
3683         * WebKit.vcproj/WebKit.vcproj:
3684         * WebKit.vcproj/WebKitGUID.vcproj:
3685
3686 2009-07-16  Fumitoshi Ukai  <ukai@chromium.org>
3687
3688         Reviewed by David Levin.
3689
3690         Add --web-sockets flag and ENABLE_WEB_SOCKETS define.
3691         https://bugs.webkit.org/show_bug.cgi?id=27206
3692         
3693         Add ENABLE_WEB_SOCKETS
3694
3695         * WebKit.vcproj/WebKit.vcproj: add ENABLE_WEB_SOCKETS
3696
3697 2009-07-16  Xiaomei Ji  <xji@chromium.org>
3698
3699         Reviewed by Darin Adler.
3700
3701         Fix tooltip does not get its directionality from its element's directionality.
3702         https://bugs.webkit.org/show_bug.cgi?id=24187
3703
3704         Per mitz's suggestion in comment #6, while getting the plain-text 
3705         title, we also get the directionality of the title. How to handle 
3706         the directionality is up to clients. Clients could ignore it, 
3707         or use attribute or unicode control characters to display the title
3708         as what they want.
3709
3710         * WebCoreSupport/WebChromeClient.cpp:
3711         (WebChromeClient::setToolTip): Add directionality as 2nd parameter to setToopTip() (without handling it yet).
3712         * WebCoreSupport/WebChromeClient.h: Add directionality as 2nd parameter to setToolTip().
3713         * WebElementPropertyBag.cpp:
3714         (WebElementPropertyBag::Read): Change call of spellingToolTip() and title() due to signature change.
3715
3716 2009-07-15  Darin Adler  <darin@apple.com>
3717
3718         Reviewed by Sam Weinig.
3719
3720         Renamed parseURL to deprecatedParseURL.
3721
3722         * WebCoreSupport/WebFrameLoaderClient.cpp:
3723         (WebFrameLoaderClient::createPlugin): Renamed.
3724
3725 2009-07-14  Steve Falkenburg  <sfalken@apple.com>
3726
3727         Reorganize JavaScriptCore headers into:
3728         API: include/JavaScriptCore/
3729         Private: include/private/JavaScriptCore/
3730
3731         Reviewed by Darin Adler.
3732
3733         * WebKit.vcproj/WebKit.vcproj:
3734
3735 2009-07-14  Zoltan Horvath  <hzoltan@inf.u-szeged.hu>
3736
3737         Reviewed by Darin Adler.
3738
3739         Change all Noncopyable inheriting visibility to public.
3740         https://bugs.webkit.org/show_bug.cgi?id=27225
3741
3742         Change all Noncopyable inheriting visibility to public because
3743         it is needed to the custom allocation framework (bug #20422).
3744
3745         * COMEnumVariant.h:
3746         * WebDatabaseManager.cpp:
3747         * WebInspector.h:
3748         * WebLocalizableStrings.cpp:
3749
3750 2009-07-13  Brent Fulgham  <bfulgham@webkit.org>
3751
3752         Reviewed by Adam Roben.
3753
3754         Refactor WebFrame::spoolPages for easier sharing with Windows Cairo.
3755         https://bugs.webkit.org/show_bug.cgi?id=27240.
3756
3757         * WebFrame.cpp:
3758         (WebFrame::printHeader): New shared method to print the header.
3759         (WebFrame::printFooter): New shared method to print the footer.
3760         (WebFrame::spoolPage): New conditionally-compiled method to print
3761          a page.
3762         (WebFrame::spoolPages): Revised to call the platform-specific spoolPage
3763          for each page.
3764         * WebFrame.h: Add new method prototypes.
3765
3766 2009-07-13  Brent Fulgham  <bfulgham@webkit.org>
3767
3768         Reviewed by Adam Roben.
3769
3770         Add new configuration flag for redistributable Windows build.
3771         https://bugs.webkit.org/show_bug.cgi=27087
3772
3773         * WebKit.vcproj/WebKit.vcproj: Add new WinCairo.vsprops to
3774           Debug_Cairo and Release_Cairo targets.
3775
3776 2009-07-12  Brent Fulgham  <bfulgham@gmail.com>
3777
3778         Speculative Windows build fix after http://trac.webkit.org/changeset/45786.
3779
3780         * WebCoreSupport/WebChromeClient.cpp:
3781         (WebChromeClient::addMessageToConsole):
3782
3783 2009-07-10  Adam Barth  <abarth@webkit.org>
3784
3785         Reviewed by Sam Weinig with the power of Grayskull.
3786
3787         Enable XSSAuditor by default.
3788
3789         * WebPreferences.cpp:
3790         (WebPreferences::initializeDefaultSettings):
3791
3792 2009-07-09  Drew Wilson  <atwilson@google.com>
3793
3794         Reviewed by Alexey Proskuryakov.
3795
3796         https://bugs.webkit.org/show_bug.cgi?id=26903
3797
3798         Turned on CHANNEL_MESSAGING by default because the MessageChannel API
3799         can now be implemented for Web Workers and is reasonably stable.
3800
3801        * WebKit.vcproj/WebKit.vcproj:
3802
3803 2009-07-09  Brian Weinstein  <bweinstein@apple.com>
3804
3805         Reviewed by Alice Liu.
3806
3807         Fix of <rdar://5712929> Add preferences key to remember if the Inspector was docked (14271)
3808         https://bugs.webkit.org/show_bug.cgi?id=27140
3809
3810         Added a preference key to remember whether the user prefers the inspector detached or attached.
3811
3812         * WebCoreSupport/WebInspectorClient.cpp:
3813         (WebInspectorClient::showWindow): Pass both parameters into setWindowVisible
3814         (WebInspectorClient::closeWindow): Ditto
3815         (WebInspectorClient::attachWindow): Set preference to attached windows here
3816         (WebInspectorClient::detachWindow): Set preference to detached windows here
3817         (WebInspectorClient::showWindowWithoutNotifications): Read preference for attached vs. detached
3818         (WebInspectorClient::onClose): Pass both parameters into setWindowVisible
3819
3820 2009-07-09  Alexey Proskuryakov  <ap@webkit.org>
3821
3822         Reviewed by Oliver Hunt.
3823
3824         <rdar://problem/6921671> Visit count shouldn't be incremented by redirects.
3825
3826         * WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::updateGlobalHistory):
3827         Do not increase visit count if there is a redirect source. As a result, only pages that were
3828         explicitly visited by the user (by typing a URL, choosing one from bookmarks, or clicking
3829         a link) will be counted.
3830
3831         * Interfaces/IWebHistoryItemPrivate.idl:
3832         * WebHistory.cpp:
3833         (WebHistory::visitedURL):
3834         * WebHistory.h:
3835         * WebHistoryItem.cpp:
3836         (WebHistoryItem::visitedWithTitle):
3837         * WebHistoryItem.h:
3838         Marshal this new argument all the way down to WebCore.
3839
3840 2009-07-09  Beth Dakin and Jon Honeycutt <bdakin@apple.com>
3841
3842         Reviewed by Dave Hyatt.
3843
3844         Make Widget RefCounted to fix:
3845
3846         <rdar://problem/7038831> REGRESSION (TOT): In Mail, a crash occurs 
3847         at WebCore::Widget::afterMouseDown() after clicking To Do's close 
3848         box
3849         <rdar://problem/6978804> WER #16: Repro Access Violation in 
3850         WebCore::PluginView::bindingInstance (1310178023)
3851         -and-
3852         <rdar://problem/6991251> WER #13: Crash in WebKit!
3853         WebCore::PluginView::performRequest+203 (1311461169) 
3854
3855         * WebCoreSupport/WebFrameLoaderClient.cpp:
3856         (WebFrameLoaderClient::createPlugin):
3857         * WebCoreSupport/WebFrameLoaderClient.h:
3858         * WebFrame.cpp:
3859         (WebFrame::createJavaAppletWidget):
3860         * WebFrame.h:
3861
3862 2009-07-09  Sam Weinig  <sam@webkit.org>
3863
3864         Reviewed by Steve Falkenburg.
3865
3866         Roll out r43848. The quirk is no longer necessary.
3867
3868         * WebView.cpp:
3869         (WebView::userAgentForKURL):
3870
3871 2009-07-07  Ada Chan  <adachan@apple.com>
3872
3873         Reviewed by Dave Hyatt.
3874
3875         Missed a call to FocusController::setFocused(true) when handling WM_SETFOCUS in WebView.
3876         https://bugs.webkit.org/show_bug.cgi?id=27057
3877
3878         * WebView.cpp:
3879         (WebViewWndProc):
3880
3881 2009-07-02  Erik Arvidsson  <arv@chromium.org>
3882
3883         Reviewed by Adam Roben.
3884
3885         [Win] HTML5 Drag and drop, dragend is not fired when pressing Esc
3886         https://bugs.webkit.org/show_bug.cgi?id=26699
3887
3888         * WebDropSource.cpp:
3889         (WebDropSource::QueryContinueDrag):
3890
3891 2009-07-02  Oliver Hunt  <oliver@apple.com>
3892
3893         Reviewed by Anders Carlsson.
3894
3895         <rdar://problem/6939593> REGRESSION (r37793): Hitting back button on Google often gives non-interactive Google page (26670)
3896         <https://bugs.webkit.org/show_bug.cgi?id=26670>
3897
3898         Make windows loader client match mac behaviour more closely.
3899
3900         * WebCoreSupport/WebFrameLoaderClient.cpp:
3901         (WebFrameLoaderClient::forceLayout):
3902
3903 2009-06-30  Brent Fulgham  <bfulgham@gmail.com>
3904
3905         Reviewed by Adam Roben.
3906
3907         Build DumpRenderTree under Cairo.
3908         https://bugs.webkit.org/show_bug.cgi?id=26457
3909
3910         * WebKit.vcproj/WebKit.sln: Add Cairo targets to the
3911           DumpRenderTree build, and use the in the Debug_Cairo
3912           and Release_Cairo targets.
3913
3914 2009-07-02  Eric Carlson  <eric.carlson@apple.com>
3915
3916         Fix Windows build by including missing localized string methods.
3917
3918         * WebCoreLocalizedStrings.cpp:
3919         (WebCore::mediaElementLoadingStateText):
3920         (WebCore::mediaElementLiveBroadcastStateText):
3921
3922 2009-07-01  David Hyatt  <hyatt@apple.com>
3923
3924         Reviewed by Tim Hatcher.
3925
3926         <rdar://problem/6998524> REGRESSION (r44474): Form text field has focus ring, looks focused,
3927         even though the field is not actually focused for keyboard input
3928         
3929         Add the concept of whether or not the Page is focused by adding a boolean to the focusController.  This allows the
3930         focused frame and focused node to both be cached and changed programmatically without causing errors when the Page doesn't
3931         have focus.
3932
3933         * WebView.cpp:
3934         (WebViewWndProc):
3935
3936 2009-06-29  David Hyatt  <hyatt@apple.com>
3937
3938         Fix Windows bustage.  Missed two configurations for enabling DATAGRID.
3939
3940         * WebKit.vcproj/WebKit.vcproj:
3941
3942 2009-06-29  Jessie Berlin  <jberlin@apple.com>
3943
3944         Reviewed by Adam Roben.
3945         
3946         Fix the windows build.
3947
3948         * WebCoreSupport/WebContextMenuClient.cpp:
3949         (WebContextMenuClient::isSpeaking):
3950         * WebCoreSupport/WebContextMenuClient.h:
3951
3952 2009-06-29  David Hyatt  <hyatt@apple.com>
3953
3954         Reviewed by Adam Roben.
3955
3956         Make sure to patch all configurations to have datagrid enabled.
3957
3958         * WebKit.vcproj/WebKit.vcproj:
3959
3960 2009-06-29  David Hyatt  <hyatt@apple.com>
3961
3962         Reviewed by Adam Roben.
3963
3964         Put <datagrid> behind an ifdef.
3965
3966         * WebKit.vcproj/WebKit.vcproj:
3967
3968 2009-06-26  Brian Weinstein  <bweinstein@apple.com>
3969
3970         Reviewed by Simon Fraser.
3971
3972         https://bugs.webkit.org/show_bug.cgi?id=26695
3973
3974         Added hit testing on scrollbars, so if you start a gesture over a scrollbar,
3975         it isn't counted, and lets the user drag the scrollbar itself instead of a
3976         panning gesture. Also cleaned up code in gesture.
3977
3978         * WebView.cpp:
3979         (WebView::gestureNotify):
3980         (WebView::gesture):
3981
3982 2009-06-26  Jeremy Orlow  <jorlow@chromium.org>
3983
3984         Reviewed by Adam Barth.
3985
3986         https://bugs.webkit.org/show_bug.cgi?id=26767
3987
3988         Fix a build break due to LocalStorage.h being included in WebKitDLL.cpp
3989         despite it being deleted from the repo by the following patch/commit:
3990         https://bugs.webkit.org/show_bug.cgi?id=26732
3991         http://trac.webkit.org/changeset/45290
3992
3993         * WebKitDLL.cpp:
3994
3995 2009-06-26  Yongjun Zhang  <yongjun.zhang@nokia.com>
3996
3997         Reviewed by Eric Seidel.
3998
3999         Bug 20303: [Qt] Key events are not working in frames.
4000
4001         Move the scroll handling code to EventHandler so that other
4002         ports can share the functionality.
4003
4004         * WebView.cpp:
4005         (WebView::keyDown):
4006         (EnumTextMatches::QueryInterface):
4007
4008 2009-06-23  Anders Carlsson  <andersca@apple.com>
4009
4010         Reviewed by Darin Adler.
4011
4012         WebKit side of <rdar://problem/6946094>.
4013
4014         * Interfaces/IWebUIDelegate.idl:
4015         Add a newPasteboard out parameter to willPerformDragSourceAction.
4016         
4017         * WebCoreSupport/WebDragClient.cpp:
4018         (WebDragClient::willPerformDragSourceAction):
4019         Implement this. If the client returns a new pasteboard, use it for the drag.
4020         
4021         * WebCoreSupport/WebInspectorDelegate.h:
4022         (WebInspectorDelegate::willPerformDragSourceAction):
4023         Add the new parameter.
4024
4025 2009-06-20  Darin Adler  <darin@apple.com>
4026
4027         Reviewed by Sam Weinig.
4028
4029         <rdar://problem/6964221> Need more processing of pluginspage.
4030
4031         * WebCoreSupport/WebFrameLoaderClient.cpp:
4032         (WebFrameLoaderClient::createPlugin): Check protocolInHTTPFamily.
4033
4034 2009-06-19  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
4035
4036         Reviewed by Steve Falkenburg.
4037
4038         https://bugs.webkit.org/show_bug.cgi?id=26494
4039         Bug 26494: RenderTheme::themeForPage reads from Settings before it has
4040         been initialized by WebKit
4041
4042         Get the shouldPaintNativeControls preference and update the settings
4043         before initializing the page, as the page depends on it after the
4044         themeForPage change.
4045
4046         * WebView.cpp:
4047         (WebView::initWithFrame):
4048
4049 2009-06-19  Brian Weinstein  <bweinstein@apple.com>
4050
4051         Reviewed by Steve Falkenburg.
4052         
4053         https://bugs.webkit.org/show_bug.cgi?id=26488
4054         No Support for Single Finger or Two Finger Panning in Windows 7
4055         
4056         Added the code necessary for single finger and two-finger panning with
4057         window bounce. We now register for WM_GESTURENOTIFY and WM_GESTURE messages,
4058         and interpret the panning command. Also, added WindowsTouch.h which contains 
4059         structs and #defines from the Windows 7 SDK.
4060
4061         * WebKit.vcproj/WebKit.vcproj:
4062         * WebView.cpp:
4063         (WebView::gestureNotify): Checks if we are in a pannable region - IE: Not in the scrollbar
4064         (WebView::gesture): Handles the Panning gesture, creating the WheelEvent
4065         (WebViewWndProc): Added cases for WM_GESTURE and WM_GESTURENOTIFY
4066         * WebView.h:
4067         * WindowsTouch.h: Added.
4068         
4069 2009-06-18  Adam Barth  <abarth@webkit.org>
4070
4071         Reviewed by Sam Weinig.
4072
4073         https://bugs.webkit.org/show_bug.cgi?id=26199
4074
4075         Added preference to enable the XSSAuditor.
4076
4077         * Interfaces/IWebPreferencesPrivate.idl:
4078         * WebPreferenceKeysPrivate.h:
4079         * WebPreferences.cpp:
4080         (WebPreferences::initializeDefaultSettings):
4081         (WebPreferences::isXSSAuditorEnabled):
4082         (WebPreferences::setXSSAuditorEnabled):
4083         * WebPreferences.h:
4084         * WebView.cpp:
4085         (WebView::notifyPreferencesChanged):
4086
4087 2009-06-18  Brent Fulgham  <bfulgham@gmail.com>
4088
4089         Reviewed by Dave Levin.
4090
4091         Remove some boilerplate using the BitmapInfo struct.
4092         https://bugs.webkit.org/show_bug.cgi?id=26425
4093
4094         * WebFrame.cpp:
4095         (WebFrame::spoolPages):
4096         * WebIconDatabase.cpp:
4097         (createDIB):
4098         * WebKit.vcproj/WebKit.sln:
4099         * WebNodeHighlight.cpp:
4100         (WebNodeHighlight::update):
4101         * WebView.cpp:
4102         (WebView::ensureBackingStore):
4103
4104 2009-06-17  Steve Falkenburg  <sfalken@apple.com>
4105
4106         Consolidate WebKit COM interfaces.
4107         Moved IID from the highest numbered COM interface to the first interface and combined all methods.
4108
4109         Numbered interfaces can be combined since the latest shipping Safari 4 supports the latest interfaces.
4110         
4111         Reviewed by Adam Roben.
4112
4113         * Interfaces/IWebFrameLoadDelegate.idl:
4114         * Interfaces/IWebFrameLoadDelegatePrivate.idl:
4115         * Interfaces/IWebResourceLoadDelegatePrivate.idl:
4116         * Interfaces/IWebUIDelegate.idl:
4117         * Interfaces/IWebUIDelegatePrivate.idl:
4118         * Interfaces/WebKit.idl:
4119         * WebCoreSupport/WebChromeClient.cpp:
4120         * WebCoreSupport/WebChromeClient.h:
4121         * WebCoreSupport/WebContextMenuClient.cpp:
4122         * WebCoreSupport/WebFrameLoaderClient.cpp:
4123         * WebCoreSupport/WebInspectorDelegate.h:
4124         * WebFrame.cpp:
4125         * WebView.cpp:
4126
4127 2009-06-16  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
4128
4129         Reviewed by Adam Roben.
4130
4131         Create a different RenderTheme per page, so that RenderTheme has
4132         access to page specific theming. This is needed for the Qt port, as Qt
4133         supports setting the theme (style) per widget.
4134
4135         This change was suggested and discussed with Dave Hyatt.
4136
4137         More detailed:
4138
4139         1) Create a theme per page or one global one, depending on the needs
4140            of the platform.
4141         2) Add an accesser to the theme from RenderObject.
4142         3) Change all uses of the theming to access the theme through
4143            RenderObject, using the global default theme as fallback, when the
4144            document of RenderObject has no page.
4145            When we don't have access to a RenderObject, use the default theme.
4146         4) Modify all RenderTheme platform implementations to work with the
4147            above changes, still creating only one global theme.
4148
4149         * WebView.cpp:
4150         (WebViewWndProc): Get the theme from the associated page.
4151
4152 2009-06-16  Brian Weinstein  <bweinstein@apple.com>
4153
4154         Reviewed by Adam Roben.
4155         
4156         Switch Control+Mousewheel Zooming definitions to match other browsers on Windows.
4157         Control+Mousewheel-Down now zooms out, Control+Mousewheel-Up now zooms in.
4158         https://bugs.webkit.org/show_bug.cgi?id=25875.
4159         <rdar://problem/6903976>
4160
4161         * WebView.cpp:
4162         (WebView::mouseWheel):
4163
4164 2009-06-16  Brent Fulgham  <bfulgham@gmail.com>
4165
4166         Reviewed by Darin Adler.
4167
4168         Use consistent Windows GUID Comparison Functions.
4169         https://bugs.webkit.org/show_bug.cgi?id=26427.
4170
4171         * WebView.cpp:
4172         (EnumTextMatches::QueryInterface):
4173
4174 == Rolled over to ChangeLog-2009-06-16 ==