Fix tab settings in UDL regression

Bug reported here:
https://community.notepad-plus-plus.org/topic/21866/notepad-8-1-5-rc-3?_=1632620635740

The regression is due to e5a800722b7b31c835ae9855c54087354fb1304b
This commit is contained in:
Don Ho 2021-09-26 04:34:37 +02:00
parent a7a700145d
commit 2f7490abab
2 changed files with 11 additions and 13 deletions

View File

@ -3549,10 +3549,8 @@ void ScintillaEditView::runMarkers(bool doHide, size_t searchStart, bool endOfDo
void ScintillaEditView::setTabSettings(Lang *lang) void ScintillaEditView::setTabSettings(Lang *lang)
{ {
if (!lang) return; if (lang && lang->_tabSize != -1 && lang->_tabSize != 0)
{
if (lang->_tabSize != -1 && lang->_tabSize != 0)
{
if (lang->_langID == L_JAVASCRIPT) if (lang->_langID == L_JAVASCRIPT)
{ {
Lang *ljs = NppParameters::getInstance().getLangFromID(L_JS); Lang *ljs = NppParameters::getInstance().getLangFromID(L_JS);
@ -3560,15 +3558,15 @@ void ScintillaEditView::setTabSettings(Lang *lang)
execute(SCI_SETUSETABS, !ljs->_isTabReplacedBySpace); execute(SCI_SETUSETABS, !ljs->_isTabReplacedBySpace);
return; return;
} }
execute(SCI_SETTABWIDTH, lang->_tabSize); execute(SCI_SETTABWIDTH, lang->_tabSize);
execute(SCI_SETUSETABS, !lang->_isTabReplacedBySpace); execute(SCI_SETUSETABS, !lang->_isTabReplacedBySpace);
} }
else else
{ {
const NppGUI & nppgui = NppParameters::getInstance().getNppGUI(); const NppGUI & nppgui = NppParameters::getInstance().getNppGUI();
execute(SCI_SETTABWIDTH, nppgui._tabSize > 0 ? nppgui._tabSize : lang->_tabSize); execute(SCI_SETTABWIDTH, nppgui._tabSize > 0 ? nppgui._tabSize : 4);
execute(SCI_SETUSETABS, !nppgui._tabReplacedBySpace); execute(SCI_SETUSETABS, !nppgui._tabReplacedBySpace);
} }
} }
void ScintillaEditView::insertNewLineAboveCurrentLine() void ScintillaEditView::insertNewLineAboveCurrentLine()

View File

@ -79,7 +79,7 @@ public:
private: private:
std::vector<FolderInfo> _subFolders; std::vector<FolderInfo> _subFolders;
std::vector<FileInfo> _files; std::vector<FileInfo> _files;
FolderInfo*_parent = nullptr; FolderInfo* _parent = nullptr;
generic_string _name; generic_string _name;
generic_string _rootPath; // set only for root folder; empty for normal folder generic_string _rootPath; // set only for root folder; empty for normal folder
}; };
@ -99,7 +99,7 @@ public:
private: private:
FolderInfo _rootFolder; FolderInfo _rootFolder;
FileBrowser*_pFileBrowser = nullptr; FileBrowser* _pFileBrowser = nullptr;
HANDLE _watchThreadHandle = nullptr; HANDLE _watchThreadHandle = nullptr;
HANDLE _EventHandle = nullptr; HANDLE _EventHandle = nullptr;
static DWORD WINAPI watching(void *param); static DWORD WINAPI watching(void *param);