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