RESOLVED FIXED Bug 35503
[Qt] Implement Desktop Notifications API for QtWebKit
https://bugs.webkit.org/show_bug.cgi?id=35503
Summary [Qt] Implement Desktop Notifications API for QtWebKit
Laszlo Gombos
Reported 2010-02-28 15:05:48 PST
Hook up the code for QtWebKit for ENABLE_NOTIFICAITONS build option.
Attachments
proposed patch (18.70 KB, patch)
2010-02-28 16:03 PST, Laszlo Gombos
eric: review-
2nd try (21.08 KB, patch)
2010-03-29 07:14 PDT, Laszlo Gombos
no flags
Laszlo Gombos
Comment 1 2010-02-28 16:03:48 PST
Created attachment 49705 [details] proposed patch Map WebKit notifications to Qt's SystemTray API and implement DRT tracing. This patch does not implement the security part of WebKit notifications.
Laszlo Gombos
Comment 2 2010-02-28 16:52:42 PST
The first patch provides a very basic implementation and satisfies the build scripts. The complete solution (following additional patches) would need to address: - DRT tests for Qt port (make sure tests not executed for other ports as most ports do not implement this feature yet). - implement security - possible provide a Delegate API for QtWebKit to delegate the notification mechanism. To keep the patch size low, I figured the patch is complete enough for a review round.
Eric Seidel (no email)
Comment 3 2010-03-05 15:14:16 PST
Comment on attachment 49705 [details] proposed patch Is this really supposed to return a new one? #if ENABLE(NOTIFICATIONS) 436 NotificationPresenter* ChromeClientQt::notificationPresenter() const 437 { 438 return new NotificationPresenterClientQt; 439 } 440 #endif based on that method signature, I woudl expect it to return a reference to one. I expect you're leaking here. Spacing: void NotificationPresenterClientQt::notificationObjectDestroyed(Notification* notification) 92 { 93 notImplemented(); 94 95 } Spacing: void NotificationPresenterClientQt::requestPermission(SecurityOrigin* origin, PassRefPtr<VoidCallback> callback) 98 { 99 100 if (dumpNotification) r- for what appears to be a leak (or at least would confuse other developers into causing a leak).
Laszlo Gombos
Comment 4 2010-03-29 07:14:34 PDT
Created attachment 51906 [details] 2nd try Thanks Eric for the review. Good catch on the leak. I changed the patch so that now each instance QWebPage of owns (creates and destroys) an instance of NotificationPresenterClientQt.
Kenneth Rohde Christiansen
Comment 5 2010-04-08 15:03:27 PDT
Comment on attachment 51906 [details] 2nd try Fine with me, but you have a spelling error in the ChangeLog "notificationa DRT"
Laszlo Gombos
Comment 6 2010-04-10 00:46:54 PDT
Comment on attachment 51906 [details] 2nd try Committed as http://trac.webkit.org/changeset/57408 with the change in the ChangeLog suggested by Kenneth.
Csaba Osztrogonác
Comment 7 2010-04-10 01:23:53 PDT
Next time please keep your eyes on bots or don't commit before you go offline! First I had to kick (make clean build) our bots because build system modifications usually make all test crash. Makefiles can't handle only build flag modifications. Second I had to modify 3 expected files (which you forgot) to make our very sad bots happy: http://trac.webkit.org/changeset/57412
WebKit Review Bot
Comment 8 2010-04-10 01:43:58 PDT
http://trac.webkit.org/changeset/57412 might have broken SnowLeopard Intel Release (Tests)
Csaba Osztrogonác
Comment 9 2010-04-10 01:48:02 PDT
(In reply to comment #8) > http://trac.webkit.org/changeset/57412 might have broken SnowLeopard Intel > Release (Tests) false positive alarm, it was an absolutely unrelated patch.
WebKit Review Bot
Comment 10 2010-04-10 01:54:25 PDT
http://trac.webkit.org/changeset/57413 might have broken SnowLeopard Intel Release (Tests)
Laszlo Gombos
Comment 11 2010-04-11 09:27:50 PDT
(In reply to comment #7) Ossy, thanks for you help ! > Next time please keep your eyes on bots or don't commit before you go offline! I did just that but I obviously missed the issues with the Qt bot. > First I had to kick (make clean build) our bots because build system > modifications usually make all test crash. Makefiles can't handle > only build flag modifications. First, the build should fail instead of creating an unusable binary. Had the build fail, I would have caught it before even committing. Any idea how to fix this ? Second, there should be a way for committees to kick the bot. > Second I had to modify 3 expected files (which you forgot) to make > our very sad bots happy: http://trac.webkit.org/changeset/57412 Sorry I missed that, thanks for your help.
Note You need to log in before you can comment on or make changes to this bug.