[feature-requests:#1578] [Feature Request] Change History Indicators for modifications outside of current vertical scroll position
Status: open
Group: Initial
Created: Sat Feb 07, 2026 03:34 AM UTC by Jose Matos
Last Updated: Sat Feb 07, 2026 03:34 AM UTC
Owner: nobody
Attachments:
Hello, recently wanting to move over into a more feature complete/full-fledged text editor than MS Notepad (yeah, we exist lol), I downloaded Notepad++ and something that has been bugging me is that while there are change history markers, there is not a lot of purpose to them if you are leaving something unsaved outside the current vertical scroll position without any awareness of it.
Basically if you are the type that suffers from some save OCD, you'd at least want some visual feedback before saving.
The solution I propose is some indicator arrows or top/bottom lines telling the user that there is currently some modified/unsaved text outside the current vertical scroll position in the screen.
The attachment images show a simplified showcase of the idea.
The best feature implementation to do this would of course be the depicting all positions where an edit has been performed in the scrollbar the same as Visual Studio. But I've heard while that feature is indeed much more superior, it takes some more engineering to maintain performance during edge cases such as big size files/documents.
And I was told something like this would be much simpler/easier to implement.
See this thread recommending me to make this thread:
https://github.com/notepad-plus-plus/notepad-plus-plus/issues/17319
Basically I was told the Scintilla component handles this part of Notepad++ hence I made this thread.
Sent from sourceforge.net because scintill...@googlegroups.com is subscribed to https://sourceforge.net/p/scintilla/feature-requests/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/scintilla/admin/feature-requests/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.
if you are leaving something unsaved outside the current vertical scroll position without any awareness of it
Most applications, including Notepad++, indicate unsaved changes with an asterisk next to the file name in the title bar. Notepad++ also changes the colour of the icon in the file's tab.
Windows are independent and should only draw in their own area. Most of the illustrated suggestions draw outside the content area of the Scintilla window. Even if Scintilla were to force drawing on the surrounding windows like the status bar in the illustrations, it doesn't know what areas of that window are important and should be avoided and it also doesn't know when the other windows have been updated so that it should redraw these new elements.
The suggestions appear to be located relative to the window rather than relative to the document like other Scintilla elements. That is, an arrow or circle currently drawn on line 55, may have to move to line 54 if the window is scrolled up. On some platforms, like Win32, this will complicate window invalidation and redraw and impact performance. On other platforms, like macOS, where areas outside the window are cached by the system, it will be much more difficult and even slower.
There are platform-dependent APIs for drawing in independent 'layers' above the main contents. You could look into what APIs are available for this on Windows if you are interested in pursuing this further. Perhaps starting from https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setlayeredwindowattributes .
Another approach would be to add more application windows that would be responsible for new indicators. A similar result to suggestion 1 could be implemented with thin windows above and below the Scintilla window drawn with the text background colour except for the change before or after elements. This would not require any changes to Scintilla.
[feature-requests:#1578] [Feature Request] Change History Indicators for modifications outside of current vertical scroll position
Status: open
Group: Initial
Created: Sat Feb 07, 2026 03:34 AM UTC by notepadfreak
Last Updated: Sat Feb 07, 2026 03:34 AM UTC
Owner: nobody
Attachments:
Most applications, including Notepad++, indicate unsaved changes with an asterisk next to the file name in the title bar. Notepad++ also changes the colour of the icon in the file's tab.
Yes, but what I'm trying to say is that when you modify something in the current vertical scroll position and get that asterisk, you still have no visual feedback if something has been edited outside the current vertical scroll position maybe by some possible accident from pressing keyboard shortcuts, so you could go and check to make sure before saving.
And the possible UI implementations attachments are only an example. I'd assume the Scintilla devs would now the most ideal way to achieve something like this.
[feature-requests:#1578] [Feature Request] Change History Indicators for modifications outside of current vertical scroll position
Status: open
Group: Initial
Created: Sat Feb 07, 2026 03:34 AM UTC by notepadfreak
Last Updated: Sat Feb 07, 2026 10:24 AM UTC
Owner: nobody
Attachments:
[feature-requests:#1578] [Feature Request] Change History Indicators for modifications outside of current vertical scroll position
Status: open
Group: Won't_Implement
Labels: scintilla change history
Created: Sat Feb 07, 2026 03:34 AM UTC by notepadfreak
Last Updated: Sat Feb 07, 2026 11:38 PM UTC
Owner: nobody
Attachments:
you still have no visual feedback if something has been edited outside the current vertical scroll position
This is indicated by the asterisk coupled with the absence of visible change markers.
This feature does not seem worthwhile to me.
You could experiment with the concept by adding new windows to your application. Perhaps as thin windows above and below Scintilla approximating the appearance of suggestion 1 above.
[feature-requests:#1578] [Feature Request] Change History Indicators for modifications outside of current vertical scroll position
Status: open
Group: Won't_Implement
Labels: scintilla change history
Created: Sat Feb 07, 2026 03:34 AM UTC by notepadfreak
Last Updated: Sun Feb 08, 2026 08:41 PM UTC
Owner: nobody
Attachments:
The problem is when you have edited something in the current vertical scroll and also outside of it, so because you get both reddened change markers and the asterisk, you have no means to know if there are any edits outside the current vertical scroll.
And neither do you have a means to check it outside of scrolling until coming across one of those edits.
Which is inefficient.
[feature-requests:#1578] [Feature Request] Change History Indicators for modifications outside of current vertical scroll position
Status: open
Group: Won't_Implement
Labels: scintilla change history
Created: Sat Feb 07, 2026 03:34 AM UTC by notepadfreak
Last Updated: Sun Feb 08, 2026 08:46 PM UTC
Owner: nobody
Attachments:
Perhaps Notepad++ could disable the Go to Next Change menu command when it is at the last change.
[feature-requests:#1578] [Feature Request] Change History Indicators for modifications outside of current vertical scroll position
Status: open
Group: Won't_Implement
Labels: scintilla change history
Created: Sat Feb 07, 2026 03:34 AM UTC by notepadfreak
Last Updated: Sun Feb 08, 2026 11:18 PM UTC
Owner: nobody
Attachments:
I have understood recently what you are saying.
So it made me think: I was told that Scintilla handles change history.
But if N++ is the text editor UI itself that implements Scintilla, then shouldn't it simply be able to access something like "Line Number at Top of Current Screen Vertical Scroll" and "Line Number at Bottom of Current Screen Vertical Scroll", determine if there's at least a single edit above and below, and use that to create the visual indicators requested by each direction?
I was told that Scintilla handles that part, but is that really the case?
Can't that just be handled on the N++ side already?
"Line Number at Top of Current Screen Vertical Scroll" and "Line Number at Bottom of Current Screen Vertical Scroll" is something that N++ should handle instead of Scintilla, so the question is "can't they access the closest edit in each direction of the current vertical scroll already on the N++ side"?
Thanks for your time in advance for answering this. So I can get back to them on Github with whatever information you are able to provide on this.
[feature-requests:#1578] [Feature Request] Change History Indicators for modifications outside of current vertical scroll position
Status: open
Group: Won't_Implement
Labels: scintilla change history
Created: Sat Feb 07, 2026 03:34 AM UTC by notepadfreak
Last Updated: Wed Feb 11, 2026 10:10 PM UTC
Owner: nobody
Attachments:
Scintilla provides smaller pieces of functionality that are combined by applications into more complex features that suit users. So both are doing some of the work. You should read the Notepad++ source code to see how it works with change history.
I think Notepad++ has some scripting capability that you could use to add change history summarisation without changing the core Notepad++ code.
[feature-requests:#1578] [Feature Request] Change History Indicators for modifications outside of current vertical scroll position
Status: open
Group: Won't_Implement
Labels: scintilla change history
Created: Sat Feb 07, 2026 03:34 AM UTC by notepadfreak
Last Updated: Thu Feb 19, 2026 06:59 AM UTC
Owner: nobody
Attachments: