RESOLVED WONTFIX Bug 79354
[EFL] Add dummy GeolocationClientEfl.cpp | h
https://bugs.webkit.org/show_bug.cgi?id=79354
Summary [EFL] Add dummy GeolocationClientEfl.cpp | h
Byungwoo Lee
Reported 2012-02-23 03:00:37 PST
There is no GeolocationClient for WebKit-EFL.
Attachments
Patch (7.71 KB, patch)
2012-03-19 19:13 PDT, Byungwoo Lee
no flags
Patch (7.22 KB, patch)
2012-03-26 00:21 PDT, Byungwoo Lee
no flags
Patch (7.25 KB, patch)
2012-03-27 00:23 PDT, Byungwoo Lee
no flags
Patch (7.32 KB, patch)
2012-03-27 03:19 PDT, Byungwoo Lee
no flags
Patch (7.32 KB, patch)
2012-03-27 18:17 PDT, Byungwoo Lee
no flags
Patch (7.26 KB, patch)
2012-03-28 01:33 PDT, Byungwoo Lee
no flags
Benjamin Poulain
Comment 1 2012-02-23 11:33:40 PST
Just in case, to clear any misunderstanding. I do not mind reviewing patches for that, but I am not gonna do any work here.
Gyuyoung Kim
Comment 2 2012-02-23 16:28:09 PST
(In reply to comment #1) > Just in case, to clear any misunderstanding. I do not mind reviewing patches for that, but I am not gonna do any work here. I think it is better to push this after finishing Bug 40373 - Support only client-based Geolocation. Byungwoo, if you don't implement GeolocationClientEfl.cpp yet, why don't you submit a patch after finishing it ?
Byungwoo Lee
Comment 3 2012-02-23 17:06:31 PST
(In reply to comment #2) > (In reply to comment #1) > > Just in case, to clear any misunderstanding. I do not mind reviewing patches for that, but I am not gonna do any work here. Sorry for my misunderstanding~ Thanks for your clarification :) > > I think it is better to push this after finishing Bug 40373 - Support only client-based Geolocation. > > Byungwoo, if you don't implement GeolocationClientEfl.cpp yet, why don't you submit a patch after finishing it ? Sure~ I'll
Gyuyoung Kim
Comment 4 2012-03-07 05:00:26 PST
Let's file new bug when you prepare a patch.
Raphael Kubo da Costa (:rakuco)
Comment 5 2012-03-07 05:02:19 PST
Huh? Closing this bug to file a new one later doesn't make much sense. You can just leave it open until someone steps up and implements these features.
Raphael Kubo da Costa (:rakuco)
Comment 6 2012-03-07 05:24:10 PST
Reopening as explained in comment #5.
Byungwoo Lee
Comment 7 2012-03-07 18:37:08 PST
Thanks for your suggestions, and sorry for not sharing my progress. I have a plan to implement GeolocationClientEfl.cpp/h with Geoclue DBus APIs and E_Dbus(Efl DBus) library. And according to the Gyuyoung's suggestion, I'll add initial patch for the GeolocationClientEfl when it is ready. (So, I have no plan to add patch for adding dummy files now) I'm agree with Kubo's opinion about leaving this bug for some other one. I'll check this bug and close if there is no patch until I'm ready.
Byungwoo Lee
Comment 8 2012-03-19 19:13:52 PDT
Raphael Kubo da Costa (:rakuco)
Comment 9 2012-03-19 19:23:33 PDT
I wonder if it really makes sense to add these dummy implementations of things: they do not implement any new feature and may become dead weight, just like the old GeolocationServiceEfl implementation did. Why not only commit these files when they have an actual implementation?
Byungwoo Lee
Comment 10 2012-03-19 19:31:57 PDT
I made this patch for reducing patch size. I thought that dividing large patch to smaller one will be better for reviewers. This bug item still exists, so I think starting the patch with this will be no proplem. How about your opinion?
Gyuyoung Kim
Comment 11 2012-03-19 20:25:58 PDT
Comment on attachment 132746 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=132746&action=review > Source/WebKit/efl/ewk/ewk_view.cpp:618 > + pageClients.geolocationClient = new WebCore::GeolocationClientEfl(smartData->self); Though I think you need to add GeolocationClientMock to test Geolocation's test cases by EFL DRT, looks fine for now.
Raphael Kubo da Costa (:rakuco)
Comment 12 2012-03-20 05:56:19 PDT
(In reply to comment #10) > I made this patch for reducing patch size. I thought that dividing large patch to smaller one will be better for reviewers. > This bug item still exists, so I think starting the patch with this will be no proplem. How about your opinion? I think reviewing this kind of skeleton code is quite simple in general, and it doesn't really contribute much to the complexity of the final, whole patch. But the real problem I have is with committing this kind of dummy implementation and then not sending the actual code for a long time (or not implementing it at all), just like it happened to the previous geolocation code. There's also the risk that it takes a while between the two (or more) patches are committed. At least I would really appreciate it if you could send the rest of the implementation code in a separate patch and create a dependency between the bug reports so that we can see the bigger picture. If such code doesn't exist yet, I'd refrain from asking for this patch to be reviewed.
Byungwoo Lee
Comment 13 2012-03-20 06:09:18 PDT
> Though I think you need to add GeolocationClientMock to test Geolocation's test cases by EFL DRT, looks fine for now. I also have a plan to check EFL geolocation DRT test, and will create new bug and patch for that. Thanks.
Byungwoo Lee
Comment 14 2012-03-20 06:23:24 PDT
(In reply to comment #12) > At least I would really appreciate it if you could send the rest of the implementation code in a separate patch and create a dependency between the bug reports so that we can see the bigger picture. Ok~ I got the point. Thanks for your clarification. I almost finished to implement the body of this class and other related codes (including wrapper class for the e-dbus and geoclue dbus api). Now, I'm preparing a patch for internal review. I'll create a patch after the internal review is finished. ps. I need to check the EFL geolocation DRT codes for that patch, as Gyuyoung said above. And this can be another blocking issue for this patch :)
Raphael Kubo da Costa (:rakuco)
Comment 15 2012-03-20 06:52:32 PDT
If you don't mind, I'd rather remove the r? flag from this patch until all the necessary bits are uploaded for review then.
Raphael Kubo da Costa (:rakuco)
Comment 16 2012-03-20 09:11:14 PDT
Comment on attachment 132746 [details] Patch Clearing the r? flag for now until all the patches are sent.
Byungwoo Lee
Comment 17 2012-03-26 00:21:01 PDT
Gyuyoung Kim
Comment 18 2012-03-26 00:42:28 PDT
Comment on attachment 133741 [details] Patch As you discussed, I'm ok for this patch because you're going to submit concrete implementation patch.
Benjamin Poulain
Comment 19 2012-03-26 22:41:23 PDT
Comment on attachment 133741 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=133741&action=review > Source/WebKit/efl/WebCoreSupport/GeolocationClientEfl.cpp:32 > + ASSERT(m_view.get()); ASSERT(m_view) will do. > Source/WebKit/efl/WebCoreSupport/GeolocationClientEfl.cpp:74 > + > + Extra spaces > Source/WebKit/efl/WebCoreSupport/GeolocationClientEfl.h:45 > + void geolocationDestroyed(); > + > + void startUpdating(); > + void stopUpdating(); > + void setEnableHighAccuracy(bool); > + GeolocationPosition* lastPosition(); > + > + void requestPermission(Geolocation*); > + void cancelPermissionRequest(Geolocation*); I suggest you to explicitly mark the client methods with virtual, and to use OVERRIDE. > Source/WebKit/efl/WebCoreSupport/GeolocationClientEfl.h:48 > + ~GeolocationClientEfl() { }; Why did you set the destructor as protected for a a concrete class?
Byungwoo Lee
Comment 20 2012-03-26 23:59:09 PDT
(In reply to comment #19) Thanks for your review. I'll apply those.
Byungwoo Lee
Comment 21 2012-03-27 00:04:43 PDT
(In reply to comment #19) > Why did you set the destructor as protected for a a concrete class? It was my mistake on creating codes from GeolocationClient virtual class. Thanks for checking :)
Byungwoo Lee
Comment 22 2012-03-27 00:23:56 PDT
Benjamin Poulain
Comment 23 2012-03-27 01:59:08 PDT
Comment on attachment 133993 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=133993&action=review > Source/WebKit/PlatformEfl.cmake:138 > +IF (ENABLE_GEOLOCATION) > + LIST(APPEND WebKit_INCLUDE_DIRECTORIES > + ${WEBCORE_DIR}/Modules/geolocation > + ) > + LIST(APPEND WebKit_SOURCES > + efl/WebCoreSupport/GeolocationClientEfl.cpp > + ) > +ENDIF () I see you did not follow the indentation of this file. Please fix the indentation. > Source/WebKit/efl/WebCoreSupport/GeolocationClientEfl.h:27 > +#include "GeolocationPosition.h" You can skip this header and forward declare this class. > Source/WebKit/efl/WebCoreSupport/GeolocationClientEfl.h:46 > + virtual void geolocationDestroyed(); > + > + virtual void startUpdating(); > + virtual void stopUpdating(); > + virtual void setEnableHighAccuracy(bool); > + virtual GeolocationPosition* lastPosition(); > + > + virtual void requestPermission(Geolocation*); > + virtual void cancelPermissionRequest(Geolocation*); Why not also having OVERRIDE to avoid future mistake?
Byungwoo Lee
Comment 24 2012-03-27 03:17:41 PDT
(In reply to comment #23) Ok~ I'll do those. Thanks~
Byungwoo Lee
Comment 25 2012-03-27 03:19:40 PDT
Benjamin Poulain
Comment 26 2012-03-27 12:29:15 PDT
Comment on attachment 134013 [details] Patch r+ assuming you will do the follow up.
Ryuan Choi
Comment 27 2012-03-27 16:59:16 PDT
Comment on attachment 134013 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=134013&action=review > Source/WebKit/efl/WebCoreSupport/GeolocationClientEfl.h:25 > +#include "EWebKit.h" nitpick, this file doesn't need EWebKit.h. If you want to use Evas_Object, Evas.h is what you want.
Byungwoo Lee
Comment 28 2012-03-27 18:17:39 PDT
Byungwoo Lee
Comment 29 2012-03-27 18:19:27 PDT
(In reply to comment #27) > If you want to use Evas_Object, Evas.h is what you want. Thanks for the comment~. I applied it.
Ryuan Choi
Comment 30 2012-03-28 00:45:24 PDT
Comment on attachment 134188 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=134188&action=review > Source/WebKit/efl/WebCoreSupport/GeolocationClientEfl.h:50 > +private: > + RefPtr<Evas_Object> m_view; > +}; As discussed in private channel, m_view will be deleted when GelocationClientEfl is terminated. So, I preferred this as raw pointer like other *ClientEfl. Or, you need to refactor ewk_view to control reference count well.
Byungwoo Lee
Comment 31 2012-03-28 01:33:39 PDT
Ryuan Choi
Comment 32 2012-03-28 21:53:46 PDT
(In reply to comment #31) > Created an attachment (id=134235) [details] > Patch Thanks, Looks fine to me.
Gyuyoung Kim
Comment 33 2012-05-21 07:44:52 PDT
As you discussed on this bug thread, I also wanna to land this patch after preparing concrete patch. So, if you don't have concrete patch it now, could you clear r? flag ? Then, please request again when you have full patch.
Byungwoo Lee
Comment 34 2012-05-21 17:37:01 PDT
I removed the review flag. During internal review process, there were some other opinion about implementing the geolocation feature (using geoclue looks not good). So I dropped my previous implementation, and maybe some other one will be on this feature.
Gyuyoung Kim
Comment 35 2014-07-01 17:01:07 PDT
EFL Geolocation is supported by Geoclue and should be implemented for WK2 port
Note You need to log in before you can comment on or make changes to this bug.