diff --git a/src/Edit.c b/src/Edit.c index dec5e407c..15de47afc 100644 --- a/src/Edit.c +++ b/src/Edit.c @@ -347,24 +347,27 @@ void __fastcall _ClearTextBuffer(HWND hwnd) { SendMessage(hwnd, SCI_CANCEL, 0, 0); - if (SendMessage(hwnd, SCI_GETREADONLY, 0, 0)) { SendMessage(hwnd, SCI_SETREADONLY, false, 0); } + IgnoreNotifyChangeEvent(); + + if (SciCall_GetReadOnly()) { SciCall_SetReadOnly(false); } UndoRedoActionMap(-1, NULL); - SciCall_SetUndoCollection(false); - SendMessage(hwnd, SCI_CLEARALL, 0, 0); - SendMessage(hwnd, SCI_MARKERDELETEALL, (WPARAM)MARKER_NP3_BOOKMARK, 0); - EditClearAllOccurrenceMarkers(hwnd, 0, -1); if (EditToggleView(g_hwndEdit, false)) { EditToggleView(g_hwndEdit, true); } + SendMessage(hwnd, SCI_CLEARALL, 0, 0); + SendMessage(hwnd, SCI_MARKERDELETEALL, (WPARAM)MARKER_NP3_BOOKMARK, 0); + SciCall_SetUndoCollection(true); SendMessage(hwnd, SCI_SETSCROLLWIDTH, 1, 0); SendMessage(hwnd, SCI_SETXOFFSET, 0, 0); + + ObserveNotifyChangeEvent(); } diff --git a/src/Notepad3.c b/src/Notepad3.c index 177213ec1..5bd8fd1fa 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -2448,7 +2448,7 @@ void MsgInitMenu(HWND hwnd,WPARAM wParam,LPARAM lParam) EnableCmd(hmenu, CMD_CTRLENTER, !ro); EnableCmd(hmenu, IDM_EDIT_INSERT_TAG, !ro); - EnableCmd(hmenu,IDM_EDIT_INSERT_ENCODING, *Encoding_GetParseNames(Encoding_Current(CPI_GET) && !ro)); + EnableCmd(hmenu, IDM_EDIT_INSERT_ENCODING, (Encoding_GetParseNames(Encoding_Current(CPI_GET)) != NULL) && !ro); EnableCmd(hmenu,IDM_EDIT_INSERT_SHORTDATE,!ro); EnableCmd(hmenu,IDM_EDIT_INSERT_LONGDATE,!ro); @@ -7243,7 +7243,7 @@ void UpdateToolbar() EnableTool(IDT_EDIT_COPY, !b1 && !ro); EnableTool(IDT_EDIT_CLEAR, !b1 && !ro); - EnableTool(IDT_VIEW_TOGGLEFOLDS, b2 && (g_bCodeFoldingAvailable && g_bShowCodeFolding) && !tv); + EnableTool(IDT_VIEW_TOGGLEFOLDS, b2 && (g_bCodeFoldingAvailable && g_bShowCodeFolding)); EnableTool(IDT_VIEW_TOGGLE_VIEW, b2 && ((g_iMarkOccurrences > 0) && !g_bMarkOccurrencesMatchVisible)); CheckTool(IDT_VIEW_TOGGLE_VIEW, tv);