feat(ncm): 底部mini播放栏(替代顶栏图标) — 异Activity常驻,非播放页+有活动播放时显示:封面缩略+歌名/歌手+播放暂停+进度带+点击进播放页,宿主barhit/plsplay/home/player PASS
This commit is contained in:
1 parent
26a140e00f
commit
671f0d1835
6 files changed
+279
-3
No files matched your search
@@ -86,6 +86,8 @@ static void app_on_key(int keycode, int is_down)
|
||||
|
||||
static void app_on_tap(int x, int y)
|
||||
{
|
||||
/* mini 播放栏:非播放页底部常驻,顶层先拦(点钮 toggle / 点栏体进播放页),不落页面 on_tap。 */
|
||||
if (mini_bar_hit(x, y)) return;
|
||||
if (login_is_active()) { login_on_tap(x, y); return; }
|
||||
if (player_is_active()) { player_on_tap(x, y); return; }
|
||||
if (settings_is_active()) { settings_on_tap(x, y); return; }
|
||||
@@ -158,6 +160,7 @@ static void app_on_tick(void)
|
||||
if (act != g_reported_act) { g_reported_act = act; ipc_act_report(act); }
|
||||
}
|
||||
uint64_t now = meow_ui_time_ms();
|
||||
mini_bar_tick(now); /* mini 播放栏:可见性/歌曲/暂停态/进度变化 → 失效栏带并重绘 */
|
||||
/* §NEW cookie 续期判会话失效 → 清登录态回登录页(worker 在后台续期发现 301/-460 时置标志;
|
||||
* 在此 UI 线程执行 logout+切页——meow_view_page_replace 非线程安全,只能 UI 线程做) */
|
||||
if (account_cookie_need_relogin()) {
|
||||
@@ -223,6 +226,7 @@ int main(void)
|
||||
g_plr_view = player_view_create();
|
||||
g_set_view = settings_view_create();
|
||||
g_search_view = search_view_create();
|
||||
mini_bar_init(); /* mini 播放栏:登记跨 Activity 绘制物(进 root 页前,首帧即参与重画) */
|
||||
|
||||
/* 进入根页:已登录→home,否则→login */
|
||||
meow_view_page_push(g_st.logged_in ? ACT_HOME : ACT_LOGIN);
|
||||
@@ -237,6 +241,7 @@ int main(void)
|
||||
g_app_quit = 1;
|
||||
player_manager_stop_thread();
|
||||
ipc_media_stop();
|
||||
mini_bar_shutdown();
|
||||
meow_view_free(g_set_view);
|
||||
meow_view_free(g_plr_view);
|
||||
meow_view_free(g_pl_view);
|
||||
|
||||
Reference in new issue
Block a user