This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Menu Build -> Build Main Project displays F11 as its shortcut. However, this shortcut in fact does not work - instead it is assigned to the Dashboard system command. Either F11 should work for "build main project" or it should not be displayed in the menu item. This is a major usability problem, thus setting priority to P2.
I checked with Mac machine and F11 is not shown in the Build menu, what build do you have? JDK?
You are right, currently Build Main Project does not have any shortcut. However, that is equally bad. I have a June 12 build and JDK 1.5.0_07.
> Either F11 should work for "build main project" or it should not be displayed in the menu item. Now it's not displayed in the menu and wrote that it's equally bad. So what should be the correct behavior? Do you mean different shortcut for Macs?
F11 can reconfigured in Macs System Preferences for Dashboard & Expose. As well as build project action can be recofigured in IDE to different shortcut. I don't think we can do much about it, if the shortcut is stolen by OS.
> You are right, currently Build Main Project does not have any shortcut. This is now fixed. So do you know what is the default on Mac? Is F11 assigned to something on Mac by default? If it is, then we should change our default. If it's not, then I agree we can not do much about this.
F11 is assigned to Dashboard & Expose command by default on Macs so IDE won't receive that key. IMO it's impossible to come up with set of shortcuts that work on all platforms. There are e.g. other shortcuts that are stolen by linux window managers. I think that solution is this case is remap Dashboard command in Macs System Preferences to something else and then IDE will Build Main Project on F11.
We already have a module which contains Mac-specific key bindings, so why don't we just provide a different binding for Build Main Project on Macs?
OK, such Mac-specific shorcut will be? No more P2 IMO.
I agree with Jesse's proposed solution and with decreasing the priority to P3. Please also find a new shortcut for F9 (Compile single file), which is also assigned to a system action on Mac. Thanks.
Reassign back to me when resolved. Thanks.
This problem is caused by mac consuming F9-F12 and Shift + F9-12 keys in OOTB settings. Conflicts are: F9 - Compile selected package or file F11 - Build Main Project Shift + F9 - Toggle profiling point Shift + F11 - Clean & Build Main Project Suggested solution is: Alt + F9 - Compile selected package or file Alt + F11 - Build Main Project Alt + Shift + F9 - Toggle profiling point Alt + Shift + F11 - Clean & Build Main Project All abovementioned shortcuts should be applicable only on mac computers, their PC versions should remain untouched. There should be no conflicts with other actions as there is no pc-modifier key to be tranlated to Alt on macs.
Thanks, Ondro! BTW, this is really annoying, I am adding the fix-in-60 marker.
olangr, please see http://wiki.netbeans.org/wiki/view/DevFaqLogicalKeybindings which describes a way how to map shortcuts on Mac. It seems that shortcuts recommended by you are in contradiction with the wiki topic. Thanks for explanation.
Do you mean following rule?: --- QUOTATION --- There should be no Alt-bound keyboard shortcuts on the mac ever - it is used on international keyboards as the compose key (for a long time, we didn't know it, but Norwegian and French users could not type } or { in NetBeans - kind of limits the usefuless of a Java IDE). ----------------- I am aware of the shortcomings of Alt shortcuts on mac (and also on PC, we don't use them there due to mnemonics). It actually applies only to Alt + Character shortcuts, Alt + F-key shortcuts are not a problem. To be absolutely sure I tested all norwegian extended, french, german, chinese and chinese simplified. With all these keyboard layouts, all proposed shortcuts are fine on mac computer with MAC OS X 10.4.1.
The problem with this issue is that module system doesn't allow to load modules in particular order except module dependency which cannot be used in this case. Solution is to load module that will fix all those shortcuts on Mac as last one but that's not possible currently without setting dependency, but it cannot be used because disabling some module would possibly remove fixed shortcuts for other active module.
What is the significance of module load order in this case? Can it be made irrelevant by permitting a keybinding to consist of a folder rather than single file, with the first non-null instance gotten from a file in that folder (in layer-specified order) being used for the binding?
Jesse, does your comment assume that issue 15926 is implemented? However it is not and it will unlikely be for 6.0...
Yes, I had forgotten I had filed that! It sounds like issue #15926 would be helpful in this case, if I understand the problem correctly.
Can't this be done where other mac keybinding modifications are implemented? I don't know where and how, but this problem must have already been solved e.g. for following actions/keys: find next - F3 (PC), Cmd + G (Mac) replace - Ctrl + H, Cmd + R (Mac) .. and also for this issue: http://www.netbeans.org/issues/show_bug.cgi?id=113135
Editor shortcuts are registered completely differently than menu shortcuts, and IIRC AppleMenu does depend on the editor (or at least used to), so it is easy for it to be loaded after the editor and override things.
OK, but we are talking about menu shortcuts.
i've fixed the following actions: F9 - Compile selected package or file F11 - Build Main Project Shift + F11 - Clean & Build Main Project http://hg.netbeans.org/main/rev/8f1f8d37e876
reassigning to profiler team to fix their own action. it should be possible to use the same technique (see my changeset)
this fix caused regression #131845 so i've reverted it
Profiler shortcut problem already tracked by Issue 114365. Reassigning back to original owner.
milane, you have been working on this, reassigning.
Using originalFile="" is senseless. I guess the correct fix should have been to inject a dynamic layer into the SFS which computes the correct shortcut name on the fly. More generally, I would suggest creating a platform module which looks for subtrees in the SFS named e.g. Mac/ or Unix/ or Linux/ or Windows/ or whatever (see e.g. org.openide.modules.* tokens and Utilities.OS_* constants), maybe also NotMac/ etc., maybe all under some folder such as OS/, and automatically merges their contents into the SFS (shifted up to root) when running on that OS. Therefore the defaults module could simply have: <folder name="OS"> <folder name="NotMac"> <folder name="Keymaps"> <folder name="NetBeans"> <file name="F11.shadow"> <attr name="originalFile" stringvalue="Actions/Project/org-netbeans-modules-project-ui-BuildMainProject.instance"/> </file> </folder> </folder> </folder> <folder name="Mac"> <folder name="Keymaps"> <folder name="NetBeans"> <file name="A-F11.shadow"> <attr name="originalFile" stringvalue="Actions/Project/org-netbeans-modules-project-ui-BuildMainProject.instance"/> </file> </folder> </folder> </folder> </folder> This could be useful for various purposes, I think. We already have messy stuff to exclude e.g. File > Exit on Macs, which could be simplified and made more declarative this way. Would be API_REVIEW_FAST.
moving opened issues from TM <= 6.1 to TM=Dev
still planed for 6.5?
If there is a time ...
*** Issue 173952 has been marked as a duplicate of this issue. ***
Without a Mac I can neither confirm nor fix.
Comment #27 would perhaps be made possible by a fix of bug #198508. But anyway the obvious fix, defining shortcuts in the defaults module, should be easy now; comment #15 is obsolete as of the fix of bug #141925. Please reevaluate.
Not sure if this issue is still valid. If so, please reopen, thanks.