Ailing Nelson Mandela was on Tuesday visited in hospital by his wife Graca Machel and family as he spent Christmas Day on sickbed, said President Jacob Zuma who joined the family.
"We found him in good spirits," said Zuma in a statement.
"He was happy to have visitors on this special day and is looking much better. The doctors are happy with the progress that he is making," said Zuma.
Mandela, 94, was admitted to a Pretoria hospital on December 8. He has been treated there for a recurrent lung infection and underwent surgery to remove gallstones.
On Monday, Zuma's office, which is tasked with issuing updates on his condition, said doctors had confirmed that he will not be home for Christmas.
But there was no indication of when he might be discharged.
His grandson Mandla Mandela earlier told eNCA television that the family was saddened by his absence from home this Christmas.
"We are greatly saddened by his absence...we didn't anticipate that he would be away for so long," said Mandla from Mvezo village, where he is the local chief.
He said the family was hopeful that the much loved elderly statesman will be home soon, adding that his presence was enjoyed by the family and the community of Qunu, the rural village where he grew up and later retired to.
Before his retirement in 2004 Mandela used to host a Christmas feast for impoverished children in Qunu, which was a highlight for many.
Since retiring from public life, Christmas has been a more low-key affair, spent with family.
Mandela, who became South Africa's first black president after the country's first all-race elections in 1994, has a long history of lung problems, dating back to the time when he was a political prisoner on Robben Island.
In January 2011 he was hospitalised for two nights for an acute respiratory infection.
This is his longest hospital stay since coming out of prison in 1990.