Make count type disable TB version dependent

This commit is contained in:
Ximi1970
2021-08-10 23:21:10 +02:00
parent 1a8d5eb9cc
commit 84ee52cea6
8 changed files with 72 additions and 21 deletions

View File

@@ -148,12 +148,26 @@ void Preferences::setBrowserVendor( const QString vendor )
}
/*
* Get the browser
*/
const QString& Preferences::getBrowserVersion() const
{
return m_browser_version;
}
/*
* Set the browser
*/
void Preferences::setBrowserVersion( const QString version )
{
m_browser_version = version;
/*
* Tell the world the new preference
*/
emit signalBrowserVersion();
}

View File

@@ -151,6 +151,13 @@ class Preferences : public QObject
*/
void setBrowserVendor( const QString vendor );
/**
* @brief getBrowserVersion. Get the browser version.
*
* @return The browser version.
*/
const QString& getBrowserVersion() const;
/**
* @brief setBrowserVersion. Set the browser version.
*
@@ -468,6 +475,11 @@ class Preferences : public QObject
*/
void signalConsole( QString message );
/**
* @brief signalBrowserVersion. Signal the browser version.
*/
void signalBrowserVersion();
/**
* @brief signalDefaultIconTypeChange. Signal a default icon type change.
*/

View File

@@ -74,11 +74,6 @@ PreferencesDialog::PreferencesDialog( SysTrayXLink *link, Preferences *pref, QWi
m_ui->countTypeGroup->setId( m_ui->unreadRadioButton, Preferences::PREF_COUNT_UNREAD );
m_ui->countTypeGroup->setId( m_ui->newRadioButton, Preferences::PREF_COUNT_NEW );
/*
* Hide the count type for now
*/
m_ui->countTypeGroupBox->setVisible(false);
/*
* Set icon type defaults
*/
@@ -543,6 +538,23 @@ void PreferencesDialog::slotDebugChange()
}
/*
* Handle the browser version signal
*/
void PreferencesDialog::slotBrowserVersion()
{
QString version = m_pref->getBrowserVersion();
if( version.section( '.', 0, 0 ).toInt() > 89 )
{
/*
* Hide the count type for TB90 and up, not supported
*/
m_ui->countTypeGroupBox->setVisible( false );
}
}
/*
* Handle the minimize type change signal
*/

View File

@@ -207,6 +207,11 @@ class PreferencesDialog : public QDialog
*/
void slotDebugChange();
/**
* @brief slotBrowserVersion. Slot for handling the browser version signals.
*/
void slotBrowserVersion();
/**
* @brief slotMinimizeTypeChange. Slot for handling minimize type change signals.
*/

View File

@@ -111,6 +111,7 @@ SysTrayX::SysTrayX( QObject *parent ) : QObject( parent )
connect( m_preferences, &Preferences::signalMinimizeTypeChange, m_win_ctrl, &WindowCtrl::slotMinimizeTypeChange );
connect( m_preferences, &Preferences::signalStartMinimizedChange, m_win_ctrl, &WindowCtrl::slotStartMinimizedChange );
connect( m_preferences, &Preferences::signalBrowserVersion, m_pref_dialog, &PreferencesDialog::slotBrowserVersion );
connect( m_preferences, &Preferences::signalDefaultIconTypeChange, m_pref_dialog, &PreferencesDialog::slotDefaultIconTypeChange );
connect( m_preferences, &Preferences::signalDefaultIconDataChange, m_pref_dialog, &PreferencesDialog::slotDefaultIconDataChange );
connect( m_preferences, &Preferences::signalHideDefaultIconChange, m_pref_dialog, &PreferencesDialog::slotHideDefaultIconChange );

View File

@@ -21,14 +21,8 @@ SysTrayX.Accounts = {
if (BrowserInfo.version.split(".")[0] < 91) {
return await browser.accounts.list();
} else {
console.debug("Get account with folders");
const includeFolders = true;
const accounts = await browser.accounts.list(includeFolders);
console.debug("Options accounts: " + JSON.stringify(accounts));
return accounts;
return await browser.accounts.list(includeFolders);
}
},

View File

@@ -398,7 +398,7 @@
/>
</td>
</tr>
<tr style="display: none">
<tr id="counttype">
<td>
<label for="countType">__MSG_icons_number_count_type__</label>
<input

View File

@@ -68,8 +68,9 @@ SysTrayX.SaveOptions = {
//
// Save close preferences
//
const closeType = document.querySelector('input[name="closeType"]:checked')
.value;
const closeType = document.querySelector(
'input[name="closeType"]:checked'
).value;
// Store minimize preferences
browser.storage.sync.set({
@@ -133,8 +134,9 @@ SysTrayX.SaveOptions = {
//
// Save icon preferences
//
const iconType = document.querySelector('input[name="iconType"]:checked')
.value;
const iconType = document.querySelector(
'input[name="iconType"]:checked'
).value;
// Store icon type
browser.storage.sync.set({
@@ -154,8 +156,9 @@ SysTrayX.SaveOptions = {
//
// Save enable number state
//
const showNumber = document.querySelector('input[name="showNumber"]')
.checked;
const showNumber = document.querySelector(
'input[name="showNumber"]'
).checked;
browser.storage.sync.set({
showNumber: `${showNumber}`,
});
@@ -231,8 +234,9 @@ SysTrayX.SaveOptions = {
//
// Save count type preferences
//
const countType = document.querySelector('input[name="countType"]:checked')
.value;
const countType = document.querySelector(
'input[name="countType"]:checked'
).value;
browser.storage.sync.set({
countType: countType,
});
@@ -1008,4 +1012,13 @@ document
.querySelector('[name="saveform"]')
.addEventListener("submit", SysTrayX.SaveOptions.start);
async function start() {
BrowserInfo = await browser.runtime.getBrowserInfo().then((info) => info);
if (BrowserInfo.version.split(".")[0] > 89) {
document.getElementById("counttype").style.display = "none";
}
}
start();
browser.storage.onChanged.addListener(SysTrayX.StorageChanged.changed);