From: Magnus H. <leg...@us...> - 2008-03-20 12:20:15
|
Update of /cvsroot/emacs-jabber/tox In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv28295 Modified Files: jabber-tox.el Log Message: Use new signal Index: jabber-tox.el =================================================================== RCS file: /cvsroot/emacs-jabber/tox/jabber-tox.el,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- jabber-tox.el 17 Jan 2008 00:47:30 -0000 1.1 +++ jabber-tox.el 20 Mar 2008 12:20:10 -0000 1.2 @@ -84,6 +84,8 @@ "SetOggVorbisAudioSource" "/home/magnus/musik/computervirus.ogg") ;; There, now we just wait for the NativeCandidatesPrepared signal... + ;; NO! Don't do like those dead people do! That signal will never + ;; come. I don't know why, though... (fsm-debug-output "About to register signal") (dbus-register-signal :session tox-name tox-session tox-session-interface "NativeCandidatesPrepared" @@ -92,6 +94,15 @@ (fsm-send-sync fsm (cons :native-candidates-prepared components))))) + ;; This is more like it. At least it will provide us with some + ;; debugging information. + (dbus-register-signal :session tox-name tox-session tox-session-interface + "NewNativeCandidate" + (lexical-let ((fsm fsm)) + (lambda (components) + (fsm-send-sync + fsm + (cons :new-native-candidate components))))) (fsm-debug-output "Waiting") (list (plist-put (plist-put @@ -100,10 +111,26 @@ :our-codecs our-codecs) nil))) +(define-enter-state jingle nil + (fsm state-data) + ;; clean up + (let ((tox-session (plist-get state-data :tox-session))) + (when tox-session + (ignore-errors + (dbus-call-method :session tox-name tox-session tox-session-interface + "Destroy")))) + (list nil nil)) + (define-state jingle :allocate (fsm state-data event callback) (case (car-safe event) + (:new-native-candidate + (setq state-data (plist-put state-data :native-candidates (list (cdr event)))) + (list :initiate state-data)) + (:native-candidates-prepared + ;; this code is currently unnecessary, as we never get the + ;; native-candidates-prepared signal (let ((components (cdr event))) (fsm-debug-output "The native candidates are %S" components) (setq state-data (plist-put state-data :native-candidates components)) |