Adam Williamson (adamw) has done a fine job at determining how to get bridged networking working with NetworkManager:
https://www.happyassassin.net/2014/07/23/bridged-networking-for-libvirt-with-networkmanager-2014-fedora-21/

According to Adam, he did the work on Fedora 21 whereas I did it on Fedora 20.  the undesirable features (problems) I found may be corrected on F21 but I believe that they have not been fixed.

While Adam's procedure for creating a bridge definition for NetworkManager using the Gnome or nm-connection-editor are basically correct.  However, The virt-manager & libvirt do not "like" the default names. [not a show stopper but it should be fixed]  Instead, the the bridge definition, use "br0" for the connection name and the device name.  For the "slave" definition (the real physical NIC), use the <physical_device_name> such as p33p1 or p4p1 or em0 or whatever.  I then rebooted the host to make sure everything was clean and the netowrk came up fine on br0.

Then, using virt-manager, I took an existing VM, deleted the virtual NIC, added a new virtual NIC using br0.  After booting up the VM, you need to edit its network configuration to delete the existing definition and add a new one pointing to the new virtual NIC.

This works!!!  And on Fedora 20 ... oops, not quite Fedora 20.  This was done on a Fedora 20 host which as the updates from fedora-virt-preview applied.  I still have a system without the preview updates so I will go back and see if it works or it needs the preview updates.

Gene