report-xfstests: Preserve the current property page when switching runs
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
This commit is contained in:
parent
e5a8e46cd9
commit
2ef3eea690
|
@ -39,9 +39,9 @@ class TestViewer(Gtk.Box):
|
||||||
SizeGroup.add_widget(self.switcher)
|
SizeGroup.add_widget(self.switcher)
|
||||||
|
|
||||||
def set_test_result(self, file):
|
def set_test_result(self, file):
|
||||||
self.stack.clear()
|
current = self.stack.clear()
|
||||||
self.viewer.clear()
|
self.viewer.clear()
|
||||||
if file and file.get_is_test_result():
|
if file and file.get_is_test_result():
|
||||||
results = testresults.TestResults(file.path)
|
results = testresults.TestResults(file.path)
|
||||||
self.stack.show_properties(results)
|
self.stack.show_properties(results, current)
|
||||||
self.viewer.show_results(results)
|
self.viewer.show_results(results)
|
||||||
|
|
|
@ -122,20 +122,26 @@ class NotRunView(Gtk.ListView):
|
||||||
|
|
||||||
class Stack(Gtk.Stack):
|
class Stack(Gtk.Stack):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Gtk.Stack.__init__(self, transition_type=Gtk.StackTransitionType.OVER_LEFT_RIGHT)
|
Gtk.Stack.__init__(self)
|
||||||
common.SizeGroup.add_widget(self)
|
common.SizeGroup.add_widget(self)
|
||||||
|
|
||||||
def clear(self):
|
def clear(self):
|
||||||
|
current = self.get_visible_child_name()
|
||||||
pages = self.get_pages()
|
pages = self.get_pages()
|
||||||
children = [ pages.get_item(i).get_child() for i in range(pages.get_n_items()) ]
|
children = [ pages.get_item(i).get_child() for i in range(pages.get_n_items()) ]
|
||||||
for child in children:
|
for child in children:
|
||||||
self.remove(child)
|
self.remove(child)
|
||||||
|
return current
|
||||||
|
|
||||||
def show_properties(self, results):
|
def show_properties(self, results, current):
|
||||||
|
self.set_transition_type(Gtk.StackTransitionType.NONE)
|
||||||
for version in results.versions:
|
for version in results.versions:
|
||||||
self.add_page(View(results.properties[version]), version, Gtk.PolicyType.NEVER)
|
self.add_page(View(results.properties[version]), version, Gtk.PolicyType.NEVER, current)
|
||||||
self.add_page(NotRunView(results.skipped), "[not run]", Gtk.PolicyType.AUTOMATIC)
|
self.add_page(NotRunView(results.skipped), "[not run]", Gtk.PolicyType.AUTOMATIC, current)
|
||||||
|
self.set_transition_type(Gtk.StackTransitionType.OVER_LEFT_RIGHT)
|
||||||
|
|
||||||
def add_page(self, child, name, policy):
|
def add_page(self, child, name, policy, current):
|
||||||
window = Gtk.ScrolledWindow(vscrollbar_policy=policy, child=child)
|
window = Gtk.ScrolledWindow(vscrollbar_policy=policy, child=child)
|
||||||
self.add_titled(window, name, name)
|
self.add_titled(window, name, name)
|
||||||
|
if current == name:
|
||||||
|
self.set_visible_child(window)
|
||||||
|
|
Loading…
Reference in New Issue