diff --git a/Firefox addon/Firefox addon.vcxproj b/Firefox addon/Firefox addon.vcxproj
index dc40c71..e051993 100644
--- a/Firefox addon/Firefox addon.vcxproj
+++ b/Firefox addon/Firefox addon.vcxproj
@@ -235,7 +235,10 @@ echo POSTBUILDSTEP for $(ProjectName) COMPLETED OK
+
+
+
diff --git a/Firefox addon/Firefox addon.vcxproj.filters b/Firefox addon/Firefox addon.vcxproj.filters
index 6c2fcc0..7352037 100644
--- a/Firefox addon/Firefox addon.vcxproj.filters
+++ b/Firefox addon/Firefox addon.vcxproj.filters
@@ -271,6 +271,15 @@
JS
+
+ JS
+
+
+ JS
+
+
+ JS
+
diff --git a/Firefox addon/KeeFox/chrome/content/KFILM.js b/Firefox addon/KeeFox/chrome/content/KFILM.js
index e99d2f0..46cea69 100644
--- a/Firefox addon/KeeFox/chrome/content/KFILM.js
+++ b/Firefox addon/KeeFox/chrome/content/KFILM.js
@@ -724,6 +724,8 @@ keefox_win.ILM = {
}
var primaryURL = login.URLs[0];
+
+ this._kf.metricsManager.pushEvent ("feature", "addLogin");
if (this._kf._keeFoxExtension.prefs.getValue("saveFavicons",false))
{
@@ -1047,6 +1049,8 @@ keefox_win.ILM = {
keefox_win.Logger.debug("loading and auto submitting button " + button + ctrlClick + ":" + actionURL);
else
keefox_win.Logger.debug("loading and auto submitting button " + button + ctrlClick + "...");
+
+ this._kf.metricsManager.pushEvent ("feature", "loadAndAutoSubmit");
var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"]
.getService(Components.interfaces.nsIWindowMediator);
diff --git a/Firefox addon/KeeFox/chrome/content/KFILM_Fill.js b/Firefox addon/KeeFox/chrome/content/KFILM_Fill.js
index dd3718c..1c37d5c 100644
--- a/Firefox addon/KeeFox/chrome/content/KFILM_Fill.js
+++ b/Firefox addon/KeeFox/chrome/content/KFILM_Fill.js
@@ -683,6 +683,7 @@ keefox_win.ILM.allSearchesComplete = function (findLoginDoc)
window.keefox_win.ILM._fillManyFormFields(otherFields, matchingLogin.otherFields,
findLoginDoc.currentTabPage, findLoginDoc.overWriteFieldsAutomatically);
findLoginDoc.formsReadyForSubmit++; //TODO2: could we fill more than one form before? i don't think so but why is it a count rather than bool?!
+ window.keefox_win.ILM._kf.metricsManager.pushEvent ("feature", "AutoFill");
}
}
}
@@ -798,6 +799,7 @@ keefox_win.ILM.allSearchesComplete = function (findLoginDoc)
&& findLoginDoc.formsReadyForSubmit == 1)
{
keefox_win.Logger.info("Auto-submitting form...");
+ window.keefox_win.ILM._kf.metricsManager.pushEvent ("feature", "AutoSubmit");
keefox_win.ILM.submitForm(form);
} else if (findLoginDoc.allMatchingLogins.length > 0)
{
@@ -1037,7 +1039,13 @@ keefox_win.ILM.fillFindLoginsComplete = function (resultWrapper, fillDocumentDat
// now we can submit the form if desired
if (autoSubmitForm)
+ {
+ window.keefox_win.ILM._kf.metricsManager.pushEvent ("feature", "MatchedFill");
window.keefox_win.ILM.submitForm(form);
+ } else
+ {
+ window.keefox_win.ILM._kf.metricsManager.pushEvent ("feature", "MatchedSubmit");
+ }
};
keefox_win.ILM._fillAllFrames = function (window, initialPageLoad)
diff --git a/Firefox addon/KeeFox/chrome/content/KFToolBar.js b/Firefox addon/KeeFox/chrome/content/KFToolBar.js
index 3800786..e3594d1 100644
--- a/Firefox addon/KeeFox/chrome/content/KFToolBar.js
+++ b/Firefox addon/KeeFox/chrome/content/KFToolBar.js
@@ -858,7 +858,9 @@ keefox_win.toolbar = {
},
generatePassword: function () {
- this._currentWindow.keefox_org.generatePassword();
+ let kf = this._currentWindow.keefox_org;
+ kf.metricsManager.pushEvent ("feature", "generatePassword");
+ kf.generatePassword();
},
removeNonMatchingEventHandlers: function (node) {
diff --git a/Firefox addon/KeeFox/chrome/content/KFUI.js b/Firefox addon/KeeFox/chrome/content/KFUI.js
index d92d170..bf33cfc 100644
--- a/Firefox addon/KeeFox/chrome/content/KFUI.js
+++ b/Firefox addon/KeeFox/chrome/content/KFUI.js
@@ -344,6 +344,7 @@ keefox_win.UI = {
};
keefox_win.toolbar.clearTabFormRecordingData();
+ keefox_win.ILM._kf.metricsManager.pushEvent ("feature", "SaveGroupChooser");
window.openDialog("chrome://keefox/content/groupChooser.xul",
"group", "chrome,centerscreen",
onOK,
@@ -391,6 +392,7 @@ keefox_win.UI = {
};
keefox_win.toolbar.clearTabFormRecordingData();
+ keefox_win.ILM._kf.metricsManager.pushEvent ("feature", "SaveGroupChooser");
window.openDialog("chrome://keefox/content/groupChooser.xul",
"group", "chrome,centerscreen",
onOK,
@@ -408,7 +410,9 @@ keefox_win.UI = {
{
label: notNowButtonText,
accessKey: notNowButtonAccessKey,
- callback: function(evt) { keefox_win.toolbar.clearTabFormRecordingData(); }
+ callback: function(evt) {
+ keefox_org.metricsManager.pushEvent ("feature", "SaveNotNow");
+ keefox_win.toolbar.clearTabFormRecordingData(); }
},
// "Never" button
@@ -417,6 +421,7 @@ keefox_win.UI = {
accessKey: neverButtonAccessKey,
popup: null,
callback: function() {
+ keefox_org.metricsManager.pushEvent ("feature", "SaveNever");
try
{
let newConfig = keefox_org.config.applyMoreSpecificConfig(JSON.parse(JSON.stringify(keefox_org.config.getConfigDefinitionForURL(urlSchemeHostPort))),{"preventSaveNotification": true}); //TODO1.4: faster clone?
diff --git a/Firefox addon/KeeFox/chrome/content/commonDialog.js b/Firefox addon/KeeFox/chrome/content/commonDialog.js
index 390b514..151cfd8 100644
--- a/Firefox addon/KeeFox/chrome/content/commonDialog.js
+++ b/Firefox addon/KeeFox/chrome/content/commonDialog.js
@@ -738,11 +738,13 @@ var keeFoxDialogManager = {
if (autoFill)
{
// fill in the best matching login
+ keefox_org.metricsManager.pushEvent ("feature", "AutoFillDialog");
dialogFindLoginStorage.document.getElementById("loginTextbox").value = matchedLogins[bestMatch].username;
dialogFindLoginStorage.document.getElementById("password1Textbox").value = matchedLogins[bestMatch].password;
}
if (autoSubmit || dialogFindLoginStorage.mustAutoSubmit)
{
+ keefox_org.metricsManager.pushEvent ("feature", "AutoSubmitDialog");
Dialog.onButton0();
close();
}
@@ -751,6 +753,7 @@ var keeFoxDialogManager = {
fill : function (username, password)
{
+ keefox_org.metricsManager.pushEvent ("feature", "MatchedSubmitDialog");
document.getElementById("loginTextbox").value = username;
document.getElementById("password1Textbox").value = password;
Dialog.onButton0();
diff --git a/Firefox addon/KeeFox/chrome/content/siteOptions.js b/Firefox addon/KeeFox/chrome/content/siteOptions.js
index a08394a..c3e7695 100644
--- a/Firefox addon/KeeFox/chrome/content/siteOptions.js
+++ b/Firefox addon/KeeFox/chrome/content/siteOptions.js
@@ -307,6 +307,12 @@ function setMainPanelConfig(url, newConfig, effectiveConfig)
function addSite()
{
let newURL = window.prompt("Type the new URL, remembering the http:// or https:// at the start");
+ var wm = Cc["@mozilla.org/appshell/window-mediator;1"]
+ .getService(Ci.nsIWindowMediator);
+ var mainWindow = wm.getMostRecentWindow("navigator:browser") ||
+ wm.getMostRecentWindow("mail:3pane");
+
+ mainWindow.keefox_org.metricsManager.pushEvent("feature", "SiteSpecificAdd");
configMan.setConfigForURL(newURL,{});
configMan.save();
go(newURL);
diff --git a/Firefox addon/KeeFox/chrome/locale/cs/keefox.properties b/Firefox addon/KeeFox/chrome/locale/cs/keefox.properties
index 5e5fe7d..ebdb14c 100644
--- a/Firefox addon/KeeFox/chrome/locale/cs/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/cs/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Procházet
KeeFox-FAMS-Options.label= Nastavení oznamování zprávy/tipu
KeeFox-pref-searchAllOpenDBs.label= Prohledat všechny otevřené KeePass databáze
KeeFox-pref-listAllOpenDBs.label= Seznam přihlášení ze všech otevřených KeePass databazí
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
KeeFox-pref-site-options-find.desc=KeeFox zkusí najít přihlašovací údaje pro všechny formuláře obsahující pole s hesly. Nastav toto a více v
diff --git a/Firefox addon/KeeFox/chrome/locale/da/keefox.properties b/Firefox addon/KeeFox/chrome/locale/da/keefox.properties
index f15fa15..99d1bea 100644
--- a/Firefox addon/KeeFox/chrome/locale/da/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/da/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Gennemse
KeeFox-FAMS-Options.label= Besked/tip notifikationsindstillinger
KeeFox-pref-searchAllOpenDBs.label= Søg i alle åbne KeePass databaser
KeeFox-pref-listAllOpenDBs.label= Vis liste med logins fra alle åbne KeePass databaser
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
KeeFox-pref-site-options-find.desc=KeeFox forsøger at finde login oplysninger til alle formularer der indeholder et felt til en adgangskode. Justér dette og andet i
diff --git a/Firefox addon/KeeFox/chrome/locale/de/keefox.properties b/Firefox addon/KeeFox/chrome/locale/de/keefox.properties
index 954bead..472aa05 100644
--- a/Firefox addon/KeeFox/chrome/locale/de/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/de/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Durchsuchen
KeeFox-FAMS-Options.label= Nachricht / Tipp-Hinweis Optionen
KeeFox-pref-searchAllOpenDBs.label= Alle offenen KeePass-Datenbanken suchen
KeeFox-pref-listAllOpenDBs.label= Alle Anmeldungen aller geöffneten KeePass-Datenbanken auflisten
-
+KeeFox-pref-metrics-desc=KeeFox sammelt anonyme System- und Nutzungsstatistiken zur Problemlösung und zur Erfahrungsverbesserung. Keine privaten Daten werden gesammelt.
+KeeFox-pref-metrics-link=Lesen Sie mehr über die anonymen Daten, die KeeFox sammelt
+KeeFox-pref-metrics-label=Anonyme Nutzungsstatistiken senden
KeeFox-pref-site-options-find.desc=KeeFox versucht Login-Details in allen Formularen zu finden, die ein Passwort-Feld enthalten. Konfigurieren Sie dies und mehr.
diff --git a/Firefox addon/KeeFox/chrome/locale/fr/keefox.properties b/Firefox addon/KeeFox/chrome/locale/fr/keefox.properties
index 0a4e4f3..0eec4a9 100644
--- a/Firefox addon/KeeFox/chrome/locale/fr/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/fr/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Parcourir
KeeFox-FAMS-Options.label= Options des notifications de messages/astuces
KeeFox-pref-searchAllOpenDBs.label= Chercher dans toutes les bases de données KeePass ouvertes
KeeFox-pref-listAllOpenDBs.label= Lister les entrées de toutes les bases de données KeePass ouvertes
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
KeeFox-pref-site-options-find.desc=KeeFox essaie de trouver des détails de connexion pour tous les formulaires qui contiennent un champ de mots de passe. Ajustez ceci et plus dans
diff --git a/Firefox addon/KeeFox/chrome/locale/hu/keefox.properties b/Firefox addon/KeeFox/chrome/locale/hu/keefox.properties
index 43929a8..225135f 100644
--- a/Firefox addon/KeeFox/chrome/locale/hu/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/hu/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Böngész
KeeFox-FAMS-Options.label= Üzenet / tip értesítési beállítások
KeeFox-pref-searchAllOpenDBs.label= Keresés minden nyitott KeePass adatbázisban
KeeFox-pref-listAllOpenDBs.label= Belépési lista az egész megnyitott KeePass adatbázistól.
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
# KeeFox-pref-site-options-find.desc=KeeFox tries to find log-in details for all forms that contain a password field. Adjust this and more in
diff --git a/Firefox addon/KeeFox/chrome/locale/it/keefox.properties b/Firefox addon/KeeFox/chrome/locale/it/keefox.properties
index a5e72c7..adf704d 100644
--- a/Firefox addon/KeeFox/chrome/locale/it/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/it/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Sfoglia
KeeFox-FAMS-Options.label= Opzioni di notifica messaggi/suggerimenti
KeeFox-pref-searchAllOpenDBs.label= Cerca in tutti i database KeePass aperti
KeeFox-pref-listAllOpenDBs.label= Elenca gli account di accesso da tutti i database KeePass aperti
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
KeeFox-pref-site-options-find.desc=KeeFox cerca di trovare dei dati identificativi in tutti i form che contengono un campo password. Impostare questo e più in
diff --git a/Firefox addon/KeeFox/chrome/locale/ko-KR/keefox.properties b/Firefox addon/KeeFox/chrome/locale/ko-KR/keefox.properties
index dfe77ea..a475a64 100644
--- a/Firefox addon/KeeFox/chrome/locale/ko-KR/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/ko-KR/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= 찾아보기
# KeeFox-FAMS-Options.label= Message/tip notification options
KeeFox-pref-searchAllOpenDBs.label= 열려있는 모든 KeePass 데이터베이스 검색
# KeeFox-pref-listAllOpenDBs.label= List logins from all open KeePass databases
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
# KeeFox-pref-site-options-find.desc=KeeFox tries to find log-in details for all forms that contain a password field. Adjust this and more in
diff --git a/Firefox addon/KeeFox/chrome/locale/nb-NO/FAMS.keefox.properties b/Firefox addon/KeeFox/chrome/locale/nb-NO/FAMS.keefox.properties
index 19a25bf..4fb117d 100644
--- a/Firefox addon/KeeFox/chrome/locale/nb-NO/FAMS.keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/nb-NO/FAMS.keefox.properties
@@ -35,8 +35,12 @@
# tips201201040000o-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Tips-|-Open-Source-Safer
# tips201201040000p-body=If you have old KeePass entries without website-specific icons (favicons) try the KeePass Favicon downloader plugin.
# tips201201040000p-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Tips-|-Favicon-Downloader
-# tips201211040000a-body=NEW: You can configure individual websites to work better with KeeFox.
+# tips201211040000a-body=You can configure individual websites to work better with KeeFox.
# tips201211040000a-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Tips-|-Site-Specific
+# tips201312040000a-body=Keyboard shortcuts can speed up access to many KeeFox features.
+# tips201312040000a-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Tips-|-Keyboard-shortcuts
+# tips201312040000b-body=KeeFox features can now be found on your context (right mouse click) menu.
+# tips201312040000b-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Tips-|-Context-menu
# security-name=Security notices
# security-description=Important security notices that users should not ignore if they wish to remain protected
# security-default-title=KeeFox security warning
@@ -47,3 +51,5 @@
# messages-help-keefox=Help KeeFox
# messages201201040000a-body=You've been using KeeFox for a while now so please help others by adding a positive review to the Mozilla addons website.
# messages201201040000a-link=https://addons.mozilla.org/en-US/firefox/addon/keefox/reviews/add
+# messages201312080000a-body=KeeFox collects anonymous statistics to fix problems and improve your experience. Read more to find out what data is sent and what you can change.
+# messages201312080000a-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Metrics-collection
diff --git a/Firefox addon/KeeFox/chrome/locale/nb-NO/keefox.properties b/Firefox addon/KeeFox/chrome/locale/nb-NO/keefox.properties
index 0056a8e..81c53bc 100644
--- a/Firefox addon/KeeFox/chrome/locale/nb-NO/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/nb-NO/keefox.properties
@@ -274,7 +274,9 @@ KeeFox_Install_admincopyKRPCToKnownKPLocationInstallExpander.description= Trykk
# KeeFox-FAMS-Options.label= Message/tip notification options
# KeeFox-pref-searchAllOpenDBs.label= Search all open KeePass databases
# KeeFox-pref-listAllOpenDBs.label= List logins from all open KeePass databases
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
# KeeFox-pref-site-options-find.desc=KeeFox tries to find log-in details for all forms that contain a password field. Adjust this and more in
diff --git a/Firefox addon/KeeFox/chrome/locale/nl/keefox.properties b/Firefox addon/KeeFox/chrome/locale/nl/keefox.properties
index 982e7dc..294ef1c 100644
--- a/Firefox addon/KeeFox/chrome/locale/nl/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/nl/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Blader
KeeFox-FAMS-Options.label= Berichten/tips instellingen wijzigen
KeeFox-pref-searchAllOpenDBs.label= Doorzoek alle open wachtwoordendatabases
KeeFox-pref-listAllOpenDBs.label= Laat de inloggegevens van alle open wachtwoordendatabases zien in de lijst
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
KeeFox-pref-site-options-find.desc=KeeFox probeert inloggegevens te vinden voor alle formulieren met een wachtwoord veld erin. U kunt dit en meer aanpassen in
diff --git a/Firefox addon/KeeFox/chrome/locale/pl/FAMS.keefox.properties b/Firefox addon/KeeFox/chrome/locale/pl/FAMS.keefox.properties
index 19a25bf..4fb117d 100644
--- a/Firefox addon/KeeFox/chrome/locale/pl/FAMS.keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/pl/FAMS.keefox.properties
@@ -35,8 +35,12 @@
# tips201201040000o-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Tips-|-Open-Source-Safer
# tips201201040000p-body=If you have old KeePass entries without website-specific icons (favicons) try the KeePass Favicon downloader plugin.
# tips201201040000p-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Tips-|-Favicon-Downloader
-# tips201211040000a-body=NEW: You can configure individual websites to work better with KeeFox.
+# tips201211040000a-body=You can configure individual websites to work better with KeeFox.
# tips201211040000a-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Tips-|-Site-Specific
+# tips201312040000a-body=Keyboard shortcuts can speed up access to many KeeFox features.
+# tips201312040000a-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Tips-|-Keyboard-shortcuts
+# tips201312040000b-body=KeeFox features can now be found on your context (right mouse click) menu.
+# tips201312040000b-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Tips-|-Context-menu
# security-name=Security notices
# security-description=Important security notices that users should not ignore if they wish to remain protected
# security-default-title=KeeFox security warning
@@ -47,3 +51,5 @@
# messages-help-keefox=Help KeeFox
# messages201201040000a-body=You've been using KeeFox for a while now so please help others by adding a positive review to the Mozilla addons website.
# messages201201040000a-link=https://addons.mozilla.org/en-US/firefox/addon/keefox/reviews/add
+# messages201312080000a-body=KeeFox collects anonymous statistics to fix problems and improve your experience. Read more to find out what data is sent and what you can change.
+# messages201312080000a-link=https://github.com/luckyrat/KeeFox/wiki/en-|-Metrics-collection
diff --git a/Firefox addon/KeeFox/chrome/locale/pl/keefox.properties b/Firefox addon/KeeFox/chrome/locale/pl/keefox.properties
index d6701b5..478e3bb 100644
--- a/Firefox addon/KeeFox/chrome/locale/pl/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/pl/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-pref-excludedSaveSites.remove= Usun
# KeeFox-FAMS-Options.label= Message/tip notification options
# KeeFox-pref-searchAllOpenDBs.label= Search all open KeePass databases
# KeeFox-pref-listAllOpenDBs.label= List logins from all open KeePass databases
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
# KeeFox-pref-site-options-find.desc=KeeFox tries to find log-in details for all forms that contain a password field. Adjust this and more in
diff --git a/Firefox addon/KeeFox/chrome/locale/pt-BR/keefox.properties b/Firefox addon/KeeFox/chrome/locale/pt-BR/keefox.properties
index 86f0a51..3130bef 100644
--- a/Firefox addon/KeeFox/chrome/locale/pt-BR/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/pt-BR/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Procurar
KeeFox-FAMS-Options.label= Opções de notificação com mensagens e dicas
KeeFox-pref-searchAllOpenDBs.label= Procurar todos os bancos de dados do KeePass abertos
KeeFox-pref-listAllOpenDBs.label= Listar logins de todos os bancos de dados do KeePass abertos
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
# KeeFox-pref-site-options-find.desc=KeeFox tries to find log-in details for all forms that contain a password field. Adjust this and more in
diff --git a/Firefox addon/KeeFox/chrome/locale/ro/keefox.properties b/Firefox addon/KeeFox/chrome/locale/ro/keefox.properties
index 447999a..fe1645f 100644
--- a/Firefox addon/KeeFox/chrome/locale/ro/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/ro/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Caută
# KeeFox-FAMS-Options.label= Message/tip notification options
# KeeFox-pref-searchAllOpenDBs.label= Search all open KeePass databases
# KeeFox-pref-listAllOpenDBs.label= List logins from all open KeePass databases
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
# KeeFox-pref-site-options-find.desc=KeeFox tries to find log-in details for all forms that contain a password field. Adjust this and more in
diff --git a/Firefox addon/KeeFox/chrome/locale/ru/keefox.properties b/Firefox addon/KeeFox/chrome/locale/ru/keefox.properties
index d9e8e21..265611e 100644
--- a/Firefox addon/KeeFox/chrome/locale/ru/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/ru/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Обзор
KeeFox-FAMS-Options.label= Настройки уведомлений о сообщениях и подсказках
KeeFox-pref-searchAllOpenDBs.label= Искать все открытые базы данных KeePass
KeeFox-pref-listAllOpenDBs.label= Список логинов из всех открытых баз данных KeePass
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
KeeFox-pref-site-options-find.desc=KeeFox пытается найти детали входа для всех форм, содержащих поле пароля. Отрегулируйте это и многое другое в
diff --git a/Firefox addon/KeeFox/chrome/locale/sv-SE/keefox.properties b/Firefox addon/KeeFox/chrome/locale/sv-SE/keefox.properties
index 11216cb..5b12780 100644
--- a/Firefox addon/KeeFox/chrome/locale/sv-SE/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/sv-SE/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= Bläddra
KeeFox-FAMS-Options.label= Aviseringsinställningar
KeeFox-pref-searchAllOpenDBs.label= Sök i alla öppna KeePass-databaser
KeeFox-pref-listAllOpenDBs.label= Lista inloggningar från alla öppna KeePass-databaser
-
+# KeeFox-pref-metrics-desc=KeeFox collects anonymous system and usage statistics to fix problems and improve your experience. No private data is collected.
+# KeeFox-pref-metrics-link=Read more about the anonymous data KeeFox collects
+# KeeFox-pref-metrics-label=Send anonymous usage statistics
KeeFox-pref-site-options-find.desc=KeeFox försöker hitta inloggningsinformation för alla formulär som innehåller ett lösenordsfält. Justera detta och mycket annat i
diff --git a/Firefox addon/KeeFox/chrome/locale/zh-CN/keefox.properties b/Firefox addon/KeeFox/chrome/locale/zh-CN/keefox.properties
index d8dd2de..e74e8d8 100644
--- a/Firefox addon/KeeFox/chrome/locale/zh-CN/keefox.properties
+++ b/Firefox addon/KeeFox/chrome/locale/zh-CN/keefox.properties
@@ -274,7 +274,9 @@ KeeFox-browse.label= 浏览
KeeFox-FAMS-Options.label= 消息/提示 通知选项
KeeFox-pref-searchAllOpenDBs.label= 搜索所有打开的 KeePass 数据库
KeeFox-pref-listAllOpenDBs.label= 列出所有打开的 KeePass 数据库的登录
-
+KeeFox-pref-metrics-desc=KeeFox 收集匿名的系统和使用统计以解决问题和改善您的体验。收集的数据不会包含任何个人信息。
+KeeFox-pref-metrics-link=了解有关 KeeFox 收集匿名数据的细节
+KeeFox-pref-metrics-label=发送匿名统计信息
KeeFox-pref-site-options-find.desc=KeeFox 会试图从所有包含一个密码字段的表单中找到登录信息。调整这个的更多细节
diff --git a/Firefox addon/KeeFox/install.rdf b/Firefox addon/KeeFox/install.rdf
index 4b8b995..7ef221a 100644
--- a/Firefox addon/KeeFox/install.rdf
+++ b/Firefox addon/KeeFox/install.rdf
@@ -5,7 +5,7 @@
keefox@chris.tomlinson
- 1.3.0b1.5
+ 1.3.0b2
2
true
diff --git a/Firefox addon/KeeFox/modules/commands.js b/Firefox addon/KeeFox/modules/commands.js
index d7c6d6e..e4cf9cc 100644
--- a/Firefox addon/KeeFox/modules/commands.js
+++ b/Firefox addon/KeeFox/modules/commands.js
@@ -414,6 +414,7 @@ function commandManager () {
let win = utils.getWindow();
if (!win) return;
+ win.keefox_org.metricsManager.pushEvent ("feature", "detectForms");
win.keefox_org._KFLog.debug("context detectForms start");
var currentGBrowser = win.gBrowser;
win.keefox_win.toolbar.setLogins(null, null);
@@ -421,6 +422,7 @@ function commandManager () {
},
generatePassword: function()
{
+ utils.getWindow().keefox_org.metricsManager.pushEvent ("feature", "generatePassword");
utils.getWindow().keefox_org.generatePassword();
},
/* Not intending to support these features until at least 1.4
@@ -567,6 +569,7 @@ function commandManager () {
if (!keefox_org.commandManager.conditions[commandName]())
continue;
keefox_org._KFLog.debug("Executing command action: " + commandName);
+ keefox_org.metricsManager.adjustAggregate("keyboardShortcutsPressed", 1);
//TODO: Pass event target information to action
keefox_org.commandManager.actions[commandName]();
break;
@@ -679,7 +682,11 @@ function commandManager () {
//item.setAttribute("accesskey", this.commands[i].accesskey);
item.keeFoxCommandName = this.commands[i].name;
item.keeFoxValidContexts = this.commands[i].contextLocationFlags;
- item.addEventListener("command", function(event) { utils.getWindow().keefox_org.commandManager.actions[this.keeFoxCommandName](); }, false);
+ item.addEventListener("command", function(event) {
+ let kf = utils.getWindow().keefox_org;
+ kf.metricsManager.adjustAggregate("contextMenuItemsPressed", 1);
+ kf.commandManager.actions[this.keeFoxCommandName]();
+ }, false);
}
//TODO1.4: repeat for submenu context type
diff --git a/Firefox addon/KeeFox/modules/metrics.js b/Firefox addon/KeeFox/modules/metrics.js
index ae939b9..9c36c63 100644
--- a/Firefox addon/KeeFox/modules/metrics.js
+++ b/Firefox addon/KeeFox/modules/metrics.js
@@ -1,6 +1,6 @@
/*
KeeFox - Allows Firefox to communicate with KeePass (via the KeePassRPC KeePass plugin)
- Copyright 2008-2013 Chris Tomlinson
+ Copyright 2008-2014 Chris Tomlinson
The metrics module collects anonymous statistics about key metrics and
behaviours so we can improve KeeFox.
@@ -128,11 +128,15 @@ function mm () {
mm.ii.addonVersion = addon.version;
// Make sure indexedDB is available somewhere consistent regardless
- // of old Firefox differences
+ // of old Firefox differences.
+ //
+ // We can't assume that indexedDB and IDBKeyRange are accessed in the same
+ // way because there are definitely some non-release builds of Firefox
+ // where they differ but it does appear that they are consistently available
+ // if initWindowless() works.
if (typeof indexedDB !== "undefined")
{
mm.indexedDB = indexedDB;
- mm.IDBKeyRange = IDBKeyRange;
}
if (!mm.indexedDB) {
try {
@@ -141,7 +145,37 @@ function mm () {
idbManager.initWindowless(mm);
} catch (e)
{
- mm._KFLog.info("KeeFox metrics system disabled - browser version probably too low.");
+ // May have just failed becuase the API changed again so that
+ // calls to initWindowless now need to be replaced by...
+ try
+ {
+ Cu.importGlobalProperties(["indexedDB"]);
+ mm.indexedDB = indexedDB;
+ }
+ catch (ie)
+ {
+ // Still broken, we'll have to accept that the whole metrics
+ // system is fragile until Firefox settles on a stable API for IndexedDB...
+ mm._KFLog.info("KeeFox metrics system disabled due to exception: " + e + " and 2nd exception: " + ie);
+ return;
+ }
+ }
+ }
+
+ if (!mm.IDBKeyRange) {
+ mm.IDBKeyRange = IDBKeyRange;
+ }
+ if (!mm.IDBKeyRange) {
+ try
+ {
+ Cu.importGlobalProperties(["IDBKeyRange"]);
+ mm.IDBKeyRange = IDBKeyRange;
+ }
+ catch (e)
+ {
+ // Still broken, we'll have to accept that the whole metrics
+ // system is fragile until Firefox settles on a stable API for IndexedDB...
+ mm._KFLog.info("KeeFox metrics system disabled because IDBKeyRange is not available in this Firefox build. Exception: " + e);
return;
}
}
@@ -612,7 +646,10 @@ function mm () {
let agg = result.value;
if (agg.value != undefined)
{
- agg.value = value;
+ if (agg.value > 0)
+ agg.value = agg.value + value;
+ else
+ agg.value = value;
} else if (agg.avg != undefined)
{
let newCount = agg.count + 1.0;
diff --git a/Jayrock/src/Jayrock.Json/obj/Release/Jayrock.Json.csproj.FileListAbsolute.txt b/Jayrock/src/Jayrock.Json/obj/Release/Jayrock.Json.csproj.FileListAbsolute.txt
index 928ddeb..de39b21 100644
--- a/Jayrock/src/Jayrock.Json/obj/Release/Jayrock.Json.csproj.FileListAbsolute.txt
+++ b/Jayrock/src/Jayrock.Json/obj/Release/Jayrock.Json.csproj.FileListAbsolute.txt
@@ -3,3 +3,4 @@ C:\development\KeeFox\Jayrock\bin\net-4.0\release\Jayrock.Json.dll
C:\development\KeeFox\Jayrock\bin\net-4.0\release\Jayrock.Json.pdb
C:\development\KeeFox\Jayrock\src\Jayrock.Json\obj\Release\Jayrock.Json.dll
C:\development\KeeFox\Jayrock\src\Jayrock.Json\obj\Release\Jayrock.Json.pdb
+C:\development\keefox\Jayrock\src\Jayrock.Json\obj\Release\Jayrock.Json.csprojResolveAssemblyReference.cache
diff --git a/XPI-package/latest.xpi b/XPI-package/latest.xpi
index 38f6ba4..28ee196 100644
Binary files a/XPI-package/latest.xpi and b/XPI-package/latest.xpi differ