Skip to content

feat: 支持 QuickJS/Python 爬虫日志接入 Web 调试日志 + 自动 debug 签名 - #107

Open
llb0 wants to merge 334 commits into
fish2018:mainfrom
llb0:main
Open

llb0 wants to merge 334 commits into
fish2018:mainfrom
llb0:main

Conversation

@llb0

@llb0 llb0 commented Aug 9, 2026

Copy link
Copy Markdown

改动说明:

  1. DebugLogs.java - Console Tab 增加 quickjs 和 python-spider tag 匹配
  2. chaquo/src/main/python/base/spider.py - Python 爬虫日志桥接 SpiderDebug
  3. quickjs Console.java - QuickJS 爬虫日志桥接 SpiderDebug
  4. .github/workflows/android-release.yml - 无签名密钥时自动生成 debug keystore,默认 CNB 不同步

YaChengMu pushed a commit to YaChengMu/webhtv that referenced this pull request Aug 11, 2026
fix: 修复后台音频切换后停止播放
llb0 and others added 30 commits September 5, 2026 17:11
打开站点选择器定位到当前源,支持在线更新
* 优化签名校验Improve APK signing verification in Updater

Refactor APK signing verification logic to handle cases with empty signing certificate history.

* Enable V1, V2, and V3 signing in build.gradle

* 来源屏蔽对话框增加标题Update SourceBlockDialog to show search view

Make search view visible and set its text.

* Add string for blocking source selection

* Restore 'title_block_source' string in Chinese localization

* Add title_block_source string for dialog

* Add string for blocking source types

* Update source site paths in strings.xml for zh-rCN

* Update source paths in Chinese strings

* Update source folder paths in strings.xml

* Implement auto backup and cleanup functionality

Added methods for automatic backup and cleanup of auto backup files.

* Change backup method to autoBackupOnExit in HomeActivity

* Change backup method to autoBackupOnExit

* Update SourceBlockDialog UI elements

* Add minimum height for GitHub and OCI custom views

Set minimum height for custom GitHub and OCI views and adjust focus behavior.

* Replace TextViews with MaterialButtons in dialog

Updated buttons in dialog_site_picker.xml to use MaterialButton with adjusted text size and height.

* Add site selection and notify adapter changes

Implement site selection logic in SiteDialog.

* Refactor minHeight setting to use ResUtil

* Update dialog_site_picker.xml

* Enhance SiteDialog with focus handling and cleanup

Added focus handling for active site in SiteDialog and removed old selection logic.

* Refactor focus handling in SiteDialog

* Add GitHub Proxy and OCI Mirror buttons to dialog

* Update button background resources in UpdateSettingsDialog

* Change button text colors and stroke colors

* Fix textColor attribute in dialog_site_picker.xml

* Update source URLs and folder descriptions in strings.xml

* Update strings for VOD and live URLs in Chinese

* Update folder paths in strings.xml

* Refactor UpdateSettingsDialog focus handling

Removed unnecessary focus settings and background resources for githubProxy and ociMirror.
* Refactor signature comparison in signaturesMatch method

Refactor signaturesMatch method to improve signature comparison logic for installed and archive packages.

* 修正tv版站点选择初始化焦点

* Update dialog_site.xml

* Set focusableInTouchMode to false in adapter_site.xml

Changed focusableInTouchMode attribute to false.

* Refactor view_control_vod_action layout attributes

Removed nextFocusLeft attribute from next TextView and added visibility attribute to timer TextView.

* Add PlayerFocusContainer for custom focus handling

* Replace LinearLayout with PlayerFocusContainer

* Add TIMER action button to VideoActivity

* Add TIMER constant and item to PlayerButtonSetting

* Fix target position reference in scroll listener

* Add auto backup on exit in HomeActivity

Ensure auto backup occurs when exiting HomeActivity.

* Update view_control_vod_action.xml

* Refactor focus handling in PlayerFocusContainer

* Add enableCircularHorizontal attribute to layout

* Remove pan diagnostic action update functionality

Removed updatePanDiagnosticAction method and its calls.

* Add PDS button to PlayerButtonSetting

* Make dialog focusable for user interaction

* Enable focusableInTouchMode for adapter_site layout

* Improve focus handling in SiteDialog scrolling

Refactor scrolling logic to request focus on target position with retries.

* Fix formatting issue in PlayerButtonSetting.java

* Add attrs.xml for PlayerFocusContainer attributes

* Enhance focusSearch for circular left/right navigation

Refactor focus search logic to support circular navigation.

* Enhance focus search and key event handling

Refactor focus handling for left and right navigation, enabling circular focus behavior.

* Remove placePanDiagnosticAction method

Removed the placePanDiagnosticAction method and its call from the addActionButtons method.
* 修复更新设置在tv版上的显示问题Refactor selector_light_dialog_item.xml for ripple effects

Updated the drawable selector to include ripple effects for focused and default states.

* Update dialog_update_settings.xml

* Update render calls to use post method for UI updates

* Refactor longClick method for better null handling

* Enable long click on adapter site switch layout

* Implement long click trigger in SiteAdapter

Add long click handling to prevent immediate click action.

* Add null and state checks in onDelete method

* Refactor isLongTriggered to ViewHolder

Moved isLongTriggered variable to ViewHolder for better encapsulation.

* Filter adapter after deleting site file

Modify site deletion logic to filter adapter after deletion.

* Refactor selector_light_dialog_item drawable

Updated the drawable selector for light dialog items by modifying colors and stroke properties.

* Update text color in dialog_update_settings layout

* Refactor long click handling in SiteAdapter

Replaced long click listener implementation with inline lambda to improve readability and maintainability.

* Refactor long click listener in SiteAdapter

* Change text color to black in dialog_update_settings

* Refactor SiteAdapter for key event handling

Refactor SiteAdapter to handle key events instead of click listeners. Removed long click handling and adjusted item interaction logic.

* Refactor key event handling in SiteAdapter

Refactor SiteAdapter to handle key events and improve click handling.

* Refactor item binding with long press support

Refactor bind method to use a long press handler for item actions.

* Update selector_light_dialog_item.xml

* Refactor bind method in SiteAdapter for clarity

* Add OnKeyEventListener interface for key events

* Refactor SiteDialog for improved dialog handling

Refactor SiteDialog to remove direct dialog handling and implement long press functionality for item deletion.

* Implement key event listener in SiteAdapter

Added OnKeyEventListener interface and its implementation to handle key events in SiteAdapter.

* Refactor selector_light_dialog_item.xml for layers

* Refactor site retrieval from adapter in SiteDialog

* Add listener setter and improve focus handling

Added a method to set a listener for SiteDialog and improved item focus handling in the RecyclerView.

* Refactor selector_light_dialog_item.xml for simplicity

Refactored the selector to simplify the structure and remove unnecessary layer-lists. Updated ripple effects and background shapes for improved UI consistency.

* Enhance SiteDialog event handling

Refactor event handling for site configuration and deletion.

* Implement refreshSites method in SiteAdapter

Added refreshSites method to clear and update site items.

* Enhance SiteDialog focus handling and validation

* Add click listener to SiteAdapter item view

* Add listener to SiteDialog in showDialog method

* Add long press handling to SiteDialog

* Add newline at end of SiteAdapter.java

Fix missing newline at end of SiteAdapter.java file.

* Remove unnecessary position check in key event handling

Remove check for RecyclerView.NO_POSITION before handling key down event.

* Remove key event listener functionality

Removed OnKeyEventListener interface and its usage.

* Refactor SiteDialog by removing long press handling

* Remove null check for activity in Toast message

* Refactor scrolling and focus logic in SiteDialog

* Refactor site scrolling and file deletion logic

* Refactor deleteFileSite method to simplify logic

Removed old file deletion logic and retained updated method.

* Update SiteDialog.java

* Refactor padding and focus attributes in dialog layout

* Refactor SiteDialog's scrollAndFocusActiveSite method

Refactor scrollAndFocusActiveSite method for clarity and efficiency by removing unnecessary checks and simplifying the focus logic.

* Add focusable attributes to dialog layout

* Fix formatting in dialog_site.xml layout

* Enhance SiteDialog to wait for layout on show

Added a listener to the dialog to wait for layout and focus when the list is loaded.

* Enhance site removal functionality in SiteDialog

Remove site from list and update adapter accordingly.

* Implement site removal functionality in SiteAdapter

Added removeSite method to handle site removal from lists.

* Implement removeSite method in SiteAdapter

Added a method to remove a site from the adapter and update the data accordingly.

* Refactor site deletion handling in SiteDialog

Update site removal logic to handle current home and site list.

* Enhance file deletion logic in SiteDialog

Improve file deletion handling with error feedback.

* Update toast message on delete failure

Change toast message for deletion failure in SiteDialog.

* Add failure message for site deletion in Chinese

* Add failure message for site deletion

* Add error message for site deletion failure

* Handle fallback home site on deletion

Added fallback home site handling when deleting current home site.
Removed calls to placePanDiagnosticAction and updatePanDiagnosticAction methods.
* 修复tv站点选择器长按触发单击的问题

* Remove onViewRecycled method from SiteAdapter

Removed onViewRecycled method to simplify view recycling logic.
* Update appearance summary string to reflect changes

* Update appearance summary count in Chinese strings

* Update appearance summary option count to 5

* 增加默认启动设置

Added default launch options and methods to get and put default launch settings.

* Add default launch setting functionality

* Implement startup action logic in HomeActivity

Add startup action handling in HomeActivity.

* Add default launch option in SettingFragment

* Add startup action logic in HomeActivity

Implement startup action handling in HomeActivity.

* Add default launch setting layout

* Add default launch setting layout elements

* Add default launch settings and options in Chinese

* Add default launch settings in Chinese localization

* Add default launch options to strings.xml

* 默认启动最近时全屏播放Add fullscreen start option in VideoActivity

* Simplify recent history launch in HomeActivity

* Simplify recent history video launch logic

* Add startFullscreen functionality to VideoActivity
* 修复投屏崩溃Add null check for mFlagAdapter in VideoActivity

* 修复投屏异常Add finishVideoForCast method to VideoActivity

* Modify cast event handling in HomeActivity

Handle cast events differently based on the current activity type.

* Add finishVideoForCast method in VideoActivity

Added a method to finish video playback when casting.

* Refactor onReceiveCast method for better clarity

* 修复投屏进度不同步问题Enhance cast history management in VideoActivity

Updated VideoActivity to handle cast history more effectively.

* Add cast history handling to VideoActivity
* tv播放增加推送功能Add PUSH constant and item to PlayerButtonSetting

* Add cast button and update related functionality

* Replace CAST action button with PUSH

* Enable saving default speed in VideoActivity

* 修复长按临时倍速被持久化问题Add speed management for long press actions

Store the player's speed before long press and restore it on speed end.

* Remove cast history handling from VideoActivity

Refactor VideoActivity to remove cast history handling and adjust related methods.

* Enhance VideoActivity with cast history support

Refactor VideoActivity to include cast history handling in start methods and applyCastHistory method.

* Refactor history method to simplify ID handling

* Refactor history method to simplify URL handling

* Add cast episode hint to VideoActivity

* Add episode hint handling in VideoActivity

Added mCastEpisodeHint to store episode hints from cast history. Updated seamless method to utilize mCastEpisodeHint for episode retrieval.

* Refactor history handling in ReceiveDialog

* Update dispatchCast method to use event history

* Add cast search functionality to VideoActivity

* Implement casting search feature in VideoActivity

Added functionality for casting search in VideoActivity.

* Fix missing newline at end of HomeActivity.java

Add missing newline at the end of HomeActivity.java

* Fix missing newline at end of ReceiveDialog.java

* Add retry logic for cast detail retrieval

* Enhance casting logic and retry mechanism in VideoActivity

Added mCastDetailRetry variable to manage retry attempts for casting details. Updated fullscreen logic to enter fullscreen for both startFullscreen and isCast conditions. Enhanced checkCast method to handle audio stage visibility without forcing fullscreen.

* Change text from 'play_cast' to 'push' in XML
* 重构首页布局Refactor HomeActivity to remove history features

Refactor HomeActivity to remove history-related functionality and integrate HomeMenuDialog for menu actions.

* Implement HomeMenuDialog for displaying menu items

* Refactor CustomTitleView to simplify key handling

* Add boundary listener support in FuncPresenter

* Add drawable for home history in Func.java

* Add HistoryActivity for managing viewing history

* Add HistoryAdapter for managing history items

* Create HomeMenuAdapter.java

* Update layout for activity_home.xml with new views

* Add dialog_home_menu layout XML file

* Adjust layout dimensions and padding in adapter_func.xml

* Add activity_history.xml layout file

* Add HistoryActivity to AndroidManifest

* Change '最近观看' to '历史' in strings.xml

* Update Chinese translations for home history and recommend

* Update home_recommend string in Chinese localization

* Refactor home menu item handling and recommendations

* Change funcRecycler height to 48dp and fix layout closing

* Adjust layout dimensions and padding in adapter_func.xml

* Add 'home_switch' string resource

* Add 'home_switch' string for source switching

* Add home_switch string for Chinese localization

* Fix missing newline at end of HomeActivity.java

Add missing newline at the end of HomeActivity.java

* Adjust menu items to include refresh option

* 监听菜单键

* Adjust spacing and row height in HomeActivity

* Modify padding and height in activity_home.xml

Adjusted padding and layout height for better UI alignment.

* Update adapter_func.xml

* Change horizontal spacing in funcRecycler

* Change HorizontalGridView width to 0dp with weight

* Improve key event handling in HomeActivity

Enhance key event handling for recycler visibility and focus management.

* Update layout dimensions and restructure XML elements

* Update HomeMenuAdapter to accept spanCount parameter

* Enhance HomeMenuAdapter with spanCount and navigation

Added spanCount parameter to HomeMenuAdapter to manage item layout across multiple spans. Implemented key navigation logic for RecyclerView items based on span count.

* Dynamically set funcRecycler width based on item count

Adjust the width of the funcRecycler based on the number of items in the adapter.

* Refactor layout by removing duplicate HorizontalGridView

Removed duplicate HorizontalGridView and adjusted layout.

* Adjust funcRecycler width calculation in HomeActivity

* Refactor HomeMenuDialog to extend DialogFragment

* Refactor HomeMenuAdapter to use AdapterHomeMenuBinding

* Refactor dialog_home_menu layout structure

* Add adapter_home_menu.xml layout file

* Adjust width calculation for funcRecycler

* Add key listener for menu key in HomeMenuDialog

* Update item background states in HomeMenuAdapter

* Enhance adapter_home_menu layout attributes

Added margin and clickable attributes to the layout.
* Simplify menu key handling in HomeMenuDialog

* Move autoBackupOnExit call to exitHome method

* 抽取复用玻璃质感样式Refactor background handling in HomeMenuAdapter

Replaced custom background drawable with BaseGlassDialog's glassItemBackground method and removed unused methods for item background.

* Add BaseGlassDialog class for dialog management

* Refactor SiteDialog to extend BaseGlassDialog

* Add handle view to dialog layout

* Remove background from adapter_site_switch layout

Removed background drawable from LinearLayoutCompat.

* Enhance SiteAdapter with background and focus handling

Added background to SiteAdapter items and updated focus listener.

* Add BaseGlassDialog class for dialog management

* Delete app/src/leanback/java/com/fongmi/android/tv/ui/dialog/BaseGlassDialog.java

* Update SourceBlockDialog.java

* Refactor SourceBlockDialog to extend BaseGlassDialog

* Update SiteCheckAdapter.java

* Refactor SearchSitePickerDialog to extend BaseGlassDialog

* Remove background from item_site_check layout

Removed background drawable from item_site_check layout.

* Refactor SearchSourceDialog class

Refactor SearchSourceDialog to extend BaseGlassDialog and update dialog width ratio.

* Set background for ViewHolder in SearchSourceAdapter

* Add handle view to dialog_search_source layout

* Remove background from item_search_source layout

Removed background drawable from LinearLayoutCompat.

* Add ids.xml with root and handle IDs

* Update BaseGlassDialog.java

* Enhance dialog layout with handle view and clean up

Added a handle view for better user interaction and removed background attributes from buttons.

* Update layout with padding and fix closing tag

Added padding to the LinearLayout and ensured proper closing tag.

* Change descendantFocusability to blocksDescendants

* Add padding to LinearLayout in item_site_check.xml

Added padding to the LinearLayout and ensured proper closing tag.

* Improve SiteDialog with AlertDialog and layout updates

Refactor dialog creation and layout handling in SiteDialog.

* Change descendantFocusability to afterDescendants

* Change subtitle visibility from GONE to INVISIBLE

* Set background for ViewHolder in SourceCheckAdapter

* Replace MaterialButton with MaterialTextView in dialog

* Update stroke properties in selector_light_dialog_item

* Change AlertDialog to use androidx.appcompat

* Update button styles and colors in dialog layout
* 清理空历史Enhance save method and add deleteEmpty functionality

Add URL check in save method and implement deleteEmpty method.

* Filter empty configs in Backup class

Filter out empty configurations when setting backup config.

* Call Config.deleteEmpty() in onCreate method

Added a call to Config.deleteEmpty() during initialization.

* Update home_switch string to 'Select Site'

* Change '换源' to '选站' in Chinese strings

* Change '換源' to '選站' in strings.xml

* Add method to delete empty Config entries

* Change delete method to deleteEmpty in Config.java

* Add language-specific default URLs and update methods

Added default URL constants for different languages and updated methods to use the default URL.

* Enhance load method to check for default URL

* Enhance config validation in LiveConfig

* 解决本地接口偶发读取失败问题Enhance getJson method with URL validation

Added null check for URL in getJson method and adjusted URL replacements.

* Fix URL conversion in VodConfig JSON retrieval

* Fix URL conversion in LiveConfig

* Fix URL conversion in RemoteConfigSiteParser

* Add live URL constants and update default URL logic

* Remove type text visibility in SiteCheckAdapter

Hide the type text in the SiteCheckAdapter.

* Remove type text display in SiteCheckAdapter

Hide the type text in the SiteCheckAdapter.

* 调整播放按钮默认显示和顺序Refactor player button settings and add defaults

* Update isInvert method to provide default value

* Update OSD preference methods to include default values

* Change button styles and update text in dialog

* 发挥菜单键在播放时的作用Refactor menu key handling in dispatchKeyEvent

* Change glassBackground method to static

* Implement history clearing feature in HistoryActivity

Added functionality to clear playback history with a confirmation dialog.

* Implement clear favorites dialog on menu key press

Added key event handling to show a clear dialog for favorite videos.

* Override dispatchKeyEvent to handle menu key

* Change default UI scale preference value

* Wrap context with display settings in BaseActivity

* Add UI scale settings to SettingActivity

* Add UI scale settings layout to activity_setting.xml

* Replace Util import with custom Util from utils package

* Modify dialog_player_button_config layout attributes

Updated MaterialButton attributes and changed text color.

* Add progress top offset functionality to ProgressLayout

Added mProgressTopOffset field and setProgressTopOffset method to adjust the top margin of progress and empty views.

* Refactor syncNativeContentInset method for clarity

* Double progress top offset calculation

* Track playback state with mWasPlaying variable

* Add dismiss callback to ChoiceDialog

Added a dismiss callback to execute when the dialog is dismissed.

* Refactor chooseGithub and chooseOci methods

* Change showSingle methods to return ChoiceDialog

* Add SETTING and CHANGE to PlayerButtonSetting

* Add setting button functionality in VideoActivity

* Add setting button functionality in VideoActivity

* Add MaterialTextView for settings in layout

* Update view_control_vod_action.xml

* 环形跳转工具类Add FocusLoop utility for handling focus navigation

* Refactor UI scale values and add focus grid

* Implement key listener for HomeMenuDialog

Added key listener to handle menu key and focus loop.

* Remove menu key listener from HomeMenuDialog

Removed the key listener for menu key in HomeMenuDialog.

* Remove duplicate hideControl() call in onStart

Removed duplicate call to hideControl() in onStart method.

* Adjust resource density based on UI scale factor

* Fix densityDpi calculation and add getUiScaleFactor method

* Update setting string reference in PlayerButtonSetting

* Change setting action to start SettingPlayerActivity

* Update setting click listener and manage playback state

* Track UI scale changes in BaseActivity

Store the last UI scale and recreate the activity if it changes.

* Change setting text to play_setting in layout

* Update text in view_control_vod_action.xml

* Add play_setting string to Chinese resources

* Add play_setting string in Chinese localization

* Add play_setting string to resources

* Add EXTRA_SKIP_STARTUP to BaseActivity

* Adjust progress layout top offset and startup action

* Double the progress top offset calculation

* Create SettingPlayerActivity.java

* Create activity_setting_player.xml layout file

Add layout for player settings activity.

* Add SettingPlayerActivity to AndroidManifest.xml

* Update setting button to start SettingPlayerActivity

* Remove SettingPlayerActivity from AndroidManifest

Removed SettingPlayerActivity from the AndroidManifest.

* Delete app/src/mobile/res/layout/activity_setting_player.xml

* Delete app/src/mobile/java/com/fongmi/android/tv/ui/activity/SettingPlayerActivity.java

* Update setting button action to navigate to HomeActivity

* Add EXTRA_FROM_PLAYER constant and handle back navigation

* Refactor startup skip logic in BaseActivity

* Refactor startup skip logic using Intent extras

* Add mWasPlayingBeforeSetting to manage playback state

* Modify intent flags and parameters in VideoActivity

Updated intent flags and removed extra intent parameter for HomeActivity.

* Remove EXTRA_FROM_PLAYER and clean up onBackInvoked

Removed EXTRA_FROM_PLAYER constant and related logic in onBackInvoked method.

* Refactor startup skip handling to use Prefers

* Fix missing newline at end of BaseActivity.java

Add missing newline at the end of BaseActivity.java

* Implement startup skip preference and adjust layout

Added preference handling for startup skip option and adjusted progress layout offset.

* Adjust progress layout top offset calculation

* Replace settings activity with fragment in VideoActivity

Refactor settings handling in VideoActivity to use a fragment instead of starting a new activity.

* Add settings container FrameLayout to activity_video.xml

Added a FrameLayout for settings container.

* Update background color in showSettingPlayer method

* Update README with enhanced features details

Added detailed descriptions of enhanced features including source blocking, cloud storage detection, site health sorting, management page, and remote hosting.

* Remove marginEnd from version layout

Removed layout_marginEnd from version LinearLayoutCompat.
* Implement key listener for SiteDialog

Added key listener to handle menu key and focus loop in SiteDialog.

* Implement key event dispatching in SettingPlayerActivity

Added key event handling to manage focus in child grid.

* Refactor SettingEnhanceActivity for focus handling

* Remove CNB repository link from settings

Removed unused URL_CNB constant and related menu item handling.

* Remove 'cnbRepo' item from menu_setting_enhance.xml

Removed the 'cnbRepo' menu item from the settings menu.

* Update GitHub button background and remove CNB button

Replaced background attribute of GitHub repo button and removed CNB repo button.

* Fix missing newline at end of activity_setting_player.xml

* Implement findLastInRow method for RecyclerView

Added a method to find the last view in a row of a RecyclerView and updated keyboard navigation logic to utilize this method.

* Implement left/right key navigation in typeRecycler

Add navigation handling for left and right key events in typeRecycler.

* Implement custom key navigation in CustomRowPresenter

Added custom key listener to handle left and right navigation in the grid view.

* Fix missing newline at end of CustomRowPresenter.java

Added a newline at the end of the file.

* Add navigation support for recycler view in VodActivity

* Implement key navigation for RecyclerView in CollectActivity

Added key listener to handle left and right navigation in RecyclerView.

* Fix missing newline at end of HomeActivity.java

Add a newline at the end of HomeActivity.java file.

* Refactor key navigation for typeRecycler

* Add focusable attributes to layout and fix newline

* Refactor focus handling in RecyclerView

Refactor focus handling in RecyclerView to avoid ClassCastException and improve focus request timing.

* Add focus request for recycler view on dialog start

Ensure the first child of the recycler view gains focus on dialog start.

* Adjust focus request based on render visibility

* Refactor key event handling for typeRecycler

* Refactor position retrieval in CustomRowPresenter

Update position retrieval method to use focused child.

* Fix NO_POSITION constant reference in CustomRowPresenter

* Enhance focus handling in RecyclerView

Updated focus handling in RecyclerView to skip GONE items and improve focus logic.

* Fix adapter item count checks in SiteDialog

* Refactor focus handling in initView method

* Refactor focus handling in CustomRowPresenter

Updated focus retrieval method in CustomRowPresenter.

* Add background to layout and adjust focusable attributes

* Remove background from LinearLayout and fix scroll view

* Implement circular navigation for video list

Added support for circular navigation in the video list using left and right keys.

* Refactor scroll and focus logic in SiteDialog

* Replace direct position access with helper method

Refactor position retrieval in HorizontalGridView.

* Remove key listener from CustomRowPresenter

Removed custom key listener for horizontal navigation in grid.

* Optimize scrollAndFocusActiveSite method logic

* Fix XML layout by removing unnecessary attributes

* Add newline at end of CollectActivity.java

Added a newline at the end of the file for consistency.

* Remove key listener from CollectActivity

Removed custom key listener for RecyclerView in CollectActivity.

* Refactor key event handling for horizontal grid navigation

* Refactor site insertion by file type in VodConfig

Refactor site insertion logic to group by file type and insert accordingly.

* Implement horizontal navigation in VodActivity

Added horizontal navigation support for the video list in VodActivity.

* Refactor insertFileSitesByType for type ordering

* Refactor site grouping and insertion logic

Refactor site insertion logic to improve clarity and maintain order.
* Refactor site insertion logic in VodConfig

* Refactor site sorting and grouping logic

* 播放器按钮增加置顶Add top button functionality and focus navigation

* Add MaterialButton for top player control

* Add SiteSortDialog for managing site order

* Add SiteSortAdapter for managing site sorting

* Implement menu key action to sort site list

Add menu key handling to show SiteSortDialog and refresh adapter.

* Implement refresh method in SiteAdapter

Added a refresh method to clear and reload items.

* Add layout for adapter site sorting

* Add dialog layout for site sorting

* Add ic_player_button_top.xml vector drawable

* Add ic_player_button_top.xml vector drawable

* Delete app/src/leanback/res/layout/ic_player_button_top.xml

* Refocus on active site after sorting completion

Enhance site sorting by refocusing on the active site after refresh.

* Refactor SiteSortDialog by simplifying confirm actions

Removed toast messages and saveOrder call from onMenuKey method.

* Implement saveOrder method in SiteSortAdapter

Added saveOrder method to persist site order changes.

* Reorder player button items in PlayerButtonSetting

* Add ic_player_button_top.xml vector drawable

* Delete app/src/leanback/res/drawable/ic_player_button_top.xml

* Add VOD and live OSD settings methods

* 屏显设置点播直播隔离

* Refactor OSD settings for VOD and Live options

* Rename button ID and add new liveVisible button

* Update dialog_player_osd.xml

* Refactor PlayerOsdDialog to handle VOD and live states

* Refactor OSD settings for VOD and Live modes

* Rename button ID and add live visibility button

* Add new LinearLayout with MaterialTextViews to dialog

* Add VOD and live strings to Chinese resources

* Add VOD and live play strings in Chinese localization

* Add new strings for VOD, Live, and Top

* Update strings.xml

* Add '置頂' string to Chinese localization

* Add show method to SiteSortDialog for fragment activity

* Add shape_site_type.xml drawable resource

* Change cancel button text to dialog_negative

* Add site sort title string to Chinese resources

* Add site sort title string to Chinese localization

* Add site sort title string to resources

* Refactor SiteSortDialog to confirm on dismiss

Refactored event handling to trigger confirmation on dialog dismiss.

* Increase maxHeight and remove buttons in dialog layout

* Modify addAll to exclude hidden and blocked sites

Updated addAll method to skip blocked sites.

* Update toggle button resources and states

* Refactor buttons in adapter_site_sort layout

* Fix formatting and add missing newline at end of file

* Refactor OSD settings to use local methods

* Refactor osdDiagnostics visibility logic
* TV版推荐和真实分类统一逻辑,修复其不识别二级目录的问题Refactor item click handling in HomeActivity

* Implement home video retrieval in TypeFragment

Added logic to handle video retrieval for the home type.

* Request focus on negative button in dialog

* Request focus on negative button in dialog
* Create XBPQ.jar

* Add files via upload
* Refactor checkJson and related methods to use globalSpider

* Add click listener for item interactions in SiteAdapter

* Remove ExitConfirmDialog usage in HomeActivity

Removed unused ExitConfirmDialog import and related code.

* Implement crash guard for uncaught exceptions

Added a crash guard to handle uncaught exceptions in non-main threads without crashing the application.

* Fix indentation in android-release.yml

* Enhance crash guard implementation

Refactor crash handling to improve logging and prevent crashes from third-party exceptions.
Refactor class name checks for third-party jars to cover all relevant spider/parser classes.
* 收藏、历史界面增加删除和清空按钮Add vector drawable for clear action icon

* Refactor activity_history layout with new components

* Refactor layout in activity_keep.xml

* Add clear menu item to menu_history.xml

* Add clear menu item to menu_keep.xml

* Add history and favorites strings to resources

* Add history and keep strings to Chinese resources

* Add history and keep strings to Chinese localization

* Implement title bar with delete and clear options

Added title bar setup with delete and clear buttons functionality.

* Implement title bar with delete and clear actions

Added title bar functionality with delete and clear buttons.

* Update HistoryActivity.java

* Implement clear functionality in KeepActivity

Added functionality to clear items from Keep and handle dialog prompts.

* Add URL conversion for Site properties

Convert jar, api, ext, and homePage URLs in Site object.

* Start server in onCreate method

* 界面大小增加超宽松Add UI_SCALE_WIDE_COMFORT option for UI scaling

* Update UI scale options in SettingActivity

* Update strings.xml

* Add delete menu string to Chinese localization

* Add delete menu string in Chinese localization

* Delete .XBPQ/XBPQ_202609141540.jar

* 修复请求源码cookie

* Change icon color to white in ic_action_clear

* Adjust width calculation for funcRecycler layout

* 不加载配置隐藏的站点参与排序Filter hidden sites in loadSites method

Update loadSites method to filter out hidden sites from the list.

* Refactor SearchAdapter to support multiple view modes

* 搜索展示增加纯文字模式Refactor grid logic and update menu icons

* Update search column logic to support three values

* Fix missing newline at end of menu_collect.xml

* Add adapter_search_text.xml layout file

* Add ic_site_detail.xml vector drawable

* Add ic_site_single_column vector drawable

* Delete app/src/mobile/res/drawable/ic_site_single_column.xml

* Delete app/src/mobile/res/drawable/ic_site_double_column.xml

* Add vector drawable for double column site icon

* Refactor layout in activity_collect.xml

* Add layout for adapter search detail

* Implement mode toggle for search display

Added mode toggle functionality to switch between different search display modes and updated related methods for handling the new mode.

* Refactor SearchAdapter to support multiple view types

* Set focus on collect binding in CollectActivity

Request focus on collect binding after initialization.

* Enhance history loading with item focus

Added focusFirstItem method to focus the first item in the recycler view after loading history.

* Implement focusFirstItem method in KeepActivity

Added focusFirstItem method to set focus on the first item in the recycler view after loading items.

* Update layout for modeToggle image view

* Make title focusable on boundary events

* Refactor layout in activity_home.xml

Updated layout parameters for CustomTitleView and removed unnecessary View.

* Refactor Android SDK setup in workflow

Updated Android SDK setup in workflow to set environment variables and paths.

* Update sdkmanager command paths and add licenses acceptance

* Replace AdapterSearchTextBinding with AdapterSearchTextTvBinding

* Add layout for adapter search text TV

* Refactor focus handling in boundary methods

Updated focus handling in onLeftBoundary and onRightBoundary methods to use post for better focus management.

* Change behavior for DPAD_UP key in CollectActivity

* Adjust layout properties in activity_home.xml

* Fix layout structure in activity_collect.xml

* Adjust width calculation for funcRecycler layout

* Reduce maxWidth of text view in activity_home layout

* Set layout width for TextHolder and DetailHolder

Adjust width of TextHolder and DetailHolder layouts in onCreateViewHolder.

* Update getCount and addSearchItems for safety checks

Ensure minimum count is 1 in getCount method and handle null site in same condition.

* Simplify holder creation in onCreateViewHolder

Removed unnecessary variable declarations for holders in onCreateViewHolder.

* Update image loading to use RecyclerView's post method

Refactor image loading logic to run on the main thread using post method.

* Add margin to adapter_search_text_tv layout

Added margin to the RelativeLayout for better spacing.

* Fix missing newline at end of adapter_search_detail.xml

Added a newline at the end of the XML file.

* Increase maxWidth of text view to 200dp

* Enhance uncaught exception logging in App.java

* 尝试修复搜索闪退Change WebView renderer priority policy to false

* Implement onRenderProcessGone in CustomWebView

Added onRenderProcessGone method to handle WebView render process crashes.

* Enhance CollectActivity with search adapter improvements

Updated search adapter mode and adjusted post execution for search rows.

* Add allMode feature and improve error handling

Added allMode property to SearchAdapter and updated methods to handle it. Enhanced error handling in ensureLoaded and appendSource methods.

* Add allMode feature to SearchAdapter

Added a new boolean field 'allMode' to manage display mode in the SearchAdapter. Updated the initView method to conditionally format the displayed text based on the 'allMode' value.

* Update onItemClick to set all mode in adapter

* Enhance TextHolder with marquee support

Added marquee functionality for TextHolder and updated focus handling.

* Fix missing newline at end of adapter_search_text_tv.xml

* Enhance error handling in serve method

Added error handling in the serve method to log exceptions and return a server error response.

* Update CollectActivity.java

* Filter out blocked sites in setSites method

Added SiteBlockSetting import and filter to remove blocked sites from mSites.

* XBPQ重大更新:修复低版本webView渲染崩溃,修复多处数组越界风险,加载异常捕获
* Enhance search focus management and site sorting

Refactor CollectActivity to improve search focus handling and site sorting logic.

* Focus first item in SearchSourceDialog

* Update layout attributes in item_search_source.xml

* Refactor confirmExitHome method logic

* Refactor back navigation handling in HomeActivity

* Refactor site sorting logic based on settings

* Add site order sorting based on health setting

* Refactor site sorting logic in CollectFragment
* Update UI scale options in SettingActivity

* 屏显进度:总时长-片尾时长Implement ending duration feature in CustomSeekView

Added functionality to set ending duration for the video, updating the displayed duration accordingly.

* Add seek view ending update in VideoActivity

* Add ending update to seek view in VideoActivity

* Fix effectiveDuration calculation to add endingMs
* 退出后彻底杀进程Enhance exit behavior with backup and process kill

Implement synchronized backup and process termination on exit.

* Add process exit handling on back navigation

Implement process termination on back navigation to avoid residual processes.

* Refactor backup process on app exit

Refactor autoBackupOnExit to use backupOnExitSync for synchronous backup on exit. Improved error handling and logging.
* 屏显进度没改对地方,还原Refactor CustomSeekView to remove endingMs handling

Removed endingMs variable and related methods to simplify duration calculations.

* 屏显进度:当前位置 / 总时长-片尾时长Implement ending duration display in PlayerOsdController

Add ending duration functionality to PlayerOsdController.

* Replace getSeekView with mOsd for ending display

* Replace getSeekView with mOsd for ending updates
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants