diff --git a/Build/Changes.txt b/Build/Changes.txt index 31844e47d..544b97803 100644 --- a/Build/Changes.txt +++ b/Build/Changes.txt @@ -33,7 +33,7 @@ UCD - (UCD)ARDET is an Encoding Detector Library ======================================================== -Current BETA/RC Version 5.21.916.(build_#) (2021-09-16) +Current BETA/RC Version 5.21.923.(build_#) (2021-09-23) ======================================================== -------------------------------------------------------- @@ -46,16 +46,18 @@ NEW: CHANGES: -------------------------------------------------------- [.###.#]- . -[.916.1]- Use "round nearest displayed digit" method for estimated file size display +[.923.2]- Enable context menu for Statusbar. +[.923.1]- Enable context menu for Menubar. +[.916.1]- Use "round nearest displayed digit" method for estimated file size display. [.915.1]- Limit file size: 2GB (Until WideCharToMultiByte() / MultiByteToWideChar() INT32_MAX issues are clarified). -------------------------------------------------------- CHANGES Versions in Tools or Libraries: -------------------------------------------------------- -[.726.1]- Update grepWinNP3 (GRE) version 2.1.8.39 (2021-07-26). -[.702.5]- Update Oniguruma Regex (ONI) engine version 7.0.0 (2021-06-23). [.802.1]- Update Lexilla Library (LEX) version 5.1.2 (2021-07-26). [.726.1]- Update Scintilla Library (SCI) version 5.1.1 (2021-07-26). +[.726.1]- Update grepWinNP3 (GRE) version 2.1.8.39 (2021-07-26). +[.702.5]- Update Oniguruma Regex (ONI) engine version 7.0.0 (2021-06-23). -------------------------------------------------------- FIXES: @@ -215,10 +217,10 @@ CHANGES: -------------------------------------------------------- CHANGES Versions in Tools or Libraries: -------------------------------------------------------- -[.726.1]- Update grepWinNP3 (GRE) version 2.1.8.39 (2021-07-26). -[.702.5]- Update Oniguruma Regex (ONI) engine version 7.0.0 (2021-06-23). [.802.1]- Update Lexilla Library (LEX) version 5.1.2 (2021-07-26). [.726.1]- Update Scintilla Library (SCI) version 5.1.1 (2021-07-26). +[.726.1]- Update grepWinNP3 (GRE) version 2.1.8.39 (2021-07-26). +[.702.5]- Update Oniguruma Regex (ONI) engine version 7.0.0 (2021-06-23). -------------------------------------------------------- FIXES: diff --git a/Build/Notepad3.ini b/Build/Notepad3.ini index e4be2901c..415144e21 100644 --- a/Build/Notepad3.ini +++ b/Build/Notepad3.ini @@ -5,7 +5,6 @@ SettingsVersion=5 [Settings2] ;IMEInteraction=0 -;AutoReloadTimeout=2000 ;DateTimeFormat= (-> ) ;DateTimeLongFormat= (-> ) ;TimeStampRegEx= (-> \$Date:[^\$]+\$ ) (Find-Pattern to Update Stamps) @@ -16,7 +15,7 @@ SettingsVersion=5 ;DenyVirtualSpaceAccess=0 ;filebrowser.exe=minipath.exe ;grepWin.exe=grepWinNP3.exe -;FileCheckInverval=2000 +;FileCheckInverval=0 ;FileChangedIndicator=[@] ;FileDeletedIndicator=[X] ;FileDlgFilters= diff --git a/Versions/build.txt b/Versions/build.txt index d00491fd7..0cfbf0888 100644 --- a/Versions/build.txt +++ b/Versions/build.txt @@ -1 +1 @@ -1 +2 diff --git a/Versions/day.txt b/Versions/day.txt index f0a9f26fc..209fc0eb4 100644 --- a/Versions/day.txt +++ b/Versions/day.txt @@ -1 +1 @@ -916 +923 diff --git a/res/Notepad3.exe.manifest.conf b/res/Notepad3.exe.manifest.conf index 6738040d0..6ec1c23d0 100644 --- a/res/Notepad3.exe.manifest.conf +++ b/res/Notepad3.exe.manifest.conf @@ -3,7 +3,7 @@ Notepad3 beta diff --git a/src/Config/Config.cpp b/src/Config/Config.cpp index 6121bc319..11872908b 100644 --- a/src/Config/Config.cpp +++ b/src/Config/Config.cpp @@ -1176,10 +1176,16 @@ void LoadSettings() IniSectionGetStringNoQuotes(IniSecSettings2, L"FileDlgFilters", L"", Settings2.FileDlgFilters, COUNTOF(Settings2.FileDlgFilters) - 2); - Settings2.FileCheckInverval = clampul(IniSectionGetInt(IniSecSettings2, L"FileCheckInverval", 2000UL), 250UL, 300000UL); - - Settings2.AutoReloadTimeout = clampul(IniSectionGetInt(IniSecSettings2, L"AutoReloadTimeout", 2000UL), 250UL, 300000UL); - FileWatching.AutoReloadTimeout = Settings2.AutoReloadTimeout; + Settings2.FileCheckInverval = clampul(IniSectionGetInt(IniSecSettings2, L"FileCheckInverval", 0), 0, 86400000<<2); // max: 48h + // handle deprecated old "AutoReloadTimeout" + int const autoReload = IniSectionGetInt(IniSecSettings2, L"AutoReloadTimeout", -1); // deprecated + unsigned int const fci = max_u(250, (autoReload > 0) ? max_u(autoReload, Settings2.FileCheckInverval) : Settings2.FileCheckInverval); + if ((Settings2.FileCheckInverval > 0) && (fci != Settings2.FileCheckInverval)) { + Settings2.FileCheckInverval = fci; + IniSectionSetInt(IniSecSettings2, L"FileCheckInverval", Settings2.FileCheckInverval); + bDirtyFlag = true; + } + FileWatching.FileCheckInverval = Settings2.FileCheckInverval; IniSectionGetString(IniSecSettings2, L"FileChangedIndicator", L"[@]", Settings2.FileChangedIndicator, COUNTOF(Settings2.FileChangedIndicator)); @@ -2034,6 +2040,7 @@ static bool _SaveSettings(bool bForceSaveSettings) // --- remove deprecated --- IniSectionDelete(IniSecSettings2, L"MarkOccurrencesMaxCount", false); + IniSectionDelete(IniSecSettings2, L"AutoReloadTimeout", false); // -------------------------------------------------------------------------- diff --git a/src/Notepad3.c b/src/Notepad3.c index c452babb0..36810b6d5 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -5757,12 +5757,12 @@ LRESULT MsgCommand(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam) SendWMCommand(hwnd, IDM_FILE_REVERT); _saveChgNotify = FileWatching.FileWatchingMode; FileWatching.FileWatchingMode = FWM_AUTORELOAD; - FileWatching.AutoReloadTimeout = 250UL; + FileWatching.FileCheckInverval = 250UL; UndoRedoRecordingStop(); SciCall_SetEndAtLastLine(false); } else { FileWatching.FileWatchingMode = _saveChgNotify; - FileWatching.AutoReloadTimeout = Settings2.AutoReloadTimeout; + FileWatching.FileCheckInverval = Settings2.FileCheckInverval; UndoRedoRecordingStart(); SciCall_SetEndAtLastLine(!Settings.ScrollPastEOF); } @@ -11513,7 +11513,8 @@ static inline void NotifyIfFileHasChanged(const bool forcedNotify) { } // ---------------------------------------------------------------------------- - +// FWM_MSGBOX (polling: FileWatching.FileCheckInverval) +// FWM_AUTORELOAD (also FileWatching.MonitoringLog) static void CALLBACK WatchTimerProc(HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime) { UNREFERENCED_PARAMETER(dwTime); @@ -11523,23 +11524,9 @@ static void CALLBACK WatchTimerProc(HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWOR DWORD const diff = GetTickCount() - s_dwFileChangeNotifyTime; - //if (HasDirChanged()) { - // ResetEventDirChanged(); - // NotifyIfFileHasChanged(false); - //} else + // Directory-Observer is not notified for continously updated (log-)files if (diff > Settings2.FileCheckInverval) { - // FWM_MSGBOX (polling: FileWatching.FileCheckInverval) - // Directory-Observer is not notified for continously updated (log-)files - NotifyIfFileHasChanged(false); - } else if (diff > FileWatching.AutoReloadTimeout) { - // FWM_AUTORELOAD (also FileWatching.MonitoringLog) - if (FileWatching.MonitoringLog) { - // monitoring: reload only on change - NotifyIfFileHasChanged(false); - } else { - // unconditional reload - NotifyIfFileHasChanged(false); - } + NotifyIfFileHasChanged(/*FileWatching.MonitoringLog*/ false); } } // ---------------------------------------------------------------------------- @@ -11676,7 +11663,12 @@ void InstallFileWatching(const bool bInstall) { } s_dwFileChangeNotifyTime = (FileWatching.FileWatchingMode == FWM_AUTORELOAD) ? GetTickCount() : 0UL; - SetTimer(Globals.hwndMain, ID_WATCHTIMER, min_dw(Settings2.FileCheckInverval, FileWatching.AutoReloadTimeout), WatchTimerProc); + if (FileWatching.FileCheckInverval > 0) { + SetTimer(Globals.hwndMain, ID_WATCHTIMER, FileWatching.FileCheckInverval, WatchTimerProc); + } + else { + KillTimer(Globals.hwndMain, ID_WATCHTIMER); + } } else if (bExclusiveLock) { diff --git a/src/TypeDefs.h b/src/TypeDefs.h index 501e70ecb..0dd388741 100644 --- a/src/TypeDefs.h +++ b/src/TypeDefs.h @@ -630,7 +630,6 @@ typedef struct _settings2_t int OpacityLevel; int FindReplaceOpacityLevel; DWORD FileCheckInverval; - DWORD AutoReloadTimeout; DWORD UndoTransactionTimeout; int IMEInteraction; int SciFontQuality; @@ -717,8 +716,8 @@ typedef struct _filewatching_t { FILE_WATCHING_MODE flagChangeNotify; // <-> s_flagChangeNotify; FILE_WATCHING_MODE FileWatchingMode; // <-> Settings.FileWatchingMode; - DWORD AutoReloadTimeout; // <-> Settings2.AutoReloadTimeout; - bool MonitoringLog; + DWORD FileCheckInverval; // <-> Settings2.FileCheckInverval; + bool MonitoringLog; } FILEWATCHING_T, *PFILEWATCHING_T; diff --git a/src/VersionEx.h b/src/VersionEx.h index 51a1ad6c8..5827b6c46 100644 --- a/src/VersionEx.h +++ b/src/VersionEx.h @@ -8,8 +8,8 @@ #define SAPPNAME "Notepad3" #define VERSION_MAJOR 5 #define VERSION_MINOR 21 -#define VERSION_REV 916 -#define VERSION_BUILD 1 +#define VERSION_REV 923 +#define VERSION_BUILD 2 #define SCINTILLA_VER 511 #define LEXILLA_VER 511 #define ONIGURUMA_REGEX_VER 7.0.0