[pitivi] elements: Show clip properties tab when a clip is selected
- From: Thibault Saunier <tsaunier src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pitivi] elements: Show clip properties tab when a clip is selected
- Date: Sat, 20 Jun 2015 08:53:58 +0000 (UTC)
commit 10400be2134b49d6c2b154da646a8e9f050f4f9d
Author: Thibault Saunier <tsaunier gnome org>
Date: Sat Jun 13 17:19:30 2015 +0200
elements: Show clip properties tab when a clip is selected
pitivi/mainwindow.py | 2 +-
pitivi/timeline/elements.py | 8 ++++++++
pitivi/utils/timeline.py | 2 ++
pitivi/utils/widgets.py | 4 ----
4 files changed, 11 insertions(+), 5 deletions(-)
---
diff --git a/pitivi/mainwindow.py b/pitivi/mainwindow.py
index 8fb3471..fd2323f 100644
--- a/pitivi/mainwindow.py
+++ b/pitivi/mainwindow.py
@@ -409,7 +409,7 @@ class PitiviMainWindow(Gtk.ApplicationWindow, Loggable):
"""
if isinstance(bElement, GES.TitleSource):
page = 2
- elif isinstance(bElement, GES.Source):
+ elif isinstance(bElement, GES.Source) or isinstance(bElement, GES.SourceClip):
# This covers: VideoUriSource, ImageSource, AudioUriSource.
page = 0
elif isinstance(bElement, GES.Transition):
diff --git a/pitivi/timeline/elements.py b/pitivi/timeline/elements.py
index e1fccce..deb90e4 100644
--- a/pitivi/timeline/elements.py
+++ b/pitivi/timeline/elements.py
@@ -815,6 +815,7 @@ class UriClip(SourceClip):
super(UriClip, self).__init__(layer, bClip)
self.set_tooltip_markup(misc.filename_from_uri(bClip.get_uri()))
+ self.bClip.selected.connect("selected-changed", self._selectedChangedCb)
def _childAdded(self, clip, child):
super(UriClip, self)._childAdded(clip, child)
@@ -831,6 +832,13 @@ class UriClip(SourceClip):
self._elements_container.pack_start(self._videoSource, True, False, 0)
self._videoSource.set_visible(True)
+ def _selectedChangedCb(self, unused_child, selected):
+ if selected:
+ self.timeline.parent.gui.switchContextTab(self.bClip)
+ self.selected = True
+ else:
+ self.selected = False
+
class TitleClip(SourceClip):
__gtype_name__ = "PitiviTitleClip"
diff --git a/pitivi/utils/timeline.py b/pitivi/utils/timeline.py
index 9b3c5ef..6133b73 100644
--- a/pitivi/utils/timeline.py
+++ b/pitivi/utils/timeline.py
@@ -146,12 +146,14 @@ class Selection(GObject.Object, Loggable):
self.selected = selection
for obj in old_selection - self.selected:
+ obj.selected.selected = False
for element in obj.get_children(False):
ui.unset_children_state_recurse(obj.ui, Gtk.StateFlags.SELECTED)
if not isinstance(element, GES.BaseEffect) and not isinstance(element, GES.TextOverlay):
element.selected.selected = False
for obj in self.selected - old_selection:
+ obj.selected.selected = True
if not hasattr(obj, "ui") or not obj.ui:
continue
ui.set_children_state_recurse(obj.ui, Gtk.StateFlags.SELECTED)
diff --git a/pitivi/utils/widgets.py b/pitivi/utils/widgets.py
index 9c96dac..3bd87c1 100644
--- a/pitivi/utils/widgets.py
+++ b/pitivi/utils/widgets.py
@@ -621,10 +621,6 @@ class GstElementSettingsWidget(Gtk.Box, Loggable):
self.log("Effect has no parent (it has been removed?)")
return
- for track_element in parent.get_children(False):
- if hasattr(track_element, "ui_element"):
- track_element.ui_element.hideKeyframes()
-
def setElement(self, element, properties={}, ignore=['name'],
default_btn=False, use_element_props=False):
"""
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]