Definition of a Palette

I have used Macs for 32 years. I’ve used many applicatons with built-in palettes, and I’ve created dozens of palettes in QuicKeys. A computer palette is a graphical interface with buttons that act in place of menu commands or keyboard shortcuts. If the palette is closed, every function that was on the palette still works.

As far as I can figure out, in KM hiding a palette means deactivating every function the palette contains (unless the function is an application menu item or built in keyboard shortcut). Hiding a palette is not supposed to deactivate its macros.

A month ago, JMichaelTX helped me set up an application-linked palette so it showed when I launched the app. But, that solution still deactivates palette items when the palette is hidden. Perhaps KM supports proper palettes, and I haven’t found a magic combination of one of eleven pull-down “Available in/when” choices or one or more of the three checkbox choices (The hotkey/corresponding items). If that is the case, I’d love some guidance. I have a very simple application-linked palette with all macros activated by a hotkey. There are times when I don’t want to see the palette but still need its macros to work. I can drag the palette almost off screen, but it becomes fully on screen if I leave the application and return.

@GregT, if you are referring to this macro:
MACRO: @Palette Show/Hide Palette for @FrontMost App

then I have found a solution/workaround to the issue you describe.
The key is to re-enable the macro group AFTER the palette has been closed, like this:

Does this make sense to you?

I think @peternlewis has added an option for the upcoming Ver 8 that will allow us to show/hide a palette without changing the Group's Active status.

No, it doesn’t make sense. Your macro starts with: + – ^ is Evernote. What kind of action is that? I can’t find anything like it. I understand the other steps.

Sorry, I thought I had mentioned that it is part of a Switch or Case action (KM Wiki).

Here's the full Action:

Please let me know if you have further questions.

I tried the complicated steps above, but they did not work. Macros still did not work if the palette was hidden. I may have made a mistake, but I was too frustrated to go over it again. Instead…

I solved the problem of no macros working when a palette is hidden.

  1. Set up your group with whatever triggers you wish.

  2. Set up a new macro to hide or show/hide the palette with whatever triggers you wish.

  3. For the “Will execute the following actions:” box choose: “Conceal Macro Palettes” from the Keyboard Maestro folder of actions.

  4. Choose from the pop-up menu: “Conceal Macro Palettes” or “Conceal Macro Palettes Until Application Switch.” I recommend the latter if two or more applications share the same palette.

  5. If you wish to make this macro a show/hide palette toggle, then check the “Reveal if already concealed” box. The title will change from “Conceal” to “Conceal/Reveal.” This is the choice I made and tested.

  6. You can put this macro in your macro group or in the Global Macro Group.

I tested this with Hot Key and Status Menu triggers on three applications. It worked perfectly.

I don't see what is complicated about this. It has been working for me for several months now.

It takes ONLY 3 simple actions AFTER the Action to Show the Palette.
With my system, it is very simple to use. The same trigger, ⌃⇧P, is used for all apps, and shows the Palette for the active app. When the Palette is closed, all of the macros in the Group for that app are still active.


[quote="GregT, post:5, topic:7579"]
I solved the problem of no macros working when a palette is hidden.
[/quote]

I don't understand how your process will fix the issue of having a palette for a Macro Group, AND allowing all of the Macros to be active when the palette is not showing.

I tried your suggested Action from `#4`, 

<img src="/uploads/default/original/2X/2/218e0c9f3b5eda11dcc7df4655bb9ea6eff86151.png" width="424" height="112">

and all it seems to do is:

1. Show/Hide the KM Master Palette
2. Prevent any Palette from being shown