Skip to content

Conversation

@AIIX
Copy link

@AIIX AIIX commented Feb 21, 2022

Description

  • Ports Mark-2/QA branch GUI service and namespace API improvements to ovos-core

  • Additional Changes (These were required to make the API work as designed and not loose functionality):

    • Added Homescreen Manager: The Homescreen manager service allows for adding, removing, switching and disabling multiple homescreen installations

    • Improvements to the IdleDisplaySkill class to register idle skills on initialize, homescreen manager events, handling reload of skill, handling shutdown of skill

    • Added Fix For Page Insertion as per Mycroft-GUI Protocol: Mark-2/QA branch seems to somehow discard the protocol requirement (maybe a bug or oversight) and adds all additional pages at index 0 in "mycroft.gui.list.insert", In this PR it is fixed to always account for the position at which the page was inserted as maintained in the namespace pages list

    • Added Fix For Checking persistence and resetting timeout removal of namespace when user interacts with the page on the screen for a given namespace.

    • Added Fix For Updating persistence when a persistent page is added to the namespace after a non persistent page, this fixes the issue where all pages are removed and each page persistence is not accounted for

    • Increased the default timeout by default to 30 seconds as it was set to originally, the mark-2/qa branch sets it to 15 seconds, which does not give enough time for skills wanting to be interacted with or displaying more than one page

@AIIX AIIX changed the title Feat/gui/mk2/improvements Port mk2 GUI service with additional improvements to core Feb 21, 2022
@AIIX
Copy link
Author

AIIX commented Feb 22, 2022

Additionally Added Improvements:

  • Added support for home-screens using the decorator type for registration in homescreen manager
  • Pages: Adds a GUIPage representation of page to namespaces
  • Pages: Improved handling of multi-page display's that were not properly supported by the new gui service
  • Namespace & Page Duration handling: Namespace should always depend on the current page displayed to determine its persistence time, In multi page scenarios we need to track the active page and its persistence as set by the skill author
  • Implement missing GUI Protocol methods: Unload Data and Page Focus (Client Side)
  • Fix a bunch of errors displayed on startup when the active skills namespace was not ready

@JarbasAl
Copy link
Member

JarbasAl commented Feb 22, 2022

@codecov
Copy link

codecov bot commented Feb 22, 2022

Codecov Report

Merging #66 (99a472f) into dev (4e43525) will increase coverage by 1.55%.
The diff coverage is 54.87%.

Impacted file tree graph

@@            Coverage Diff             @@
##              dev      #66      +/-   ##
==========================================
+ Coverage   47.53%   49.08%   +1.55%     
==========================================
  Files         112      115       +3     
  Lines        9474     9720     +246     
==========================================
+ Hits         4503     4771     +268     
+ Misses       4971     4949      -22     
Impacted Files Coverage Δ
mycroft/gui/__main__.py 0.00% <0.00%> (ø)
mycroft/gui/service.py 0.00% <0.00%> (ø)
mycroft/gui/bus.py 30.23% <30.23%> (ø)
mycroft/gui/__init__.py 83.55% <50.00%> (ø)
mycroft/gui/namespace.py 73.12% <73.12%> (ø)
mycroft/gui/page.py 100.00% <100.00%> (ø)
mycroft/version/__init__.py 91.30% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 287e399...99a472f. Read the comment docs.

@JarbasAl JarbasAl merged commit 51814d2 into dev Feb 22, 2022
@JarbasAl JarbasAl added bug Something isn't working enhancement New feature or request mk2 ported from mark2 refactor code refactor without functional changes and removed enhancement New feature or request labels Feb 22, 2022
@JarbasAl JarbasAl deleted the feat/gui/mk2/improvements branch February 24, 2022 14:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working mk2 ported from mark2 refactor code refactor without functional changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants