improve behaviour of context menu in treeviews

Now rightclicking on an item in the contact treeviews (Conversations,
Contacts, History) will result in the item clicked on being selected.
Before the popup menu would open for the selected item, but the
selection would not change if the click was on a different item.

This also fixes a small memory leak where the a new menu widget would
be created on every right click, but the old menu was never destroyed.
Now the same menu widget is used, it is simply updated once the
selection is changed.

The menus are also now synchronized across all the 3 contact treeviews
and code duplication is reduced by moving the popup code into its
own widget. Menu items which are not relevant to the current selection
are now greyed out instead of the menu simply being different for
different items, this is more in line with standard GTK+ behaviour.

Change-Id: I4e54d618a090e28b565cbef719065c943a826b0e
Tuleap: #930
diff --git a/po/POTFILES.in b/po/POTFILES.in
index faa5e33..5d987ba 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -8,6 +8,7 @@
 src/accountview.cpp
 src/avatarmanipulation.cpp
 src/backends/edscontactbackend.cpp
+src/contactpopupmenu.cpp
 src/contactsview.cpp
 src/dialogs.c
 src/editcontactview.cpp