Is the commentary in https://discussions.apple.com/thread/7901286 out-of-date / not applicable in your case? I am not a Mac user, but that discussion is about Java apps on a Mac, and SQL Developer is a Java (fat client) app. For convenience, that discussion recommends:
Systems Preferences -> Keyboard -> "Touch Bar Shows" -> select "F1,F2,etc. keys" from the drop down menu. The, under "Press Fn key to", select "expand control strip" to show the secondary functions, like screen brightness, music control etc. Those two settings combined will make it function as the normal F1-F12 and Fn keys on a standard, non-touchbar keyboard.
That answer in that linked article actually has nothing to do with java apps, it just describes how to get the touch bar to always show function keys (regardless of active application).
I am trying to get the per-application setting to work, where the behavior of the touch bar changes depending on the active application. This setting seems to work for other apps but not for SQLDeveloper. Not sure if the same is true for all java apps or if SQLDeveloper is special.
OK, but are any of those other applications Java apps? If so, then perhaps SQL Developer is not taking advantage of some Java API available in MacOS that the others are. Or possibly it is a bug in the native MacOS code that Java calls, or maybe the Java version in use.
You should post the version numbers of your SQL Developer and Java installs. See Help > About and Help > About > Properties and search for java.home.
Hope a Mac user is able to shed more light on this for you.
My guess it that adding SQL Developer to Keyboard -> Shortcuts -> Function Keys fails because currently it only supports Mac apps. Similar to comments in
Maybe Apple will improve support for Java one day. If not, there is something that can be done about it from the SQL Developer side of things, as in
but that requires some work that the SQL Developer team may not care to take on.
Uptake of custom touch bar functionality in SQLDevloper as per 2nd link (thizzer link does not load for me, so just guessing what it says) is absolutely not the ask. That is high-effort and unwanted in this case.
The link https://www.mac-forums.com/forums/macos-operating-system/341124-touchbar-f1-f12-keys-specific-application.html is describing exactly my problem, but the demonstrated "IBM Host On-Demand" application is being run as raw jars, not as a packaged macintosh application. Looks like the process is getting launched as a jnlp process; this is not a properly packaged macintosh application.
The ask is, figure out why the existing Mac preferences for SQLDeveloper are not working. As this *is* a properly-packaged macintosh application, there should in theory be a way to make it work.
My SQLDeveloper about box export:
Oracle SQL Developer 184.108.40.206
IDE Version: 220.127.116.11.42.190403.1502
Product ID: oracle.sqldeveloper
Product Version: 18.104.22.168.2212
Oracle IDE 22.214.171.124.2212
Java(TM) Platform 1.8.0_221
Versioning Support 126.96.36.199.2212
Name Identifier Version Status Registration Time Initialization Time Total Time
==== ========== ======= ====== ================= =================== ==========
As this *is* a properly-packaged macintosh application, there should in theory be a way to make it work.
OK, I will take your word for it. As noted previously, I have no experience with Macs.
Your forum handle indicates you are an Oracle employee. If that is true, probably contacting the Product Manager, Jeff Smith, directly via Oracle email is your best bet.
since you work for us, just reach out on slack, the forums are for customers