Browse Source

kivy: make tabs one third of screen width and fix tabs scrolling

283
ThomasV 9 years ago
parent
commit
9b44635e3c
  1. 2
      gui/kivy/main.kv
  2. 8
      gui/kivy/uix/screens.py

2
gui/kivy/main.kv

@ -244,6 +244,7 @@
<TabbedPanelStrip>:
on_parent:
if self.parent: self.parent.bar_width = 0
if self.parent: self.parent.scroll_x = 0.5
<TabbedCarousel>
@ -297,6 +298,7 @@
TabbedCarousel:
id: panel
tab_height: '48dp'
tab_width: panel.width/3
default_tab: history_tab
strip_border: 0, 0, 0, 0
InvoicesScreen:

8
gui/kivy/uix/screens.py

@ -471,14 +471,18 @@ class TabbedCarousel(Factory.TabbedPanel):
return
idx = self.tab_list.index(value)
n = len(self.tab_list)
if idx in [0, 1]:
scroll_x = 1
elif idx in [n-1, n-2]:
scroll_x = 0
else:
scroll_x = 1. * (n - idx - 1) / (n - 1)
mation = Factory.Animation(scroll_x=scroll_x, d=.25)
mation.cancel_all(scrlv)
mation.start(scrlv)
def on_current_tab(self, instance, value):
if value.text == 'default_tab':
return
self.animate_tab_to_center(value)
def on_index(self, instance, value):

Loading…
Cancel
Save