SHRINKDATABASE is pretty useless in my opinion. Normally, you only have reason to shrink either the data or the log files. And keep in mind, that even these cases are far and few in between.
Shrinking a data file make sense if you have deleted a lot of data, and you know that this data will not be replaced by new data. For instance, you took a copy of production, and then cleared out 90% to get a small test database.
Shrinking a log file makes sense if the log grew by some accident, and you have taken measures to prevent that accident from happening again.
But shrinking something that will grow again, that's pointless.
You also mentioned filestream. You cannot shrink filestream areas, but then again, they only take up the space they need to take up since data is stored as files.
Why the two dialogues have so conflicting opinion on free space, I don't know. You can use the command sp_spaceused to investigate how much space you are using.