servo: Merge #6506 - notify_darwin should trap import errors (from mt2d2:darwin_notification_imports); r=metajack

notify_darwin should trap import errors and should provide the useful package name for the user to install. Fix for issue #6479.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3df35c2f42d7224560837a9ef63400e0e16829bf
This commit is contained in:
Michael Tremel 2015-06-28 11:05:36 -06:00
Родитель 7190d1c94a
Коммит 9d41cdae1b
1 изменённых файлов: 14 добавлений и 11 удалений

Просмотреть файл

@ -64,21 +64,24 @@ def notify_win(title, text):
def notify_darwin(title, text):
import Foundation
import objc
try:
import Foundation
import objc
NSUserNotification = objc.lookUpClass("NSUserNotification")
NSUserNotificationCenter = objc.lookUpClass("NSUserNotificationCenter")
NSUserNotification = objc.lookUpClass("NSUserNotification")
NSUserNotificationCenter = objc.lookUpClass("NSUserNotificationCenter")
note = NSUserNotification.alloc().init()
note.setTitle_(title)
note.setInformativeText_(text)
note = NSUserNotification.alloc().init()
note.setTitle_(title)
note.setInformativeText_(text)
now = Foundation.NSDate.dateWithTimeInterval_sinceDate_(0, Foundation.NSDate.date())
note.setDeliveryDate_(now)
now = Foundation.NSDate.dateWithTimeInterval_sinceDate_(0, Foundation.NSDate.date())
note.setDeliveryDate_(now)
centre = NSUserNotificationCenter.defaultUserNotificationCenter()
centre.scheduleNotification_(note)
centre = NSUserNotificationCenter.defaultUserNotificationCenter()
centre.scheduleNotification_(note)
except ImportError:
raise Exception("Please make sure that the Python pyobjc module is installed!")
def notify_build_done(elapsed):