diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/common.js releases/unplug-2.041/source/chrome/content/common.js
142c142
< version : 2.040,
---
> version : 2.041,
146c146
< revision : 201012291729,
---
> revision : 201101172319,
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/config/config.js releases/unplug-2.041/source/chrome/content/config/config.js
36a37
> setup_restart_notices();
60,65c61,63
< var w = window;
< while (!w.getBrowser) {
< w = w.opener;
< if (!w)
< return null;
< }
---
> var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"]
> .getService(Components.interfaces.nsIWindowMediator);
> var w = wm.getMostRecentWindow("navigator:browser");
73c71,78
< var toolbarbutton = w.document.getElementById("unplug2_toolbarbutton");
---
> var tbl = w.document.getElementsByTagName("toolbar");
> var have_btn = false;
> for (var i = 0; i < tbl.length; ++i) {
> if (tbl[i].currentSet.split(",").indexOf("unplug2_toolbarbutton") >= 0) {
> have_btn = true;
> break;
> }
> }
75c80
< checkbox.checked = (toolbarbutton != null) ? true : false;
---
> checkbox.checked = have_btn;
83,96c88,98
< var toolbarbutton = w.document.getElementById("unplug2_toolbarbutton");
< if (toolbarbutton) {
< var navtoolbar = w.document.getElementById("nav-bar");
< // do persist thing (applies next restart)
< var curSet = navtoolbar.currentSet;
< if (curSet) {
< if (curSet.indexOf("urlbar-container") < 0 && curSet.indexOf("search-container") < 0) {
< alert("There's a problem removing the toolbar button\n\n" + curSet);
< } else {
< navtoolbar.setAttribute("currentset", curSet.replace(",unplug2_toolbarbutton", ""));
< w.document.persist("nav-bar","currentset");
< }
< } else {
< alert("Persist failed - cannot remove toolbar button");
---
> var tbl = w.document.getElementsByTagName("toolbar");
> var have_btn = false;
> for (var i = 0; i < tbl.length; ++i) {
> if (tbl[i].currentSet.split(",").indexOf("unplug2_toolbarbutton") >= 0) {
> // remove button
> var updatedset = tbl[i].currentSet.split(",").filter(function (x) {
> return x != "unplug2_toolbarbutton";
> }).join(",");
> tbl[i].setAttribute("currentset", updatedset);
> w.document.persist(tbl[i].getAttribute("id"),"currentset");
> return;
98,115d99
< // remove button (applies this session)
< navtoolbar.removeChild(toolbarbutton);
< } else {
< var navtoolbar = w.document.getElementById("nav-bar");
< // do persist thing (applies next restart)
< var curSet = navtoolbar.currentSet;
< if (curSet) {
< if (curSet.indexOf("urlbar-container") < 0 && curSet.indexOf("search-container") < 0) {
< alert("There's a problem adding the toolbar button\n\n" + curSet);
< } else {
< navtoolbar.setAttribute("currentset", curSet + ",unplug2_toolbarbutton");
< w.document.persist("nav-bar","currentset");
< }
< } else {
< alert("Persist failed - cannot add toolbar button");
< }
< // add button (applies this session)
< navtoolbar.insertItem("unplug2_toolbarbutton", null, null, false);
116a101,109
>
> var navtoolbar = w.document.getElementById("nav-bar");
> if (!navtoolbar || navtoolbar.currentSet.indexOf(",") < 0) {
> alert("Cannot add - where's nav-bar?");
> return;
> }
> // add button
> navtoolbar.setAttribute("currentset", navtoolbar.currentSet + ",unplug2_toolbarbutton");
> w.document.persist(navtoolbar.getAttribute("id"),"currentset");
141a135,166
> function setup_restart_notices() {
> var showpopup = (function () {
> var box = document.getElementById("integration_notification");
> var notification = box.getNotificationWithValue("restart-needed");
> if (!notification) {
> var buttons = [{
> accessKey : "R",
> callback : restart_firefox,
> label : "Restart",
> popup : null }];
> box.appendNotification(
> "Restart firefox to apply these changes",
> "restart-needed",
> "chrome://browser/skin/Info.png",
> box.PRIORITY_WARNING_MEDIUM,
> buttons);
> }
> });
> var el = document.getElementsByClassName("needs_restart");
> for (var i = 0; i < el.length; ++i) {
> el[i].addEventListener("command", showpopup, false);
> };
> }
>
> function restart_firefox() {
> // Like chrome://mozapps/content/extensions/extensions.js
> const nsIAppStartup = Components.interfaces.nsIAppStartup;
> Components.classes["@mozilla.org/toolkit/app-startup;1"]
> .getService(nsIAppStartup)
> .quit(nsIAppStartup.eRestart | nsIAppStartup.eAttemptQuit);
> }
>
148a174,175
> /* We're adding ourselves to the add-ons bar,
> * so this is less important. We'll skip it by default:
150a178
> */
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/config/config.xul releases/unplug-2.041/source/chrome/content/config/config.xul
76a77
>
78,84c79,88
<
<
<
<
<
<
<
---
>
>
>
>
>
>
>
>
>
>
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/display/download.js releases/unplug-2.041/source/chrome/content/display/download.js
92c92
< UnPlug2.log("Error in UnPlug2DownloadMethods for " + name + " " + result.toSource() + " with error " + e);
---
> UnPlug2.log("Error in UnPlug2DownloadMethods for " + name + " " + result.toSource() + " with error " + e.toSource());
425c425
< "--swfUrl", res.download.referer, // this is invalid, but good enough most of the time.
---
> "--swfUrl", res.download.swfurl || res.download.referer, // this is invalid, but good enough most of the time.
501a502,529
> UnPlug2DownloadMethods.add_button("vlc", {
> avail : (function (res) {
> var url = res.download.url;
> if (!url) {
> return false;
> }
> var proto = url.substring(0, url.indexOf(":"))
> return (["mms", "http", "https", "rtsp"].indexOf(proto) != -1);
> }),
> signal_get_argv : (function (res, savefile) {
> return [
> "--no-one-instance",
> "-Isignals", // no gui
> res.download.url,
> ":demux=dump",
> ":demuxdump-file=" + savefile.file.path,
> ":sout-all",
> "vlc://quit" ];
> }),
> exec_file_list : [
> "/usr/bin/vlc" ],
> weblinks : [
> { url : "http://videolan.org/vlc", label : "videolan.org" }],
> obscurity : 90,
> css : "extern vlc",
> group : "special"
> });
>
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/display/extern/extern.js releases/unplug-2.041/source/chrome/content/display/extern/extern.js
45c45
< if (file_size < 20 * 1024 * 1024) {
---
> if (file_size < 2.5 * 1024 * 1024) {
47c47
< } else if (file_size < 20 * 1024 * 1024 * 1024) {
---
> } else if (file_size < 2.5 * 1024 * 1024 * 1024) {
81a82
> var that = this;
102c103
< this.do_kill(rtn, checkbox.value);
---
> that.do_kill(rtn, checkbox.value);
138a140,142
> } else if (file_size == 0) {
> // EXIT_SUCCESS + no file is error from vlc
> extern.set_program_box_status(item.node, file_size, "error");
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/display/pop/pop.js releases/unplug-2.041/source/chrome/content/display/pop/pop.js
71c71
< UnPlug2.log(e);
---
> UnPlug2.log(e.toSource());
127c127
< UnPlug2.log(e);
---
> UnPlug2.log(e.toSource());
165c165
< UnPlug2.log("ERROR displaying result " + e);
---
> UnPlug2.log("ERROR displaying result " + e.toSource());
349c349
< UnPlug2.log("Error sending nothing found msg " + e);
---
> UnPlug2.log("Error sending nothing found msg " + e.toSource());
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/overlay/all.js releases/unplug-2.041/source/chrome/content/overlay/all.js
57c57
< UnPlug2.log(e);
---
> UnPlug2.log(e.toSource());
66c66
< var menus = [ "toolsmenu", "contextmenu" ];
---
> var menus = [ "toolsmenu", "contextmenu", "addonsbar" ];
72c72
< el.parentNode.removeChild(el);
---
> el.collapsed = true;
75c75
< UnPlug2.log("Error removing " + name + " because " + e);
---
> UnPlug2.log("Error removing " + name + " because " + e.toSource());
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/overlay/firefox.xul releases/unplug-2.041/source/chrome/content/overlay/firefox.xul
35a36
>
39a41
>
43a46
>
46a50,56
>
>
>
>
>
>
>
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/rules.xml releases/unplug-2.041/source/chrome/content/rules.xml
363a364
>
373,377c374,406
<
<
<
<
<
---
>
> k1="48_audio/wma" v1="very-low"
> k2="48_audio/mp4" v2="low"
> k3="128_audio/wma" v3="low"
> k4="128_audio/mp4" v4="mid"
> />
>
>
>
>
> url="${wmaloc.1}"
> title="${either:title.1:origtitle.innerHTML}" description="${optional:bitrate.1} ${optional:type.1}"
> thumbnail="${thumb.1}" mediaid="${ident.1}" quality="${quality.1}" />
>
>
>
>
>
>
>
>
>
>
>
>
> url="${protocol.1}://${server.1}:1935/${app.1}?${htmldecode:auth.1}"
> app="${app.1}?${htmldecode:auth.1}"
> playpath="${identifier.1}"
> title="${either:title.1:origtitle.innerHTML}" description="${optional:bitrate.1} ${optional:type.1}"
> thumbnail="${thumb.1}" mediaid="${ident.1}" quality="${quality.1}" />
379,394c408
<
<
<
<
<
<
<
<
<
<
<
<
---
>
617a632,646
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
651c680
<
---
>
658,687c687,723
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
---
>
>
>
>
> quality="very-high" title="${either:title.1:origtitle.innerHTML}" mediaid="${video_id.1}"
> description="${translate:hd_quality} - ${optional:title.1}" type="mp4" />
>
>
>
> quality="low" title="${either:title.1:origtitle.innerHTML}" mediaid="${video_id.1}"
> description="${translate:low_quality} - ${optional:title.1}" type="flv" />
>
>
>
> quality="mid" title="${either:title.1:origtitle.innerHTML}" mediaid="${video_id.1}"
> description="${translate:mid_quality} - ${optional:title.1}" type="flv" />
>
>
>
> quality="mid" title="${either:title.1:origtitle.innerHTML}" mediaid="${video_id.1}"
> description="${translate:mid_quality} (mp4) - ${optional:title.1}" type="mp4" />
>
>
>
> quality="mid" title="${either:title.1:origtitle.innerHTML}" mediaid="${video_id.1}"
> description="${translate:high_quality} - ${optional:title.1}" type="flv" />
>
>
>
> description="Unknown quality code ${fmt_url.1} - ${optional:title.1}" type="flv" />
>
689,692c725,743
<
<
<
---
>
>
>
>
>
> title="${either:title.1:origtitle.innerHTML}" type="flv"
> description="${translate:mid_quality}"
> thumbnail="http://i4.ytimg.com/vi/${video_id.1}/default.jpg"
> mediaid="${video_id.1}" />
>
>
>
> title="${either:title.1:origtitle.innerHTML}" type="flv"
> description="Unknown quality code ${fmt_url.1} - ${optional:title.1}"
> thumbnail="http://i4.ytimg.com/vi/${video_id.1}/default.jpg"
> mediaid="${video_id.1}" />
>
713a765,783
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/search/rules.js releases/unplug-2.041/source/chrome/content/search/rules.js
50c50
< if (response == false)
---
> if (response === false) {
53c53,54
< if (response == true)
---
> }
> if (response === true) {
54a56
> }
59,61c61,62
< // without apply_ref set this responds by exporting variables without the prefix!
< // TODO - is this right behaviour?
< return response;
---
> UnPlug2.log("if_" + statement_name + " did not return true or false, it returned " + response.toSource());
> return false;
367a369,408
> * Is a switch statement
> */
> if_switch : {
> order : 10,
> required : ["input"],
> optional : ["k1", "v1", "k2", "v2", "k3", "v3", "k4", "v4",
> "k5", "v5", "k6", "v6", "k7", "v7", "k8", "v8", "k9", "v9",
> "k10", "v10", "k11", "v11", "k12", "v12", "k13", "v13", "k14", "v14",
> "k15", "v15", "k16", "v16", "k17", "v17", "k18", "v18", "k19", "v19",
> "k20", "v20"],
> apply_ref : true,
> execute : function (data, url, text, doc) {
> if (!data.input) { return false; }
> switch (data.input) {
> case data.k1: return {1: data.v1};
> case data.k2: return {1: data.v2};
> case data.k3: return {1: data.v3};
> case data.k4: return {1: data.v4};
> case data.k5: return {1: data.v5};
> case data.k6: return {1: data.v6};
> case data.k7: return {1: data.v7};
> case data.k8: return {1: data.v8};
> case data.k9: return {1: data.v9};
> case data.k10: return {1: data.v10};
> case data.k11: return {1: data.v11};
> case data.k12: return {1: data.v12};
> case data.k13: return {1: data.v13};
> case data.k14: return {1: data.v14};
> case data.k15: return {1: data.v15};
> case data.k16: return {1: data.v16};
> case data.k17: return {1: data.v17};
> case data.k18: return {1: data.v18};
> case data.k19: return {1: data.v19};
> case data.k20: return {1: data.v20};
> default: return false;
> }
> }
> },
>
> /*
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/content/search/search.js releases/unplug-2.041/source/chrome/content/search/search.js
138c138
< UnPlug2.log("Cancel download error " + e);
---
> UnPlug2.log("Cancel download error " + e.toSource());
314a315,323
> * Regular expression escape
> */
> case "reescape":
> var specials = RegExp("[\\" + ("\\.*+{}()[]$^-".split("").join("\\")) + "]", "g");
> var x = this._subst_apply_functions(parts).replace(specials, (function (substr) {
> return "\\" + substr;
> }));
> return x
> /**
713c722
< UnPlug2.log("Download failed to be queued for " + UnPlug2Search._downloads[dl_id].download + " because " + e);
---
> UnPlug2.log("Download failed to be queued for " + UnPlug2Search._downloads[dl_id].download + " because " + e.toSource());
779c788
< UnPlug2.log("Starting Download failed for " + dl_id + " / " + UnPlug2Search._downloads[dl_id].download + " because " + e);
---
> UnPlug2.log("Starting Download failed for " + dl_id + " / " + UnPlug2Search._downloads[dl_id].download + " because " + e.toSource());
1007c1016
< UnPlug2.log("Error in " + nodetagname + " because " + e + " " + variables.trace());
---
> UnPlug2.log("Error in " + nodetagname + " because " + e.toSource() + " " + variables.trace());
1038c1047
< UnPlug2.log("Error in " + nodetagname + " because " + e + " " + variables.trace());
---
> UnPlug2.log("Error in " + nodetagname + " because " + e.toSource() + " " + variables.trace());
1186c1195
< var attrs = ["app", "playpath"];
---
> var attrs = ["app", "playpath", "swfurl"];
1213c1222
< UnPlug2.log("Failed to action " + nodetagname + " because " + e + " " + variables.trace());
---
> UnPlug2.log("Failed to action " + nodetagname + " because " + e.toSource() + " " + variables.trace());
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/de-DE/config.dtd releases/unplug-2.041/source/chrome/locale/de-DE/config.dtd
44a45,46
>
>
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/de-DE/strings.txt releases/unplug-2.041/source/chrome/locale/de-DE/strings.txt
53a54,56
> dmethod.vlc=VLC
> dmethod.vlc.a=V
> dmethod.vlc.tip=Verwenden Sie ein Software-Tool zum Download dieser Datei.
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/en-US/config.dtd releases/unplug-2.041/source/chrome/locale/en-US/config.dtd
44a45,46
>
>
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/en-US/strings.txt releases/unplug-2.041/source/chrome/locale/en-US/strings.txt
54a55,57
> dmethod.vlc=VLC
> dmethod.vlc.a=V
> dmethod.vlc.tip=Download with VLC media player
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/fr-FR/config.dtd releases/unplug-2.041/source/chrome/locale/fr-FR/config.dtd
44a45,46
>
>
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/fr-FR/strings.txt releases/unplug-2.041/source/chrome/locale/fr-FR/strings.txt
54a55,57
> dmethod.vlc=VLC
> dmethod.vlc.a=V
> dmethod.vlc.tip=Obtenir ou exécuter VLC
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/hu-HU/config.dtd releases/unplug-2.041/source/chrome/locale/hu-HU/config.dtd
44a45,46
>
>
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/hu-HU/strings.txt releases/unplug-2.041/source/chrome/locale/hu-HU/strings.txt
54a55,57
> dmethod.vlc=VLC
> dmethod.vlc.a=V
> dmethod.vlc.tip=Eszköz (vlc) beszerzése vagy futtatása.
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/pl-PL/config.dtd releases/unplug-2.041/source/chrome/locale/pl-PL/config.dtd
44a45,46
>
>
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/pl-PL/strings.txt releases/unplug-2.041/source/chrome/locale/pl-PL/strings.txt
53a54,56
> dmethod.vlc=VLC
> dmethod.vlc.a=V
> dmethod.vlc.tip=
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/sv-SE/config.dtd releases/unplug-2.041/source/chrome/locale/sv-SE/config.dtd
44a45,46
>
>
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/chrome/locale/sv-SE/strings.txt releases/unplug-2.041/source/chrome/locale/sv-SE/strings.txt
54a55,57
> dmethod.vlc=VLC
> dmethod.vlc.a=V
> dmethod.vlc.tip=Hämta eller kör VLC
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/defaults/preferences/unplug2.js releases/unplug-2.041/source/defaults/preferences/unplug2.js
3a4
> pref("extensions.unplug2.add_to_addonsbar", true);
diff --new-file --recursive --suppress-common-lines --exclude changes.txt --exclude diff.txt releases/unplug-2.040/source/install.rdf releases/unplug-2.041/source/install.rdf
9c9
< em:version="2.040"
---
> em:version="2.041"
27c27
< 4.0b8
---
> 4.0.*
Binary files releases/unplug-2.040/unplug.xpi and releases/unplug-2.041/unplug.xpi differ