Heat oil in a medium saucepan. Add leek and cook, stirring occasionally, until tender. Add the garlic and cook, stirring, until fragrant. Stir in the tomato and olives; cook until heated through. Remove from heat; stir in parsley.
Boil, steam or microwave the potato until tender; drain. Place in a large bowl, drizzle with 1 tablespoon of the oil; cover to keep warm.
Coat the fish in flour; shake off any excess. Heat the remaining oil in a large frying pan. Cook the fish, skin-side down, in batches, until the skin crisps. Turn fish and cook until cooked through. Serve the fish with potatoes and salsa.