CHICAGO (AP) Jeff Samardzija kept the Chicago White Sox on a roll.
Samardzija had a four-hitter, Melky Cabrera homered and the White Sox shut out the Toronto Blue Jays 2-0.
The White Sox have won seven of nine and are starting to look like the team many thought would contend for a playoff spot this season.
''If we go out and do our job, we know what the outcome is gonna be,'' Samardzija said. ''If we don't, and we don't have a strong last couple weeks of the month, we know what results gonna be, too.
''It's in our hands here in the clubhouse and we need to take care of it.''
Samardzija (6-4) took care of things against the high-powered Toronto offense. He took a no-hitter into the sixth inning for a second straight game. It was his first complete game of the season. He struck out slugger Jose Bautista to end the 2 hour, 15-minute game and threw 108 pitches.
''He's got a good, overpowering, live fastball and he's got a great slider,'' Blue Jays manager John Gibbons said. ''He threw the slider behind in the count and the good ones can do that. He's easily one of the most sought-after guys out there.''
Samardzija, the subject of trade rumors as the deadline approaches, has pitched at least seven innings in seven straight starts, but Thursday was the first time during that stretch he was able to get through the eighth inning. He had just one win during that span before Thursday.
''He was sharp, he was aggressive in the zone,'' Chicago manager Robin Ventura said. ''His competitiveness is always there. That's probably the biggest thing that sticks out when you watch him pitch, emotionally and everything else.''
Toronto's R.A. Dickey (3-10) allowed two runs and four hits in seven innings.
Samardzija took a no-hitter into the sixth inning before Ryan Goins singled to right field with one out.
The next batter, Devon Travis, hit a weak grounder to left side of the infield. Third baseman Conor Gillaspie, who was playing in, tried to cut the ball off, but ended up deflecting it past shortstop Gordon Beckham into left field.
Goins advanced to third on the play. Samardzija got All-Star Josh Donaldson to ground into an inning-ending double play.
The White Sox took the lead in the bottom of the sixth. Adam Eaton led off with a triple and later scored on a passed ball as catcher Russell Martin missed Dickey's knuckleball.
Cabrera then made it 2-0 with a solo shot into the right-field bullpen.
Jose Abreu was the designated hitter on Thursday and went 2 for 4. He entered with a .333 average and a .935 OPS in 18 games at DH this season. By contrast, Adam LaRoche entered Thursday batting .291 as a first baseman and .199 as a DH.
Abreu, though, made it clear he doesn't like to DH. ''I have to thank God for the good results in the DH because that is a position I don't like,'' he said.
White Sox: Shortstop Alexei Ramirez didn't start after fouling a ball off his left foot on Wednesday night. ''He seems like he's OK,'' Ventura said.
Blue Jays: They head to Kansas City for a weekend series with the Royals. RHP Marco Estrada (6-4, 3.59 ERA) starts the opener on Friday against LHP Danny Duffy (2-4, 5.14). Estrada is 5-1 with a 3.29 ERA in his past seven starts.
White Sox: Their final series before the All-Star break is a crosstown matchup with the Cubs at Wrigley Field. Rookie LHP Carlos Rodon (3-2, 4.18 ERA) starts the opener on Friday against RHP Kyle Hendricks (4-4, 3.82). Rodon is limiting left-handed batters to a .209 average with no homers and 24 strikeouts.