About to invite a child to hop onto his lap, Wilson instead dove for the floor and kept his head down as he heard shots being fired upstairs in the mall.
"I heard two shots and got out of the chair. I thought a red suit was a pretty good target," said Wilson, 68. Families waiting for Santa scattered. More shots followed, and Wilson crept away for better cover.
Witnesses said the gunman fired several times near the mall food court until the rifle jammed and he dropped a magazine onto the floor, then ran into the Macy's store.
Witnesses heard the gunman saying, "I am the shooter," as he fired rounds from a semi-automatic rifle inside the Clackamas Town Center, a popular suburban mall several miles from downtown Portland.
Some were close enough to the shooter to feel the percussion of his gun.
Police rapid-response teams came into the mall with guns drawn, telling everyone to leave. Shoppers and mall employees who were hiding stayed in touch with loved ones with cellphones and texting.
Kayla Sprint, 18, was interviewing for a job at a clothing store when she heard shots.
"We heard people running back here screaming, yelling '911,'" she told The Associated Press.
Sprint barricaded herself in the store's back room until the coast was clear.
Jason DeCosta, a manager of a window-tinting company that has a display on the mall's ground floor, said when he arrived to relieve his co-worker, he heard shots ring out upstairs.
DeCosta ran up an escalator, past people who had dropped for cover and glass littering the floor.
"I figure if he's shooting a gun, he's gonna run out of bullets," DeCosta said, "and I'm gonna take him."