Altium designer, changing from imperic to metrics primitives won't work?
Unfortunately, AD does not really apply schematic primitives as metric (the reasons are historical).

I can get the 'apply' button to activate if I select (or de-select - weird) 'Permanent'


But when I re-open the settings, it has reverted.



I believe this is due to the schematic library editor only working consistently in imperial units.

The grid and schematic measurement units do apparently save as metric but opening a new schematic from a template with mm defined as well as the global settings at mm: My default template below.



When I actually instantiate it I get this:



In mils, as you can see.

I can change this by using 'View' -> 'Toggle units'


But this needs to be applied on a per schematic page basis. This is a sticky setting and remains in this setting during document open / close and an AD restart.

The issue I get, though, is that because the grid is metric a lot of 'off-grid' warnings appear.

I usually just leave the schematic in imperial mode to avoid the hassle. The PCB editor is much better in this respect, but is based on a per PCB basis.

If you set the default template to metric (my default below)



Then adding a PCB will bring it in as metric. As this is really the one place I need to ensure metric, I just live with the schematic issues.