CLEVELAND -- — Exiled to the clubhouse after being ejected, Indians manager Terry Francona heard a loud rumble.
Bobby Bradley made Progressive Field rock.
Bradley homered leading off the ninth inning as Cleveland overcame some brutal baserunning that led a crazy play at third base and Francona getting tossed in a wild 2-1 win over the Kansas City Royals on Friday night.
Bradley drove a 1-2 pitch from Jake Brentz (2-2) over the wall in right-center for his 10th homer as the Indians got their second straight walk-off win at home, touching off a celebration in the stands and at home plate.
Francona didn't get to see it live.
“Because when you come in here, everything is delayed by about eight or 10 seconds,” he said. "I ran to the TV and Bobby is standing there in the batter’s box. Then about two seconds later, I saw why.
"That was a very nice little surprise.”
It was quite a moment for Bradley, who has given Cleveland's lineup some pop since he was brought up from the minors. His heroics came a day after Franmil Reyes' three-run homer in the ninth ended the Indians' nine-game losing streak.
“It’s just baseball at the end of the day and sometimes it goes your way and sometimes it doesn’t,” said Bradley, who also homered Thursday. "And unfortunately during the nine-game streak, things weren’t going our way, but we never gave up. That’s where we’re at now, just staying in that mindset that we’ve got to fight.”
James Karinchak (6-2) got his second win in two nights, steering around a leadoff double in the ninth.
Jorge Soler homered for the Royals, who have dropped 14 of 17 to fall a season-worst 16 games under .500.
Cleveland got a terrific start from Triston McKenzie, who struck out nine in a career-high seven innings.
Before Bradley's big swing, the Indians were positioned to break a 1-1 tie in eighth — but literally ran themselves out of the inning.
César Hernández followed with a single to get Johnson to third, and that's where the fun started.
But as both were being tagged by Royals All-Star catcher Salvador Perez, Johnson, who was entitled to the base, stepped off and third base umpire James Hoye called both runners out.
Francona asked for an explanation on the odd double play. And when he didn't like what he heard, Francona profanely laid into Hoye before being ejected for the first time this season.
“There’s a couple ways to go there and I don’t think they got it right,” Francona said.
“I probably said some things that I didn’t mean, but it’s a tough play especially in that situation in the game,” he said.
As the play unfolded, Keller, who allowed just one run and four hits in 7 2/3 innings, wasn't sure what he was seeing.
“I think my jaw was on the ground the whole time,” the right-hander said. “I've been playing baseball my whole life and I still don't know the rule. I've never seen it happen before and I'm thankful it happened.”
McKenzie blanked the Royals on just one hit. The 23-year-old, who has spent the season yo-yoing back and forth from the minors, was at 85 pitches when Francona turned things over to his bullpen in the eighth.
Emmanuel Clase couldn't protect the lead or McKenzie's win, however, as Soler mashed an 0-1 pitch over the wall in left to tie it 1-1.
McKenzie's solid outing was the just the second time in 26 games that Cleveland, whose rotation has been shredded by injuries all season, had a starter go six innings.
“That was so exciting,” Francona said. “In fact, when he came out of the game, I might’ve hurt him I hit him so hard.”
The Indians acquired right-hander Damon Casetta-Stubbs from Seattle to complete the June 10 trade that sent first baseman Jake Bauers to the Mariners. The 21-year-old has been pitching in A ball.
ONE TO GO
Santana homered twice against the Indians on Thursday, his first homers against his former team. He has now homered against 29 of 30 active franchises. The only exception are the Dodgers, who originally signed him in 2004.
Indians: RHP Shane Bieber began throwing with weighted balls as he continues to recover from shoulder soreness. The reigning AL Cy Young winner will be further evaluated over the weekend and the medical staff will decide what's next. He's been sidelined since June 14. ... OF Jordan Luplow (sprained ankle) is scheduled to start playing in games in Arizona next week and will go to Triple-A Columbus before a possible return.
Paul Goldschmidt hits a 3-run HR in the 3rd inning
Paul Goldschmidt goes yard with a 399-foot home run to put the Cards up 5-0.
Robles HR, 6 RBIs, Nationals beat Rockies 13-7 in Game 1
— Victor Robles homered, singled twice and drove in a career-high six runs as the Washington Nationals beat the Colorado Rockies 13-7 Saturday in the first game of a split doubleheader.
Riley Adams' two-run HR extends the Nats' lead
Riley Adams makes it 13-7 for the Nationals with a two-run homer.
Eovaldi gets 1st career complete game; Boston beats O's 5-3
— Nathan Eovaldi pitched a seven-hitter for his first career complete game, and the Boston Red Sox beat the Baltimore Orioles 5-3 on Saturday in the opener of a day-night doubleheader.
Eovaldi goes the distance as Red Sox take down Orioles
Nathan Eovaldi strikes out six batters en route to a complete-game win vs. the Orioles.
Bobby Dalbec's pinch-hit HR puts Red Sox up for good
Bobby Dalbec comes in as a pinch-hitter and hits a solo home run for the Red Sox.