1 2008-01-15 Steve Falkenburg <sfalken@apple.com>
3 <rdar://problem/5663888> Cannot type into a JavaScript prompt created from a timer
5 Allow nested timers from javascript prompts to allow for WebView-based edit fields.
10 (WebChromeClient::runJavaScriptPrompt):
12 2008-01-14 Steve Falkenburg <sfalken@apple.com>
14 Use shared vsprops for most vcproj properties.
18 * WebKit.vcproj/Interfaces.vcproj:
19 * WebKit.vcproj/WebKit.vcproj:
20 * WebKit.vcproj/WebKitGUID.vcproj: Add missing Debug_Internal config.
22 2008-01-11 Steve Falkenburg <sfalken@apple.com>
24 Share common files across projects.
27 Debug: common.vsprops, debug.vsprops
28 Debug_Internal: common.vsprops, debug.vsprops, debug_internal.vsprops
29 Release: common.vsprops, release.vsprops
31 Shared properties can go into common.vsprops, shared debug settings can go into debug.vsprops.
32 debug_internal.vsprops will be mostly empty except for file path prefix modifiers.
34 Pull auto-version.sh, VERSION, and PRODUCTVERSION from tools.
36 Reviewed by Adam Roben.
38 * WebKit.vcproj/Interfaces.vcproj:
39 * WebKit.vcproj/PRODUCTVERSION: Removed.
40 * WebKit.vcproj/VERSION: Removed.
41 * WebKit.vcproj/WebKit.vcproj:
42 * WebKit.vcproj/WebKitGUID.vcproj:
43 * WebKit.vcproj/auto-version.sh: Removed.
44 * WebKit.vcproj/debug.vsprops: Removed.
45 * WebKit.vcproj/debug_internal.vsprops: Removed.
46 * WebKit.vcproj/release.vsprops: Removed.
48 2008-01-11 Adam Roben <aroben@apple.com>
50 Fix Bug 16828: WebView never paints if first page load is canceled after being committed but before layout
52 <http://bugs.webkit.org/show_bug.cgi?id=16828>
55 Now that we have 1) a real loader and 2) multiple FrameViews per
56 Frame, we no longer need the hackery we had in our WM_PAINT handler
57 that decided whether or not to paint. We now always want to paint,
58 letting the swapping of FrameViews that happens in
59 transitionToCommittedForNewPage handle which document gets painted.
64 (WebViewWndProc): Removed hackery that decided sometimes not to paint.
66 2008-01-11 Mark Rowe <mrowe@apple.com>
68 Windows build fix. Update to match method name in WebCore.
70 * WebJavaScriptCollector.cpp:
71 (WebJavaScriptCollector::collectOnAlternateThread):
73 2008-01-10 Geoffrey Garen <ggaren@apple.com>
75 Reviewed by John Sullivan.
77 Updated for transition away from JavaScriptStatistics, which is gone now.
79 * WebJavaScriptCollector.cpp:
80 (WebJavaScriptCollector::collect):
81 (WebJavaScriptCollector::collectOnAlternateThread):
82 (WebJavaScriptCollector::objectCount):
84 2008-01-10 Maciej Stachowiak <mjs@apple.com>
86 Not reviewed, build fix.
90 * WebDatabaseManager.cpp:
91 * WebSecurityOrigin.h:
93 2008-01-10 Maciej Stachowiak <mjs@apple.com>
95 Not reviewed, build fix.
99 * WebDatabaseManager.cpp:
100 (WebDatabaseManager::databasesWithOrigin):
101 * WebSecurityOrigin.h:
103 2008-01-10 Maciej Stachowiak <mjs@apple.com>
107 - remove SecurityOriginData and fold its functionality into SecurityOrigin
109 * WebChromeClient.cpp:
110 (WebChromeClient::requestQuotaIncreaseForNewDatabase):
111 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
113 * WebDatabaseManager.cpp:
114 (WebDatabaseManager::origins):
115 (WebDatabaseManager::databasesWithOrigin):
116 (WebDatabaseManager::detailsForDatabaseWithOrigin):
117 (WebDatabaseManager::deleteDatabasesWithOrigin):
118 (WebDatabaseManager::deleteDatabaseWithOrigin):
119 (WebDatabaseManager::dispatchDidModifyOrigin):
120 (WebDatabaseManager::dispatchDidModifyDatabase):
121 * WebDatabaseManager.h:
122 * WebSecurityOrigin.cpp:
123 (WebSecurityOrigin::createInstance):
124 (WebSecurityOrigin::WebSecurityOrigin):
125 (WebSecurityOrigin::protocol):
126 (WebSecurityOrigin::domain):
127 (WebSecurityOrigin::port):
128 (WebSecurityOrigin::usage):
129 (WebSecurityOrigin::quota):
130 (WebSecurityOrigin::setQuota):
131 * WebSecurityOrigin.h:
133 2008-01-10 David Kilzer <ddkilzer@apple.com>
135 dftables should be rewritten as a script
137 <http://bugs.webkit.org/show_bug.cgi?id=16818>
138 <rdar://problem/5681463>
142 * WebKit.vcproj/WebKit.sln: Removed reference to dftables project.
144 2008-01-10 Adam Roben <aroben@apple.com>
146 Fix many bugs by giving Windows one FrameView per page load
150 Windows back/forward cache causes crashes in the layout tests
152 <http://bugs.webkit.org/show_bug.cgi?id=16808>
153 REGRESSION: PLT broken on Windows due to back/forward cache
155 <http://bugs.webkit.org/show_bug.cgi?id=16607>
156 Random crashes in FrameView::scheduleRelayout while surfing
159 On Windows until now we've only had one FrameView per Frame. Once the
160 back/forward cache was turned on this started causing assertions to
161 fail and crashes to occur due to a single FrameView being both in the
162 back/forward cache (possibly multiple times!) and used by a live
163 document. We now create a new FrameView for each page load, just as
166 This has the side-effect of plugging some of the world leaks seen at
172 (WebFrame::initWithWebFrameView): Don't create the FrameView right
173 away -- it'll be created when the load is committed.
174 (WebFrame::transitionToCommittedFromCachedPage): Match the Mac by no
175 longer calling resetMultipleFormSubmissionProtection here.
176 (WebFrame::transitionToCommittedForNewPage): Ported code from
178 createFrameViewWithNSView:marginWidth:marginHeight:],
179 -[WebCoreFrameBridge installInFrame:], and moved code here from
180 WebFrame::initWithWebFrameView and WebView::initWithFrame. WebCore
181 takes care of resetMultipleFormSubmissionProtection, just like it does
184 (WebView::initWithFrame): Moved FrameView initialization code to
185 WebFrame::transitionToCommittedForNewPage.
187 2008-01-09 Ada Chan <adachan@apple.com>
189 Fix crash that could happen if the key we are passing to the HashMap is 0 in WebView::interpretKeyEvent().
194 (WebView::interpretKeyEvent):
196 2008-01-08 Steve Falkenburg <sfalken@apple.com>
200 * DOMCoreClasses.cpp:
202 2008-01-07 Antti Koivisto <antti@apple.com>
204 Try to fix the Windows build.
206 * WebKit.vcproj/WebKit.sln:
208 2008-01-07 Antti Koivisto <antti@apple.com>
212 Re-enable media support in Windows build.
214 * WebKit.vcproj/WebKit.vcproj:
216 2008-01-07 Steve Falkenburg <sfalken@apple.com>
220 * WebKit.vcproj/InterfacesGenerated.vcproj:
222 2008-01-07 Dan Bernstein <mitz@apple.com>
224 Reviewed by Dave Hyatt.
226 - <rdar://problem/5665216> Support the unicode-range property in @font-face rules
229 (WebView::setShouldApplyMacFontAscentHack):
231 2008-01-07 Holger Freyther <zecke@selfish.org>
233 Reviewed by Alp Toker.
235 * Qt and Gtk must know if a ContextMenuItem is checkable. Add a new ContextMenuItemType for checkable
237 * Use this information in the Gtk platform to create a GtkCheckMenuItem when needed.
238 * Update the ContextMenuController to accept CheckableActionTypes as well.
239 * Change ContextMenu.cpp to use the CheckableActionType. The information if a item is checkable
240 was extracted from ContextMenu::checkOrEnableIfNeeded.
241 * Update the Qt and Windows port.
243 * WebContextMenuClient.cpp:
245 2008-01-04 Alexey Proskuryakov <ap@webkit.org>
247 Reviewed by Adam Roben.
249 http://bugs.webkit.org/show_bug.cgi?id=16733
250 REGRESSION: Crash on Safari Start
252 * Interfaces/IWebViewPrivate.idl: Should have added a new method at the end.
254 2008-01-04 Alexey Proskuryakov <ap@webkit.org>
258 <rdar://problem/5611712> xsl:sort does not use a case folding sort, and the 'case-order' attribute is ignored (16077)
260 * WebKit.vcproj/WebKit.vcproj: Link to icuin{_debug}.lib
262 2008-01-04 Adam Roben <aroben@apple.com>
264 Fix <rdar://4968855> Shift-PageUp/Shift-PageDown only select one line of text
266 Test: platform/win/editing/selection/shift-page-down-up.html
270 * WebView.cpp: Correct the commands associated with
271 Shift-PageUp/Shift-PageDown.
273 2008-01-03 Alexey Proskuryakov <ap@webkit.org>
277 <rdar://problem/5463489> A number of layout tests should be using execCommand instead of textInputController
279 * Interfaces/IWebViewPrivate.idl:
281 (WebView::executeCoreCommandByName):
283 Added an SPI to implement layoutTestController.execCommand.
285 2008-01-03 Ada Chan <adachan@apple.com>
287 Replaced the use of editor command "ForwardDelete" with "DeleteForward" to be consistent
288 with our use of "DeleteBackward".
290 Rubber-stamped by Jon.
294 2008-01-03 Ada Chan <adachan@apple.com>
296 Regression: backspace stopped working on text inputs
297 - Replaced the use of editor command "BackwardDelete" with "DeleteBackward" since it's no longer supported.
301 * WebEditorClient.cpp:
302 (WebEditorClient::textWillBeDeletedInTextField):
305 2008-01-02 Alice Liu <alice.liu@apple.com>
309 Fixed <rdar://5283861> (problems scrolling in gmail message content area)
313 bubble scrolling from a key event
315 2008-01-01 Matt Lilek <webkit@mattlilek.com>
317 Attempt to fix the Windows bots until the bots
318 can get the Quicktime SDK installed.
320 * WebKit.vcproj/WebKit.sln:
321 * WebKit.vcproj/WebKit.vcproj:
323 2007-12-30 Matt Lilek <webkit@mattlilek.com>
327 Bug 16578: Windows Web Inspector window needs minimum size
328 http://bugs.webkit.org/show_bug.cgi?id=16578
330 * WebInspectorClient.cpp:
331 (WebInspectorClient::onGetMinMaxInfo):
332 (WebInspectorWndProc):
333 * WebInspectorClient.h:
335 2007-12-21 Antti Koivisto <antti@apple.com>
339 Build media support on Windows.
341 * WebKit.vcproj/WebKit.sln:
342 * WebKit.vcproj/WebKit.vcproj:
344 2007-12-21 Ada Chan <adachan@apple.com>
346 Implemented DOMDocument::getElementById().
350 * DOMCoreClasses.cpp:
351 (DOMDocument::getElementById):
353 2007-12-21 Alexey Proskuryakov <ap@webkit.org>
355 Reviewed by Steve and Darin.
357 <rdar://problem/5497037> Win32: Accelerator keys (ctrl-x,c,v,w,q,etc) only fire keyUp,
358 keyDown/Press consumed by accelerator table (14104)
360 <rdar://problem/5346299> preventing default behavior for key down does not block accelerators like Ctrl+N
362 This is WebKit part of a fix, most of which will be in Safari.
365 (WebViewWndProc): Return our result for WM_(SYS)KEYDOWN to let the client know whether
366 further procesing is desired.
368 2007-12-21 Alexey Proskuryakov <ap@webkit.org>
370 Build fix: cannot use framework-style include for ProgIDMacros.h,
371 because the file is only created on a later step.
375 2007-12-20 Kevin McCullough <kmccullough@apple.com>
379 - <rdar://5656485> Drosera: Win: Nightly does not reliably connect to
382 - Drosera and Safari need to use the same ProgIDs in order for
383 CoCreateInstance to work properly. The most robust way to do this is
384 for WebKit to dynamically publish those ProgIDs.
386 * ForEachCoClass.cpp: Added.
387 (setUseOpenSourceWebKit):
389 * ForEachCoClass.h: Added functionality to publish ProgIDs.
390 * WebKit.vcproj/WebKit.def: Exposed added functions for applications.
391 * WebKit.vcproj/WebKit.vcproj: Added ForEachCoClass.cpp
392 * WebKit.vcproj/WebKit_debug.def: Exposed added functions fori
395 2007-12-19 Dave Hyatt <hyatt@apple.com>
397 Add a fourth preference value for GDI text in the font smoothing prefs.
401 * Interfaces/IWebPreferences.idl:
402 * WebPreferenceKeysPrivate.h:
403 * WebPreferences.cpp:
404 (WebPreferences::initializeDefaultSettings):
405 (WebPreferences::fontSmoothing):
406 (WebPreferences::setFontSmoothing):
408 (WebView::notifyPreferencesChanged):
410 2007-12-17 Darin Adler <darin@apple.com>
414 - <rdar://4516170> Back/Forward Cache on Windows
417 (WebFrame::forceLayout): Implemented this. Just calling through to
418 Frame::forceLayout matches the Mac pretty well and should be enough
419 for now. Without this we won't repaint the new page when we go back
421 (WebFrame::dispatchWillSubmitForm): Use COMPtr's AdoptCOM constructor
422 instead of the adoptRef function.
423 (WebFrame::restoreViewState): Removed unneeded notImplemented() call.
424 This is implemented as much as it needs to be.
425 (WebFrame::shouldGoToHistoryItem): Ditto.
426 (WebFrame::saveViewStateToItem): Ditto.
427 (WebFrame::canCachePage): Ditto, also changed it to return true. This
428 is what was preventing the back/forward cache from running, and there's
429 no need for any additional checks in the Windows version.
432 (PreferencesChangedOrRemovedObserver::onNotify): Fix backwards null check
433 that was preventing this notification from ever being sent, which in turn
434 meant that page cache had a capacity of 0.
435 (WebView::initWithFrame): Removed unneeded setUsesPageCache(false) code.
436 This actually was ineffective and ended up doing no harm, but we don't
439 2007-12-16 Alexey Proskuryakov <ap@webkit.org>
443 http://bugs.webkit.org/show_bug.cgi?id=16462
444 REGRESSION: access keys broken on Windows
446 * WebView.cpp: (WebView::keyPress): Handle system key presses as access keys.
448 2007-12-15 Alexey Proskuryakov <ap@webkit.org>
452 http://bugs.webkit.org/show_bug.cgi?id=16436
453 Alt+Space works incorrectly
455 Test: platform/win/fast/events/alt-space-scroll.html
460 We do not handle WM_SYSCHAR events.
462 2007-12-14 Dan Bernstein <mitz@apple.com>
464 - yet another build fix
466 * DOMHTMLClasses.cpp:
467 (DOMHTMLDocument::URL):
469 2007-12-14 Dan Bernstein <mitz@apple.com>
475 2007-12-14 Darin Adler <darin@apple.com>
479 - http://bugs.webkit.org/show_bug.cgi?id=16443
480 implement some missing Windows WebKit functions
482 * DOMHTMLClasses.cpp:
483 (DOMHTMLDocument::URL): Implemented.
485 * WebActionPropertyBag.cpp:
486 (WebActionPropertyBag::Read): Fixed the WebActionElementKey case.
488 2007-12-14 Darin Adler <darin@apple.com>
493 (WebView::execCommand): Switched from Editor::execCommand to Editor:command.
494 Updated name from MoveUpByPageAndModifyCaret to MovePageUp and from
495 MoveDownByPageAndModifyCaret to MovePageDown.
496 (WebView::copy): Switched from Editor::execCommand to Editor:command.
497 (WebView::cut): Ditto.
498 (WebView::paste): Ditto.
499 (WebView::delete_): Ditto.
501 2007-12-13 Steve Falkenburg <sfalken@apple.com>
503 Move source file generation into its own vcproj to fix build dependencies.
507 * WebKit.vcproj/Interfaces.vcproj:
508 * WebKit.vcproj/InterfacesGenerated.vcproj: Added.
509 * WebKit.vcproj/WebKit.sln:
510 * WebKit.vcproj/WebKit.submit.sln:
511 * WebKit.vcproj/build-generated-files.sh:
513 2007-12-13 Adam Roben <aroben@apple.com>
515 Fix <rdar://5517707> Crash on wptv.wp.pl when "make bigger" button is clicked
520 (WebViewWndProc): Repost paint messages and ignore all other messages
521 when we're calling a plugin.
523 2007-12-13 Steve Falkenburg <sfalken@apple.com>
525 Fix project dependencies based on JavaScriptCore change.
527 * WebKit.vcproj/WebKit.sln:
529 2007-12-13 Alexey Proskuryakov <ap@webkit.org>
533 http://bugs.webkit.org/show_bug.cgi?id=16421
534 REGRESSION(r28669): Page scrolls down when you hit space key in text area
536 Test: fast/events/space-scroll-event.html
541 Moved space handling to keyPress() to fix this bug and to match IE. Scrolling via arrow keys is correctly handled
544 2007-12-12 Brady Eidson <beidson@apple.com>
546 Reviewed by Sam Weinig
548 Fix for <rdar://problem/4886844> and lay groundwork for <rdar://problem/4516170> (Back/Forward Cache on Windows)
550 Even though this new code isn't exercised yet because the page cache is still turned off for Windows, local testing
551 has indicated it works well.
553 * WebCachedPagePlatformData.h: Added.
554 (WebCachedPagePlatformData::WebCachedPagePlatformData): Constructor takes an IWebDataSource and the object retains it
555 (WebCachedPagePlatformData::clear):
556 (WebCachedPagePlatformData::webDataSource):
559 (WebFrame::savePlatformDataToCachedPage):
560 (WebFrame::transitionToCommittedFromCachedPage):
561 (WebFrame::transitionToCommittedForNewPage):
564 * WebKit.vcproj/WebKit.vcproj:
566 2007-12-12 Steve Falkenburg <sfalken@apple.com>
570 * WebKit.vcproj/WebKit.make: Copy only what we need out of obj/bin.
572 2007-12-12 Dan Bernstein <mitz@apple.com>
574 Reviewed by Darin Adler.
576 - revert my earlier crash fix after making WebCore return the empty
577 editor command for the empty command name.
580 (WebView::handleEditingKeyboardEvent):
582 2007-12-12 Oliver Hunt <oliver@apple.com>
586 <rdar://problem/5071781> window.mouseout events are not
587 sent to window when mouse moves out of window
589 Hook up the windows mouse tracking logic to allow us to
590 detect the mouse leaving the window.
594 (WebView::handleMouseEvent):
598 2007-12-12 Dan Bernstein <mitz@apple.com>
600 Reviewed by Alexey Proskuryakov.
602 - fix a crash when pressing a key that is not associated with a command
605 (WebView::handleEditingKeyboardEvent): Check if the result of
606 interpretKeyEvent() is empty.
608 2007-12-11 Sam Weinig <sam@webkit.org>
610 Reviewed by Darin Adler.
612 Scrub URL out of the tree in preparation for renaming KURL to URL.
616 (WebFrame::dispatchWillPerformClientRedirect):
617 (WebFrame::setTitle):
618 (WebFrame::updateGlobalHistoryForStandardLoad):
619 (WebFrame::updateGlobalHistoryForReload):
620 (WebFrame::cancelledError):
621 (WebFrame::blockedError):
622 (WebFrame::interruptForPolicyChangeError):
623 (WebFrame::createPlugin):
625 (WebView::notifyDidAddIcon):
627 2007-12-10 Anders Carlsson <andersca@apple.com>
631 <rdar://problem/5636865>
632 WebKit needs API to allow registering a protocol as local (RSS feeds appear unstyled)
634 * Interfaces/IWebView.idl:
636 (WebView::registerURLSchemeAsLocal):
639 2007-12-11 Ada Chan <adachan@apple.com>
641 Updated the database SPI to take in IWebFrame.
645 * Interfaces/IWebUIDelegatePrivate.idl:
646 * WebChromeClient.cpp:
647 (WebChromeClient::requestQuotaIncreaseForNewDatabase):
648 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
650 2007-12-11 Alexey Proskuryakov <ap@webkit.org>
655 (WebView::interpretKeyEvent):
657 2007-12-11 Darin Adler <darin@apple.com>
660 (WebView::handleEditingKeyboardEvent): Update for change to Editor API.
662 2007-12-11 Alexey Proskuryakov <ap@webkit.org>
666 <rdar://problem/5535636>
667 Have to press 4 times instead of 2 times to get the expected result of ^^ with german keyboard.
669 http://bugs.webkit.org/show_bug.cgi?id=13916
670 JavaScript detects Tab as a character input on a textfield validation
672 Listen to WM_CHAR messages, and actually pass the type of message received down to WebCore.
673 Since WM_KEYDOWN == keydown and WM_CHAR == keypress, this allows for much better IE compatibility
674 than layering Windows keyboard event handling on top of Mac one.
677 (WebView::keyUp): Do not special case Alt+F4 and Alt+Space - we don't get keyups for those anyway!
678 (WebView::interpretKeyEvent): Renamed WindowsKeyCode() to windowsVirtualKeyCode().
679 (WebView::handleEditingKeyboardEvent): Use the additional information about event type that
680 we now pass with PlatformKeyboardEvent.
681 (WebView::keyDown): (WebView::keyPress): Split WM_KEYDOWN and WM_CHAR handling in separate
682 functions, pass them down as is, without trying to guess what WM_CHAR Windows would have sent
683 for a given WM_KEYDOWN.
685 (WebViewWndProc): Handle WM_CHAR and WM_SYSCHAR.
687 * WebView.h: Removed inIMEKeyDown() - it doesn't look like we need it at all. At least, I didn't
688 notice any regressions after removing the only call to it in WebEditorClient.
690 * WebEditorClient.cpp:
691 (WebEditorClient::handleKeyboardEvent):
692 (WebEditorClient::handleInputMethodKeydown):
694 Renamed handleKeypress() to handleKeyboardEvent(), as it gets both keydowns and keypresses.
695 Renamed handleInputMethodKeypress() to handleInputMethodKeydown() and removed
696 inIMEKeyDown()-related code.
698 2007-12-10 Geoffrey Garen <ggaren@apple.com>
700 Reviewed by Sam Weinig.
702 Updated for rename in JavaScriptCore.
704 * WebScriptCallFrame.cpp:
705 (WebScriptCallFrame::functionName):
706 (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
708 2007-12-07 Steve Falkenburg <sfalken@apple.com>
712 Rubber-stamped by Oliver.
714 * WebKit.vcproj/auto-version.sh:
716 2007-12-07 Steve Falkenburg <sfalken@apple.com>
720 * WebKit.vcproj/WebKit.vcproj:
721 * WebScriptCallFrame.cpp:
723 2007-12-07 Steve Falkenburg <sfalken@apple.com>
728 (_WebCoreHistoryProvider::containsURL):
730 2007-12-07 Geoffrey Garen <ggaren@apple.com>
732 Tried to fix build by suppressing warning.
734 * WebScriptCallFrame.cpp:
736 2007-12-07 Darin Adler <darin@apple.com>
740 - http://bugs.webkit.org/show_bug.cgi?id=15981
741 speed up visited-link code a bit
743 * WebHistory.cpp: Removed unused Latin-1 code path.
744 (_WebCoreHistoryProvider::containsItem): Updated for function name change.
746 2007-12-07 Steve Falkenburg <sfalken@apple.com>
748 Re-named our B&I flag from BUILDBOT to PRODUCTION.
749 Fix our tiny versioning.
750 Bump our product version.
751 Use just the major version in the fallback VERSION files.
752 Pick up the version numbers from the production builder.
754 Reviewed by Sam Weinig.
756 * Interfaces/WebKit.idl:
757 * WebKit.vcproj/Interfaces.vcproj:
758 * WebKit.vcproj/PRODUCTVERSION:
759 * WebKit.vcproj/VERSION:
760 * WebKit.vcproj/WebKit.make:
761 * WebKit.vcproj/WebKit.rc:
762 * WebKit.vcproj/WebKit.vcproj:
763 * WebKit.vcproj/auto-version.sh:
765 (DllUnregisterServer):
767 2007-12-07 Adam Roben <aroben@apple.com>
769 Fix <rdar://5624866> CFStringRef UI_STRING should use a cache and follow the CF "Get" model (current uses leak)
771 Added a new class, LocalizedString, that wraps a CFStringRef and a
772 WebCore::String. We store one LocalizedString for each key string.
776 * WebLocalizableStrings.cpp: Changed our two HashMaps to map from
777 WebCore::String to LocalizedString*.
778 (LocalizedString::LocalizedString):
779 (LocalizedString::operator CFStringRef):
780 (LocalizedString::operator LPCTSTR): Code moved here from
782 (findCachedString): Changed to return a LocalizedString*.
783 (cacheString): Changed to take a LocalizedString*.
784 (localizedString): Changed to return a const LocalizedString&. We
785 first try to find a cached LocalizedString. If there isn't one, we
786 create a new one and cache it.
787 (WebLocalizedLPCTSTRUTF8): Changed to call localizedString.
788 (WebLocalizedLPCTSTR): Ditto.
790 2007-12-07 Adam Roben <aroben@apple.com>
792 Make WebLocalizableStrings work a little more like the Mac version
796 * WebKit.vcproj/WebKit.def: Deprecated SetWebLocalizedStringMainBundle.
797 * WebKit.vcproj/WebKit_debug.def: Ditto.
798 * WebLocalizableStrings.cpp:
799 (createWebKitBundle): Changed to only create the bundle once.
800 (cfBundleForStringsBundle): Added. Code was factored out of
801 copyLocalizedStringFromBundle. We now use the CFBundleGetMainBundle to
802 get the main bundle and WebLocalizableStringsBundle's identifier to
803 fetch the framework's bundle.
804 (copyLocalizedStringFromBundle): Changed to call
805 cfBundleForStringsBundle.
806 (cacheString): Cleaned up logic a bit with an early return.
807 (SetWebLocalizedStringMainBundle): Moved down with the other
808 deprecated functions and made into a no-op.
810 2007-12-07 Adam Roben <aroben@apple.com>
812 Use SoftLinking.h in WebKitClassFactory.
816 * WebKitClassFactory.cpp:
817 (WebKitClassFactory::WebKitClassFactory): We don't have to worry about
818 not finding STInitialize anymore now that a version of SafariTheme
819 containing this function has shipped.
821 2007-12-06 Ada Chan <adachan@apple.com>
823 <rdar://problem/5556378> Implemented database related UI delegate methods (prompts for new/enlarged databases)
827 * Interfaces/IWebUIDelegatePrivate.idl:
828 * WebChromeClient.cpp:
829 (WebChromeClient::requestQuotaIncreaseForNewDatabase):
830 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
832 2007-12-06 Alice Liu <alice.liu@apple.com>
834 Fixed <rdar://5540000> onbeforeunload doesn't fire when closing window/tab
838 * Interfaces/IWebViewPrivate.idl:
840 (WebView::shouldClose):
843 2007-12-06 Adam Roben <aroben@apple.com>
845 Fix <rdar://5615283> Crash in WebFrame::receivedPolicyDecision
847 It's possible for a second policy listener to be created while we're
848 waiting for a decision on the first policy listener. In this case we
849 would crash when the first policy listener had a decision made. Mac
850 WebKit already handles this by invalidating any existing policy
851 listener when creating a new one.
853 A test case is coming in a future commit.
858 (WebFrame::setUpPolicyListener): Copy the Mac behavior of invalidating
859 any existing policy listener, and remove some assertions that we know
862 2007-12-06 Adam Roben <aroben@apple.com>
864 Add SPI so that DumpRenderTree can turn on the Mac font ascent hack
868 * Interfaces/IWebViewPrivate.idl: Added new method declaration.
870 (WebView::setShouldApplyMacFontAscentHack): Added. Just calls down to
874 2007-12-06 Ada Chan <adachan@apple.com>
880 * WebScriptCallFrame.cpp:
881 (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
883 2007-12-04 Geoffrey Garen <ggaren@apple.com>
885 Reviewed by Darin Adler.
887 Third step in refactoring JSGlobalObject: Moved data members and data
888 member access from Interpreter to JSGlobalObject.
891 (WebFrame::globalContext):
892 (WebFrame::attachScriptDebugger):
893 (WebFrame::windowObjectCleared):
894 * WebScriptDebugger.cpp:
895 (WebScriptDebugger::WebScriptDebugger):
897 2007-12-05 Steve Falkenburg <sfalken@apple.com>
899 <rdar://problem/5625327> Crash toggling check grammar w/ spelling when no spell checker exists.
904 (WebView::setGrammarCheckingEnabled): Add null check
906 2007-12-05 Adam Roben <aroben@apple.com>
908 Expose WebView::setProhibitsMainFrameScrolling through IWebViewPrivate
912 * Interfaces/IWebViewPrivate.idl: Added declaration.
913 * WebInspectorClient.cpp:
914 (WebInspectorClient::createPage): Updated for change to
915 setProhibitsMainFrameScrolling signature.
917 (WebView::setProhibitsMainFrameScrolling): Updated and robustified.
920 2007-12-05 Dan Bernstein <mitz@apple.com>
922 Reviewed by Darin Adler.
924 - WebKit/win part of fixing <rdar://problem/5111082> Flash popup video ad doesn't close when clicked at http://www.firestonecompleteautocare.com/
927 (WebView::initWithFrame): Attach the main frame's view.
929 2007-12-04 Ada Chan <adachan@apple.com>
931 Provide API for setting the default storage quota per database origin
935 * Interfaces/IWebPreferencesPrivate.idl: added SPI to get/set default database quota
936 * WebPreferenceKeysPrivate.h:
937 * WebPreferences.cpp:
938 (WebPreferences::initializeDefaultSettings): default database quota is 5MB
939 (WebPreferences::longlongValueForKey):
940 (WebPreferences::setLongLongValue):
941 (WebPreferences::defaultDatabaseQuota):
942 (WebPreferences::setDefaultDatabaseQuota):
945 (WebView::notifyPreferencesChanged): propagate default database quota change to WebCore settings.
947 2007-12-04 Kevin McCullough <kmccullough@apple.com>
949 Reviewed by Adam and Darin.
951 - Fixed a crasher where the top of the stack was not updated correctly.
952 And set the eol style on IWebScriptCallFrame.idl file.
954 * Interfaces/IWebScriptCallFrame.idl:
955 * WebScriptDebugger.cpp:
956 (WebScriptDebugger::atStatement):
957 (WebScriptDebugger::leaveFrame):
959 2007-11-27 Adam Roben <aroben@apple.com>
961 Hook up the authorAndUserStylesEnabled preference
963 This is the Windows counterpart of r28071.
967 * Interfaces/IWebPreferencesPrivate.idl: Added new method
969 * WebPreferenceKeysPrivate.h: Added a new preference key.
970 * WebPreferences.cpp:
971 (WebPreferences::initializeDefaultSettings): Set the default for the
973 (WebPreferences::setAuthorAndUserStylesEnabled): Added.
974 (WebPreferences::authorAndUserStylesEnabled): Added.
977 (WebView::notifyPreferencesChanged): Communicate the new preference
978 down to WebCore::Settings.
980 2007-12-04 Jon Honeycutt <jhoneycutt@apple.com>
984 Don't crash if our JavaPlugin DLL can't be found
987 (WebFrame::createJavaAppletWidget): Added null check
989 2007-12-04 Darin Adler <darin@apple.com>
991 Reviewed by Kevin Decker.
993 * WebFrame.cpp: Removed obsolete privateBrowsingEnabled.
996 2007-12-04 Adam Roben <aroben@apple.com>
1000 * WebScriptCallFrame.cpp:
1002 2007-12-03 Dan Bernstein <mitz@apple.com>
1004 Reviewed by Dave Hyatt.
1006 - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
1009 (WebViewWndProc): Removed call to sendResizeEvent() since FrameView
1012 2007-12-03 Kevin McCullough <kmccullough@apple.com>
1016 - <rdar://5618942> Drosera: Console window does not process everything
1018 - <rdar://5619005> Drosera: could be sped up by moving the
1019 WebScriptScope stuff into the WebScriptCallFrame.
1020 - Now the console can correctly process objects and does not receive
1021 notifications from JavaScriptCore about the JavaScript in Drosera's
1024 * Interfaces/IWebScriptCallFrame.idl: Moved the variable lookup
1025 functions from WebScriptScope to here.
1026 * Interfaces/WebKit.idl: Removed WebScriptScope.
1027 * WebKit.vcproj/Interfaces.vcproj: Ditto.
1028 * WebKit.vcproj/WebKit.vcproj: Ditto.
1029 * WebKit.vcproj/WebKitGUID.vcproj: Ditto.
1030 * WebScriptCallFrame.cpp: Moved WebScriptScope functionality into here.
1031 (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString): Now
1032 returns a string value for things that are not strings.
1033 (WebScriptCallFrame::variableNames): Moved from WebScriptScope.
1034 (WebScriptCallFrame::valueForVariable): Moved from WebScriptScope.
1035 (WebScriptCallFrame::jsValueToString): Helper functions that converts
1036 any JSValue to a String.
1037 * WebScriptCallFrame.h: Moved WebScriptScope functionality into here.
1038 * WebScriptDebugger.cpp: Added nested guards so that Drosera does not
1039 receive notifications about JavaScript that Drosera is running just the
1040 JavaScript WebKit is running.
1041 (WebScriptDebugger::WebScriptDebugger):
1042 (WebScriptDebugger::sourceParsed):
1043 (WebScriptDebugger::callEvent):
1044 (WebScriptDebugger::atStatement):
1045 (WebScriptDebugger::returnEvent):
1046 (WebScriptDebugger::exception):
1047 * WebScriptDebugger.h: Ditto.
1048 * WebScriptScope.cpp: Removed.
1049 * WebScriptScope.h: Removed.
1051 2007-12-03 Mark Rowe <mrowe@apple.com>
1053 Speculative Windows build fix.
1055 * WebScriptCallFrame.cpp:
1056 (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
1058 2007-12-03 Adam Roben <aroben@apple.com>
1060 Another speculative Windows build fix
1062 * WebScriptCallFrame.cpp:
1063 (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
1065 2007-12-03 Adam Roben <aroben@apple.com>
1067 Speculative Windows build fix
1070 (WebFrame::globalContext):
1071 (WebFrame::windowObjectCleared):
1072 * WebScriptDebugger.cpp:
1073 (WebScriptDebugger::WebScriptDebugger):
1075 2007-12-01 Sam Weinig <sam@webkit.org>
1077 Rename IWebViewPrivate::selectionImageRect to IWebViewPrivate::selectionRect.
1079 Rubber stamped by Adam Roben.
1081 * Interfaces/IWebViewPrivate.idl:
1083 (WebView::selectionRect):
1086 2007-11-30 Ada Chan <adachan@apple.com>
1088 <rdar://problem/5621373> Added a way for the client to clear undo/redo
1089 operations from a WebView.
1093 * Interfaces/IWebViewPrivate.idl:
1095 (WebView::clearUndoRedoOperations):
1098 2007-11-29 Anders Carlsson <andersca@apple.com>
1102 Add an IWebFrameLoadDelegate2 interface with a didClearWindowObject method
1103 that passes in the frame whose window has been cleared. This matches a newly
1104 added delegate method on the Mac.
1106 * Interfaces/IWebFrameLoadDelegate.idl:
1108 (WebFrame::windowObjectCleared):
1110 2007-11-29 Kevin McCullough <kmccullough@apple.com>
1114 - <rdar://5618976> Drosera: should listen for the WebScriptDebugServer
1115 dying and vice versa.
1117 * Interfaces/IWebScriptDebugListener.idl: Added the new function to the
1119 * WebKit.vcproj/WebKit.def: Added the new function to the def file so
1120 Safari can tell WebKit when the server is dying.
1121 * WebKit.vcproj/WebKit_debug.def: Ditto.
1122 * WebKitDLL.cpp: Added the new function for Safari to call.
1124 (LocalServerDidDie):
1125 * WebScriptDebugServer.cpp:
1126 (WebScriptDebugServer::WebScriptDebugServer): Removed unused member.
1127 (WebScriptDebugServer::sharedWebScriptDebugServer): Ditto, and added new
1128 member to prevent adding or removing listeners when the server is dying.
1129 (WebScriptDebugServer::addListener): Don't let new listeners be added
1130 when the server is dying.
1131 (WebScriptDebugServer::removeListener): Don't let listeners remove
1132 themselves when the server is dying. The server will remove them all
1134 (WebScriptDebugServer::serverDidDie): Notify all listeners that the
1135 server is dying and remove all listeners.
1136 * WebScriptDebugServer.h: Added the new method and removed an unused
1139 2007-11-29 Brady Eidson <beidson@apple.com>
1141 Build fix that works...?
1143 * WebChromeClient.h:
1145 2007-11-29 Brady Eidson <beidson@apple.com>
1149 * WebChromeClient.cpp:
1150 (WebChromeClient::requestQuotaIncreaseForNewDatabase):
1151 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
1153 2007-11-29 Brady Eidson <beidson@apple.com>
1155 Keep it building with new client method
1157 * WebChromeClient.cpp:
1158 (ChromeClient::requestQuotaIncreaseForNewDatabase):
1159 (ChromeClient::requestQuotaIncreaseForDatabaseOperation):
1160 * WebChromeClient.h:
1162 2007-11-29 Dan Bernstein <mitz@apple.com>
1164 Reviewed by Beth Dakin and Darin Adler.
1166 - fix <rdar://problem/5346394> Contextmenu event doesn't fire on body element inside frame
1169 (WebView::handleContextMenuEvent): Send the context menu event to the
1170 frame containing the node that was hit.
1172 2007-11-28 Kevin McCullough <kmccullough@apple.com>
1176 - Added guards to the wait loop so execution would not hang and now the
1177 console window can process JavaScript.
1179 * WebScriptDebugServer.cpp:
1180 (WebScriptDebugServer::suspendProcessIfPaused):
1182 2007-11-28 Anders Carlsson <andersca@apple.com>
1186 Implement the last bits of the WebDatabaseManager API.
1188 * Interfaces/IWebDatabaseManager.idl:
1189 * WebDatabaseManager.cpp:
1191 (WebDatabaseManager::sharedWebDatabaseManager):
1192 (WebDatabaseManager::dispatchDidModifyOrigin):
1193 (WebDatabaseManager::dispatchDidModifyDatabase):
1194 * WebDatabaseManager.h:
1196 2007-11-28 Anders Carlsson <andersca@apple.com>
1198 Get Drosera working again for real.
1203 2007-11-27 Kevin McCullough <kmccullough@apple.com>
1205 Reviewed by Maciej and Adam.
1207 - Added Drosera to the WebKit project.
1209 * WebKit.vcproj/WebKit.sln:
1211 2007-11-27 Jon Honeycutt <jhoneycutt@apple.com>
1215 Return bool from registerWebViewWindowClass, as nothing uses the ATOM.
1216 Set haveRegisteredWindowClass to true
1219 (registerWebViewWindowClass):
1221 2007-11-27 Anders Carlsson <andersca@apple.com>
1223 Speculative fix to get Drosera working.
1227 Update the number of elements fetched correctly.
1229 2007-11-27 Anders Carlsson <andersca@apple.com>
1235 * CFDictionaryPropertyBag.cpp:
1236 (CFDictionaryPropertyBag::QueryInterface):
1237 * CFDictionaryPropertyBag.h:
1238 * WebBackForwardList.cpp:
1239 (WebBackForwardList::addItem):
1240 (WebBackForwardList::removeItem):
1242 (WebDownload::initWithRequest):
1244 (WebFrame::loadRequest):
1245 (WebFrame::initWithWebFrameView):
1246 (WebFrame::webHistory):
1247 (WebFrame::dispatchWillSendRequest):
1248 * WebURLAuthenticationChallenge.cpp:
1249 (WebURLAuthenticationChallenge::QueryInterface):
1250 (WebURLAuthenticationChallenge::initWithProtectionSpace):
1251 * WebURLAuthenticationChallenge.h:
1252 * WebURLAuthenticationChallengeSender.cpp:
1253 (WebURLAuthenticationChallengeSender::QueryInterface):
1254 * WebURLAuthenticationChallengeSender.h:
1255 * WebURLResponse.cpp:
1256 (WebURLResponse::QueryInterface):
1259 (WebView::notifyDidAddIcon):
1260 (WebView::goToBackForwardItem):
1261 (WebView::canHandleRequest):
1262 (WebView::loadBackForwardListFromOtherView):
1265 2007-11-27 Anders Carlsson <andersca@apple.com>
1267 Add COMEnumVariant.h to the project.
1269 * WebKit.vcproj/WebKit.vcproj:
1271 2007-11-27 Anders Carlsson <andersca@apple.com>
1275 Return E_INVALIDARG if the databaseName BSTR is null.
1277 * WebDatabaseManager.cpp:
1278 (WebDatabaseManager::detailsForDatabaseWithOrigin):
1279 (WebDatabaseManager::deleteDatabaseWithOrigin):
1281 2007-11-27 Anders Carlsson <andersca@apple.com>
1285 Implement the rest of the WebDatabaseManager API.
1288 * Interfaces/IWebDatabaseManager.idl:
1289 * WebDatabaseManager.cpp:
1291 (DatabaseDetailsPropertyBag::DatabaseDetailsPropertyBag):
1292 (DatabaseDetailsPropertyBag::~DatabaseDetailsPropertyBag):
1293 (DatabaseDetailsPropertyBag::createInstance):
1294 (DatabaseDetailsPropertyBag::AddRef):
1295 (DatabaseDetailsPropertyBag::Release):
1296 (DatabaseDetailsPropertyBag::QueryInterface):
1297 (DatabaseDetailsPropertyBag::Read):
1298 (DatabaseDetailsPropertyBag::Write):
1299 (WebDatabaseManager::detailsForDatabaseWithOrigin):
1300 (WebDatabaseManager::deleteAllDatabases):
1301 (WebDatabaseManager::deleteDatabasesWithOrigin):
1302 (WebDatabaseManager::deleteDatabaseWithOrigin):
1303 * WebDatabaseManager.h:
1305 2007-11-27 Ada Chan <adachan@apple.com>
1307 <rdar://problem/5616098> The BSTR returned by WebHistoryItem::alternateTitle
1308 was not allocated correctly.
1312 * WebHistoryItem.cpp:
1313 (WebHistoryItem::setAlternateTitle):
1314 (WebHistoryItem::alternateTitle):
1317 2007-11-27 Anders Carlsson <andersca@apple.com>
1321 Use COMEnumVariant in WebScriptCallFrame and WebScriptScope.
1323 * WebScriptCallFrame.cpp:
1324 (WebScriptCallFrame::scopeChain):
1325 * WebScriptScope.cpp:
1326 (WebScriptScope::variableNames):
1328 2007-11-27 Anders Carlsson <andersca@apple.com>
1332 Use the correct include paths.
1336 2007-11-27 Anders Carlsson <andersca@apple.com>
1340 Add COMEnumVariant, a templatized class with implements IEnumVARIANT and lets
1341 you enumerate over a C++ container, be it WTF or STL.
1343 * COMEnumVariant.h: Added.
1345 * WebDatabaseManager.cpp:
1346 (WebDatabaseManager::origins):
1347 (WebDatabaseManager::databasesWithOrigin):
1348 Implement these using COMEnumVariant.
1350 * WebSecurityOrigin.cpp:
1351 (WebSecurityOrigin::QueryInterface):
1352 * WebSecurityOrigin.h:
1353 Add a UUID for the implementation so that other parts of WebKit can access
1354 the WebCore::SecurityOriginData object.
1356 2007-11-26 Adam Roben <aroben@apple.com>
1358 Take advantage of the new Color constructor that takes a CGColorRef
1360 This lets us handle grayscale colors (which only have 2 components).
1364 * WebKitGraphics.cpp:
1367 2007-11-26 Steve Falkenburg <sfalken@apple.com>
1371 * WebKit.vcproj/WebKit.make:
1373 2007-11-26 Steve Falkenburg <sfalken@apple.com>
1377 * WebKit.vcproj/build-generated-files.sh:
1379 2007-11-26 Steve Falkenburg <sfalken@apple.com>
1383 * WebKit.vcproj/build-generated-files.sh:
1385 2007-11-26 Anders Carlsson <andersca@apple.com>
1389 Add an implementation of IWebSecurityOrigin and a partially stubbed out
1390 implementation of IWebDatabaseManager.
1393 * Interfaces/IWebDatabaseManager.idl:
1394 * Interfaces/WebKit.idl:
1395 * WebDatabaseManager.cpp:
1396 (WebDatabaseManager::createInstance):
1397 (WebDatabaseManager::WebDatabaseManager):
1398 (WebDatabaseManager::~WebDatabaseManager):
1399 (WebDatabaseManager::QueryInterface):
1400 (WebDatabaseManager::AddRef):
1401 (WebDatabaseManager::Release):
1402 (WebDatabaseManager::sharedWebDatabaseManager):
1403 (WebDatabaseManager::origins):
1404 (WebDatabaseManager::databasesWithOrigin):
1405 (WebDatabaseManager::detailsForDatabaseWithOrigin):
1406 (WebDatabaseManager::deleteAllDatabases):
1407 (WebDatabaseManager::deleteDatabasesWithOrigin):
1408 (WebDatabaseManager::deleteDatabaseWithOrigin):
1409 * WebDatabaseManager.h:
1410 * WebKit.vcproj/WebKit.vcproj:
1411 * WebKitClassFactory.cpp:
1412 * WebSecurityOrigin.cpp: Added.
1413 (WebSecurityOrigin::createInstance):
1414 (WebSecurityOrigin::WebSecurityOrigin):
1415 (WebSecurityOrigin::~WebSecurityOrigin):
1416 (WebSecurityOrigin::QueryInterface):
1417 (WebSecurityOrigin::AddRef):
1418 (WebSecurityOrigin::Release):
1419 (WebSecurityOrigin::protocol):
1420 (WebSecurityOrigin::domain):
1421 (WebSecurityOrigin::port):
1422 (WebSecurityOrigin::usage):
1423 (WebSecurityOrigin::quota):
1424 (WebSecurityOrigin::setQuota):
1425 * WebSecurityOrigin.h: Added.
1427 2007-11-26 Kevin McCullough <kmccullough@apple.com>
1431 - Implemented displaying variables for Drosera on Win.
1433 * Interfaces/IWebScriptCallFrame.idl: Added a local function to be
1434 able to access the WebScriptCallFrame.
1435 * Interfaces/IWebScriptScope.idl: Implemented.
1436 * Interfaces/WebKit.idl: Added WebScriptScope to the tlb.
1437 * WebKit.vcproj/Interfaces.vcproj:
1438 * WebScriptCallFrame.cpp: Implemented the helper and accessor methods.
1439 (EnumScopes::Next): Fixed a bug where we did not release correctly and
1440 would accidentally destroy scopes.
1441 (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
1443 (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString): Implemented
1444 * WebScriptCallFrame.h: Implemented the helper and accessor methods.
1445 (WebScriptCallFrame::impl):
1446 (WebScriptCallFrame::state):
1447 * WebScriptScope.cpp: Implmented.
1448 (EnumVariables::EnumVariables): Created an IEnumVariant over the
1449 variables to be able to pass a DCOM acceptable structure back to
1451 (EnumVariables::createInstance):
1452 (EnumVariables::QueryInterface):
1453 (EnumVariables::AddRef):
1454 (EnumVariables::Release):
1455 (EnumVariables::Next):
1456 (EnumVariables::Skip):
1457 (EnumVariables::Reset):
1458 (EnumVariables::Clone):
1459 (WebScriptScope::WebScriptScope):
1460 (WebScriptScope::createInstance): Implemented.
1461 (WebScriptScope::variableNames): Implemented.
1462 (WebScriptScope::valueForVariable):
1463 * WebScriptScope.h: Implmeneted.
1465 2007-11-26 Anders Carlsson <andersca@apple.com>
1469 Add IWebDatabaseManager and IWebSecurityOrigin interfaces.
1471 * Interfaces/IWebDatabaseManager.idl: Added.
1472 * Interfaces/IWebSecurityOrigin.idl: Added.
1473 * WebKit.vcproj/Interfaces.vcproj:
1474 * WebKit.vcproj/WebKitGUID.vcproj:
1476 2007-11-26 Alice Liu <alice.liu@apple.com>
1478 Reviewed by Jon Honeycutt.
1480 Fall back to the default Policy Delegate in these functions,
1481 as is already done in dispatchDecidePolicyForNavigationAction
1484 (WebFrame::dispatchDecidePolicyForMIMEType):
1485 (WebFrame::dispatchDecidePolicyForNewWindowAction):
1486 (WebFrame::dispatchUnableToImplementPolicy):
1488 2007-11-25 Adam Roben <aroben@apple.com>
1490 Fix a leak pointed out by Alexey
1493 (getUpdateRects): Use a Vector<unsigned char>, since OwnPtr doesn't
1494 know to call delete[].
1496 2007-11-25 Adam Roben <aroben@apple.com>
1498 Fix Bug 16138: Reduce code duplication in WebView.cpp
1500 http://bugs.webkit.org/show_bug.cgi?id=16138
1505 (getUpdateRects): Factored code out of updateBackingStore and paint
1506 into this new helper function.
1507 (WebView::updateBackingStore): Use getUpdateRects.
1508 (WebView::paint): Ditto.
1509 (WebView::paintIntoBackingStore): Changed to take a const IntRect&.
1510 (WebView::paintIntoWindow): Ditto.
1513 2007-11-25 Adam Roben <aroben@apple.com>
1515 Add ImageDiff.vcproj to WebKit.sln
1519 * WebKit.vcproj/WebKit.sln:
1521 2007-11-17 Timothy Hatcher <timothy@apple.com>
1523 Reviewed by Mark Rowe.
1525 Bug 13470: i18n: The Web Inspector is not localizable
1526 http://bugs.webkit.org/show_bug.cgi?id=13470
1528 * English.lproj/Localizable.strings: Updated.
1529 * WebInspectorClient.cpp:
1530 (WebInspectorClient::localizedStringsURL): Empty stub.
1531 * WebInspectorClient.h: Added localizedStringsURL.
1533 2007-11-17 Alexey Proskuryakov <ap@webkit.org>
1538 (WebView::deleteSelection): Use canSmartCopyOrDelete() directly.
1540 2007-11-14 Adam Roben <aroben@apple.com>
1542 Change Interfaces to be a "Static Library" project
1544 Being a Utility project meant that Interfaces was rebuilding every
1545 time (Utility projects are supposed to handle their own dependencies).
1546 Interfaces isn't really a static library, but it means that VS will
1547 handle dependencies for us (and not complain about missing manifests
1548 like it did when the project was an Application).
1550 * WebKit.vcproj/Interfaces.vcproj:
1552 2007-11-14 Adam Roben <aroben@apple.com>
1554 Shut up FixMIDLHeaders.pl
1556 * WebKit.vcproj/FixMIDLHeaders.pl:
1558 2007-11-14 Adam Roben <aroben@apple.com>
1560 Change Interfaces to use a Utility configuration
1562 It had previously been marked as an "Application (.exe)", which is
1563 wrong but worked with most versions of Visual Studio.
1565 Rubberstamped by Steve.
1567 * WebKit.vcproj/Interfaces.vcproj:
1569 2007-11-14 Anders Carlsson <andersca@apple.com>
1573 Get the new focus window from the wParam instead of calling GetFocus().
1574 Also, send blur even if there is no focused frame.
1579 2007-11-14 Adam Roben <aroben@apple.com>
1581 Another build fix for systems without Cygwin in their PATH
1583 * WebKit.vcproj/Interfaces.vcproj: Add Cygwin to the PATH in the
1586 2007-11-13 Kevin McCullough <kmccullough@apple.com>
1590 - Make Drosera show source, source URLs, and function stack on Windows
1591 and some minor fixes.
1593 * WebScriptCallFrame.cpp: Fixed a bug where the callFrame was not reffed
1594 properly before being returned, and changed functionName() to check for
1595 Null or if the name is empty.
1596 (EnumScopes::Clone):
1597 (WebScriptCallFrame::WebScriptCallFrame):
1598 (WebScriptCallFrame::createInstance):
1599 (WebScriptCallFrame::caller):
1600 (WebScriptCallFrame::functionName):
1601 * WebScriptCallFrame.h: Ditto
1602 * WebScriptDebugServer.cpp: Made the listenerSet static since we were
1603 already treating it as if it were. Removed the EnumViews stuff. This
1604 was added by Steve to demonstrate DCOM and he thought it would be needed
1605 by Drosera, but I don't believe it will be.
1606 Implemented suspendProcessIfPaused() also added calls to it at the end
1607 of several functions to ensure we pause if Drosera has told WebKit to.
1608 (WebScriptDebugServer::WebScriptDebugServer):
1609 (WebScriptDebugServer::sharedWebScriptDebugServer):
1610 (WebScriptDebugServer::addListener):
1611 (WebScriptDebugServer::removeListener):
1612 (WebScriptDebugServer::suspendProcessIfPaused):
1613 (WebScriptDebugServer::didLoadMainResourceForDataSource):
1614 (WebScriptDebugServer::didParseSource):
1615 (WebScriptDebugServer::failedToParseSource):
1616 (WebScriptDebugServer::didEnterCallFrame):
1617 (WebScriptDebugServer::willExecuteStatement):
1618 (WebScriptDebugServer::willLeaveCallFrame):
1619 (WebScriptDebugServer::exceptionWasRaised):
1620 * WebScriptDebugServer.h: Ditto.
1621 * WebScriptDebugger.cpp: The important change here is that leaveFrame()
1622 is called before willLeaveCallFrame(). I think there is some EOL stuff
1624 - It was the implementing of these functions that allows source, the
1625 source URLs and function stack to be displayed.
1626 (WebScriptDebugger::callEvent):
1627 (WebScriptDebugger::atStatement):
1628 (WebScriptDebugger::returnEvent):
1629 (WebScriptDebugger::exception):
1630 (WebScriptDebugger::enterFrame):
1631 (WebScriptDebugger::leaveFrame):
1632 * WebView.cpp: Removed the EnumView functions.
1634 (WebView::~WebView):
1636 2007-11-13 Adam Roben <aroben@apple.com>
1638 Fix <rdar://5346832> Infinite recursion when opening Web Inspector on more than one tab
1640 The bug was that multiple WebNodeHighlights would subclass the same
1641 browser window, leading to infinite recursion within
1644 WebNodeHighlight is now a WindowMessageListener, and lets
1645 WindowMessageBroadcaster handle subclassing the window.
1649 * WebNodeHighlight.cpp:
1650 (WebNodeHighlight::WebNodeHighlight): Initialize m_observedWindow
1652 (WebNodeHighlight::~WebNodeHighlight): Unregister as a listener for
1654 (WebNodeHighlight::highlight): Register as a listener.
1655 (WebNodeHighlight::windowReceivedMessage): Do the work that used to be
1656 done in SubclassedWndProc.
1657 * WebNodeHighlight.h: Made WebNodeHighlight a WindowMessageListener,
1658 and renamed m_subclassedWindow to m_observedWindow.
1660 2007-11-13 Adam Roben <aroben@apple.com>
1662 Build fix for systems that don't have Cygwin in their PATH
1664 * WebKit.vcproj/Interfaces.vcproj: Put Cygwin in the PATH before
1667 2007-11-13 Steve Falkenburg <sfalken@apple.com>
1669 Add IDOMElementPrivate::font() to get an element's font
1670 as a WebFontDescription.
1674 * DOMCoreClasses.cpp:
1677 * Interfaces/DOMPrivate.idl:
1679 2007-11-12 Adam Roben <aroben@apple.com>
1683 * WebKit.vcproj/WebKit.def: Export fastZeroedMalloc.
1684 * WebKit.vcproj/WebKit_debug.def: Ditto.
1686 2007-11-09 Jon Honeycutt <jhoneycutt@apple.com>
1690 <rdar://5585900>: Safari crashes when selected in context menu to open
1691 audio format files (au, aif) with QT 7.3
1693 The crash occurred on a machine where QT 7.3 was failing to initialize.
1694 The fix is to avoid sending streams to full-page plugins that've failed
1698 (WebFrame::finishedLoading): Check plugin status before calling manual
1700 (WebFrame::setMainDocumentError): Same
1701 (WebFrame::committedLoad): Same
1703 2007-11-09 Sam Weinig <sam@webkit.org>
1705 Rubber stamped by Oliver.
1707 Make WebCore a dependency of Interfaces.
1709 * WebKit.vcproj/WebKit.sln:
1711 2007-11-04 Sam Weinig <sam@webkit.org>
1713 Reviewed by Adam Roben.
1715 <rdar://problem/5435940>
1716 The COM bindings for the DOM should be autogenerated like the other DOM bindings
1718 Initial commit of the autogeneration of the COM DOM Bindings. No behavior change
1719 is being introduced in this patch and to insure that no conflicts arise, a temporary
1720 prefix of "GEN_" has been used for all the new classes.
1722 The build architecture for these bindings differs slightly from the other autogenerated
1723 bindings. Instead of building in WebCore and migrating the resuting code to WebKit (as
1724 is done for the Objective-C bindigs currently), the IDLs and generation scripts are
1725 migrated to WebKit and built there. This is done with a series of scripts and Makefiles.
1727 This commit includes:
1728 - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
1730 - Generating all of the Core DOM and most of HTML and CSS
1731 - Generating Event, EventTarget, and EventListener
1733 * DOMCreateInstance.cpp: Added.
1738 (GEN_DOMNode::createInstance):
1739 (GEN_DOMImplementation::createInstance):
1740 (GEN_DOMCSSRule::createInstance):
1741 (GEN_DOMStyleSheet::createInstance):
1742 (GEN_DOMCSSValue::createInstance):
1743 * DOMCreateInstance.h: Added.
1744 Temporary location for createInstance/object caching methods. This will be broken up
1745 into seperate files in the near future.
1747 * GEN_DOMObject.cpp: Added.
1748 (GEN_DOMObject::GEN_DOMObject):
1749 (GEN_DOMObject::~GEN_DOMObject):
1750 (GEN_DOMObject::QueryInterface):
1751 (GEN_DOMObject::AddRef):
1752 (GEN_DOMObject::Release):
1753 * GEN_DOMObject.h: Added.
1754 Hand rolled base class.
1756 * Interfaces/IGEN_DOMObject.idl: Added.
1757 Hand rolled base interface.
1759 * WebKit.vcproj/DerivedSources.make: Added.
1760 * WebKit.vcproj/FixMIDLHeaders.pl: Added.
1761 This script is required because MIDL is producing un-buildable code due to
1762 circular dependencies.
1764 * WebKit.vcproj/Interfaces.vcproj:
1765 * WebKit.vcproj/WebKit.vcproj:
1766 * WebKit.vcproj/WebKitGUID.vcproj:
1767 * WebKit.vcproj/build-generated-files.sh: Added.
1769 2007-11-08 Kevin McCullough <kmccullough@apple.com>
1773 - This patch does two main things.
1774 1) It adds pragma warning guards around WebCore includes in WebKit files
1775 that were previously overlooked.
1776 2) It implements almost the entireity of WebScriptDebugger. Only one
1777 function remains and that implementation is dependent on finishing the
1778 implementation of WebScriptScope.
1780 * WebScriptCallFrame.h:
1781 * WebScriptDebugServer.h:
1782 * WebScriptDebugger.cpp:
1783 (WebScriptDebugger::WebScriptDebugger):
1784 (WebScriptDebugger::sourceParsed):
1785 (WebScriptDebugger::callEvent):
1786 (WebScriptDebugger::atStatement):
1787 (WebScriptDebugger::returnEvent):
1788 (WebScriptDebugger::exception):
1789 (WebScriptDebugger::enterFrame):
1790 (WebScriptDebugger::leaveFrame):
1791 * WebScriptDebugger.h:
1793 2007-11-08 Steve Falkenburg <sfalken@apple.com>
1795 <rdar://problem/5491463> Wrong dates shown in History menu.
1797 Fix off-by-one error in Windows epoch.
1799 For the Windows DATE type, 1/1/1900 should be 2.0, not 1.0.
1800 DATE is the number of days since 12/30/1899.
1804 * MarshallingHelpers.cpp:
1805 (MarshallingHelpers::windowsEpochAbsoluteTime):
1807 2007-11-08 Kevin McCullough <kmccullough@apple.com>
1811 - With this change Drosera can now get the source of a website and the
1812 listings of the sources it gets. This also lays the foundation for
1813 letting Drosera show the scope chain of the JavaScript stack.
1815 * Interfaces/IWebFrame.idl: Changed the signature of the local function,
1816 globalContext(), because COM was unable to marshal this object with the
1818 * Interfaces/IWebScriptDebugServer.idl: Of course adding and removing
1819 a listener cannot be done in a const function.
1820 * WebChromeClient.h: Added accessor to the WebView for the new added
1821 kit() function in WebFrame.
1822 (WebChromeClient::webView):
1823 * WebFrame.cpp: Added a script debugger object and the necessary
1824 functions to attach and communicate with it. Also needed to change the
1825 local function, globalContext(), because of a COM issue.
1827 (WebFrame::WebFrame):
1828 (WebFrame::globalContext):
1829 (WebFrame::loadData):
1830 (WebFrame::attachScriptDebugger):
1831 (WebFrame::detachScriptDebugger):
1832 (WebFrame::dispatchDidLoadMainResource):
1833 (WebFrame::windowObjectCleared):
1834 * WebFrame.h: Ditto.
1835 * WebHTMLRepresentation.cpp: Implemented documentSource so Drosera has
1836 some source code to display.
1837 (WebHTMLRepresentation::WebHTMLRepresentation):
1838 (WebHTMLRepresentation::documentSource):
1839 * WebKit.vcproj/WebKit.vcproj: Added the new WebScriptDebugger class.
1840 * WebScriptCallFrame.cpp: Implemented much of this class' functionality.
1841 (EnumScopes::EnumScopes): Made an EnumScopes class to create an
1842 IEnumVARIANT to wrap a ScopeChain for Drosera.
1843 (EnumScopes::QueryInterface):
1844 (EnumScopes::AddRef):
1845 (EnumScopes::Release):
1848 (EnumScopes::Reset):
1849 (EnumScopes::Clone):
1850 (WebScriptCallFrame::caller):
1851 (WebScriptCallFrame::scopeChain):
1852 (WebScriptCallFrame::functionName):
1853 (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
1854 * WebScriptCallFrame.h: Added member data needed for the above functions
1855 * WebScriptDebugServer.cpp: Began implementing.
1856 (WebScriptDebugServer::listenerCount):
1857 (EnumViews::QueryInterface):
1858 (EnumViews::AddRef):
1859 (EnumViews::Release):
1864 (WebScriptDebugServer::WebScriptDebugServer):
1865 (WebScriptDebugServer::createInstance):
1866 (WebScriptDebugServer::sharedWebScriptDebugServer):
1867 (WebScriptDebugServer::AddRef):
1868 (WebScriptDebugServer::Release):
1869 (WebScriptDebugServer::addListener):
1870 (WebScriptDebugServer::removeListener):
1871 (WebScriptDebugServer::step):
1872 (WebScriptDebugServer::pause):
1873 (WebScriptDebugServer::resume):
1874 (WebScriptDebugServer::isPaused):
1875 (WebScriptDebugServer::suspendProcessIfPaused):
1876 (WebScriptDebugServer::didLoadMainResourceForDataSource):
1877 (WebScriptDebugServer::didParseSource):
1878 (WebScriptDebugServer::failedToParseSource):
1879 (WebScriptDebugServer::didEnterCallFrame):
1880 (WebScriptDebugServer::willExecuteStatement):
1881 (WebScriptDebugServer::willLeaveCallFrame):
1882 (WebScriptDebugServer::exceptionWasRaised):
1883 * WebScriptDebugServer.h: Began implementing.
1884 * WebScriptDebugger.cpp: Added.
1885 (WebScriptDebugger::WebScriptDebugger):
1886 (WebScriptDebugger::sourceParsed):
1887 * WebScriptDebugger.h: Added.
1888 * WebScriptScope.cpp: Make this class use createInstance which is more
1889 in line with our guidelines.
1890 (WebScriptScope::WebScriptScope):
1891 (WebScriptScope::createInstance):
1895 2007-11-07 Darin Adler <darin@apple.com>
1899 * Interfaces/IWebUIDelegate.idl: Added the functions needed below.
1900 * WebChromeClient.cpp:
1901 (WebChromeClient::setMenubarVisible): Eliminated the notImplemented()
1902 here by calling through the UI delegate.
1903 (WebChromeClient::menubarVisible): Ditto.
1904 (WebChromeClient::runDatabaseSizeLimitPrompt): Ditto.
1906 2007-11-07 Steve Falkenburg <sfalken@apple.com>
1908 Added IWebDocumentText available via QI from WebFrame.
1913 (WebFrame::QueryInterface): Added IID_IWebDocumentText.
1914 (WebFrame::supportsTextEncoding): Stubbed out.
1915 (WebFrame::selectedString): Implemented.
1916 (WebFrame::selectAll): Stubbed out.
1917 (WebFrame::deselectAll): Stubbed out.
1920 2007-11-07 Adam Roben <aroben@apple.com>
1922 Fix <rdar://5569268> Crash when opening any FTP site in second tab/window
1927 (WebView::initWithFrame): Set the ftpDirectoryTemplatePath for every
1928 Page, not just the first one.
1930 2007-11-06 Adam Roben <aroben@apple.com>
1932 Change WebLocalizableStrings to take UTF-8 C strings
1934 This matches the way things work on the Mac, and will allow source
1935 files containing localizable strings to be shared between Mac and
1936 Windows. The old functions have not been removed for compatibility
1937 reasons, but are now just wrappers around the new UTF-8 functions.
1941 * WebKit.vcproj/WebKit.def: Added new functions.
1942 * WebKit.vcproj/WebKit_debug.def: Ditto.
1943 * WebLocalizableStrings.cpp:
1944 (copyLocalizedStringFromBundle): Changed to take a WebCore::String
1945 representing the key.
1946 (localizedString): Refactored from WebLocalizedString. Takes a
1947 WebCore::String representing the key.
1948 (localizedLPCTSTR): Ditto for WebLocalizedLPCTSTR.
1949 (WebLocalizedStringUTF8): Added. Takes a UTF-8 C string as the key.
1950 (WebLocalizedLPCTSTRUTF8): Ditto.
1951 (WebLocalizedString): Changed to call localizedString.
1952 (WebLocalizedLPCTSTR): Changed to call localizedLPCTSTR.
1953 * WebLocalizableStrings.h: Changed macros to use the new UTF-8
1956 2007-11-06 Darin Adler <darin@apple.com>
1958 Reviewed by Adam and Steve.
1960 - added hooks needed to implement showModalDialog on Windows
1962 * Interfaces/IWebUIDelegate.idl: Added canRunModal, createModalDialog,
1963 and runModal functions to the end of IWebUIDelegate3.
1965 * WebChromeClient.h: Added uiDelegate and uiDelegate2 helper functions,
1966 so it's easier to write client functions.
1967 * WebChromeClient.cpp:
1968 (WebChromeClient::createWindow): Implemented dialog case. Calls IWebUIDelegate3.
1969 (WebChromeClient::canRunModal): Implemented. Calls IWebUIDelegate3.
1970 (WebChromeClient::runModal): Ditto.
1971 (WebChromeClient::uiDelegate): Added.
1972 (WebChromeClient::uiDelegate2): Added.
1973 (WebChromeClient::uiDelegate3): Added.
1975 2007-11-06 Alexey Proskuryakov <ap@webkit.org>
1977 Rubber-stamped by Adam Roben.
1982 (WebFrame::string): plainText() returns a String now.
1984 2007-11-05 Ada Chan <adachan@apple.com>
1986 <rdar://problem/5579772> Regression: AltGr does not work
1987 Testing whether alt-key is down is not the right test for system key event.
1988 Added a m_isSystemKey flag in PlatformKeyboardEvent to keep track of whether
1989 this is a system key event, check that flag instead in handleEditingKeyboardEvent().
1995 (WebView::handleEditingKeyboardEvent):
2000 2007-11-05 Ada Chan <adachan@apple.com>
2004 Reviewed by Tristan.
2006 * WebChromeClient.h:
2008 2007-11-05 Tristan O'Tierney <tristan@apple.com>
2010 Reviewed by Darin Adler.
2012 Part of the WebKit/WebCore API changes for
2013 <rdar://problem/5368188>
2015 * WebChromeClient.cpp:
2016 (WebChromeClient::createWindow):
2017 Removed usage of createModalDialog and revised to use new createWindow
2020 2007-11-04 Adam Roben <aroben@apple.com>
2022 Add IWebCache::disabled
2024 This matches the Mac WebCache class.
2028 * Interfaces/IWebCache.idl:
2030 (WebCache::disabled):
2033 2007-11-04 Adam Roben <aroben@apple.com>
2035 Add IWebInspector and a way to get one from a WebView
2037 This API matches the Mac one added in r27266.
2041 * Interfaces/IWebInspector.idl: Added.
2042 * Interfaces/IWebViewPrivate.idl: Added a new inspector method to
2044 * WebInspector.cpp: Added.
2045 (WebInspector::createInstance):
2046 (WebInspector::WebInspector):
2047 (WebInspector::~WebInspector):
2048 (WebInspector::webViewClosed):
2049 (WebInspector::QueryInterface):
2050 (WebInspector::AddRef):
2051 (WebInspector::Release):
2052 (WebInspector::show):
2053 (WebInspector::showConsole):
2054 (WebInspector::showTimeline):
2055 (WebInspector::close):
2056 (WebInspector::attach):
2057 (WebInspector::detach):
2058 * WebInspector.h: Added.
2059 * WebKit.vcproj/Interfaces.vcproj: Added IWebInspector.idl.
2060 * WebKit.vcproj/WebKit.vcproj: Added WebInspector.{cpp,h}.
2061 * WebKit.vcproj/WebKitGUID.vcproj: Added IWebInspector_i.c.
2063 (WebView::close): Notify the WebInspector that we're closing.
2064 (WebView::inspector): Added.
2067 2007-11-04 Adam Roben <aroben@apple.com>
2069 Cache strings that come directly from WebLocalizedString
2073 * WebLocalizableStrings.cpp:
2074 (copyLocalizedStringFromBundle): This used to be WebLocalizedString,
2075 but is now just a static helper function.
2076 (findCachedStringInMap): Added static helper.
2077 (findCachedString): Refactored and cleaned up code from
2078 WebLocalizedLPCTSTR.
2079 (cacheString): Ditto.
2080 (WebLocalizedString): Rewrote to use the new helper functions.
2081 (WebLocalizedLPCTSTR): Changed to use the new helper functions.
2083 2007-11-03 Adam Roben <aroben@apple.com>
2085 Only override the default user agent string if we're actually given a custom one
2090 (WebView::setCustomUserAgent):
2092 2007-11-01 Oliver Hunt <oliver@apple.com>
2096 Allow Shift, Ctrl, Alt, Meta and Capslock keys to be sent into WebCore.
2102 2007-11-01 Kevin McCullough <kmccullough@apple.com>
2104 - Fixed a build failure
2106 * WebEditorClient.cpp:
2107 (WebEditorClient::textWillBeDeletedInTextField):
2109 2007-11-01 Adam Roben <aroben@apple.com>
2111 Fix the parameter type of WebLocalizedString to match the UI_STRING macro
2115 * WebLocalizableStrings.cpp:
2116 (WebLocalizedString):
2117 (WebLocalizedLPCTSTR):
2118 * WebLocalizableStrings.h:
2120 2007-11-01 Alexey Proskuryakov <ap@webkit.org>
2122 Rubber-stamped by Adam Roben.
2124 Rolled out r27326 - debug CRT seems to cause no problems after all.
2126 * WebKit.vcproj/WebKit.vcproj:
2128 2007-10-31 Adam Roben <aroben@apple.com>
2130 Switch the Debug configuration to using the non-debug CRT
2132 The debug CRT conflicts with what Safari uses, which causes loading
2137 * WebKit.vcproj/WebKit.vcproj:
2139 2007-10-30 Kevin McCullough <kmccullough@apple.com>
2141 Reviewed by Adam and Geoff.
2143 - Added the globalContext method so Drosera can ask a WebFrame for its
2146 * Interfaces/IWebFrame.idl:
2150 2007-10-30 Adele Peterson <adele@apple.com>
2154 WebKitWin part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
2155 <rdar://problem/5110427> REGRESSION: Caps lock icon should show in password fields
2157 * WebView.cpp: (WebView::keyDown): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field.
2159 2007-10-29 Kevin McCullough <kmccullough@apple.com>
2161 Reviewed by Adam and Maciej.
2163 - Added the IWebScriptScope interface which is used by Drosera to get
2164 information and run contextually significant code with respect to the
2165 current JS stack frame.
2167 * Interfaces/IWebScriptCallFrame.idl: Line endings changed, not sure why
2168 but the real changes were to change the return type of scopeChain() and
2169 the return type and name of evaluateWebScript() to
2170 stringByEvaluatingJavaScriptFromString().
2171 * Interfaces/IWebScriptScope.idl: Added.
2172 * WebKit.vcproj/Interfaces.vcproj: Added the new interface.
2173 * WebKit.vcproj/WebKit.vcproj: Added the files for the new class.
2174 * WebKit.vcproj/WebKitGUID.vcproj: Added the new interfaces.
2175 * WebScriptCallFrame.cpp: Changed the return type to E_NOTIMPL and
2176 asserted so it would be obvious if I accidentally try to use one of
2177 these functions before it's implemented.
2178 (WebScriptCallFrame::caller):
2179 (WebScriptCallFrame::scopeChain):
2180 (WebScriptCallFrame::functionName):
2181 (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
2182 * WebScriptCallFrame.h: Changed the return types mentioned above.
2183 * WebScriptDebugServer.cpp: Also changed the return type to E_NOTIMPL.
2184 (WebScriptDebugServer::addListener):
2185 (WebScriptDebugServer::removeListener):
2186 (WebScriptDebugServer::step):
2187 (WebScriptDebugServer::pause):
2188 (WebScriptDebugServer::resume):
2189 (WebScriptDebugServer::isPaused):
2190 * WebScriptScope.cpp: Added.
2191 (WebScriptScope::WebScriptScope):
2192 (WebScriptScope::~WebScriptScope):
2193 (WebScriptScope::QueryInterface):
2194 (WebScriptScope::AddRef):
2195 (WebScriptScope::Release):
2196 (WebScriptScope::getVariableNames):
2197 (WebScriptScope::getValueForVariable):
2198 * WebScriptScope.h: Added.
2200 2007-10-28 Darin Adler <darin@apple.com>
2202 - try to fix Windows build
2204 * WebKit.vcproj/WebKit.vcproj: Suppress warning 4800 (conversion to bool),
2205 since we don't want to add !! everywhere, and because HashTable.h has a
2206 conversion to bool of this type now.
2208 2007-10-27 Kevin McCullough <kmccullough@apple.com>
2212 - Stubbed out IWebScriptCallFrame for Drosera.
2214 * Interfaces/IWebScriptCallFrame.idl: Added function declarations.
2215 * WebKit.vcproj/WebKit.vcproj: Added .h/.cpp files to the project.
2216 * WebScriptCallFrame.cpp: Added.
2217 (WebScriptCallFrame::WebScriptCallFrame):
2218 (WebScriptCallFrame::~WebScriptCallFrame):
2219 (WebScriptCallFrame::createInstance):
2220 (WebScriptCallFrame::QueryInterface):
2221 (WebScriptCallFrame::AddRef):
2222 (WebScriptCallFrame::Release):
2223 (WebScriptCallFrame::caller):
2224 (WebScriptCallFrame::scopeChain):
2225 (WebScriptCallFrame::functionName):
2226 (WebScriptCallFrame::evaluateWebScript):
2227 * WebScriptCallFrame.h: Added.
2229 2007-10-26 Kevin McCullough <kmccullough@apple.com>
2231 Reviewed by Sam and Steve.
2233 - Added convenience methods for converting between BSTR and JSSTringRefs
2234 - Added WebKit_debug.def to the project.
2236 * WebKit.vcproj/WebKit.def:
2237 * WebKit.vcproj/WebKit.vcproj:
2238 * WebKit.vcproj/WebKit_debug.def:
2240 2007-10-25 Sam Weinig <sam@webkit.org>
2242 Reviewed by Adam Roben.
2244 Make debug builds run again.
2247 (WebView::notifyPreferencesChanged):
2249 2007-10-25 Sam Weinig <sam@webkit.org>
2251 Reviewed by Adam Roben.
2253 Remove JSStringRefCFHack.
2255 * WebKit.vcproj/WebKit.vcproj:
2257 2007-10-25 Sam Weinig <sam@webkit.org>
2259 Reviewed by Steve Falkenburg.
2261 Fix for <rdar://problem/5463608>
2262 Port WebKit cache model code (Windows needs a big disk cache, smarter memory cache)
2264 * Interfaces/IWebPreferences.idl:
2265 Deprecate pageCacheSize and objectCacheSize and add cacheModel/setCacheModel.
2267 * Interfaces/IWebPreferencesPrivate.idl:
2268 Add automaticallyDetectsCacheModel/setAutomaticallyDetectsCacheModel
2271 (WebFrame::didPerformFirstNavigation):
2272 Implement based on the mac version.
2274 * WebKit.vcproj/WebKit.vcproj:
2275 * WebKitSystemBits.cpp: Added.
2276 (WebMemorySize): Moved and renamed from WebPreferences.cpp
2277 (WebVolumeFreeSize): Added.
2278 * WebKitSystemBits.h: Added.
2279 * WebPreferenceKeysPrivate.h: Added WebKitCacheModelPreferenceKey.
2281 * WebPreferences.cpp:
2282 (WebPreferences::sharedStandardPreferences):
2283 (WebPreferences::WebPreferences):
2284 (WebPreferences::initializeDefaultSettings): Added default for cacheModel.
2285 (WebPreferences::webPreferencesChangedNotification):
2286 (WebPreferences::webPreferencesRemovedNotification):
2287 (WebPreferences::initWithIdentifier): Post a preferences change notification.
2288 (WebPreferences::pageCacheSize): Deprecated.
2289 (WebPreferences::objectCacheSize): Deprecated.
2290 (WebPreferences::cacheModel): Added.
2291 (WebPreferences::setCacheModel): Added.
2292 (WebPreferences::setAutomaticallyDetectsCacheModel): Added.
2293 (WebPreferences::automaticallyDetectsCacheModel): Added.
2294 (WebPreferences::willAddToWebView): Added.
2295 (WebPreferences::didRemoveFromWebView): Added.
2299 (PreferencesChangedOrRemovedObserver::PreferencesChangedOrRemovedObserver):
2300 (PreferencesChangedOrRemovedObserver::~PreferencesChangedOrRemovedObserver):
2301 (PreferencesChangedOrRemovedObserver::QueryInterface):
2302 (PreferencesChangedOrRemovedObserver::AddRef):
2303 (PreferencesChangedOrRemovedObserver::Release):
2304 (PreferencesChangedOrRemovedObserver::sharedInstance):
2305 (PreferencesChangedOrRemovedObserver::onNotify):
2306 (PreferencesChangedOrRemovedObserver::notifyPreferencesChanged):
2307 (PreferencesChangedOrRemovedObserver::notifyPreferencesRemoved):
2308 This singleton class updates static properties for all webviews when
2309 preferenceChange or preferenceRemoved notifications are fired for
2312 (WebView::~WebView):
2313 (initializeStaticObservers):
2315 (WebView::addToAllWebViewsSet):
2316 (WebView::removeFromAllWebViewsSet):
2317 (WebView::setCacheModel):
2318 (WebView::cacheModel):
2319 (WebView::didSetCacheModel):
2320 (WebView::maxCacheModelInAnyInstance):
2323 (WebView::developerExtrasEnabled):
2324 (WebView::initWithFrame):
2325 (WebView::setPreferences):
2326 (WebView::preferences):
2327 (WebView::onNotify):
2328 (WebView::notifyPreferencesChanged):
2329 (updateSharedSettingsFromPreferencesIfNeeded):
2331 Match the macs behavior by using explicit postings of notifications to
2332 update the preferences.
2334 2007-10-25 Adam Roben <aroben@apple.com>
2336 Update WebKit.sln for the removal of Release dftables
2340 * WebKit.vcproj/WebKit.sln:
2342 2007-10-25 Kevin McCullough <kmccullough@apple.com>
2344 Rubber stamped by Geoff.
2346 - Stubbed out the WebScriptDebugServer methods to give Drosera something
2347 to connect to and now the signature of the interface matches the mac.
2349 * Interfaces/IWebScriptDebugServer.idl:
2350 * WebScriptDebugServer.cpp:
2351 (WebScriptDebugServer::addListener):
2352 (WebScriptDebugServer::removeListener):
2353 (WebScriptDebugServer::step):
2354 (WebScriptDebugServer::pause):
2355 (WebScriptDebugServer::resume):
2356 (WebScriptDebugServer::isPaused):
2357 * WebScriptDebugServer.h:
2359 2007-10-24 Kevin McCullough <kmccullough@apple.com>
2363 - Renamed WebDebugProgram to WebScriptDebugServer to match the naming
2366 * Interfaces/IWebDebugProgram.idl: Removed.
2367 * Interfaces/IWebScriptDebugServer.idl: Copied from win/Interfaces/IWebDebugProgram.idl.
2368 * Interfaces/WebKit.idl:
2369 * WebDebugProgram.cpp: Removed.
2370 * WebDebugProgram.h: Removed.
2371 * WebKit.vcproj/Interfaces.vcproj:
2372 * WebKit.vcproj/WebKit.vcproj:
2373 * WebKit.vcproj/WebKitGUID.vcproj:
2374 * WebKitClassFactory.cpp:
2375 (WebKitClassFactory::CreateInstance):
2378 * WebScriptDebugServer.cpp: Copied from win/WebDebugProgram.cpp.
2379 (WebScriptDebugServer::WebScriptDebugServer):
2380 (WebScriptDebugServer::~WebScriptDebugServer):
2381 (WebScriptDebugServer::createInstance):
2382 (WebScriptDebugServer::QueryInterface):
2383 (WebScriptDebugServer::AddRef):
2384 (WebScriptDebugServer::Release):
2385 (WebScriptDebugServer::viewAdded):
2386 (WebScriptDebugServer::viewRemoved):
2387 (WebScriptDebugServer::attach):
2388 (WebScriptDebugServer::detach):
2389 (WebScriptDebugServer::statistics):
2390 (WebScriptDebugServer::webViews):
2391 * WebScriptDebugServer.h: Copied from win/WebDebugProgram.h.
2394 (WebView::~WebView):
2396 2007-10-24 Adam Roben <aroben@apple.com>
2398 Fix <rdar://5549919> Initialize the font database before any font code is invoked
2400 We initialize the database in two places:
2401 1. When instantiating WebKitClassFactory, which is guaranteed to
2402 happen before any WebView is instantiated.
2403 2. When making a WebCore::Font in WebKitGraphics.
2405 This ensures that the font database will be populated before any font
2406 code is invoked. We rely on WebCore to only populate the database
2411 * WebKitClassFactory.cpp:
2412 (WebKitClassFactory::WebKitClassFactory): Populate the font database.
2413 * WebKitGraphics.cpp:
2416 2007-10-24 Adam Roben <aroben@apple.com>
2418 Add [I]WebTextRenderer
2420 Right now this class can only be used to add private fonts for use by
2421 the running process, but will eventually be the home of the
2422 WebKitGraphics functions.
2426 * ForEachCoClass.h: Added WebTextRenderer.
2427 * Interfaces/WebKit.idl: Ditto.
2428 * WebKit.vcproj/Interfaces.vcproj: Ditto.
2429 * WebKit.vcproj/WebKit.vcproj: Ditto.
2430 * WebKit.vcproj/WebKitGUID.vcproj: Ditto.
2431 * WebKitClassFactory.cpp: Ditto.
2432 * WebTextRenderer.cpp: Added.
2433 (WebTextRenderer::createInstance):
2434 (WebTextRenderer::WebTextRenderer):
2435 (WebTextRenderer::~WebTextRenderer):
2436 (WebTextRenderer::QueryInterface):
2437 (WebTextRenderer::AddRef):
2438 (WebTextRenderer::Release):
2439 (WebTextRenderer::registerPrivateFont):
2440 * WebTextRenderer.h: Added.
2442 2007-10-24 Adam Roben <aroben@apple.com>
2444 Use FOR_EACH_COCLASS in WebKitClassFactory
2449 (WebError::createInstance): Added an overload that takes no arguments
2450 to make the macro used in WebKitClassFactory work.
2452 * WebKitClassFactory.cpp:
2453 (WebKitClassFactory::CreateInstance): Use FOR_EACH_COCLASS.
2455 2007-10-24 Adam Roben <aroben@apple.com>
2457 Put FOR_EACH_COCLASS macro into its own file and export it
2459 The macro used to be called FOR_EACH_CLASS and lived in WebKitDLL.cpp.
2460 This way we will be able to use the macro in more places that care
2461 about all WebKit's COM classes.
2465 * ForEachCoClass.h: Added.
2466 * WebKit.vcproj/WebKit.vcproj: Copy ForEachCoClass.h to
2467 WebKitOutputDir, and added it to the project.
2468 * WebKitDLL.cpp: Updated for macro rename, and changed to #undef the
2469 macros we pass to FOR_EACH_COCLASS after we're done with them.
2471 2007-10-24 Ada Chan <adachan@apple.com>
2473 <rdar://problem/5552221> REGRESSION(310A24-ToT): Shortcut key disable. (15604)
2478 (WebView::handleEditingKeyboardEvent): don't handle system key events as text input
2479 (WebView::keyDown): only remove WM_SYSCHAR message from the queue if we handle it.
2480 For WM_SYSCHAR message that we don't handle, let it stay in the queue and return
2481 false to let windows handle it.
2483 2007-10-24 Brady Eidson <beidson@apple.com>
2487 Windows portion of <rdar://5554130>
2489 Slowly introduce Windows WebKit portion of the Database API that sets the
2490 on-disk location for databases
2492 * WebDatabaseManager.cpp: Added.
2493 (WebKitSetWebDatabasesPathIfNecessary):
2494 * WebDatabaseManager.h: Added.
2496 * WebKit.vcproj/WebKit.vcproj:
2499 (WebView::initWithFrame): Call WebKitSetWebDatabasesPathIfNecessary()
2501 2007-10-24 Kevin McCullough <kmccullough@apple.com>
2503 Reviewed by Sam, Steve and Darin.
2505 - Added stubs for what will be neede to let Drosera attach to the
2506 WebKit process and debug it.
2508 * Interfaces/IWebScriptCallFrame.idl: Added.
2509 * Interfaces/IWebScriptDebugListener.idl: Added.
2510 * Interfaces/WebKit.idl:
2511 * WebKit.vcproj/Interfaces.vcproj:
2512 * WebKit.vcproj/WebKitGUID.vcproj:
2514 2007-10-23 Adam Roben <aroben@apple.com>
2516 Move safe file creation code to WebCore
2520 * WebPreferences.cpp:
2521 (preferencesPath): Made into a static helper function.
2522 (WebPreferences::save): Now calls WebCore's safeCreateFile function.
2523 (WebPreferences::load): Uses String/CString to handle the UTF-8
2525 * WebPreferences.h: Removed preferencesPath and
2526 safeCreateFileWithData.
2528 2007-10-23 Adam Roben <aroben@apple.com>
2530 Reduce code duplication by using WebCore's FileSystem functions
2534 * WebIconDatabase.cpp: Removed a now-unused function and a fixed
2536 (WebIconDatabase::init): Changed to use FileSystem functions.
2537 * WebPreferences.cpp:
2538 (WebPreferences::preferencesPath): Ditto.
2540 2007-10-23 Sam Weinig <sam@webkit.org>
2542 Make the WebNotificationCenter work with null (wildcard) and specific
2543 observed objects, matching NSNotificationCenter.
2545 - Removes the ObserverKey, ObserverHash, and ObserverKeyTraits as we now
2546 hash against the notification name only and check the object on notification
2548 - Use OwnPtr for the WebNotificationCenterPrivate member variable.
2550 Reviewed by Adam Roben.
2552 * WebNotificationCenter.cpp:
2553 (WebNotificationCenter::WebNotificationCenter):
2554 (WebNotificationCenter::~WebNotificationCenter):
2555 (WebNotificationCenter::postNotificationInternal):
2556 (WebNotificationCenter::addObserver):
2557 (WebNotificationCenter::postNotification):
2558 (WebNotificationCenter::postNotificationName):
2559 (WebNotificationCenter::removeObserver):
2560 * WebNotificationCenter.h:
2562 2007-10-23 Ada Chan <adachan@apple.com>
2564 <rdar://problem/5244261> SafariWin ignores cookie policy setting "never" in the preferences
2565 Custom WebPreferences (not the shared WebPreferences) could override the cookie accept
2566 policy setting on the default cookie storage. To fix that, I added a new method in
2567 WebView called updateGlobalSettingsFromPreferences() to handle updating the global pref
2568 options such as cookie accept policy, and it's only called to update changes from
2569 the shared WebPreferences.
2571 Use CLSID_WebPreferences and remove IID_WebPreferences.
2573 Reviewed by Darin and Adam.
2575 * WebPreferences.cpp:
2576 (WebPreferences::QueryInterface):
2579 (WebView::updateWebCoreSettingsFromPreferences):
2580 (WebView::updateGlobalSettingsFromPreferences):
2581 (WebView::updateSettingsFromPreferences):
2582 (WebView::developerExtrasEnabled):
2583 (WebView::initWithFrame):
2584 (WebView::onNotify):
2587 2007-10-18 Brady Eidson <beidson@apple.com>
2591 Keep windows building with new Chrome additions
2593 * WebChromeClient.cpp:
2594 * WebChromeClient.h:
2596 2007-10-18 Adam Roben <aroben@apple.com>
2598 Fix <rdar://5547784> ProgIDMacros.h should explicitly use wide strings
2602 * ProgIDMacros.h: Always use wide strings instead of relying on the
2605 2007-10-17 Adam Roben <aroben@apple.com>
2607 Fix for clean builds needed after r26683
2611 * WebView.cpp: Remove #include of non-existant file.
2613 2007-10-17 Anders Carlsson <andersca@apple.com>
2615 Update for locking primitive changes.
2617 * WebIconDatabase.cpp:
2618 (WebIconDatabase::scheduleNotificationDelivery):
2620 2007-10-16 Adam Roben <aroben@apple.com>
2622 Remove WebKitInitializer
2626 * WebKit.vcproj/WebKit.sln:
2628 2007-10-16 Adam Roben <aroben@apple.com>
2634 * WebKit.vcproj/WebKit.sln:
2636 2007-10-16 Adam Roben <aroben@apple.com>
2638 Rename WebKit_debug.dll to WebKit.dll for the Debug configuration
2640 This is needed so that we can stop having Safari delay-load WebKit,
2641 which in turn is needed so that Maciej can land a JavaScript speedup
2642 which breaks delay-loading.
2644 Reviewed by Kevin McCullough.
2646 * WebKit.vcproj/WebKit.vcproj: Use WebKitDLLConfigSuffix for the name
2647 of our DLL and module definition file.
2648 * WebKit.vcproj/debug.vsprops: Added WebKitDLLConfigSuffix.
2649 * WebKit.vcproj/debug_internal.vsprops: Ditto.
2650 * WebKit.vcproj/release.vsprops: Ditto.
2652 2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>
2656 <rdar://5530789>: REGRESSION(303-310A19): Crash opening .wma files with
2657 MediaPlayer for the first time
2659 Failure to setup the stream in PluginView::didReceiveResponse will lead,
2660 in a full-page plugin, to the main document load being cancelled. This
2661 is the case with at least two versions of Windows Media Player, which
2662 cancels the stream and brings up its own "Welcome to Windows Media
2665 As part of the main document load cancellation, m_pluginView is set to
2666 null, and the crash came from dereferencing this pointer. This patch
2670 (WebFrame::finishedLoading): Fix some typos
2671 (WebFrame::committedLoad): Added a null check
2673 2007-10-15 Alice Liu <alice.liu@apple.com>
2675 Reviewed by Sam Weinig.
2677 Fixed <rdar://5382546> layoutTestController.setCustomPolicyDelegate is unimplemented causing tests to fail
2679 * DefaultPolicyDelegate.cpp: Added.
2680 Implementation is a direct port of WebKit/DefaultDelegates/WebDefaultPolicyDelegate.m
2681 (DefaultPolicyDelegate::DefaultPolicyDelegate):
2682 (DefaultPolicyDelegate::~DefaultPolicyDelegate):
2683 (DefaultPolicyDelegate::sharedInstance):
2684 (DefaultPolicyDelegate::createInstance):
2685 (DefaultPolicyDelegate::QueryInterface):
2686 (DefaultPolicyDelegate::AddRef):
2687 (DefaultPolicyDelegate::Release):
2688 (DefaultPolicyDelegate::decidePolicyForNavigationAction):
2689 (DefaultPolicyDelegate::decidePolicyForNewWindowAction):
2690 (DefaultPolicyDelegate::decidePolicyForMIMEType):
2691 (DefaultPolicyDelegate::unableToImplementPolicyWithError):
2692 * DefaultPolicyDelegate.h: Added.
2694 (WebFrame::dispatchDecidePolicyForNavigationAction):
2695 Implemented default action
2696 * WebKit.vcproj/WebKit.vcproj:
2697 Adding files to project
2699 2007-10-12 Steve Falkenburg <sfalken@apple.com>
2701 Move pthreads up in the linker order and don't mark it for delay load.
2702 Fixes crash during regsvr32 of WebKit (currently repro if you do a spade ti).
2704 Reviewed by Darin, Ada.
2706 * WebKit.vcproj/WebKit.vcproj:
2708 2007-10-11 Steve Falkenburg <sfalken@apple.com>
2710 Delay load additional libraries to improve startup time.
2712 Reviewed by Darin, Ada.
2714 * WebKit.vcproj/WebKit.vcproj:
2716 2007-10-11 Ada Chan <adachan@apple.com>
2718 <rdar://problem/5534421>
2719 Switched to using wkGetDefaultHTTPCookieStorage() to avoid recreating CFHTTPCookieStorageRef.
2720 Removed usage of ResourceHandle::cookieStorage().
2725 (WebView::updateWebCoreSettingsFromPreferences):
2726 (WebView::initWithFrame):
2728 2007-10-10 Alice Liu <alice.liu@apple.com>
2730 Reviewed by Geoff Garen.
2732 Fixed <rdar://5464402> Crash when running fast/frames/onload-remove-iframe-crash.html in DRT
2735 (WebFrame::createFrame):
2736 The crash was caused by the early destruction of the subframe. To resolve this issue,
2737 the manual deref of the child frame that occurs in between being appended to the
2738 frametree and being used in loadURLIntoChild wasn't exactly incorrect, but just needed
2739 to be moved until after loadURLIntoChild. This hasn't been a problem for other uses of
2740 child frames because this test case involves removing a child frame immediately after
2741 loading it, all in an onload handler. Even better than just moving the deref would be
2742 to change the signature of createFrame to use a RefPtr<Frame> so that a manual deref isn't
2743 necessary. This is what was done in this patch.
2745 createFrame() now returns a RefPtr instead of a raw Frame pointer.
2746 Making this change improves the way we handle frames on Windows WebKit.
2749 2007-10-05 Ada Chan <adachan@apple.com>
2751 <rdar://problem/5436617>
2752 Implement WebIconDatabase::delayDatabaseCleanup() and WebIconDatabase::allowDatabaseCleanup().
2756 * WebIconDatabase.cpp:
2757 (WebIconDatabase::delayDatabaseCleanup):
2758 (WebIconDatabase::allowDatabaseCleanup):
2760 2007-10-04 Adele Peterson <adele@apple.com>
2762 * Interfaces/IWebViewPrivate.idl: Moving setInitialFocus down to the end to avoid breaking the OpenSource build.
2764 2007-10-04 Adele Peterson <adele@apple.com>
2768 WebKit/win part of fix for <rdar://problem/5369017> REGRESSION: Can't tab to webview that doesn't have editable content
2770 * WebView.cpp: Added setInitialFocus so the application can specify that its handing off focus to WebKit
2771 and so that it can specify the focus direction.
2773 * Interfaces/IWebViewPrivate.idl: ditto.
2775 2007-10-03 Ada Chan <adachan@apple.com>
2777 <rdar://problem/5521230> Implement IWebIconDatabase::iconURLForURL in WebKit for windows
2779 Reviewed by Steve and Brady.
2781 * Interfaces/IWebIconDatabase.idl:
2782 * WebIconDatabase.cpp:
2783 (WebIconDatabase::iconURLForURL):
2784 * WebIconDatabase.h:
2786 2007-10-02 Sam Weinig <sam@webkit.org>
2788 Rubber-stamped by Adam Roben.
2790 * Interfaces/IWebPreferences.idl: Remove unnecessary comments.
2792 2007-10-02 Darin Adler <darin@apple.com>
2796 - started using the new OwnPtr everywhere we do DeleteObject
2798 * WebNodeHighlight.cpp:
2799 (WebNodeHighlight::updateWindow):
2802 (WebView::deleteBackingStore):
2803 (WebView::ensureBackingStore):
2804 (WebView::addToDirtyRegion):
2805 (WebView::scrollBackingStore):
2806 (WebView::updateBackingStore):
2808 (WebView::paintIntoBackingStore):
2809 (WebView::paintIntoWindow):
2812 2007-10-02 Adam Roben <aroben@apple.com>
2814 Fix <rdar://5505062> WebKit's version-independent ProgIDs contain version numbers
2816 I also added a few registry keys for our version-independent ProgIDs
2817 that we were missing.
2821 * ProgIDMacros.h: Added new macros to get version-independent ProgIDs.
2822 * WebKitDLL.cpp: Use the version-independent ProgIDs in the right
2823 places, and added some new keys for version-independent ProgIDs.
2825 2007-10-02 Anders Carlsson <andersca@apple.com>
2829 Fix a bug discovered by app verifier where we would treat an LPCTSTR as a BSTR causing a crash.
2831 Also rename some protection space constants and change their values to match the mac version.
2833 * Interfaces/IWebURLAuthenticationChallenge.idl:
2834 * WebURLProtectionSpace.cpp:
2835 (WebURLProtectionSpace::initWithHost):
2836 (WebURLProtectionSpace::initWithProxyHost):
2837 (WebURLProtectionSpace::protocol):
2838 (WebURLProtectionSpace::proxyType):
2840 2007-09-29 Adam Roben <aroben@apple.com>
2842 Clean-up in preparation for <rdar://5505062> WebKit's version-independent ProgIDs contain version numbers
2846 * ProgIDMacros.h: Stringify the passed in class name.
2847 * WebKitDLL.cpp: Added a FOR_EACH_CLASS macro to ensure that our class
2848 lists stay in the right order, and updated uses of the *_PROGID macros
2849 for to take the stringification into account.
2851 2007-09-27 Kevin McCullough <kmccullough@apple.com>
2855 - <rdar://5261371> Nothing downloaded when exporting bookmarks from iGoogle web history
2856 - Implemented IWebHTTPURLResponse::allHeaderFields so that if the content disposition is "attachment" we will download the file instead of display it. Also implemented some missing functionality.
2858 * HTTPHeaderPropertyBag.cpp: Added.
2859 (HTTPHeaderPropertyBag::HTTPHeaderPropertyBag):
2860 (HTTPHeaderPropertyBag::createInstance):
2861 (HTTPHeaderPropertyBag::setResponse):
2862 (HTTPHeaderPropertyBag::response):
2863 (HTTPHeaderPropertyBag::QueryInterface):
2864 (HTTPHeaderPropertyBag::AddRef):
2865 (HTTPHeaderPropertyBag::Release):
2866 (ConvertFromLPCOLESTR):
2868 (ConvertFromVariant):
2869 (HTTPHeaderPropertyBag::Read):
2870 (HTTPHeaderPropertyBag::Write):
2871 * HTTPHeaderPropertyBag.h: Added.
2872 * Interfaces/IWebHTTPURLResponse.idl:
2873 * WebKit.vcproj/WebKit.vcproj:
2874 * WebURLResponse.cpp:
2875 (WebURLResponse::allHeaderFields):
2876 (WebURLResponse::isAttachment):
2879 2007-09-27 Ada Chan <adachan@apple.com>
2881 <rdar://problem/5507481> Added a delegate method to inform the client
2882 app that WebView has painted.
2886 * Interfaces/IWebUIDelegatePrivate.idl:
2888 (WebView::updateBackingStore):
2890 2007-09-25 Adam Roben <aroben@apple.com>
2892 Add WebKitInitializer to WebKit.sln
2896 * WebKit.vcproj/WebKit.sln: DumpRenderTree and testkjs now depend on
2899 2007-09-25 Darin Adler <darin@apple.com>
2903 - fix <rdar://problem/5095701> Download requring HTTP auth fails
2904 (progress bar forever)
2906 The functions in WebDownload relating to authentication challenges needed
2910 (WebDownload::cancelAuthenticationChallenge): Implement.
2911 (WebDownload::continueWithoutCredentialForAuthenticationChallenge): Ditto.
2912 (WebDownload::useCredential): Ditto.
2913 (WebDownload::willSendRequest): Fix storage leak by adopting request
2914 and response after creating them. Also retain the result before returning
2915 it, since that's the API contract with CFNetwork.
2916 (WebDownload::didReceiveAuthenticationChallenge): Implement.
2917 (WebDownload::didReceiveResponse): Fix storage leak by adopting response.
2918 (WebDownload::willResumeWithResponse): Ditto.
2919 (WebDownload::didFail): Ditto.
2921 * WebURLAuthenticationChallenge.h: Get rid of the IID #define,
2922 instead using __declspec(uuid). Added a sender parameter to the
2923 create function and an m_sender data member.
2924 * WebURLAuthenticationChallenge.cpp:
2925 (WebURLAuthenticationChallenge::WebURLAuthenticationChallenge): Added an
2926 explicit sender parameter so this can be used with a WebDownload, which
2927 does not involve a ResourceHandle. Later we should clean this up and not
2928 involve WebCore or ResourceHandle directly even for the non-download case.
2929 (WebURLAuthenticationChallenge::createInstance): Added an overload for the
2930 case with an explicit sender parameter.
2931 (WebURLAuthenticationChallenge::QueryInterface): Use __uuidof for the ID
2932 of this class. In general, we should move to __uuidof as much as possible
2933 and keep the separate macros to a minimum -- but we should do this for all
2934 uses of each class at one time to make sure we don't run into problems
2935 with two different UUIDs for the same class. This patch does it for three
2937 (WebURLAuthenticationChallenge::initWithProtectionSpace): Use the query
2938 constructor instead of an explicit QueryInterface for WebURLCredential.
2939 This is another class where I'm switching from CLSID/IID macros to the
2940 use of __uuidof, but in this case the use of __uuidof is implicit.
2941 (WebURLAuthenticationChallenge::initWithAuthenticationChallenge): Ditto,
2942 but for WebURLAuthenticationChallenge and WebURLAuthenticationChallengeSender.
2943 (WebURLAuthenticationChallenge::sender): Use the new m_sender member to
2944 cache the sender object and also use the one that was passed into the
2945 constructor, if any.
2947 * WebURLAuthenticationChallengeSender.h: Get rid of the IID #define,
2948 instead using __declspec(uuid). Also minimize includes and make data
2949 members private instead of protected.
2950 * WebURLAuthenticationChallengeSender.cpp:
2951 (WebURLAuthenticationChallengeSender::QueryInterface): Use __uuidof instead
2953 (WebURLAuthenticationChallengeSender::cancelAuthenticationChallenge):
2954 Use query constructor instead of QueryInterface.
2955 (WebURLAuthenticationChallengeSender::continueWithoutCredentialForAuthenticationChallenge):
2957 (WebURLAuthenticationChallengeSender::useCredential): Ditto.
2959 * WebURLCredential.cpp: (WebURLCredential::QueryInterface): Use __uuidof
2960 instead of CLSID_WebURLCredential.
2962 - tangentially-related cleanup
2965 (WebFrame::dispatchDidReceiveAuthenticationChallenge): Use the adopt
2966 constructor instead of a separate adoptRef call.
2967 (WebFrame::dispatchDidCancelAuthenticationChallenge): Ditto.
2969 2007-09-24 Brady Eidson <beidson@apple.com>
2971 Reviewed by John Sullivan
2973 Fix for <rdar://5493371> - Crash in Icon Database on Windows
2975 * WebIconDatabase.cpp:
2976 (WebIconDatabase::iconForURL): If the URL is NULL, fallback to the default icon without asking WebCore
2978 2007-09-24 Adam Roben <aroben@apple.com>
2980 Fix <rdar://5499507> FrameView will always have size (0,0) if its parent WebView is never resized
2985 (WebView::initWithFrame): Set the main FrameView's size to the size of
2988 2007-09-21 Kevin McCullough <kmccullough@apple.com>
2990 - Fixed a syntax guideline mistake.
2992 * WebChromeClient.cpp:
2993 (WebChromeClient::scrollbarsVisible):
2995 2007-09-20 Oliver Hunt <oliver@apple.com>
2999 <rdar://problem/5487153> Korean characters are displayed as garbage with default encoding in some Korean web sites
3001 Adding support for per-localisation default character encodings on
3004 * English.lproj/Localizable.strings:
3005 * WebPreferences.cpp:
3006 (WebPreferences::initializeDefaultSettings):
3008 2007-09-20 Kevin McCullough <kmccullough@apple.com>
3012 - Added the ability to ask if scrollbars are visible
3013 - <rdar://problem/5496211> scrollbarsVisible in WebChromeClient is not implemented
3015 * WebChromeClient.cpp:
3016 (WebChromeClient::scrollbarsVisible):
3018 2007-09-20 Ada Chan <adachan@apple.com>
3020 <rdar://problem/5477240> Regression: Footer is too high in print preview
3025 (WebFrame::WebFrame): initialize new data member m_pageHeight, which is the height of the page adjusted for margins.
3026 (WebFrame::computePageRects): get the height of the page adjusted for margins by passing m_pageHeight to
3027 computePageRectsForFrame().
3028 (WebFrame::spoolPages): footer rect's top is the max of the bottom of the page content and the bottom of the page
3029 minus footer height.
3032 2007-09-19 Kevin McCullough <kmccullough@apple.com>
3036 - <rdar://problem/5101991> Avril Lavigne music player comes up in a window with scrollbars
3037 - Implementing missing scrollbar functionality to allow turning off scrollbars correctly.
3039 * Interfaces/IWebFrame.idl:
3040 * Interfaces/IWebFrameView.idl:
3041 * WebChromeClient.cpp:
3042 (WebChromeClient::setScrollbarsVisible):
3044 (WebFrame::setAllowsScrolling):
3045 (WebFrame::allowsScrolling):
3046 (WebFrame::frameView):
3049 2007-09-20 Brady Eidson <beidson@apple.com>
3051 Reviewed by Dave Hyatt
3053 <rdar://problem/5245981> - No favicon shows up for cnet.com
3055 * WebIconDatabase.cpp:
3056 (WebIconDatabase::iconForURL): Call getHBITMAPOfSize
3057 (WebIconDatabase::getOrCreateDefaultIconBitmap): Ditto
3059 2007-09-19 Sam Weinig <sam@webkit.org>
3061 Rubber stamped by Adam Roben.
3063 * WebKit.vcproj/WebKit.sln: Update location of DumpRenderTree and TestNetscapePlugin
3064 to point to their new locations.
3066 2007-09-18 Brady Eidson <beidson@apple.com>
3070 Final part of <rdar://problem/5471308> - Hook up async icon database on Windows
3072 * CFDictionaryPropertyBag.cpp:
3073 (CFDictionaryPropertyBag::CFDictionaryPropertyBag): Took the opportunity to rewrite with a RetainPtr
3074 since it became available after the initial implementation
3075 (CFDictionaryPropertyBag::setDictionary):
3076 (CFDictionaryPropertyBag::dictionary): Added accessor to the CFDictionaryRef to ease use within WebKit
3077 (CFDictionaryPropertyBag::QueryInterface): Added IID_CFDictionaryPropertyBag accessor
3078 (CFDictionaryPropertyBag::Read):
3079 (CFDictionaryPropertyBag::Write):
3080 * CFDictionaryPropertyBag.h: Added IID_CFDictionaryPropertyBag
3083 (WebFrame::url): Added accessor, gets the current URL from WebCore
3084 (WebFrame::dispatchDidReceiveIcon): Calls through to the WebView
3085 (WebFrame::registerForIconNotification): Ditto
3088 * WebIconDatabase.cpp:
3089 (WebIconDatabase::iconDatabaseDidAddIconNotification):
3090 (WebIconDatabase::iconDatabaseNotificationUserInfoURLKey):
3091 (WebIconDatabase::iconDatabaseDidRemoveAllIconsNotification):
3092 (postDidRemoveAllIconsNotification):
3093 (postDidAddIconNotification):
3094 * WebIconDatabase.h:
3097 (WebView::close): Unregister for the notification, just in case
3098 (WebView::notifyDidAddIcon): Called when the webview gets the didAddIcon notification, compares the url
3099 in the notification to the current main frame URL. If they match, calls to dispatchDidReceiveIconFromWebFrame
3100 (WebView::registerForIconNotification):
3101 (WebView::dispatchDidReceiveIconFromWebFrame): Dispatches the FrameLoadDelegate call. Once the delegate call is dispatched,
3102 either via the FrameLoaderClient interface of by listening for a notification, we know that our info is up to date in the
3103 IconDatabase and we don't need to listen for the generic notification any long, so we unregister for it here, as well.
3104 (WebView::onNotify): The WebView listens for two notifications now, so make the decision which was received
3107 2007-09-18 Brady Eidson <beidson@apple.com>
3109 Reviewed by Ada and Geoff
3111 Part of <rdar://problem/5471308> - Get async Icon Database fully hooked up on Windows
3113 Hook up main thread delivery of Icon Database notifications from the secondary thread
3115 * WebIconDatabase.cpp:
3116 (WebIconDatabase::WebIconDatabase): Initialize m_deliveryRequested
3117 (WebIconDatabase::init): Set the IconDatabaseClient to the shared WebIconDatabase
3118 (WebIconDatabase::dispatchDidRemoveAllIcons): Queue the notification to be delivered on the main thread then
3119 ask for the delivery
3120 (WebIconDatabase::dispatchDidAddIconForPageURL): Ditto
3121 (WebIconDatabase::scheduleNotificationDelivery): If the m_deliveryRequested hasn't been set, then set it
3122 and perform the callOnMainThread() for WebIconDatabase::deliverNotifications
3123 (postDidRemoveAllIconsNotification):
3124 (postDidAddIconNotification):
3125 (WebIconDatabase::deliverNotifications): Deliver all notifications in the current queue
3126 * WebIconDatabase.h:
3128 2007-09-17 Geoffrey Garen <ggaren@apple.com>
3130 Reviewed by Darin Adler.
3132 Fixed a hang due to an infinite script running in the window's unload
3133 event handler, which may be the cause of <rdar://problem/5479443>
3134 REGRESSION: Hang due to infinite JS recursion on close @ engadget.com
3137 Added a bunch of WebKitMac's close features, and reordered others to
3142 (WebView::removeDragCaret):
3144 2007-09-17 Adam Roben <aroben@apple.com>
3146 Fix <rdar://4979801> overflow divs don't respond to keyboard scrolling (affects RSS pages)
3151 (WebView::keyDown): Attempt to scroll an overflow area before
3152 scrolling the whole frame.
3154 2007-09-17 Brady Eidson <beidson@apple.com>
3158 <rdar://problem/5471308> - Get async Icon Database fully hooked up on Windows
3160 Add a global "shut down WebKit" procedure to do cleanup at the engine level on quit.
3161 Critical now for the IconDatabase and might be for other things in the future.
3164 (shutDownWebKit): For now, just close the IconDatabase
3165 (DllMain): On DLL_PROCESS_DETACH, call shutDownWebKit
3167 2007-09-17 Anders Carlsson <andersca@apple.com>
3171 <rdar://problem/5421997>
3172 http://bugs.webkit.org/show_bug.cgi?id=14247
3173 Display problem with Flash - image does not stop changing
3175 Port the manual load code over from the Mac version.
3178 (WebFrame::WebFramePrivate::WebFramePrivate):
3179 Initialize the plugin pointer.
3181 (WebFrame::finishedLoading):
3182 (WebFrame::setMainDocumentError):
3183 (WebFrame::committedLoad):
3184 Feed the data to the plug-in.
3186 (WebFrame::redirectDataToPlugin):
3187 Store the plug-in widget.
3189 2007-09-14 Steve Falkenburg <sfalken@apple.com>
3194 (WebFrame::createPlugin):
3195 (WebFrame::createJavaAppletWidget):
3197 2007-09-13 Darin Adler <darin@apple.com>
3201 - fix <rdar://problem/5470457> REGRESSION: Input method inline hole is mishandled in text
3202 <input> elements with maxlength limit
3205 (WebView::resetIME): Change to use confirmCompositionWithoutDisturbingSelection.
3206 (WebView::updateSelectionForIME): Update for name changes, and to use new functions
3208 (WebView::onIMEStartComposition): Removed unneeded call to unmarkText.
3209 (compositionToUnderlines): Removed startOffset parameter, since setComposition now
3211 (WebView::onIMEComposition): Changed to use confirmComposition and setComposition.
3212 Logic gets a lot cleaner.
3213 (WebView::onIMEEndComposition): Removed unneeded calls to Editor.
3214 (WebView::onIMERequestCharPosition): Updated for name changes.
3216 2007-09-12 Oliver Hunt <oliver@apple.com>
3221 <rdar://problem/5018591> Windows doesn't have a standard vertical text cursor
3222 <rdar://problem/5224996> Add zoom in and zoom out cursors
3224 Add images for vertical text and zoom in and out cursors to WebKit resources.
3226 * WebKit.vcproj/verticalTextCursor.png: Added.
3227 * WebKit.vcproj/WebKit.rc:
3228 * WebKit.vcproj/WebKit.vcproj:
3229 * WebKit.vcproj/resource.h:
3230 * WebKit.vcproj/zoomInCursor.png: Added.
3231 * WebKit.vcproj/zoomOutCursor.png: Added.
3233 (loadResourceIntoBuffer):
3235 2007-09-12 Adam Roben <aroben@apple.com>
3237 Initialize SafariTheme early in WebKit's instantiation
3239 New versions of SafariTheme will require this initialization. We have
3240 to use GetProcAddress for now since the initialize method doesn't
3241 exist in any released SafariTheme.
3245 * WebKit.vcproj/debug_internal.vsprops: Pick up the debug SafariTheme.
3246 * WebKitClassFactory.cpp:
3247 (WebKitClassFactory::WebKitClassFactory): Call STInitialize.
3249 2007-09-12 Ada Chan <adachan@apple.com>
3251 <rdar://problem/5478690> Regression: printing: footer only appears on the first page of print
3256 (WebFrame::spoolPages): the footer rect is relative to the top left of the current page. So
3257 instead of passing pageRect.bottom() as the top of the footer rect (which is relative to the
3258 document), we should pass in headerHeight plus the height of the pageRect.
3260 2007-09-12 Anders Carlsson <andersca@apple.com>
3262 Reviewed by Darin (reluctantly).
3264 <rdar://problem/5320461>
3265 http://bugs.webkit.org/show_bug.cgi?id=14548
3266 REGRESSION (r23987-r24061) : Reproducible crash with a local stylesheet file
3268 Add a workaround which converts the string passed in to an URL if it's a path.
3271 (WebView::updateWebCoreSettingsFromPreferences):
3273 2007-09-10 Steve Falkenburg <sfalken@apple.com>
3275 Remove site-specific hacks that we don't need anymore.
3280 (WebView::userAgentForKURL):
3282 2007-09-08 Steve Falkenburg <sfalken@apple.com>
3284 Prevent WebKit version numbers from containing "4" in Windows.
3288 * WebKit.vcproj/VERSION: Bump version since our current version ends in 4.
3289 * WebKit.vcproj/auto-version.sh: Add version checking code.
3291 2007-09-08 Brady Eidson <beidson@apple.com>
3293 <rdar://problem/5434431> - Asynchronous Icon Database
3296 (WebFrame::didPerformFirstNavigation): Empty impl for now
3297 (WebFrame::registerForIconNotification): Ditto
3300 2007-09-05 Geoffrey Garen <ggaren@apple.com>
3302 Reviewed by Darin Adler, Maciej Stachowiak, Mark Rowe, Tim Hatcher.
3304 Fixed <rdar://problem/5326009> Make non-browser WebKit clients have no
3305 memory cache, or a very tiny one
3307 Keep the Windows build working with an empty stub.
3310 (FrameLoaderClient::didPerformFirstNavigation):
3313 2007-09-07 Ada Chan <adachan@apple.com>
3315 Need to let the OS handle Alt+F4.
3323 2007-09-07 Anders Carlsson <andersca@apple.com>
3327 <rdar://problem/5461487>
3328 Seed: Embedded media content (Flash Player 9) inside RSS reported as unknown MIME type.
3330 Don't return ObjectContentNone if the URL's extension can't be mapped to a MIME type. If the MIME type is empty,
3331 we will try to display the content in a subframe instead, just like Mac WebKit.
3334 (WebFrame::objectContentType):
3336 2007-09-07 Ada Chan <adachan@apple.com>
3338 <rdar://problem/5395928> Need to be able to handle context menu item selection by index
3343 (WebView::performContextMenuAction): performContextMenuAction() can now handle context menu
3344 item selection via WM_MENUCOMMAND (by specifying byPosition to be true). In that case, we
3345 get the ContextMenuItem by position rather than by action id.
3346 (WebViewWndProc): handle WM_MENUCOMMAND
3349 2007-09-07 Ada Chan <adachan@apple.com>
3351 <rdar://problem/5453494> Better lifetime management of WebDataSource and WebDocumentLoader
3352 The problem was that WebDataSource does not hold a strong reference to the WebDocumentLoader. If
3353 a WebDataSource is still around after the loader has been destroyed, it'll just point to
3354 a stale WebDocumentLoader.
3355 To fix this without a circular reference, WebDataSource now holds a strong reference to the
3356 WebDocumentLoader. The WebDocumentLoader holds a strong reference to the WebDataSource
3357 until it's detached from the WebFrame. When the WebDataSource is destroyed, it'll notify
3358 its WebDocumentLoader so the loader will clear any references to it.
3362 * WebDataSource.cpp:
3363 (WebDataSource::~WebDataSource): call WebDocumentLoader::detachDataSource() so the loader
3364 will clear any references to this data source
3365 (WebDataSource::documentLoader): m_loader is now a RefPtr so we need to call get().
3367 * WebDocumentLoader.cpp:
3368 (WebDocumentLoader::WebDocumentLoader): initialize m_dataSource since it's no longer a COMPtr.
3369 (WebDocumentLoader::~WebDocumentLoader): release m_dataSource if necessary
3370 (WebDocumentLoader::setDataSource): add a reference to m_dataSource
3371 (WebDocumentLoader::dataSource):
3372 (WebDocumentLoader::detachDataSource): clear m_detachedDataSource.
3373 (WebDocumentLoader::attachToFrame): call setDataSource() so it'll add the reference to the data source if necessary.
3374 (WebDocumentLoader::detachFromFrame): release the reference to the data source
3375 * WebDocumentLoader.h:
3377 2007-09-05 Dave Hyatt <hyatt@apple.com>
3379 Make sure ALT+other keys is properly sent into the DOM so that Web pages (and editing fields) can
3380 detect key combos like ALT+Enter.
3390 2007-09-04 Sam Weinig <sam@webkit.org>
3394 * WebKit.vcproj/WebKit.vcproj:
3396 2007-09-01 Oliver Hunt <oliver@apple.com>
3400 <rdar://problem/5344848> IME is incorrectly used for key events when on non-editable regions
3402 When focusing a password field or a non-editable element we disassociate any IME that may have
3403 been active, and reassociate should a non-password editable element is focused.
3405 This makes password input with an IME active simpler, and brings our IME behaviour in line with
3408 * WebEditorClient.cpp:
3409 (WebEditorClient::setInputMethodState):
3410 * WebEditorClient.h:
3413 (WebView::setInputMethodState):
3416 2007-08-31 Steve Falkenburg <sfalken@apple.com>
3418 <rdar://problem/5432594> Safari quits when hovering over mailto links on a webpage
3420 In addition to substituting %@ with %s, we also need to substitute %{1-9}$@ with %{1-9}$s.
3424 * WebLocalizableStrings.cpp:
3425 (WebLocalizedLPCTSTR):
3427 2007-08-29 Ada Chan <adachan@apple.com>
3429 <rdar://problem/5074612> Added SPI to retrieve certificate info from a WebError.
3433 * Interfaces/IWebErrorPrivate.idl: Added IWebErrorPrivate
3435 (WebError::QueryInterface): WebError now also implements IWebErrorPrivate
3436 (WebError::sslPeerCertificate): retrieves certificate info from CFError's user info.
3438 * WebKit.vcproj/WebKitGUID.vcproj: Added IWebErrorPrivate_i.c
3440 2007-08-28 Steve Falkenburg <sfalken@apple.com>
3442 <rdar://problem/5079253> Cannot set different margins for the page
3444 Added support for setting margins via page setup for Windows printing.
3448 * Interfaces/IWebUIDelegate.idl: Added webViewPrintingMarginRect.
3450 (WebFrame::printerMarginRect): Added.
3451 (WebFrame::computePageRects): Account for margins when calculating page rects.
3452 (WebFrame::spoolPages): Position footer at the bottom of the page rect (fixes footer drawing if left/right margins are set).
3455 2007-08-28 Jon Honeycutt <jhoneycutt@apple.com>
3459 <rdar://problem/5444457>: Content is cut when page orientation changed
3461 Fix: Don't return WebFrame::m_pageRects if it exists; let
3462 computePageRectsForFrame clear and rewrite it.
3465 (WebFrame::computePageRects): Removed an early-return case. Added a
3468 2007-08-28 Ada Chan <adachan@apple.com>
3470 <rdar://problem/4876242> Added SPI to fetch SSL certificate information.
3472 Reviewed by Adam and Steve.
3474 * Interfaces/IWebURLResponsePrivate.idl: Added.
3475 * WebKit.vcproj/Interfaces.vcproj:
3476 * WebKit.vcproj/WebKitGUID.vcproj:
3477 * WebURLResponse.cpp:
3478 (WebURLResponse::QueryInterface):
3479 (WebURLResponse::sslPeerCertificate): gets peer certificate context from CFNetwork
3480 (WebURLResponse::certificateDictionary): gets the dictionary that contains SSL certificate
3481 info from CFNetwork. We retain the dictionary to ensure the certificate context is valid
3482 throughout the lifetime of the WebURLResponse.
3485 2007-08-27 Steve Falkenburg <sfalken@apple.com>
3487 <rdar://problem/5424801> REGRESSION (r25151): Web page area of window doesn't redraw if page isn't loaded
3489 Don't bypass WebView WM_PAINT if the WebView has never committed a page.
3494 (WebViewWndProc): Don't skip painting if we haven't committed any pages in this view.
3496 2007-08-25 Oliver Hunt <oliver@apple.com>
3498 Reviewed by Adam and Sam
3500 <rdar://problem/5269732> Safari 3.0 for Windows cuts off text in textarea boxes during sending forms (14562)
3501 <http://bugs.webkit.org/show_bug.cgi?id=14562> [Win] Textarea contents partially eaten on submit/copy
3503 WebView::handleEditingKeyboardEvent assumed all keycodes that did not trigger a named command were
3504 to be inserted. This could cause unexpected behaviour when control characters (eg. escape) are sent,
3505 or could cause data loss when sent a null character (as happens when dead keys are used for international
3508 This patch corrects WebView::handleEditingKeyboardEvent to prevent such characters from being sent
3509 to Editor::insertText. This behaviour matches Firefox.
3512 (WebView::handleEditingKeyboardEvent):
3514 2007-08-24 Sam Weinig <sam@webkit.org>
3516 Revert r25216 which renamed the COM DOM bindings to use Deprecated prefix.
3518 2007-08-24 Ada Chan <adachan@apple.com>
3520 <rdar://problem/5147315> and <rdar://problem/5183935>
3521 Added accelerator key mappings for Select All, Undo, and Redo.
3527 2007-08-24 Jon Honeycutt <jhoneycutt@apple.com>
3531 Part of <rdar://problem/5433236> Print preview of empty txt file crashes
3535 (WebFrame::computePageRects): Pass m_pageRects by reference into
3536 computePageRectsForFrame
3538 2007-08-24 Sam Weinig <sam@webkit.org>
3540 Rubber-stamped by Adam Roben.
3542 <rdar://problem/5434593> Deprecate current manually written COM DOM bindings in anticipation of autogeneration
3544 Rename COM DOM bindings to use Deprecated prefix.
3546 * DOMCSSClasses.cpp:
3547 (DeprecatedDOMCSSStyleDeclaration::DeprecatedDOMCSSStyleDeclaration):
3548 (DeprecatedDOMCSSStyleDeclaration::~DeprecatedDOMCSSStyleDeclaration):
3549 (DeprecatedDOMCSSStyleDeclaration::createInstance):
3550 (DeprecatedDOMCSSStyleDeclaration::QueryInterface):
3551 (DeprecatedDOMCSSStyleDeclaration::cssText):
3552 (DeprecatedDOMCSSStyleDeclaration::setCssText):
3553 (DeprecatedDOMCSSStyleDeclaration::getPropertyValue):
3554 (DeprecatedDOMCSSStyleDeclaration::getPropertyCSSValue):
3555 (DeprecatedDOMCSSStyleDeclaration::removeProperty):
3556 (DeprecatedDOMCSSStyleDeclaration::getPropertyPriority):
3557 (DeprecatedDOMCSSStyleDeclaration::setProperty):
3558 (DeprecatedDOMCSSStyleDeclaration::length):
3559 (DeprecatedDOMCSSStyleDeclaration::item):
3560 (DeprecatedDOMCSSStyleDeclaration::parentRule):
3562 (DeprecatedDOMCSSStyleDeclaration::AddRef):
3563 (DeprecatedDOMCSSStyleDeclaration::Release):
3564 (DeprecatedDOMCSSStyleDeclaration::throwException):
3565 (DeprecatedDOMCSSStyleDeclaration::callWebScriptMethod):
3566 (DeprecatedDOMCSSStyleDeclaration::evaluateWebScript):
3567 (DeprecatedDOMCSSStyleDeclaration::removeWebScriptKey):
3568 (DeprecatedDOMCSSStyleDeclaration::stringRepresentation):
3569 (DeprecatedDOMCSSStyleDeclaration::webScriptValueAtIndex):
3570 (DeprecatedDOMCSSStyleDeclaration::setWebScriptValueAtIndex):
3571 (DeprecatedDOMCSSStyleDeclaration::setException):
3572 * DOMCoreClasses.cpp:
3573 (DeprecatedDOMObject::QueryInterface):
3574 (DeprecatedDOMNode::QueryInterface):
3575 (DeprecatedDOMNode::nodeName):
3576 (DeprecatedDOMNode::nodeValue):
3577 (DeprecatedDOMNode::setNodeValue):
3578 (DeprecatedDOMNode::nodeType):
3579 (DeprecatedDOMNode::parentNode):
3580 (DeprecatedDOMNode::childNodes):
3581 (DeprecatedDOMNode::firstChild):
3582 (DeprecatedDOMNode::lastChild):
3583 (DeprecatedDOMNode::previousSibling):
3584 (DeprecatedDOMNode::nextSibling):
3585 (DeprecatedDOMNode::attributes):
3586 (DeprecatedDOMNode::ownerDocument):
3587 (DeprecatedDOMNode::insertBefore):
3588 (DeprecatedDOMNode::replaceChild):
3589 (DeprecatedDOMNode::removeChild):
3590 (DeprecatedDOMNode::appendChild):
3591 (DeprecatedDOMNode::hasChildNodes):
3592 (DeprecatedDOMNode::cloneNode):
3593 (DeprecatedDOMNode::normalize):
3594 (DeprecatedDOMNode::isSupported):
3595 (DeprecatedDOMNode::namespaceURI):
3596 (DeprecatedDOMNode::prefix):
3597 (DeprecatedDOMNode::setPrefix):
3598 (DeprecatedDOMNode::localName):
3599 (DeprecatedDOMNode::hasAttributes):
3600 (DeprecatedDOMNode::isSameNode):
3601 (DeprecatedDOMNode::isEqualNode):
3602 (DeprecatedDOMNode::textContent):
3603 (DeprecatedDOMNode::setTextContent):
3604 (DeprecatedDOMNode::addEventListener):
3605 (DeprecatedDOMNode::removeEventListener):
3606 (DeprecatedDOMNode::dispatchEvent):
3607 (DeprecatedDOMNode::DeprecatedDOMNode):
3608 (DeprecatedDOMNode::~DeprecatedDOMNode):
3609 (DeprecatedDOMNode::createInstance):
3610 (DeprecatedDOMNodeList::QueryInterface):
3611 (DeprecatedDOMNodeList::item):
3612 (DeprecatedDOMNodeList::length):
3613 (DeprecatedDOMNodeList::DeprecatedDOMNodeList):
3614 (DeprecatedDOMNodeList::~DeprecatedDOMNodeList):
3615 (DeprecatedDOMNodeList::createInstance):
3616 (DeprecatedDOMDocument::QueryInterface):
3617 (DeprecatedDOMDocument::doctype):
3618 (DeprecatedDOMDocument::implementation):
3619 (DeprecatedDOMDocument::documentElement):
3620 (DeprecatedDOMDocument::createElement):
3621 (DeprecatedDOMDocument::createDocumentFragment):
3622 (DeprecatedDOMDocument::createTextNode):
3623 (DeprecatedDOMDocument::createComment):
3624 (DeprecatedDOMDocument::createCDATASection):
3625 (DeprecatedDOMDocument::createProcessingInstruction):