diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 1a6bab6c9..5512fc6d8 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -190,6 +190,7 @@ No native ARM64 grepWin build exists. The ARM64 build uses `grepWin-x64_portable - **Editor config**: `.editorconfig` enforces UTF-8/CRLF for source files, 4-space indentation for C/C++; Lexilla code uses tabs (preserved from upstream) - **File encoding rules** (must be respected when creating or editing these files): - `language\*\*.rc` — **UTF-8 without BOM**. Never write or save these files with a UTF-8 BOM. Use `Build\rc_to_utf8.cmd` to strip accidental BOMs. + - **PowerShell pitfall**: `[System.Text.Encoding]::UTF8` writes **with** BOM. Always use `[System.Text.UTF8Encoding]::new($false)` when writing `.rc` files from PowerShell scripts. - `Build\Notepad3.ini`, `Build\minipath.ini` — **UTF-8 with BOM** (BOM = `EF BB BF`). These INI reference files must retain the BOM. - **String safety**: Uses `strsafe.h` throughout; deprecated string functions are disabled diff --git a/CLAUDE.md b/CLAUDE.md index 331df0dbf..6a484406b 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -275,6 +275,7 @@ No native ARM64 grepWin build exists. The ARM64 build uses `grepWin-x64_portable - `.editorconfig` enforces UTF-8/CRLF for source, 4-space indent for C/C++; Lexilla code uses tabs (preserved from upstream) - **File encoding rules** (must be respected when creating or editing these files): - `language\*\*.rc` — **UTF-8 without BOM**. Never write or save these files with a UTF-8 BOM. Use `Build\rc_to_utf8.cmd` to strip accidental BOMs. + - **PowerShell pitfall**: `[System.Text.Encoding]::UTF8` writes **with** BOM. Always use `[System.Text.UTF8Encoding]::new($false)` when writing `.rc` files from PowerShell scripts. - `Build\Notepad3.ini`, `Build\minipath.ini` — **UTF-8 with BOM** (BOM = `EF BB BF`). These INI reference files must retain the BOM. - String safety via `strsafe.h` throughout; deprecated string functions are disabled diff --git a/language/common_res.h b/language/common_res.h index 120c66dcf..91c69cbba 100644 --- a/language/common_res.h +++ b/language/common_res.h @@ -873,6 +873,7 @@ #define IDM_TRAY_EXIT 43701 #define IDM_SETPASS 43702 #define IDM_EDIT_INSERT_GUID 43705 +#define IDM_EDIT_STOP_PASTEBOARD 43706 #define IDS_ENC_ANSI 61000 diff --git a/language/np3_af_za/menu_af_za.rc b/language/np3_af_za/menu_af_za.rc index 0ac02c43e..f85feec77 100644 --- a/language/np3_af_za/menu_af_za.rc +++ b/language/np3_af_za/menu_af_za.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Wysig" BEGIN MENUITEM "Document &Read Only" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "O&ngedaan\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "Oo&rdoen\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_be_by/menu_be_by.rc b/language/np3_be_by/menu_be_by.rc index 33535ffcf..f73c32e99 100644 --- a/language/np3_be_by/menu_be_by.rc +++ b/language/np3_be_by/menu_be_by.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Праўка" BEGIN MENUITEM "Дакумент толькі для &чытання" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "Ад&мена\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Паўтор\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_de_de/menu_de_de.rc b/language/np3_de_de/menu_de_de.rc index 732a88871..71db440c9 100644 --- a/language/np3_de_de/menu_de_de.rc +++ b/language/np3_de_de/menu_de_de.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Bearbeiten" BEGIN MENUITEM "&Dokument Nur Lesen" IDM_VIEW_READONLY + MENUITEM "Zwischenablage &Überwachung abbrechen", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Rückgängig\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Wiederholen\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_el_gr/menu_el_gr.rc b/language/np3_el_gr/menu_el_gr.rc index dd6f92185..7d7275bb7 100644 --- a/language/np3_el_gr/menu_el_gr.rc +++ b/language/np3_el_gr/menu_el_gr.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Επεξεργασία" BEGIN MENUITEM "Document &Read Only" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "Αναίρε&ση\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "Επανάλη&ψη ενέργειας\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_en_gb/menu_en_gb.rc b/language/np3_en_gb/menu_en_gb.rc index 5ac0af694..f7f25bbdc 100644 --- a/language/np3_en_gb/menu_en_gb.rc +++ b/language/np3_en_gb/menu_en_gb.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Edit" BEGIN MENUITEM "Document &Read Only" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Undo\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Redo\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_en_us/menu_en_us.rc b/language/np3_en_us/menu_en_us.rc index 12da60f64..6dbc3df4c 100644 --- a/language/np3_en_us/menu_en_us.rc +++ b/language/np3_en_us/menu_en_us.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Edit" BEGIN MENUITEM "Document &Read Only" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Undo\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Redo\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_es_es/menu_es_es.rc b/language/np3_es_es/menu_es_es.rc index 83c7593f0..f71c7886c 100644 --- a/language/np3_es_es/menu_es_es.rc +++ b/language/np3_es_es/menu_es_es.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Edición" BEGIN MENUITEM "Documento &Sólo lectura" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Deshacer\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "Re&hacer\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_fi_fi/menu_fi_fi.rc b/language/np3_fi_fi/menu_fi_fi.rc index 204443114..6ab7aeb39 100644 --- a/language/np3_fi_fi/menu_fi_fi.rc +++ b/language/np3_fi_fi/menu_fi_fi.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Muokkaa" BEGIN MENUITEM "Dokumentti Vain &luettavissa" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "K&umoa\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Tee uudelleen\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_fr_fr/menu_fr_fr.rc b/language/np3_fr_fr/menu_fr_fr.rc index ff24eba03..952a13093 100644 --- a/language/np3_fr_fr/menu_fr_fr.rc +++ b/language/np3_fr_fr/menu_fr_fr.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Edition" BEGIN MENUITEM "Document en &lecture seule" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "Défaire\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Rétablir\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_hi_in/menu_hi_in.rc b/language/np3_hi_in/menu_hi_in.rc index 559081998..3a93f4387 100644 --- a/language/np3_hi_in/menu_hi_in.rc +++ b/language/np3_hi_in/menu_hi_in.rc @@ -155,6 +155,7 @@ BEGIN POPUP "संपादन (&E)" BEGIN MENUITEM "दस्तावेज़ केवल पढ़ने योग्य (&R)" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "पूर्ववत करें (&U)\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "फिर से करें (&R)\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_hu_hu/menu_hu_hu.rc b/language/np3_hu_hu/menu_hu_hu.rc index b3520b124..9697a6977 100644 --- a/language/np3_hu_hu/menu_hu_hu.rc +++ b/language/np3_hu_hu/menu_hu_hu.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Szerkesztés" BEGIN MENUITEM "&Csak olvasható dokumentum" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Visszavonás\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Újra\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_id_id/menu_id_id.rc b/language/np3_id_id/menu_id_id.rc index 0b4e1617b..0022a1e0b 100644 --- a/language/np3_id_id/menu_id_id.rc +++ b/language/np3_id_id/menu_id_id.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Sunting" BEGIN MENUITEM "Mode Hanya &Baca" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Urungkan\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "Kem&balikan\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_it_it/menu_it_it.rc b/language/np3_it_it/menu_it_it.rc index d5be08c19..1d4d949d8 100644 --- a/language/np3_it_it/menu_it_it.rc +++ b/language/np3_it_it/menu_it_it.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Modifica" BEGIN MENUITEM "Documento in sola &lettura" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Annulla\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Ripristina\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_ja_jp/menu_ja_jp.rc b/language/np3_ja_jp/menu_ja_jp.rc index d4c0396db..c00242101 100644 --- a/language/np3_ja_jp/menu_ja_jp.rc +++ b/language/np3_ja_jp/menu_ja_jp.rc @@ -155,6 +155,7 @@ BEGIN POPUP "編集(&E)" BEGIN MENUITEM "閲覧専用(&R)" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "元に戻す(&U)\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "やり直し(&R)\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_ko_kr/menu_ko_kr.rc b/language/np3_ko_kr/menu_ko_kr.rc index 0cfd3cc43..9e3c935cd 100644 --- a/language/np3_ko_kr/menu_ko_kr.rc +++ b/language/np3_ko_kr/menu_ko_kr.rc @@ -155,6 +155,7 @@ BEGIN POPUP "편집(&E)" BEGIN MENUITEM "읽기 전용 문서(&R)" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "실행 취소(&U)\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "다시 실행(&R)\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_nl_nl/menu_nl_nl.rc b/language/np3_nl_nl/menu_nl_nl.rc index 264fb63e3..d0721d83a 100644 --- a/language/np3_nl_nl/menu_nl_nl.rc +++ b/language/np3_nl_nl/menu_nl_nl.rc @@ -155,6 +155,7 @@ BEGIN POPUP "Bew&erken" BEGIN MENUITEM "Document &Read Only" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Ongedaan maken\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "Op&nieuw uitvoeren\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_pl_pl/menu_pl_pl.rc b/language/np3_pl_pl/menu_pl_pl.rc index 547869c83..e7d076851 100644 --- a/language/np3_pl_pl/menu_pl_pl.rc +++ b/language/np3_pl_pl/menu_pl_pl.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Edycja" BEGIN MENUITEM "Dokument &tylko do odczytu" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Cofnij\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Powtórz\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_pt_br/menu_pt_br.rc b/language/np3_pt_br/menu_pt_br.rc index f96856e09..1ea34dade 100644 --- a/language/np3_pt_br/menu_pt_br.rc +++ b/language/np3_pt_br/menu_pt_br.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Editar" BEGIN MENUITEM "Documento somente leitu&ra" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Desfazer\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Refazer\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_pt_pt/menu_pt_pt.rc b/language/np3_pt_pt/menu_pt_pt.rc index d39e566df..e29ef28b1 100644 --- a/language/np3_pt_pt/menu_pt_pt.rc +++ b/language/np3_pt_pt/menu_pt_pt.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Editar" BEGIN MENUITEM "Documento só de leitu&ra" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "An&ular\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Refazer\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_ru_ru/menu_ru_ru.rc b/language/np3_ru_ru/menu_ru_ru.rc index c14468434..22ac82b13 100644 --- a/language/np3_ru_ru/menu_ru_ru.rc +++ b/language/np3_ru_ru/menu_ru_ru.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Правка" BEGIN MENUITEM "Документ только для чтени&я" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Отмена\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Повтор\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_sk_sk/menu_sk_sk.rc b/language/np3_sk_sk/menu_sk_sk.rc index 2c269c998..445056f20 100644 --- a/language/np3_sk_sk/menu_sk_sk.rc +++ b/language/np3_sk_sk/menu_sk_sk.rc @@ -155,6 +155,7 @@ BEGIN POPUP "&Upraviť" BEGIN MENUITEM "Dokument &Len na čítanie" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Späť\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Znova\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_sv_se/menu_sv_se.rc b/language/np3_sv_se/menu_sv_se.rc index 993b63af1..38cd25997 100644 --- a/language/np3_sv_se/menu_sv_se.rc +++ b/language/np3_sv_se/menu_sv_se.rc @@ -155,6 +155,7 @@ BEGIN POPUP "Redigera" BEGIN MENUITEM "Skrivskydda dokument" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "Ångra\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "Gör om\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_tr_tr/menu_tr_tr.rc b/language/np3_tr_tr/menu_tr_tr.rc index 181565597..bcd1697b8 100644 --- a/language/np3_tr_tr/menu_tr_tr.rc +++ b/language/np3_tr_tr/menu_tr_tr.rc @@ -155,6 +155,7 @@ BEGIN POPUP "Dü&zenle" BEGIN MENUITEM "Belge salt &okunur" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "&Geri al\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "&Yinele\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_vi_vn/menu_vi_vn.rc b/language/np3_vi_vn/menu_vi_vn.rc index d98f954d8..ccfb59cbe 100644 --- a/language/np3_vi_vn/menu_vi_vn.rc +++ b/language/np3_vi_vn/menu_vi_vn.rc @@ -155,6 +155,7 @@ BEGIN POPUP "Chỉnh sửa(&E)" BEGIN MENUITEM "Tài liệu chỉ đọc(&R)" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "Hoàn tác(&U)\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "Làm lại(&R)\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_zh_cn/menu_zh_cn.rc b/language/np3_zh_cn/menu_zh_cn.rc index b9f9e368e..1c49db1c1 100644 --- a/language/np3_zh_cn/menu_zh_cn.rc +++ b/language/np3_zh_cn/menu_zh_cn.rc @@ -155,6 +155,7 @@ BEGIN POPUP "编辑(&E)" BEGIN MENUITEM "只读(&R)" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "撤销(&U)\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "重做(&R)\tCtrl+Y", IDM_EDIT_REDO diff --git a/language/np3_zh_tw/menu_zh_tw.rc b/language/np3_zh_tw/menu_zh_tw.rc index 4fbdc707d..3feff3658 100644 --- a/language/np3_zh_tw/menu_zh_tw.rc +++ b/language/np3_zh_tw/menu_zh_tw.rc @@ -155,6 +155,7 @@ BEGIN POPUP "編輯(&E)" BEGIN MENUITEM "唯讀(&R)" IDM_VIEW_READONLY + MENUITEM "Stop Clipboard &Monitoring", IDM_EDIT_STOP_PASTEBOARD MENUITEM SEPARATOR MENUITEM "復原(&U)\tCtrl+Z", IDM_EDIT_UNDO MENUITEM "取消復原(&R)\tCtrl+Y", IDM_EDIT_REDO diff --git a/src/Notepad3.c b/src/Notepad3.c index e3f61f5e4..849331038 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -2284,10 +2284,12 @@ LRESULT CALLBACK MainWndProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam) // break; case WM_DRAWCLIPBOARD: - if (!s_bLastCopyFromMe) { - s_iLastCopyTime = GetTicks_ms(); - } else { - s_bLastCopyFromMe = false; + if (s_flagPasteBoard) { + if (!s_bLastCopyFromMe) { + s_iLastCopyTime = GetTicks_ms(); + } else { + s_bLastCopyFromMe = false; + } } if (s_hwndNextCBChain) { @@ -2300,7 +2302,7 @@ LRESULT CALLBACK MainWndProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam) s_hwndNextCBChain = (HWND)lParam; } if (s_hwndNextCBChain) { - SendMessage(s_hwndNextCBChain,WM_CHANGECBCHAIN,lParam,wParam); + SendMessage(s_hwndNextCBChain,WM_CHANGECBCHAIN,wParam,lParam); } break; @@ -4166,6 +4168,7 @@ LRESULT MsgInitMenu(HWND hwnd, WPARAM wParam, LPARAM lParam) OpenClipboard(hwnd); EnableCmd(hmenu, IDM_EDIT_CLEARCLIPBOARD, CountClipboardFormats()); CloseClipboard(); + EnableCmd(hmenu, IDM_EDIT_STOP_PASTEBOARD, s_flagPasteBoard); EnableCmd(hmenu, IDM_EDIT_MOVELINEUP, !ro); EnableCmd(hmenu, IDM_EDIT_MOVELINEDOWN, !ro); @@ -5138,6 +5141,17 @@ static bool _HandleEditBasicCommands(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM break; + case IDM_EDIT_STOP_PASTEBOARD: + KillTimer(Globals.hwndMain, ID_PASTEBOARDTIMER); + ChangeClipboardChain(Globals.hwndMain, s_hwndNextCBChain); + s_hwndNextCBChain = NULL; + s_flagPasteBoard = false; + s_iLastCopyTime = 0; + s_bLastCopyFromMe = false; + UpdateToolbar_Now(Globals.hwndMain); + break; + + case IDM_EDIT_SELECTALL: SciCall_SelectAll(); break; @@ -12294,6 +12308,8 @@ void CALLBACK PasteBoardTimerProc(HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWORD UNREFERENCED_PARAMETER(idEvent); UNREFERENCED_PARAMETER(dwTime); + if (!s_flagPasteBoard) { return; } + if ((s_iLastCopyTime > 0) && ((GetTicks_ms() - s_iLastCopyTime) > 200)) { if (SciCall_CanPaste()) {