diff --git a/res/skins/Deere1280x800-WXGA/skin.xml b/res/skins/Deere1280x800-WXGA/skin.xml
index 1f3aead8c29..4ee4a879d64 100644
--- a/res/skins/Deere1280x800-WXGA/skin.xml
+++ b/res/skins/Deere1280x800-WXGA/skin.xml
@@ -68,6 +68,7 @@
0
0
0
+ 0
@@ -2498,7 +2499,12 @@
-
+
+
+ [CoverArt],show_coverart
+ visible
+
+
diff --git a/src/controllers/controlpickermenu.cpp b/src/controllers/controlpickermenu.cpp
index 04658d2ea51..489c5970b64 100644
--- a/src/controllers/controlpickermenu.cpp
+++ b/src/controllers/controlpickermenu.cpp
@@ -685,6 +685,9 @@ ControlPickerMenu::ControlPickerMenu(QWidget* pParent)
addControl("[PreviewDeck]", "show_previewdeck",
tr("Preview Deck Show/Hide"),
tr("Show/hide the preview deck"), guiMenu);
+ addControl("[CoverArt]", "show_coverart",
+ tr("Cover Art Show/Hide"),
+ tr("Show/hide the cover art"), guiMenu);
const int iNumDecks = ControlObject::get(ConfigKey("[Master]", "num_decks"));
QString spinnyTitle = tr("Vinyl Spinner Show/Hide");
diff --git a/src/mixxx.cpp b/src/mixxx.cpp
index a62696e2bac..3a3b7e5c443 100644
--- a/src/mixxx.cpp
+++ b/src/mixxx.cpp
@@ -812,6 +812,10 @@ void MixxxMainWindow::slotViewShowPreviewDeck(bool enable) {
toggleVisibility(ConfigKey("[PreviewDeck]", "show_previewdeck"), enable);
}
+void MixxxMainWindow::slotViewShowCoverArt(bool enable) {
+ toggleVisibility(ConfigKey("[CoverArt]", "show_coverart"), enable);
+}
+
void setVisibilityOptionState(QAction* pAction, ConfigKey key) {
ControlObject* pVisibilityControl = ControlObject::getControl(key);
pAction->setEnabled(pVisibilityControl != NULL);
@@ -829,6 +833,8 @@ void MixxxMainWindow::onNewSkinLoaded() {
ConfigKey("[Microphone]", "show_microphone"));
setVisibilityOptionState(m_pViewShowPreviewDeck,
ConfigKey("[PreviewDeck]", "show_previewdeck"));
+ setVisibilityOptionState(m_pViewShowCoverArt,
+ ConfigKey("[CoverArt]", "show_coverart"));
}
int MixxxMainWindow::noSoundDlg(void)
@@ -1255,7 +1261,7 @@ void MixxxMainWindow::initActions()
QString showPreviewDeckTitle = tr("Show Preview Deck");
QString showPreviewDeckText = tr("Show the preview deck in the Mixxx interface.") +
- " " + mayNotBeSupported;
+ " " + mayNotBeSupported;
m_pViewShowPreviewDeck = new QAction(showPreviewDeckTitle, this);
m_pViewShowPreviewDeck->setCheckable(true);
m_pViewShowPreviewDeck->setShortcut(
@@ -1267,6 +1273,19 @@ void MixxxMainWindow::initActions()
connect(m_pViewShowPreviewDeck, SIGNAL(toggled(bool)),
this, SLOT(slotViewShowPreviewDeck(bool)));
+ QString showCoverArtTitle = tr("Show Cover Art");
+ QString showCoverArtText = tr("Show the cover art in the Mixxx interface.") +
+ " " + mayNotBeSupported;
+ m_pViewShowCoverArt = new QAction(showCoverArtTitle, this);
+ m_pViewShowCoverArt->setCheckable(true);
+ m_pViewShowCoverArt->setShortcut(
+ QKeySequence(m_pKbdConfig->getValueString(ConfigKey("[KeyboardShortcuts]",
+ "ViewMenu_ShowCoverArt"),
+ tr("Ctrl+5", "Menubar|View|Show Cover Art"))));
+ m_pViewShowCoverArt->setStatusTip(showCoverArtText);
+ m_pViewShowCoverArt->setWhatsThis(buildWhatsThis(showCoverArtTitle, showCoverArtText));
+ connect(m_pViewShowCoverArt, SIGNAL(toggled(bool)),
+ this, SLOT(slotViewShowCoverArt(bool)));
QString recordTitle = tr("&Record Mix");
QString recordText = tr("Record your mix to a file");
@@ -1378,6 +1397,7 @@ void MixxxMainWindow::initMenuBar()
m_pViewMenu->addAction(m_pViewVinylControl);
#endif
m_pViewMenu->addAction(m_pViewShowPreviewDeck);
+ m_pViewMenu->addAction(m_pViewShowCoverArt);
m_pViewMenu->addSeparator();
m_pViewMenu->addAction(m_pViewFullScreen);
diff --git a/src/mixxx.h b/src/mixxx.h
index 95938c7784c..f0e96ffd87c 100644
--- a/src/mixxx.h
+++ b/src/mixxx.h
@@ -116,6 +116,7 @@ class MixxxMainWindow : public QMainWindow {
void slotViewShowVinylControl(bool);
void slotViewShowMicrophone(bool);
void slotViewShowPreviewDeck(bool);
+ void slotViewShowCoverArt(bool);
// toogle full screen mode
void slotViewFullScreen(bool toggle);
// Reload the skin.
@@ -228,6 +229,7 @@ class MixxxMainWindow : public QMainWindow {
QAction* m_pViewVinylControl;
QAction* m_pViewShowMicrophone;
QAction* m_pViewShowPreviewDeck;
+ QAction* m_pViewShowCoverArt;
QAction* m_pViewFullScreen;
QAction* m_pHelpAboutApp;
QAction* m_pHelpSupport;
diff --git a/src/skin/legacyskinparser.cpp b/src/skin/legacyskinparser.cpp
index 099ffa9f00e..c8b3edff65e 100644
--- a/src/skin/legacyskinparser.cpp
+++ b/src/skin/legacyskinparser.cpp
@@ -962,6 +962,7 @@ QWidget* LegacySkinParser::parseSearchBox(QDomElement node) {
QWidget* LegacySkinParser::parseCoverArt(QDomElement node) {
WCoverArt* pCoverArt = new WCoverArt(m_pParent, m_pConfig);
+ setupConnections(node, pCoverArt);
setupBaseWidget(node, pCoverArt);
setupWidget(node, pCoverArt);
pCoverArt->setup(node, *m_pContext);
diff --git a/src/skin/tooltips.cpp b/src/skin/tooltips.cpp
index 8e58ac7ba14..4e490ae1abc 100644
--- a/src/skin/tooltips.cpp
+++ b/src/skin/tooltips.cpp
@@ -140,6 +140,10 @@ void Tooltips::addStandardTooltips() {
<< tr("Preview Deck")
<< tr("Show/hide the Preview deck.");
+ add("show_coverart")
+ << tr("Cover Art")
+ << tr("Show/hide the Cover Art.");
+
add("microphone_volume")
<< tr("Microphone Volume")
<< tr("Adjusts the microphone volume.")