Login
1 branch 0 tags
Ben (Desktop/Arch) Added a testsuite 7a0c574 28 days ago 84 Commits
moon / src / screens / podcast_feed_screen.h
#pragma once
#include "../ui.h"
#include "lvgl.h"

#define MAX_EPISODE_BUTTONS 16

struct podcast_feed_screen_state {
	lv_obj_t* list;
	char dir[STORAGE_MAX_PATH];
	int episode_count;
	char episode_dirs[MAX_EPISODE_BUTTONS][STORAGE_MAX_NAME];
};

// Setup podcast feed screen
// parent: LVGL screen object
// dir: podcast directory path (e.g. "/Podcasts/My_Podcast")
// focus_item: entry name to focus initially (NULL or empty means first)
ui_state_t setup_podcast_feed_screen(lv_obj_t* parent,
                                     const char* dir,
                                     const char* focus_item);
void free_podcast_feed_screen(podcast_feed_screen_state_t* state);
void update_podcast_feed_screen(podcast_feed_screen_state_t* state);