[Résolu] Désactiver le Screensaver
Tekikou
Membre
Bonjour à tous, durant mon temps libre, je code une petite application dénommée "Chrono" qui permet de faire un countdown. Le countdown peut être activé grâce à l'AppleRemote, cependant je rencontre un problème assez génant.
En effet je n'ai pour l'instant trouvé aucun moyen de "désactiver" le screensaver.
J'ai besoin de le désactiver car le fait d'appuyer sur un des boutons de l'Apple Remote ne "réanime" pas le système, il continu d'être inactif. Or c'est assez énervant de devoir retapper son mot de passe pour débloquer la session et enfin pouvoir activer le countdown.
On perd tout l'intérêt de la Remote. /happy.png' class='bbc_emoticon' alt='^_^' />
J'ai bien trouvé un article sur les notifications de sleep & wake mais je ne pense pas que ce soit intéressant dans mon cas : http://developer.app...340/_index.html
J'ai également trouvé un post sur ce forum, ici : http://forum.cocoaca...h__1#entry29971 mais l'un des liens est mort.
Je sais que les applications multimédias sont capables d'empêcher le screensaver de démarrer (MPlayerX, QuickTime, VLC etc).
Cependant je n'ai pas trouvé d'articles pertinents (je ne connais problablement pas les bons mots-clés).
J'espère que pourrez m'aider ! /smile.png' class='bbc_emoticon' alt=':)' />
Un aperçu de l'.app:
EDIT:
Je viens de voir que le NSDistributedNotificationCenter reçoit la notification suivante lorsque le screensaver se lance: "com.apple.screensaver.didlaunch"
Le truc c'est que je n'sais pas quoi faire pour l'empêcher de démarrer.
En effet je n'ai pour l'instant trouvé aucun moyen de "désactiver" le screensaver.
J'ai besoin de le désactiver car le fait d'appuyer sur un des boutons de l'Apple Remote ne "réanime" pas le système, il continu d'être inactif. Or c'est assez énervant de devoir retapper son mot de passe pour débloquer la session et enfin pouvoir activer le countdown.
On perd tout l'intérêt de la Remote. /happy.png' class='bbc_emoticon' alt='^_^' />
J'ai bien trouvé un article sur les notifications de sleep & wake mais je ne pense pas que ce soit intéressant dans mon cas : http://developer.app...340/_index.html
J'ai également trouvé un post sur ce forum, ici : http://forum.cocoaca...h__1#entry29971 mais l'un des liens est mort.
Je sais que les applications multimédias sont capables d'empêcher le screensaver de démarrer (MPlayerX, QuickTime, VLC etc).
Cependant je n'ai pas trouvé d'articles pertinents (je ne connais problablement pas les bons mots-clés).
J'avais trouvé une méthode avec UpdateSystemActivity() (Carbon), mais les articles datent de plus de 10 ans, j'me suis dit qu'une méthode plus récente devait exister.
J'espère que pourrez m'aider ! /smile.png' class='bbc_emoticon' alt=':)' />
Un aperçu de l'.app:
EDIT:
Je viens de voir que le NSDistributedNotificationCenter reçoit la notification suivante lorsque le screensaver se lance: "com.apple.screensaver.didlaunch"
Le truc c'est que je n'sais pas quoi faire pour l'empêcher de démarrer.
Mots clés:
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
http://lists.apple.com/archives/cocoa-dev/2010/Apr/msg00185.html
Merci ! Grâce à ton lien j'ai fait quelques recherches sur IOPMAssertion et j'ai réussi à désactiver la veille écran.
Pour ceux que ça intéresse voilà le morceau de code:
Il faut ajouter ceci dans le fichier .h
Ainsi que:
Pour remettre le comportement par défaut, il suffit d'écrire ces 2 lignes: