Heat up the olive oil in a medium to large frying pan / skillet on a medium-high heat.
Add the potatoes and onions and season well with salt and pepper. Stir fry for a minute or two. Then turn the heat right down, cover and let cook slowly for 20 to 25 minutes. Stir 2 to 3 times during cooking.
Meanwhile, whisk the eggs in a large jug or bowl. Grind in more salt and pepper.
Once the potatoes and onions are cooked, carefully lift them out of the pan with a slotted spoon (so that any excess oil gets left behind) and into the bowl/jug with the eggs. Let the mixture stand for about 10 minutes, to let the flavours meld together.
Pour 2 more tablespoons of olive oil into a smaller (20 cm) frying pan / skillet on a medium heat (use up any leftover oil in the larger pan first).
Tip the egg mixture into the pan. Let it sizzle for a minute, then turn the pan right down and let the omelette cook slowly (uncovered) for about 8 minutes or until it’s about 2/3 set. As it cooks, run a spatula around the outside of the pan to pull the omelette in towards the centre and shape it (optional but nice).
Slide the omelette from the pan onto a plate, then immediately turn the pan over and hold it over the top of the omelette. Flip the plate and the pan over so that the omelette lands back in the pan, cooked side up.
Put the pan back on the low heat, and let it cook slowly for another 5 minutes, shaping it a bit more with the spatula.
Finally, slide the omelette onto a wooden board or serving plate, and cut into slices like a cake. Serve with salad, crusty bread and mayonnaise, if you like.