79fe1116231e66f7a8a11d917fb76a902c69b6b8
[WebKit-https.git] / WebKit / qt / ChangeLog
1 2008-09-16  Alp Toker  <alp@nuanti.com>
2
3         Prospective Qt build fix. ScrollBar.h -> Scrollbar.h
4
5         * Api/qwebframe.cpp:
6         * Api/qwebpage.cpp:
7
8 2008-09-15  Eli Fidler  <eli@staikos.net>
9
10         Reviewed by Simon.
11
12         Yahoo assumes non-RFC compliant HTTP redirect behaviour. QtWebKit is (more)
13         compliant, so broken. I think the Yahoo-assumed behaviour is real-world standard.
14
15         Basically, Yahoo's login procedure for flickr looks like this:
16         1. load flickr.com, click "sign in"
17         2. this is a Yahoo page with a form
18         (https://login.yahoo.com/config/login?.src=flickr...)
19         when you click the "Sign In" button, the form submits to a yahoo.com POST URL
20         3. The POST returns with a 302 (redirect) to another yahoo.com URL
21         4. If you POST the redirected Location:, it all breaks. Yahoo assumes you will
22         convert the method to GET, which works fine but is definitely not
23         RFC-compliant. It would be compliant for 303, and the RFC says that many
24         implementations treat 302 and 303 the same way (for HTTP/1.0 compliance), but
25         converting to GET is explicitly wrong for 302.
26
27         * Api/qwebnetworkinterface.cpp:
28         (QWebNetworkManager::started):
29
30 2008-09-15  Tor Arne Vestbø  <tavestbo@trolltech.com>
31
32         Reviewed by Simon.
33
34         Make QtInstance::create() private and fix caching
35
36         * Api/qwebframe.cpp:
37         (QWebFrame::addToJavaScriptWindowObject):
38
39 2008-09-11  Tor Arne Vestbø  <tavestbo@trolltech.com>
40
41         Rubber-stamped by Simon.
42
43         Prevent leaking pages and frames in QWebKit autotest
44
45         * tests/qwebpage/tst_qwebpage.cpp:
46
47 2008-09-11  Tor Arne Vestbø  <tavestbo@trolltech.com>
48
49         Reviewed by Simon
50
51         Fix QtWebKit autotest
52
53         * tests/qwebpage/tst_qwebpage.cpp:
54         (tst_QWebPage::userStyleSheet):
55
56 2008-09-09  Joerg Bornemann  <joerg.bornemann@trolltech.com>
57
58         Reviewed by Simon.
59
60         Added missing WebCore prefix to ResourceRequest
61
62         This is needed for Windows/CE compilation where there is a conflict
63         with a global ResourceRequest type. Elsewhere in this file ResourceRequest
64         is also prefixed with WebCore::
65
66         * Api/qwebframe.cpp:
67         (QWebFrame::QWebFrame):
68
69 2008-09-07  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
70
71         Reviewed by Maciej Stachowiak.
72
73         Bug 20704: Replace the KJS namespace
74         <https://bugs.webkit.org/show_bug.cgi?id=20704>
75
76         Rename the KJS namespace to JSC.
77
78         * Api/qwebframe.cpp:
79         (QWebFrame::addToJavaScriptWindowObject):
80         (QWebFrame::evaluateJavaScript):
81
82 2008-09-04  Tor Arne Vestbø  <tavestbo@trolltech.com>
83
84         Reviewed by Simon
85
86         Fix the QtWebKit build to match changes in r36016
87
88         * Api/qwebframe.cpp:
89         (QWebFrame::addToJavaScriptWindowObject):
90
91 2008-09-04  Tor Arne Vestbø  <tavestbo@trolltech.com>
92
93         Reviewed by Simon.
94
95         Re-enable support for user stylesheets in QtWebKit
96         
97         QtWebKit now follows the FRAME_LOADS_USER_STYLESHEET
98         code path, which allows us to keep API support for
99         loading user style sheets from remote URLs.
100         
101         As part of the change UserStyleSheetLoader.cpp/h was
102         moved from WebCore/loader/mac to WebCore/loader.
103
104         * tests/qwebpage/tst_qwebpage.cpp:
105         (tst_QWebPage::userStyleSheet):
106
107 2008-08-29  Holger Hans Peter Freyther  <zecke@selfish.org>
108
109         Reviewed by Eric Seidel.
110
111         [janitor/qt] Start replacing port specific getters with the generic native getter
112         To get the native presentation of an image we currently have platform
113         specific #ifdef's and a generic getter using NativeImagePtr. This patch
114         extends this to the ImageBuffer and updates the Qt platform to get rid
115         of the special #ifdefs.
116
117         https://bugs.webkit.org/attachment.cgi?id=22861
118
119         * Api/qwebframe.cpp:
120         (QWebHitTestResultPrivate::QWebHitTestResultPrivate):
121         * Api/qwebhistory.cpp:
122         * Api/qwebsettings.cpp:
123         (QWebSettings::iconForUrl):
124
125 2008-08-29  Holger Hans Peter Freyther  <zecke@selfish.org>
126
127         Reviewed by Simon.
128
129         Catch up with the introduction of PageGroup in r30840. Enable tracking of
130         visited links, enable this in QWebPage next to the other WebCore init call.
131         Calling this more than once is no issue and a cheap operation, we also do not
132         reset the state. When clearing the history of a page, clear the link state.
133
134         * Api/qwebhistory.cpp:
135         (QWebHistory::clear):
136         * Api/qwebhistoryinterface.cpp:
137         (QWebHistoryInterface::setDefaultInterface):
138         * Api/qwebpage.cpp:
139         (QWebPagePrivate::QWebPagePrivate):
140
141 2008-08-29  Holger Hans Peter Freyther  <zecke@selfish.org>
142
143         Reviewed by Simon.
144
145         Revert revision 34348 which removed the global historyContains() function.
146
147         This function was needed to implement the public API of QWebHistoryInterface
148         and will be used again in the near future.
149
150         * Api/qwebhistoryinterface.cpp:
151         (WebCore::historyContains):
152
153 2008-08-27  Erik Bunce  <elbunce@thehive.com>
154
155         Reviewed by Eric Seidel.
156
157         https://bugs.webkit.org/show_bug.cgi?id=20223
158
159         Add QWebPage::contentsChanged() signal to notify of content changes.
160
161         * Api/qwebpage.cpp:
162         * Api/qwebpage.h:
163         * WebCoreSupport/EditorClientQt.cpp:
164         (WebCore::EditorClientQt::respondToChangedContents):
165
166 2008-08-27  Brady Eidson  <beidson@apple.com>
167
168         Reviewed by Anders
169
170         <rdar://problem/6134133> - Crash when loading large movie as a standalone document
171
172         * WebCoreSupport/FrameLoaderClientQt.cpp:
173         (WebCore::FrameLoaderClientQt::pluginWillHandleLoadError): Stubbed for now
174         * WebCoreSupport/FrameLoaderClientQt.h:
175
176 2008-08-25  Holger Hans Peter Freyther  <zecke@selfish.org>
177
178         Reviewed by Simon.
179
180         [inspector] Emit signals from attachWindow and detachWindow in the Qt platform
181         Allow the user of the API to honor the attachWindow and detachWindow
182         requests and attach the QWebPage/QWebView wherever it is wanted. This needs
183         some more API in QWebPage to be properly exposed.
184
185         * WebCoreSupport/InspectorClientQt.cpp:
186         (WebCore::InspectorClientQt::createPage):
187         (WebCore::InspectorClientQt::attachWindow):
188         (WebCore::InspectorClientQt::detachWindow):
189         * WebCoreSupport/InspectorClientQt.h:
190
191 2008-08-19  Alexey Proskuryakov  <ap@webkit.org>
192
193         Reviewed by Geoff Garen.
194
195         Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
196
197         * Api/qwebframe.cpp:
198         (QWebFrame::addToJavaScriptWindowObject):
199
200 2008-08-15  Håvard Wall  <hwall@trolltech.com>
201
202         Reviewed by Simon.
203
204         Fixes: compile with QT_NO_UNDOCOMMAND/STACK
205         
206
207         * Api/qwebpage.cpp:
208         (SetCursorEvent::SetCursorEvent):
209         (QWebPagePrivate::createContextMenu):
210         (QWebPage::action):
211         * Api/qwebpage.h:
212         * Api/qwebpage_p.h:
213         * WebCoreSupport/EditCommandQt.cpp:
214         (EditCommandQt::EditCommandQt):
215         * WebCoreSupport/EditCommandQt.h:
216         * WebCoreSupport/EditorClientQt.cpp:
217         (dumpPath):
218         (WebCore::EditorClientQt::shouldInsertText):
219         (WebCore::EditorClientQt::shouldChangeSelectedRange):
220         (WebCore::EditorClientQt::isEditable):
221         (WebCore::EditorClientQt::registerCommandForUndo):
222         (WebCore::EditorClientQt::clearUndoRedoOperations):
223         (WebCore::EditorClientQt::canUndo):
224         (WebCore::EditorClientQt::canRedo):
225         (WebCore::EditorClientQt::undo):
226         (WebCore::EditorClientQt::redo):
227         (WebCore::EditorClientQt::shouldInsertNode):
228
229 2008-08-15  Håvard Wall  <hwall@trolltech.com>
230
231         Reviewed by Simon.
232
233         Fixes: compile with QT_NO_STYLE_STYLESHEET
234         
235
236         * WebCoreSupport/FrameLoaderClientQt.cpp:
237         (WebCore::FrameLoaderClientQt::postProgressFinishedNotification):
238         (WebCore::FrameLoaderClientQt::createPlugin):
239
240 2008-08-15  Håvard Wall  <hwall@trolltech.com>
241
242         Reviewed by Simon.
243
244         Fixes: compile with QT_NO_SHORTCUT
245         
246
247         * Api/qwebpage.cpp:
248         (QWebPagePrivate::mouseMoveEvent):
249         (QWebPagePrivate::mouseReleaseEvent):
250         (QWebPagePrivate::dragMoveEvent):
251
252 2008-08-15  Håvard Wall  <hwall@trolltech.com>
253
254         Reviewed by Simon.
255
256         Fixes:    compile with QT_NO_CONTEXTMENU
257         
258
259         * Api/qwebpage.cpp:
260         (editorCommandForWebActions):
261         (QWebPagePrivate::QWebPagePrivate):
262         (QWebPagePrivate::createMainFrame):
263         (QWebPagePrivate::updateEditorActions):
264         (QWebPage::setEditable):
265         * Api/qwebpage.h:
266         * Api/qwebpage_p.h:
267         * Api/qwebview.cpp:
268         * Api/qwebview.h:
269
270 2008-08-15  Håvard Wall  <hwall@trolltech.com>
271
272         Reviewed by Simon.
273
274         Fixes: compile with QT_NO_WHEELEVENT
275         
276
277         * Api/qwebpage.cpp:
278         (QWebPagePrivate::updateEditorActions):
279         (QWebPage::event):
280         * Api/qwebpage_p.h:
281         * Api/qwebview.cpp:
282         * Api/qwebview.h:
283
284 2008-08-15  Håvard Wall  <hwall@trolltech.com>
285
286         Reviewed by Simon.
287
288         Fixes: compile with QT_NO_PRINTER
289         
290
291         * Api/qwebframe.cpp:
292         (QWebFrame::print):
293         * Api/qwebframe.h:
294
295 2008-08-15  David Boddie  <dboddie@trolltech.com>
296
297         Reviewed by Simon.
298
299         Doc: Added documentation for default property values.
300         
301
302         * Api/qwebpage.cpp:
303         (QWebPagePrivate::keyPressEvent):
304         (QWebPage::triggerAction):
305         (QWebPage::acceptNavigationRequest):
306         (QWebPage::action):
307         * Api/qwebview.cpp:
308
309 2008-08-15  David Boddie  <dboddie@trolltech.com>
310
311         Reviewed by Simon.
312
313         Doc: Renamed snippets that appear in the code directory.
314         
315
316         * Api/qwebview.cpp:
317         (QWebView::event):
318         (QWebView::print):
319
320 2008-08-12  Timothy Hatcher  <timothy@apple.com>
321
322         Add a stub for InspectorClient::setAttachedWindowHeight.
323
324         * WebCoreSupport/InspectorClientQt.cpp:
325         (WebCore::InspectorClientQt::setAttachedWindowHeight):
326         Call notImplemented().
327         * WebCoreSupport/InspectorClientQt.h:
328
329 2008-08-13  Ariya Hidayat  <ariya.hidayat@trolltech.com>
330
331         Reviewed by Simon.
332
333         Use full-page zoom in QtLauncher.
334
335         * QtLauncher/main.cpp:
336         (MainWindow::zoomIn):
337         (MainWindow::zoomOut):
338         (MainWindow::resetZoom):
339         (MainWindow::setupUI):
340
341 2008-08-13  Ariya Hidayat  <ariya.hidayat@trolltech.com>
342
343         Reviewed by Simon.
344
345         Fix linking with QtWebKit.
346
347         * Api/qwebframe.h: remove non-existing function/property.
348
349 2008-08-13  Simon Hausmann  <hausmann@webkit.org>
350
351         Reviewed by Holger.
352
353         Based on patch by Siraj razick <siraj.razick@collabora.co.uk>
354
355         https://bugs.webkit.org/show_bug.cgi?id=19125
356
357         Added functions to get/set the zoom factor.
358
359         Added a QWebFrame/QWebView::zoomFactor as well as a boolean
360         ZoomTextOnly attribute in QWebSettings.
361
362         * Api/qwebframe.cpp:
363         (QWebFrame::setZoomFactor):
364         (QWebFrame::zoomFactor):
365         * Api/qwebframe.h:
366         * Api/qwebsettings.cpp:
367         (QWebSettingsPrivate::apply):
368         (QWebSettings::QWebSettings):
369         * Api/qwebsettings.h:
370         * Api/qwebview.cpp:
371         (QWebView::setZoomFactor):
372         (QWebView::zoomFactor):
373         * Api/qwebview.h:
374
375 2008-08-13  Simon Hausmann  <hausmann@webkit.org>
376
377         Reviewed by Lars.
378
379         Fix QWebFrame::setHtml() not setting the new contents immediately.
380
381         Added a setter to the DocumentLoader to toggle the deferred loading of the main
382         resource when it comes from substitute data.
383
384         Disable deferred loading of the main resource when we have valid substitute data,
385         as used by QWebFrame::setHtml.
386
387         * WebCoreSupport/FrameLoaderClientQt.cpp:
388         (WebCore::FrameLoaderClientQt::download):
389
390 2008-08-13  Simon Hausmann  <hausmann@webkit.org>
391
392         Rubber-stamped by Holger.
393
394         Fix QWebPage::isModified().
395
396         isModified() would return true after loading a new page or it would continue to
397         return true after undoing modifications. Fix this by eliminating the
398         QWebPagePrivate::modified variable and use the undoStack's canUndo() property
399         instead.
400
401         https://bugs.webkit.org/show_bug.cgi?id=19252
402
403         * Api/qwebpage.cpp:
404         (QWebPage::action):
405         * Api/qwebpage_p.h:
406         * WebCoreSupport/EditorClientQt.cpp:
407         (WebCore::EditorClientQt::respondToChangedContents):
408
409 2008-08-13  David Boddie  <dboddie@trolltech.com>
410
411         Reviewed by Simon.
412
413         Updated docs with the signal emission behavior of urlChanged()
414
415         * Api/qwebframe.cpp:
416
417 2008-08-13  Ariya Hidayat  <ariya.hidayat@trolltech.com>
418
419         Reviewed by Simon.
420
421         Fix Ctrl+Y to work again when editing text in contextEditable mode.
422
423         This fixes regression in LayoutTests/editing/pasteboard/emacs-cntl-y-001.html
424
425         * WebCoreSupport/EditorClientQt.cpp:
426         (WebCore::EditorClientQt::handleKeyboardEvent):
427
428 2008-08-13  Thiago Macieira  <tjmaciei@trolltech.com>
429
430         Reviewed by Simon.
431
432         Fix encoding of [ and ] in the host part of the URL
433
434         Until QUrl is fixed (making QUrl's tolerant parser more tolerant), we have to
435         add this workaround to the QUrl <> WebCore::KURL conversion operator so that it
436         doesn't encode [ and ] when they are found in the host part. That is, the
437         following URL:
438         http://[::1]/
439         is valid and should not be reencoded to:
440         http://%5b::1%5d/
441
442         This change adds the automatic test for it.
443
444         * tests/qwebframe/tst_qwebframe.cpp:
445
446 2008-08-12  Urs Wolfer  <uwolfer@kde.org>
447
448         Reviewed by Simon.
449
450         https://bugs.webkit.org/show_bug.cgi?id=20357
451
452         Fix crash in QWebPage in case contextMenuEvent has been overwritten
453         because context menu has the view as parent and thus is deleted too early.
454
455         Add testcase for this crash.
456
457         * Api/qwebpage_p.h:
458         * tests/qwebpage/tst_qwebpage.cpp:
459         (tst_QWebPage::contextMenuCrash):
460
461 2008-08-07  Simon Hausmann  <hausmann@webkit.org>
462
463         Rubber-stamped by Lars.
464
465         Added API tests for QWebPage/QWebFrame based on QTestLib.
466
467         * tests/qwebframe/qwebframe.pro: Added.
468         * tests/qwebframe/tst_qwebframe.cpp: Added.
469         * tests/qwebpage/qwebpage.pro: Added.
470         * tests/qwebpage/tst_qwebpage.cpp: Added.
471         * tests/tests.pro: Added.
472
473 2008-08-06  Benjamin C Meyer  <ben@meyerhome.net>
474
475         Reviewed by Simon.
476
477         During the drag operation only accept the event if the action is not ignore action.
478
479         * Api/qwebpage.cpp:
480         (QWebPagePrivate::dragEnterEvent):
481         (QWebPagePrivate::dragMoveEvent):
482         (QWebPagePrivate::dropEvent):
483
484 2008-08-06  Ariya Hidayat  <ariya.hidayat@trolltech.com>
485
486         Fix the Qt build due to recent ScriptController refactoring.
487
488         * Api/qwebframe.cpp:
489         (QWebFrame::addToJavaScriptWindowObject):
490
491 2008-08-05  Tor Arne Vestbø  <tavestbo@trolltech.com>
492
493         Reviewed by Simon.
494
495         Move event handling of the return-key from EditorClientQt to QWebPage.
496         
497         https://bugs.webkit.org/show_bug.cgi?id=20191
498         
499         This is a first step in refactoring the big switch block
500         in EditorClientQt::handleKeyboardEvent to using WebActions
501         instead.
502         
503         The new logic uses two new StandardKeys from QKeySequence:
504         
505         - InsertParagraphSeparator
506         - InsertLineSeparator
507         
508         Which translate to the commands InsertNewline and InsertLineBreak
509         respectivly. On Windows/X11 pressing the shift modifier will invoke
510         the latter action. For Mac this is triggered by pressing the meta
511         modifier (Ctrl).
512         
513         Initial patch by: Erik Bunce
514
515         * Api/qwebpage.cpp:
516         (editorActionForKeyEvent):
517         * Api/qwebpage.h:
518         * WebCoreSupport/EditorClientQt.cpp:
519         (WebCore::EditorClientQt::handleKeyboardEvent):
520
521 2008-08-04  Erik Bunce  <elbunce@thehive.com>
522
523         Reviewed by Simon.
524
525         https://bugs.webkit.org/show_bug.cgi?id=20221
526
527         Add updateAction() support to ToggleBold, ToggleItalic, and ToggleUnderline.
528         Add lookup table for mapping web actions to editor commands.
529
530         * Api/qwebpage.cpp:
531         (editorCommandForWebActions):
532         (QWebPagePrivate::updateAction):
533         (QWebPagePrivate::updateEditorActions):
534         (QWebPage::triggerAction):
535         (QWebPage::setEditable):
536
537 2008-08-03  Ariya Hidayat  <ariya.hidayat@trolltech.com>
538
539         Reviewed by Simon.
540
541         A bunch of improvements to the QtLauncher.
542
543         Among others:
544         - Unify and unclutter the toolbar, use menu for addition actions
545         - Simplify URL edit, just use QLineEdit (no fancy close button etc)
546         - Guess the URL from the command line so now we can run ./QtLauncher www.google.com
547         - Shortcut keys for most actions
548         - Simple autocomplete for the URL edit
549         - Actions for zooming, New Window and Close Window
550         - Show Format menu only when the content is set to editable
551
552         * QtLauncher/main.cpp:
553         (MainWindow::MainWindow):
554         (MainWindow::webPage):
555         (MainWindow::changeLocation):
556         (MainWindow::loadFinished):
557         (MainWindow::showLinkHover):
558         (MainWindow::newWindow):
559         (MainWindow::zoomIn):
560         (MainWindow::zoomOut):
561         (MainWindow::resetZoom):
562         (MainWindow::print):
563         (MainWindow::setEditable):
564         (MainWindow::dumpHtml):
565         (MainWindow::setupUI):
566         (main):
567
568 2008-08-04  Erik Bunce  <elbunce@thehive.com>
569
570         Reviewed by Simon.
571
572         https://bugs.webkit.org/show_bug.cgi?id=20198
573
574         Allow Copy key sequence to work in non-editable areas.
575
576         * Api/qwebpage.cpp:
577         (QWebPagePrivate::keyPressEvent):
578
579 2008-07-31  Erik Bunce  <elbunce@thehive.com>
580
581         Reviewed by Simon.
582
583         Make sure edit actions get updated when the contents change.
584
585         * WebCoreSupport/EditorClientQt.cpp:
586         (WebCore::EditorClientQt::respondToChangedContents):
587
588 2008-07-31  Erik Bunce  <elbunce@thehive.com>
589
590         Reviewed by Simon.
591
592         Add simple edit test abilities to QtLauncher.
593
594         * QtLauncher/main.cpp:
595         (MainWindow::MainWindow):
596         (MainWindow::setEditable):
597         (MainWindow::dumpHtml):
598
599 2008-07-31  Alexey Proskuryakov  <ap@webkit.org>
600
601         Rubber-stamped by Maciej.
602
603         Eliminate JSLock (it was already disabled, removing the stub implementaion and all
604         call sites now).
605
606         * Api/qwebframe.cpp:
607         (QWebFrame::addToJavaScriptWindowObject):
608
609 2008-07-27  David Kilzer  <ddkilzer@apple.com>
610
611         Fix Qt build failure.
612
613         * Api/qwebframe.h:
614         (QWebFrame::setScrollOffset): Make argument const.
615
616 2008-07-26  Marc Ordinas i Llopis  <marc.ordinasillopis@collabora.co.uk>
617
618         Reviewed by Simon Hausmann.
619
620         https://bugs.webkit.org/show_bug.cgi?id=20010
621         [Qt] Add API access to scrolling
622
623         * Api/qwebframe.cpp: Added access to a frame scroll offset.
624         (QWebFrame::scroll):
625         (QWebFrame::scrollOffset):
626         (QWebFrame::setScrollOffset):
627         * Api/qwebframe.h:
628
629 2008-07-26  Daniel Jalkut  <jalkut@red-sweater.com>
630
631         Build fix.  Adjust to updated WebCore FrameLoader method names & signatures.
632
633         * Api/qwebpage.cpp:
634         (QWebPage::triggerAction):
635         * WebCoreSupport/FrameLoaderClientQt.cpp:
636         (WebCore::FrameLoaderClientQt::createFrame):
637
638 2008-07-25  Joerg Bornemann  <joerg.bornemann@trolltech.com>
639
640         Reviewed by Simon.
641
642         Compile with QT_NO_PRINTER.
643
644         * QtLauncher/main.cpp:
645         (MainWindow::MainWindow):
646
647 2008-07-24  Tor Arne Vestbø  <tavestbo@trolltech.com>
648
649         Reviewed by Simon
650
651         Don't insert text on keyDown event in EditorClientQt.
652
653         * WebCoreSupport/EditorClientQt.cpp:
654         (WebCore::EditorClientQt::handleKeyboardEvent):
655
656 2008-07-04  Benjamin C Meyer  <ben@meyerhome.net>
657
658         Reviewed by Simon.
659
660         Update the webkit version in the QtWebKit useragent string to match trunk
661
662         * Api/qwebpage.cpp:
663
664 2008-07-02  Simon Hausmann  <hausmann@webkit.org>
665
666         Build fix.
667
668         * Api/qwebpage.cpp:
669         (QWebPage::triggerAction): The signature of setBaseWritingDirection
670         changed to take an enum instead of a string.
671
672 2008-07-01  Alexey Proskuryakov  <ap@webkit.org>
673
674         Reviewed by Darin Adler.
675
676         Disable JSLock for per-thread contexts.
677
678         * Api/qwebframe.cpp:
679         (QWebFrame::addToJavaScriptWindowObject):
680         Pass a parameter (false) to JSLock to indicate that WebKit doesn't need locking.
681         Include JSLock.h, as it is no longer brought in implicitly.
682
683 2008-07-01  Tor Arne Vestbø  <tavestbo@trolltech.com>
684
685         Reviewed by Simon.
686
687         Don't show the tooltip instantly in the QtLauncher.
688         
689         Let the QWebView handle tooltips by itself, so we get
690         the expected delay as everywhere else.
691
692         * QtLauncher/main.cpp:
693
694 2008-06-30  Simon Hausmann  <hausmann@webkit.org>
695
696         Rubber-stamped by Niko.
697
698         Removed the obsolete and unmaintained WebKitPart. The integration of
699         QtWebKit into KDE is now done in the webkitkde component inside KDE.
700
701         * WebKitPart/WebKitFactory.cpp: Removed.
702         * WebKitPart/WebKitFactory.h: Removed.
703         * WebKitPart/WebKitPart.cpp: Removed.
704         * WebKitPart/WebKitPart.desktop: Removed.
705         * WebKitPart/WebKitPart.h: Removed.
706         * WebKitPart/WebKitPart.rc: Removed.
707         * WebKitPart/WebKitPartBrowser.rc: Removed.
708         * WebKitPart/WebKitPartBrowserExtension.cpp: Removed.
709         * WebKitPart/WebKitPartBrowserExtension.h: Removed.
710         * WebKitPart/WebKitPartClient.cpp: Removed.
711         * WebKitPart/WebKitPartClient.h: Removed.
712         * WebKitPart/WebKitPartInterface.cpp: Removed.
713         * WebKitPart/WebKitPartInterface.h: Removed.
714         * WebKitPart/org.kde.WebKitPart.xml: Removed.
715
716 2008-06-24  Simon Hausmann  <hausmann@webkit.org>
717
718         Fix the Qt build, added missing include for RuntimeObjectImp.
719
720         * Api/qwebframe.cpp:
721
722 2008-06-23  Benjamin C Meyer  <ben@meyerhome.net>
723
724         Reviewed by Simon.
725
726         Add function to retrieve the standard context menu
727
728 2008-06-20  Marc Ordinas i Llopis  <marc.ordinasillopis@collabora.co.uk>
729
730         Reviewed by Simon.
731
732         https://bugs.webkit.org/show_bug.cgi?id=19082
733         [Qt] Full-page plugins not activated
734
735         * WebCoreSupport/FrameLoaderClientQt.cpp:
736         (WebCore::FrameLoaderClientQt::committedLoad): Re-check if there's a
737         plugin present, as it can be created during the function.
738
739 2008-06-20  Marco Barisione  <marco.barisione@collabora.co.uk>
740
741         Reviewed by Simon.
742
743         https://bugs.webkit.org/show_bug.cgi?id=19082
744         [Qt] Full-page plugins not activated
745
746         * WebCoreSupport/FrameLoaderClientQt.cpp:
747         (WebCore::FrameLoaderClientQt::canShowMIMEType): Return true if the
748         MIME type is supported by a plugin.
749
750 2008-06-18  Alexey Proskuryakov  <ap@webkit.org>
751
752         Reviewed by Darin Adler.
753
754         Prepare JavaScript heap for being per-thread.
755
756         * Api/qwebframe.cpp:
757         (QWebFrame::addToJavaScriptWindowObject): Trying not to break the build.
758
759 2008-06-18  Julien Chaffraix  <jchaffraix@webkit.org>
760
761         Qt Build fix after r34627.
762
763         * WebCoreSupport/FrameLoaderClientQt.cpp:
764         (WebCore::FrameLoaderClientQt::createPlugin):
765
766 2008-06-15  Darin Adler  <darin@apple.com>
767
768         - give Frame object functions shorter names: scriptProxy() -> script(),
769           selectionController() -> selection(), animationController() -> animation()
770
771         * Api/qwebframe.cpp:
772         (QWebFrame::evaluateJavaScript):
773         * Api/qwebpage.cpp:
774         (QWebPagePrivate::focusInEvent):
775         (QWebPagePrivate::focusOutEvent):
776         (QWebPage::inputMethodQuery):
777         * WebCoreSupport/EditorClientQt.cpp:
778         (WebCore::EditorClientQt::handleKeyboardEvent):
779
780 2008-06-15  Darin Adler  <darin@apple.com>
781
782         - new names for more JavaScriptCore files
783
784         * WebKit_pch.h:
785
786 2008-06-15  Darin Adler  <darin@apple.com>
787
788         - new names for a few key JavaScriptCore files
789
790         * Api/qwebframe.cpp:
791
792 2008-06-14  Darin Adler  <darin@apple.com>
793
794         Rubber stamped by Sam.
795
796         - new names for kjs_binding.h and kjs_proxy.h
797
798         * Api/qwebframe.cpp:
799         (QWebFrame::evaluateJavaScript):
800         * WebKit_pch.h:
801
802 2008-06-14  Darin Adler  <darin@apple.com>
803
804         - fix build
805
806         * Api/qwebframe.cpp:
807         (QWebFramePrivate::init): Added a missing semicolon.
808
809 2008-06-14  Darin Adler  <darin@apple.com>
810
811         Reviewed by Sam.
812
813         - more https://bugs.webkit.org/show_bug.cgi?id=17257
814           start ref counts at 1 instead of 0 for speed
815
816         * Api/qwebframe.cpp:
817         (QWebFramePrivate::init): Use create instead of new.
818         * WebCoreSupport/FrameLoaderClientQt.cpp:
819         (WebCore::FrameLoaderClientQt::createDocumentLoader): Ditto.
820
821 2008-06-13  Darin Adler  <darin@apple.com>
822
823         - try to fix build
824
825         * WebCoreSupport/FrameLoaderClientQt.h: Add missing argument.
826
827 2008-06-13  Darin Adler  <darin@apple.com>
828
829         Reviewed by John Sullivan.
830
831         - updated for addition of FormState argument to action policy functions
832
833         * WebCoreSupport/FrameLoaderClientQt.cpp:
834         (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNewWindowAction):
835         (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):
836
837 2008-06-11  Ariya Hidayat  <ariya.hidayat@trolltech.com>
838
839         Reviewed by Simon.
840
841         Fix left-click and middle-click mouse event are not properly accepted.
842         
843         When copying or pasting text using left or middle-click, the event must be
844         accepted so that it will not be potentially processed further by the parent
845         and/or sub-classed widget.
846         
847
848         * Api/qwebpage.cpp:
849         (QWebPagePrivate::mouseReleaseEvent):
850
851 2008-06-11  Ariya Hidayat  <ariya.hidayat@trolltech.com>
852
853         Reviewed by Simon.
854
855         Fix input element does not accept character typed in using AltGr.
856
857         EditorClient is modified to catch AltGr and Ctrl+Alt key combination.
858         This fixes http://trolltech.com/developer/task-tracker/index_html?id=207050&method=entry
859
860         * WebCoreSupport/EditorClientQt.cpp:
861         (WebCore::EditorClientQt::handleKeyboardEvent):
862
863 2008-05-26  Jonathon Jongsma  <jonathon.jongsma@collabora.co.uk>
864
865         Reviewed by Simon.
866
867         https://bugs.webkit.org/show_bug.cgi?id=19323
868
869         Implemented the QWebPage::editable property.
870
871         Small documentation fixes by Simon.
872
873         * Api/qwebpage.cpp:
874         (QWebPagePrivate::QWebPagePrivate):
875         (QWebPage::setEditable):
876         (QWebPage::isEditable):
877         * Api/qwebpage.h:
878         * Api/qwebpage_p.h: implement the editable property and add API so that
879         applications can switch edit mode on and off for a particular QWebPage
880         * WebCoreSupport/EditorClientQt.cpp: retrieve editable property from the
881         QWebPage instead of always returning false
882
883 2008-06-09  Tor Arne Vestbø  <tavestbo@trolltech.com>
884
885         Reviewed by Simon
886
887         Make sure web action in context menus have the right enablement,
888         while not messing up other web actions not included in the menu.
889
890         * Api/qwebpage.cpp:
891         (QWebPagePrivate::createContextMenu):
892         (QWebPage::updatePositionDependentActions):
893         * Api/qwebpage_p.h:
894
895 2008-06-09  Benjamin C Meyer  <ben@meyerhome.net>
896
897         Reviewed by Simon
898
899         Add Shift-Space shortcut to go up one screen, the opposite of Space
900         which goes down one screen.
901
902         * Api/qwebpage.cpp:
903         (QWebPagePrivate::handleScrolling):
904
905 2008-06-04  Tor Arne Vestbø  <tavestbo@trolltech.com>
906
907         Reviewed by Simon.
908
909         Fix a failing assertion when calling QWebFrame::evaluateJavaScript.
910
911         The starting line number has to be 1 instead of 0.
912
913         * Api/qwebframe.cpp:
914         (QWebFrame::evaluateJavaScript):
915
916 2008-06-03  Jonathon Jongsma  <jonathon.jongsma@collabora.co.uk>
917
918         Reviewed by Darin Adler.
919
920         * Api/qwebhistoryinterface.cpp: Remove WebCore::historyContains().  This
921         function is not used anywhere internally and is only a convenience
922         function that can still be accomplished using
923         QWebHistoryInterface::historyContains();
924
925 2008-05-29  Kavindra Devi Palaraja  <kdpalara@trolltech.com>
926
927         Reviewed by Simon.
928
929         Doc: Mention the requirement of a QApplication with QtWebKit
930         
931
932         * Api/qwebview.cpp:
933
934 2008-05-29  David Boddie  <dboddie@trolltech.com>
935
936         Reviewed by Simon.
937
938         Some clarifications for the documentation.
939         
940
941         * Api/qwebpage.cpp:
942         * Api/qwebpluginfactory.cpp:
943
944 2008-05-27  Ariya Hidayat  <ariya.hidayat@trolltech.com>
945
946         Reviewed by Simon.
947
948         Fix web inspector does not returns its state properly after its window is minimized.
949
950         As hinted by Holger, InspectorClientView::hideEvent is not needed.
951         This fixes bug https://bugs.webkit.org/show_bug.cgi?id=18967
952
953         * WebCoreSupport/InspectorClientQt.cpp:
954
955 2008-05-21  Siraj Razick  <siraj.razick@collabora.co.uk>
956
957         Reviewed by Simon.
958
959         Add <param name="classid"/> support for application/x-qt-object plugins
960
961         * WebCoreSupport/FrameLoaderClientQt.cpp:
962         (WebCore::FrameLoaderClientQt::createPlugin):
963
964 2008-05-13  Andy Shaw  <andy@trolltech.com>
965
966         Reviewed by Simon.
967
968         Fixes: QWebHistory::forward() should go forwards and not back
969
970         * Api/qwebhistory.cpp:
971
972 2008-05-12  Alexey Proskuryakov  <ap@webkit.org>
973
974         Roll out recent  threading changes (r32807, r32810, r32819, r32822) to simplify
975         SquirrelFish merging.
976
977         * Api/qwebframe.cpp:
978         (QWebFrame::addToJavaScriptWindowObject):
979
980 2008-05-09  Thiago Macieira  <tjmaciei@trolltech.com>
981
982         Reviewed by Simon.
983
984         Fix bad includes in QtWebKit public headers.
985         
986         Make sure to include qglobal.h using the QtCore prefix so that an explicit
987         include/QtCore is not needed in the application's build system. Also make sure
988         that qwebsettings.h includes the local qwebkitglobal.h.
989         
990
991         * Api/qwebkitglobal.h:
992         * Api/qwebsettings.h:
993
994 2008-05-08  Marc Ordinas i Llopis  <marc.ordinasillopis@collabora.co.uk>
995
996         Reviewed by Simon.
997
998         https://bugs.webkit.org/show_bug.cgi?id=18935
999
1000         Based on work by Sriram Neelakandan for the Gtk port.
1001
1002         * WebCoreSupport/FrameLoaderClientQt.cpp: Initialize
1003         m_hasSentResponseToPlugin.
1004         (WebCore::FrameLoaderClientQt::FrameLoaderClientQt):
1005         (WebCore::FrameLoaderClientQt::redirectDataToPlugin):
1006
1007 2008-05-08  Warwick Allison  <warwick@trolltech.com>
1008
1009         Reviewed by Simon.
1010
1011         Fixes: WebKit expects initial input method state to be *disabled*.
1012         
1013         At least QWS does not need the initial input method state to be forced to
1014         enabled, but other platforms (esp. X11) do. Until fixed/tested on those
1015         platforms, this is specific to QWS.
1016         
1017
1018         * Api/qwebview.cpp:
1019         (QWebView::QWebView):
1020
1021 2008-05-06  Simon Hausmann  <hausmann@webkit.org>
1022
1023         Reviewed by Holger.
1024
1025         Fix logic error in QWebHitTestResult::isNull().
1026
1027         * Api/qwebframe.cpp:
1028
1029 2008-05-02  Benjamin Meyer  <bmeyer@trolltech.com>
1030
1031         Reviewed by Simon.
1032
1033         Doc: Mention that you have to enable plugins in QWebSettings for them to work.
1034
1035         * Api/qwebpage.cpp:
1036
1037 2008-05-02  Simon Hausmann  <hausmann@webkit.org>
1038
1039         Fix the Qt build, ExecState is required here.
1040
1041         * Api/qwebframe.cpp:
1042         (QWebFrame::addToJavaScriptWindowObject):
1043
1044 2008-05-01  Marc Ordinas i Llopis  <marc.ordinasillopis@collabora.co.uk>
1045
1046         Reviewed by Alp Toker.
1047         Qt parts OK'ed by Simon Hausmann.
1048
1049         https://bugs.webkit.org/show_bug.cgi?id=14750
1050         Added support for NPAPI plugins on Gtk and Qt-x11 ports.
1051
1052         * WebCoreSupport/FrameLoaderClientQt.cpp:
1053         (WebCore::FrameLoaderClientQt::FrameLoaderClientQt):
1054         (WebCore::FrameLoaderClientQt::finishedLoading):
1055         (WebCore::FrameLoaderClientQt::setMainDocumentError):
1056         (WebCore::FrameLoaderClientQt::committedLoad):
1057         (WebCore::FrameLoaderClientQt::objectContentType):
1058         (WebCore::FrameLoaderClientQt::createPlugin):
1059         (WebCore::FrameLoaderClientQt::redirectDataToPlugin):
1060         * WebCoreSupport/FrameLoaderClientQt.h:
1061
1062 2008-04-30  Julien Chaffraix  <jchaffraix@webkit.org>
1063
1064         Qt 4.3 build fix.
1065
1066         Fixes a brace error that made Qt 4.4 build but not Qt 4.3.
1067  
1068         * Api/qwebview.cpp:
1069         (QWebView::event):
1070
1071 2008-04-30  Tor Arne Vestbø  <tavestbo@trolltech.com>
1072
1073         Reviewed by Simon.
1074
1075         In focusIn and focusOut event always update the active state of the
1076         focus controller. Fixes ~400 failing layout tests due to missing
1077         editing callbacks that relied on the correct focus.
1078
1079         * Api/qwebpage.cpp:
1080         (QWebPagePrivate::focusInEvent):
1081         (QWebPagePrivate::focusOutEvent):
1082
1083 2008-04-29  Lincoln Ramsay  <lincoln.ramsay@trolltech.com>
1084
1085         Reviewed by Simon.
1086
1087         Fix compilation with QT_NO_PRINTER
1088         
1089
1090         * Api/qwebview.cpp:
1091         (QWebView::print):
1092
1093 2008-04-29  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1094
1095         Reviewed by Simon.
1096
1097         Ensure that relative URL is converted to absolute URL.
1098         
1099         This is necessary because loading a relative URL is not really supported
1100         (the web page may load, but the subsequent URLs for images and links will
1101         not be resolved properly).
1102         This also fixes https://bugs.webkit.org/show_bug.cgi?id=18484
1103         
1104
1105         * Api/qwebframe.cpp:
1106         (ensureAbsoluteUrl):
1107         (QWebFrame::setUrl):
1108         (QWebFrame::load):
1109
1110 2008-04-29  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1111
1112         Reviewed by Simon.
1113
1114         Simplification of Qt Launcher (no animation and use standard progress bar widget)
1115         
1116         Status bar shows the hovered link without any animation. Progress bar just uses the standard QProgressBar (no custom widget). The launcher is leaner and faster to use under the debugger and/or valgrind.
1117         
1118
1119         * QtLauncher/main.cpp:
1120         (MainWindow::MainWindow):
1121
1122 2008-04-29  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1123
1124         Reviewed by Simon.
1125
1126         Update the cursor when the frame/page loading is finished.
1127         
1128         This fixes https://bugs.webkit.org/show_bug.cgi?id=18712
1129         
1130
1131         * WebCoreSupport/FrameLoaderClientQt.cpp:
1132         (WebCore::FrameLoaderClientQt::postProgressFinishedNotification):
1133         (WebCore::FrameLoaderClientQt::setMainFrameDocumentReady):
1134
1135 2008-04-29  Simon Hausmann  <shausman@trolltech.com>
1136
1137         Reviewed by Holger.
1138
1139         Fixes: QWebPage::acceptNavigationRequest not being called / linkClicked() not being emitted when clicking on <a href="..." target="_blank"> kind of links.
1140         
1141         Call QWebPage::acceptNavigationRequest when the creation of a new window with
1142         URL is requested. The frame pointer is set to null in this case.
1143         
1144
1145         * Api/qwebpage.cpp:
1146         (QWebPage::setViewportSize):
1147         * WebCoreSupport/FrameLoaderClientQt.cpp:
1148         (WebCore::FrameLoaderClientQt::startDownload):
1149         (WebCore::FrameLoaderClientQt::createFrame):
1150
1151 2008-04-29  Holger Hans Peter Freyther  <zecke@selfish.org>
1152
1153         Reviewed by Simon.
1154
1155         Use the WebCore facility to do the scrolling. Move some code around.
1156
1157         * Api/qwebpage.cpp:
1158         (QWebPagePrivate::keyPressEvent):
1159         (QWebPagePrivate::shortcutOverrideEvent):
1160         (QWebPagePrivate::handleScrolling):
1161         * Api/qwebpage_p.h:
1162
1163 2008-04-29  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1164
1165         Reviewed by Simon.
1166
1167         fix potential crash when loading image(s)
1168
1169         Crash may occur. If compiled with 4.3, the variable is not initialized.
1170
1171         * Api/qwebpage.cpp:
1172         (QWebPagePrivate::QWebPagePrivate):
1173
1174 2008-04-29  Holger Hans Peter Freyther  <zecke@selfish.org>
1175
1176         Reviewed by Simon.
1177
1178         Calling QWebView::setCursor will override the WebCore Cursor.
1179         Calling QWebView::setCursor will override the WebCore Cursor using
1180         QWidget::unsetCursor will revert to the WebCore Cursor.
1181
1182         For detecting the unset we have to compare the shape of the
1183         cursor to the default arrow. Qt::WA_SetCursor can not be used
1184         as it is set unconditionally but conditionally removed.
1185
1186         Calling QWidget::setCursor will immediately send the CursorChange
1187         event. We listen to this event to decide if we currently use a
1188         WebCore cursor, got a cursor from outside, or revert to the default.
1189
1190         This should be race free and work reliable, the manual test for this
1191         is WebCore/manual-tests/cursor.html
1192
1193         * Api/qwebpage.cpp:
1194         (SetCursorEvent::SetCursorEvent):
1195         * Api/qwebpage_p.h:
1196         * Api/qwebview.cpp:
1197         (QWebViewPrivate::QWebViewPrivate):
1198         (QWebViewPrivate::setCursor):
1199         (QWebView::QWebView):
1200         (QWebView::event):
1201
1202 2008-04-29  Kavindra Devi Palaraja  <kdpalara@trolltech.com>
1203
1204         Reviewed by Simon.
1205
1206         Documentation fixes:
1207
1208         - Fixed a qdoc warning
1209         - Mention that fav icons can be of arbitrary size
1210         - Fix signature of QWebPage::acceptNavigationRequest show in the documentation
1211
1212         * Api/qwebframe.cpp:
1213         * Api/qwebpage.cpp:
1214         * Api/qwebpage.h:
1215         * Api/qwebsettings.cpp:
1216         * Api/qwebview.cpp:
1217
1218 2008-04-28  Tor Arne Vestbø  <tavestbo@trolltech.com>
1219
1220         Reviewed by Simon.
1221
1222         Fix QWebView::loadFinished isn't always emitted
1223
1224         Replaced loadDone() with loadFinished(bool) and moved the signals for progress
1225         tracking (start, progres, and finish) to the page instead of the frame. This
1226         ensures that we emit loadFinished even when a subframe started the actual load.
1227
1228         This causes a few regressions in the layout tests that we for now accept for
1229         the sake of the correct API. Layout tests we can fix any time though, including
1230         patch release, the API however we can't change anymore in patch releases.
1231
1232         * Api/qwebframe.cpp:
1233         * Api/qwebframe.h:
1234         * Api/qwebpage.cpp:
1235         (QWebPage::totalBytes):
1236         * Api/qwebpage.h:
1237         * Api/qwebview.cpp:
1238         (QWebView::setPage):
1239         * Api/qwebview.h:
1240         * QtLauncher/main.cpp:
1241         (MainWindow::MainWindow):
1242         * WebCoreSupport/FrameLoaderClientQt.cpp:
1243         (drtDescriptionSuitableForTestResult):
1244         (WebCore::FrameLoaderClientQt::FrameLoaderClientQt):
1245         (WebCore::FrameLoaderClientQt::setFrame):
1246         (WebCore::FrameLoaderClientQt::transitionToCommittedFromCachedPage):
1247         (WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage):
1248         (WebCore::FrameLoaderClientQt::willChangeTitle):
1249         (WebCore::FrameLoaderClientQt::createDocumentLoader):
1250         (WebCore::FrameLoaderClientQt::download):
1251         (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):
1252         * WebCoreSupport/FrameLoaderClientQt.h:
1253
1254 2008-04-28  Kavindra Devi Palaraja  <kdpalara@trolltech.com>
1255
1256         Reviewed by Simon.
1257
1258         Added more documentation for QWebSettings, QWebPluginFactory and QWebFrame
1259
1260         * Api/qwebframe.cpp:
1261         * Api/qwebpluginfactory.cpp:
1262         * Api/qwebsettings.cpp:
1263         (QWebSettings::QWebSettings):
1264         (QWebSettings::setUserStyleSheetUrl):
1265         (QWebSettings::iconForUrl):
1266         (QWebSettings::webGraphic):
1267         (QWebSettings::maximumPagesInCache):
1268         (QWebSettings::setFontFamily):
1269         (QWebSettings::resetFontFamily):
1270         (QWebSettings::testAttribute):
1271         (QWebSettings::resetAttribute):
1272
1273 2008-04-28  Ariya Hidayat  <ahidayat@trolltech.com>
1274
1275         Reviewed by Simon.
1276
1277         Fix document/frame title not reset when loading a new URI
1278         
1279         We should assume first the frame has no title. If it has, then the dispatchDidReceiveTitle()
1280         will be called very soon with the correct title.
1281         This properly resets the title when we navigate to a URI without a title.
1282         
1283
1284         * WebCoreSupport/FrameLoaderClientQt.cpp:
1285
1286 2008-04-28  David Boddie  <dboddie@trolltech.com>
1287
1288         Reviewed by Simon.
1289
1290         Minor documentation changes.
1291
1292         * Api/qwebview.cpp:
1293
1294 2008-04-28  Tor Arne Vestbø  <tavestbo@trolltech.com>
1295
1296         Reviewed by Simon.
1297
1298         Prevent middle-click from triggering open URL from clipboard when the event has already been accepted.
1299         
1300
1301         * Api/qwebpage.cpp:
1302         (QWebPagePrivate::mouseMoveEvent):
1303         (QWebPagePrivate::mousePressEvent):
1304         (QWebPagePrivate::mouseDoubleClickEvent):
1305         (QWebPagePrivate::mouseTripleClickEvent):
1306         (QWebPagePrivate::mouseReleaseEvent):
1307
1308 2008-04-28  Tor Arne Vestbø  <tavestbo@trolltech.com>
1309
1310         Reviewed by Simon.
1311
1312         Fix scrollbar behavior in QtWebKit to match QScrollBar.
1313         
1314         Right click context menu is now supported, along with
1315         middle click to center slider thumb over mouse cursor.
1316         
1317
1318         * Api/qwebpage.cpp:
1319         (QWebPage::linkDelegationPolicy):
1320
1321 2008-04-28  Tor Arne Vestbø  <tavestbo@trolltech.com>
1322
1323         Reviewed by Simon.
1324
1325         Implemented channel-based logging for QtWebKit.
1326
1327         Comma-separated log channels are read from the QT_WEBKIT_LOG environment variable.
1328         Warnings for notImplemented() is still output by default, but can be disabled
1329         by setting DISABLE_NI_WARNINGS=1.
1330
1331         * Api/qwebpage.cpp:
1332         (QWebPagePrivate::QWebPagePrivate):
1333
1334 2008-04-28  Simon Hausmann  <shausman@trolltech.com>
1335
1336         Rubber-stamped by Lars
1337
1338         Removed setHtml(const QByteArray &) overload as it breaks the common use of the setHtml() API.
1339
1340         * Api/qwebframe.cpp:
1341         * Api/qwebframe.h:
1342         * Api/qwebview.cpp:
1343         * Api/qwebview.h:
1344
1345 2008-04-28  Kavindra Devi Palaraja  <kdpalara@trolltech.com>
1346
1347         Reviewed by Simon.
1348
1349         Doc - adding more documentation to QWebFrame, QWebPage and QWebView
1350         
1351
1352         * Api/qwebframe.cpp:
1353         * Api/qwebpage.cpp:
1354         * Api/qwebview.cpp:
1355         (QWebView::stop):
1356         (QWebView::back):
1357         (QWebView::changeEvent):
1358
1359 2008-04-28  Simon Hausmann  <shausman@trolltech.com>
1360
1361         Reviewed by Holger.
1362
1363         Fixes: Popups/Context menu in WebKit appearing at the wrong location when embedded in the graphics view or using multiple screens
1364         
1365         Give the popups the right parent widget and the right coordinates relative within the parent.
1366         
1367
1368         * Api/qwebpage.cpp:
1369
1370 2008-04-28  Benjamin Meyer  <bmeyer@trolltech.com>
1371
1372         Reviewed by Simon.
1373
1374         Doc: Add see also's (and a few minor whitespace/typo corrections)
1375         
1376
1377         * Api/qwebframe.cpp:
1378         (QWebFrame::~QWebFrame):
1379         (QWebFrame::setHtml):
1380         (QWebFrame::setContent):
1381         (QWebFrame::parentFrame):
1382         (QWebFrame::childFrames):
1383         (QWebFrame::setScrollBarValue):
1384         (QWebFrame::scrollBarValue):
1385         (QWebFrame::scrollBarMaximum):
1386         (QWebFrame::scrollBarMinimum):
1387         (QWebFrame::render):
1388         (QWebFrame::pos):
1389         (QWebFrame::geometry):
1390         (QWebFrame::print):
1391         (QWebFrame::evaluateJavaScript):
1392         * Api/qwebpage.cpp:
1393         (QWebPagePrivate::mousePressEvent):
1394         (QWebPagePrivate::mouseDoubleClickEvent):
1395         (QWebPage::~QWebPage):
1396         (QWebPage::javaScriptPrompt):
1397         (openNewWindow):
1398         (QWebPage::setViewportSize):
1399         (QWebPage::acceptNavigationRequest):
1400         (QWebPage::action):
1401         (QWebPage::userAgentForUrl):
1402         (QWebPagePrivate::_q_onLoadProgressChanged):
1403         * Api/qwebview.cpp:
1404         (QWebView::event):
1405
1406 2008-04-28  Kavindra Devi Palaraja  <kdpalara@trolltech.com>
1407
1408         Reviewed by Simon.
1409
1410         Submitting more documentation for QWebPage
1411         
1412
1413         * Api/qwebpage.cpp:
1414
1415 2008-04-28  Lincoln Ramsay  <lincoln.ramsay@trolltech.com>
1416
1417         Reviewed by Simon.
1418
1419         Compile when QT_NO_CLIPBOARD is defined.
1420         
1421
1422         * Api/qwebpage.cpp:
1423         (QWebPage::triggerAction):
1424
1425 2008-04-28  David Boddie  <dboddie@trolltech.com>
1426
1427         Reviewed by Simon.
1428
1429         Minor documentation fix.
1430         
1431
1432         * Api/qwebhistory.cpp:
1433
1434 2008-04-28  Holger Hans Peter Freyther  <zecke@selfish.org>
1435
1436         Reviewed by Simon.
1437
1438         Implement QWebPage::createPlugin
1439         
1440         The code is coming from the demo browser and needed here
1441         for some manual tests.
1442         
1443
1444         * QtLauncher/QtLauncher.pro:
1445         * QtLauncher/main.cpp:
1446         (WebPage::createPlugin):
1447
1448 2008-04-28  Simon Hausmann  <hausmann@webkit.org>
1449
1450         Qt/Win build fix. Include config.h to get the implicit MathExtras.h
1451         inclusion correct with regards to rand_s.
1452
1453         * Api/qwebhistory.cpp:
1454
1455 2008-04-28  Tor Arne Vestbø  <tavestbo@trolltech.com>
1456
1457         Reviewed by Simon.
1458
1459         https://bugs.webkit.org/show_bug.cgi?id=18713
1460
1461         Fix scrollbar painting issues in QtWebKit.
1462
1463         Hovering and click-draging outside of the scrollbar would
1464         produce unexpected and inconcistent results. We also didn't
1465         pass on leave-events to the underlying WebKit code, which
1466         was nessecary to implement the paint fix.
1467
1468         Note: The event handling of the Leave event should be moved
1469         out of QWebView::event() and into a proper override for 4.5.
1470
1471         * Api/qwebpage.cpp:
1472         (QWebPagePrivate::leaveEvent):
1473         * Api/qwebpage_p.h:
1474         * Api/qwebview.cpp:
1475         (QWebView::event):
1476
1477 2008-04-25  Benjamin Meyer  <bmeyer@trolltech.com>
1478
1479         Reviewed by Simon, Holger.
1480
1481         Fixed focus handling when a node is focused while the corresponding QWebPage does not have the focus.
1482
1483         * Correctly de- and reactivate the focused frame in focusOut/focusInEvent
1484         without telling the focus controller. We don't want to change the focused frame
1485         - the controller has to remember it in fact - but instead just deactivate the
1486         frame for correct painting as RenderTheme::isFocused() uses the activation
1487         state of the frame.
1488
1489         * Api/qwebpage.cpp:
1490         (QWebPagePrivate::focusInEvent):
1491         (QWebPagePrivate::focusOutEvent):
1492
1493 2008-04-25  Kavindra Devi Palaraja  <kdpalara@trolltech.com>
1494
1495         Reviewed by Simon.
1496
1497         completed documentation for the Detailed Description section for QWebView
1498         
1499
1500         * Api/qwebview.cpp:
1501
1502 2008-04-25  Denis Dzyubenko  <denis.dzyubenko@trolltech.com>
1503
1504         Reviewed by Simon.
1505
1506         Fixed the way QWebHistory works - when you call back(), forward() or goToItem() functions it changes the current item in history *and* loads the corresponding page.
1507         
1508
1509         * Api/qwebhistory.cpp:
1510         (QWebHistory::back):
1511         (QWebHistory::forward):
1512         (QWebHistory::goToItem):
1513
1514 2008-04-25  Tor Arne Vestbø  <tavestbo@trolltech.com>
1515
1516         Reviewed by Simon.
1517
1518         Fix resubmit of HTML forms when initially denied by QWebPage::acceptNavigationRequest().
1519         
1520
1521         * WebCoreSupport/FrameLoaderClientQt.cpp:
1522         (WebCore::FrameLoaderClientQt::createFrame):
1523
1524 2008-04-25  Simon Hausmann  <hausmann@webkit.org>
1525
1526         Reviewed by Holger.
1527
1528         When pressing backspace in a line edit in a webpage we should not go back to the previous page.
1529         
1530         The shortcut for back on Windows is backspace. Implemented shortcut override
1531         handling in QWebView/QWebPage to prevent this.
1532         
1533
1534         * Api/qwebpage.cpp:
1535         (QWebPagePrivate::wheelEvent):
1536         (editorActionForKeyEvent):
1537         (QWebPagePrivate::keyPressEvent):
1538         (QWebPagePrivate::inputMethodEvent):
1539         (QWebPagePrivate::shortcutOverrideEvent):
1540         (QWebPage::event):
1541         * Api/qwebpage_p.h:
1542         * Api/qwebview.cpp:
1543         (QWebView::event):
1544
1545 2008-04-25  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1546
1547         Reviewed by Simon.
1548
1549         Fix triple-clicking does not work in a web page
1550         
1551
1552         * Api/qwebpage.cpp:
1553         (QWebPagePrivate::updateEditorActions):
1554         (QWebPagePrivate::timerEvent):
1555         (QWebPagePrivate::mousePressEvent):
1556         (QWebPagePrivate::mouseDoubleClickEvent):
1557         (QWebPage::undoStack):
1558         * Api/qwebpage_p.h:
1559
1560 2008-04-25  Benjamin Meyer  <bmeyer@trolltech.com>
1561
1562         Reviewed by Simon.
1563
1564         When pressing Ctrl-Up the keyboard modifiers could include other modifiers
1565         
1566
1567         * Api/qwebpage.cpp:
1568         (QWebPagePrivate::keyPressEvent):
1569
1570 2008-04-25  Tor Arne Vestbø  <tavestbo@trolltech.com>
1571
1572         Reviewed by Simon.
1573
1574         Fix handling of Javascript's confirm() function in QtWebKit.
1575         
1576
1577         * Api/qwebpage.cpp:
1578
1579 2008-04-25  Kavindra Devi Palaraja  <kdpalara@trolltech.com>
1580
1581         Reviewed by Simon.
1582
1583         Doc - added a screenshot, flowchart, and a snippet to the QWebView documentation to improve clarity
1584         
1585
1586         * Api/qwebview.cpp:
1587
1588 2008-04-25  Benjamin Meyer  <bmeyer@trolltech.com>
1589
1590         Reviewed by Simon.
1591
1592         QWebPage: missing signal when window.print() is requested from javascript
1593         
1594
1595         * Api/qwebpage.cpp:
1596         * Api/qwebpage.h:
1597         * WebCoreSupport/ChromeClientQt.cpp:
1598
1599 2008-04-25  Benjamin Meyer  <bmeyer@trolltech.com>
1600
1601         Reviewed by Simon.
1602
1603         Fixes: "Save Image" action wasn't doing anything.
1604         
1605
1606         * Api/qwebpage.cpp:
1607         (QWebPage::triggerAction):
1608
1609 2008-04-25  Benjamin Meyer  <bmeyer@trolltech.com>
1610
1611         Reviewed by Simon.
1612
1613         Apply key event changes to the current frame, not the main frame.
1614         
1615         Example: hitting space bar should scroll current frame, not the main frame
1616         which doesn't even have a scrollbar.
1617         
1618
1619         * Api/qwebpage.cpp:
1620         (QWebPagePrivate::keyPressEvent):
1621
1622 2008-04-25  Benjamin Meyer  <bmeyer@trolltech.com>
1623
1624         Reviewed by Simon.
1625
1626         Fixes: QWebFrame crash when fetching the icon
1627
1628         Just call QWebSettings::iconForUrl to not duplicate code and obey the mutex lock.
1629
1630         * Api/qwebframe.cpp:
1631
1632 2008-04-25  Warwick Allison  <warwick@trolltech.com>
1633
1634         Reviewed by Simon.
1635
1636         Fixes: Scrollbars did not report correct maximum.
1637
1638         * Api/qwebframe.cpp:
1639
1640 2008-04-25  David Boddie <dboddie@trolltech.com>
1641
1642         Reviewed by Simon.
1643
1644         Documentation updates for some of the QWeb classes
1645
1646         * Api/qwebframe.cpp:
1647         * Api/qwebhistory.cpp:
1648         * Api/qwebsettings.cpp:
1649         * Api/qwebview.cpp:
1650
1651 2008-04-25  Holger Hans Peter Freyther  <zecke@selfish.org>
1652
1653         Reviewed by Simon.
1654
1655         Implement dumping of resource load callbacks to pass http/tests/xmlhttprequest/abort-should-cancel-load.html
1656         
1657         Similar to Editing and Frameloading we do the dumping within WebCore
1658         
1659
1660         * WebCoreSupport/FrameLoaderClientQt.cpp:
1661         (qt_dump_frame_loader):
1662         (qt_dump_resource_load_callbacks):
1663         (drtDescriptionSuitableForTestResult):
1664         (WebCore::FrameLoaderClientQt::dispatchDidFailLoading):
1665         (WebCore::FrameLoaderClientQt::dispatchDidLoadResourceFromMemoryCache):
1666         (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForMIMEType):
1667
1668 2008-04-24  Anders Carlsson  <andersca@apple.com>
1669
1670         Reviewed by Sam.
1671
1672         Change some String arguments to be const references instead.
1673
1674         * WebCoreSupport/EditorClientQt.cpp:
1675         (WebCore::EditorClientQt::shouldInsertText):
1676         * WebCoreSupport/EditorClientQt.h:
1677
1678 2008-04-24  Holger Hans Peter Freyther  <zecke@selfish.org>
1679
1680         Reviewed by Simon.
1681
1682         Cosmetic changes to make the code more readable.
1683         -Early exit if we don't have a webview
1684         -handle the empty tooltip and non-empty tooltip case separately
1685         
1686
1687         * WebCoreSupport/ChromeClientQt.cpp:
1688         (WebCore::ChromeClientQt::setToolTip):
1689         (WebCore::ChromeClientQt::print):
1690
1691 2008-04-24  Paul Olav Tvete  <paul@trolltech.com>
1692
1693         Reviewed by Simon.
1694
1695         Automatically wrap tooltip text and hide a shown tooltip when it is empty.
1696
1697         QWidget::setTooltip("") will still show the old tooltip for up to 10 seconds.
1698         Workaround as discussed with Matthias.
1699
1700         * WebCoreSupport/ChromeClientQt.cpp:
1701         (WebCore::ChromeClientQt::setToolTip):
1702
1703 2008-04-24  Holger Hans Peter Freyther  <zecke@selfish.org>
1704
1705         Reviewed by Simon.
1706
1707         Allow to disable caching completeley by calling setObjectCacheCapacities(0, 0, 0)
1708
1709         * Api/qwebsettings.cpp:
1710         (QWebSettings::setObjectCacheCapacities):
1711
1712 2008-04-24  Benjamin Meyer  <bmeyer@trolltech.com>
1713
1714         Reviewed by Simon.
1715
1716         Improve keyboard scrolling
1717         
1718         Match Down/Up keys scroll distance with Safari (i.e. faster) and add Home and End shortcuts to scroll to the top/botom.
1719         
1720
1721         * Api/qwebpage.cpp:
1722         (QWebPagePrivate::keyPressEvent):
1723
1724 2008-04-24  Olivier Goffart  <ogoffart@trolltech.com>
1725
1726         Reviewed by Simon.
1727
1728         Fix various compiler warnings in the Qt port.
1729
1730         * Api/qwebframe.cpp:
1731         (QWebFrame::print):
1732         * Api/qwebsettings.cpp:
1733         (graphics):
1734         * WebCoreSupport/FrameLoaderClientQt.cpp:
1735         (WebCore::FrameLoaderClientQt::createPlugin):
1736
1737 2008-04-24  Tor Arne Vestbø  <tavestbo@trolltech.com>
1738
1739         Reviewed by Simon.
1740
1741         Cleaned up copyright headers (removed misplaced class descriptions and
1742         fixed inconsistent whitespace and indentation).
1743
1744         * Api/qwebframe.cpp:
1745         * Api/qwebframe.h:
1746         * Api/qwebframe_p.h:
1747         * Api/qwebhistory.cpp:
1748         * Api/qwebhistory.h:
1749         * Api/qwebhistory_p.h:
1750         * Api/qwebhistoryinterface.cpp:
1751         * Api/qwebhistoryinterface.h:
1752         * Api/qwebkitglobal.h:
1753         * Api/qwebnetworkinterface.cpp:
1754         * Api/qwebnetworkinterface.h:
1755         * Api/qwebnetworkinterface_p.h:
1756         * Api/qwebpage.cpp:
1757         * Api/qwebpage.h:
1758         * Api/qwebpage_p.h:
1759         * Api/qwebpluginfactory.cpp:
1760         * Api/qwebpluginfactory.h:
1761         * Api/qwebsettings.cpp:
1762         * Api/qwebsettings.h:
1763         * Api/qwebview.h:
1764         * QtLauncher/main.cpp:
1765
1766 2008-04-24  Tor Arne Vestbø  <tavestbo@trolltech.com>
1767
1768         Reviewed by Simon.
1769
1770         Added basic URL guessing to QtLauncher (same as in the demo browser).
1771         
1772
1773         * QtLauncher/main.cpp:
1774         (MainWindow::changeLocation):
1775         (MainWindow::guessUrlFromString):
1776
1777 2008-04-24  Benjamin Meyer  <bmeyer@trolltech.com>
1778
1779         Reviewed by Simon Hausmann <hausmann@webkit.org>.
1780
1781         Prevent double deletions of the default web interface.
1782         
1783
1784         * Api/qwebhistoryinterface.cpp:
1785         (gCleanupInterface):
1786         (QWebHistoryInterface::QWebHistoryInterface):
1787
1788 2008-04-23  Simon Hausmann  <hausmann@webkit.org>
1789
1790         Fix compilation against Qt 4.3
1791
1792         * Api/qwebpage.cpp:
1793         (QWebPage::userAgentForUrl):
1794         * QtLauncher/main.cpp:
1795         (main):
1796
1797 2008-04-23  Holger Hans Peter Freyther  <zecke@selfish.org>
1798
1799         Reviewed by Simon.
1800
1801         * Make sure the "Inspect Element" item gets added to the ContextMenu, a call
1802         to ContextMenu::populate() is not adding it, the ContextMenuController does
1803         add it after the call to populate(). Do that as well.
1804         
1805
1806         * Api/qwebpage.cpp:
1807         (QWebPage::updatePositionDependentActions):
1808
1809 2008-04-23  Simon Hausmann  <hausmann@webkit.org>
1810
1811         Reviewed by Holger.
1812
1813         Fix crashes on window.close().
1814
1815         We should not delete the QWebPage object in the ChromeClient but leave it up to
1816         the application when and whether to delete a browser window. For this we now
1817         emit the windowCloseRequested() signal.
1818
1819         Done with Tor Arne.
1820
1821         * Api/qwebpage.cpp:
1822         * Api/qwebpage.h:
1823         * QtLauncher/main.cpp:
1824         (MainWindow::MainWindow):
1825         * WebCoreSupport/ChromeClientQt.cpp:
1826
1827 2008-04-23  Simon Hausmann  <hausmann@webkit.org>
1828
1829         Reviewed by Holger.
1830
1831         Fix parsing of external scripts/stylesheets when using setHtml(const QString &html).
1832
1833         We used to pass the html string to the frameloader in utf-16, which also meant that the default
1834         encoding of external scripts/stylesheets became utf-16. That doesn't make sense, so assume utf-8
1835         by default. This is now also documented.
1836
1837         * Api/qwebframe.cpp:
1838         (QWebFrame::setHtml):
1839         * Api/qwebview.cpp:
1840
1841 2008-04-23  Benjamin Meyer  <bmeyer@trolltech.com>
1842
1843         Reviewed by Simon.
1844
1845         Fixes background color propagation when using a custom QWebPage
1846         
1847         Set the palette in setPage(), not during the creation on-demand.
1848         
1849
1850         * Api/qwebview.cpp:
1851         (QWebView::page):
1852         (QWebView::setPage):
1853
1854 2008-04-23  Benjamin Meyer  <bmeyer@trolltech.com>
1855
1856         Reviewed by Simon.
1857
1858         Fix the user agent on the mac to be BSD4
1859         
1860         Put Q_OS_DARWIN before Q_OS_BSD4 sense they are both defined on the mac
1861         
1862
1863         * Api/qwebpage.cpp:
1864         (QWebPage::userAgentForUrl):
1865
1866 2008-04-23  Simon Hausmann  <shausman@trolltech.com>
1867
1868         Reviewed by Holger.
1869
1870         Added missing copyright notice.
1871         Small fixes to the documentation.
1872
1873         * Api/qwebpluginfactory.cpp:
1874
1875 2008-04-23  Zack Rusin  <zack@tungstengraphics.com>
1876
1877         Reviewed by Simon.
1878
1879         Added a contentsSize() property.
1880
1881         * Api/qwebframe.cpp:
1882         (QWebFrame::contentsSize):
1883         (QWebFrame::hitTestContent):
1884         * Api/qwebframe.h:
1885
1886 2008-04-22  Benjamin Meyer  <bmeyer@trolltech.com>
1887
1888         Reviewed by Simon.
1889
1890         Fixes: QWebPage's QNetworkManager's can be shared among webpages.
1891
1892         Don't force the deletion of the object, but let QObject take care of it.
1893
1894         * Api/qwebpage.cpp:
1895
1896 2008-04-22  Simon Hausmann  <hausmann@webkit.org>
1897
1898         Reviewed by Holger.
1899
1900         Documentation for QWebPluginFactory and documentation updates for QWebPage.
1901
1902         * Api/qwebpage.cpp:
1903         (QWebPage::setLinkDelegationPolicy):
1904         (QWebPage::linkDelegationPolicy):
1905         (QWebPage::swallowContextMenuEvent):
1906         (QWebPage::updatePositionDependentActions):
1907         (QWebPage::extension):
1908         (QWebPage::networkAccessManager):
1909         * Api/qwebpluginfactory.cpp:
1910         (QWebPluginFactory::QWebPluginFactory):
1911         (QWebPluginFactory::~QWebPluginFactory):
1912         (QWebPluginFactory::refreshPlugins):
1913
1914 2008-04-22  Simon Hausmann  <hausmann@webkit.org>
1915
1916         Reviewed by Holger.
1917
1918         Added QWebPage::swallowContextMenuEvent and QWebPage::updatePositionDependentActions.
1919         
1920
1921         * Api/qwebpage.cpp:
1922         (QWebPagePrivate::QWebPagePrivate):
1923         (QWebPagePrivate::mouseReleaseEvent):
1924         (QWebPage::setLinkDelegationPolicy):
1925         (QWebPage::linkDelegationPolicy):
1926         (QWebPage::swallowContextMenuEvent):
1927         (QWebPage::updatePositionDependentActions):
1928         * Api/qwebpage.h:
1929         * Api/qwebpage_p.h:
1930         * Api/qwebview.cpp:
1931         (QWebView::event):
1932
1933 2008-04-22  Simon Hausmann  <hausmann@webkit.org>
1934
1935         Reviewed by Holger.
1936
1937         Added Extension APIs for QWebPage.
1938
1939         * Api/qwebpage.cpp:
1940         (QWebPage::setLinkDelegationPolicy):
1941         (QWebPage::linkDelegationPolicy):
1942         (QWebPage::extension):
1943         * Api/qwebpage.h:
1944         * Api/qwebpluginfactory.cpp:
1945         (QWebPluginFactory::extension):
1946
1947 2008-04-22  Tor Arne Vestbø  <tavestbo@trolltech.com>
1948
1949         Reviewed by Simon.
1950
1951         Emit loadProgress() signal on loadStarted().
1952         
1953
1954         * WebCoreSupport/FrameLoaderClientQt.cpp:
1955         (WebCore::FrameLoaderClientQt::postProgressEstimateChangedNotification):
1956
1957 2008-04-22  Zack Rusin  <zack@kde.org>
1958
1959         Reviewed by Simon.
1960
1961         Fix background propagation from the QWebView's palette.
1962
1963         The background brush of the palette needs to be propagated to the WebCore::FrameView.
1964
1965         * Api/qwebframe.cpp:
1966         (QWebFramePrivate::updateBackground):
1967         * Api/qwebframe_p.h:
1968         * Api/qwebpage.cpp:
1969         (QWebPagePrivate::dropEvent):
1970         (QWebPage::setPalette):
1971         * Api/qwebpage.h:
1972         * Api/qwebpage_p.h:
1973         * Api/qwebview.cpp:
1974         (QWebView::page):
1975         (QWebView::changeEvent):
1976         * Api/qwebview.h:
1977         * WebCoreSupport/FrameLoaderClientQt.cpp:
1978
1979 2008-04-22  Benjamin Meyer  <bmeyer@trolltech.com>
1980
1981         Reviewed by Simon.
1982
1983         Fix maps.google.com
1984
1985         We have to include a version in the Safari tag in the user-agent.
1986
1987         * Api/qwebpage.cpp:
1988         (QWebPage::userAgentForUrl):
1989
1990 2008-04-22  Tor Arne Vestbø  <tavestbo@trolltech.com>
1991
1992         Reviewed by Simon.
1993
1994         Add visual focusing hint for clear button and
1995         change focus to web page after user enters new URL.
1996
1997         * QtLauncher/main.cpp:
1998         (ClearButton::paintEvent):
1999         (MainWindow::changeLocation):
2000
2001 2008-04-22  Simon Hausmann  <hausmann@webkit.org>
2002
2003         Reviewed by Holger.
2004
2005         Added QWebFrame::hitTestContent() and QWebHitTestResult.
2006
2007         * Api/qwebframe.cpp:
2008         (QWebFrame::hitTestContent):
2009         (QWebFrame::event):
2010         (QWebHitTestResult::QWebHitTestResult):
2011         (QWebHitTestResultPrivate::QWebHitTestResultPrivate):
2012         (QWebHitTestResult::operator=):
2013         (QWebHitTestResult::~QWebHitTestResult):
2014         (QWebHitTestResult::isNull):
2015         (QWebHitTestResult::pos):
2016         (QWebHitTestResult::title):
2017         (QWebHitTestResult::linkText):
2018         (QWebHitTestResult::linkUrl):
2019         (QWebHitTestResult::linkTitle):
2020         (QWebHitTestResult::linkTargetFrame):
2021         (QWebHitTestResult::alternateText):
2022         (QWebHitTestResult::imageUrl):
2023         (QWebHitTestResult::pixmap):
2024         (QWebHitTestResult::isContentEditable):
2025         (QWebHitTestResult::isContentSelected):
2026         (QWebHitTestResult::frame):
2027         * Api/qwebframe.h:
2028         * Api/qwebframe_p.h:
2029         (QWebHitTestResultPrivate::QWebHitTestResultPrivate):
2030         * Api/qwebpage.cpp:
2031         (QWebPagePrivate::contextMenuEvent):
2032         (QWebPage::triggerAction):
2033         * Api/qwebpage.h:
2034         * Api/qwebpage_p.h:
2035
2036 2008-04-22  Simon Hausmann  <hausmann@webkit.org>
2037
2038         Reviewed by Holger.
2039
2040         Don't crash if an input method query is done without a page.
2041         
2042
2043         * Api/qwebview.cpp:
2044         (QWebView::inputMethodQuery):
2045
2046 2008-04-22  Simon Hausmann  <hausmann@webkit.org>
2047
2048         Reviewed by Holger.
2049
2050         Added re-implementations of QObject::event for future safety.
2051         
2052         This makes it easier to fix bugs with the event handling even in patch releases
2053         and is a general style we follow in Qt.
2054         
2055
2056         * Api/qwebframe.cpp:
2057         * Api/qwebframe.h:
2058         * Api/qwebview.cpp:
2059         (QWebView::event):
2060         * Api/qwebview.h:
2061
2062 2008-04-22  Benjamin Meyer  <bmeyer@trolltech.com>
2063
2064         Reviewed by Simon.
2065
2066         Fix construction of the user agent.
2067         
2068         The user-agent is now composed of
2069         * the platform and subplatform
2070         * the Qt version or application name and version (if set)
2071         * the locale
2072         * the SSL settings
2073         
2074
2075         * Api/qwebpage.cpp:
2076         (QWebPage::networkAccessManager):
2077         (QWebPage::setPluginFactory):
2078         (QWebPage::pluginFactory):
2079         (QWebPage::userAgentForUrl):
2080         * QtLauncher/main.cpp:
2081
2082 2008-04-22  Thiago Macieira  <tjmaciei@trolltech.com>
2083
2084         Reviewed by Simon.
2085
2086         Fixes: Pedantic compilation fix
2087
2088         Don't put semi-colons after braces closing namespaces.
2089
2090         * Api/qwebsettings.h:
2091
2092 2008-04-21  Simon Hausmann  <hausmann@webkit.org>
2093
2094         Reviewed by Lars.
2095
2096         Changed the return type of QWebFrame::evaluateJavaScript from a QString to a QVariant.
2097
2098         * Api/qwebframe.cpp:
2099         (QWebFrame::evaluateJavaScript):
2100         * Api/qwebframe.h:
2101
2102 2008-04-21  Simon Hausmann  <hausmann@webkit.org>
2103
2104         Reviewed by Holger.
2105
2106         Fixes redundant "Fonts" submenu in default lineedits that has only disabled items.
2107
2108         Don't show sub-menus that have only actions that are disabled.
2109
2110         * Api/qwebpage.cpp:
2111         (QWebPagePrivate::createContextMenu):
2112
2113 2008-04-21  Kavindra Devi Palaraja <kdpalara@trolltech.com>.
2114
2115         Reviewed by Simon.
2116
2117         Lots of documentation fixes, fixed all qdoc warnings.
2118
2119         * Api/qwebframe.cpp:
2120         (QWebFrame::setTextSizeMultiplier):
2121         * Api/qwebhistoryinterface.cpp:
2122         (gCleanupInterface):
2123         (QWebHistoryInterface::QWebHistoryInterface):
2124         (QWebHistoryInterface::~QWebHistoryInterface):
2125         * Api/qwebpage.cpp:
2126         (QWebPage::inputMethodQuery):
2127         (QWebPage::view):
2128         (QWebPage::javaScriptConsoleMessage):
2129         (QWebPage::javaScriptAlert):
2130         (QWebPage::javaScriptConfirm):
2131         (QWebPage::javaScriptPrompt):
2132         (QWebPage::viewportSize):
2133         (QWebPage::acceptNavigationRequest):
2134         (QWebPage::action):
2135         (QWebPage::event):
2136         (QWebPage::focusNextPrevChild):
2137         (QWebPage::setForwardUnsupportedContent):
2138         (QWebPage::setLinkDelegationPolicy):
2139         (QWebPage::findText):
2140         (QWebPage::settings):
2141         (QWebPage::networkProxy):
2142         (QWebPage::setNetworkAccessManager):
2143         * Api/qwebpage.h:
2144         * Api/qwebsettings.cpp:
2145         (QWebSettings::QWebSettings):
2146         (QWebSettings::setIconDatabasePath):
2147         (QWebSettings::iconForUrl):
2148         (QWebSettings::fontFamily):
2149         * Api/qwebview.cpp:
2150         (QWebView::load):
2151         * Api/qwebview.h:
2152
2153 2008-04-21  Marius Bugge Monsen  <mmonsen@trolltech.com>
2154
2155         Reviewed by Simon.
2156
2157         Fix compile failure on solaris-cc
2158
2159         * Api/qwebpage.h: Removed trailing semicolons and moved the private
2160         d-pointer to not confuse the compiler
2161
2162 2008-04-21  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2163
2164         Reviewed by Simon.
2165
2166         Build fix for Qt 4.3
2167
2168         * When building WebCore/internal make sure the QT_[BEGIN,END]_NAMESPACE is
2169         always defined. Do this by adding defines to the compiler line
2170         * For users of our API this is not feasible. Every public header file should
2171         include qwebkitglobal.h. Define the QT_BEGIN_NAMESPACE and QT_END_NAMESPACE
2172         when we are building everything < 4.4.0 and don't have them defined.
2173
2174         * Api/qwebkitglobal.h:
2175
2176 2008-04-21  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2177
2178         Reviewed by Simon.
2179
2180         * Initialize the WebGraphics with the one found in WebCore
2181         
2182
2183         * Api/qwebsettings.cpp:
2184         (QWebSettingsPrivate::apply):
2185
2186 2008-04-21  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2187
2188         Reviewed by Simon.
2189
2190         * Allow TextAreas to be resized.
2191         * No QWebSettings for this is introduced.
2192         
2193
2194         * Api/qwebsettings.cpp:
2195         (QWebSettingsPrivate::apply):
2196
2197 2008-04-21  Simon Hausmann  <shausman@trolltech.com>
2198
2199         Reviewed by Holger.
2200
2201         Fixes: QWebView::url property behaviour strange in designer
2202
2203         Added QWebView/QWebFrame::setUrl, which unlike load() clears the view immediately, schedules a load of the url but also makes sure url() returns the set url. This setter is now also used for the url property.
2204
2205         * Api/qwebframe.cpp:
2206         (QWebFrame::setUrl):
2207         * Api/qwebframe.h:
2208         * Api/qwebview.cpp:
2209         (QWebView::setUrl):
2210         * Api/qwebview.h:
2211
2212 2008-04-21  Andre Poenitz  <andre.poenitz@trolltech.com>
2213
2214         Reviewed by Simon Hausmann <hausmann@webkit.org>.
2215
2216         Fix compilation with Qt namespaces
2217
2218         * Api/qwebframe.cpp:
2219         (QWebFrame::print):
2220         * Api/qwebview.h:
2221
2222 2008-04-21  Simon Hausmann  <hausmann@webkit.org>
2223
2224         Reviewed by Holger.
2225
2226         When printing on high resolution printers we need to scale the painter accordingly (for now).
2227
2228         * Api/qwebframe.cpp:
2229         (QWebFrame::print):
2230
2231 2008-04-21  Simon Hausmann  <hausmann@webkit.org>
2232
2233         Reviewed by Holger.
2234
2235         Provide a print preview in the QtLauncher
2236
2237         * QtLauncher/main.cpp:
2238         (MainWindow::MainWindow):
2239         (MainWindow::showLinkHover):
2240         (MainWindow::print):
2241
2242 2008-04-20  Simon Hausmann  <hausmann@webkit.org>
2243
2244         Reviewed by Alp Toker.
2245
2246         Share the printing code between the Gtk and the Qt port
2247         and added printing to the Qt WebKit API.
2248
2249         * Api/qwebframe.cpp:
2250         (QWebFrame::print):
2251         * Api/qwebframe.h:
2252         * Api/qwebview.cpp:
2253         (QWebView::print):
2254         * Api/qwebview.h:
2255
2256 2008-04-19  Julien Chaffraix  <jchaffraix@webkit.org>
2257
2258         Qt build fix (renderer() -> contentRenderer()).
2259
2260         * Api/qwebframe.cpp:
2261         (QWebFrame::renderTreeDump):
2262         (QWebFrame::render):
2263
2264 2008-04-18  Simon Hausmann  <hausmann@webkit.org>
2265
2266         Reviewed by Holger.
2267
2268         Many API changes and additions after a full review with Jasmin Blanchette <jasmin@trolltech.com>
2269
2270         The diff is too big to mention the changes individually, but most of the changes were of cosmetic
2271         nature where methods or enums have been renamed or prefixed/suffixed according to the consistency
2272         rules of the Qt API.
2273
2274         * Api/qwebframe.cpp:
2275         (QWebFrame::addToJavaScriptWindowObject):
2276         (QWebFrame::toHtml):
2277         (QWebFrame::toPlainText):
2278         (QWebFrame::icon):
2279         (QWebFrame::setContent):
2280         (QWebFrame::setScrollBarPolicy):
2281         (QWebFrame::render):
2282         (QWebFrame::setTextSizeMultiplier):
2283         (QWebFrame::textSizeMultiplier):
2284         (QWebFrame::pos):
2285         * Api/qwebframe.h:
2286         * Api/qwebhistory.cpp:
2287         * Api/qwebhistory.h:
2288         * Api/qwebpage.cpp:
2289         (QWebPagePrivate::QWebPagePrivate):
2290         (QWebPagePrivate::~QWebPagePrivate):
2291         (QWebPagePrivate::acceptNavigationRequest):
2292         (webActionForContextMenuAction):
2293         (QWebPagePrivate::updateAction):
2294         (QWebPagePrivate::keyPressEvent):
2295         (QWebPage::view):
2296         (QWebPage::javaScriptPrompt):
2297         (QWebPage::createWindow):
2298         (QWebPage::triggerAction):
2299         (QWebPage::setViewportSize):
2300         (QWebPage::acceptNavigationRequest):
2301         (QWebPage::action):
2302         (QWebPage::focusNextPrevChild):
2303         (QWebPage::setForwardUnsupportedContent):
2304         (QWebPage::forwardUnsupportedContent):
2305         (QWebPage::setLinkDelegationPolicy):
2306         (QWebPage::findText):
2307         (QWebPage::networkAccessManager):
2308         (QWebPageContext::imageUrl):
2309         (QWebPageContext::image):
2310         * Api/qwebpage.h:
2311         * Api/qwebpage_p.h:
2312         * Api/qwebsettings.cpp:
2313         (QWebSettingsPrivate::apply):
2314         (QWebSettings::QWebSettings):
2315         (QWebSettings::setIconDatabasePath):
2316         (QWebSettings::iconDatabasePath):
2317         (QWebSettings::clearIconDatabase):
2318         (QWebSettings::iconForUrl):
2319         (QWebSettings::setWebGraphic):
2320         (QWebSettings::fontFamily):
2321         (QWebSettings::setAttribute):
2322         (QWebSettings::testAttribute):
2323         (QWebSettings::resetAttribute):
2324         * Api/qwebsettings.h:
2325         * Api/qwebview.cpp:
2326         (QWebView::setPage):
2327         (QWebView::icon):
2328         (QWebView::setTextSizeMultiplier):
2329         (QWebView::textSizeMultiplier):
2330         (QWebView::findText):
2331         (QWebView::reload):
2332         (QWebView::mouseMoveEvent):
2333         * Api/qwebview.h:
2334         * QtLauncher/main.cpp:
2335         (MainWindow::MainWindow):
2336         (main):
2337         * WebCoreSupport/ChromeClientQt.cpp:
2338         (WebCore::ChromeClientQt::ChromeClientQt):
2339         (WebCore::ChromeClientQt::setWindowRect):
2340         (WebCore::ChromeClientQt::toolbarsVisible):
2341         (WebCore::ChromeClientQt::setStatusbarVisible):
2342         (WebCore::ChromeClientQt::statusbarVisible):
2343         (WebCore::ChromeClientQt::setScrollbarsVisible):
2344         (WebCore::ChromeClientQt::setResizable):
2345         (WebCore::ChromeClientQt::scrollBackingStore):
2346         (WebCore::ChromeClientQt::mouseDidMoveOverElement):
2347         (WebCore::ChromeClientQt::setToolTip):
2348         * WebCoreSupport/ChromeClientQt.h:
2349         * WebCoreSupport/FrameLoaderClientQt.cpp:
2350         (WebCore::FrameLoaderClientQt::setFrame):
2351         (WebCore::FrameLoaderClientQt::didPerformFirstNavigation):
2352         (WebCore::FrameLoaderClientQt::setMainDocumentError):
2353         (WebCore::FrameLoaderClientQt::dispatchDidFailLoading):
2354         (WebCore::FrameLoaderClientQt::createFrame):
2355         (WebCore::FrameLoaderClientQt::objectContentType):
2356         * WebCoreSupport/FrameLoaderClientQt.h:
2357         * WebCoreSupport/InspectorClientQt.cpp:
2358
2359 2008-04-18  Simon Hausmann  <hausmann@webkit.org>
2360
2361         Reviewed by Holger.
2362
2363         Added QWebView::find/QWebFrame::find.
2364
2365         * Api/qwebpage.cpp:
2366         (QWebPage::focusNextPrevChild):
2367         (QWebPage::find):
2368         * Api/qwebpage.h:
2369         * Api/qwebview.cpp:
2370         (QWebView::find):
2371         * Api/qwebview.h:
2372
2373 2008-04-15  Ariya Hidayat  <ariya.hidayat@trolltech.com>
2374
2375         Reviewed by Simon.
2376
2377         fix potential crash when loading image(s)
2378
2379         Crash may occur. If compiled with 4.3, the variable is not initialized.
2380         This fix solves https://bugs.webkit.org/show_bug.cgi?id=17174
2381
2382         * Api/qwebpage.cpp:
2383         (QWebPagePrivate::QWebPagePrivate):
2384
2385 2008-04-15  Simon Hausmann  <hausmann@webkit.org>
2386
2387         Reviewed by Holger.
2388
2389         Update the micro focus for input methods as soon as the composition mode changes
2390         or the caret/selection changes.
2391         
2392
2393         * Api/qwebpage.cpp:
2394         * Api/qwebpage.h:
2395         * Api/qwebview.cpp:
2396         (QWebView::setPage):
2397         * WebCoreSupport/EditorClientQt.cpp:
2398         (WebCore::EditorClientQt::respondToChangedSelection):
2399         (WebCore::EditorClientQt::setInputMethodState):
2400
2401 2008-04-15  Simon Hausmann  <hausmann@webkit.org>
2402
2403         Reviewed by Holger.
2404
2405         Don't use QDir, QString or any locale sensitive function before constructing Q(Core)Application,
2406         it yields undefined behaviour or wrong default codec initialization.
2407         
2408
2409         * QtLauncher/main.cpp:
2410         (WebPage::createWindow):
2411
2412 2008-04-15  Olivier Goffart  <ogoffart@trolltech.com>
2413
2414         Reviewed by Simon.
2415
2416         Fixes: copy to clipboard when selecting, and paste when clicking with the middle button
2417
2418         * Api/qwebpage.cpp:
2419         (QWebPagePrivate::mouseReleaseEvent): If the clipboard supports
2420         selections then we support copy & paste into the selection.
2421
2422 2008-04-15  Michael Brasser  <michael.brasser@trolltech.com>
2423
2424         Reviewed by Simon.
2425
2426         Add basic input method support.
2427         
2428
2429         * Api/qwebpage.cpp:
2430         (QWebPagePrivate::dropEvent):
2431         (QWebPagePrivate::inputMethodEvent):
2432         (QWebPage::inputMethodQuery):
2433         (QWebPage::event):
2434         * Api/qwebpage.h:
2435         * Api/qwebpage_p.h:
2436         * Api/qwebview.cpp:
2437         (QWebView::QWebView):
2438         (QWebView::inputMethodQuery):
2439         (QWebView::inputMethodEvent):
2440         * Api/qwebview.h:
2441         * WebCoreSupport/EditorClientQt.cpp:
2442         (WebCore::EditorClientQt::setInputMethodState):
2443
2444 2008-04-15  Simon Hausmann  <hausmann@webkit.org>
2445
2446         Reviewed by Holger.
2447
2448         Added (QWebFrame|QWebView)::textZoomFactor.
2449         
2450
2451         * Api/qwebframe.cpp:
2452         (QWebFrame::setTextZoomFactor):
2453         (QWebFrame::textZoomFactor):
2454         * Api/qwebframe.h:
2455         * Api/qwebview.cpp:
2456         (QWebView::setTextZoomFactor):
2457         (QWebView::textZoomFactor):
2458         * Api/qwebview.h:
2459
2460 2008-04-15  Michael Brasser  <michael.brasser@trolltech.com>
2461
2462         Reviewed by Simon.
2463
2464         Added simple scrolling API to QWebFrame.
2465         
2466         The intent is that it works similar to QAbstractScrollArea.
2467         
2468
2469         * Api/qwebframe.cpp:
2470         (QWebFrame::setScrollBarValue):
2471         (QWebFrame::scrollBarValue):
2472         (QWebFrame::scrollBarMaximum):
2473         (QWebFrame::scrollBarMinimum):
2474         * Api/qwebframe.h:
2475
2476 2008-04-15  Olivier Goffart  <ogoffart@trolltech.com>
2477
2478         Reviewed by Holger.
2479
2480         Fixes: implement the OpenFrameInNewWindow action.
2481         
2482
2483         * Api/qwebpage.cpp:
2484         (QWebPage::triggerAction):
2485
2486 2008-04-15  Andre Poenitz  <andre.poenitz@trolltech.com>
2487
2488         Reviewed by Simon.
2489
2490         Fix compilation with Qt namespaces
2491
2492         Qt can be configured to have all of its classes inside a specified namespaces.
2493         This is for example used in plugin/component environments like Eclipse.
2494
2495         This change makes it possible to let the Qt port compile against a namespaced
2496         Qt by the use of macros Qt provides to properly forward declare Qt classes in
2497         the namespace.
2498
2499         * Api/qwebframe.h:
2500         * Api/qwebpage.h:
2501         * Api/qwebpage_p.h:
2502         * Api/qwebpluginfactory.h:
2503         * Api/qwebsettings.h:
2504         * Api/qwebview.h:
2505
2506 2008-04-05  Olivier Goffart  <ogoffart@trolltech.com>
2507
2508         Reviewed by Holger.
2509
2510         Fixes: Right clicking an image and choosing "copy image" doesnt put anything in the clipboard.
2511         
2512
2513         * Api/qwebpage.cpp:
2514         (QWebPage::triggerAction):
2515
2516 2008-04-05  Olivier Goffart  <ogoffart@trolltech.com>
2517
2518         Reviewed by Simon.
2519
2520         Fixes: Right click, and "Open image" open the link instead of the image.
2521         
2522
2523         * Api/qwebpage.cpp:
2524
2525 2008-04-05  Benjamin Meyer  <bmeyer@trolltech.com>
2526
2527         Reviewed by Simon.
2528
2529         Added doc stub for QWebSettings so class docs are generated
2530         
2531
2532         * Api/qwebsettings.cpp:
2533         (QWebSettings::QWebSettings):
2534
2535 2008-04-05  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2536
2537         Reviewed by Simon.
2538
2539         * Propose the addition of updateRequest and scrollRequest to the QWebPage.
2540         
2541         * The question is if these signals belong to QWebPage or  QWebFrame.
2542         -It is more easy to have them in QWebPage because ScrollView is invoking
2543         the ChromeClient with the right coordinates
2544         -On the other hand someone wants to render frames separately. But this is partly
2545         doomed as you can have overlapping frames and what you paint would not relate to
2546         what you normally see on webpages.
2547         
2548
2549         * Api/qwebpage.cpp:
2550         * Api/qwebpage.h:
2551         * WebCoreSupport/ChromeClientQt.cpp:
2552         (WebCore::ChromeClientQt::scrollBackingStore):
2553         (WebCore::ChromeClientQt::mouseDidMoveOverElement):
2554
2555 2008-04-03  Simon Hausmann  <hausmann@webkit.org>
2556
2557         Reviewed by Mark Rowe.
2558
2559         Roll out r31599 and r31605 again after discussion with Mark Rowe.
2560
2561         * Api/qwebframe.cpp:
2562         (QWebFrame::icon):
2563         * Api/qwebsettings.cpp:
2564         (QWebSettings::iconForUrl):
2565
2566 2008-04-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2567
2568         Reviewed by Simon.
2569
2570         * Change IconDatabase::iconForPageURL to return more information. E.g. if
2571         an image has been found, or if the loading of an image has been scheduled.
2572         * Update FrameLoader to use another method to trigger reading from disk
2573         * Update the QWebFrame and QWebSettings
2574
2575         * Api/qwebframe.cpp:
2576         (QWebFrame::icon):
2577         * Api/qwebsettings.cpp:
2578         (QWebSettings::iconForUrl):
2579
2580 2008-04-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2581
2582         Reviewed by Simon.
2583
2584         * Safari is using the IconDatabase the following way (assumption). Before they
2585         call iconDatabase()->open they "retain" all URLs they are interested in, these
2586         could come from the history.
2587         * When opening the iconDatabase() a thread will be started that is going to import
2588         the URLs, all none manually retained URLs are scheduled for removal. The removal
2589         is going to happen when the next icon gets stored in the database.
2590         * We do not have any IconDatabase code, we can not retain the URLs before opening the
2591         database. To disable the automatic pruning of the icons we will ask the IconDatabase
2592         to delay this operation. This means our IconDatabase, when used, will grow, so we should
2593         try to have a IconDatabase class in 4.4.
2594         * The only way to counter the growth is a call to QWebSettings::clearIconDatabase
2595         
2596
2597         * Api/qwebsettings.cpp:
2598         (QWebSettings::clearIconDatabase):
2599         * Api/qwebsettings.h:
2600
2601 2008-04-03  Benjamin Meyer  <bmeyer@trolltech.com>
2602
2603         Reviewed by Simon.
2604
2605         Add a way to get the site icon for a url
2606         static QPixmap iconForUrl(const QUrl &url);
2607         
2608
2609         * Api/qwebsettings.cpp:
2610         (QWebSettings::iconForUrl):
2611         * Api/qwebsettings.h:
2612
2613 2008-04-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2614
2615         Reviewed by Simon.
2616
2617         * Update the Copyright info in QWebSettings
2618         
2619
2620         * Api/qwebsettings.cpp:
2621         * Api/qwebsettings.h:
2622
2623 2008-04-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2624
2625         Reviewed by Simon.
2626
2627         * The isEmpty check is not needed anymore with the earlier backport
2628         
2629
2630         * Api/qwebframe.cpp:
2631         (QWebFrame::icon):
2632
2633 2008-04-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2634
2635         Reviewed by Simon.
2636
2637         * For the http tests we need the output of the FrameLoaderClient. The QtWebKit API
2638         is not exporting enough to create the output in DRT itself. Settle with the approach
2639         Lars has taken for the Editing support and add branches to our FrameLoaderClient code.
2640         * run-webkit-tests http/tests(/loading) can now be executed.
2641         * For tests in loading/ directories we are going to throw away the dirty
2642         QWebPage to start with something clean.
2643         
2644
2645         * WebCoreSupport/FrameLoaderClientQt.cpp:
2646         (qt_dump_frame_loader):
2647         (drtDescriptionSuitableForTestResult):
2648         (WebCore::FrameLoaderClientQt::dispatchDidReceiveServerRedirectForProvisionalLoad):
2649         (WebCore::FrameLoaderClientQt::dispatchDidCancelClientRedirect):
2650         (WebCore::FrameLoaderClientQt::dispatchWillPerformClientRedirect):
2651         (WebCore::FrameLoaderClientQt::dispatchDidChangeLocationWithinPage):
2652         (WebCore::FrameLoaderClientQt::dispatchWillClose):
2653         (WebCore::FrameLoaderClientQt::dispatchDidStartProvisionalLoad):
2654         (WebCore::FrameLoaderClientQt::dispatchDidReceiveTitle):
2655         (WebCore::FrameLoaderClientQt::dispatchDidCommitLoad):
2656         (WebCore::FrameLoaderClientQt::dispatchDidFinishDocumentLoad):
2657         (WebCore::FrameLoaderClientQt::dispatchDidFinishLoad):
2658         (WebCore::FrameLoaderClientQt::registerForIconNotification):
2659         (WebCore::FrameLoaderClientQt::setMainDocumentError):
2660         (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):
2661
2662 2008-04-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2663
2664         Reviewed by Simon.
2665
2666         * Export the PageCache and Cache capacity call one to one. This is only there
2667         to allow the QtLauncher to play with caching.
2668         * TODO: make API decisions and consider following the windows Api to set a WebCacheModel
2669         and determine certain values automatically.
2670         
2671
2672         * Api/qwebsettings.cpp:
2673         (QWebSettings::setPageCacheCapacity):
2674         (QWebSettings::setObjectCacheCapacities):
2675         * Api/qwebsettings.h:
2676         * QtLauncher/main.cpp:
2677
2678 2008-04-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2679
2680         Reviewed by Simon.
2681
2682         Prepapre everything for enabling the PageCache for the Qt Platform:
2683         * Claim that we can cache pages
2684         * Create the FrameView FrameLoaderClientQt::transitionToCommittedForNewPage using
2685         the initial size of the viewport and stop creating it in the QWebFramePrivate::init
2686         
2687         Differences to the Windows port:
2688         * attachToWindow/detachFromWindow is not called and is not (yet) part
2689         of Widget/ScrollView of the Qt platform. We might need that for plugin
2690         support in the future.
2691         * We store the margin's and scrolling flag inside QWebFrame and use it when
2692         creating the FrameView.
2693         
2694         What is missing:
2695         * API to call pageCache()->setCapacity(XYZ);
2696         
2697
2698         * Api/qwebframe.cpp:
2699         (QWebFramePrivate::init):
2700         * Api/qwebframe_p.h:
2701         (QWebFramePrivate::QWebFramePrivate):
2702         * Api/qwebpage.cpp:
2703         (QWebPagePrivate::createMainFrame):
2704         * WebCoreSupport/FrameLoaderClientQt.cpp:
2705         (WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage):
2706         (WebCore::FrameLoaderClientQt::blockedError):
2707
2708 2008-04-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2709
2710         Reviewed by Simon.
2711
2712         * For the PageCache support we do not want to create a FrameView in the constructor
2713         of QWebFrame. In QWegPage::viewportSize() we currently call mainFrame() and that will
2714         create a QWebFrame if no mainFrame is present and this gets called when we try to
2715         create a FrameView...
2716         * Keep a copy of the initial viewportSize around and use it if we do not have a Frame
2717         or FrameView.
2718         
2719
2720         * Api/qwebpage.cpp:
2721         (QWebPagePrivate::QWebPagePrivate):
2722         (QWebPage::triggerAction):
2723         * Api/qwebpage_p.h:
2724
2725 2008-04-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2726
2727         Reviewed by Simon.
2728
2729         * Always return true in FrameLoaderClientQt::shouldGoToHistoryItem, like the windows port
2730
2731         * WebCoreSupport/FrameLoaderClientQt.cpp:
2732         (WebCore::):
2733
2734 2008-04-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2735
2736         Reviewed by Simon.
2737
2738         * Attempt to make the m_webFrame null pointer checking consistent. Always check for
2739         m_webFrame. It should get set by the QWebFrame with the FramerLoaderClientQt::setFrame
2740         call and should stay valid until the destruction of the QWebFrame.
2741         * Currently the same checking is not needed for m_frame as it will only set to 0 in
2742         FrameLoaderClientQt::frameLoaderDestroyed and should be not 0 because of the setFrame
2743         initialisation.
2744         
2745
2746         * WebCoreSupport/FrameLoaderClientQt.cpp:
2747         (WebCore::FrameLoaderClientQt::dispatchDidReceiveTitle):
2748         (WebCore::FrameLoaderClientQt::setMainDocumentError):
2749         (WebCore::FrameLoaderClientQt::dispatchDidReceiveContentLength):
2750         (WebCore::FrameLoaderClientQt::objectContentType):
2751         (WebCore::FrameLoaderClientQt::createPlugin):
2752
2753 2008-04-01  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2754
2755         Reviewed by Simon.
2756
2757         * Get the RefCounting of WebCore::Frame right and make sure that both QWebFrame
2758         and WebCore::Frame get destroyed if we leave site with subframes and on the
2759         end of the application.
2760         * Use adoptRef in FrameLoaderClientQt::createFrame to get the refs right for subframes. We
2761         do not want to add an extra reference. Without this we are leaking subframes.
2762         * Assume that the lifetime of a Frame and FrameLoader are the same, when the Frame is gone
2763         we want to destroy the QWebFrame (e.g. on a page with subframes). Add delete m_webFrame
2764         in the frameLoaderDestroyed method to do that.
2765         * If we happen to delete the QWebFrame before the FrameLoaderClientQt we set m_webFrame to
2766         zero in the FrameLoaderClientQt to avoid bad things.
2767         
2768
2769         * Api/qwebframe.cpp:
2770         (QWebFrame::~QWebFrame):
2771         * WebCoreSupport/FrameLoaderClientQt.cpp:
2772         (WebCore::FrameLoaderClientQt::shouldGoToHistoryItem):
2773         (WebCore::FrameLoaderClientQt::objectContentType):
2774         * WebCoreSupport/FrameLoaderClientQt.h:
2775
2776 2008-04-01  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2777
2778         Reviewed by Simon.
2779
2780         * Do not save a RefPtr to the frame. The FrameLoaderClient, Frame and
2781         QWebFrame should have the same lifetime everything else is a leak
2782         or issue.
2783
2784         * Api/qwebframe.cpp:
2785         (QWebFramePrivate::init):
2786         * Api/qwebframe_p.h:
2787         * WebCoreSupport/FrameLoaderClientQt.cpp:
2788
2789 2008-04-01  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2790
2791         Reviewed by Simon.
2792
2793         * Do not store the QWebFrame associated with a ScrollView/FrameView
2794         in the WebCore::Widget.
2795         * Instead of asking the Widget for the QWebFrame use the QWebFramePrivate::core
2796         and QWebFramePrivate::kit function to convert from and to QWebFrame.
2797         
2798
2799         * Api/qwebframe.cpp:
2800         (QWebFramePrivate::init):
2801         * Api/qwebpage.cpp:
2802         (QWebPagePrivate::createMainFrame):
2803
2804 2008-04-01  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2805
2806         Reviewed by Simon.
2807
2808         * Do not store the FrameView in the QWebFrame and cope with the situation when
2809         a WebCore::Frame has no WebCore::FrameView.
2810         
2811
2812         * Api/qwebframe.cpp:
2813         (QWebFramePrivate::init):
2814         (QWebFramePrivate::horizontalScrollBar):
2815         (QWebFramePrivate::verticalScrollBar):
2816         (QWebFrame::innerText):
2817         (QWebFrame::renderTreeDump):
2818         (QWebFrame::setVerticalScrollBarPolicy):
2819         (QWebFrame::setHorizontalScrollBarPolicy):
2820         (QWebFrame::render):
2821         (QWebFrame::layout):
2822         (QWebFrame::pos):
2823         * Api/qwebframe_p.h:
2824         (QWebFramePrivate::QWebFramePrivate):
2825         * Api/qwebpage.cpp:
2826         (QWebPagePrivate::updateEditorActions):
2827         (QWebPagePrivate::mouseMoveEvent):
2828         (QWebPagePrivate::mousePressEvent):
2829         (QWebPagePrivate::mouseDoubleClickEvent):
2830         (QWebPagePrivate::contextMenuEvent):
2831         (QWebPagePrivate::wheelEvent):
2832         (QWebPage::triggerAction):
2833         * WebCoreSupport/FrameLoaderClientQt.cpp:
2834
2835 2008-04-01  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2836
2837         Reviewed by Simon.
2838
2839         * Change the order of the methods to match with the FrameLoaderClient.h to ease
2840         removing methods in the future.
2841
2842         * WebCoreSupport/FrameLoaderClientQt.h:
2843
2844 2008-04-01  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2845
2846         Reviewed by Simon.
2847
2848         * Remove virtuals in the FrameLoaderClientQt that don't exist in the base class.
2849
2850         * WebCoreSupport/FrameLoaderClientQt.cpp:
2851         (WebCore::FrameLoaderClientQt::detachedFromParent4):
2852         * WebCoreSupport/FrameLoaderClientQt.h:
2853
2854 2008-03-25  Brady Eidson  <beidson@apple.com>
2855
2856         Reviewed by Darin
2857
2858         Remove newly obsolete FrameLoaderClient methods
2859
2860         * WebCoreSupport/FrameLoaderClientQt.cpp:
2861         * WebCoreSupport/FrameLoaderClientQt.h:
2862
2863 2008-03-22  Mark Rowe  <mrowe@apple.com>
2864
2865         Qt build fix.
2866
2867         * WebCoreSupport/FrameLoaderClientQt.cpp:
2868         (WebCore::):
2869
2870 2008-03-18  Simon Hausmann  <hausmann@webkit.org>
2871
2872         Reviewed by Holger.
2873
2874         Fix the Qt build. Don't return void in non-void functions.
2875
2876         * Api/qwebpluginfactory.cpp:
2877         (QWebPluginFactory::extension):
2878
2879 2008-03-16  Thiago Macieira  <thiago.macieira@trolltech.com>
2880
2881         Reviewed by Simon.
2882
2883         Don't use RefPtr in classes you haven't seen the implementation of.
2884         
2885         Forward-declaration and declaration of RefPtr<Foo> is ok. But you
2886         cannot *use* said objects until Foo is defined. This is true even for
2887         initialisation with a 0.
2888         
2889         Seems the HP aCC compiler is more strict here than gcc.
2890
2891         * Api/qwebframe_p.h:
2892
2893 2008-03-14  Simon Hausmann  <hausmann@webkit.org>
2894
2895         Fix the Qt build.
2896
2897         * Api/qwebframe.cpp:
2898         (QWebFrame::setHtml):
2899         (QWebFrame::setContent):
2900
2901 2008-03-13  Simon Hausmann  <hausmann@webkit.org>
2902
2903         Fix the Qt build.
2904
2905         * Api/qwebframe.cpp:
2906         (QWebFrame::addToJSWindowObject):
2907
2908 2008-03-12  Simon Hausmann  <hausmann@webkit.org>
2909
2910         Fix compilation against Qt 4.3
2911
2912         * Api/qwebpage.cpp:
2913         * Api/qwebpage.h:
2914         * Api/qwebpage_p.h:
2915
2916 2008-03-11  Rodney Dawes  <dobey@wayofthemonkey.com>
2917
2918         Fix the Qt build.
2919
2920         * WebCoreSupport/FrameLoaderClientQt.cpp:
2921         (FrameLoaderClientQt::CreatePlugin):
2922
2923 2008-03-11  Simon Hausmann  <hausmann@webkit.org>
2924
2925         Fix the Qt build (silly typo).
2926
2927         * QtLauncher/main.cpp:
2928         (MainWindow::MainWindow):
2929
2930 2008-03-11  Tor Arne Vestbø  <tavestbo@trolltech.com>
2931
2932         Reviewed by Simon.
2933
2934         Moved obscuring progress bar to the lower right corner.
2935
2936         * QtLauncher/main.cpp:
2937         (MainWindow::MainWindow):
2938         (MainWindow::resizeEvent):
2939
2940 2008-03-11  Tor Arne Vestbø  <tavestbo@trolltech.com>
2941
2942         Reviewed by Simon.
2943
2944         Added reload action and grouped stop and reload actions together.
2945
2946         * QtLauncher/main.cpp:
2947         (MainWindow::MainWindow):
2948
2949 2008-03-11  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2950
2951         Reviewed by Simon.
2952
2953         * Set a Icon on the QAction if we have one.
2954
2955         * Api/qwebpage.cpp:
2956         (QWebPage::action):
2957
2958 2008-03-11  Simon Hausmann  <hausmann@webkit.org>
2959
2960         Fix the Qt build.
2961
2962         * Api/qwebframe.cpp:
2963         (QWebFrame::addToJSWindowObject):
2964
2965 2008-03-07  Simon Hausmann  <hausmann@webkit.org>
2966
2967         Reviewed by Darin Adler.
2968
2969         Done with Lars.
2970
2971         Replaced the QWebObjectPlugin interfaces with QWebPluginFactory.
2972
2973         * Api/qwebnetworkinterface.cpp:
2974         (QWebNetworkManager::add):
2975         (QWebNetworkManager::cancel):
2976         (QWebNetworkManager::started):
2977         (QWebNetworkManager::data):
2978         (QWebNetworkManager::finished):
2979         * Api/qwebnetworkinterface_p.h:
2980         (QWebNetworkJobPrivate::QWebNetworkJobPrivate):
2981         * Api/qwebobjectplugin.cpp: Removed.
2982         * Api/qwebobjectplugin.h: Removed.
2983         * Api/qwebobjectplugin_p.h: Removed.
2984         * Api/qwebobjectpluginconnector.cpp: Removed.
2985         * Api/qwebobjectpluginconnector.h: Removed.
2986         * Api/qwebpage.cpp:
2987         (QWebPagePrivate::QWebPagePrivate):
2988         (QWebPage::setPluginFactory):
2989         (QWebPage::pluginFactory):
2990         * Api/qwebpage.h:
2991         * Api/qwebpage_p.h:
2992         * Api/qwebpluginfactory.cpp: Added.
2993         (QWebPluginFactory::QWebPluginFactory):
2994         (QWebPluginFactory::~QWebPluginFactory):
2995         (QWebPluginFactory::refreshPlugins):
2996         (QWebPluginFactory::extension):
2997         * Api/qwebpluginfactory.h: Added.
2998         (MimeType::):
2999         * WebCoreSupport/FrameLoaderClientQt.cpp:
3000         (WebCore::FrameLoaderClientQt::objectContentType):
3001         (WebCore::FrameLoaderClientQt::createPlugin):
3002
3003 2008-03-07  Simon Hausmann  <hausmann@webkit.org>
3004
3005         Fix the Qt build.
3006
3007         * Api/qwebframe.cpp:
3008
3009 2008-03-04  Sam Weinig  <sam@webkit.org>
3010
3011         Reviewed by Mark Rowe.
3012
3013         - Remove all unnecessary includes of JSDOMWindowBase.h, we prefer including
3014           JSDOMWindow.h
3015
3016         * Api/qwebframe.cpp:
3017         (QWebFrame::addToJSWindowObject):
3018
3019 2008-03-04  Mark Rowe  <mrowe@apple.com>
3020
3021         Another go at fixing the Qt build.
3022
3023         * Api/qwebframe.cpp:
3024         (QWebFrame::addToJSWindowObject):
3025
3026 2008-02-24  Darin Adler  <darin@apple.com>
3027
3028         Reviewed by Sam.
3029
3030         - remove separate client calls for "standard" and "reload' history
3031
3032         * WebCoreSupport/FrameLoaderClientQt.cpp:
3033         (WebCore::FrameLoaderClientQt::updateGlobalHistory):
3034         * WebCoreSupport/FrameLoaderClientQt.h:
3035
3036 2008-02-24  Darin Adler  <darin@apple.com>
3037
3038         - another try at fixing the build
3039
3040         * Api/qwebframe.cpp:
3041         (QWebFrame::load): Replace new FormData with FormData::create.
3042
3043 2008-02-22  Sam Weinig  <sam@webkit.org>
3044
3045         Fix Qt build.
3046
3047         * Api/qwebhistoryinterface.cpp:
3048
3049 2008-02-22  Sam Weinig  <sam@webkit.org>
3050
3051         Rubber-stamped by Adam Roben.
3052
3053         Rid the project of the Devil known as DeprecatedString!
3054
3055         * Api/qwebhistory.cpp:
3056         * Api/qwebhistoryinterface.cpp:
3057
3058 2008-02-18  Darin Adler  <darin@apple.com>
3059
3060         Reviewed by Sam.
3061
3062         * Api/qwebnetworkinterface.cpp:
3063         (QWebNetworkRequestPrivate::init): Removed use of DeprecatedString.
3064
3065 2008-01-24  David Boddie  <dboddie@trolltech.com>
3066
3067         Reviewed by Simon.
3068
3069         Documentation tidying.
3070         
3071
3072         * Api/qwebframe.cpp:
3073         * Api/qwebhistoryinterface.cpp:
3074         * Api/qwebview.cpp:
3075
3076 2008-01-24  Jarek Kobus  <jkobus@trolltech.com>
3077
3078         Reviewed by Simon.
3079
3080         Text for translations were used wrongly as comments
3081         
3082
3083         * WebCoreSupport/FrameLoaderClientQt.cpp:
3084         (WebCore::):
3085         (WebCore::FrameLoaderClientQt::cannotShowURLError):
3086         (WebCore::FrameLoaderClientQt::interruptForPolicyChangeError):
3087         (WebCore::FrameLoaderClientQt::cannotShowMIMETypeError):
3088         (WebCore::FrameLoaderClientQt::fileDoesNotExistError):
3089         (WebCore::FrameLoaderClientQt::shouldFallBack):
3090
3091 2008-01-24  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
3092
3093         Reviewed by Simon.
3094
3095         * We have a KURL->QUrl conversion on KURL itself, make use of it.
3096         * This conversion is supposed to be loss-free
3097         
3098
3099         * Api/qwebframe.cpp:
3100
3101 2008-01-23  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
3102
3103         * Rubber stamped by Simon
3104
3105         * Fix leaking of sub frames (WebCore::Frame). We keep one reference too many.
3106         This was found while working on the page-cache, other ports are not affected.
3107
3108         * WebCoreSupport/FrameLoaderClientQt.cpp:
3109         (WebCore::FrameLoaderClientQt::createFrame):
3110
3111 2008-01-23  Rohan McGovern  <rohan.mcgovern@trolltech.com>
3112
3113         Reviewed by Simon Hausmann <hausmann@webkit.org>.
3114
3115         Fix Qtopia compilation with QT_NO_TOOLTIP
3116         
3117
3118         * WebCoreSupport/ChromeClientQt.cpp:
3119         (WebCore::ChromeClientQt::print):
3120
3121 2008-01-23  Geir Vattekar  <gvatteka@trolltech.com>
3122
3123         Reviewed by Simon.
3124
3125         Doc: Replaced \code with snippets in the docs
3126         
3127
3128         * Api/qwebview.cpp:
3129
3130 2008-01-23  Benjamin Meyer  <bmeyer@trolltech.com>
3131
3132         Reviewed by Simon.
3133
3134         Tweak key presses even to match commonly expected behavior
3135         - space key == page down
3136         - page down moved down not a page, but slightly less then a page so you don't loose your spot when reading.
3137         - Use font height rather then a hard coded "10" for left, right, up, down
3138         - Ctrl-Up moves to the top of the page
3139         - Ctrl-Down move to the bottom of the page
3140         - Backspace == GoBack
3141         - Shift-Backspace == GoForward
3142         
3143
3144         * Api/qwebpage.cpp:
3145         (dropActionToDragOp):
3146         (dragOpToDropAction):
3147         (QWebPagePrivate::keyPressEvent):
3148
3149 2008-01-23  Simon Hausmann  <hausmann@webkit.org>
3150
3151         Reviewed by Lars.
3152
3153         Implemented FrameLoaderClient::startDownload() and FrameLoaderClient::download().
3154         
3155         Added two signals to QWebPage to handle downloading of links and handling of
3156         unsupported content.
3157         
3158
3159         * Api/qwebpage.cpp:
3160         (QWebPage::triggerAction):
3161         * Api/qwebpage.h:
3162         * WebCoreSupport/FrameLoaderClientQt.cpp:
3163         (WebCore::FrameLoaderClientQt::download):
3164         (WebCore::FrameLoaderClientQt::assignIdentifierToInitialRequest):
3165         (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForMIMEType):
3166         (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNewWindowAction):
3167         (WebCore::FrameLoaderClientQt::willUseArchive):
3168
3169 2008-01-22  Lars Knoll  <lars@trolltech.com>
3170
3171         Reviewed by Simon.
3172
3173         setup a family for cursive and fantasy fonts as well.
3174         
3175
3176         * Api/qwebsettings.cpp:
3177         (QWebSettings::QWebSettings):
3178
3179 2008-01-22  Benjamin Meyer  <bmeyer@trolltech.com>
3180
3181         Reviewed by Simon.
3182
3183         Implement ChromeClientQt::setToolTip
3184         Implement ChromeClientQt::mouseDidMoveOverElement
3185         
3186
3187         * Api/qwebpage.cpp:
3188         * Api/qwebpage_p.h:
3189         * WebCoreSupport/ChromeClientQt.cpp:
3190         (WebCore::ChromeClientQt::ChromeClientQt):
3191         (WebCore::ChromeClientQt::focus):
3192         (WebCore::ChromeClientQt::mouseDidMoveOverElement):
3193         (WebCore::ChromeClientQt::setToolTip):
3194         (WebCore::ChromeClientQt::print):
3195         * WebCoreSupport/ChromeClientQt.h:
3196
3197 2008-01-21  Darin Adler  <darin@apple.com>
3198
3199         Reviewed by John Sullivan.
3200
3201         - updated for changes to ChromeClient database functions
3202
3203         * WebCoreSupport/ChromeClientQt.cpp:
3204         (WebCore::ChromeClientQt::exceededDatabaseQuota):
3205         * WebCoreSupport/ChromeClientQt.h:
3206
3207 2008-01-21  Benjamin Meyer  <bmeyer@trolltech.com>
3208
3209         Reviewed by Simon.
3210
3211         Change QWebHistoryInterface::addHistoryEntry() from const to non-const
3212         
3213
3214         * Api/qwebhistoryinterface.h:
3215
3216 2008-01-21  Adam Treat  <treat@kde.org>
3217
3218         Reviewed by Simon.
3219
3220         * Don't leak the d-pointer in QWebSettings.
3221         
3222
3223         * Api/qwebsettings.cpp:
3224         (QWebSettings::~QWebSettings):
3225
3226 2008-01-21  Simon Hausmann  <hausmann@webkit.org>
3227
3228         Reviewed by Holger.
3229
3230         Update the WebKit version number from WebKit/win/WebKit.vcproj/VERSION.
3231         
3232         This has the fortunate side-effect that gmail sends us sensible HTML/JS again :)
3233         
3234
3235         * Api/qwebpage.cpp:
3236
3237 2008-01-21  Simon Hausmann  <hausmann@webkit.org>
3238
3239         Reviewed by Holger.
3240
3241         Fix focus chain handling and cycling through focusable objects (links) using tab/backtab.
3242         
3243         * Fix GraphicsContext::drawFocusRing to also draw single focus rects.
3244         * Implemented QWebPage::focusNextPrevChild by sending fake tab/shift-tab events
3245         and make the return value depend on whether we successfully determined a focusable
3246         node or not.
3247         * Changed QWebView::focusNextPrevChild() to call the base QWidget implementation correctly
3248         if we could not handle the focus chain ourselves.
3249         * Changed the focus policy of QWebView to correctly use WheelFocus instead of ClickFocus.
3250         * Made ChromeClientQt::canTakeFocus() and takeFocus() dummy method since they are only
3251         used to control the situation of stepping out of the focus chain inside the page.
3252         * Made inclusion of links in the focus chain configurable through QWebSettings::LinksIncludedInFocusChain.
3253         The layout tests expect this to be disabled but for the user it seems sensible to have it
3254         on by default, hence the default in qwebsettings.cpp
3255         
3256
3257         * Api/qwebpage.cpp:
3258         (QWebPage::focusNextPrevChild):
3259         * Api/qwebsettings.cpp:
3260         (QWebSettings::QWebSettings):
3261         * Api/qwebsettings.h:
3262         * Api/qwebview.cpp:
3263         (QWebView::QWebView):
3264         (QWebView::focusNextPrevChild):
3265         * WebCoreSupport/ChromeClientQt.cpp:
3266         (WebCore::ChromeClientQt::canTakeFocus):
3267         (WebCore::ChromeClientQt::takeFocus):
3268
3269 2008-01-18  Simon Hausmann  <hausmann@webkit.org>
3270
3271         Reviewed by Holger.
3272
3273         Coding style fixes and added a comment about the include order.
3274
3275         * WebKit_pch.h:
3276
3277 2008-01-18  Marius Storm-Olsen  <marius@trolltech.com>
3278
3279         Reviewed by Simon Hausmann <hausmann@webkit.org>.
3280
3281         Add use of precompiled header, when building inside Qt.
3282         
3283         Compiling WebKit was taking forever; 17 minutes on my machine for _one_ build! Adding the PCH at least brings it down to 12 minutes for one build, for me.
3284         
3285
3286         * WebKit_pch.h: Added.
3287
3288 2008-01-18  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
3289
3290         Reviewed by Simon.
3291
3292         * Ask the WebCore::IconDatabase only if our URL is not empty. Otherwise
3293         we will see a crash in a HashSet.
3294         * It is crashing there because the StringImpl of an empty String is 0.
3295         * We avoid this crash by checking for isEmpty() in WebKit as there is no
3296         use to ask the iconDatabase for an empty string. We will fallback to the
3297         defaultIcon.
3298         
3299
3300         * Api/qwebframe.cpp:
3301         (QWebFrame::icon):
3302
3303 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
3304
3305         Reviewed by Holger.
3306
3307         Minor documentation fixes
3308         
3309
3310         * Api/qwebframe.cpp:
3311         * Api/qwebview.cpp:
3312
3313 2008-01-17  Simon Hausmann  <shausman@trolltech.com>
3314
3315         Reviewed by Lars.
3316
3317         Fix form elements not focusing correctly after the qt widget lost its focus.
3318         
3319         When receiving a focus out event notify the focus controller. Otherwise its
3320         m_focusedFrame variable remains unchanged and setFocusedFrame on a focusIn
3321         event shortcuts and doesn't call setActive(true).
3322         
3323
3324         * Api/qwebpage.cpp:
3325
3326 2008-01-17  Simon Hausmann  <shausman@trolltech.com>
3327
3328         Reviewed by Holger.
3329
3330         Lots of updates to the documentation.
3331         
3332
3333         * Api/qwebframe.cpp:
3334         * Api/qwebhistory.cpp:
3335         * Api/qwebpage.cpp:
3336         (QWebPagePrivate::dropEvent):
3337         (QWebPage::history):
3338         (openNewWindow):
3339         (QWebPage::triggerAction):
3340         (QWebPage::viewportSize):
3341         (QWebPage::navigationRequested):
3342         (QWebPage::action):
3343         (QWebPage::event):
3344         (QWebPageContext::targetFrame):
3345         * Api/qwebpage.h:
3346         * Api/qwebview.cpp:
3347
3348 2008-01-17  Simon Hausmann  <shausman@trolltech.com>
3349
3350         Reviewed by Lars.
3351
3352         Added a urlChanged signals to QWebFrame and QWebView.
3353         
3354
3355         * Api/qwebframe.cpp:
3356         * Api/qwebframe.h:
3357         * Api/qwebview.cpp:
3358         (QWebView::setPage):
3359         * Api/qwebview.h:
3360         * WebCoreSupport/FrameLoaderClientQt.cpp:
3361
3362 2008-01-17  Simon Hausmann  <shausman@trolltech.com>
3363
3364         Reviewed by Lars.
3365
3366         Fixed docs and sanity checks in QWebSettings::setIconDatabaseEnabled
3367         
3368
3369         * Api/qwebsettings.cpp:
3370         (QWebSettings::setIconDatabaseEnabled):
3371
3372 2008-01-17  Simon Hausmann  <shausman@trolltech.com>
3373
3374         Reviewed by Lars.
3375
3376         Added QWebView::createWindow() which is forwarded from QWebPage::createWindow() for convenience.
3377         
3378
3379         * Api/qwebpage.cpp:
3380         (QWebPage::createWindow):
3381         * Api/qwebview.cpp:
3382         (QWebView::createWindow):
3383         * Api/qwebview.h:
3384
3385 2008-01-17  Lars Knoll  <lars@trolltech.com>
3386
3387         Reviewed by Lars.
3388
3389         add a 0 pointer check.
3390
3391         Fixes a crash in the demo web browser.
3392
3393         * WebCoreSupport/FrameLoaderClientQt.cpp:
3394         (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForMIMEType):
3395
3396 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
3397
3398         Reviewed by Holger.
3399
3400         Fix QWebFrame::title().
3401         
3402         For the titleChanged() signal we use the documentloader's title. For the property we have to use the same
3403         instead of Document::title() as the latter is not trimmed and not suited for a window caption.
3404         
3405
3406         * Api/qwebframe.cpp:
3407         (QWebFrame::title):
3408
3409 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
3410
3411         Reviewed by Maciej, Lars, Holger.
3412
3413         http://bugs.webkit.org/show_bug.cgi?id=16589
3414
3415         Add a document parameter to WebCore::cookies, setCookies and cookiesEnabled.
3416
3417         * Api/qwebnetworkinterface.cpp:
3418         (QWebNetworkRequestPrivate::init):
3419         (QWebNetworkManager::started):
3420
3421 2008-01-17  Warwick Allison  <warwick@trolltech.com>
3422
3423         Reviewed by Simon Hausmann <hausmann@webkit.org>.
3424
3425         Follow QWidget::keyPressEvent advice and call parents.
3426         
3427         Without this, Back does not work in Qtopia, for example.
3428         
3429
3430         * Api/qwebview.cpp:
3431         (QWebView::keyPressEvent):
3432         (QWebView::keyReleaseEvent):
3433
3434 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
3435
3436         Reviewed by Lars.
3437
3438         Fix compilation against Qt 4.3 after the recent KURL <> QUrl conversion fixes.
3439
3440         * Api/qwebnetworkinterface.cpp:
3441         (QWebNetworkManager::started):
3442
3443 2008-01-17  Simon Hausmann  <shausman@trolltech.com>
3444
3445         Reviewed by Holger.
3446
3447         Fix compilation against Qt 4.4 without files that are specific for the Qt 4.3 build.
3448         
3449
3450         * Api/qwebframe.cpp:
3451         * Api/qwebpage.cpp:
3452         * WebCoreSupport/FrameLoaderClientQt.cpp:
3453
3454 2008-01-17  Lincoln Ramsay  <lincoln.ramsay@trolltech.com>
3455
3456         Reviewed by Simon Hausmann <hausmann@webkit.org>.
3457
3458         Fixes compilation with QT_NO_DRAGANDDROP
3459         
3460
3461         * Api/qwebpage.cpp:
3462         (QWebPage::event):
3463         * Api/qwebview.cpp:
3464         (QWebView::dragEnterEvent):
3465         (QWebView::dragLeaveEvent):
3466         (QWebView::dragMoveEvent):
3467         (QWebView::dropEvent):
3468
3469 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
3470
3471         Reviewed by Lars.
3472
3473         Fix compilation, removed obsolete privateBrowsingEnabled() method.
3474
3475         * WebCoreSupport/FrameLoaderClientQt.cpp:
3476
3477 2008-01-16  Lars Knoll  <lars@trolltech.com>
3478
3479         Reviewed by Simon Hausmann <simon.hausmann@trolltech.com>.
3480
3481         Removed a whole bunch of notImplemented() warnings.
3482         
3483         I don't want to hide the real warnings in lots of things that
3484         I am by now pretty certain we won't need.
3485         
3486
3487         * WebCoreSupport/FrameLoaderClientQt.cpp:
3488         (WebCore::FrameLoaderClientQt::dispatchWillSubmitForm):
3489         (WebCore::FrameLoaderClientQt::canShowMIMEType):
3490
3491 2008-01-16  Simon Hausmann  <hausmann@webkit.org>
3492
3493         Reviewed by Holger.
3494
3495         Fix crash when bringing up the context menu on maps.google.com.
3496         
3497         If the website provides its own context menu then we don't have a ContextMenu pointer.
3498         
3499
3500         * Api/qwebpage.cpp:
3501         (QWebPagePrivate::contextMenuEvent):
3502
3503 2008-01-16  Simon Hausmann  <hausmann@webkit.org>
3504
3505         Reviewed by Holger.
3506
3507         Don't crash when receiving all sorts of events on a default constructed QWebView without a page.
3508
3509         * Api/qwebview.cpp:
3510         (QWebView::mouseMoveEvent):
3511         (QWebView::mousePressEvent):
3512         (QWebView::mouseDoubleClickEvent):
3513         (QWebView::mouseReleaseEvent):
3514         (QWebView::contextMenuEvent):
3515         (QWebView::wheelEvent):
3516         (QWebView::keyPressEvent):
3517         (QWebView::keyReleaseEvent):
3518         (QWebView::focusInEvent):
3519         (QWebView::focusOutEvent):
3520         (QWebView::dragEnterEvent):
3521         (QWebView::dragLeaveEvent):
3522         (QWebView::dragMoveEvent):
3523         (QWebView::dropEvent):
3524         (QWebView::focusNextPrevChild):
3525
3526 2008-01-16  Simon Hausmann  <hausmann@webkit.org>
3527
3528         Reviewed by Lars.
3529
3530         Made the url property read-write.
3531
3532         * Api/qwebview.h:
3533
3534 2008-01-16  Simon Hausmann  <hausmann@webkit.org>
3535
3536         Reviewed by Lars.
3537
3538         Don't crash when showing a default initialized QWebView that has no page/frame yet.
3539
3540         * Api/qwebview.cpp:
3541         (QWebView::paintEvent):
3542
3543 2008-01-16  Holger Freyther  <holger.freyther@trolltech.com>
3544
3545         Reviewed by Simon.
3546
3547         Change hoveringOverLink implementation to have less issues.
3548         
3549         * Currently we only compare a pointer. In the worst case we
3550         could delete the Element we have pointed to and a new one
3551         gets the same address. But even if that doesn't happen the
3552         WebCore::Element is mutable and JavaScript could change the
3553         URL, Title or Content. So we have to compare all these three
3554         attributes.
3555         * This does not seem to be a performance impact.
3556         
3557
3558         * Api/qwebpage.cpp:
3559         (QWebPagePrivate::mouseMoveEvent):
3560         * Api/qwebpage_p.h:
3561
3562 2008-01-16  Holger Freyther  <holger.freyther@trolltech.com>
3563
3564         Reviewed by Simon.
3565
3566         * Move the hoverElement from QWebFrame to QWebPage. As it is
3567         only used there.
3568         
3569
3570         * Api/qwebframe_p.h:
3571         (QWebFramePrivate::QWebFramePrivate):
3572         * Api/qwebpage.cpp:
3573         (QWebPagePrivate::mouseMoveEvent):
3574         * Api/qwebpage_p.h:
3575
3576 2008-01-16  Holger Freyther  <holger.freyther@trolltech.com>
3577
3578         Reviewed by Simon.
3579
3580         EventHandler changes/fixes in QWebPage:
3581         -mouse{Press,Move,Release}Event:
3582         Send the event always to the mainFrame of the QWebPage.
3583         
3584         -contextMenuEvent, key{Press,Release}Event:
3585         Send the event to the focused frame.
3586         
3587         This is following the Windows port and fixes a issue with the
3588         Web Inspector where we were sending the events to a wrong frame.
3589         
3590         It is guaranteed that the mainFrame will always have an eventHandler
3591         and frameView set. There is no need to check for this in QWebPage.
3592         
3593
3594         * Api/qwebframe.cpp:
3595         (QWebFramePrivate::init):
3596         * Api/qwebframe_p.h:
3597         (QWebFramePrivate::QWebFramePrivate):
3598         * Api/qwebpage.cpp:
3599         (QWebPagePrivate::updateEditorActions):
3600         (QWebPagePrivate::mouseMoveEvent):
3601         (QWebPagePrivate::mousePressEvent):
3602         (QWebPagePrivate::mouseDoubleClickEvent):
3603         (QWebPagePrivate::mouseReleaseEvent):
3604         (QWebPagePrivate::contextMenuEvent):
3605         (QWebPagePrivate::wheelEvent):
3606         (QWebPagePrivate::keyPressEvent):
3607         (QWebPagePrivate::keyReleaseEvent):
3608         (QWebPagePrivate::focusInEvent):
3609         * Api/qwebpage_p.h:
3610
3611 2008-01-16  Holger Freyther  <holger.freyther@trolltech.com>
3612
3613         Reviewed by Simon.
3614
3615         * Add core and kit functions to QWebFramePrivate to convert from
3616         QWebFrame to WebCore::Frame and vice versa.
3617         
3618
3619         * Api/qwebframe.cpp:
3620         (QWebFramePrivate::core):
3621         (QWebFramePrivate::kit):
3622         * Api/qwebframe.h:
3623         * Api/qwebframe_p.h:
3624
3625 2008-01-16  Lars Knoll  <lars@trolltech.com>
3626
3627         Reviewed by Simon.
3628
3629         add conversion methods from and to QUrl to KURL.
3630         
3631         Use them in the places I found at the moment. Fixes a bug
3632         where form data was encoded twice.
3633         Also fix QWebSettings to take a QUrl for the user style sheet
3634         location.
3635         
3636
3637         * Api/qwebframe.cpp:
3638         (QWebFrame::load):
3639         * Api/qwebpage.cpp:
3640         (QWebPage::createPlugin):
3641         (frameLoadRequest):
3642         (QWebPage::triggerAction):
3643         * Api/qwebsettings.cpp:
3644         (QWebSettingsPrivate::apply):
3645         * Api/qwebsettings.h:
3646         * WebCoreSupport/ChromeClientQt.cpp:
3647         (WebCore::ChromeClientQt::createWindow):
3648         (WebCore::ChromeClientQt::show):
3649
3650 2008-01-16  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
3651
3652         Reviewed by Lars.
3653
3654         * Make the InspectorClientView inherit from QWebView instead of QWidget. This
3655         way paintEvent, mouse{Press,Release}Event and other events get forwarded to
3656         the QWebPage/WebInspector automatically.
3657         
3658
3659         * WebCoreSupport/InspectorClientQt.cpp:
3660         (WebCore::InspectorClientWebPage::createWindow):
3661         (WebCore::InspectorClientView::InspectorClientView):
3662
3663 2008-01-10  Maciej Stachowiak  <mjs@apple.com>
3664
3665         Reviewed by Sam.
3666
3667         - remove SecurityOriginData and fold its functionality into SecurityOrigin
3668
3669         * WebCoreSupport/ChromeClientQt.cpp:
3670         (WebCore::ChromeClientQt::requestQuotaIncreaseForNewDatabase):
3671         (WebCore::ChromeClientQt::requestQuotaIncreaseForDatabaseOperation):
3672         * WebCoreSupport/ChromeClientQt.h:
3673
3674 2008-01-10  Lars Knoll  <lars@trolltech.com>
3675
3676         Reviewed by Simon.
3677
3678         document QWebHistory
3679         
3680
3681         * Api/qwebhistory.cpp:
3682         (QWebHistoryItem::QWebHistoryItem):
3683         (QWebHistoryItem::operator=):
3684         (QWebHistoryItem::~QWebHistoryItem):
3685         (QWebHistoryItem::originalUrl):
3686         (QWebHistoryItem::currentUrl):
3687         (QWebHistoryItem::title):
3688         (QWebHistoryItem::icon):
3689         (QWebHistory::canGoBack):
3690         (QWebHistory::canGoForward):
3691         (QWebHistory::goBack):
3692         (QWebHistory::goForward):
3693         (QWebHistory::goToItem):
3694         * Api/qwebhistory.h:
3695
3696 2008-01-10  Simon Hausmann  <hausmann@webkit.org>
3697
3698         Reviewed by Lars.
3699
3700         Make the reset() functions not do anything on the default QWebSettings object.
3701         
3702
3703         * Api/qwebsettings.cpp:
3704         (QWebSettings::resetFontSize):
3705         (QWebSettings::resetFontFamily):
3706         (QWebSettings::clearAttribute):
3707
3708 2008-01-10  Lars Knoll  <lars@trolltech.com>
3709
3710         Reviewed by Simon.
3711
3712         rename QWebPageHistory to QWebHistory.
3713         
3714
3715         * Api/qwebhistory.cpp: Added.
3716         (QWebHistoryItem::QWebHistoryItem):
3717         (QWebHistoryItem::operator=):
3718         (QWebHistoryItem::~QWebHistoryItem):
3719         (QWebHistoryItem::originalUrl):
3720         (QWebHistoryItem::currentUrl):
3721         (QWebHistoryItem::title):
3722         (QWebHistoryItem::lastVisited):
3723         (QWebHistoryItem::icon):
3724         (QWebHistory::QWebHistory):
3725         (QWebHistory::~QWebHistory):
3726         (QWebHistory::clear):
3727         (QWebHistory::items):
3728         (QWebHistory::backItems):
3729         (QWebHistory::forwardItems):
3730         (QWebHistory::canGoBack):
3731         (QWebHistory::canGoForward):
3732         (QWebHistory::goBack):
3733         (QWebHistory::goForward):
3734         (QWebHistory::goToItem):
3735         (QWebHistory::backItem):
3736         (QWebHistory::currentItem):
3737         (QWebHistory::forwardItem):
3738         (QWebHistory::itemAtIndex):
3739         * Api/qwebhistory.h: Added.
3740         * Api/qwebhistory_p.h: Added.
3741         (QWebHistoryItemPrivate::QWebHistoryItemPrivate):
3742         (QWebHistoryItemPrivate::~QWebHistoryItemPrivate):
3743         (QWebHistoryPrivate::QWebHistoryPrivate):
3744         (QWebHistoryPrivate::~QWebHistoryPrivate):
3745         * Api/qwebpage.cpp:
3746         (QWebPagePrivate::QWebPagePrivate):
3747         * Api/qwebpage.h:
3748         * Api/qwebpage_p.h:
3749         * Api/qwebpagehistory.cpp: Removed.
3750         * Api/qwebpagehistory.h: Removed.
3751         * Api/qwebpagehistory_p.h: Removed.
3752         * Api/qwebview.cpp:
3753         * Api/qwebview.h:
3754
3755 2008-01-10  Simon Hausmann  <hausmann@webkit.org>
3756
3757         Reviewed by Lars.
3758
3759         Documentation for QWebSettings
3760         
3761
3762         * Api/qwebsettings.cpp:
3763         (QWebSettings::~QWebSettings):
3764         (QWebSettings::setFontSize):
3765         (QWebSettings::rese