diff --git a/core/assets/common/_global/application/mainmenu/mainmenu_button.mp3 b/core/assets/common/_global/application/mainmenu/mainmenu_button.mp3
new file mode 100644
index 0000000000000000000000000000000000000000..231e02b707437b73cfffc63d583cdd4062ee1bb4
Binary files /dev/null and b/core/assets/common/_global/application/mainmenu/mainmenu_button.mp3 differ
diff --git a/core/src/cz/nic/tablexia/loader/application/ApplicationSoundManager.java b/core/src/cz/nic/tablexia/loader/application/ApplicationSoundManager.java
index a5d48237e323102221d95431f9f3ccf88d5a2f7a..49f24492ed3d35086b550daa0ddfdb56785676bd 100644
--- a/core/src/cz/nic/tablexia/loader/application/ApplicationSoundManager.java
+++ b/core/src/cz/nic/tablexia/loader/application/ApplicationSoundManager.java
@@ -31,10 +31,12 @@ public class ApplicationSoundManager extends TablexiaSoundManager implements IAp
 	private static final String MAINMENU_PATH 		= "mainmenu/";
 	public 	static final String MAINMENU_OPEN		= MAINMENU_PATH + "mainmenu_open.mp3";
     public 	static final String MAINMENU_CLOSE		= MAINMENU_PATH + "mainmenu_close.mp3";
+	public 	static final String MAINMENU_BUTTON		= MAINMENU_PATH + "mainmenu_button.mp3";
 
     public void load() {
         loadSound(MAINMENU_OPEN);
         loadSound(MAINMENU_CLOSE);
+		loadSound(MAINMENU_BUTTON);
     }
 
 	private String createAssetPath(String fileName) {
diff --git a/core/src/cz/nic/tablexia/menu/AbstractMenu.java b/core/src/cz/nic/tablexia/menu/AbstractMenu.java
index ed597bd5fd68c271938b8064f04094841b8eca51..7aaa47a81fc3af0f61b8c66709b3caf97570deb4 100644
--- a/core/src/cz/nic/tablexia/menu/AbstractMenu.java
+++ b/core/src/cz/nic/tablexia/menu/AbstractMenu.java
@@ -186,6 +186,7 @@ public abstract class AbstractMenu extends Stack implements Disposable {
                 @Override
                 public void clicked(InputEvent event, float x, float y) {
                     if (!isDisableControl()) {
+                        ApplicationSoundManager.getInstance().getSound(ApplicationSoundManager.MAINMENU_BUTTON).play();
                         disableMenuGravity(true);
                         toggleMenu();
                     }
diff --git a/core/src/cz/nic/tablexia/menu/main/MainMenu.java b/core/src/cz/nic/tablexia/menu/main/MainMenu.java
index 3fefd6712db7b5dd5a67735df81dd96346125470..49f008ac74e73dc9b2dde5e19c8e4ed2977134a1 100644
--- a/core/src/cz/nic/tablexia/menu/main/MainMenu.java
+++ b/core/src/cz/nic/tablexia/menu/main/MainMenu.java
@@ -21,6 +21,7 @@ import cz.nic.tablexia.TablexiaSettings;
 import cz.nic.tablexia.bus.ApplicationBus;
 import cz.nic.tablexia.bus.event.SubMenuControlEvent;
 import cz.nic.tablexia.loader.application.ApplicationFontManager;
+import cz.nic.tablexia.loader.application.ApplicationSoundManager;
 import cz.nic.tablexia.menu.AbstractMenu;
 import cz.nic.tablexia.menu.IMenuItem;
 import cz.nic.tablexia.menu.main.locale.LocaleSelectBox;
@@ -134,6 +135,7 @@ public class MainMenu extends AbstractMenu {
 
     private void performMenuAction(IMenuItem menuItem) {
         if (!isDisableControl()) {
+            ApplicationSoundManager.getInstance().getSound(ApplicationSoundManager.MAINMENU_BUTTON).play();
             if (menuItem.getMenuAction() != null) {
                 disableMenuGravity(true);
             }
diff --git a/core/src/cz/nic/tablexia/menu/user/UserMenu.java b/core/src/cz/nic/tablexia/menu/user/UserMenu.java
index de838a09e07d86afb449ace21a982a467e5a8292..561def9cf23ba6fe8e75b9583d40dd0e88befe72 100644
--- a/core/src/cz/nic/tablexia/menu/user/UserMenu.java
+++ b/core/src/cz/nic/tablexia/menu/user/UserMenu.java
@@ -13,6 +13,7 @@ import cz.nic.tablexia.Tablexia;
 import cz.nic.tablexia.TablexiaApplication;
 import cz.nic.tablexia.bus.ApplicationBus;
 import cz.nic.tablexia.bus.event.MenuControlEvent;
+import cz.nic.tablexia.loader.application.ApplicationSoundManager;
 import cz.nic.tablexia.menu.AbstractMenu;
 import cz.nic.tablexia.menu.IMenuItem;
 import cz.nic.tablexia.model.User;
@@ -59,6 +60,7 @@ public class UserMenu extends AbstractMenu {
             userItemGroup.addListener(new ClickListener() {
                 @Override
                 public void clicked(InputEvent event, float x, float y) {
+                    ApplicationSoundManager.getInstance().getSound(ApplicationSoundManager.MAINMENU_BUTTON).play();
                     doMenuAction(menuItem.getMenuAction(), true, true);
                     menuItem.performAction();
                 }
diff --git a/core/src/cz/nic/tablexia/util/ui/AbstractTablexiaSelectBox.java b/core/src/cz/nic/tablexia/util/ui/AbstractTablexiaSelectBox.java
index ec8eaaca257080ee378e6ce41f9f13bf725f808d..feb99c3083569c037f5fcc2edeb1477420cde7f7 100644
--- a/core/src/cz/nic/tablexia/util/ui/AbstractTablexiaSelectBox.java
+++ b/core/src/cz/nic/tablexia/util/ui/AbstractTablexiaSelectBox.java
@@ -21,6 +21,8 @@ import com.badlogic.gdx.scenes.scene2d.utils.Drawable;
 import com.badlogic.gdx.utils.Array;
 import com.badlogic.gdx.utils.ObjectSet;
 
+import cz.nic.tablexia.loader.application.ApplicationSoundManager;
+
 import static com.badlogic.gdx.scenes.scene2d.actions.Actions.fadeIn;
 import static com.badlogic.gdx.scenes.scene2d.actions.Actions.fadeOut;
 import static com.badlogic.gdx.scenes.scene2d.actions.Actions.removeActor;
@@ -51,10 +53,12 @@ public abstract class AbstractTablexiaSelectBox<T> extends Widget implements Dis
             public boolean touchDown (InputEvent event, float x, float y, int pointer, int button) {
                 if (pointer == 0 && button != 0) return false;
                 if (disabled) return false;
-                if (selectBoxList.hasParent())
+                ApplicationSoundManager.getInstance().getSound(ApplicationSoundManager.MAINMENU_BUTTON).play();
+                if (selectBoxList.hasParent()) {
                     hideList();
-                else
+                } else {
                     showList();
+                }
                 return true;
             }
         });
@@ -265,6 +269,7 @@ public abstract class AbstractTablexiaSelectBox<T> extends Widget implements Dis
 
             hideListener = new InputListener() {
                 public boolean touchDown (InputEvent event, float x, float y, int pointer, int button) {
+                    ApplicationSoundManager.getInstance().getSound(ApplicationSoundManager.MAINMENU_BUTTON).play();
                     Actor target = event.getTarget();
                     if (isAscendantOf(target)) return false;
                     list.selection.set(selectBox.getSelected());