In her 2010 campaign, Haley said the two-thirds legislative approval required to move the flag from its 30-foot (10-meter) perch was too high a hurdle to allow for real debate.
When her re-election opponent called last fall for the flag to be removed, she branded it a desperate stunt.
None of that mattered, she said, after nine people were killed last month at a black church in Charleston, including its pastor, State Sen. Clementa Pinckney, in a crime she called "pure hate."
At the June 19 bond hearing for suspected shooter Dylann Roof, the victims' families offered him forgiveness. That night, Haley said, she made a decision.
More From This Section
"That flag needed to come down," she told The Associated Press in an emotional interview Wednesday. "I could not look my kids in the face and justify that flag anymore."
The surfacing of a website showing Roof holding Confederate flags alongside a racist manifesto deepened her resolve, she said. The Confederate battle flag originally was flown by forces of the secessionist, pro-slavery southern states in the 1861-65 American Civil War in which the first shots were fired at Fort Sumter in Charleston Harbor.
But Haley said nothing publicly for several more days, waiting as calls for the flag's removal built, even among her fellow Republicans.
Before her announcement June 22, she met with legislators and community leaders, including Lonnie Randolph, president of South Carolina's chapter of the NAACP civil rights group, which has long fought to remove the flag.
Randolph said Haley had little choice. With the world watching, he said, "There was nowhere else to go."
"I give her credit for stepping out there and doing what's right," said House Minority Leader Todd Rutherford who stood with Haley during the announcement. "I wish it had been done a long time ago.