Wearing your heart on your sleeve simply means that they have their thoughts, emotions, and everything they can feel out in the open for all to see. They don't hide the fact that their sad, happy, angry, etc.
Idioms in English combine words in a way that the reader is not able to take them literally. Such an example is wearing your heart on your sleeve which does not mean having your literal heart on your sleeve but expressing your emotions without reservations.