Skip to content
This repository has been archived by the owner on Aug 9, 2023. It is now read-only.

Commit

Permalink
Closes #71, update for TB68 (#74)
Browse files Browse the repository at this point in the history
* cleanup some old files

* version 1.0.20

* set right github address and id

* v1.0.22

* v1.0.22b

* v1.0.24 according to #74

* 1.0.25 various changes from #74

* v1.0.26 remove chrome.manifest

* Revert "v1.0.26 remove chrome.manifest"

This reverts commit bc417b0992e0679dcc27142cb3bc21a408889736.
  • Loading branch information
opto committed Feb 19, 2020
1 parent d413a65 commit c99b5a0
Show file tree
Hide file tree
Showing 35 changed files with 1,310 additions and 384 deletions.
23 changes: 21 additions & 2 deletions CHANGES → CHANGES.txt
@@ -1,7 +1,26 @@
Next version
1.0.25

- Use Services for restart

1.0.23, 1.0.24

- More (cosmetic, documentation) changes according to discussion in #74

1.0.22

- More update changes to TB 68
1.0.15
- Update code for TB 68
- Add restart button for TB to utilities tab

Changes in Nostalgy (original version)

Next version (originally planned by Alain, maybe obsolete now)
- #24: config setting for custom timeout after creating folder before moving email to it (Adam Kerz)
- #60, #62: fix for TB 60.3 (h271fa GitHub user)




0.2.36
- Fix for TB 60 (thanks to lepokle GitHub user)

Expand Down
4 changes: 3 additions & 1 deletion LICENSE
@@ -1,4 +1,5 @@
Copyright (c) 2008 Alain Frisch
Copyright (c) 2008 - 2020 Alain Frisch
Copyright (c) 2019 - 2020 opto (Klaus Buecher)

This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
Expand All @@ -19,3 +20,4 @@ freely, subject to the following restrictions:
3. This notice may not be removed or altered from any source
distribution.


14 changes: 0 additions & 14 deletions Makefile

This file was deleted.

14 changes: 10 additions & 4 deletions README.md
Expand Up @@ -6,8 +6,11 @@ save time by doing more operations with the keyboard. If you want to
use Thunderbird without sacrificing the productivity you had with good
old mutt/pine, this extension is for you!

It is especially useful if you have long folderlists and need to sort emails
into those folders.

Nostalgy adds keyboard shortcuts to change folder, move/copy messages,
with folder name auto-completion (using only the keyboard). Also
with folder name auto-completion (using only the keyboard). It also
includes a system of rules to suggest a target folder for saving
messages; re-creates Eudora's Alt-Click; facilitates navigation in the
3-pane window; makes it easy to change between To/Bcc/Cc fields in the
Expand All @@ -19,11 +22,14 @@ header in the composer (To/Cc/Bcc), adding an attachment, hide the
folder view.


Modified by opto (Klaus Buecher) for TB 68

Installation
============

The easiest way to install Thunderbird is through
https://addons.mozilla.org/en-US/thunderbird/addon/nostalgy/ . It


The easiest way to install Thunderbird is through Thunderbird`s addon page. It
will automatically update itself when new versions are released.

You can also try the latest development version from http://alain.frisch.fr/info/nostalgy-current.xpi
You can also try the latest development versions from http://alain.frisch.fr/info/nostalgy-current.xpi or from https://github.com/opto/nostalgy/releases
132 changes: 0 additions & 132 deletions build.sh

This file was deleted.

4 changes: 2 additions & 2 deletions chrome.manifest
@@ -1,5 +1,5 @@
content nostalgy content/
locale nostalgy en-US locale/en-US/
content nostalgy chrome/content/
locale nostalgy en-US chrome/locale/en-US/
overlay chrome://messenger/content/messenger.xul chrome://nostalgy/content/thunderbirdOverlay.xul
overlay chrome://messenger/content/messageWindow.xul chrome://nostalgy/content/messageOverlay.xul
overlay chrome://messenger/content/messengercompose/messengercompose.xul chrome://nostalgy/content/composerOverlay.xul
Expand Down
7 changes: 0 additions & 7 deletions chrome.manifest.pack

This file was deleted.

79 changes: 79 additions & 0 deletions chrome/components/nostalgy-autocomplete.js
@@ -0,0 +1,79 @@
const Cc = Components.classes;
const Ci = Components.interfaces;
const Cu = Components.utils;
var ChromeUtils = require("ChromeUtils.jsm");
var {XPCOMUtils} = ChromeUtils.import('resource://gre/modules/XPCOMUtils.jsm');
var { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm");


const CLASS_ID = Components.ID('0368fb30-62f8-11e3-949a-0800200c9a66');
const CLASS_NAME = "Nostalgy Folder Autocomplete";
const CONTRACT_ID = '@mozilla.org/autocomplete/search;1?name=nostalgy-autocomplete';


// nsIAutoCompleteResult implementation

function NostalgyDebug(aText)
{
var csClass = Components.classes['@mozilla.org/consoleservice;1'];
var cs = csClass.getService(Components.interfaces.nsIConsoleService);
cs.logStringMessage(aText);
}

function NostalgyAutoCompleteResult(searchString, results) {
const ACR = Ci.nsIAutoCompleteResult;
this._searchResult = results.length > 0 ? ACR.RESULT_SUCCESS : ACR.NOMATCH;
this._searchString = searchString;
this._results = results;
}

NostalgyAutoCompleteResult.prototype = {
_searchString: "",
_searchResult: 0,
_results: [],

get searchString() { return this._searchString; },
get searchResult() { return this._searchResult; },
get defaultIndex() { return 0; },
get errorDescription() { return ""; },
get matchCount() { return this._results.length; },
getValueAt: function(index) { return this._results[index]; },
getCommentAt: function(index) { return ""; },
getStyleAt: function(index) { return null; },
getImageAt : function (index) { return ""; },
removeValueAt: function(index, removeFromDb) { this._results.splice(index, 1); },
getLabelAt: function(index) { return this._results[index]; },
QueryInterface: ChromeUtils.generateQI([ Ci.nsIAutoCompleteResult ]),
};


// nsIAutoCompleteSearch implementation

function NostalgyAutoCompleteSearch() {
this.wrappedJSObject = this;
}

NostalgyAutoCompleteSearch.prototype = {
classID: CLASS_ID,
classDescription : CLASS_NAME,
contractID : CONTRACT_ID,
_f: {},
_id: 0,

attachGetValuesFunction: function(f) { this._id++; this._f[this._id] = f; return this._id; },

startSearch: function(searchString, searchParam, previousResult, listener) {
var searchResults = this._f[searchParam](searchString);
var result = new NostalgyAutoCompleteResult(searchString, searchResults);
listener.onSearchResult(this, result);
},

stopSearch: function() {},

QueryInterface: ChromeUtils.generateQI([ Ci.nsIAutoCompleteSearch ]) ,
};


// XPCOM component creation

const NSGetFactory = XPCOMUtils.generateNSGetFactory([ NostalgyAutoCompleteSearch ]);

0 comments on commit c99b5a0

Please sign in to comment.