211
211
# Disable software-properties if it does not exist
212
212
if not os.path.exists("/usr/bin/software-properties-gtk"):
213
sources = self.builder.get_object("menuitem_software_sources")
214
sources.set_sensitive(False)
213
self.menuitem_software_sources.set_sensitive(False)
216
215
with ExecutionTime("opening the pkginfo"):
217
216
# a main iteration friendly apt cache
379
378
self.restore_state()
381
380
# Adapt menu entries
382
supported_menuitem = self.builder.get_object(
383
"menuitem_view_supported_only")
384
supported_menuitem.set_label(self.distro.get_supported_filter_name())
385
file_menu = self.builder.get_object("menu1")
381
self.menuitem_view_supported_only.set_label(
382
self.distro.get_supported_filter_name())
384
# this will be set sensitive once a the availablepane is available
385
self.menuitem_recommendations.set_sensitive(False)
387
387
if not self.distro.DEVELOPER_URL:
388
help_menu = self.builder.get_object("menu_help")
389
developer_separator = self.builder.get_object(
390
"separator_developer")
391
help_menu.remove(developer_separator)
392
developer_menuitem = self.builder.get_object("menuitem_developer")
393
help_menu.remove(developer_menuitem)
388
self.menu_help.remove(self.separator_developer)
389
self.menu_help.remove(self.menuitem_developer)
395
391
# Check if oneconf is available
396
392
och = is_oneconf_available()
398
file_menu.remove(self.builder.get_object(
399
"menuitem_sync_between_computers"))
394
self.menu_file.remove(self.menuitem_sync_between_computers)
401
396
# restore the state of the add to launcher menu item, or remove the
402
397
# menu item if Unity is not currently running
403
add_to_launcher_menuitem = self.builder.get_object(
404
"menuitem_add_to_launcher")
405
398
if is_unity_running():
406
add_to_launcher_menuitem.set_active(
399
self.menuitem_add_to_launcher.set_active(
407
400
self.available_pane.add_to_launcher_enabled)
409
view_menu = self.builder.get_object("menu_view")
410
add_to_launcher_separator = self.builder.get_object(
411
"add_to_launcher_separator")
412
view_menu.remove(add_to_launcher_separator)
413
view_menu.remove(add_to_launcher_menuitem)
402
self.menu_view.remove(self.add_to_launcher_separator)
403
self.menu_view.remove(self.menuitem_add_to_launcher)
415
405
# run s-c-agent update
416
406
if options.disable_buy or not self.distro.PURCHASE_APP_URL:
417
file_menu.remove(self.builder.get_object(
418
"menuitem_reinstall_purchases"))
407
self.menu_file.remove(self.menuitem_reinstall_purchases)
419
408
if not (options.enable_lp or och):
420
file_menu.remove(self.builder.get_object("separator_login"))
409
self.menu_file.remove(self.separator_login)
422
411
# running the agent will trigger a db reload so we do it later
423
412
GObject.timeout_add_seconds(30, self._run_software_center_agent)
428
417
# TODO: Remove the following two lines once we have remove repository
429
418
# support in aptdaemon (see LP: #723911)
430
file_menu = self.builder.get_object("menu1")
431
file_menu.remove(self.builder.get_object(
432
"menuitem_deauthorize_computer"))
419
self.menu_file.remove(self.menuitem_deauthorize_computer)
434
421
# keep track of the current active pane
435
422
self.active_pane = self.available_pane
517
504
self.available_pane.cat_view.recommended_for_you_panel.connect(
518
505
"recommendations-opt-out",
519
506
self._on_recommendations_opt_out)
507
self.menuitem_recommendations.set_sensitive(True)
521
509
#~ def on_installed_pane_created(self, widget):
532
520
self._update_recommendations_menuitem(opted_in=False)
534
522
def _update_recommendations_menuitem(self, opted_in):
535
recommendations_menuitem = self.builder.get_object(
536
"menuitem_recommendations")
538
recommendations_menuitem.set_label(
524
self.menuitem_recommendations.set_label(
539
525
_(u"Turn Off Recommendations"))
541
recommendations_menuitem.set_label(
527
self.menuitem_recommendations.set_label(
542
528
_(u"Turn On Recommendations…"))
544
530
def _on_update_software_center_agent_finished(self, pid, condition):