aboutsummaryrefslogtreecommitdiffstats
path: root/tagit
diff options
context:
space:
mode:
authorMatthias Baumgartner <dev@igsor.net>2023-01-13 10:18:20 +0100
committerMatthias Baumgartner <dev@igsor.net>2023-01-13 10:18:20 +0100
commit725921507c04e998c6ce1d4416af97a5e9470443 (patch)
tree3c27530d48e387cb48e6c15cb99a94938b4ae10f /tagit
parentb6a57a3a84bc4ea0b5db33e6c82b30944fad7e54 (diff)
downloadtagit-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.yaml5
-rw-r--r--tagit/windows/desktop.py53
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.')