~mmcg069/software-center/Bug830691

« back to all changes in this revision

Viewing changes to softwarecenter/ui/gtk3/session/viewmanager.py

  • Committer: Matthew McGowan
  • Date: 2011-08-22 09:26:30 UTC
  • mfrom: (2131.1.28 software-center)
  • Revision ID: matthew.joseph.mcgowan@gmail.com-20110822092630-yqbaa7zhljgo4zqe
merge

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
# this program; if not, write to the Free Software Foundation, Inc.,
17
17
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
18
 
19
 
from gi.repository import Gtk
 
19
from gi.repository import Gtk, GObject
20
20
 
21
21
from navhistory import NavigationHistory, NavigationItem
22
22
from softwarecenter.ui.gtk3.widgets.backforward import BackForwardButton
26
26
def get_viewmanager():
27
27
    return _viewmanager
28
28
 
29
 
class ViewManager(object):
 
29
class ViewManager(GObject.GObject):
 
30
 
 
31
    __gsignals__ = {
 
32
        "view-changed" : (GObject.SignalFlags.RUN_LAST,
 
33
                          None,
 
34
                          (GObject.TYPE_PYOBJECT, ),
 
35
                         ),
 
36
    }
30
37
 
31
38
    def __init__(self, notebook_view, options=None):
 
39
        GObject.GObject.__init__(self)
32
40
        self.notebook_view = notebook_view
33
41
        self.search_entry = SearchEntry()
34
42
        self.search_entry.connect(
90
98
    def set_active_view(self, view_id):
91
99
        if not self.all_views: 
92
100
            return
 
101
        self.emit('view-changed', view_id)
93
102
        page_id = self.all_views[view_id]
94
103
        view_widget = self.get_view_widget(view_id)
95
104
 
96
 
        view_page = view_widget.get_current_page()
97
 
        view_state = view_widget.state
 
105
        # it *seems* that this shouldn't be called here if we want the history
 
106
        # to work, but I'm not familiar with the code, so I'll leave it here
 
107
        # for the mean time
 
108
#        view_page = view_widget.get_current_page()
 
109
#        view_state = view_widget.state
98
110
 
99
111
        if (self.search_entry.get_text() !=
100
112
            view_widget.state.search_term):
101
113
            self.search_entry.set_text_with_no_signal(
102
114
                                        view_widget.state.search_term)
103
115
    
104
 
        callback = view_widget.get_callback_for_page(view_page,
105
 
                                                     view_state)
 
116
#        callback = view_widget.get_callback_for_page(view_page,
 
117
#                                                     view_state)
106
118
 
107
 
        nav_item = NavigationItem(self, view_widget, view_page,
108
 
                                  view_state.copy(), callback)
109
 
        self.navhistory.append(nav_item)
 
119
#        nav_item = NavigationItem(self, view_widget, view_page,
 
120
#                                  view_state.copy(), callback)
 
121
#        self.navhistory.append(nav_item)
110
122
 
111
123
        self.notebook_view.set_current_page(page_id)
112
124
        if view_widget: