privly / privly-firefox

Official Privly Browser Extension for Firefox - Allows for Viewing and Posting Content on Any Website Without the Host Site Having Access
https://priv.ly
MIT License
21 stars 15 forks source link

Port Extension to Jetpack #38

Closed smcgregor closed 9 years ago

smcgregor commented 9 years ago

Mozilla has continued to develop the Jetpack extension framework for Firefox to the point that it has parity with XUL based extensions for our feature set. Since Jetpack makes many extension tasks vastly simpler, more secure, and better supported, it is time to port the Firefox extension to Jetpack!

This introduces several dilemmas as we push towards release, most importantly whether we continue developing and supporting the current version of the Firefox extension so we can support Firefox at launch. My plan is to make minimal changes so that the current UI of the Firefox extension will continue to function until we finish porting to Jetpack. I estimate porting to Jetpack would take me about a week of dedicated time or a newbie about 12 weeks of dedicated effort to work through.

hitesh96db commented 9 years ago

I'm still confused about the project I should focus on :/ -- I believe I can build on my skillset required for this project. I plan to learn and find out the differences between the two extension frameworks and then plan on migrating it. Any advice/help regarding this ?

smcgregor commented 9 years ago

This will be difficult, but I created a repository you can fork for this purpose. The first task in porting the extension is getting the extension to inject a URL having a chrome:// address. This is currently done https://github.com/privly/privly-firefox/blob/master/chrome/content/extension-host-interface.js#L220 , but it is possible that you don't need to use the current approach of reassigning a sham iframe's src attribute. Jetpack is essentially a Xul extension with a set of cool APIs so you should check if there is any API that would let you create the iframe more easily.

hitesh96db commented 9 years ago

I could get the "live" toggling working and I also found some unnecessary code - https://github.com/privly/privly-firefox/blob/master/chrome/content/options.xul - most of it isn't needed because the options.js file redirects to the Page/ChromeOptions.html so there isn't a need for the xul window anymore. However, I don't think there is a point of sending a PR here(in privly-firefox), right ?,considering it will be ported to Jetpack.

smcgregor commented 9 years ago

New features should go to Jetpack. Cleanup, etc, can still go the current version since that should make porting easier.

sudheesh001 commented 9 years ago

@smcgregor

I have read the details regarding this project and wanted to work on it as a part of GSoC 2015. I've previously contributed to Mozilla on their Firefox, Firefox OS and web development platforms. I have a fair idea about XUL and mostly work in javascript on my projects.

I've successfully cloned the codebase and managed to get the application running. Looking forward to sending a few patches to the project.

smcgregor commented 9 years ago

Privly-Jetpack is replacing this old Xul version. See the new version nearing completion here.

(closing all outstanding issues on this repository since it is now deprecated)