Interstellar bubbles around O stars are driven by a combination of the star's wind and ionizing radiation output. The wind contribution is uncertain because the boundary between the wind and interstellar medium is difficult to observe. Mid-infrared observations (e.g., of the H ii region RCW 120) show arcs of dust emission around O stars, contained well within the H ii region bubble. These arcs could indicate the edge of an asymmetric stellar wind bubble, distorted by density gradients and/or stellar motion. We present twodimensional, radiation-hydrodynamics simulations investigating the evolution of wind bubbles and H ii regions around massive stars moving through a dense (n H = 3000 cm −3 ), uniform medium with velocities ranging from 4 to 16 km s −1 . The H ii region morphology is strongly affected by stellar motion, as expected, but the wind bubble is also very aspherical from birth, even for the lowest space velocity considered. Wind bubbles do not fill their H ii regions (we find filling factors of 10-20 per cent), at least for a main sequence star with mass M ∼ 30 M . Furthermore, even for supersonic velocities the wind bow shock does not significantly trap the ionization front. X-ray emission from the wind bubble is soft, faint, and comes mainly from the turbulent mixing layer between the wind bubble and the H ii region. The wind bubble radiates <1 per cent of its energy in X-rays; it loses most of its energy by turbulent mixing with cooler photoionized gas. Comparison of the simulations with the H ii region RCW 120 shows that its dynamical age is 0.4 Myr and that stellar motion 4 km s −1 is allowed, implying that the ionizing source is unlikely to be a runaway star but more likely formed in situ. The region's youth, and apparent isolation from other O or B stars, makes it very interesting for studies of massive star formation and of initial mass functions.