diff --git a/lazy_player/__init__.py b/lazy_player/__init__.py
index 7f471d4..039c28f 100644
--- a/lazy_player/__init__.py
+++ b/lazy_player/__init__.py
@@ -53,6 +53,15 @@ class MainWindow(Gtk.ApplicationWindow):
         list_view.set_model(selection_model)
         list_view.set_vexpand(True)
 
+        def on_activate(widget: Gtk.ListView, index: int):
+            selected_item = selection_model.get_item(index)
+            if selected_item:
+                string_obj = cast(Gtk.StringObject, selected_item)
+                string = string_obj.get_string()
+                print("activated", string)
+
+        list_view.connect("activate", on_activate)
+
         # Factory for list items
         factory = Gtk.SignalListItemFactory()
         factory.connect("setup", self._setup_list_item)