Angels 6, Giants 0: Jered Weaver scattered two hits over six solid innings after being activated from the disabled list and Kendrys Morales and Mark Trumbo belted back-to-back homers as host Los Angeles took two of three from San Francisco.
Alberto Callaspo also went deep, Bobby Wilson had an RBI double and Erick Aybar and Mike Trout added RBI singles. The Angels, who have won nine of their last 12 outings, improved to 32-18 since Trout debuted with the club on April 28.
Sidelined since May 28 with a back injury, Weaver (7-1) didn't miss a beat in his return to the mound. The 2011 American League Cy Young runner-up improved to 5-0 at home after striking out three.
Callaspo opened the scoring in the second inning after depositing a high fastball from Ryan Vogelsong (6-3) into the seats in right field. Callaspo's homer was his fourth of the season - and second in six games.
Vogelsong saw his six-game winning streak come to an end after yielding three runs on seven hits in as many innings. The loss was his first since May 3.
The Giants, who had won each of Vogelsong's previous eight starts, fell for the fourth time in five outings.
GAME NOTEBOOK: Los Angeles right-hander Jerome Williams was placed on the 15-day disabled list, two days removed from suffering an suspected asthma attack. Williams was taken to a local hospital after he became dizzy and suffered shortness of breath following his start. ... Vogelsong was in the Angels' minor league system briefly in 2010.