Merge branch 'release-0.9.10'

This commit is contained in:
Ximi1970
2024-08-23 22:55:39 +02:00
30 changed files with 187 additions and 199 deletions

View File

@@ -11,7 +11,7 @@ Name "${Name}"
!define PRODUCT_ID "systray-x@Ximi1970"
!define VERSIONMAJOR 0
!define VERSIONMINOR 9
!define VERSIONBUILD 9
!define VERSIONBUILD 10
!define VERSION "${VERSIONMAJOR}.${VERSIONMINOR}.${VERSIONBUILD}"
CRCCheck On

View File

@@ -11,7 +11,7 @@ Name "${Name}"
!define PRODUCT_ID "systray-x@Ximi1970"
!define VERSIONMAJOR 0
!define VERSIONMINOR 9
!define VERSIONBUILD 9
!define VERSIONBUILD 10
!define VERSION "${VERSIONMAJOR}.${VERSIONMINOR}.${VERSIONBUILD}"
CRCCheck On

View File

@@ -1,8 +1,8 @@
# Maintainer: Maxime Rijnders <ximi.obs@gmail.com>
pkgname=systray-x-gnome
pkgver=0.9.9
pkgrel=3
pkgver=0.9.10
pkgrel=1
epoch=1
pkgdesc='A system tray extension for Thunderbird (GNOME)'
arch=(x86_64)
@@ -13,7 +13,7 @@ depends=(
'qt6-wayland'
'gnome-shell-extension-appindicator'
'thunderbird>=91'
'thunderbird<129'
'thunderbird<131'
)
makedepends=(
'git'

View File

@@ -1,8 +1,8 @@
# Maintainer: Maxime Rijnders <ximi.obs@gmail.com>
pkgname=systray-x
pkgver=0.9.9
pkgrel=3
pkgver=0.9.10
pkgrel=1
epoch=1
pkgdesc='A system tray extension for Thunderbird (KDE)'
arch=(x86_64)
@@ -13,7 +13,7 @@ depends=(
'qt6-wayland'
'kstatusnotifieritem'
'thunderbird>=91'
'thunderbird<129'
'thunderbird<131'
)
makedepends=(
'git'

View File

@@ -1,8 +1,8 @@
# Maintainer: Maxime Rijnders <ximi.obs@gmail.com>
pkgname=systray-x-minimal
pkgver=0.9.9
pkgrel=3
pkgver=0.9.10
pkgrel=1
epoch=1
pkgdesc='A system tray extension for Thunderbird (Unity/XFCE/other)'
arch=(x86_64)
@@ -12,7 +12,7 @@ depends=(
'qt6-base'
'qt6-wayland'
'thunderbird>=91'
'thunderbird<129'
'thunderbird<131'
)
makedepends=(
'git'

View File

@@ -1,8 +1,17 @@
systray-x-gnome (0.9.10-1) unstable; urgency=low
* Update to 0.9.10
- Bugfix: new mail indicator reset
systray-x-gnome (0.9.9-1) unstable; urgency=low
* Update to 0.9.9
- Qt 6 fixes
- TB 121+ fixes
- Added window positions correction option
- Bugfixes
systray-x-gnome (0.9.8-1) unstable; urgency=low

View File

@@ -1,8 +1,17 @@
systray-x (0.9.10-1) unstable; urgency=low
* Update to 0.9.10
- Bugfix: new mail indicator reset
systray-x (0.9.9-1) unstable; urgency=low
* Update to 0.9.9
- Qt 6 fixes
- TB 121+ fixes
- Added window positions correction option
- Bugfixes
systray-x (0.9.8-1) unstable; urgency=low

View File

@@ -1,8 +1,17 @@
systray-x-minimal (0.9.10-1) unstable; urgency=low
* Update to 0.9.10
- Bugfix: new mail indicator reset
systray-x-minimal (0.9.9-1) unstable; urgency=low
* Update to 0.9.9
- Qt 6 fixes
- TB 121+ fixes
- Added window positions correction option
- Bugfixes
systray-x-minimal (0.9.8-1) unstable; urgency=low

View File

@@ -1,3 +1,9 @@
systray-x-gnome (0.9.10-1) unstable; urgency=low
* Update to 0.9.10
- Bugfix: new mail indicator reset
systray-x-gnome (0.9.9-1) unstable; urgency=low
* Update to 0.9.9

View File

@@ -6,7 +6,7 @@ Build-Depends: debhelper (>= 4.1.16), zip, g++, libx11-dev, qt5-qmake, qtbase5-d
Package: systray-x-gnome
Architecture: any
Depends: ${shlibs:Depends}, gnome-shell-extension-appindicator, thunderbird (>= 1:91), thunderbird (< 1:129)
Depends: ${shlibs:Depends}, gnome-shell-extension-appindicator, thunderbird (>= 1:91), thunderbird (< 1:131)
Description: SysTray-X is a system tray extension for Thunderbird (GNOME).
This version is optimized for the GNOME desktop.
The add-on uses the WebExtension API's to control an external system

View File

@@ -1,6 +1,6 @@
Format: 1.0
Source: systray-x-gnome
Version: 0.9.9-3
Version: 0.9.10-1
Binary: systray-x-gnome
Maintainer: Maxime Rijnders <ximi.obs@gmail.com>
Architecture: any

View File

@@ -1,3 +1,9 @@
systray-x (0.9.10-1) unstable; urgency=low
* Update to 0.9.10
- Bugfix: new mail indicator reset
systray-x (0.9.9-1) unstable; urgency=low
* Update to 0.9.9

View File

@@ -6,7 +6,7 @@ Build-Depends: debhelper (>= 4.1.16), zip, g++, libx11-dev, qt5-qmake, qtbase5-d
Package: systray-x
Architecture: any
Depends: ${shlibs:Depends}, thunderbird (>= 1:91), thunderbird (< 1:129)
Depends: ${shlibs:Depends}, thunderbird (>= 1:91), thunderbird (< 1:131)
Description: SysTray-X is a system tray extension for Thunderbird (KDE).
This version is optimized for the KDE desktop.
The add-on uses the WebExtension API's to control an external system

View File

@@ -1,6 +1,6 @@
Format: 1.0
Source: systray-x
Version: 0.9.9-3
Version: 0.9.10-1
Binary: SysTray-X
Maintainer: Maxime Rijnders <ximi.obs@gmail.com>
Architecture: any

View File

@@ -1,3 +1,9 @@
systray-x-minimal (0.9.10-1) unstable; urgency=low
* Update to 0.9.10
- Bugfix: new mail indicator reset
systray-x-minimal (0.9.9-1) unstable; urgency=low
* Update to 0.9.9

View File

@@ -6,7 +6,7 @@ Build-Depends: debhelper (>= 4.1.16), zip, g++, libx11-dev, qt5-qmake, qtbase5-d
Package: systray-x-minimal
Architecture: any
Depends: ${shlibs:Depends}, thunderbird (>= 1:91), thunderbird (< 1:129)
Depends: ${shlibs:Depends}, thunderbird (>= 1:91), thunderbird (< 1:131)
Description: SysTray-X is a system tray extension for Thunderbird (non-GNOME,non-KDE).
This version is for non-KDE and non-GNOME desktops.
The add-on uses the WebExtension API's to control an external system

View File

@@ -1,6 +1,6 @@
Format: 1.0
Source: systray-x-minimal
Version: 0.9.9-3
Version: 0.9.10-1
Binary: systray-x-minimal
Maintainer: Maxime Rijnders <ximi.obs@gmail.com>
Architecture: any

6
dist/rpm/VERSION vendored
View File

@@ -1,4 +1,4 @@
VERSION=0.9.9
BUILD_NUMBER=1144
GIT_HASH=4cc230a117e13f3bca1d63bfa1f9de857ffa99aa
VERSION=0.9.10
BUILD_NUMBER=1155
GIT_HASH=c565572e4e3b61420cce704663a31841d7083d18
GIT_BRANCH=develop

View File

@@ -2,8 +2,8 @@
<service name="obs_scm">
<param name="url">https://github.com/Ximi1970/systray-x.git</param>
<param name="scm">git</param>
<param name="revision">release-0.9.9</param>
<param name="versionformat">0.9.9</param>
<param name="revision">release-0.9.10</param>
<param name="versionformat">0.9.10</param>
<param name="filename">systray-x-gnome</param>
<param name="extract">dist/rpm/gnome/systray-x-gnome.changes</param>
<param name="extract">dist/rpm/gnome/systray-x-gnome.spec</param>

View File

@@ -1,3 +1,10 @@
-------------------------------------------------------------------
Mon Aug 5 19:40:00 UTC 2024 - Maxime Rijnders <ximi.obs@gmail.com>
* Update to 0.9.10
- Bugfix: new mail indicator reset
-------------------------------------------------------------------
Tue Apr 27 16:00:00 UTC 2024 - Maxime Rijnders <ximi.obs@gmail.com>

View File

@@ -43,10 +43,10 @@ BuildRequires: libqt5-qtx11extras-devel
BuildRequires: pkgconfig(x11)
%if 0%{?fedora_version}
Requires: thunderbird >= 91
Requires: thunderbird < 129
Requires: thunderbird < 131
%else
Requires: MozillaThunderbird >= 91
Requires: MozillaThunderbird < 129
Requires: MozillaThunderbird < 131
%endif
%if 0%{?suse_version} > 1600 || 0%{?fedora_version} > 39
%if 0%{?fedora_version}

View File

@@ -2,8 +2,8 @@
<service name="obs_scm">
<param name="url">https://github.com/Ximi1970/systray-x.git</param>
<param name="scm">git</param>
<param name="revision">release-0.9.9</param>
<param name="versionformat">0.9.9</param>
<param name="revision">release-0.9.10</param>
<param name="versionformat">0.9.10</param>
<param name="extract">dist/rpm/kde/systray-x.changes</param>
<param name="extract">dist/rpm/kde/systray-x.spec</param>
<param name="extract">dist/rpm/VERSION</param>

View File

@@ -1,3 +1,10 @@
-------------------------------------------------------------------
Mon Aug 5 19:40:00 UTC 2024 - Maxime Rijnders <ximi.obs@gmail.com>
* Update to 0.9.10
- Bugfix: new mail indicator reset
-------------------------------------------------------------------
Tue Apr 27 16:00:00 UTC 2024 - Maxime Rijnders <ximi.obs@gmail.com>

View File

@@ -54,10 +54,10 @@ Requires: libKF5Notifications5
BuildRequires: pkgconfig(x11)
%if 0%{?fedora_version}
Requires: thunderbird >= 91
Requires: thunderbird < 129
Requires: thunderbird < 131
%else
Requires: MozillaThunderbird >= 91
Requires: MozillaThunderbird < 129
Requires: MozillaThunderbird < 131
%endif
%if 0%{?suse_version} > 1600 || 0%{?fedora_version} > 39
%if 0%{?fedora_version}

View File

@@ -2,8 +2,8 @@
<service name="obs_scm">
<param name="url">https://github.com/Ximi1970/systray-x.git</param>
<param name="scm">git</param>
<param name="revision">release-0.9.9</param>
<param name="versionformat">0.9.9</param>
<param name="revision">release-0.9.10</param>
<param name="versionformat">0.9.10</param>
<param name="filename">systray-x-minimal</param>
<param name="extract">dist/rpm/minimal/systray-x-minimal.changes</param>
<param name="extract">dist/rpm/minimal/systray-x-minimal.spec</param>

View File

@@ -1,3 +1,10 @@
-------------------------------------------------------------------
Mon Aug 5 19:40:00 UTC 2024 - Maxime Rijnders <ximi.obs@gmail.com>
* Update to 0.9.10
- Bugfix: new mail indicator reset
-------------------------------------------------------------------
Tue Apr 27 16:00:00 UTC 2024 - Maxime Rijnders <ximi.obs@gmail.com>

View File

@@ -43,10 +43,10 @@ BuildRequires: libqt5-qtx11extras-devel
BuildRequires: pkgconfig(x11)
%if 0%{?fedora_version} || 0%{?centos_version}
Requires: thunderbird >= 91
Requires: thunderbird < 129
Requires: thunderbird < 131
%else
Requires: MozillaThunderbird >= 91
Requires: MozillaThunderbird < 129
Requires: MozillaThunderbird < 131
%endif
%if 0%{?suse_version} > 1600 || 0%{?fedora_version} > 39
%if 0%{?fedora_version}

View File

@@ -209,9 +209,9 @@ SysTrayX.Messaging = {
SysTrayX.Messaging.newMailCache.push({ folder, messages });
}
//console.debug("listenerNewMailCache: New mail in: " + JSON.stringify(folder));
//console.debug("listenerNewMailCache: New messages: " + JSON.stringify(messages));
//console.debug("listenerNewMailCache: Cache: " + SysTrayX.Messaging.newMailCache.length );
//console.debug("listenerNewMail: New mail in: " + JSON.stringify(folder));
//console.debug("listenerNewMail: New messages: " + JSON.stringify(messages));
//console.debug("listenerNewMail: Cache: " + SysTrayX.Messaging.newMailCache.length );
if (SysTrayX.Messaging.startupDelayFinished)
{
@@ -234,135 +234,28 @@ SysTrayX.Messaging = {
}
});
//console.debug("listenerNewMail: new: " + JSON.stringify(SysTrayX.Messaging.new));
// Cache handled
SysTrayX.Messaging.newMailCache = [];
}
},
listenerFolderInfoChanged: async function (folder, folderInfo) {
if (SysTrayX.Info.browserInfo.majorVersion < 115 || SysTrayX.Messaging.apiCountMethod === "false") {
// Cache the folder change
if (folder)
{
SysTrayX.Messaging.folderInfoChangeCache.push({ folder, folderInfo });
}
//console.debug("listenerFolderInfoChanged: folder: " + JSON.stringify(folder));
//console.debug("listenerFolderInfoChanged: folderinfo: " + JSON.stringify(folderInfo));
//console.debug("listenerFolderInfoChanged: Cache: " + SysTrayX.Messaging.folderInfoChangeCache.length );
//console.debug("folderInfoChanged: " + JSON.stringify(folder));
//console.debug("folderInfoChanged: " + JSON.stringify(folderInfo));
//console.debug("folderInfoChanged: Cache: " + SysTrayX.Messaging.folderInfoChangeCache.length );
if (SysTrayX.Messaging.startupDelayFinished)
{
if( SysTrayX.Messaging.folderInfoChangeCache.length > 0 ) {
// Process the received messages
for (const cache of SysTrayX.Messaging.folderInfoChangeCache) {
if (cache.folderInfo.unreadMessageCount !== undefined) {
if (SysTrayX.Messaging.unread[cache.folder.accountId] === undefined) {
SysTrayX.Messaging.unread[cache.folder.accountId] = {};
}
if (SysTrayX.Messaging.new[cache.folder.accountId] === undefined) {
SysTrayX.Messaging.new[cache.folder.accountId] = {};
}
if (SysTrayX.Messaging.new[cache.folder.accountId][cache.folder.path] === undefined) {
SysTrayX.Messaging.new[cache.folder.accountId][cache.folder.path] = [];
}
SysTrayX.Messaging.unread[cache.folder.accountId][cache.folder.path] =
cache.folderInfo.unreadMessageCount;
// Check if the new mails have been read, remove from new storage
const messages = SysTrayX.Messaging.new[cache.folder.accountId][cache.folder.path];
if (messages.length > 0) {
const newMessages = [];
for (let i = 0; i < messages.length; ++i) {
const message = messages[i];
const getHeaderPromise = (messageId) =>
new Promise((res) => res(messenger.messages.get(messageId)));
const header = await getHeaderPromise(message.id);
if (!header.read) {
newMessages.push(message);
}
}
//console.debug("FolderInfoChanged: Clear");
//console.debug("FolderInfoChanged: Old: " + JSON.stringify(SysTrayX.Messaging.new[cache.folder.accountId][cache.folder.path]));
//console.debug("FolderInfoChanged: New: " + JSON.stringify(newMessages));
SysTrayX.Messaging.new[cache.folder.accountId][cache.folder.path] = [
...newMessages,
];
}
}
// Cache handled
SysTrayX.Messaging.folderInfoChangeCache = [];
}
} else {
// Count the initial unread messages
for (const filter of SysTrayX.Messaging.filters) {
const accountId = filter.accountId;
for (const storedFolder of filter.folders) {
let path;
let folderParam;
if (typeof(storedFolder) === "string") {
// Filters pre TB 121
path = storedFolder;
folderParam = {
accountId: accountId,
path: storedFolder,
};
} else {
// Filters TB 121
if (storedFolder.mailFolderId === undefined) {
// TB 121 filter setup but older TB
path = storedFolder.path;
folderParam = {
accountId: accountId,
path: path,
};
} else {
path = storedFolder.path;
folderParam = storedFolder.mailFolderId;
}
}
let mailFolderInfo = {};
try {
mailFolderInfo = await browser.folders.getFolderInfo(folderParam);
} catch (err) {
console.debug("Filter error: " + err);
console.debug("Filter error: " + JSON.stringify(folder));
}
if (mailFolderInfo.unreadMessageCount !== undefined) {
if (SysTrayX.Messaging.unread[accountId] === undefined) {
SysTrayX.Messaging.unread[accountId] = {};
}
SysTrayX.Messaging.unread[accountId][path] =
mailFolderInfo.unreadMessageCount;
}
}
}
}
if (SysTrayX.Messaging.startupDelayFinished) {
if (SysTrayX.Info.browserInfo.majorVersion < 115 || SysTrayX.Messaging.apiCountMethod === "false") {
sendMailCountPre115();
}
} else {
if (SysTrayX.Messaging.startupDelayFinished)
{
} else {
sendMailCount();
}
}
}
},
listenerFolderCreated: function (createdFolder) {
const found = isParentFolderInFilters(createdFolder);
if (found) {

View File

@@ -577,78 +577,104 @@ async function addFolderToFilters(newFolder) {
// Collect unread mail
const collectUnreadMail = async () => {
// Count the initial unread messages
for (const filter of SysTrayX.Messaging.filters) {
const accountId = filter.accountId;
for (const storedFolder of filter.folders) {
let mailFolderInfo = {};
let path;
let folderParam;
if (typeof(storedFolder) === "string") {
// Filters pre TB 121
path = storedFolder;
try {
mailFolderInfo = await browser.folders.getFolderInfo({
accountId: accountId,
path: storedFolder,
});
} catch (err) {
//console.debug("Filter error: " + err);
//console.debug("Filter error: " + JSON.stringify(folder));
// Get all accounts
SysTrayX.Messaging.accounts = await browser.accounts.list();
// Check the filters for the accounts
SysTrayX.Messaging.accountFilterCheck();
}
folderParam = {
accountId: accountId,
path: storedFolder,
};
} else {
// Filters TB 121
path = storedFolder.path;
try {
mailFolderInfo = await browser.folders.getFolderInfo(storedFolder.mailFolderId);
} catch (err) {
//console.debug("Filter error: " + err);
//console.debug("Filter error: " + JSON.stringify(folder));
// Get all accounts
SysTrayX.Messaging.accounts = await browser.accounts.list();
// Check the filters for the accounts
SysTrayX.Messaging.accountFilterCheck();
if (storedFolder.mailFolderId === undefined ||
SysTrayX.Info.browserInfo.majorVersion < 121) {
// TB 121 filter setup but older TB
path = storedFolder.path;
folderParam = {
accountId: accountId,
path: path,
};
} else {
path = storedFolder.path;
folderParam = storedFolder.mailFolderId;
}
}
// Check unread mails
let mailFolderInfo = {};
try {
mailFolderInfo = await browser.folders.getFolderInfo(folderParam);
} catch (err) {
//console.debug("Filter error: " + err);
//console.debug("Filter error: " + JSON.stringify(folder));
// Get all accounts
SysTrayX.Messaging.accounts = await browser.accounts.list();
// Check the filters for the accounts
SysTrayX.Messaging.accountFilterCheck();
}
//console.debug("collectUnreadMail: folderParam" + JSON.stringify(folderParam));
//console.debug("collectUnreadMail: mailFolderInfo" + JSON.stringify(mailFolderInfo));
if (mailFolderInfo.unreadMessageCount !== undefined) {
if (SysTrayX.Messaging.unread[accountId] === undefined) {
SysTrayX.Messaging.unread[accountId] = {};
}
if (SysTrayX.Messaging.new[accountId] === undefined) {
SysTrayX.Messaging.new[accountId] = {};
}
if (
SysTrayX.Messaging.new[accountId][path] === undefined
) {
SysTrayX.Messaging.new[accountId][path] = [];
}
SysTrayX.Messaging.unread[accountId][path] =
mailFolderInfo.unreadMessageCount;
}
// Check if the new mails have been read, removed from new storage
if (SysTrayX.Messaging.new[accountId] !== undefined &&
SysTrayX.Messaging.new[accountId][path] !== undefined ) {
const messages = SysTrayX.Messaging.new[accountId][path];
//console.debug("collectUnreadMail: new stored" + JSON.stringify(messages));
if (messages.length > 0) {
const newMessages = [];
for (let i = 0; i < messages.length; ++i) {
const message = messages[i];
const getHeaderPromise = (messageId) =>
new Promise((res) => res(messenger.messages.get(messageId)));
const header = await getHeaderPromise(message.id);
//console.debug("collectUnreadMail: header" + JSON.stringify(header));
if (header.read === false &&
(header.new === undefined || header.new === true) &&
header.headerMessageId !== "") {
newMessages.push(message);
//console.debug("collectUnreadMail: renew" + JSON.stringify(message));
}
}
SysTrayX.Messaging.new[accountId][path] = [
...newMessages,
];
}
}
}
}
};
}
// Count and send the unread and new mails
const sendMailCountPre115 = () => {
const sendMailCountPre115 = async () => {
if (SysTrayX.Info.browserInfo.majorVersion < 115 || SysTrayX.Messaging.apiCountMethod === "false") {
// Collect the unread mail
collectUnreadMail();
await collectUnreadMail();
// Count the collected mail
let unreadCount = 0;
@@ -682,6 +708,9 @@ const sendMailCountPre115 = () => {
//console.debug("Filters: " + JSON.stringify(SysTrayX.Messaging.filters));
//console.debug("New: " + JSON.stringify(SysTrayX.Messaging.new));
//console.debug("sendMailCountPre115 Unread storage: " + JSON.stringify(SysTrayX.Messaging.unread));
//console.debug("sendMailCountPre115 New storage: " + JSON.stringify(SysTrayX.Messaging.new));
//console.debug("sendMailCountPre115 Unread: " + unreadCount);
//console.debug("sendMailCountPre115 New: " + newCount);

View File

@@ -2,7 +2,7 @@
"manifest_version": 2,
"name": "__MSG_extension_name__",
"description": "__MSG_extension_description__",
"version": "0.9.9",
"version": "0.9.10",
"author": "Maxime Rijnders",
"homepage_url": "https://github.com/Ximi1970/systray-x",
@@ -10,7 +10,7 @@
"gecko": {
"id": "systray-x@Ximi1970",
"strict_min_version": "91.0",
"strict_max_version": "128.*"
"strict_max_version": "130.*"
}
},