Emirates. Flying economy, I was able to book a fantastic window seat on the A380, just a couple of rows from the front for no extra charge, at least 4 months before the trip.
South African - I also did the same
AirLink SAA - Ditto.
Furthermore, I also had the choice of changing the seat choice, at no extra charge on all 3 airlines.