When I strain something in the shoulder area it results in some muscle tightening up and upsetting the whole fit of my shoulder joint, causing pinging and catching and uncomfortable rotation. Here is something I learned from a physical therapist that fixes this problem. Grab a dumbbell in the hand of the affected side - maybe 10 lbs or so. IF you don't have a dumbell handy, use something else heavy like a milk jug filled with water or a heavy rock.
Bend at the waist next to a table and support your upper body by resting your free arm on the table. Now, swing your affected arm back and forth, allowing the weight to pull on the shoulder until all catches and kinks are gone. There are 4 planes to swing in - horizontally, front to back, and the two diagonals. You will have to position yourself in relation to the table to allow a free and full swing in each plane.
As you do the swings, at first your shoulder will feel tight and resist the weight. Focus on letting go of resistance, letting the arm drop lower, letting the weight pull the joint into proper alignment. Centrifugal force is your friend and the weight is your ally. If you aren't progressing into a looser, smoother swing, you might need a heavier weight to overcome the tension.
This exercise has been a godsend. It resolves weird shoulder tightness and impairment/impingement for me every time it develops. I often do it before each set of shoulder exercises to improve the shoulder alignment so that I have a smoother, better range of motion. Hope this helps!