There are a few spots with odd topology, which seem to be around the places where the UV map is behaving strangely.
For exampleTry pressing ⎈ Ctrl⇧ Shift⎇ AltM to select non-manifold topology. Ideally ⎈ Ctrl⇧ Shift⎇ AltM won't select anything, but in your file there are some interior faces:
ZeroAnd some zero length faces:
PlacingTry cleaning these places up a bit.
Aside from that, placing seam around the trigger seems to help a bit:
There are also a lot of ngons (faces with more than four vertices).