Caught up in a wave of quiet protest that started on Canada’s East Coast and appears to be rolling across the country, Mayor Jim Watson hastily hoisted the rainbow flag Thursday in front of City Hall where it will fly for the remainder of the Sochi Olympic Games.