Notepad 7.9.2 with some tweaks, supporting Windows XP
Go to file
Udo Hoffmann d55350b4b5
Fix mouse cursor flicker while hovering
The reason, why the flicker occurs, is the following: There are two Windows messages sent by Windows to Scintilla, when the mouse is moved: WM_MOUSEMOVE and WM_SETCURSOR.

WM_MOUSEMOVE informs Scintilla, that the mouse has been moved inside its window.
WM_SETCURSOR informs Scintilla, that the mouse cursor has been moved. Anywhere, not necessarily in its window.
Scintilla calls the Windows function SetCursor (, which sets the mouse cursor shape, not the position), while processing both messages. Unfortunately, Scintilla uses different ways to calculate the desired cursor shape. So, whenever the mouse cursor is moved, two SetCursor calls are applied, sometimes with two different cursor shapes.

On WM_MOUSEMOVE, Scintilla calls ButtonMoveWithModifiers, which sets the correct cursor shape.
On WM_SETCURSOR, Scintilla calls SetCursor directly, sometimes with the wrong cursor shape.

This PR shows how to eliminate this effect in the modified Scintilla version used by Notepad++. This may be the fastest way to get results without introducing new effects.

The current original Scintilla version (Version 4.4.4, downloaded 2020-07-30, 5d134721c303ceecbdcb28ec82b28f0cbbdb4a55) has the same effect and can be fixed in the same way, although the WM_SETCURSOR code has been changed a little. Before updating to a new Scintilla version, we should try to get it fixed in the original Scintilla.

Fix #8588, fix #8647, close #8641
2020-08-01 15:41:04 +02:00
PowerEditor Update French & Taiwanese Madarin translation for 84ea510b67 2020-07-30 18:24:32 +02:00
scintilla Fix mouse cursor flicker while hovering 2020-08-01 15:41:04 +02:00
.gitignore Exclude PowerEditor/bin/themes/ for git 2020-06-13 16:33:03 +02:00
appveyor.yml Update makefile for mingw gcc builds 2019-11-07 22:13:47 +01:00
BUILD.md Update BUILD.md 2020-06-01 16:36:51 +02:00
CONTRIBUTING.md Fix a grammatical error 2020-05-28 16:28:19 +02:00
ISSUE_TEMPLATE.md Improve DebugInfo area of issue creation template 2020-05-08 19:13:27 +02:00
LICENSE Update copyright 2020-04-04 23:03:18 +02:00
nppGpgPub.asc Add Notepad++ GPG public key 2019-04-04 23:20:45 +02:00
README.md Make README.md more readable 2020-02-05 20:00:45 +01:00

What is Notepad++ ?

GitHub release     Appveyor build status     Join the disscussions at https://community.notepad-plus-plus.org/     Join the chat at https://gitter.im/notepad-plus-plus/notepad-plus-plus

Notepad++ is a free (free as in both "free speech" and "free beer") source code editor and Notepad replacement that supports several programming languages and natural languages. Running in the MS Windows environment, its use is governed by GPL License.

See the Notepad++ official site for more information.

Notepad++ Release Key

Since the release of version 7.6.5 Notepad++ is signed using GPG with the following key:

  • Signer: Notepad++
  • E-mail: don.h@free.fr
  • Key ID: 0x8D84F46E
  • Key fingerprint: 14BC E436 2749 B2B5 1F8C 7122 6C42 9F1D 8D84 F46E
  • Key type: RSA 4096/4096
  • Created: 2019-03-11
  • Expiries: 2021-03-10

https://github.com/notepad-plus-plus/notepad-plus-plus/blob/master/nppGpgPub.asc

Build Notepad++

Please follow build guide to build Notepad++ from source.

Contribution

Code contribution is welcome. Here are some rules that your should follow to make your contribution accepted easily.

Notepad++ Contributors