Well, I think I found a way to detect polygons that are fully covered by other polygons. This is a bit complicated and I am surprised there seems to be no other way (I might have missed a plugin), but here it is (home tested) :
Dissolve your input polygon layer (Vector > Geoprocessing Tools > Dissolve). In the field "Dissolve field", choose "-- Dissolve all --". Let's call diss
the output layer.
Apply an inner buffer to diss
: Vector > Geoprocessing Tools > Buffers. Here's the thing : you have to choose a small negative value for "Buffer distance", e.g. -0.0001 (depending on your projection). It is necessary before the next step (it will set the distance tolerance between covered and covering polygons). Let's call diss_buff
the output layer.
Use the "Select by location" tool (Vector > Research Tools). First input layer : choose your original layer. Second input layer : choose diss_buff
. In the options, select only "Include input features completely within the selection features". Click OK: all (and only) your covered polygons should be selected.
(Optional) You can save the selection with "Save As" and select "Save only selected features.
Tested on GQIS 2.8.