[Feature] Add Windows Explorer context menu to file tabs
-
Jocelyn Legault
- State changed from open to needs_ack
(from [caadb41966b5bf529663f5ff3521c543af50629c]) Explorer Context menu: add contextual menus on tabs.
- Explorer context menu added to tab context menus.
- Code mainly leveraged from NppLightExplorer.
- Can be enabled / disabled through the preference panel.
Additions to the code from NppLightExplorer:
- Make sure that no separators show up at the top or the bottom of the Explorer Menu.
- List of unwanted menu items is larger. Some can be done by ID, others can't and are done textually.
- Comparisons with unwanted menu items is done without the '&'
Potential feature addition:
- User could specify more items he does not want to see there in the Preference panel.
[#18 state:needs_ack]
Signed-off-by: Jocelyn Legault jocelynlegault@gmail.com
http://github.com/joce/npp-community/commit/caadb41966b5bf529663f5f... -
Jocelyn Legault
- Assigned user changed from Jocelyn Legault to npp-community
-
Thell Fowler
- Tag cleared.
- Assigned user changed from npp-community to Jocelyn Legault
Why are ExplorerContentMenu and explorerMenu being used instead of ExplorerContextMenu and explorerContextMenu?
Thell
-
Thell Fowler
Joce,
After doing a merge of this and then building the debug build using vc8 I was able to get the explorer menu to show up just fine, but then I clicked on the Setting|Preferences menu and started receiving 'Unhandled Default Case' messages (which have garbage characters in the message box title), so I attached the debugger thinking that would cause a break. It didn't. After setting a break point on the only line in the source container 'Unhandled' I still found myself unable to have the BP hit. Several messages later the Preferences dialog finally came up.
I'll do some more testing, but thought you'd want to know.
Thell
-
Thell Fowler
See comment for ticket #8 regarding DEBUG vs _DEBUG
That is the culprit of the msgs I witnessed.
-
Jocelyn Legault
Why are ExplorerContentMenu and explorerMenu being used instead of ExplorerContextMenu and explorerContextMenu?
Ooops. Oversight for my part. Will be fixing that.
-
Jocelyn Legault
- Assigned user changed from Jocelyn Legault to npp-community
(from [0b71c5e77e12558136fcac7ef0f5b400dd154c1b]) Explorer menu variables: rename to clearer names.
- Trivial variable name changes to better reflect the nature of some variables used in the context of the ExplorerContextMenu.
[#18 state:needs_ack responsible:npp-community]
Signed-off-by: Jocelyn Legault jocelynlegault@gmail.com
http://github.com/joce/npp-community/commit/0b71c5e77e12558136fcac7... -
Jocelyn Legault
- Milestone set to v2.0.0
-
Thell Fowler
ExporerConextMenu class is still being referred to as ExplorerContentMenu...
Also, in ExplorerContentMenu::CleanUpMenu() you clean-up the Send To menu item. What's the reasoning for this?
Thell
-
Jocelyn Legault
Because it does not come up looking right. It only shows an empty submenu.
I guess we could try to find out why and fix it. -
Thell Fowler
- Assigned user changed from npp-community to Jocelyn Legault
Because it does not come up looking right. It only shows an empty submenu. I guess we could try to find out why and fix it.
Nah. I was mostly just curious.
The class name still needs to be fixed from ExplorerContentMenu to ExplorerContextMenu though.
-
Thell Fowler
- State changed from needs_ack to acked
Joce,
Perhaps there is something different between win7 and XP in regards to sub-menu items. I decided to do a change of ExplorerContentMenu to ExplorerContextMenu so this could get on pu and when I loaded and opened N++ this is what I saw:
1) A working Send-To submenu::
2) A non-working Share-With submenu::

Even though I'm sure you will want to do more fine tuning on this, I'm going ahead with adding it onto pu as LH-18v3 since I think it is a feature others will want to have easy access to.
I've also pushed this as a stand-alone branch for you to just grab @:
http://github.com/almostautomated/npp-community/tree/jl/LH-18v3/con...
Thell
-
npp-community
- State changed from acked to needs_ack
(from [f5fa068f552d0f4a364431e1cf3f1eb4d817b0bc]) Explorer Context menu: add contextual menus on tabs.
- Explorer context menu added to tab context menus.
- Code mainly leveraged from NppLightExplorer.
- Can be enabled / disabled through the preference panel.
Additions to the code from NppLightExplorer:
- Make sure that no separators show up at the top or the bottom of the Explorer Menu. - List of unwanted menu items is larger. Some can be done by ID, others can't and are done textually. - Comparisons with unwanted menu items is done without the '&'Potential feature addition:
- User could specify more items he does not want to see there in the Preference panel.[#18 state:needs_ack]
Signed-off-by: Jocelyn Legault jocelynlegault@gmail.com
http://github.com/npp-community/npp-community/commit/f5fa068f552d0f... -
Thell Fowler
- State changed from needs_ack to proposed
(from [e857535280887c2555689b334a8efb183f61d69e]) Merge branch 'jl/LH-18v3/context-menu-on-tabs' into pu
- jl/LH-18v3/context-menu-on-tabs: Explorer menu variables: rename to clearer names. Explorer Context menu: add contextual menus on tabs.
Conflicts:
PowerEditor/src/Notepad_plus.cpp PowerEditor/visual.net/notepadPlus.8.vcproj PowerEditor/visual.net/notepadPlus.9.vcproj[#18 state:proposed]
Signed-off-by: Thell Fowler git@tbfowler.name
http://github.com/npp-community/npp-community/commit/e857535280887c... -
npp-community
- State changed from proposed to needs_ack
- Assigned user changed from Jocelyn Legault to npp-community
(from [5c3d735bd3ad5587cbede394c2f31d7988f42d17]) Explorer menu variables: rename to clearer names.
- Trivial variable name changes to better reflect the nature of some variables used in the context of the ExplorerContextMenu.
[#18 state:needs_ack responsible:npp-community]
Acked-by: Thell Fowler git@tbfowler.name
Signed-off-by: Jocelyn Legault jocelynlegault@gmail.com
http://github.com/npp-community/npp-community/commit/5c3d735bd3ad55... -
Thell Fowler
- State changed from needs_ack to proposed
The last two automatic state changes from Github where applied in the wrong order... state is proposed and it is on pu.
-
Thell Fowler
(from [7ed450c6cb650b97ce2d323c11f89b0da152bd69]) Merge branch 'jl/LH-18v3/context-menu-on-tabs' into pu
- jl/LH-18v3/context-menu-on-tabs: Explorer menu variables: rename to clearer names. Explorer Context menu: add contextual menus on tabs.
Conflicts:
PowerEditor/src/Notepad_plus.cpp PowerEditor/visual.net/notepadPlus.9.vcproj[#18 state:proposed]
Signed-off-by: Thell Fowler git@tbfowler.name
http://github.com/npp-community/npp-community/commit/7ed450c6cb650b... -
Thell Fowler
On Windows 7 when using the context menu on a .bat file with PowerCmd loaded an access violation would happen. It looks like the cause is that the info stuct wasn't getting cleared.
By moving the definition for info and info.cbsize into the for loop in ExplorerContentMenu::CleanUpMenu() so everything is fresh for each iteration resolves this issue.
-
Thell Fowler
(from [9ed37f1a2f95bfd3cffb17c463acdae6a7f91a0e]) Merge branch 'jl/LH-18v3/context-menu-on-tabs' into pu
- jl/LH-18v3/context-menu-on-tabs: Explorer menu variables: rename to clearer names. Explorer Context menu: add contextual menus on tabs.
Conflicts:
PowerEditor/src/Notepad_plus.cpp PowerEditor/src/Parameters.h PowerEditor/src/menuCmdID.h PowerEditor/visual.net/notepadPlus.8.vcproj PowerEditor/visual.net/notepadPlus.9.vcproj[#18]
Signed-off-by: Thell Fowler git@tbfowler.name
http://github.com/almostautomated/npp-community/commit/9ed37f1a2f95... -
Thell Fowler
(from [07fc1df4a7ce597a598ec07b1c328318f1874661]) Merge branch 'jl/LH-18v3/context-menu-on-tabs' into pu
- jl/LH-18v3/context-menu-on-tabs: Explorer menu variables: rename to clearer names. Explorer Context menu: add contextual menus on tabs.
Conflicts:
PowerEditor/src/Notepad_plus.cpp PowerEditor/src/Parameters.h PowerEditor/src/menuCmdID.h PowerEditor/visual.net/notepadPlus.8.vcproj PowerEditor/visual.net/notepadPlus.9.vcproj[#18]
Acked-by: Thell Fowler git@tbfowler.name
http://github.com/npp-community/npp-community/commit/07fc1df4a7ce59... -
Thell Fowler
(from [93abcc638815d6a6aa003b9684bb57456472411c]) ExplorerContextMenu.cpp: make cbsize refresh
- On Windows 7 some extensions (ie: .bat) could cause an access violation during menu cleanup. It looks like the cause is that the info stuct wasn't getting cleared. Moving the definition for info and info.cbsize into the for loop in ExplorerContentMenu::CleanUpMenu() so everything is fresh for each iteration resolves this issue.
[#18]
Signed-off-by: Thell Fowler git@tbfowler.name
http://github.com/almostautomated/npp-community/commit/93abcc638815... -
Thell Fowler
- State changed from proposed to needs_ack
-
Jocelyn Legault
- State changed from needs_ack to acked
-
Thell Fowler
- State changed from acked to proposed
-
Thell Fowler
(from [9ea329862f8024ce153660e00bd6b98239f81923]) Merge branch 'jl/LH-18v4/context-menu-on-tabs' into pu
- jl/LH-18v4/context-menu-on-tabs: ExplorerContextMenu.cpp: make cbsize refresh Explorer menu variables: rename to clearer names. Explorer Context menu: add contextual menus on tabs.
Conflicts:
PowerEditor/src/Notepad_plus.cpp PowerEditor/src/Parameters.h PowerEditor/src/menuCmdID.h PowerEditor/visual.net/notepadPlus.8.vcproj PowerEditor/visual.net/notepadPlus.9.vcproj[#18]
Signed-off-by: Thell Fowler git@tbfowler.name
http://github.com/npp-community/npp-community/commit/9ea329862f8024... -
Jocelyn Legault
- State changed from proposed to needs_ack
- Milestone order changed from 0 to 0
(from [d250249234be51b7366e30deb72e76d89d599e91]) Explorer menu variables: rename to clearer names.
- Trivial variable name changes to better reflect the nature of some variables used in the context of the ExplorerContextMenu.
[#18 state:needs_ack responsible:npp-community]
Acked-by: Thell Fowler git@tbfowler.name
Signed-off-by: Jocelyn Legault jocelynlegault@gmail.com
http://github.com/joce/npp-community/commit/d250249234be51b7366e30d... -
Jocelyn Legault
(from [5fa8eff3704c282d8bbb67b20b71aa1db4bd513e]) Fix the tab options GUI items alignement
Vertical alignment was off and fixed.
[#18]
Signed-off-by: Jocelyn Legault jocelynlegault@gmail.com
http://github.com/joce/npp-community/commit/5fa8eff3704c282d8bbb67b... -
Thell Fowler
(from [f9ac3edfd0aa590145597b1a42516f32f5339eb0]) ExplorerContextMenu.cpp: make cbsize refresh
- On Windows 7 some extensions (ie: .bat) could cause an access violation during menu cleanup. It looks like the cause is that the info stuct wasn't getting cleared. Moving the definition for info and info.cbsize into the for loop in ExplorerContentMenu::CleanUpMenu() so everything is fresh for each iteration resolves this issue.
[#18]
Signed-off-by: Thell Fowler git@tbfowler.name
http://github.com/joce/npp-community/commit/f9ac3edfd0aa590145597b1... -
Jocelyn Legault
(from [1dc68dde70c79d64da7391428307312801972895]) Explorer Context menu: add contextual menus on tabs.
- Explorer context menu added to tab context menus.
- Code mainly leveraged from NppLightExplorer.
- Can be enabled / disabled through the preference panel.
Additions to the code from NppLightExplorer:
- Make sure that no separators show up at the top or the bottom of the Explorer Menu. - List of unwanted menu items is larger. Some can be done by ID, others can't and are done textually. - Comparisons with unwanted menu items is done without the '&'Potential feature addition:
- User could specify more items he does not want to see there in the Preference panel.[#18 state:needs_ack]
Signed-off-by: Jocelyn Legault jocelynlegault@gmail.com
http://github.com/joce/npp-community/commit/1dc68dde70c79d64da73914... -
Thell Fowler
- Assigned user changed from npp-community to Jocelyn Legault
I checked out and built your topic branch and this is what I get for a context menu on a tab. Will look into this soon.

-
Thell Fowler
- State changed from needs_ack to proposed
Figured out what was going on there. When a tab has a file that has no path the Explorer Context menu has no path to latch onto so no context menu is build for explorer! Opened an existing file and it worked great!
I would put this on next as a candidate, but as you requested 'proposed' I'll put it there instead.
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
