Skip to content

Releases: hidaba/HidaChat

HidaChat v0.5.1

HidaChat v0.5.1 Pre-release
Pre-release

Choose a tag to compare

@hidaba hidaba released this 19 Aug 08:01

Changelog

[0.5.1-beta] - 2026-08-19

Fixed & Improved

  • Ripristino Visibilità Barra di Windows all'Ingrandimento (MainWindow.xaml, MainWindow.xaml.vb):
    • Implementato l'aggancio Win32 (HwndSourceHook) per il messaggio WM_GETMINMAXINFO limitando l'ingrandimento della finestra all'Area di Lavoro (rcWork) dello schermo.
    • La barra delle applicazioni di Windows (Taskbar) resta sempre visibile e accessibile anche a finestra ingrandita a schermo intero.
    • Adattamento dinamico di bordi (BorderThickness), angoli arrotondati (CornerRadius) e ombreggiatura esterna (DropShadowEffect) al cambio di stato (ingrandita/normale).
    • Aggiunto il ridimensionamento interattivo dal grip in basso a destra e il trascinamento fluido per ripristinare la finestra dallo stato ingrandito.
  • Passaggio Istantaneo tra Account & Pre-caricamento Multi-Account (MainWindow.xaml.vb):
    • All'avvio dell'applicazione vengono ora istanziati e pre-caricati i controlli WebView2 per tutti gli account configurati in parallelo.
    • Al cambio scheda, le viste inattive rimangono attive e in memoria (Visibility.Hidden), eliminando completamente i tempi di attesa e i ricaricamenti da zero ad ogni passaggio tra account WhatsApp e Telegram.
  • Notifiche & Ricezione Messaggi in Background (WhatsAppAccount.vb, Scripts/notification.js):
    • Rimossi i parametri di disattivazione del networking in background (--disable-background-networking) e abilitati i flag di continuità operativa di Chromium (--disable-background-timer-throttling, --disable-backgrounding-occluded-windows, --disable-renderer-backgrounding).
    • Gli account in secondo piano mantengono costantemente attiva la connessione WebSocket e l'esecuzione dei timer JavaScript, garantendo la ricezione istantanea dei messaggi anche mentre si utilizza un altro account o la finestra è ridotta a icona.
    • Rafforzato lo script notification.js con l'override dei permessi via navigator.permissions.query, getter forzato su Notification.permission e monitoraggio dinamico delle modifiche al titolo della pagina (MutationObserver).

[0.5.0] - 2026-08-18

Multi-Platform & Rebranding Major Release

  • Rebranding Ufficiale in HidaChat:
    • Evoluzione dell'applicazione da client esclusivo per WhatsApp a client multi-piattaforma unificato (HidaChat).
    • Ridenominazione completa di soluzione, progetti, namespace ed eseguibili.
  • Supporto Multi-Account per WhatsApp e Telegram:
    • Possibilità di gestire contemporaneamente account WhatsApp e Telegram in schede separate con profili isolati.
    • Selezione della piattaforma in fase di creazione e configurazione dell'account nelle Impostazioni.
    • Icone vettoriali dedicate (verde per WhatsApp, azzurro per Telegram) nelle schede in alto e nella gestione account.
  • Sincronizzazione Tema Scuro/Chiaro Multi-Piattaforma (JsScripts.vb, WhatsAppAccount.vb, MainWindow.xaml.vb):
    • Introdotti gli script dedicati TelegramDarkModeJS e TelegramLightModeJS in ThemeJsScripts per la sincronizzazione dinamica del tema di sistema/WPF con l'interfaccia di Telegram Web (web.telegram.org/k/).
    • Gestione della classe .night su document.documentElement e body, aggiornamento delle chiavi tt-theme e theme in localStorage ed integrazione con themeController.setTheme.
    • Applicazione mirata e differenziata degli stili in base al tipo di piattaforma (IsTelegram / IsWhatsApp) sia all'avvio/navigazione (NavigationCompleted) sia al cambio tema in tempo reale nelle Impostazioni (ApplyWpfThemeAsync).
  • Motore di Traduzione Messaggi Multi-Piattaforma (translation.js):
    • Esteso getMessageText e i listener per riconoscere sia i contenitori WhatsApp ([data-testid="msg-container"], .selectable-text, .quoted-message) sia gli elementi nativi di Telegram Web K (.bubble, .message, .text-content, .reply, .reply-content).
    • Ottimizzato il posizionamento del pulsante hover di traduzione per le bolle in uscita/entrata (.is-out, .is-in) e adattato il colore di accento (#24A1DE su Telegram, #00a884 su WhatsApp).
    • Pieno supporto al rilevamento del tema scuro per entrambe le piattaforme per la bolla di traduzione e supporto integrato alla traduzione dell'intera pagina (scanAndTranslateDOM).
  • Miglioramento Routing Notifiche Popup (MessagePopup.xaml.vb):
    • Al click sul popup visivo di notifica, l'applicazione ora seleziona automaticamente la scheda dell'account che ha ricevuto il messaggio (SwitchToAccountAsync), garantendo coerenza con il comportamento delle notifiche Toast di Windows.
  • Rifinitura Localizzazione (Localization.vb):
    • Aggiornate le etichette per riflettere in modo coerente e uniforme la natura multi-piattaforma dell'applicazione.
  • Nuovo Design Visivo Cyberpunk:
    • Nuova icona applicativa in stile cyberpunk neon con fumetto di chat olografico e circuiti digitali.
    • Nuova icona dedicata per la System Tray con badge luminoso per le notifiche attive.
  • Architettura & Portabilità:
    • Isolamento completo di tutti i file dati, impostazioni e profili WebView2 all'interno della cartella portabile data/.
    • Transizione fluida e forwarder per l'aggiornamento automatico dalle versioni legacy.

[0.4.2-beta] - 2026-08-18

Multi-Platform (WhatsApp & Telegram)

  • Supporto Account WhatsApp & Telegram:
    • Aggiunta la selezione del tipo di piattaforma (WhatsApp o Telegram) durante la creazione e la modifica degli account nelle Impostazioni.
    • Visualizzazione delle icone vettoriali dedicate (verde per WhatsApp, azzurro per Telegram) nelle schede account della barra principale e nella lista di gestione account.
    • Menu rapido contestuale sul pulsante + e su "Aggiungi account" per selezionare istantaneamente la piattaforma desiderata.
    • Routing automatico dell'URL specifico (https://web.whatsapp.com/ e https://web.telegram.org/k/) con profili isolati, gestione notifiche e supporto traduzioni.

[0.4.1-beta] - 2026-08-18

Visual & Assets

  • Nuova Icona Cyberpunk & Notifiche System Tray:
    • Introdotto il nuovo set di icone in stile cyberpunk con fumetto di chat olografico al neon (ciano/magenta) e tracciati digitali su sfondo dark.
    • Generati file .ico multi-risoluzione completi (da 16x16 a 256x256) per l'applicazione (icon.ico) e per le notifiche della System Tray con badge luminoso (icon_notification.ico).
    • Integrazione dell'eseguibile ponte e routine di pulizia automatica per la transizione fluida degli aggiornamenti dalle versioni precedenti.

[0.4.0-beta] - 2026-08-18

Rebranding & Multi-Platform Evolution

  • Rebranding Completo da WhatsAppH a HidaChat:
    • Ridenominazione dell'intero progetto, soluzione .NET (HidaChat.sln), file di progetto (HidaChat.vbproj) ed eseguibile (HidaChat.exe) in vista dell'evoluzione a client multi-piattaforma (WhatsApp, Telegram, Teams, ecc.).
    • Aggiornati i namespace XML e code-behind in HidaChat.
    • Aggiornato il Mutex di istanza singola a Local\HidaChat_SingleInstance_Mutex.
    • Aggiornati tutti gli endpoint di aggiornamento automatico OTA e i link al nuovo repository ufficiale GitHub https://github.com/hidaba/HidaChat.
    • Aggiornati i workflow di GitHub Actions, lo script di pubblicazione publish.ps1, i template di issue e la documentazione completa.

[0.3.3-beta] - 2026-08-18

Portability & Refactoring

  • Punto 36 TODO — Spostamento settings.json e translations_cache.json in data/ (SettingsController.vb, Localization.vb):
    • I file di configurazione (settings.json) e della cache traduzioni (translations_cache.json) vengono ora gestiti e salvati direttamente all'interno della cartella portabile data/.
    • Implementata la migrazione automatica e trasparente dei file esistenti nella cartella principale (File.Move) verso data/ al primo avvio, garantendo la compatibilità con le installazioni precedenti e mantenendo pulita la radice dell'applicazione.
    • Aggiunta la creazione preventiva della directory di destinazione data/ in caso di prima installazione portabile pulita.

[0.3.2-beta] - 2026-08-17

Performance & Memory

  • Punto 35 TODO — Caricamento Lazy degli Script JS/CSS (JsScripts.vb, Scripts/):
    • Estratti gli script JavaScript e CSS in file dedicati incorporati nell'assembly (EmbeddedResource): theme.css, notification.js e translation.js.
    • Riscritto JsScripts.vb per caricare i template in modalità Lazy(Of String) ed effettuare sostituzioni in-place con StringBuilder, eliminando tutte le costanti XML literals statiche permanenti in RAM.
  • Persistenza Traduzioni su File (translations_cache.json):
    • Implementato TranslationCacheService per archiviare in modo permanente su disco (data/translations_cache.json con fallback in root) sia le traduzioni dell'interfaccia utente sia i testi/messaggi tradotti delle chat.
    • Aggiunta la consultazione preventiva della cache prima di ogni richiesta di traduzione (singola o batch): i testi già tradotti vengono restituiti istantaneamente dalla cache senza effettuare chiamate di rete a Google Translate.
    • Nelle traduzioni batch dell'intera pagina (translatePage), solo le nuove frasi non ancora presenti in cache vengono inviate a Google Translate, riducendo drasticamente il consumo di banda.
  • Ottimizzazione Memoria RAM per Traduzioni:
    • In memoria RAM vengono mantenuti esclusivamente i dizionari della lingua attualmente impostata.
    • Al cambio lingua in SettingsController, i dati della lingua precedente vengono salvati su disco e rimossi dalla memoria per essere raccolti dal GC, caricando in RAM solo la nuova lingua selezionata.

[0.3.1-beta] - 2026-08-15

Performance & Memory

  • Punto 10 & 32 TODO — Ottimizzazione e WeakReference nei Popup di Notifica (MessagePopup.xaml.vb):
    ...
Read more

HidaChat v0.5.0

Choose a tag to compare

@hidaba hidaba released this 18 Aug 08:49

Changelog

[0.5.0] - 2026-08-18

Multi-Platform & Rebranding Major Release

  • Rebranding Ufficiale in HidaChat:
    • Evoluzione dell'applicazione da client esclusivo per WhatsApp a client multi-piattaforma unificato (HidaChat).
    • Ridenominazione completa di soluzione, progetti, namespace ed eseguibili.
  • Supporto Multi-Account per WhatsApp e Telegram:
    • Possibilità di gestire contemporaneamente account WhatsApp e Telegram in schede separate con profili isolati.
    • Selezione della piattaforma in fase di creazione e configurazione dell'account nelle Impostazioni.
    • Icone vettoriali dedicate (verde per WhatsApp, azzurro per Telegram) nelle schede in alto e nella gestione account.
  • Nuovo Design Visivo Cyberpunk:
    • Nuova icona applicativa in stile cyberpunk neon con fumetto di chat olografico e circuiti digitali.
    • Nuova icona dedicata per la System Tray con badge luminoso per le notifiche attive.
  • Architettura & Portabilità:
    • Isolamento completo di tutti i file dati, impostazioni e profili WebView2 all'interno della cartella portabile data/.
    • Transizione fluida e forwarder per l'aggiornamento automatico dalle versioni legacy.

[0.4.2-beta] - 2026-08-18

Multi-Platform (WhatsApp & Telegram)

  • Supporto Account WhatsApp & Telegram:
    • Aggiunta la selezione del tipo di piattaforma (WhatsApp o Telegram) durante la creazione e la modifica degli account nelle Impostazioni.
    • Visualizzazione delle icone vettoriali dedicate (verde per WhatsApp, azzurro per Telegram) nelle schede account della barra principale e nella lista di gestione account.
    • Menu rapido contestuale sul pulsante + e su "Aggiungi account" per selezionare istantaneamente la piattaforma desiderata.
    • Routing automatico dell'URL specifico (https://web.whatsapp.com/ e https://web.telegram.org/k/) con profili isolati, gestione notifiche e supporto traduzioni.

[0.4.1-beta] - 2026-08-18

Visual & Assets

  • Nuova Icona Cyberpunk & Notifiche System Tray:
    • Introdotto il nuovo set di icone in stile cyberpunk con fumetto di chat olografico al neon (ciano/magenta) e tracciati digitali su sfondo dark.
    • Generati file .ico multi-risoluzione completi (da 16x16 a 256x256) per l'applicazione (icon.ico) e per le notifiche della System Tray con badge luminoso (icon_notification.ico).
    • Integrazione dell'eseguibile ponte e routine di pulizia automatica per la transizione fluida degli aggiornamenti dalle versioni precedenti.

[0.4.0-beta] - 2026-08-18

Rebranding & Multi-Platform Evolution

  • Rebranding Completo da WhatsAppH a HidaChat:
    • Ridenominazione dell'intero progetto, soluzione .NET (HidaChat.sln), file di progetto (HidaChat.vbproj) ed eseguibile (HidaChat.exe) in vista dell'evoluzione a client multi-piattaforma (WhatsApp, Telegram, Teams, ecc.).
    • Aggiornati i namespace XML e code-behind in HidaChat.
    • Aggiornato il Mutex di istanza singola a Local\HidaChat_SingleInstance_Mutex.
    • Aggiornati tutti gli endpoint di aggiornamento automatico OTA e i link al nuovo repository ufficiale GitHub https://github.com/hidaba/HidaChat.
    • Aggiornati i workflow di GitHub Actions, lo script di pubblicazione publish.ps1, i template di issue e la documentazione completa.

[0.3.3-beta] - 2026-08-18

Portability & Refactoring

  • Punto 36 TODO — Spostamento settings.json e translations_cache.json in data/ (SettingsController.vb, Localization.vb):
    • I file di configurazione (settings.json) e della cache traduzioni (translations_cache.json) vengono ora gestiti e salvati direttamente all'interno della cartella portabile data/.
    • Implementata la migrazione automatica e trasparente dei file esistenti nella cartella principale (File.Move) verso data/ al primo avvio, garantendo la compatibilità con le installazioni precedenti e mantenendo pulita la radice dell'applicazione.
    • Aggiunta la creazione preventiva della directory di destinazione data/ in caso di prima installazione portabile pulita.

[0.3.2-beta] - 2026-08-17

Performance & Memory

  • Punto 35 TODO — Caricamento Lazy degli Script JS/CSS (JsScripts.vb, Scripts/):
    • Estratti gli script JavaScript e CSS in file dedicati incorporati nell'assembly (EmbeddedResource): theme.css, notification.js e translation.js.
    • Riscritto JsScripts.vb per caricare i template in modalità Lazy(Of String) ed effettuare sostituzioni in-place con StringBuilder, eliminando tutte le costanti XML literals statiche permanenti in RAM.
  • Persistenza Traduzioni su File (translations_cache.json):
    • Implementato TranslationCacheService per archiviare in modo permanente su disco (data/translations_cache.json con fallback in root) sia le traduzioni dell'interfaccia utente sia i testi/messaggi tradotti delle chat.
    • Aggiunta la consultazione preventiva della cache prima di ogni richiesta di traduzione (singola o batch): i testi già tradotti vengono restituiti istantaneamente dalla cache senza effettuare chiamate di rete a Google Translate.
    • Nelle traduzioni batch dell'intera pagina (translatePage), solo le nuove frasi non ancora presenti in cache vengono inviate a Google Translate, riducendo drasticamente il consumo di banda.
  • Ottimizzazione Memoria RAM per Traduzioni:
    • In memoria RAM vengono mantenuti esclusivamente i dizionari della lingua attualmente impostata.
    • Al cambio lingua in SettingsController, i dati della lingua precedente vengono salvati su disco e rimossi dalla memoria per essere raccolti dal GC, caricando in RAM solo la nuova lingua selezionata.

[0.3.1-beta] - 2026-08-15

Performance & Memory

  • Punto 10 & 32 TODO — Ottimizzazione e WeakReference nei Popup di Notifica (MessagePopup.xaml.vb):
    • Implementato WeakReference(Of MessagePopup) nella lista statica dei popup attivi (_activePopups) con eliminazione automatica dei riferimenti raccolti dal GC, prevenendo memory leak in caso di popup non chiusi normalmente.
    • Sostituito il ricalcolo forzato e riposizionamento di tutti i popup attivi con il calcolo incrementale della posizione Y (PositionNewPopup()), impilando le nuove notifiche verso l'alto senza riposizionare o muovere i popup già visibili a schermo.
  • Punto 11 TODO — Ottimizzazione Cambio Account (MainWindow.xaml.vb):
    • Ottimizzato SwitchToAccountAsync() gestendo il ritorno anticipato se l'account richiesto è già attivo e nascondendo unicamente il controllo WebView del precedente account senza iterare l'intera gerarchia dei controlli.

[0.3.0] - 2026-08-13

Added & Features

  • Supporto Multi-Account fino a 3 Account: Gestione integrata e schede veloci per il cambio e aggiunta account in tempo reale (MainWindow.xaml, AccountManager.vb).
  • Finestra Informazioni (AboutWindow): Nuova interfaccia modale con dettagli versione, licenza Apache-2.0, percorso portabile e collegamenti rapidi (AboutWindow.xaml).
  • Pulizia Automatica Profili Orfani: Scansione ed eliminazione all'avvio delle directory profilate non più utilizzate (AccountManager.vb).
  • Documentazione Bilingue & Standard Community: Integrazione di README.md (EN) e README.it.md (IT), CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md e workflow GitHub Actions per la build automatica.

Fixed & Improved

  • Robustezza Aggiornamenti OTA: Gestione corretta dei suffissi di pre-release (-beta, -rc) e verifica stabilità nel confronto versioni (UpdateChecker.vb).
  • Gestione Notifiche Toast: Risolti crash e comportamenti anomali al click sulle notifiche di Windows (MainWindow.xaml.vb).
  • Performance Pennelli WPF: Caching ad alte prestazioni tramite il modulo BrushCache.vb.
  • Rinominazione Account in Tempo Reale: Le modifiche ai nomi degli account nelle impostazioni si riflettono istantaneamente sull'interfaccia.

[0.2.5-beta] - 2026-08-10

Fixed

  • Fix Confronto Versione OTA e Pre-release (UpdateChecker.vb): Perfezionato il confronto versioni in IsNewerVersion separando le componenti numeriche base dai suffissi di pre-release (es. -beta, -rc1). Permette di rilevare correttamente gli aggiornamenti beta rispetto alle versioni precedenti.

[0.2.4-beta] - 2026-08-08

Fixed

  • Pulizia Profili WebView2 Orfani (AccountManager.vb): Implementato il metodo CleanupUnusedProfilesAsync per scansionare la cartella data/webview ed eliminare automaticamente all'avvio le cartelle di profilo orfane (WV2Profile_*) i cui ID non sono più associati ad alcun account attivo.
  • Correzione Badge e Link (README.md, README.it.md): Corretti i badge di build ed i link commit per puntare al branch master ed eliminate le istruzioni di build contenenti percorsi non validi.

[0.2.3-beta] - 2026-08-07

Fixed

  • Fix Crash Notifiche Toast (MainWindow.xaml.vb): Risolto NullReferenceException al click su notifiche Toast di Windows con argomenti mancanti o malformati mediante l'helper ExtractArg.
  • Fix Click Notifiche Toast (MainWindow.xaml.vb, MessagePopup.xaml.vb): Sostituita la chiamata a ToggleWindow() con ShowWindow() nel gestore notifiche Toast per evitare che un click nasconda la finestra se già visibile in primo piano.

[0.2.2-beta] - 2026-08-06

Added

  • Supporto Multi-Account fino a 3 Account WhatsApp:
    • Aggiunto il pulsante + nella barra orizzontale delle schede in MainWindow.xaml per la creazione immediata ed il passaggio al nuovo account.
    • Aggiunto il controllo ed il contatore di account (Account configurati: X su 3) nella finestra SettingsWindow.xaml.
    • Implementata la verifica ed il blocco rigido del limite massimo in AccountManager.vb (MaxAccounts = 3, CanAddAccount).
    • Isolamento completo delle sessioni WhatsApp Web e dei dati di profilo WebView2 su disco (WV2Profile_<id>).
    • A...
Read more

HidaChat v0.4.2

HidaChat v0.4.2 Pre-release
Pre-release

Choose a tag to compare

@hidaba hidaba released this 18 Aug 08:43

Changelog

[0.4.2-beta] - 2026-08-18

Multi-Platform (WhatsApp & Telegram)

  • Supporto Account WhatsApp & Telegram:
    • Aggiunta la selezione del tipo di piattaforma (WhatsApp o Telegram) durante la creazione e la modifica degli account nelle Impostazioni.
    • Visualizzazione delle icone vettoriali dedicate (verde per WhatsApp, azzurro per Telegram) nelle schede account della barra principale e nella lista di gestione account.
    • Menu rapido contestuale sul pulsante + e su "Aggiungi account" per selezionare istantaneamente la piattaforma desiderata.
    • Routing automatico dell'URL specifico (https://web.whatsapp.com/ e https://web.telegram.org/k/) con profili isolati, gestione notifiche e supporto traduzioni.

[0.4.1-beta] - 2026-08-18

Visual & Assets

  • Nuova Icona Cyberpunk & Notifiche System Tray:
    • Introdotto il nuovo set di icone in stile cyberpunk con fumetto di chat olografico al neon (ciano/magenta) e tracciati digitali su sfondo dark.
    • Generati file .ico multi-risoluzione completi (da 16x16 a 256x256) per l'applicazione (icon.ico) e per le notifiche della System Tray con badge luminoso (icon_notification.ico).
    • Integrazione dell'eseguibile ponte e routine di pulizia automatica per la transizione fluida degli aggiornamenti dalle versioni precedenti.

[0.4.0-beta] - 2026-08-18

Rebranding & Multi-Platform Evolution

  • Rebranding Completo da WhatsAppH a HidaChat:
    • Ridenominazione dell'intero progetto, soluzione .NET (HidaChat.sln), file di progetto (HidaChat.vbproj) ed eseguibile (HidaChat.exe) in vista dell'evoluzione a client multi-piattaforma (WhatsApp, Telegram, Teams, ecc.).
    • Aggiornati i namespace XML e code-behind in HidaChat.
    • Aggiornato il Mutex di istanza singola a Local\HidaChat_SingleInstance_Mutex.
    • Aggiornati tutti gli endpoint di aggiornamento automatico OTA e i link al nuovo repository ufficiale GitHub https://github.com/hidaba/HidaChat.
    • Aggiornati i workflow di GitHub Actions, lo script di pubblicazione publish.ps1, i template di issue e la documentazione completa.

[0.3.3-beta] - 2026-08-18

Portability & Refactoring

  • Punto 36 TODO — Spostamento settings.json e translations_cache.json in data/ (SettingsController.vb, Localization.vb):
    • I file di configurazione (settings.json) e della cache traduzioni (translations_cache.json) vengono ora gestiti e salvati direttamente all'interno della cartella portabile data/.
    • Implementata la migrazione automatica e trasparente dei file esistenti nella cartella principale (File.Move) verso data/ al primo avvio, garantendo la compatibilità con le installazioni precedenti e mantenendo pulita la radice dell'applicazione.
    • Aggiunta la creazione preventiva della directory di destinazione data/ in caso di prima installazione portabile pulita.

[0.3.2-beta] - 2026-08-17

Performance & Memory

  • Punto 35 TODO — Caricamento Lazy degli Script JS/CSS (JsScripts.vb, Scripts/):
    • Estratti gli script JavaScript e CSS in file dedicati incorporati nell'assembly (EmbeddedResource): theme.css, notification.js e translation.js.
    • Riscritto JsScripts.vb per caricare i template in modalità Lazy(Of String) ed effettuare sostituzioni in-place con StringBuilder, eliminando tutte le costanti XML literals statiche permanenti in RAM.
  • Persistenza Traduzioni su File (translations_cache.json):
    • Implementato TranslationCacheService per archiviare in modo permanente su disco (data/translations_cache.json con fallback in root) sia le traduzioni dell'interfaccia utente sia i testi/messaggi tradotti delle chat.
    • Aggiunta la consultazione preventiva della cache prima di ogni richiesta di traduzione (singola o batch): i testi già tradotti vengono restituiti istantaneamente dalla cache senza effettuare chiamate di rete a Google Translate.
    • Nelle traduzioni batch dell'intera pagina (translatePage), solo le nuove frasi non ancora presenti in cache vengono inviate a Google Translate, riducendo drasticamente il consumo di banda.
  • Ottimizzazione Memoria RAM per Traduzioni:
    • In memoria RAM vengono mantenuti esclusivamente i dizionari della lingua attualmente impostata.
    • Al cambio lingua in SettingsController, i dati della lingua precedente vengono salvati su disco e rimossi dalla memoria per essere raccolti dal GC, caricando in RAM solo la nuova lingua selezionata.

[0.3.1-beta] - 2026-08-15

Performance & Memory

  • Punto 10 & 32 TODO — Ottimizzazione e WeakReference nei Popup di Notifica (MessagePopup.xaml.vb):
    • Implementato WeakReference(Of MessagePopup) nella lista statica dei popup attivi (_activePopups) con eliminazione automatica dei riferimenti raccolti dal GC, prevenendo memory leak in caso di popup non chiusi normalmente.
    • Sostituito il ricalcolo forzato e riposizionamento di tutti i popup attivi con il calcolo incrementale della posizione Y (PositionNewPopup()), impilando le nuove notifiche verso l'alto senza riposizionare o muovere i popup già visibili a schermo.
  • Punto 11 TODO — Ottimizzazione Cambio Account (MainWindow.xaml.vb):
    • Ottimizzato SwitchToAccountAsync() gestendo il ritorno anticipato se l'account richiesto è già attivo e nascondendo unicamente il controllo WebView del precedente account senza iterare l'intera gerarchia dei controlli.

[0.3.0] - 2026-08-13

Added & Features

  • Supporto Multi-Account fino a 3 Account: Gestione integrata e schede veloci per il cambio e aggiunta account in tempo reale (MainWindow.xaml, AccountManager.vb).
  • Finestra Informazioni (AboutWindow): Nuova interfaccia modale con dettagli versione, licenza Apache-2.0, percorso portabile e collegamenti rapidi (AboutWindow.xaml).
  • Pulizia Automatica Profili Orfani: Scansione ed eliminazione all'avvio delle directory profilate non più utilizzate (AccountManager.vb).
  • Documentazione Bilingue & Standard Community: Integrazione di README.md (EN) e README.it.md (IT), CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md e workflow GitHub Actions per la build automatica.

Fixed & Improved

  • Robustezza Aggiornamenti OTA: Gestione corretta dei suffissi di pre-release (-beta, -rc) e verifica stabilità nel confronto versioni (UpdateChecker.vb).
  • Gestione Notifiche Toast: Risolti crash e comportamenti anomali al click sulle notifiche di Windows (MainWindow.xaml.vb).
  • Performance Pennelli WPF: Caching ad alte prestazioni tramite il modulo BrushCache.vb.
  • Rinominazione Account in Tempo Reale: Le modifiche ai nomi degli account nelle impostazioni si riflettono istantaneamente sull'interfaccia.

[0.2.5-beta] - 2026-08-10

Fixed

  • Fix Confronto Versione OTA e Pre-release (UpdateChecker.vb): Perfezionato il confronto versioni in IsNewerVersion separando le componenti numeriche base dai suffissi di pre-release (es. -beta, -rc1). Permette di rilevare correttamente gli aggiornamenti beta rispetto alle versioni precedenti.

[0.2.4-beta] - 2026-08-08

Fixed

  • Pulizia Profili WebView2 Orfani (AccountManager.vb): Implementato il metodo CleanupUnusedProfilesAsync per scansionare la cartella data/webview ed eliminare automaticamente all'avvio le cartelle di profilo orfane (WV2Profile_*) i cui ID non sono più associati ad alcun account attivo.
  • Correzione Badge e Link (README.md, README.it.md): Corretti i badge di build ed i link commit per puntare al branch master ed eliminate le istruzioni di build contenenti percorsi non validi.

[0.2.3-beta] - 2026-08-07

Fixed

  • Fix Crash Notifiche Toast (MainWindow.xaml.vb): Risolto NullReferenceException al click su notifiche Toast di Windows con argomenti mancanti o malformati mediante l'helper ExtractArg.
  • Fix Click Notifiche Toast (MainWindow.xaml.vb, MessagePopup.xaml.vb): Sostituita la chiamata a ToggleWindow() con ShowWindow() nel gestore notifiche Toast per evitare che un click nasconda la finestra se già visibile in primo piano.

[0.2.2-beta] - 2026-08-06

Added

  • Supporto Multi-Account fino a 3 Account WhatsApp:
    • Aggiunto il pulsante + nella barra orizzontale delle schede in MainWindow.xaml per la creazione immediata ed il passaggio al nuovo account.
    • Aggiunto il controllo ed il contatore di account (Account configurati: X su 3) nella finestra SettingsWindow.xaml.
    • Implementata la verifica ed il blocco rigido del limite massimo in AccountManager.vb (MaxAccounts = 3, CanAddAccount).
    • Isolamento completo delle sessioni WhatsApp Web e dei dati di profilo WebView2 su disco (WV2Profile_<id>).
    • Aggiunte le stringhe di localizzazione multilingua per i limiti e le azioni di gestione account.
  • Finestra "Informazioni" (AboutWindow):
    • Creata la finestra modale AboutWindow.xaml accessibile tramite il nuovo pulsante nella barra del titolo, dalle Impostazioni e dal menu contestuale della tray icon.
    • Mostra l'autore (Massimo Balestrieri), la versione (v0.2.2), la data di rilascio (2026-08-06), la licenza (Apache-2.0), il runtime (.NET 9 + WebView2), il percorso dati portabile (data/webview) ed i link diretti a GitHub, Releases e segnalazione bug.

Performance & Refactored

  • Punto 29 TODO (AccountManager.vb): Eliminata la proiezione con tipi anonimi a ogni salvataggio delle impostazioni. Serializzazione diretta della collezione _accounts per ridurre la pressione sul Garbage Collector.
  • Punto 7 TODO (TODO.md): Chiuso e contrassegnato come obsoleto il punto 7 sull'aggiornamento OTA tramite percorso di rete UNC (ReadVersionFromFileAsync()), in quanto il percorso di rete è stato dismesso ed interamente sostituito dalle API REST di GitHub Releases fin dalla v0.2.0.

Fixed

  • **Aggiornamento Nome Account in Tempo Real...
Read more

HidaChat v0.4.1

HidaChat v0.4.1 Pre-release
Pre-release

Choose a tag to compare

@hidaba hidaba released this 18 Aug 08:28

Changelog

[0.4.1-beta] - 2026-08-18

Visual & Assets

  • Nuova Icona Cyberpunk & Notifiche System Tray:
    • Introdotto il nuovo set di icone in stile cyberpunk con fumetto di chat olografico al neon (ciano/magenta) e tracciati digitali su sfondo dark.
    • Generati file .ico multi-risoluzione completi (da 16x16 a 256x256) per l'applicazione (icon.ico) e per le notifiche della System Tray con badge luminoso (icon_notification.ico).
    • Integrazione dell'eseguibile ponte e routine di pulizia automatica per la transizione fluida degli aggiornamenti dalle versioni precedenti.

[0.4.0-beta] - 2026-08-18

Rebranding & Multi-Platform Evolution

  • Rebranding Completo da WhatsAppH a HidaChat:
    • Ridenominazione dell'intero progetto, soluzione .NET (HidaChat.sln), file di progetto (HidaChat.vbproj) ed eseguibile (HidaChat.exe) in vista dell'evoluzione a client multi-piattaforma (WhatsApp, Telegram, Teams, ecc.).
    • Aggiornati i namespace XML e code-behind in HidaChat.
    • Aggiornato il Mutex di istanza singola a Local\HidaChat_SingleInstance_Mutex.
    • Aggiornati tutti gli endpoint di aggiornamento automatico OTA e i link al nuovo repository ufficiale GitHub https://github.com/hidaba/HidaChat.
    • Aggiornati i workflow di GitHub Actions, lo script di pubblicazione publish.ps1, i template di issue e la documentazione completa.

[0.3.3-beta] - 2026-08-18

Portability & Refactoring

  • Punto 36 TODO — Spostamento settings.json e translations_cache.json in data/ (SettingsController.vb, Localization.vb):
    • I file di configurazione (settings.json) e della cache traduzioni (translations_cache.json) vengono ora gestiti e salvati direttamente all'interno della cartella portabile data/.
    • Implementata la migrazione automatica e trasparente dei file esistenti nella cartella principale (File.Move) verso data/ al primo avvio, garantendo la compatibilità con le installazioni precedenti e mantenendo pulita la radice dell'applicazione.
    • Aggiunta la creazione preventiva della directory di destinazione data/ in caso di prima installazione portabile pulita.

[0.3.2-beta] - 2026-08-17

Performance & Memory

  • Punto 35 TODO — Caricamento Lazy degli Script JS/CSS (JsScripts.vb, Scripts/):
    • Estratti gli script JavaScript e CSS in file dedicati incorporati nell'assembly (EmbeddedResource): theme.css, notification.js e translation.js.
    • Riscritto JsScripts.vb per caricare i template in modalità Lazy(Of String) ed effettuare sostituzioni in-place con StringBuilder, eliminando tutte le costanti XML literals statiche permanenti in RAM.
  • Persistenza Traduzioni su File (translations_cache.json):
    • Implementato TranslationCacheService per archiviare in modo permanente su disco (data/translations_cache.json con fallback in root) sia le traduzioni dell'interfaccia utente sia i testi/messaggi tradotti delle chat.
    • Aggiunta la consultazione preventiva della cache prima di ogni richiesta di traduzione (singola o batch): i testi già tradotti vengono restituiti istantaneamente dalla cache senza effettuare chiamate di rete a Google Translate.
    • Nelle traduzioni batch dell'intera pagina (translatePage), solo le nuove frasi non ancora presenti in cache vengono inviate a Google Translate, riducendo drasticamente il consumo di banda.
  • Ottimizzazione Memoria RAM per Traduzioni:
    • In memoria RAM vengono mantenuti esclusivamente i dizionari della lingua attualmente impostata.
    • Al cambio lingua in SettingsController, i dati della lingua precedente vengono salvati su disco e rimossi dalla memoria per essere raccolti dal GC, caricando in RAM solo la nuova lingua selezionata.

[0.3.1-beta] - 2026-08-15

Performance & Memory

  • Punto 10 & 32 TODO — Ottimizzazione e WeakReference nei Popup di Notifica (MessagePopup.xaml.vb):
    • Implementato WeakReference(Of MessagePopup) nella lista statica dei popup attivi (_activePopups) con eliminazione automatica dei riferimenti raccolti dal GC, prevenendo memory leak in caso di popup non chiusi normalmente.
    • Sostituito il ricalcolo forzato e riposizionamento di tutti i popup attivi con il calcolo incrementale della posizione Y (PositionNewPopup()), impilando le nuove notifiche verso l'alto senza riposizionare o muovere i popup già visibili a schermo.
  • Punto 11 TODO — Ottimizzazione Cambio Account (MainWindow.xaml.vb):
    • Ottimizzato SwitchToAccountAsync() gestendo il ritorno anticipato se l'account richiesto è già attivo e nascondendo unicamente il controllo WebView del precedente account senza iterare l'intera gerarchia dei controlli.

[0.3.0] - 2026-08-13

Added & Features

  • Supporto Multi-Account fino a 3 Account: Gestione integrata e schede veloci per il cambio e aggiunta account in tempo reale (MainWindow.xaml, AccountManager.vb).
  • Finestra Informazioni (AboutWindow): Nuova interfaccia modale con dettagli versione, licenza Apache-2.0, percorso portabile e collegamenti rapidi (AboutWindow.xaml).
  • Pulizia Automatica Profili Orfani: Scansione ed eliminazione all'avvio delle directory profilate non più utilizzate (AccountManager.vb).
  • Documentazione Bilingue & Standard Community: Integrazione di README.md (EN) e README.it.md (IT), CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md e workflow GitHub Actions per la build automatica.

Fixed & Improved

  • Robustezza Aggiornamenti OTA: Gestione corretta dei suffissi di pre-release (-beta, -rc) e verifica stabilità nel confronto versioni (UpdateChecker.vb).
  • Gestione Notifiche Toast: Risolti crash e comportamenti anomali al click sulle notifiche di Windows (MainWindow.xaml.vb).
  • Performance Pennelli WPF: Caching ad alte prestazioni tramite il modulo BrushCache.vb.
  • Rinominazione Account in Tempo Reale: Le modifiche ai nomi degli account nelle impostazioni si riflettono istantaneamente sull'interfaccia.

[0.2.5-beta] - 2026-08-10

Fixed

  • Fix Confronto Versione OTA e Pre-release (UpdateChecker.vb): Perfezionato il confronto versioni in IsNewerVersion separando le componenti numeriche base dai suffissi di pre-release (es. -beta, -rc1). Permette di rilevare correttamente gli aggiornamenti beta rispetto alle versioni precedenti.

[0.2.4-beta] - 2026-08-08

Fixed

  • Pulizia Profili WebView2 Orfani (AccountManager.vb): Implementato il metodo CleanupUnusedProfilesAsync per scansionare la cartella data/webview ed eliminare automaticamente all'avvio le cartelle di profilo orfane (WV2Profile_*) i cui ID non sono più associati ad alcun account attivo.
  • Correzione Badge e Link (README.md, README.it.md): Corretti i badge di build ed i link commit per puntare al branch master ed eliminate le istruzioni di build contenenti percorsi non validi.

[0.2.3-beta] - 2026-08-07

Fixed

  • Fix Crash Notifiche Toast (MainWindow.xaml.vb): Risolto NullReferenceException al click su notifiche Toast di Windows con argomenti mancanti o malformati mediante l'helper ExtractArg.
  • Fix Click Notifiche Toast (MainWindow.xaml.vb, MessagePopup.xaml.vb): Sostituita la chiamata a ToggleWindow() con ShowWindow() nel gestore notifiche Toast per evitare che un click nasconda la finestra se già visibile in primo piano.

[0.2.2-beta] - 2026-08-06

Added

  • Supporto Multi-Account fino a 3 Account WhatsApp:
    • Aggiunto il pulsante + nella barra orizzontale delle schede in MainWindow.xaml per la creazione immediata ed il passaggio al nuovo account.
    • Aggiunto il controllo ed il contatore di account (Account configurati: X su 3) nella finestra SettingsWindow.xaml.
    • Implementata la verifica ed il blocco rigido del limite massimo in AccountManager.vb (MaxAccounts = 3, CanAddAccount).
    • Isolamento completo delle sessioni WhatsApp Web e dei dati di profilo WebView2 su disco (WV2Profile_<id>).
    • Aggiunte le stringhe di localizzazione multilingua per i limiti e le azioni di gestione account.
  • Finestra "Informazioni" (AboutWindow):
    • Creata la finestra modale AboutWindow.xaml accessibile tramite il nuovo pulsante nella barra del titolo, dalle Impostazioni e dal menu contestuale della tray icon.
    • Mostra l'autore (Massimo Balestrieri), la versione (v0.2.2), la data di rilascio (2026-08-06), la licenza (Apache-2.0), il runtime (.NET 9 + WebView2), il percorso dati portabile (data/webview) ed i link diretti a GitHub, Releases e segnalazione bug.

Performance & Refactored

  • Punto 29 TODO (AccountManager.vb): Eliminata la proiezione con tipi anonimi a ogni salvataggio delle impostazioni. Serializzazione diretta della collezione _accounts per ridurre la pressione sul Garbage Collector.
  • Punto 7 TODO (TODO.md): Chiuso e contrassegnato come obsoleto il punto 7 sull'aggiornamento OTA tramite percorso di rete UNC (ReadVersionFromFileAsync()), in quanto il percorso di rete è stato dismesso ed interamente sostituito dalle API REST di GitHub Releases fin dalla v0.2.0.

Fixed

  • Aggiornamento Nome Account in Tempo Reale nelle Schede (WhatsAppAccount.vb): Aggiunto il sollevamento dell'evento PropertyChanged per la proprietà Name in WhatsAppAccount.vb. La rinomina degli account nelle Impostazioni viene ora riflessa istantaneamente sui pulsanti delle schede nella finestra principale senza dover riavviare o riaprire l'applicazione.

[0.2.1-beta] - 2026-08-06

Added & Refactored

  • Miglioramento Visibilità & Sicurezza Repository: Rimossi i riferimenti all'IP e percorso di rete legacy in ANALISI_PROGETTO.md. Allineato il distintivo ed il testo della licenza ad Apache 2.0.
  • Documentazione Bilingue & Asset Grafici: Aggiunti i file README.md (inglese) e README.it.md (italiano) con selettore di lingua, tabella comparat...
Read more

HidaChat v0.4.0

HidaChat v0.4.0 Pre-release
Pre-release

Choose a tag to compare

@hidaba hidaba released this 18 Aug 07:50

Changelog

[0.4.0-beta] - 2026-08-18

Rebranding & Multi-Platform Evolution

  • Rebranding Completo da WhatsAppH a HidaChat:
    • Ridenominazione dell'intero progetto, soluzione .NET (HidaChat.sln), file di progetto (HidaChat.vbproj) ed eseguibile (HidaChat.exe) in vista dell'evoluzione a client multi-piattaforma (WhatsApp, Telegram, Teams, ecc.).
    • Aggiornati i namespace XML e code-behind in HidaChat.
    • Aggiornato il Mutex di istanza singola a Local\HidaChat_SingleInstance_Mutex.
    • Aggiornati tutti gli endpoint di aggiornamento automatico OTA e i link al nuovo repository ufficiale GitHub https://github.com/hidaba/HidaChat.
    • Aggiornati i workflow di GitHub Actions, lo script di pubblicazione publish.ps1, i template di issue e la documentazione completa.

[0.3.3-beta] - 2026-08-18

Portability & Refactoring

  • Punto 36 TODO — Spostamento settings.json e translations_cache.json in data/ (SettingsController.vb, Localization.vb):
    • I file di configurazione (settings.json) e della cache traduzioni (translations_cache.json) vengono ora gestiti e salvati direttamente all'interno della cartella portabile data/.
    • Implementata la migrazione automatica e trasparente dei file esistenti nella cartella principale (File.Move) verso data/ al primo avvio, garantendo la compatibilità con le installazioni precedenti e mantenendo pulita la radice dell'applicazione.
    • Aggiunta la creazione preventiva della directory di destinazione data/ in caso di prima installazione portabile pulita.

[0.3.2-beta] - 2026-08-17

Performance & Memory

  • Punto 35 TODO — Caricamento Lazy degli Script JS/CSS (JsScripts.vb, Scripts/):
    • Estratti gli script JavaScript e CSS in file dedicati incorporati nell'assembly (EmbeddedResource): theme.css, notification.js e translation.js.
    • Riscritto JsScripts.vb per caricare i template in modalità Lazy(Of String) ed effettuare sostituzioni in-place con StringBuilder, eliminando tutte le costanti XML literals statiche permanenti in RAM.
  • Persistenza Traduzioni su File (translations_cache.json):
    • Implementato TranslationCacheService per archiviare in modo permanente su disco (data/translations_cache.json con fallback in root) sia le traduzioni dell'interfaccia utente sia i testi/messaggi tradotti delle chat.
    • Aggiunta la consultazione preventiva della cache prima di ogni richiesta di traduzione (singola o batch): i testi già tradotti vengono restituiti istantaneamente dalla cache senza effettuare chiamate di rete a Google Translate.
    • Nelle traduzioni batch dell'intera pagina (translatePage), solo le nuove frasi non ancora presenti in cache vengono inviate a Google Translate, riducendo drasticamente il consumo di banda.
  • Ottimizzazione Memoria RAM per Traduzioni:
    • In memoria RAM vengono mantenuti esclusivamente i dizionari della lingua attualmente impostata.
    • Al cambio lingua in SettingsController, i dati della lingua precedente vengono salvati su disco e rimossi dalla memoria per essere raccolti dal GC, caricando in RAM solo la nuova lingua selezionata.

[0.3.1-beta] - 2026-08-15

Performance & Memory

  • Punto 10 & 32 TODO — Ottimizzazione e WeakReference nei Popup di Notifica (MessagePopup.xaml.vb):
    • Implementato WeakReference(Of MessagePopup) nella lista statica dei popup attivi (_activePopups) con eliminazione automatica dei riferimenti raccolti dal GC, prevenendo memory leak in caso di popup non chiusi normalmente.
    • Sostituito il ricalcolo forzato e riposizionamento di tutti i popup attivi con il calcolo incrementale della posizione Y (PositionNewPopup()), impilando le nuove notifiche verso l'alto senza riposizionare o muovere i popup già visibili a schermo.
  • Punto 11 TODO — Ottimizzazione Cambio Account (MainWindow.xaml.vb):
    • Ottimizzato SwitchToAccountAsync() gestendo il ritorno anticipato se l'account richiesto è già attivo e nascondendo unicamente il controllo WebView del precedente account senza iterare l'intera gerarchia dei controlli.

[0.3.0] - 2026-08-13

Added & Features

  • Supporto Multi-Account fino a 3 Account: Gestione integrata e schede veloci per il cambio e aggiunta account in tempo reale (MainWindow.xaml, AccountManager.vb).
  • Finestra Informazioni (AboutWindow): Nuova interfaccia modale con dettagli versione, licenza Apache-2.0, percorso portabile e collegamenti rapidi (AboutWindow.xaml).
  • Pulizia Automatica Profili Orfani: Scansione ed eliminazione all'avvio delle directory profilate non più utilizzate (AccountManager.vb).
  • Documentazione Bilingue & Standard Community: Integrazione di README.md (EN) e README.it.md (IT), CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md e workflow GitHub Actions per la build automatica.

Fixed & Improved

  • Robustezza Aggiornamenti OTA: Gestione corretta dei suffissi di pre-release (-beta, -rc) e verifica stabilità nel confronto versioni (UpdateChecker.vb).
  • Gestione Notifiche Toast: Risolti crash e comportamenti anomali al click sulle notifiche di Windows (MainWindow.xaml.vb).
  • Performance Pennelli WPF: Caching ad alte prestazioni tramite il modulo BrushCache.vb.
  • Rinominazione Account in Tempo Reale: Le modifiche ai nomi degli account nelle impostazioni si riflettono istantaneamente sull'interfaccia.

[0.2.5-beta] - 2026-08-10

Fixed

  • Fix Confronto Versione OTA e Pre-release (UpdateChecker.vb): Perfezionato il confronto versioni in IsNewerVersion separando le componenti numeriche base dai suffissi di pre-release (es. -beta, -rc1). Permette di rilevare correttamente gli aggiornamenti beta rispetto alle versioni precedenti.

[0.2.4-beta] - 2026-08-08

Fixed

  • Pulizia Profili WebView2 Orfani (AccountManager.vb): Implementato il metodo CleanupUnusedProfilesAsync per scansionare la cartella data/webview ed eliminare automaticamente all'avvio le cartelle di profilo orfane (WV2Profile_*) i cui ID non sono più associati ad alcun account attivo.
  • Correzione Badge e Link (README.md, README.it.md): Corretti i badge di build ed i link commit per puntare al branch master ed eliminate le istruzioni di build contenenti percorsi non validi.

[0.2.3-beta] - 2026-08-07

Fixed

  • Fix Crash Notifiche Toast (MainWindow.xaml.vb): Risolto NullReferenceException al click su notifiche Toast di Windows con argomenti mancanti o malformati mediante l'helper ExtractArg.
  • Fix Click Notifiche Toast (MainWindow.xaml.vb, MessagePopup.xaml.vb): Sostituita la chiamata a ToggleWindow() con ShowWindow() nel gestore notifiche Toast per evitare che un click nasconda la finestra se già visibile in primo piano.

[0.2.2-beta] - 2026-08-06

Added

  • Supporto Multi-Account fino a 3 Account WhatsApp:
    • Aggiunto il pulsante + nella barra orizzontale delle schede in MainWindow.xaml per la creazione immediata ed il passaggio al nuovo account.
    • Aggiunto il controllo ed il contatore di account (Account configurati: X su 3) nella finestra SettingsWindow.xaml.
    • Implementata la verifica ed il blocco rigido del limite massimo in AccountManager.vb (MaxAccounts = 3, CanAddAccount).
    • Isolamento completo delle sessioni WhatsApp Web e dei dati di profilo WebView2 su disco (WV2Profile_<id>).
    • Aggiunte le stringhe di localizzazione multilingua per i limiti e le azioni di gestione account.
  • Finestra "Informazioni" (AboutWindow):
    • Creata la finestra modale AboutWindow.xaml accessibile tramite il nuovo pulsante nella barra del titolo, dalle Impostazioni e dal menu contestuale della tray icon.
    • Mostra l'autore (Massimo Balestrieri), la versione (v0.2.2), la data di rilascio (2026-08-06), la licenza (Apache-2.0), il runtime (.NET 9 + WebView2), il percorso dati portabile (data/webview) ed i link diretti a GitHub, Releases e segnalazione bug.

Performance & Refactored

  • Punto 29 TODO (AccountManager.vb): Eliminata la proiezione con tipi anonimi a ogni salvataggio delle impostazioni. Serializzazione diretta della collezione _accounts per ridurre la pressione sul Garbage Collector.
  • Punto 7 TODO (TODO.md): Chiuso e contrassegnato come obsoleto il punto 7 sull'aggiornamento OTA tramite percorso di rete UNC (ReadVersionFromFileAsync()), in quanto il percorso di rete è stato dismesso ed interamente sostituito dalle API REST di GitHub Releases fin dalla v0.2.0.

Fixed

  • Aggiornamento Nome Account in Tempo Reale nelle Schede (WhatsAppAccount.vb): Aggiunto il sollevamento dell'evento PropertyChanged per la proprietà Name in WhatsAppAccount.vb. La rinomina degli account nelle Impostazioni viene ora riflessa istantaneamente sui pulsanti delle schede nella finestra principale senza dover riavviare o riaprire l'applicazione.

[0.2.1-beta] - 2026-08-06

Added & Refactored

  • Miglioramento Visibilità & Sicurezza Repository: Rimossi i riferimenti all'IP e percorso di rete legacy in ANALISI_PROGETTO.md. Allineato il distintivo ed il testo della licenza ad Apache 2.0.
  • Documentazione Bilingue & Asset Grafici: Aggiunti i file README.md (inglese) e README.it.md (italiano) con selettore di lingua, tabella comparativa "Why HidaChat", galleria di screenshot (images/) e requisiti.
  • Standard Community & CI/CD: Introdotti CONTRIBUTING.md, CODE_OF_CONDUCT.md (v2.1), SECURITY.md, template per segnalazione bug e feature request, e workflow GitHub Actions .github/workflows/build.yml per la compilazione automatica .NET 9.

[0.2.0] - 2026-08-05

Changed & Refactored

  • Centralizzazione Aggiornamenti OTA su GitHub Releases: Rimossa la dipendenza e la logica di fallback sul percorso di rete locale dismesso (UpdateFilesPath). Il sistema di aggiornamento automatico OTA opera...
Read more

WhatsappH v0.3.3

WhatsappH v0.3.3 Pre-release
Pre-release

Choose a tag to compare

@hidaba hidaba released this 18 Aug 06:30

Changelog

[0.3.3-beta] - 2026-08-18

Portability & Refactoring

  • Punto 36 TODO — Spostamento settings.json e translations_cache.json in data/ (SettingsController.vb, Localization.vb):
    • I file di configurazione (settings.json) e della cache traduzioni (translations_cache.json) vengono ora gestiti e salvati direttamente all'interno della cartella portabile data/.
    • Implementata la migrazione automatica e trasparente dei file esistenti nella cartella principale (File.Move) verso data/ al primo avvio, garantendo la compatibilità con le installazioni precedenti e mantenendo pulita la radice dell'applicazione.
    • Aggiunta la creazione preventiva della directory di destinazione data/ in caso di prima installazione portabile pulita.

[0.3.2-beta] - 2026-08-17

Performance & Memory

  • Punto 35 TODO — Caricamento Lazy degli Script JS/CSS (JsScripts.vb, Scripts/):
    • Estratti gli script JavaScript e CSS in file dedicati incorporati nell'assembly (EmbeddedResource): theme.css, notification.js e translation.js.
    • Riscritto JsScripts.vb per caricare i template in modalità Lazy(Of String) ed effettuare sostituzioni in-place con StringBuilder, eliminando tutte le costanti XML literals statiche permanenti in RAM.
  • Persistenza Traduzioni su File (translations_cache.json):
    • Implementato TranslationCacheService per archiviare in modo permanente su disco (data/translations_cache.json con fallback in root) sia le traduzioni dell'interfaccia utente sia i testi/messaggi tradotti delle chat.
    • Aggiunta la consultazione preventiva della cache prima di ogni richiesta di traduzione (singola o batch): i testi già tradotti vengono restituiti istantaneamente dalla cache senza effettuare chiamate di rete a Google Translate.
    • Nelle traduzioni batch dell'intera pagina (translatePage), solo le nuove frasi non ancora presenti in cache vengono inviate a Google Translate, riducendo drasticamente il consumo di banda.
  • Ottimizzazione Memoria RAM per Traduzioni:
    • In memoria RAM vengono mantenuti esclusivamente i dizionari della lingua attualmente impostata.
    • Al cambio lingua in SettingsController, i dati della lingua precedente vengono salvati su disco e rimossi dalla memoria per essere raccolti dal GC, caricando in RAM solo la nuova lingua selezionata.

[0.3.1-beta] - 2026-08-15

Performance & Memory

  • Punto 10 & 32 TODO — Ottimizzazione e WeakReference nei Popup di Notifica (MessagePopup.xaml.vb):
    • Implementato WeakReference(Of MessagePopup) nella lista statica dei popup attivi (_activePopups) con eliminazione automatica dei riferimenti raccolti dal GC, prevenendo memory leak in caso di popup non chiusi normalmente.
    • Sostituito il ricalcolo forzato e riposizionamento di tutti i popup attivi con il calcolo incrementale della posizione Y (PositionNewPopup()), impilando le nuove notifiche verso l'alto senza riposizionare o muovere i popup già visibili a schermo.
  • Punto 11 TODO — Ottimizzazione Cambio Account (MainWindow.xaml.vb):
    • Ottimizzato SwitchToAccountAsync() gestendo il ritorno anticipato se l'account richiesto è già attivo e nascondendo unicamente il controllo WebView del precedente account senza iterare l'intera gerarchia dei controlli.

[0.3.0] - 2026-08-13

Added & Features

  • Supporto Multi-Account fino a 3 Account: Gestione integrata e schede veloci per il cambio e aggiunta account in tempo reale (MainWindow.xaml, AccountManager.vb).
  • Finestra Informazioni (AboutWindow): Nuova interfaccia modale con dettagli versione, licenza Apache-2.0, percorso portabile e collegamenti rapidi (AboutWindow.xaml).
  • Pulizia Automatica Profili Orfani: Scansione ed eliminazione all'avvio delle directory profilate non più utilizzate (AccountManager.vb).
  • Documentazione Bilingue & Standard Community: Integrazione di README.md (EN) e README.it.md (IT), CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md e workflow GitHub Actions per la build automatica.

Fixed & Improved

  • Robustezza Aggiornamenti OTA: Gestione corretta dei suffissi di pre-release (-beta, -rc) e verifica stabilità nel confronto versioni (UpdateChecker.vb).
  • Gestione Notifiche Toast: Risolti crash e comportamenti anomali al click sulle notifiche di Windows (MainWindow.xaml.vb).
  • Performance Pennelli WPF: Caching ad alte prestazioni tramite il modulo BrushCache.vb.
  • Rinominazione Account in Tempo Reale: Le modifiche ai nomi degli account nelle impostazioni si riflettono istantaneamente sull'interfaccia.

[0.2.5-beta] - 2026-08-10

Fixed

  • Fix Confronto Versione OTA e Pre-release (UpdateChecker.vb): Perfezionato il confronto versioni in IsNewerVersion separando le componenti numeriche base dai suffissi di pre-release (es. -beta, -rc1). Permette di rilevare correttamente gli aggiornamenti beta rispetto alle versioni precedenti.

[0.2.4-beta] - 2026-08-08

Fixed

  • Pulizia Profili WebView2 Orfani (AccountManager.vb): Implementato il metodo CleanupUnusedProfilesAsync per scansionare la cartella data/webview ed eliminare automaticamente all'avvio le cartelle di profilo orfane (WV2Profile_*) i cui ID non sono più associati ad alcun account attivo.
  • Correzione Badge e Link (README.md, README.it.md): Corretti i badge di build ed i link commit per puntare al branch master ed eliminate le istruzioni di build contenenti percorsi non validi.

[0.2.3-beta] - 2026-08-07

Fixed

  • Fix Crash Notifiche Toast (MainWindow.xaml.vb): Risolto NullReferenceException al click su notifiche Toast di Windows con argomenti mancanti o malformati mediante l'helper ExtractArg.
  • Fix Click Notifiche Toast (MainWindow.xaml.vb, MessagePopup.xaml.vb): Sostituita la chiamata a ToggleWindow() con ShowWindow() nel gestore notifiche Toast per evitare che un click nasconda la finestra se già visibile in primo piano.

[0.2.2-beta] - 2026-08-06

Added

  • Supporto Multi-Account fino a 3 Account WhatsApp:
    • Aggiunto il pulsante + nella barra orizzontale delle schede in MainWindow.xaml per la creazione immediata ed il passaggio al nuovo account.
    • Aggiunto il controllo ed il contatore di account (Account configurati: X su 3) nella finestra SettingsWindow.xaml.
    • Implementata la verifica ed il blocco rigido del limite massimo in AccountManager.vb (MaxAccounts = 3, CanAddAccount).
    • Isolamento completo delle sessioni WhatsApp Web e dei dati di profilo WebView2 su disco (WV2Profile_<id>).
    • Aggiunte le stringhe di localizzazione multilingua per i limiti e le azioni di gestione account.
  • Finestra "Informazioni" (AboutWindow):
    • Creata la finestra modale AboutWindow.xaml accessibile tramite il nuovo pulsante nella barra del titolo, dalle Impostazioni e dal menu contestuale della tray icon.
    • Mostra l'autore (Massimo Balestrieri), la versione (v0.2.2), la data di rilascio (2026-08-06), la licenza (Apache-2.0), il runtime (.NET 9 + WebView2), il percorso dati portabile (data/webview) ed i link diretti a GitHub, Releases e segnalazione bug.

Performance & Refactored

  • Punto 29 TODO (AccountManager.vb): Eliminata la proiezione con tipi anonimi a ogni salvataggio delle impostazioni. Serializzazione diretta della collezione _accounts per ridurre la pressione sul Garbage Collector.
  • Punto 7 TODO (TODO.md): Chiuso e contrassegnato come obsoleto il punto 7 sull'aggiornamento OTA tramite percorso di rete UNC (ReadVersionFromFileAsync()), in quanto il percorso di rete è stato dismesso ed interamente sostituito dalle API REST di GitHub Releases fin dalla v0.2.0.

Fixed

  • Aggiornamento Nome Account in Tempo Reale nelle Schede (WhatsAppAccount.vb): Aggiunto il sollevamento dell'evento PropertyChanged per la proprietà Name in WhatsAppAccount.vb. La rinomina degli account nelle Impostazioni viene ora riflessa istantaneamente sui pulsanti delle schede nella finestra principale senza dover riavviare o riaprire l'applicazione.

[0.2.1-beta] - 2026-08-06

Added & Refactored

  • Miglioramento Visibilità & Sicurezza Repository: Rimossi i riferimenti all'IP e percorso di rete legacy in ANALISI_PROGETTO.md. Allineato il distintivo ed il testo della licenza ad Apache 2.0.
  • Documentazione Bilingue & Asset Grafici: Aggiunti i file README.md (inglese) e README.it.md (italiano) con selettore di lingua, tabella comparativa "Why WhatsAppH", galleria di screenshot (images/) e requisiti.
  • Standard Community & CI/CD: Introdotti CONTRIBUTING.md, CODE_OF_CONDUCT.md (v2.1), SECURITY.md, template per segnalazione bug e feature request, e workflow GitHub Actions .github/workflows/build.yml per la compilazione automatica .NET 9.

[0.2.0] - 2026-08-05

Changed & Refactored

  • Centralizzazione Aggiornamenti OTA su GitHub Releases: Rimossa la dipendenza e la logica di fallback sul percorso di rete locale dismesso (UpdateFilesPath). Il sistema di aggiornamento automatico OTA opera ora esclusivamente tramite le API REST di GitHub Releases con verifica, download ed installazione in background dello ZIP.
  • Ottimizzazione Canale Beta (Pre-releases): Perfezionata la scansione delle release nel canale Beta (UseBetaChannel) in UpdateChecker.vb con iterazione nell'elenco release per selezionare il primo asset ZIP disponibile.
  • Automazione Script di Pubblicazione: Aggiornato publish.ps1 per supportare la compilazione, creazione pacchetto ZIP e pubblicazione automatica di release stabili e beta (con flag -Beta e --prerelease su GitHub).
  • Esclusione File Regole AI da Repository: Aggiunte regole in .gitignore per escludere AGENTS.md e .agents/ dal tracciamento Git pubblico, preservando la memoria e le linee guida del progetto in locale.
    ...
Read more

WhatsappH v0.3.2

WhatsappH v0.3.2 Pre-release
Pre-release

Choose a tag to compare

@hidaba hidaba released this 17 Aug 06:47

Changelog

[0.3.2-beta] - 2026-08-17

Performance & Memory

  • Punto 35 TODO — Caricamento Lazy degli Script JS/CSS (JsScripts.vb, Scripts/):
    • Estratti gli script JavaScript e CSS in file dedicati incorporati nell'assembly (EmbeddedResource): theme.css, notification.js e translation.js.
    • Riscritto JsScripts.vb per caricare i template in modalità Lazy(Of String) ed effettuare sostituzioni in-place con StringBuilder, eliminando tutte le costanti XML literals statiche permanenti in RAM.
  • Persistenza Traduzioni su File (translations_cache.json):
    • Implementato TranslationCacheService per archiviare in modo permanente su disco (data/translations_cache.json con fallback in root) sia le traduzioni dell'interfaccia utente sia i testi/messaggi tradotti delle chat.
    • Aggiunta la consultazione preventiva della cache prima di ogni richiesta di traduzione (singola o batch): i testi già tradotti vengono restituiti istantaneamente dalla cache senza effettuare chiamate di rete a Google Translate.
    • Nelle traduzioni batch dell'intera pagina (translatePage), solo le nuove frasi non ancora presenti in cache vengono inviate a Google Translate, riducendo drasticamente il consumo di banda.
  • Ottimizzazione Memoria RAM per Traduzioni:
    • In memoria RAM vengono mantenuti esclusivamente i dizionari della lingua attualmente impostata.
    • Al cambio lingua in SettingsController, i dati della lingua precedente vengono salvati su disco e rimossi dalla memoria per essere raccolti dal GC, caricando in RAM solo la nuova lingua selezionata.

[0.3.1-beta] - 2026-08-15

Performance & Memory

  • Punto 10 & 32 TODO — Ottimizzazione e WeakReference nei Popup di Notifica (MessagePopup.xaml.vb):
    • Implementato WeakReference(Of MessagePopup) nella lista statica dei popup attivi (_activePopups) con eliminazione automatica dei riferimenti raccolti dal GC, prevenendo memory leak in caso di popup non chiusi normalmente.
    • Sostituito il ricalcolo forzato e riposizionamento di tutti i popup attivi con il calcolo incrementale della posizione Y (PositionNewPopup()), impilando le nuove notifiche verso l'alto senza riposizionare o muovere i popup già visibili a schermo.
  • Punto 11 TODO — Ottimizzazione Cambio Account (MainWindow.xaml.vb):
    • Ottimizzato SwitchToAccountAsync() gestendo il ritorno anticipato se l'account richiesto è già attivo e nascondendo unicamente il controllo WebView del precedente account senza iterare l'intera gerarchia dei controlli.

[0.3.0] - 2026-08-13

Added & Features

  • Supporto Multi-Account fino a 3 Account: Gestione integrata e schede veloci per il cambio e aggiunta account in tempo reale (MainWindow.xaml, AccountManager.vb).
  • Finestra Informazioni (AboutWindow): Nuova interfaccia modale con dettagli versione, licenza Apache-2.0, percorso portabile e collegamenti rapidi (AboutWindow.xaml).
  • Pulizia Automatica Profili Orfani: Scansione ed eliminazione all'avvio delle directory profilate non più utilizzate (AccountManager.vb).
  • Documentazione Bilingue & Standard Community: Integrazione di README.md (EN) e README.it.md (IT), CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md e workflow GitHub Actions per la build automatica.

Fixed & Improved

  • Robustezza Aggiornamenti OTA: Gestione corretta dei suffissi di pre-release (-beta, -rc) e verifica stabilità nel confronto versioni (UpdateChecker.vb).
  • Gestione Notifiche Toast: Risolti crash e comportamenti anomali al click sulle notifiche di Windows (MainWindow.xaml.vb).
  • Performance Pennelli WPF: Caching ad alte prestazioni tramite il modulo BrushCache.vb.
  • Rinominazione Account in Tempo Reale: Le modifiche ai nomi degli account nelle impostazioni si riflettono istantaneamente sull'interfaccia.

[0.2.5-beta] - 2026-08-10

Fixed

  • Fix Confronto Versione OTA e Pre-release (UpdateChecker.vb): Perfezionato il confronto versioni in IsNewerVersion separando le componenti numeriche base dai suffissi di pre-release (es. -beta, -rc1). Permette di rilevare correttamente gli aggiornamenti beta rispetto alle versioni precedenti.

[0.2.4-beta] - 2026-08-08

Fixed

  • Pulizia Profili WebView2 Orfani (AccountManager.vb): Implementato il metodo CleanupUnusedProfilesAsync per scansionare la cartella data/webview ed eliminare automaticamente all'avvio le cartelle di profilo orfane (WV2Profile_*) i cui ID non sono più associati ad alcun account attivo.
  • Correzione Badge e Link (README.md, README.it.md): Corretti i badge di build ed i link commit per puntare al branch master ed eliminate le istruzioni di build contenenti percorsi non validi.

[0.2.3-beta] - 2026-08-07

Fixed

  • Fix Crash Notifiche Toast (MainWindow.xaml.vb): Risolto NullReferenceException al click su notifiche Toast di Windows con argomenti mancanti o malformati mediante l'helper ExtractArg.
  • Fix Click Notifiche Toast (MainWindow.xaml.vb, MessagePopup.xaml.vb): Sostituita la chiamata a ToggleWindow() con ShowWindow() nel gestore notifiche Toast per evitare che un click nasconda la finestra se già visibile in primo piano.

[0.2.2-beta] - 2026-08-06

Added

  • Supporto Multi-Account fino a 3 Account WhatsApp:
    • Aggiunto il pulsante + nella barra orizzontale delle schede in MainWindow.xaml per la creazione immediata ed il passaggio al nuovo account.
    • Aggiunto il controllo ed il contatore di account (Account configurati: X su 3) nella finestra SettingsWindow.xaml.
    • Implementata la verifica ed il blocco rigido del limite massimo in AccountManager.vb (MaxAccounts = 3, CanAddAccount).
    • Isolamento completo delle sessioni WhatsApp Web e dei dati di profilo WebView2 su disco (WV2Profile_<id>).
    • Aggiunte le stringhe di localizzazione multilingua per i limiti e le azioni di gestione account.
  • Finestra "Informazioni" (AboutWindow):
    • Creata la finestra modale AboutWindow.xaml accessibile tramite il nuovo pulsante nella barra del titolo, dalle Impostazioni e dal menu contestuale della tray icon.
    • Mostra l'autore (Massimo Balestrieri), la versione (v0.2.2), la data di rilascio (2026-08-06), la licenza (Apache-2.0), il runtime (.NET 9 + WebView2), il percorso dati portabile (data/webview) ed i link diretti a GitHub, Releases e segnalazione bug.

Performance & Refactored

  • Punto 29 TODO (AccountManager.vb): Eliminata la proiezione con tipi anonimi a ogni salvataggio delle impostazioni. Serializzazione diretta della collezione _accounts per ridurre la pressione sul Garbage Collector.
  • Punto 7 TODO (TODO.md): Chiuso e contrassegnato come obsoleto il punto 7 sull'aggiornamento OTA tramite percorso di rete UNC (ReadVersionFromFileAsync()), in quanto il percorso di rete è stato dismesso ed interamente sostituito dalle API REST di GitHub Releases fin dalla v0.2.0.

Fixed

  • Aggiornamento Nome Account in Tempo Reale nelle Schede (WhatsAppAccount.vb): Aggiunto il sollevamento dell'evento PropertyChanged per la proprietà Name in WhatsAppAccount.vb. La rinomina degli account nelle Impostazioni viene ora riflessa istantaneamente sui pulsanti delle schede nella finestra principale senza dover riavviare o riaprire l'applicazione.

[0.2.1-beta] - 2026-08-06

Added & Refactored

  • Miglioramento Visibilità & Sicurezza Repository: Rimossi i riferimenti all'IP e percorso di rete legacy in ANALISI_PROGETTO.md. Allineato il distintivo ed il testo della licenza ad Apache 2.0.
  • Documentazione Bilingue & Asset Grafici: Aggiunti i file README.md (inglese) e README.it.md (italiano) con selettore di lingua, tabella comparativa "Why WhatsAppH", galleria di screenshot (images/) e requisiti.
  • Standard Community & CI/CD: Introdotti CONTRIBUTING.md, CODE_OF_CONDUCT.md (v2.1), SECURITY.md, template per segnalazione bug e feature request, e workflow GitHub Actions .github/workflows/build.yml per la compilazione automatica .NET 9.

[0.2.0] - 2026-08-05

Changed & Refactored

  • Centralizzazione Aggiornamenti OTA su GitHub Releases: Rimossa la dipendenza e la logica di fallback sul percorso di rete locale dismesso (UpdateFilesPath). Il sistema di aggiornamento automatico OTA opera ora esclusivamente tramite le API REST di GitHub Releases con verifica, download ed installazione in background dello ZIP.
  • Ottimizzazione Canale Beta (Pre-releases): Perfezionata la scansione delle release nel canale Beta (UseBetaChannel) in UpdateChecker.vb con iterazione nell'elenco release per selezionare il primo asset ZIP disponibile.
  • Automazione Script di Pubblicazione: Aggiornato publish.ps1 per supportare la compilazione, creazione pacchetto ZIP e pubblicazione automatica di release stabili e beta (con flag -Beta e --prerelease su GitHub).
  • Esclusione File Regole AI da Repository: Aggiunte regole in .gitignore per escludere AGENTS.md e .agents/ dal tracciamento Git pubblico, preservando la memoria e le linee guida del progetto in locale.

[0.1.8-beta] - 2026-07-31

Performance & Portability

  • Ottimizzazione I/O disco e avvio Chromium portabile: Configurate le opzioni di ambiente AdditionalBrowserArguments per WebView2 in WhatsAppAccount.vb (--disk-cache-size=104857600 --media-cache-size=52428800 --disable-background-networking --disable-features=Translate,OptimizationHints,MediaRouter). Limita la proliferazione di file sciolti di cache mantenendo l'applicazione al 100% portabile nella cartella data/webview.

[0.1.7-beta] - 2026-07-29

Fixed

  • Fix Blocco Aggiornamento OTA e Mutex Istanza Singola: Risolto il problema del blocco dell'applicazione al riavvio durante l'aggiornamento OTA e l'impossibilità di riaprire l'app dopo una chiusura forzata (richiedeva il ...
Read more

WhatsappH v0.3.1

WhatsappH v0.3.1 Pre-release
Pre-release

Choose a tag to compare

@hidaba hidaba released this 15 Aug 17:06

Changelog

[0.3.1-beta] - 2026-08-15

Performance & Memory

  • Punto 10 & 32 TODO — Ottimizzazione e WeakReference nei Popup di Notifica (MessagePopup.xaml.vb):
    • Implementato WeakReference(Of MessagePopup) nella lista statica dei popup attivi (_activePopups) con eliminazione automatica dei riferimenti raccolti dal GC, prevenendo memory leak in caso di popup non chiusi normalmente.
    • Sostituito il ricalcolo forzato e riposizionamento di tutti i popup attivi con il calcolo incrementale della posizione Y (PositionNewPopup()), impilando le nuove notifiche verso l'alto senza riposizionare o muovere i popup già visibili a schermo.
  • Punto 11 TODO — Ottimizzazione Cambio Account (MainWindow.xaml.vb):
    • Ottimizzato SwitchToAccountAsync() gestendo il ritorno anticipato se l'account richiesto è già attivo e nascondendo unicamente il controllo WebView del precedente account senza iterare l'intera gerarchia dei controlli.

[0.3.0] - 2026-08-13

Added & Features

  • Supporto Multi-Account fino a 3 Account: Gestione integrata e schede veloci per il cambio e aggiunta account in tempo reale (MainWindow.xaml, AccountManager.vb).
  • Finestra Informazioni (AboutWindow): Nuova interfaccia modale con dettagli versione, licenza Apache-2.0, percorso portabile e collegamenti rapidi (AboutWindow.xaml).
  • Pulizia Automatica Profili Orfani: Scansione ed eliminazione all'avvio delle directory profilate non più utilizzate (AccountManager.vb).
  • Documentazione Bilingue & Standard Community: Integrazione di README.md (EN) e README.it.md (IT), CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md e workflow GitHub Actions per la build automatica.

Fixed & Improved

  • Robustezza Aggiornamenti OTA: Gestione corretta dei suffissi di pre-release (-beta, -rc) e verifica stabilità nel confronto versioni (UpdateChecker.vb).
  • Gestione Notifiche Toast: Risolti crash e comportamenti anomali al click sulle notifiche di Windows (MainWindow.xaml.vb).
  • Performance Pennelli WPF: Caching ad alte prestazioni tramite il modulo BrushCache.vb.
  • Rinominazione Account in Tempo Reale: Le modifiche ai nomi degli account nelle impostazioni si riflettono istantaneamente sull'interfaccia.

[0.2.5-beta] - 2026-08-10

Fixed

  • Fix Confronto Versione OTA e Pre-release (UpdateChecker.vb): Perfezionato il confronto versioni in IsNewerVersion separando le componenti numeriche base dai suffissi di pre-release (es. -beta, -rc1). Permette di rilevare correttamente gli aggiornamenti beta rispetto alle versioni precedenti.

[0.2.4-beta] - 2026-08-08

Fixed

  • Pulizia Profili WebView2 Orfani (AccountManager.vb): Implementato il metodo CleanupUnusedProfilesAsync per scansionare la cartella data/webview ed eliminare automaticamente all'avvio le cartelle di profilo orfane (WV2Profile_*) i cui ID non sono più associati ad alcun account attivo.
  • Correzione Badge e Link (README.md, README.it.md): Corretti i badge di build ed i link commit per puntare al branch master ed eliminate le istruzioni di build contenenti percorsi non validi.

[0.2.3-beta] - 2026-08-07

Fixed

  • Fix Crash Notifiche Toast (MainWindow.xaml.vb): Risolto NullReferenceException al click su notifiche Toast di Windows con argomenti mancanti o malformati mediante l'helper ExtractArg.
  • Fix Click Notifiche Toast (MainWindow.xaml.vb, MessagePopup.xaml.vb): Sostituita la chiamata a ToggleWindow() con ShowWindow() nel gestore notifiche Toast per evitare che un click nasconda la finestra se già visibile in primo piano.

[0.2.2-beta] - 2026-08-06

Added

  • Supporto Multi-Account fino a 3 Account WhatsApp:
    • Aggiunto il pulsante + nella barra orizzontale delle schede in MainWindow.xaml per la creazione immediata ed il passaggio al nuovo account.
    • Aggiunto il controllo ed il contatore di account (Account configurati: X su 3) nella finestra SettingsWindow.xaml.
    • Implementata la verifica ed il blocco rigido del limite massimo in AccountManager.vb (MaxAccounts = 3, CanAddAccount).
    • Isolamento completo delle sessioni WhatsApp Web e dei dati di profilo WebView2 su disco (WV2Profile_<id>).
    • Aggiunte le stringhe di localizzazione multilingua per i limiti e le azioni di gestione account.
  • Finestra "Informazioni" (AboutWindow):
    • Creata la finestra modale AboutWindow.xaml accessibile tramite il nuovo pulsante nella barra del titolo, dalle Impostazioni e dal menu contestuale della tray icon.
    • Mostra l'autore (Massimo Balestrieri), la versione (v0.2.2), la data di rilascio (2026-08-06), la licenza (Apache-2.0), il runtime (.NET 9 + WebView2), il percorso dati portabile (data/webview) ed i link diretti a GitHub, Releases e segnalazione bug.

Performance & Refactored

  • Punto 29 TODO (AccountManager.vb): Eliminata la proiezione con tipi anonimi a ogni salvataggio delle impostazioni. Serializzazione diretta della collezione _accounts per ridurre la pressione sul Garbage Collector.
  • Punto 7 TODO (TODO.md): Chiuso e contrassegnato come obsoleto il punto 7 sull'aggiornamento OTA tramite percorso di rete UNC (ReadVersionFromFileAsync()), in quanto il percorso di rete è stato dismesso ed interamente sostituito dalle API REST di GitHub Releases fin dalla v0.2.0.

Fixed

  • Aggiornamento Nome Account in Tempo Reale nelle Schede (WhatsAppAccount.vb): Aggiunto il sollevamento dell'evento PropertyChanged per la proprietà Name in WhatsAppAccount.vb. La rinomina degli account nelle Impostazioni viene ora riflessa istantaneamente sui pulsanti delle schede nella finestra principale senza dover riavviare o riaprire l'applicazione.

[0.2.1-beta] - 2026-08-06

Added & Refactored

  • Miglioramento Visibilità & Sicurezza Repository: Rimossi i riferimenti all'IP e percorso di rete legacy in ANALISI_PROGETTO.md. Allineato il distintivo ed il testo della licenza ad Apache 2.0.
  • Documentazione Bilingue & Asset Grafici: Aggiunti i file README.md (inglese) e README.it.md (italiano) con selettore di lingua, tabella comparativa "Why WhatsAppH", galleria di screenshot (images/) e requisiti.
  • Standard Community & CI/CD: Introdotti CONTRIBUTING.md, CODE_OF_CONDUCT.md (v2.1), SECURITY.md, template per segnalazione bug e feature request, e workflow GitHub Actions .github/workflows/build.yml per la compilazione automatica .NET 9.

[0.2.0] - 2026-08-05

Changed & Refactored

  • Centralizzazione Aggiornamenti OTA su GitHub Releases: Rimossa la dipendenza e la logica di fallback sul percorso di rete locale dismesso (UpdateFilesPath). Il sistema di aggiornamento automatico OTA opera ora esclusivamente tramite le API REST di GitHub Releases con verifica, download ed installazione in background dello ZIP.
  • Ottimizzazione Canale Beta (Pre-releases): Perfezionata la scansione delle release nel canale Beta (UseBetaChannel) in UpdateChecker.vb con iterazione nell'elenco release per selezionare il primo asset ZIP disponibile.
  • Automazione Script di Pubblicazione: Aggiornato publish.ps1 per supportare la compilazione, creazione pacchetto ZIP e pubblicazione automatica di release stabili e beta (con flag -Beta e --prerelease su GitHub).
  • Esclusione File Regole AI da Repository: Aggiunte regole in .gitignore per escludere AGENTS.md e .agents/ dal tracciamento Git pubblico, preservando la memoria e le linee guida del progetto in locale.

[0.1.8-beta] - 2026-07-31

Performance & Portability

  • Ottimizzazione I/O disco e avvio Chromium portabile: Configurate le opzioni di ambiente AdditionalBrowserArguments per WebView2 in WhatsAppAccount.vb (--disk-cache-size=104857600 --media-cache-size=52428800 --disable-background-networking --disable-features=Translate,OptimizationHints,MediaRouter). Limita la proliferazione di file sciolti di cache mantenendo l'applicazione al 100% portabile nella cartella data/webview.

[0.1.7-beta] - 2026-07-29

Fixed

  • Fix Blocco Aggiornamento OTA e Mutex Istanza Singola: Risolto il problema del blocco dell'applicazione al riavvio durante l'aggiornamento OTA e l'impossibilità di riaprire l'app dopo una chiusura forzata (richiedeva il riavvio del PC). Implementata la gestione di AbandonedMutexException e il ripiegamento sul controllo dei processi attivi in Application.xaml.vb, l'inclusione di taskkill per il processo bloccato e la rimozione di pause in update.bat, ed il corretto rilascio del Mutex dell'istanza singola e dei controlli WebView2 in ForceExitForUpdate().

[0.1.6-beta] - 2026-07-29

Performance

  • Punto 34 TODO: Implementato il modulo BrushCache con ConcurrentDictionary e congelamento .Freeze() per il caching thread-safe e ad alte prestazioni delle istanze SolidColorBrush. Eliminata la riallocazione continua di pennelli WPF a ogni cambio tema o aggiustamento grafico in MainWindow.xaml.vb e SettingsWindow.xaml.vb.

[0.1.5-beta] - 2026-07-28

Fixed & Performance

  • Punto 31 TODO: Utilizzato StringBuilder in UpdateChecker.vb per la composizione dello script batch di aggiornamento update.bat.
  • Punto 33 TODO: Centralizzato il rilevamento del tema di sistema Windows tramite il nuovo modulo SystemThemeHelper con caching della chiave AppsUseLightTheme ed ascolto dinamico dell'evento SystemEvents.UserPreferenceChanged. Eliminata la triplicazione delle letture dal Registro in MainWindow.xaml.vb, WhatsAppAccount.vb e SettingsWindow.xaml.vb.

[0.1.4-beta] - 2026-07-28

Changed

  • Formattazione Messaggi di Commit Git: Rimozione del prefisso di versione dai messaggi di commit di Git su GitHub per mantenere pulite le descrizioni dei file.

[0.1.3] - 2026-07-28

Added

  • **Pulsante e sezione Download in...
Read more

WhatsappH v0.3.0

Choose a tag to compare

@hidaba hidaba released this 13 Aug 17:28

Changelog

[0.3.0] - 2026-08-13

Added & Features

  • Supporto Multi-Account fino a 3 Account: Gestione integrata e schede veloci per il cambio e aggiunta account in tempo reale (MainWindow.xaml, AccountManager.vb).
  • Finestra Informazioni (AboutWindow): Nuova interfaccia modale con dettagli versione, licenza Apache-2.0, percorso portabile e collegamenti rapidi (AboutWindow.xaml).
  • Pulizia Automatica Profili Orfani: Scansione ed eliminazione all'avvio delle directory profilate non più utilizzate (AccountManager.vb).
  • Documentazione Bilingue & Standard Community: Integrazione di README.md (EN) e README.it.md (IT), CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md e workflow GitHub Actions per la build automatica.

Fixed & Improved

  • Robustezza Aggiornamenti OTA: Gestione corretta dei suffissi di pre-release (-beta, -rc) e verifica stabilità nel confronto versioni (UpdateChecker.vb).
  • Gestione Notifiche Toast: Risolti crash e comportamenti anomali al click sulle notifiche di Windows (MainWindow.xaml.vb).
  • Performance Pennelli WPF: Caching ad alte prestazioni tramite il modulo BrushCache.vb.
  • Rinominazione Account in Tempo Reale: Le modifiche ai nomi degli account nelle impostazioni si riflettono istantaneamente sull'interfaccia.

[0.2.5-beta] - 2026-08-10

Fixed

  • Fix Confronto Versione OTA e Pre-release (UpdateChecker.vb): Perfezionato il confronto versioni in IsNewerVersion separando le componenti numeriche base dai suffissi di pre-release (es. -beta, -rc1). Permette di rilevare correttamente gli aggiornamenti beta rispetto alle versioni precedenti.

[0.2.4-beta] - 2026-08-08

Fixed

  • Pulizia Profili WebView2 Orfani (AccountManager.vb): Implementato il metodo CleanupUnusedProfilesAsync per scansionare la cartella data/webview ed eliminare automaticamente all'avvio le cartelle di profilo orfane (WV2Profile_*) i cui ID non sono più associati ad alcun account attivo.
  • Correzione Badge e Link (README.md, README.it.md): Corretti i badge di build ed i link commit per puntare al branch master ed eliminate le istruzioni di build contenenti percorsi non validi.

[0.2.3-beta] - 2026-08-07

Fixed

  • Fix Crash Notifiche Toast (MainWindow.xaml.vb): Risolto NullReferenceException al click su notifiche Toast di Windows con argomenti mancanti o malformati mediante l'helper ExtractArg.
  • Fix Click Notifiche Toast (MainWindow.xaml.vb, MessagePopup.xaml.vb): Sostituita la chiamata a ToggleWindow() con ShowWindow() nel gestore notifiche Toast per evitare che un click nasconda la finestra se già visibile in primo piano.

[0.2.2-beta] - 2026-08-06

Added

  • Supporto Multi-Account fino a 3 Account WhatsApp:
    • Aggiunto il pulsante + nella barra orizzontale delle schede in MainWindow.xaml per la creazione immediata ed il passaggio al nuovo account.
    • Aggiunto il controllo ed il contatore di account (Account configurati: X su 3) nella finestra SettingsWindow.xaml.
    • Implementata la verifica ed il blocco rigido del limite massimo in AccountManager.vb (MaxAccounts = 3, CanAddAccount).
    • Isolamento completo delle sessioni WhatsApp Web e dei dati di profilo WebView2 su disco (WV2Profile_<id>).
    • Aggiunte le stringhe di localizzazione multilingua per i limiti e le azioni di gestione account.
  • Finestra "Informazioni" (AboutWindow):
    • Creata la finestra modale AboutWindow.xaml accessibile tramite il nuovo pulsante nella barra del titolo, dalle Impostazioni e dal menu contestuale della tray icon.
    • Mostra l'autore (Massimo Balestrieri), la versione (v0.2.2), la data di rilascio (2026-08-06), la licenza (Apache-2.0), il runtime (.NET 9 + WebView2), il percorso dati portabile (data/webview) ed i link diretti a GitHub, Releases e segnalazione bug.

Performance & Refactored

  • Punto 29 TODO (AccountManager.vb): Eliminata la proiezione con tipi anonimi a ogni salvataggio delle impostazioni. Serializzazione diretta della collezione _accounts per ridurre la pressione sul Garbage Collector.
  • Punto 7 TODO (TODO.md): Chiuso e contrassegnato come obsoleto il punto 7 sull'aggiornamento OTA tramite percorso di rete UNC (ReadVersionFromFileAsync()), in quanto il percorso di rete è stato dismesso ed interamente sostituito dalle API REST di GitHub Releases fin dalla v0.2.0.

Fixed

  • Aggiornamento Nome Account in Tempo Reale nelle Schede (WhatsAppAccount.vb): Aggiunto il sollevamento dell'evento PropertyChanged per la proprietà Name in WhatsAppAccount.vb. La rinomina degli account nelle Impostazioni viene ora riflessa istantaneamente sui pulsanti delle schede nella finestra principale senza dover riavviare o riaprire l'applicazione.

[0.2.1-beta] - 2026-08-06

Added & Refactored

  • Miglioramento Visibilità & Sicurezza Repository: Rimossi i riferimenti all'IP e percorso di rete legacy in ANALISI_PROGETTO.md. Allineato il distintivo ed il testo della licenza ad Apache 2.0.
  • Documentazione Bilingue & Asset Grafici: Aggiunti i file README.md (inglese) e README.it.md (italiano) con selettore di lingua, tabella comparativa "Why WhatsAppH", galleria di screenshot (images/) e requisiti.
  • Standard Community & CI/CD: Introdotti CONTRIBUTING.md, CODE_OF_CONDUCT.md (v2.1), SECURITY.md, template per segnalazione bug e feature request, e workflow GitHub Actions .github/workflows/build.yml per la compilazione automatica .NET 9.

[0.2.0] - 2026-08-05

Changed & Refactored

  • Centralizzazione Aggiornamenti OTA su GitHub Releases: Rimossa la dipendenza e la logica di fallback sul percorso di rete locale dismesso (UpdateFilesPath). Il sistema di aggiornamento automatico OTA opera ora esclusivamente tramite le API REST di GitHub Releases con verifica, download ed installazione in background dello ZIP.
  • Ottimizzazione Canale Beta (Pre-releases): Perfezionata la scansione delle release nel canale Beta (UseBetaChannel) in UpdateChecker.vb con iterazione nell'elenco release per selezionare il primo asset ZIP disponibile.
  • Automazione Script di Pubblicazione: Aggiornato publish.ps1 per supportare la compilazione, creazione pacchetto ZIP e pubblicazione automatica di release stabili e beta (con flag -Beta e --prerelease su GitHub).
  • Esclusione File Regole AI da Repository: Aggiunte regole in .gitignore per escludere AGENTS.md e .agents/ dal tracciamento Git pubblico, preservando la memoria e le linee guida del progetto in locale.

[0.1.8-beta] - 2026-07-31

Performance & Portability

  • Ottimizzazione I/O disco e avvio Chromium portabile: Configurate le opzioni di ambiente AdditionalBrowserArguments per WebView2 in WhatsAppAccount.vb (--disk-cache-size=104857600 --media-cache-size=52428800 --disable-background-networking --disable-features=Translate,OptimizationHints,MediaRouter). Limita la proliferazione di file sciolti di cache mantenendo l'applicazione al 100% portabile nella cartella data/webview.

[0.1.7-beta] - 2026-07-29

Fixed

  • Fix Blocco Aggiornamento OTA e Mutex Istanza Singola: Risolto il problema del blocco dell'applicazione al riavvio durante l'aggiornamento OTA e l'impossibilità di riaprire l'app dopo una chiusura forzata (richiedeva il riavvio del PC). Implementata la gestione di AbandonedMutexException e il ripiegamento sul controllo dei processi attivi in Application.xaml.vb, l'inclusione di taskkill per il processo bloccato e la rimozione di pause in update.bat, ed il corretto rilascio del Mutex dell'istanza singola e dei controlli WebView2 in ForceExitForUpdate().

[0.1.6-beta] - 2026-07-29

Performance

  • Punto 34 TODO: Implementato il modulo BrushCache con ConcurrentDictionary e congelamento .Freeze() per il caching thread-safe e ad alte prestazioni delle istanze SolidColorBrush. Eliminata la riallocazione continua di pennelli WPF a ogni cambio tema o aggiustamento grafico in MainWindow.xaml.vb e SettingsWindow.xaml.vb.

[0.1.5-beta] - 2026-07-28

Fixed & Performance

  • Punto 31 TODO: Utilizzato StringBuilder in UpdateChecker.vb per la composizione dello script batch di aggiornamento update.bat.
  • Punto 33 TODO: Centralizzato il rilevamento del tema di sistema Windows tramite il nuovo modulo SystemThemeHelper con caching della chiave AppsUseLightTheme ed ascolto dinamico dell'evento SystemEvents.UserPreferenceChanged. Eliminata la triplicazione delle letture dal Registro in MainWindow.xaml.vb, WhatsAppAccount.vb e SettingsWindow.xaml.vb.

[0.1.4-beta] - 2026-07-28

Changed

  • Formattazione Messaggi di Commit Git: Rimozione del prefisso di versione dai messaggi di commit di Git su GitHub per mantenere pulite le descrizioni dei file.

[0.1.3] - 2026-07-28

Added

  • Pulsante e sezione Download in README.md: Aggiunta la sezione con i link diretti ed il badge per scaricare l'eseguibile portatile per Windows dalle GitHub Releases.

Fixed & Performance

  • Punto 30 TODO: Sostituito Directory.GetDirectories con Directory.EnumerateDirectories e .FirstOrDefault() in AccountManager.vb per la ricerca in streaming lazy del profilo orfano.

[0.1.2-beta] - 2026-07-28

Added

  • Aggiunta documentazione XML doc (<summary>, <param>, <returns>) e commenti esplicativi in italiano in tutti i file di codice sorgente VB.NET del progetto (AccountManager, WhatsAppAccount, MainWindow, SettingsController, SettingsWindow, UpdateChecker, Localization, JsScripts, MessagePopup, Application, Constants).

Fixed & Refactored

  • Punto 25 TODO: Riconvertito ApplyWpfTheme in funzione asincrona (ApplyWpfThemeAsync() As Task) aggiungendo Await e gestione eccezioni Try...Catch su tutti i richiam...
Read more

WhatsappH v0.2.5

WhatsappH v0.2.5 Pre-release
Pre-release

Choose a tag to compare

@hidaba hidaba released this 10 Aug 14:00

Changelog

[0.2.5-beta] - 2026-08-10

Fixed

  • Fix Confronto Versione OTA e Pre-release (UpdateChecker.vb): Perfezionato il confronto versioni in IsNewerVersion separando le componenti numeriche base dai suffissi di pre-release (es. -beta, -rc1). Permette di rilevare correttamente gli aggiornamenti beta rispetto alle versioni precedenti.

[0.2.4-beta] - 2026-08-08

Fixed

  • Pulizia Profili WebView2 Orfani (AccountManager.vb): Implementato il metodo CleanupUnusedProfilesAsync per scansionare la cartella data/webview ed eliminare automaticamente all'avvio le cartelle di profilo orfane (WV2Profile_*) i cui ID non sono più associati ad alcun account attivo.
  • Correzione Badge e Link (README.md, README.it.md): Corretti i badge di build ed i link commit per puntare al branch master ed eliminate le istruzioni di build contenenti percorsi non validi.

[0.2.3-beta] - 2026-08-07

Fixed

  • Fix Crash Notifiche Toast (MainWindow.xaml.vb): Risolto NullReferenceException al click su notifiche Toast di Windows con argomenti mancanti o malformati mediante l'helper ExtractArg.
  • Fix Click Notifiche Toast (MainWindow.xaml.vb, MessagePopup.xaml.vb): Sostituita la chiamata a ToggleWindow() con ShowWindow() nel gestore notifiche Toast per evitare che un click nasconda la finestra se già visibile in primo piano.

[0.2.2-beta] - 2026-08-06

Added

  • Supporto Multi-Account fino a 3 Account WhatsApp:
    • Aggiunto il pulsante + nella barra orizzontale delle schede in MainWindow.xaml per la creazione immediata ed il passaggio al nuovo account.
    • Aggiunto il controllo ed il contatore di account (Account configurati: X su 3) nella finestra SettingsWindow.xaml.
    • Implementata la verifica ed il blocco rigido del limite massimo in AccountManager.vb (MaxAccounts = 3, CanAddAccount).
    • Isolamento completo delle sessioni WhatsApp Web e dei dati di profilo WebView2 su disco (WV2Profile_<id>).
    • Aggiunte le stringhe di localizzazione multilingua per i limiti e le azioni di gestione account.
  • Finestra "Informazioni" (AboutWindow):
    • Creata la finestra modale AboutWindow.xaml accessibile tramite il nuovo pulsante nella barra del titolo, dalle Impostazioni e dal menu contestuale della tray icon.
    • Mostra l'autore (Massimo Balestrieri), la versione (v0.2.2), la data di rilascio (2026-08-06), la licenza (Apache-2.0), il runtime (.NET 9 + WebView2), il percorso dati portabile (data/webview) ed i link diretti a GitHub, Releases e segnalazione bug.

Performance & Refactored

  • Punto 29 TODO (AccountManager.vb): Eliminata la proiezione con tipi anonimi a ogni salvataggio delle impostazioni. Serializzazione diretta della collezione _accounts per ridurre la pressione sul Garbage Collector.
  • Punto 7 TODO (TODO.md): Chiuso e contrassegnato come obsoleto il punto 7 sull'aggiornamento OTA tramite percorso di rete UNC (ReadVersionFromFileAsync()), in quanto il percorso di rete è stato dismesso ed interamente sostituito dalle API REST di GitHub Releases fin dalla v0.2.0.

Fixed

  • Aggiornamento Nome Account in Tempo Reale nelle Schede (WhatsAppAccount.vb): Aggiunto il sollevamento dell'evento PropertyChanged per la proprietà Name in WhatsAppAccount.vb. La rinomina degli account nelle Impostazioni viene ora riflessa istantaneamente sui pulsanti delle schede nella finestra principale senza dover riavviare o riaprire l'applicazione.

[0.2.1-beta] - 2026-08-06

Added & Refactored

  • Miglioramento Visibilità & Sicurezza Repository: Rimossi i riferimenti all'IP e percorso di rete legacy in ANALISI_PROGETTO.md. Allineato il distintivo ed il testo della licenza ad Apache 2.0.
  • Documentazione Bilingue & Asset Grafici: Aggiunti i file README.md (inglese) e README.it.md (italiano) con selettore di lingua, tabella comparativa "Why WhatsAppH", galleria di screenshot (images/) e requisiti.
  • Standard Community & CI/CD: Introdotti CONTRIBUTING.md, CODE_OF_CONDUCT.md (v2.1), SECURITY.md, template per segnalazione bug e feature request, e workflow GitHub Actions .github/workflows/build.yml per la compilazione automatica .NET 9.

[0.2.0] - 2026-08-05

Changed & Refactored

  • Centralizzazione Aggiornamenti OTA su GitHub Releases: Rimossa la dipendenza e la logica di fallback sul percorso di rete locale dismesso (UpdateFilesPath). Il sistema di aggiornamento automatico OTA opera ora esclusivamente tramite le API REST di GitHub Releases con verifica, download ed installazione in background dello ZIP.
  • Ottimizzazione Canale Beta (Pre-releases): Perfezionata la scansione delle release nel canale Beta (UseBetaChannel) in UpdateChecker.vb con iterazione nell'elenco release per selezionare il primo asset ZIP disponibile.
  • Automazione Script di Pubblicazione: Aggiornato publish.ps1 per supportare la compilazione, creazione pacchetto ZIP e pubblicazione automatica di release stabili e beta (con flag -Beta e --prerelease su GitHub).
  • Esclusione File Regole AI da Repository: Aggiunte regole in .gitignore per escludere AGENTS.md e .agents/ dal tracciamento Git pubblico, preservando la memoria e le linee guida del progetto in locale.

[0.1.8-beta] - 2026-07-31

Performance & Portability

  • Ottimizzazione I/O disco e avvio Chromium portabile: Configurate le opzioni di ambiente AdditionalBrowserArguments per WebView2 in WhatsAppAccount.vb (--disk-cache-size=104857600 --media-cache-size=52428800 --disable-background-networking --disable-features=Translate,OptimizationHints,MediaRouter). Limita la proliferazione di file sciolti di cache mantenendo l'applicazione al 100% portabile nella cartella data/webview.

[0.1.7-beta] - 2026-07-29

Fixed

  • Fix Blocco Aggiornamento OTA e Mutex Istanza Singola: Risolto il problema del blocco dell'applicazione al riavvio durante l'aggiornamento OTA e l'impossibilità di riaprire l'app dopo una chiusura forzata (richiedeva il riavvio del PC). Implementata la gestione di AbandonedMutexException e il ripiegamento sul controllo dei processi attivi in Application.xaml.vb, l'inclusione di taskkill per il processo bloccato e la rimozione di pause in update.bat, ed il corretto rilascio del Mutex dell'istanza singola e dei controlli WebView2 in ForceExitForUpdate().

[0.1.6-beta] - 2026-07-29

Performance

  • Punto 34 TODO: Implementato il modulo BrushCache con ConcurrentDictionary e congelamento .Freeze() per il caching thread-safe e ad alte prestazioni delle istanze SolidColorBrush. Eliminata la riallocazione continua di pennelli WPF a ogni cambio tema o aggiustamento grafico in MainWindow.xaml.vb e SettingsWindow.xaml.vb.

[0.1.5-beta] - 2026-07-28

Fixed & Performance

  • Punto 31 TODO: Utilizzato StringBuilder in UpdateChecker.vb per la composizione dello script batch di aggiornamento update.bat.
  • Punto 33 TODO: Centralizzato il rilevamento del tema di sistema Windows tramite il nuovo modulo SystemThemeHelper con caching della chiave AppsUseLightTheme ed ascolto dinamico dell'evento SystemEvents.UserPreferenceChanged. Eliminata la triplicazione delle letture dal Registro in MainWindow.xaml.vb, WhatsAppAccount.vb e SettingsWindow.xaml.vb.

[0.1.4-beta] - 2026-07-28

Changed

  • Formattazione Messaggi di Commit Git: Rimozione del prefisso di versione dai messaggi di commit di Git su GitHub per mantenere pulite le descrizioni dei file.

[0.1.3] - 2026-07-28

Added

  • Pulsante e sezione Download in README.md: Aggiunta la sezione con i link diretti ed il badge per scaricare l'eseguibile portatile per Windows dalle GitHub Releases.

Fixed & Performance

  • Punto 30 TODO: Sostituito Directory.GetDirectories con Directory.EnumerateDirectories e .FirstOrDefault() in AccountManager.vb per la ricerca in streaming lazy del profilo orfano.

[0.1.2-beta] - 2026-07-28

Added

  • Aggiunta documentazione XML doc (<summary>, <param>, <returns>) e commenti esplicativi in italiano in tutti i file di codice sorgente VB.NET del progetto (AccountManager, WhatsAppAccount, MainWindow, SettingsController, SettingsWindow, UpdateChecker, Localization, JsScripts, MessagePopup, Application, Constants).

Fixed & Refactored

  • Punto 25 TODO: Riconvertito ApplyWpfTheme in funzione asincrona (ApplyWpfThemeAsync() As Task) aggiungendo Await e gestione eccezioni Try...Catch su tutti i richiami ExecuteScriptAsync in MainWindow.xaml.vb.

[0.1.1-beta] - 2026-07-27

Removed

  • Eliminata completamente l'immagine annoni.png dal repository per alleggerire il pacchetto compilato.
  • Configurato il rilascio OTA su GitHub Releases.

[0.1.0] - 2026-07-27

Changed

  • Rimosso il logo superiore dalla barra del titolo in MainWindow.xaml.
  • Rimosso l'intero sistema di backup e sincronizzazione chat (ChatSyncBackgroundWorker, ChatJsonStorageService, CryptoHelper, costanti e script JS dedicati).
  • Aggiornata la versione dell'applicazione a 0.1.0.

[0.0.58] - 2026-07-24

Performance

  • Ottimizzazione GetTranslationJS in JsScripts.vb: sostituita la catena di 12 chiamate .Replace() su stringa in-memory con StringBuilder.Replace() in-place per la generazione dei JS di traduzione, eliminando allocazioni intermedie nella Large Object Heap (LOH).

[0.0.57] - 2026-07-24

Fixed

  • Deduplicazione righe nel file di backup:
    • Implementata la deduplicazione automatica dei messaggi per id univoco in ChatJsonStorageService.vb. Ogni messaggio viene salvato esattamente una volta sola, eliminando righe duplicate nel file di backup.
  • Estrazione mittenti nei gruppi e numeri di telefono:
    • Risolto un problema per cui nei gruppi veniva...
Read more