diff options
author | Matthias Baumgartner <dev@igsor.net> | 2023-01-13 10:18:20 +0100 |
---|---|---|
committer | Matthias Baumgartner <dev@igsor.net> | 2023-01-13 10:18:20 +0100 |
commit | 725921507c04e998c6ce1d4416af97a5e9470443 (patch) | |
tree | 3c27530d48e387cb48e6c15cb99a94938b4ae10f /tagit | |
parent | b6a57a3a84bc4ea0b5db33e6c82b30944fad7e54 (diff) | |
download | tagit-725921507c04e998c6ce1d4416af97a5e9470443.tar.gz tagit-725921507c04e998c6ce1d4416af97a5e9470443.tar.bz2 tagit-725921507c04e998c6ce1d4416af97a5e9470443.zip |
action replay for development and testing
Diffstat (limited to 'tagit')
-rw-r--r-- | tagit/apps/port-config.yaml | 5 | ||||
-rw-r--r-- | tagit/windows/desktop.py | 53 |
2 files changed, 26 insertions, 32 deletions
diff --git a/tagit/apps/port-config.yaml b/tagit/apps/port-config.yaml index 76fc580..d5bad35 100644 --- a/tagit/apps/port-config.yaml +++ b/tagit/apps/port-config.yaml @@ -7,6 +7,9 @@ session: backend: SparqlStore: {} user: 'http://example.com/me' + script: + #- ShowBrowsing + - [AddToken, 'hello'] storage: index: preview_size: @@ -15,7 +18,7 @@ storage: - 400 ui: standalone: - plane: browsing + #plane: browsing browser: maxcols: 8 maxrows: 8 diff --git a/tagit/windows/desktop.py b/tagit/windows/desktop.py index 0b28230..bff983c 100644 --- a/tagit/windows/desktop.py +++ b/tagit/windows/desktop.py @@ -131,39 +131,24 @@ class MainWindow(FloatLayout): self.trigger('ShowBrowsing') # show welcome message - if self.session.cfg('session', 'first_start'): + if self.session.cfg('session', 'first_start'): # FIXME: mb/port: move to starting app self.display_welcome() - # script - return - Clock.schedule_once(lambda dt: self.trigger('Search'), 0) - Clock.schedule_once(lambda dt: self.trigger('MoveCursorFirst'), 0) - Clock.schedule_once(lambda dt: self.trigger('SortKey', 'fid:image.colors_spatial:726b4e8ea45546e55dfcd4216b276284'), 0) - from kivy.app import App - App.get_running_app().stop() - Clock.schedule_once(lambda dt: self.trigger('ZoomOut'), 0) - Clock.schedule_once(lambda dt: self.trigger('ZoomOut'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) - Clock.schedule_once(lambda dt: self.trigger('NextPage'), 0) + # run script + for args in self.session.cfg('session', 'script'): + if isinstance(args, str): + cmd, args = args, [] + else: + cmd = args.pop(0) + Clock.schedule_once( + lambda dt, cmd=cmd, args=args: self.trigger(cmd, *args), + self.session.cfg('session', 'script_delay')) + + # FIXME: mb/port: debugging only + #return + #Clock.schedule_once(lambda dt: self.trigger('Search'), 0) + #Clock.schedule_once(lambda dt: self.trigger('ZoomOut'), 0) + #Clock.schedule_once(lambda dt: self.trigger('ZoomOut'), 0) #from kivy.app import App #App.get_running_app().stop() @@ -208,6 +193,12 @@ config.declare(('storage', 'index', 'update_on_startup'), config.Bool(), False, config.declare(('session', 'first_start'), config.Bool(), True, __name__, 'First start', 'Show the welcome message typically shown when tagit is started the first time.') +config.declare(('session', 'script'), config.List(config.Any()), [], + __name__, 'start script', 'Actions to run after startup. Intended for testing.') + +config.declare(('session', 'script_delay'), config.Unsigned(), 0, + __name__, 'script delay', 'Start script execution delay in seconds.') + config.declare(('ui', 'standalone', 'plane'), config.Enum('browsing', 'dashboard'), 'dashboard', __name__, 'Initial plane', 'Start with the dashboard or browsing plane.') |