macOS temporarily freezes After working fine for days, my Mac has started freezing temporarily. This is triggered by switching between applications. This freeze may last a couple of seconds to a minute or even more. After that, everything works as if nothing happened. When I switch to another app, it will happen again. I can only stop this by rebooting the Mac. Then it works fine again, even when switching between apps. 

Some additional info:


I was not able to pinpoint a single app to cause this issue. Once it occurs, it occurs on every switch, no matter between which applications.
It doesn't matter how I switch, either CMD-TAB or by selecting an other apps window by mouse, the problem is the same.
The problem occurs both with external monitors attached and when working "stand alone". (Before, I thought it had to do with external monitors, but recently the problem occurred when I was working "stand alone", so that theory is off the table.)
The problem occurs every couple of days now.
Normally, I never shutdown or reboot my Mac. I just close the lid and it goes to sleep until I open the lid again.


Details:


macOS version: 10.13.5 (17F77)
MacBook Pro (Retina, 15-inch, Mid 2014)


Does someone have had a similar problem? If so, what was the cause en did you find a solution? If not, where do I start to look for possible causes?
TL;DR
I found out that my problem was caused by the no longer maintained MagicPrefs software. Uninstalled it, problem gone!
How I found the culprit
Today the problem occurred again, and I think I managed to find the culprit! Once the problem occurred, I opened Activity Monitor to see if I could spot some process doing weird. The first thing I noticed, was that the CPU load was low overall. No processes were taking up more than 20% CPU.
Then I right clicked on the column headers to add some more columns, hoping I would find a clue. I added the column showing if a process was unexpectedly stopped. (My MacOS is set to Dutch, the column is called Plots. beëind. in Dutch, I don't know the exact column name in English.) I immediately noticed that the hidd process had a &quot;Yes&quot; in that column.
So I went Googling and found this explanation of what the hidd process is. It's the Human Interface Device Daemon. The article states:

If high resource usage persists, the likely culprit is third party software. If you’ve recently installed drivers for a third party input device, or software that lets you do things like customize your key bindings, this could hypothetically be the issue. Try uninstalling this software, then see if that solves the issue.

That made me think about software I have installed that has to do with Human Interface Devices. There wasn't anything installed recently, but I was using MagicPrefs for some years. I went to their website to see if there were any updates and saw this notice:

MagicPrefs is more than 5 years old now and is no longer mantained, the functionality it provided was made possible by Api's that are now deprecated and reverse engineered private Apple frameworks. Apple is not likely to replace the deprecated Api's nor provide access to the underlying multitouch technology so that's the end of the line for MagicPrefs and similar software.
TLDR if it doesn't work anymore thats it, if it still works then its just a matter of time until it won't.

When I uninstalled MagicPrefs, the freezing problem immediately disappeared! I think that proofs that MagicPrefs was the culprit. A pity I can't middle click any more, but I'm relieved that this weird problem is gone now!