diff --git a/src/citra_qt/game_list.cpp b/src/citra_qt/game_list.cpp
index 2863e5da6..df712c14f 100644
--- a/src/citra_qt/game_list.cpp
+++ b/src/citra_qt/game_list.cpp
@@ -34,8 +34,7 @@ GameList::GameList(QWidget* parent) : QWidget{parent} {
     item_model->setHeaderData(COLUMN_FILE_TYPE, Qt::Horizontal, "File type");
     item_model->setHeaderData(COLUMN_SIZE, Qt::Horizontal, "Size");
 
-    connect(tree_view, SIGNAL(activated(const QModelIndex&)), this,
-            SLOT(ValidateEntry(const QModelIndex&)));
+    connect(tree_view, &QTreeView::activated, this, &GameList::ValidateEntry);
 
     // We must register all custom types with the Qt Automoc system so that we are able to use it
     // with
@@ -86,12 +85,13 @@ void GameList::PopulateAsync(const QString& dir_path, bool deep_scan) {
     emit ShouldCancelWorker();
     GameListWorker* worker = new GameListWorker(dir_path, deep_scan);
 
-    connect(worker, SIGNAL(EntryReady(QList<QStandardItem*>)), this,
-            SLOT(AddEntry(QList<QStandardItem*>)), Qt::QueuedConnection);
-    connect(worker, SIGNAL(Finished()), this, SLOT(DonePopulating()), Qt::QueuedConnection);
+    connect(worker, &GameListWorker::EntryReady, this, &GameList::AddEntry, Qt::QueuedConnection);
+    connect(worker, &GameListWorker::Finished, this, &GameList::DonePopulating,
+            Qt::QueuedConnection);
     // Use DirectConnection here because worker->Cancel() is thread-safe and we want it to cancel
     // without delay.
-    connect(this, SIGNAL(ShouldCancelWorker()), worker, SLOT(Cancel()), Qt::DirectConnection);
+    connect(this, &GameList::ShouldCancelWorker, worker, &GameListWorker::Cancel,
+            Qt::DirectConnection);
 
     QThreadPool::globalInstance()->start(worker);
     current_worker = std::move(worker);