OpenATV News & Updates

Ambros

Registered
Messages
6
I have VU+UNO 4K SE and Open ATV 7.1. Kodi 20 plugin won't work. Kodi used in laptop works fine. . In the receiver, the picture works slowly and the sound is not heard. Question if Kodi 20 works in Open ATV 7.2 without problems.
 

WaRp

(∩`-´)⊃━☆゚.*・。゚
Staff member
Administrator
Messages
29,632
Update openATV 7.3

* optimization boot speed, box starts between 5-25 sec faster depending on model and network shares
* fix crash in Startwizard HD Box on 4K TV
* fix Box not visible in Windows 10/11 network browser
* fix Terminal in WebInterface
* fix UTF-8 crash in EPG event name if longer than 246 characters.
* fix Crash CI Unload
* Update Translations
 

WaRp

(∩`-´)⊃━☆゚.*・。゚
Staff member
Administrator
Messages
29,632
Update 7.3 Images
*fix crash U41,U42;U43;U45 Models connect to 4K TV
#############################################

openAtv 7.4 devel Images

Devel Update

[ConfigList.py] Add a way to suspend/resume the action maps
Add a mechanism to suspend and resume the action maps in ConfigList so that code in Setup sub-classes can gain control of the action maps.

* Refactor Opkg.py component and related code

[Opkg.py]
- Create a new multi-step command parser called "runCommand()".
- Update, expand and better organize the CMD and EVENT data.
- Create more events to better trace the actions of "opkg".
- Rename the "Download" functions to "Install".
- Improve variable names for better clarity.
- Format the "opkg" command lines as documented in the "opkg" help syntax.
- Enhance the "options" argument to allow for different options to be linked with different steps.
- Use larger text buffers for all list based "opkg" commands.
- Improve "opkg" output parsing and result evaluation.
- Add a small sleep after the "clean" command to allow the file system to stabilize. This is required because running commands with steps is now significantly faster.
- The old "startCmd()" will be removed when all code using it is updated.
- Remove the "Force OPKG clean mode".

[PluginBrowser.py]
- Use the improved "Opkg.py" component library.
- Enhance the capabilities of PluginProwser to allow it to replace other package management tools like PluginManager, PackageManager and Softcams. They will be further documented in later pull requests.
- Add the "PACKAGE_CATEGORIES" dictionary to support replacement of PackageManager with PluginBrowser.
- Rename the "Download" functions to "Install".
- Use f-strings.
- Improve some variable and method names.
- Add a new option in the Setup screen to clear and reload the feed cache. This replaces the old "Force OPKG clean mode".
- Use the non-blocking "Processing" screen rather than the spinner to show that something is being done in the background.
- Rename "PluginAction()" class to "PackageAction()" to better reflect the expanded use of this class.

[International.py]
- Remove large dictionaries from the global variable space and move them to the International class.
- Remove the repeated "UTF-8" text and use "" to represent UTF-8. Only specify encodings other than UTF-8.
- Add a new field to specify the default keyboard mappings for each language. Only specify keyboards other than "qwerty".
- Remove the buildISO3166() method as it and the associated module CountryCodes.py file are no longer required.
- Use f-strings.
- Re-sequence some of the methods and make some small optimizations of the code.
- Remove the deleteLanguagePackages(), installLanguagePackages() and runPackageManager() methods and shift the functionality to LocaleSelection.py where a better interaction with the UI can be created.

[LocaleSelection.py]
- Use the streamlined International module import.
- Remove unused imports.
- Implement methods to add and remove locales / languages. These replace the methods previously in International.py.
- Use Opkg.py component rather than directly accessing the opkg command, this no longer locks the UI while processing.
- Use the Processing screen to show users when there is background processing to add or remove locales / languages.
- Re-sequence some of the methods and make some small optimizations of the code.
- Use "country" and "language" variable names to make the code easier to read.
- Restore the Summary screen that got lost along the way.
- Remove the unused selectKeys() method.

[Satconfig.py] Use updated International.py
- Use International.py to find the mapping from country codes to country names.
- Remove reference to CountryCodes.py as this module has been removed.
- Add comment regarding conflicting prompt and descriptions on two ConfigList strings.

[CountryCodes.py]
- Module removed as it is no longer needed.

translation updates

Displayskin (#3129)

* rename screens from x_summary to xSummary
* rename SimpleSummary -> ScreenSummary
* fix title widget for ScreenSummay
* fix PluginBrowserSummary
* rename JobViewSummary -> TaskViewSummary

[PliExtraInfo]
* refactor part 2
* remove pliExpertInfo Converter

[Quickmenu]
* replace PluginAction with PackageAction
* replace ShowSoftcamPackages with PackageAction

[menu]
* replace PluginAction with PackageAction
* replace PacketManager with PackageAction

[SoftwareManager]
* move setup to core setup.xml

cleanup
remove all meta files

Information on the Update Package Update Manager
under Software management -> Advanced options

1.png

now with oe-core categories from git

2.png

Thanks Captain and OpenATV TEAM
 

WaRp

(∩`-´)⊃━☆゚.*・。゚
Staff member
Administrator
Messages
29,632
Update devel und 7.3

* CI fix VU FBC Tuner 9-16
* CI fix decrambler issue ci 1.4
 

WaRp

(∩`-´)⊃━☆゚.*・。゚
Staff member
Administrator
Messages
29,632
Update devel

[ChannelSelection]
* try to fix grayed out services while stream relay active

[International.py] Correct keyboard index definition

StreamRelay (#3153)

* add zap delay if stream relay active to prevent "no free tuner".
* show correct provider, namespace, transponder and frontend info for stream relay services
* show recording indicator in channel selection for stream relay services

PLEASE NOTE!!
All of this will only work if you use whitelist_streamrelay.

[StreamRelay]
* improve isPlayable in ChannelSelection

[Navigation]
* disable Streamrelay zap delay
This needs to be implemented differently.
 

WaRp

(∩`-´)⊃━☆゚.*・。゚
Staff member
Administrator
Messages
29,632
Update Devel

[eStreamServer]
* add getConnectedClientDetails to provide frontend and transponder info for the stream clients
Show eg. Wed 29 Nov instead of 29 Nov 2023
This change uses `date.dayshort` instead of `date.long`.
EPG data is pretty much guaranteed to be less than a year ahead.
Even if further than a year away, that would be inferred by overlapping months.
Network
add NordVPN DNS Server
Stream relay (#3162)
[InfoBarStreamRelay]
* fix add provider to StreamRelay
* remove empty items
* provide new StreamRelaySetup
[StreamRelaySetup]
* provide add/remove StreamRelay services
* move StreamRelay setting to new setup screen

Tip: add Channels: Channel Liste -> Provider Press Menu and add all Channels from one Provider with one click
 

WaRp

(∩`-´)⊃━☆゚.*・。゚
Staff member
Administrator
Messages
29,632
Update 7.3

[LCDPicon/Renderer]
* use ePicLoad to support 32 Bit picons for all Display types
* text corrections for comments

[Picon/Renderer]
* text corrections for comments

Fix MMI text conversion
don't use inline convertDVBUTF8 function as it does
implicit char* to string conversion which is a problem
as the string can contain \0 in the character encoding
(e.g. 0x10, 0x00, 0x01 for ISO/IEC 8859-1)

[Picon,LcdPicon/Renderer]
* improve resolution in channel name

MultiBootManager update dreambox SDcard Slots
FlashManager add support new dream rootfs name

[Nimmanager]
* do not call autoconfig on startup

[Harddisk]
* improve enumerateNetworkMounts

This change also prevents duplicate entries in partition list.

[UsageConfig]
* correct epgcache folder after reboot if not flash

[servicedvb]
* set scrambled to false for ts if there is no meta file

[CI] Add ressources for CI+ 1.4 compability
[CI] Fix URI_VERSIONS
[CI] Operator profile

don't send status request message right after session start as some modules
open operator session, but don't seem to be able to handle operator messages
as they just stop working after receiving the message(CANAL+ module).

[Hardddisk]
* correction of addMountedPartition/removeMountedPartition ( called by AutoMount in Networkbrowser )
* correction of net mount description

[AVControl]
* define static videomode_choices for boxes based on USE_VIDEO_MODE_HD

[SoftcamSetup]
* improve yellow/blue key for autocam
* fix yellow button text
Softcam and CardServer Improvements
- Refactor SoftcamSetup.py.
- Separate Softcam and CardServer setup screens.
- Combine and replace "config.oscaminfo.showInExtensions" and "config.cccaminfo.showInExtensions" with a new setting called "config.softcam.showInExtensions".
- Update Softcam and CardServer methods in SystemInfo.py.
- Update UsageConfig.py with updated Softcam and CardServer configurations.
- Move CamControl.py module contents into SoftcamSetup.py module where it is used.
- Add new AutoCam feature.
- Add AutoCam configuration to StartEnigma.py.
- Update ChannelSelection.py to use the new AutoCam feature.
- Update InfoBarGenerics.py to use the new AutoCam feature.

[ConfigList.py]
Add a way to suspend/resume the action maps
Add a mechanism to suspend and resume the action maps in ConfigList so that code in Setup sub-classes can gain control of the action maps.

* Refactor Opkg.py component and related code

[Opkg.py]
- Create a new multi-step command parser called "runCommand()".
- Update, expand and better organize the CMD and EVENT data.
- Create more events to better trace the actions of "opkg".
- Rename the "Download" functions to "Install".
- Improve variable names for better clarity.
- Format the "opkg" command lines as documented in the "opkg" help syntax.
- Enhance the "options" argument to allow for different options to be linked with different steps.
- Use larger text buffers for all list based "opkg" commands.
- Improve "opkg" output parsing and result evaluation.
- Add a small sleep after the "clean" command to allow the file system to stabilize. This is required because running commands with steps is now significantly faster.
- The old "startCmd()" will be removed when all code using it is updated.
- Remove the "Force OPKG clean mode".

[PluginBrowser.py]
- Use the improved "Opkg.py" component library.
- Enhance the capabilities of PluginProwser to allow it to replace other package management tools like PluginManager, PackageManager and Softcams. They will be further documented in later pull requests.
- Add the "PACKAGE_CATEGORIES" dictionary to support replacement of PackageManager with PluginBrowser.
- Rename the "Download" functions to "Install".
- Use f-strings.
- Improve some variable and method names.
- Add a new option in the Setup screen to clear and reload the feed cache. This replaces the old "Force OPKG clean mode".
- Use the non-blocking "Processing" screen rather than the spinner to show that something is being done in the background.
- Rename "PluginAction()" class to "PackageAction()" to better reflect the expanded use of this class.

[International.py]
- Remove large dictionaries from the global variable space and move them to the International class.
- Remove the repeated "UTF-8" text and use "" to represent UTF-8. Only specify encodings other than UTF-8.
- Add a new field to specify the default keyboard mappings for each language. Only specify keyboards other than "qwerty".
- Remove the buildISO3166() method as it and the associated module CountryCodes.py file are no longer required.
- Use f-strings.
- Re-sequence some of the methods and make some small optimizations of the code.
- Remove the deleteLanguagePackages(), installLanguagePackages() and runPackageManager() methods and shift the functionality to LocaleSelection.py where a better interaction with the UI can be created.

[LocaleSelection.py]
- Use the streamlined International module import.
- Remove unused imports.
- Implement methods to add and remove locales / languages. These replace the methods previously in International.py.
- Use Opkg.py component rather than directly accessing the opkg command, this no longer locks the UI while processing.
- Use the Processing screen to show users when there is background processing to add or remove locales / languages.
- Re-sequence some of the methods and make some small optimizations of the code.
- Use "country" and "language" variable names to make the code easier to read.
- Restore the Summary screen that got lost along the way.
- Remove the unused selectKeys() method.

[Satconfig.py] Use updated International.py
- Use International.py to find the mapping from country codes to country names.
- Remove reference to CountryCodes.py as this module has been removed.
- Add comment regarding conflicting prompt and descriptions on two ConfigList strings.

[CountryCodes.py]
- Module removed as it is no longer needed.

[UsageConfig.py]
- Remove the "Force OPKG clean mode" config item.

[setup.xml]
- Remove the "Force OPKG clean mode" option.

Displayskin (#3129)
* rename screens from x_summary to xSummary
* rename SimpleSummary -> ScreenSummary
* fix title widget for ScreenSummay
* fix PluginBrowserSummary
* rename JobViewSummary -> TaskViewSummary

[PliExtraInfo]
* refactor part 2
* remove pliExpertInfo Converter

[Quickmenu]
* replace PluginAction with PackageAction
* replace ShowSoftcamPackages with PackageAction

[menu]
* replace PluginAction with PackageAction
* replace PacketManager with PackageAction

[PluginBrowser]
* fix crash:
16:36:26.6954 File "/usr/lib/enigma2/python/Screens/PluginBrowser.py", line 1116, in keyGreenCallback
16:36:26.6964 NameError: cannot access free variable 'package' where it is not associated with a value in enclosing scope

[SoftwareManager]
* move setup to core setup.xml

Meta (#3139)
* cleanup meta
* clean Makefile.am

[International]
* fix getNIMCountries

PluginBrowser.py] Small corrections and optimizations
After investigating the cause of the recent crash it was decided to further refactor and optimise the code. This change removes the cause of the crash (which was caused by trying to manipulate a variable from the parent method) and further streamlines the code.

[InstantRecord] fixes (#3143)

* [InstantRecord] fixes
fix #3130
fix #2800 completely

[PliExtraInfo/Converter]
* fix TransponderInfo2line

[LocaleSelection] Fixed selectKeys in LocaleWizard

[SoftcamSetup]
* improve save
* add callback to stop and restart current service
* add processing screen

[LocaleSelection] Fixed selectKeys in LocaleWizard

[SoftcamSetup]
* improve save
* add callback to stop and restart current service
* add processing screen

[PluginBrowser.py] Rework categories
- Rework the package and plugin categories to simplify the categories listed to users.
- Add an ability to recategorize packages with inappropriate or malformed categories that are not managed or fixable by openATV developers.

[InstallWizard.py] Refactor code
- Sort imports.
- Use the Python tar library rather than forking a shell to run tar.
- Use the new Opkg.py library.
- Fix and improve variable names.
- Add help text to the screen.
- Clean up and optimize the code.
- Use match rather than if/elif/else blocks.
- PEP8 clean the code.
- Use f-strings.

[CI] Improve logging
especially when 2 modules are used

[CI] Set proper routing
Change routing only once during initialization of CI module
and revert back if CA manager hasn't set up routing in the
meantime.

[CI] Add Critical Security Update Version protocol
from CI+ v1.4.3 spec

[CI] Fix not working second VU FBC tuner
by using VU ioctl only for second FBC tuner.
Special drivers are needed.

[ChannelSelection]
* try to fix grayed out services while stream relay active

[International.py] Correct keyboard index definition

StreamRelay (#3153)

* add zap delay if stream relay active to prevent "no free tuner".
* show correct provider, namespace, transponder and frontend info for stream relay services
* show recording indicator in channel selection for stream relay services

PLEASE NOTE!!
All of this will only work if you use whitelist_streamrelay.

Some parts are taken from openVix.

Thanks to DimitarCC

[StreamRelay]
* improve isPlayable in ChannelSelection

[Navigation]
* disable Streamrelay zap delay
This needs to be implemented differently.

Automate and enhance keyboard keymap selection (#3155)

* Automate and enhance keyboard keymap selection

[InputDevice.py]
- Refactor the Keyboard class.
- Use "keyboards.xml" rather than separate "*.info" text files to describe the keymaps.
- Sort imports.
- Use join rather than string manipulation to create pathnames.
- Use consistent quotation marks.
- Use f-strings.
- Clean up a few comments.

[InputDeviceSetup.py]
- Add "KeyboardSelection" class to handle keymap selection.
- Remove redundant "layoutFinished()" method.
- Sort imports.
- Use consistent quotation marks.
- Use f-strings.
- Clean up a few comments.

[keymaps]
- Use more logical naming for keymaps. The names directly map to the keyboard field in the "International.py" data.
- Remove all the "*.info" files and use a single "keyboards.xml" file instead.

[menu.xml]
- Update the "Keyboard Settings" menu item to use the new validation code.

[setup.xml]
- Update the "Keyboard" config item to use the new setting.

[StartEnigma.py]
- Remove defunct keyboard code

include elistboxservicecontent.h interface in python

[StreamRelay]
* fix zap delay
* add adjustable value

NetworkSetup.py add NordVPN DNS

[Infobar]
* fix CH+/- zap in for active stream relay service

Show eg. Wed 29 Nov instead of 29 Nov 2023
This change uses `date.dayshort` instead of `date.long`.
EPG data is pretty much guaranteed to be less than a year ahead.
Even if further than a year away, that would be inferred by overlapping months.

[FrontendData/Converter]
* update Tunerinfo for stream relay channels

[FrontendInfo]
* fix service scan crash

[eStreamServer]
* add getConnectedClientDetails to provide frontend and transponder info for the stream clients

Stream relay (#3162)

[InfoBarStreamRelay]
* fix add provider to StreamRelay
* remove empty items
* provide new StreamRelaySetup

[StreamRelaySetup]
* provide add/remove StreamRelay services
* move StreamRelay setting to new setup screen

[MessageBox.py] Correct summary display
- The summary screen was looking at itself rather than the parent to see if the "list" widget exists. It now correctly looks at the parent.
- Use f-strings.

[eDVBService]
* correction of isPlayable return for Stream Relay

Autocam (#3167)
* support Stream Relay

[MessageBox.py] Restore unused widget definitions
The dummy widget has been restored as some skins do not check if the "list" widget actually exists before manipulating it. The widget is optional and code should be checking that the widget is available *BEFORE* trying to manipulate it. This hack has been restored to give skinners more time to correctly fix their skins!

[SoftwareUpdate]
* use new ampel

[InfoBarInstantRecord]
* rename callback functions
* fix empty duration crash
* correction of margin for duration change

[ChannelSelection]
* move call setHideNumberMarker to ServiceList

Workaround for #3006 (pressing 0 no longer goes to first channel in…
… Multi-channel EPG) (#3175)
* Workaround for #3006 (pressing `0` no longer goes to first channel in Multi-channel EPG)
* Workaround (tweaked) for #3006 (pressing `0` in Multi-channel EPG)

[FlasManager/MultiBootManager/ImageBackup]
* show multiboot type

[Information/About]
* show VU+ Multiboot if active

[AutocamSetup,StreamRelaySetup]
* show orbital position (idea taken from openVix)
* sort channels (taken from openVix)

[InfoBarAutoCam]
* use toCompareString for serviceref compare

[InfoBarStreamRelay]
* use toCompareString for serviceref compare
* add sanitizer (idea taken from openVix)
* make some functions/ivars private

[eListboxPythonServiceContent]
* add isFolder flag to setBuildArgs
* add missing setHideNumberMarker
 

WaRp

(∩`-´)⊃━☆゚.*・。゚
Staff member
Administrator
Messages
29,632
all cams rework for 7.3 images
oscam-emu now works with icam (19.2 only)
 

WaRp

(∩`-´)⊃━☆゚.*・。゚
Staff member
Administrator
Messages
29,632
Update 7.3 and Devel

[FileCommander]
* start movie playback via InfoBar
* remove unused FileCommanderMoviePlayer

[InfoBar]
* change PVR key action for MoviePlayer started via FileCommander

[Renderer/LcdPicon]
* improve path search
Prefer piconlcd if exists but only if not empty.

[InfoBarGenerics]
* small text changes
* small refactor of instantRecord

[LCD]
* correction of power led settings

Update ServiceName2.py
"TRK UKRAINE" - doesn't exist anymore

[Harddisk]
* don't add if device already in the list

[Actionmap]
* use f-string
* include screen name in debug output

[Timeshift]
* use HelpableActionMap

[InfoBarGenerics]
* remove unused ActionMap and NumberActionMap

[VideoMode]
* use f-string
* use HelpableActionMap

[Standby]
* use HelpableActionMap

[EpgSelection]
* small code changes

[QuickMenu]
* use HelpableActionMap

[BoxPortal]
* use HelpableActionMap

[DisplaySkins]
* remove duplicate EMCSelectionSummary
* fix GraphicalEPGPIGSummary
* fix EPGSelectionSummary

[SimpleSummary]
* add new summary name support

[StartEnigma.py] Update Summary screen and profile tags
- Replace the old and defunct SimpleSummary screen with the newer ScreenSummary screen and logic.
- Improve the profile tag strings and add a few more tags to make the startup counter more granular.

[ChoiceList]
* make dash line non selectable

[bsod]
* tweak message text / remove config.crash.debug_text

[setup.xml]
* show REC Symbol settings only if display skin exists

[EpgSelection]
* add workaround for #3006

[Skin]
* add new SkinContextVertical, SkinContextHorizontal

[EpgSelection]
* fix typo

[LCD]
* remove unused and duplicate mini tv settings

translation update
 

WaRp

(∩`-´)⊃━☆゚.*・。゚
Staff member
Administrator
Messages
29,632
Update DEVEL

[NetworkSetup] refactor part 2 (#3218)

[NetworkSetup]
* add new networkdaemons.xml
* add new NetworkServicesSetup screen

[menu.xml/systeminfo]
* remove extra menu items except inadyn, Minidlna and uShare
* show extra menu items only if installed

[QuickMenu]
* remove NetworkServicesSetup sub screen
* cleanup network services

networkservice.png

[ChannelSelection]
* correction of selected channel after bouquet change
* correction of StreamRelay context menu
* show Streamrelay options only if softcam active

[OSCamInfo]
code has been completely revised (#3207)

* [OScamInfo] code has been completely revised
* new design, now resembles the OScam-WebIF look
* new log window with optional autoupdate
* new log fullscreen with optional autoupdate
* add config.softcam.hideServerName setting support
* change oscam logo

[Setup.xml]
* refactor oscam info settings

[ButtonSetup, QuickMenu, SoftcamSetup, InfoBarGenerics]
* use new OscamOverview

Co-authored-by: Mr.Servo
Thanks to @OpenA.TV for consulting

* allow define colors in skin
* rename classes
* text changes

[OscamOverview]
* remove dateutil
* fix log screen skin
* cleanup OScamOverviewSetup
* cleanup OScamOverviewLog

[SoftcamSetup]
* improve config.softcam.hideServerName
* fix keySave

[TransponderInfo/Converter]
* add new TransponderInfo Converter

[Converter/FrontendInfo]
* add REC_TUNER type

[Hardwaredb]
* move device table to c
* add more models

[SystemInfo.py] Small code optimization (#3214)
Remove an unused condition in "processValue()".

[ChoiceBox.py] Catch an correct an argument error
This change corrects an error created by using a variable from a newer version of ChoiceBox that is not yet ready to commit.

[MovieSelection.py] Correct crash due to undefined variable

[ScrollLabel]
* fix parseHorizontalAlignment

[Screen] Add integrated screen based images

[Screen.py]
- Add facility to have a screen based image based on the class name of the screen.
- Add new methods "isAlreadyShown()", "setStandAlone()" and "getStandAlone()" to replace direct access to the "self.already_shown" and "self.stand_alone" variables.
- Add "already_shown" and "stand_alone" properties to support legacy code that is manipulating the old internal variables.
- Add new methods "setImage()" and "getImage()" to fine control the new screen based image facility.
- Remove logging of the screen names as this is already done in "skin.py".
- Improve variable names.

[skin.py]
- Add new "screens" dictionary for the new screen based image system.
- Add code to read the "screens" tag block from the skin.
- Correct the variable name in the "menu" tab block reader.
- Improve some of the logging messages.
- Add comment that openATV will be deprecating skin list based scaling.
- Add comment that openATV will has deprecating "getSkinFactor()" skin list based scaling.
- Optimize some of the code.
- Remove long dead code.

[Information.py]
- Add new "Image" widget to support the new screen based images.

[TemplatedMultiContent]
* small correction of itemHeight initialization
* fix scaling for grid mode
* correction of itemHeight Error handling
- Convert the "assert" commands into logged errors.
- Correct the "templates" "default" conversion to "template".
- Correct the initialization scaling of simple templates.
- Reduce the scope of single use methods.
- Move some imports to the top of the module.
- Improve some variable names.

[keytranslation]
* remove usage of keytranslation.xml
* add remapping of keytranslation.xml into rcinput

[TimeDateInput]
* revert deletion because this is used by 3rd party

[DateTimeInput.py] Replace TimeDateInput with DateTimeInput (#3198)

[DateTimeInput.py]
- This is a new module that offers a more concise user interface for setting times for instant recordings and EPG navigation.
- This new code is a subclass of Setup to reduce the amount of code copied from Setup.py and ConfigList.py.
- This code uses consistent navigation relative to other Setup based screens.
- The times entered now directly and accurately update the date *without* requiring an extra control with which users must interact.
- The range of times and dates the user may select is now limited to only valid values. For example, instant recordings are now correctly limited to 24 hours and EPG jumps can be made forward in time as well as backwards in time to the extent of the EPG history that is enabled.
- HELP is now available in this screen.
- Button labels better reflect the actions to be performed when pressed.

[InfoBarGenerics.py]
- Switch from using TimeDateInput.py to DateTimeInput.py.
- Optimize some code.
- Improve some translation strings.
- Use f-strings to improve performance of the button press logging.

[EpgSelection.py]
- Switch from using TimeDateInput.py to DateTimeInput.py.
- Improve the action map that controls the DateTimeInput screen.
- Remove use of getSkinFactor as it is not used in openATV (openATV has fully integrated and automatic skin scaling) and can cause skin issues.
- PEP8 correct some code indentation.
- Improve some translation strings.


[Element.py] Tidy up code
This is a small tidy up and code rearrange to match the current coding styles.

[eDVBResourceManager]
* allocate channel prevent crash if getFrontend returns no data

[DisplaySkin]
* Update Skins
* use new TimerOverviewSummary instead of TimerEditListSummary

[EpgSelection/InfoBar]
* remove usage of old TimerEditList

[eDVBUsbAdapter]
* add debug for vtuner init

[eWindowStyleSkinned]
* set default values

[eListboxPythonConfigContent]
* add option to define left offset for header and entry
* add calculateEntryTextSize function
* refactor entry paint to support header
* add new feature to draw a line instead of text as entry

[eWindowStyleSkinned]
* add get/set value
* add valueEntryLeftOffset , valueHeaderLeftOffset to support configList skinnable offset
* add headerfont

[skin]
* add configList headerFont
* set configList fonts only if they are defined

[eListBox]
* add headerfont for eListboxPythonConfigContent

[embedded skins]
* add missing resolution attribute

[BackupSelection]
* fix summary description

[setup]
* show mini tv pip setting only if available

[UsageConfig]
* update language codec

translation update
 
Top