Comments (6)
Version 8.5 also happens to be the first version where Ctrl+Shift+B was a keyboard shortcut for this command
As that was a change I made, I'll look into it. :-)
@donho Assign me, please.
from notepad-plus-plus.
I did some bisection search, and it appears that this issue originated in version 8.5, meaning that the last version where the issue was not present was version 8.4.9.
Version 8.5 also happens to be the first version where Ctrl+Shift+B was a keyboard shortcut for this command, so probably this is some weirdness associated with that change.
from notepad-plus-plus.
It appears to be a difficulty with this line, added in #13034:
I suggest to eliminate that line and replace it with:
if (isColumnMode)
{
execute(SCI_SETSELECTIONMODE, static_cast<WPARAM>(SC_SEL_RECTANGLE));
}
from notepad-plus-plus.
It still feels like the original code should work, but clearly Scintilla doesn't like it.
Maybe @nyamatongwe has some suggestion on how this should be written so that moving the caret with an arrow key after deleting/cutting selected text doesn't create a selection.
from notepad-plus-plus.
https://www.scintilla.org/ScintillaDoc.html#SCI_CHANGESELECTIONMODE
from notepad-plus-plus.
SCI_CHANGESELECTIONMODE is a newer API I was unfamiliar with. But OK...
It still looks/feels a bit odd, but here's the code I'm thinking of proposing:
void ScintillaEditView::beginOrEndSelect(bool isColumnMode)
{
auto currPos = execute(SCI_GETCURRENTPOS);
if (_beginSelectPosition == -1)
{
_beginSelectPosition = currPos;
}
else
{
execute(SCI_CHANGESELECTIONMODE, static_cast<WPARAM>(isColumnMode ? SC_SEL_RECTANGLE : SC_SEL_STREAM));
execute(isColumnMode ? SCI_SETANCHOR : SCI_SETSEL,
static_cast<WPARAM>(_beginSelectPosition),
static_cast<LPARAM>(currPos));
_beginSelectPosition = -1;
}
}
from notepad-plus-plus.
Related Issues (20)
- [BUG] <With 2 screen the app open only in 2 screen> HOT 1
- [BUG] Runas NP from different user fails to open file with error dialog `Cannot open file` `Folder "..." doesn't exist` HOT 2
- [BUG] Notepad++ can't display most characters at the Unicode block "Number Forms" HOT 1
- [Feature request] Templates for Rename/Replace-Dialog to store pattern for re-use HOT 2
- [Feature request] Internal command to repeat the last used command
- [BUG] The regular notepad.exe opens notepad++.exe instead HOT 2
- [Feature request] Folder as Workspace is not immediately intuitive
- [BUG] Double Question Mark disappears when I remove Full Width Question Mark [VIDEO] HOT 1
- [Feature request] FaW: option to quickly close necessary FaWs
- [BUG] The width of the characters become narrower after "DirectWrite" is enabled HOT 3
- [BUG] App-V Deployment Context Menu Issue HOT 3
- [BUG] Convert to ANSI | UTF-8 HOT 2
- Search window does not appear HOT 5
- Please move Notepad++ to a non-GPL license. Richard Stallman is extremely repulsive. HOT 2
- [Feature request] Ctrl + F: Remember last used tab in find / replace dialog HOT 3
- [Feature request] Hope that the Delimiter selection settings can support multiple sets
- [Feature request] Confirm before closing multiple tabs on exit HOT 1
- [BUG] DoubleBuffer beginPaint assert in Debug version HOT 1
- [BUG] Files with .pm extension no longer recognized as Perl HOT 2
- [BUG] Incorrect syntax highlighting issue using HTML language for JavaScript Template literals use HTML TAG HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from notepad-plus-plus.