Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ConfigList/Setup UI] rebase on develop #3998

Merged
merged 58 commits into from
May 25, 2024

Conversation

Huevos
Copy link
Contributor

@Huevos Huevos commented May 25, 2024

No description provided.

Littlesat and others added 30 commits May 25, 2024 16:45
This is stored as true/false and not as yes/no
e.g. if a module other than Screens.Setup.Setup uses Screens.Setup.SetupSummary, screen name "SetupSummary" will be missing from the skin list so it will get diverted to the wrong skin, most likely "ScreenSummary". This commit corrects that behaviour.
…setup.xml files in plugins, and removal of 100s of lines of code throughout enigma
This is stored as true/false and not as yes/no
Missing parameter and missing function
E.G. for languages when you disable more than one auto selected
language one of the languages was not anymore visible in the list and
therefore the value was stored, but not saved into the
/etc/enigma2/settings file. This change does ensure the value is saved.
Littlesat and others added 27 commits May 25, 2024 17:01
We do not currently have the formats like OpenVix has with the different
clock formats (24 hours/12 hours style) where translators etc can also
configure it. I still think also the implementation of it may need some
discussion.
[Skin] Processing screen 'NumericalTextInputHelpDialog', position=(537, 675), size=(846 x 246) for module 'NumericalTextInputHelpDialog'.
Traceback (most recent call last):
  File "/usr/lib/enigma2/python/Components/ConfigList.py", line 92, in selectionChanged
    self.current[1].onSelect(self.session)
  File "/usr/lib/enigma2/python/Components/config.py", line 1382, in onSelect
    self.help_window.setAnimationMode(0)
  File "/usr/lib/enigma2/python/Screens/Screen.py", line 206, in setAnimationMode
    self.instance.setAnimationMode(mode)
AttributeError: 'eWindow' object has no attribute 'setAnimationMode'
[ePyObject] (CallObject(<bound method ConfigList.selectionChanged of <Components.ConfigList.ConfigList object at 0xaefd7b80>>,()) failed)
[gRC] Warning: Main thread is busy, displaying spinner!
In the previous work-a-round I did save all when the config was rebuild
but of course we only need to save configs that are conditionally not
shown only when they are changed.

I get to the config to an eval at this moment as I could not (quickly)
find a better way to get to the specific config

This avoids e.g. in the auto language setup when we put languages on
'None' while they disappear from the config list that the value is
actually not saved

See:
https://forums.openpli.org/topic/98887-auto-language-selection-options-not-saved-corectly/
See:
https://forums.openpli.org/topic/98887-auto-language-selection-options-not-saved-corectly/

In ec7ff0c for example when the setup was canceled the 'old' values
did not return at all and now with keeping a hiddenItems list we can
save them when required and also cancel them when required.
I also needed to add hasattr around it as te code is used on mulitple
locations where this list does not exist while also __init__ functions
of the ConfigList or so are not used
@littlesat littlesat merged commit 49df463 into OpenPLi:develop May 25, 2024
1 check passed
WanWizard pushed a commit that referenced this pull request Oct 24, 2024
* First try to sync the config and ConfigList with OpenVix

* Add missing ConfigAction

* Fix graphical boolean switch.

This is stored as true/false and not as yes/no

* Revert "Fix graphical boolean switch."

This reverts commit 4c25b8c.

* Revert "Add missing ConfigAction"

This reverts commit dbd2a0b.

* Revert "First try to sync the config and ConfigList with OpenVix"

This reverts commit f76c1e1.

* Revert "Ensure that changed values are saved before they disappear"

This reverts commit d8583db.

* [Menu] read menu texts from menu.xml, not setup.xml

Previous code is inefficient.

* Add warning when menu text is missing

* [Menu] Allow the conditional attribute to work in <menu> elements

* [Menu] description should be str, not bytes

* [Menu] remove unused "parent" arg

* [Menu] simplify xml format

* [StartEnigma/Hotkey] add compatibility with new menu.xml format

* [Menu] add x.tag == 'plugin'

* [ScreenSummary] add summary module name to skin list

e.g. if a module other than Screens.Setup.Setup uses Screens.Setup.SetupSummary, screen name "SetupSummary" will be missing from the skin list so it will get diverted to the wrong skin, most likely "ScreenSummary". This commit corrects that behaviour.

* [keymap] NavigationActions, activate KEY_REWIND and KEY_FASTFORWARD

* [Directories] add missing "fileReadXML"

* [Setup/ConfigList/config] update, among other things, allows reading setup.xml files in plugins, and removal of 100s of lines of code throughout enigma

* [CI] Remove unneeded code

* [InputDeviceSetup] Remove pointless code

* [NetworkSetup] remove redundant code

* [ParentalControlSetup] Make UI consistent with "Setup" screens

* Fix graphical boolean switch.

This is stored as true/false and not as yes/no

* First try to sync the config and ConfigList with OpenVix

* Add missing ConfigAction

* Resolve issues around extra_args

Missing parameter and missing function

* Add missing setupShowDefault config

* Resolve merge issue

* Ensure that changed values are saved before they disappear

E.G. for languages when you disable more than one auto selected
language one of the languages was not anymore visible in the list and
therefore the value was stored, but not saved into the
/etc/enigma2/settings file. This change does ensure the value is saved.

* ExtraArgs was not implemented (yet) so no need to remove them

* Resolve GSOD with ConfigClock

We do not currently have the formats like OpenVix has with the different
clock formats (24 hours/12 hours style) where translators etc can also
configure it. I still think also the implementation of it may need some
discussion.

* Remove code in various modules that is already inherited from ConfigListScreen

* [config.py] fix BSoD

[Skin] Processing screen 'NumericalTextInputHelpDialog', position=(537, 675), size=(846 x 246) for module 'NumericalTextInputHelpDialog'.
Traceback (most recent call last):
  File "/usr/lib/enigma2/python/Components/ConfigList.py", line 92, in selectionChanged
    self.current[1].onSelect(self.session)
  File "/usr/lib/enigma2/python/Components/config.py", line 1382, in onSelect
    self.help_window.setAnimationMode(0)
  File "/usr/lib/enigma2/python/Screens/Screen.py", line 206, in setAnimationMode
    self.instance.setAnimationMode(mode)
AttributeError: 'eWindow' object has no attribute 'setAnimationMode'
[ePyObject] (CallObject(<bound method ConfigList.selectionChanged of <Components.ConfigList.ConfigList object at 0xaefd7b80>>,()) failed)
[gRC] Warning: Main thread is busy, displaying spinner!

* [doc] add SETUP

* Add new option show setup default values in setup.xml

* Sleeptimer: OK Button now has a differnet function.

* MovieSelectionConfig: OK Button now has a differnet function.

* [SleepTimerEdit.py] use inherited code

* A config conditionally hidden but changed should be saved

In the previous work-a-round I did save all when the config was rebuild
but of course we only need to save configs that are conditionally not
shown only when they are changed.

I get to the config to an eval at this moment as I could not (quickly)
find a better way to get to the specific config

This avoids e.g. in the auto language setup when we put languages on
'None' while they disappear from the config list that the value is
actually not saved

See:
https://forums.openpli.org/topic/98887-auto-language-selection-options-not-saved-corectly/

* For a sleeptimer directly execute it when select in choicebox

* Correctly cover config items that are conditionaly hidden

See:
https://forums.openpli.org/topic/98887-auto-language-selection-options-not-saved-corectly/

In ec7ff0c for example when the setup was canceled the 'old' values
did not return at all and now with keeping a hiddenItems list we can
save them when required and also cancel them when required.
I also needed to add hasattr around it as te code is used on mulitple
locations where this list does not exist while also __init__ functions
of the ConfigList or so are not used

* Adjust Fastscan to new ConfigList functionality

* [Fastscan] inherit

* Resolve typo made in previous commit

* Resolve new config structure for InputDeviceSetup

* Remove some hasattr on the hiddenItems by ensure it is declared

* [Setup/ConfigList] self.hiddenItems, try a different approach

* [Satconfig.py] remove redundant code

* [Satconfig.py] use the UI actions provided in ConfigListScreen

* [ChannelSelection] InsertService, inherit UI from Setup

* [MovieSelection] MovieBrowserConfiguration, inherit UI from Setup

* [RecordPaths] inherit UI from Setup

* [SetupFallbackTuner] inherit UI from Setup

* [TimeDateInput] inherit UI from Setup

* [config.py] remove six and some cleanup

* [GraphMultiEPG] inherit UI from Setup (#3996)

* [HdmiCEC] inherit UI from ConfigListScreen (#3997)

---------

Co-authored-by: Littlesat <littlesat@openpli.org>
Co-authored-by: TwolDE2 <tonywhalley@web.de>
WanWizard pushed a commit that referenced this pull request Oct 24, 2024
* First try to sync the config and ConfigList with OpenVix

* Add missing ConfigAction

* Fix graphical boolean switch.

This is stored as true/false and not as yes/no

* Revert "Fix graphical boolean switch."

This reverts commit 4c25b8c.

* Revert "Add missing ConfigAction"

This reverts commit dbd2a0b.

* Revert "First try to sync the config and ConfigList with OpenVix"

This reverts commit f76c1e1.

* Revert "Ensure that changed values are saved before they disappear"

This reverts commit d8583db.

* [Menu] read menu texts from menu.xml, not setup.xml

Previous code is inefficient.

* Add warning when menu text is missing

* [Menu] Allow the conditional attribute to work in <menu> elements

* [Menu] description should be str, not bytes

* [Menu] remove unused "parent" arg

* [Menu] simplify xml format

* [StartEnigma/Hotkey] add compatibility with new menu.xml format

* [Menu] add x.tag == 'plugin'

* [ScreenSummary] add summary module name to skin list

e.g. if a module other than Screens.Setup.Setup uses Screens.Setup.SetupSummary, screen name "SetupSummary" will be missing from the skin list so it will get diverted to the wrong skin, most likely "ScreenSummary". This commit corrects that behaviour.

* [keymap] NavigationActions, activate KEY_REWIND and KEY_FASTFORWARD

* [Directories] add missing "fileReadXML"

* [Setup/ConfigList/config] update, among other things, allows reading setup.xml files in plugins, and removal of 100s of lines of code throughout enigma

* [CI] Remove unneeded code

* [InputDeviceSetup] Remove pointless code

* [NetworkSetup] remove redundant code

* [ParentalControlSetup] Make UI consistent with "Setup" screens

* Fix graphical boolean switch.

This is stored as true/false and not as yes/no

* First try to sync the config and ConfigList with OpenVix

* Add missing ConfigAction

* Resolve issues around extra_args

Missing parameter and missing function

* Add missing setupShowDefault config

* Resolve merge issue

* Ensure that changed values are saved before they disappear

E.G. for languages when you disable more than one auto selected
language one of the languages was not anymore visible in the list and
therefore the value was stored, but not saved into the
/etc/enigma2/settings file. This change does ensure the value is saved.

* ExtraArgs was not implemented (yet) so no need to remove them

* Resolve GSOD with ConfigClock

We do not currently have the formats like OpenVix has with the different
clock formats (24 hours/12 hours style) where translators etc can also
configure it. I still think also the implementation of it may need some
discussion.

* Remove code in various modules that is already inherited from ConfigListScreen

* [config.py] fix BSoD

[Skin] Processing screen 'NumericalTextInputHelpDialog', position=(537, 675), size=(846 x 246) for module 'NumericalTextInputHelpDialog'.
Traceback (most recent call last):
  File "/usr/lib/enigma2/python/Components/ConfigList.py", line 92, in selectionChanged
    self.current[1].onSelect(self.session)
  File "/usr/lib/enigma2/python/Components/config.py", line 1382, in onSelect
    self.help_window.setAnimationMode(0)
  File "/usr/lib/enigma2/python/Screens/Screen.py", line 206, in setAnimationMode
    self.instance.setAnimationMode(mode)
AttributeError: 'eWindow' object has no attribute 'setAnimationMode'
[ePyObject] (CallObject(<bound method ConfigList.selectionChanged of <Components.ConfigList.ConfigList object at 0xaefd7b80>>,()) failed)
[gRC] Warning: Main thread is busy, displaying spinner!

* [doc] add SETUP

* Add new option show setup default values in setup.xml

* Sleeptimer: OK Button now has a differnet function.

* MovieSelectionConfig: OK Button now has a differnet function.

* [SleepTimerEdit.py] use inherited code

* A config conditionally hidden but changed should be saved

In the previous work-a-round I did save all when the config was rebuild
but of course we only need to save configs that are conditionally not
shown only when they are changed.

I get to the config to an eval at this moment as I could not (quickly)
find a better way to get to the specific config

This avoids e.g. in the auto language setup when we put languages on
'None' while they disappear from the config list that the value is
actually not saved

See:
https://forums.openpli.org/topic/98887-auto-language-selection-options-not-saved-corectly/

* For a sleeptimer directly execute it when select in choicebox

* Correctly cover config items that are conditionaly hidden

See:
https://forums.openpli.org/topic/98887-auto-language-selection-options-not-saved-corectly/

In ec7ff0c for example when the setup was canceled the 'old' values
did not return at all and now with keeping a hiddenItems list we can
save them when required and also cancel them when required.
I also needed to add hasattr around it as te code is used on mulitple
locations where this list does not exist while also __init__ functions
of the ConfigList or so are not used

* Adjust Fastscan to new ConfigList functionality

* [Fastscan] inherit

* Resolve typo made in previous commit

* Resolve new config structure for InputDeviceSetup

* Remove some hasattr on the hiddenItems by ensure it is declared

* [Setup/ConfigList] self.hiddenItems, try a different approach

* [Satconfig.py] remove redundant code

* [Satconfig.py] use the UI actions provided in ConfigListScreen

* [ChannelSelection] InsertService, inherit UI from Setup

* [MovieSelection] MovieBrowserConfiguration, inherit UI from Setup

* [RecordPaths] inherit UI from Setup

* [SetupFallbackTuner] inherit UI from Setup

* [TimeDateInput] inherit UI from Setup

* [config.py] remove six and some cleanup

* [GraphMultiEPG] inherit UI from Setup (#3996)

* [HdmiCEC] inherit UI from ConfigListScreen (#3997)

---------

Co-authored-by: Littlesat <littlesat@openpli.org>
Co-authored-by: TwolDE2 <tonywhalley@web.de>
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.

3 participants