Multiple windows / eglSwapBuffers

I have a main window which is set to be the size of the whole display rendered using OpenGL ES. Sometimes while the program is running I need to pop up system windows, for example the Ip config dialog. When I do this the new window is shown until a call to eglSwapBuffers is made. I was under the impression that eglSwapBuffers was only meant to update the window that is associated with the OpenGL context but it is updating the full screen, even where the OpenGL window is covered.

What platform are you using and how are you creating system windows? It is difficult to answer this question without more details.