diff -u prism-0.8+svn20071115r8030/debian/changelog prism-0.8+svn20071115r8030/debian/changelog --- prism-0.8+svn20071115r8030/debian/changelog +++ prism-0.8+svn20071115r8030/debian/changelog @@ -1,3 +1,31 @@ +prism (0.8+svn20071115r8030-0ubuntu2) hardy; urgency=low + + * Bump Standards-Version to 3.7.3 + - update debian/control + * Bump debhelper requirement to (>= 5.0.51~) because of dh_icons + - update debian/control + * Fix desktop icons created by prism (LP: #196861) + Thanks to Michael Chang + - update debian/patches/fix_desktop_launcher.patch + * Updated desktop file categories (LP: #180879) + Thanks to Dean Sas + - update debian/prism-google-*.desktop + * Update update-apps.sh to handle desktop file categories + - update debian/update-apps.sh + - update debian/rules + * Update prism-google-groups.desktop category too + - update debian/prism-google-groups.desktop + * Restore auto-save of webapps size and position broken since ScriptableIO + has been dropped from xulrunner-1.9 (at beta 3). + - add debian/patches/remove_scriptableio.patch + - update debian/patches/series + * Prevent webapps to be unpacked at each run so user data is now + preserved (LP: #200469) + - update debian/control + - update debian/prism.sh + + -- Fabien Tassin Sun, 16 Mar 2008 14:16:47 +0100 + prism (0.8+svn20071115r8030-0ubuntu1) hardy; urgency=low * Initial release (LP: #172484) diff -u prism-0.8+svn20071115r8030/debian/prism-google-docs.desktop prism-0.8+svn20071115r8030/debian/prism-google-docs.desktop --- prism-0.8+svn20071115r8030/debian/prism-google-docs.desktop +++ prism-0.8+svn20071115r8030/debian/prism-google-docs.desktop @@ -7,5 +7,5 @@ Type=Application Icon=prism-google-docs -Categories=GTK;Network; +Categories=GTK;Office;Spreadsheet;WordProcessor; StartupWMClass=Prism StartupNotify=true diff -u prism-0.8+svn20071115r8030/debian/update-apps.sh prism-0.8+svn20071115r8030/debian/update-apps.sh --- prism-0.8+svn20071115r8030/debian/update-apps.sh +++ prism-0.8+svn20071115r8030/debian/update-apps.sh @@ -18,6 +18,7 @@ NAME=`echo $app | cut -d@ -f2` DESCR=`echo $app | cut -d@ -f3 | sed -e 's/~/ /g; s/\\\\//g'` URL=`echo $app | cut -d@ -f4` + CAT=`echo $app | cut -d@ -f5` cat - > prism-$NAME.desktop.new < Vcs-Bzr: https://code.launchpad.net/~mozillateam/prism/prism Homepage: http://wiki.mozilla.org/Prism -Build-Depends: debhelper (>= 5.0.37.2), quilt +Build-Depends: debhelper (>= 5.0.51~), quilt Build-Depends-Indep: unzip -Standards-Version: 3.7.2.2 +Standards-Version: 3.7.3 Package: prism Section: net Architecture: all -Depends: xulrunner-1.9 (>= 1.9~b1), xulrunner-1.9-dom-inspector +Depends: xulrunner-1.9 (>= 1.9~b1), xulrunner-1.9-dom-inspector, unzip Description: Split web applications out of the browser and run them directly on the desktop Prism, previously called WebRunner, is a simple XULRunner based browser that hosts web applications without the normal web browser user interface. It is diff -u prism-0.8+svn20071115r8030/debian/prism-google-talk.desktop prism-0.8+svn20071115r8030/debian/prism-google-talk.desktop --- prism-0.8+svn20071115r8030/debian/prism-google-talk.desktop +++ prism-0.8+svn20071115r8030/debian/prism-google-talk.desktop @@ -7,5 +7,5 @@ Type=Application Icon=prism-google-talk -Categories=GTK;Network; +Categories=GTK;Network;InstantMessaging; StartupWMClass=Prism StartupNotify=true diff -u prism-0.8+svn20071115r8030/debian/rules prism-0.8+svn20071115r8030/debian/rules --- prism-0.8+svn20071115r8030/debian/rules +++ prism-0.8+svn20071115r8030/debian/rules @@ -18,15 +18,15 @@ include /usr/share/quilt/quilt.make WEBAPPS = \ - facebook@facebook@Facebook@http://www.facebook.com/ \ - ganalytics@google-analytics@Google~Analytics@http://analytics.google.com/ \ - gcalendar@google-calendar@Google~Calendar@https://www.google.com/calendar \ - gdocs@google-docs@Google~Docs@https://docs.google.com/ \ - gmail@google-mail@Google~Mail~\(GMail\)@https://mail.google.com/ \ - greader@google-reader@Google~Reader@https://www.google.com/reader \ - groups@google-groups@Google~Groups@http://groups.google.com/groups/favorites \ - gtalk@google-talk@Google~Talk@http://talkgadget.google.com/talkgadget/popout \ - twitter@twitter@twitter@http://www.twitter.com/ \ + "facebook@facebook@Facebook@http://www.facebook.com/@GTK;Network;" \ + "ganalytics@google-analytics@Google~Analytics@http://analytics.google.com/@GTK;Network;" \ + "gcalendar@google-calendar@Google~Calendar@https://www.google.com/calendar@GTK;Office;Calendar;" \ + "gdocs@google-docs@Google~Docs@https://docs.google.com/@GTK;Office;Spreadsheet;WordProcessor;" \ + "gmail@google-mail@Google~Mail~\(GMail\)@https://mail.google.com/@GTK;Network;Email;" \ + "greader@google-reader@Google~Reader@https://www.google.com/reader@GTK;Network;News;" \ + "groups@google-groups@Google~Groups@http://groups.google.com/groups/favorites@GTK;Network;News;" \ + "gtalk@google-talk@Google~Talk@http://talkgadget.google.com/talkgadget/popout@GTK;Network;InstantMessaging;" \ + "twitter@twitter@twitter@http://www.twitter.com/@GTK;Network;" \ $(NULL) build: patch build-stamp diff -u prism-0.8+svn20071115r8030/debian/prism-google-groups.desktop prism-0.8+svn20071115r8030/debian/prism-google-groups.desktop --- prism-0.8+svn20071115r8030/debian/prism-google-groups.desktop +++ prism-0.8+svn20071115r8030/debian/prism-google-groups.desktop @@ -7,5 +7,5 @@ Type=Application Icon=prism-google-groups -Categories=GTK;Network; +Categories=GTK;Network;News; StartupWMClass=Prism StartupNotify=true diff -u prism-0.8+svn20071115r8030/debian/prism-google-mail.desktop prism-0.8+svn20071115r8030/debian/prism-google-mail.desktop --- prism-0.8+svn20071115r8030/debian/prism-google-mail.desktop +++ prism-0.8+svn20071115r8030/debian/prism-google-mail.desktop @@ -7,5 +7,5 @@ Type=Application Icon=prism-google-mail -Categories=GTK;Network; +Categories=GTK;Network;Email; StartupWMClass=Prism StartupNotify=true only in patch2: unchanged: --- prism-0.8+svn20071115r8030.orig/debian/patches/remove_scriptableio.patch +++ prism-0.8+svn20071115r8030/debian/patches/remove_scriptableio.patch @@ -0,0 +1,136 @@ +--- + app/chrome/content/webrunner.js | 14 ++++------ + app/modules/WebAppInstall.jsm | 48 +++++++++++++++++++++++++++++++++++- + extension/modules/WebAppInstall.jsm | 48 +++++++++++++++++++++++++++++++++++- + 3 files changed, 100 insertions(+), 10 deletions(-) + +Index: prism-0.8+svn20071115r8030/app/chrome/content/webrunner.js +=================================================================== +--- prism-0.8+svn20071115r8030.orig/app/chrome/content/webrunner.js ++++ prism-0.8+svn20071115r8030/app/chrome/content/webrunner.js +@@ -121,40 +121,38 @@ + + settings.sidebar = {}; + settings.sidebar.visible = (document.getElementById("splitter_sidebar").getAttribute("state") == "open"); + settings.sidebar.width = document.getElementById("box_sidebar").width; + + // Save using JSON format + if (this._profile.hasOwnProperty("id")) { + var json = JSON.toString(settings); +- var file = IO.getFile("Profile", null); ++ var dirSvc = Cc["@mozilla.org/file/directory_service;1"].getService(Ci.nsIProperties); ++ var file = dirSvc.get("ProfD", Ci.nsIFile); + file.append("webapps"); + file.append(this._profile.id); + file.append("localstore.json"); + if (!file.exists()) + file.create(Ci.nsIFile.NORMAL_FILE_TYPE, 0600); +- var stream = IO.newOutputStream(file, "text write create truncate"); +- stream.writeString(json); +- stream.close(); ++ FileIO.stringToFile(json, file); + } + }, + + _loadSettings : function() { + // Load using JSON format + var settings; + if (this._profile.hasOwnProperty("id")) { +- var file = IO.getFile("Profile", null); ++ var dirSvc = Cc["@mozilla.org/file/directory_service;1"].getService(Ci.nsIProperties); ++ var file = dirSvc.get("ProfD", Ci.nsIFile); + file.append("webapps"); + file.append(this._profile.id); + file.append("localstore.json"); + if (file.exists()) { +- var stream = IO.newInputStream(file, "text"); +- var json = stream.readLine(); +- stream.close(); ++ var json = FileIO.fileToString(file); + settings = JSON.fromString(json); + + if (settings.window) { + switch (settings.window.state) { + case window.STATE_MAXIMIZED: + window.maximize(); + break; + case window.STATE_MINIMIZED: +Index: prism-0.8+svn20071115r8030/app/modules/WebAppInstall.jsm +=================================================================== +--- prism-0.8+svn20071115r8030.orig/app/modules/WebAppInstall.jsm ++++ prism-0.8+svn20071115r8030/app/modules/WebAppInstall.jsm +@@ -24,18 +24,19 @@ + * ***** END LICENSE BLOCK ***** */ + + const Cc = Components.classes; + const Ci = Components.interfaces; + + const PR_WRONLY = 0x02; + const PR_CREATE_FILE = 0x08; + const PR_TRUNCATE = 0x20; ++const PR_PERMS_FILE = 0644; + +-EXPORTED_SYMBOLS = ["WebAppInstall"]; ++EXPORTED_SYMBOLS = ["WebAppInstall", "FileIO"]; + + function WebAppInstall() + { + } + + WebAppInstall.prototype = { + createApplication : function(params) { + var dirSvc = Cc["@mozilla.org/file/directory_service;1"].getService(Ci.nsIProperties); +@@ -281,8 +282,53 @@ + var cmd = "#!/bin/sh\nexec " + target.path + " -webapp " + id; + var script = macos.clone(); + script.append(name); + stream.init(script, PR_WRONLY | PR_CREATE_FILE | PR_TRUNCATE, 0755, 0); + stream.write(cmd, cmd.length); + stream.close(); + } + } ++ ++var FileIO = { ++ // Returns the text content of a given nsIFile ++ fileToString : function(file) { ++ // Get a nsIFileInputStream for the file ++ var fis = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(Ci.nsIFileInputStream); ++ fis.init(file, -1, 0, 0); ++ ++ // Get an intl-aware nsIConverterInputStream for the file ++ var is = Cc["@mozilla.org/intl/converter-input-stream;1"].createInstance(Ci.nsIConverterInputStream); ++ is.init(fis, "UTF-8", 1024, Ci.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER); ++ ++ // Read the file into string via buffer ++ var data = ""; ++ var buffer = {}; ++ while (is.readString(4096, buffer) != 0) { ++ data += buffer.value; ++ } ++ ++ // Clean up ++ is.close(); ++ fis.close(); ++ ++ return data; ++ }, ++ ++ // Saves the given text string to the given nsIFile ++ stringToFile : function(data, file) { ++ // Get a nsIFileOutputStream for the file ++ var fos = Cc["@mozilla.org/network/file-output-stream;1"].createInstance(Ci.nsIFileOutputStream); ++ fos.init(file, PR_WRONLY | PR_CREATE_FILE | PR_TRUNCATE, PR_PERMS_FILE, 0); ++ ++ // Get an intl-aware nsIConverterOutputStream for the file ++ var os = Cc["@mozilla.org/intl/converter-output-stream;1"].createInstance(Ci.nsIConverterOutputStream); ++ os.init(fos, "UTF-8", 0, 0x0000); ++ ++ // Write data to the file ++ os.writeString(data); ++ ++ // Clean up ++ os.close(); ++ fos.close(); ++ } ++}; ++