GNU bug report logs - #63620
30.0.50; [Feature Request] run hooks on sleep/wake

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Severity: wishlist; Reported by: Andrew Cohen <acohen@HIDDEN>; Keywords: patch; dated Sat, 20 May 2023 23:25:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 7 Feb 2025 12:21:20 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 07 07:21:20 2025
Received: from localhost ([127.0.0.1]:33265 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tgNMG-0005qf-5y
	for submit <at> debbugs.gnu.org; Fri, 07 Feb 2025 07:21:20 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:43938)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tgNMC-0005qN-72
 for 63620 <at> debbugs.gnu.org; Fri, 07 Feb 2025 07:21:17 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tgNM4-0001Pd-3c; Fri, 07 Feb 2025 07:21:09 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=r3fHPK1F4963mwHLix7hxdEoYWU66mP8fSA3b4k1sBw=; b=DVwrmA0dWGoL
 F+mUeQdJQzuGs+qaJS7xKmjwfCRDuyc8Q2EIQZUBbCWmx294tuU5xUkD5GJCB0bMtakw+pIzd6PzT
 /rxGEd89SFEGt+WaQkdsnK33YBRWaN2/3GVGCxcoUWzeDrBWhP7VxeiudKPsam991Km2pQXjalijU
 Z2xn25qGETlzd2t7JJEvDSMVxDBHvXoxX5YskBlg/7pNoQfAasSVj1Xq0tCnTLYumb1se8mRBaLlK
 xTltgrmBSrJcbg7dqltlahhHpEQwUy5cMl4vmH9CMvLiwIYbhf4w47j5axalUhESSMc6ww9B+XidO
 XaEJzTHefDOzOaADhI3fZQ==;
Date: Fri, 07 Feb 2025 14:20:54 +0200
Message-Id: <8634gq54k9.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
In-Reply-To: <CAN+1HbpVg8LftbnS+W5-g7eaGMc_z7Z74YGiZdjYn_Hsg3R4uQ@HIDDEN>
 (message from Ship Mints on Fri, 7 Feb 2025 07:05:58 -0500)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
 <87o6zfplyk.fsf@HIDDEN> <87r04agrb6.fsf@HIDDEN>
 <CAN+1HbpBaeuGOvz=iC5sKUngEuB-Ew_PMc=y+rr33Fv5PG1X+A@HIDDEN>
 <90a4296e-02c8-49ec-a10a-04114803a347@HIDDEN>
 <CAN+1HbpVg8LftbnS+W5-g7eaGMc_z7Z74YGiZdjYn_Hsg3R4uQ@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Ship Mints <shipmints@HIDDEN>
> Date: Fri, 7 Feb 2025 07:05:58 -0500
> Cc: 63620 <at> debbugs.gnu.org, Stefan Monnier <monnier@HIDDEN>, 
> 	Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN
> 
> Do we need to consider not blocking sleep when Emacs is run in batch mode?

Why do you think batch mode should be special in this regard?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 7 Feb 2025 12:18:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 07 07:18:46 2025
Received: from localhost ([127.0.0.1]:33254 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tgNJm-0005g1-BT
	for submit <at> debbugs.gnu.org; Fri, 07 Feb 2025 07:18:46 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:36764)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tgNJj-0005fl-0i
 for 63620 <at> debbugs.gnu.org; Fri, 07 Feb 2025 07:18:44 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tgNJb-0000Xe-HL; Fri, 07 Feb 2025 07:18:35 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=cMNy5wPV5Yphq2jff01NChvK1xCflAAsMbi56ZtLsM0=; b=D4RgUiN3f/mD
 8ETBJOA/N94IydqxMy8R6ILMzgDl3ze8ajbJIRAAZs/XiUixIohNSv6jJOJhu8mE7AjXVmM30CTzi
 OodVUbVMxJ4dtXLq2Lh62ZJlWg2G6ChLX6IIu8nSUt8ZUO27TYq/0vFh0d6RiVcK371Az3UZf/Gmb
 wgjo0SmR0WSXtBjjUXAru//JT6yAO+y92PVjloxlnglyvzyrk/rTxntAwDluX4YE+SmrvpDICa2Ls
 LQSWxNijd7zT0QCWgkMsi4/6mAZ+JDubEfXN7uAd8ND3QfbA7HWFzCIUjHDR2cO1oIiyvzu2FC3SE
 izrB2BnsXGS5ShYvLFAVkg==;
Date: Fri, 07 Feb 2025 14:18:20 +0200
Message-Id: <864j1654oj.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
In-Reply-To: <90a4296e-02c8-49ec-a10a-04114803a347@HIDDEN> (message from
 Andrew Cohen on Fri, 7 Feb 2025 19:43:32 +0800 (GMT+08:00))
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
 <87o6zfplyk.fsf@HIDDEN> <87r04agrb6.fsf@HIDDEN>
 <CAN+1HbpBaeuGOvz=iC5sKUngEuB-Ew_PMc=y+rr33Fv5PG1X+A@HIDDEN>
 <90a4296e-02c8-49ec-a10a-04114803a347@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN, shipmints@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Fri, 7 Feb 2025 19:43:32 +0800 (GMT+08:00)
> From: Andrew Cohen <acohen@HIDDEN>
> Cc: 63620 <at> debbugs.gnu.org, Stefan Monnier <monnier@HIDDEN>,
> 	Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN
> 
> Having thought a bit more I am convinced that starting the block 
> before the sleep notification is the right thing

This sounds strange to me.  Are you absolutely sure?  Did you try this
on some system?  Why would an application need to proactively block
sleep mode before the system announces its intention to sleep?  Won't
doing that prevent sleep, including one due to system idleness,
altogether?

> I think that with logind putting the block on AFTER the notification
> is actually not allowed (at least it seems that way in my testing.

We don't need to block sleep, we only need to delay it for a short
while.

> Can I get any feedback about the file descriptor closure issue? From what 
> I can tell without exposing it in lisp the way I did I won't be able to 
> use blocking anyway.

Emacs has no way of manipulating handles or file descriptors.  If this
is required in this case, we must expose it to Lisp in the form of
some primitive.

But since there could be only one such descriptor at any given time,
why would any Lisp program need to know its value?  It sounds like we
need to record the descriptor internally, and then close it in C, no?
Maybe some D-Bus related primitive could do that?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 7 Feb 2025 12:08:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 07 07:08:11 2025
Received: from localhost ([127.0.0.1]:33197 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tgN9W-0005BP-Jc
	for submit <at> debbugs.gnu.org; Fri, 07 Feb 2025 07:08:11 -0500
Received: from mail-vs1-xe2a.google.com ([2607:f8b0:4864:20::e2a]:57474)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tgN9T-0005As-Aw
 for 63620 <at> debbugs.gnu.org; Fri, 07 Feb 2025 07:08:08 -0500
Received: by mail-vs1-xe2a.google.com with SMTP id
 ada2fe7eead31-4b2c0a7ef74so1263842137.2
 for <63620 <at> debbugs.gnu.org>; Fri, 07 Feb 2025 04:08:07 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738930081; x=1739534881; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=XA+YyJ7FFRun/dfuak/Vpd8QsjyHRI0gFUZFSj5Qwtk=;
 b=Y9/V+BOLMmxz3wxHB72f0cd3sxLShSnJISq+2HODU/5E9xGKPsZLmXUl1SVPdULnr9
 AwlpkpddK29Lbx/f+Z6rffrfrxFLrWmGQvky7nSTIALNtVpd2YxMZAQgvsCDeaTHP4k3
 JL4F6vVbxook8QiYKVYJvIRKN++hlVysnErX8C+0ZiOBhhpFzk1THlPkJUpFEun2AjCP
 wyD0mxulOvfLW69VPJlkING97EQahG60UCzsCzo44pz+Ne/FX7HL78jtQZ6dE/FyXHTx
 uxY1xSs/scJmcApn0XyFPIS3+4uARTcpha2sJOKSIrmqbz+8/L8eBkQTm0HJ7qOfQ+p5
 4ZOA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738930081; x=1739534881;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=XA+YyJ7FFRun/dfuak/Vpd8QsjyHRI0gFUZFSj5Qwtk=;
 b=ZcH2wC4bL+D5DKNklWmoZS82uUxlkoYWjY1oeqrjt8aZpN9IpUvWAjWU6RW/S0bl3k
 Arwmdlgb2JAdLdmuWuEoCn862DVqZku2RmaBVIpScYIJ2HwCylSinygMNmBkeRX66+p4
 /w32MHWoXMHCO2Z5GCMX3zG/jFCu44xikscXACfV7KmySnUZG+2xLCxdvgaOvTs3FM0D
 M9Vj9F523u85A29auac0oqhz2mcckNZ/roJex3AOcOVKuEXsPVjiQcHpQJW/QcBzk6fE
 abOeCEhhQYpmhTbF1eGOG1GpwziPIVwruV3LM381qZEwKm3z1X5Kj1dZnoQYBXb+PZbZ
 2c9A==
X-Gm-Message-State: AOJu0YzzQ4eW/d3+AomiMbLfdukqYO2/0B+6LgvOZaVCfq7nBKAMEjnR
 luVqNcjo5bBGz/qxeV/A5iyeAf78uON4ycwsO/kj2lwesctkneDhPJUxMF3GYrYRgxnOaX75W2v
 0WeyXAsMat4ZBWTwJSPq8tFThxlY=
X-Gm-Gg: ASbGncuyZdhfIJ03/fDuGZC96ThphF1GYs8Hnvny4x3PG+H2G6328i/zX7LqnHmbbOE
 qcGq5pi/MKpXDaZPw1ujqcSXcNkQH8m4dbaWx+rtMgLRXehXSo3Wbix32fshayn7HeyPRmv54
X-Google-Smtp-Source: AGHT+IHoCJgf5W9uny1Y+WdL9ogX7O8V4q4/pU7NIkKyU7gAKsEDkEGQ/DSvqjgjWmbtB3BQXzTvkQ+ttTzDDiYtv0A=
X-Received: by 2002:a05:6102:3046:b0:4af:c5c8:bb4c with SMTP id
 ada2fe7eead31-4ba85f07ce4mr1600223137.16.1738930081275; Fri, 07 Feb 2025
 04:08:01 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
 <87o6zfplyk.fsf@HIDDEN> <87r04agrb6.fsf@HIDDEN>
 <CAN+1HbpBaeuGOvz=iC5sKUngEuB-Ew_PMc=y+rr33Fv5PG1X+A@HIDDEN>
 <90a4296e-02c8-49ec-a10a-04114803a347@HIDDEN>
In-Reply-To: <90a4296e-02c8-49ec-a10a-04114803a347@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Fri, 7 Feb 2025 07:05:58 -0500
X-Gm-Features: AWEUYZnAWHhuoMgmp150WKu8wxzNHK2z5f-FHRXunC_j879asI0GDqXVDCZ9KfM
Message-ID: <CAN+1HbpVg8LftbnS+W5-g7eaGMc_z7Z74YGiZdjYn_Hsg3R4uQ@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Andrew Cohen <acohen@HIDDEN>
Content-Type: multipart/alternative; boundary="000000000000c8a7a6062d8c3513"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--000000000000c8a7a6062d8c3513
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Do we need to consider not blocking sleep when Emacs is run in batch mode?

On Fri, Feb 7, 2025 at 6:43=E2=80=AFAM Andrew Cohen <acohen@HIDDEN> wrote:

> Feb 7, 2025 19:16:03 Ship Mints <shipmints@HIDDEN>:
>
> > On Fri, Feb 7, 2025 at 2:14=E2=80=AFAM Andrew Cohen <acohen@HIDDEN> wro=
te:
> >>
> >> I spent some time looking over the documentation and the general
> >> recommendations for dealing with sleep notifications. The
> >> recommendation
> >> (from systemd/logind) is that any application that needs to do
> >> something
> >> prior to sleep should monitor for sleep notifications and install the
> >> block preventing sleep at the time that monitoring starts. When a
> >> notification of sleep is received the application should complete its
> >> work and then remove the block. After waking up, the block should be
> >> restored.
> >
> > The semantics on macOS are still a bit murky to me and the API is
> > woefully under documented. The steps on macOS, I think, will be what we
> > discussed earlier where the block is put in place during sleep-request
> > handling. I will see if it is possible to follow the same method as
> > gnome but it may have to be through experimentation (that'll be super
> > fun).
> >
> > The other thing I was able to find in documentation from last decade is
> > that there are two kinds of sleep, kind of as you'd expect:
> >
> > - Forced sleep where the user explicitly does something like closing a
> > laptop lid or pressing a sleep button. This kind of sleep can be
> > briefly delayed but not blocked by an application.
> >
> > - Inactive sleep where the system sleeps on user idleness. This kind of
> > sleep can be both delayed and blocked.
> >
> > Let's keep the potential semantics and processing differences in mind
> > when designing how to make this work across platforms. It may be
> > possible to have one system implementation emulate another but that
> > could be cumbersome vs. a more accommodative structure.
>
>
> Sure. Having thought a bit more I am convinced that starting the block
> before the sleep notification is the right thing, and am hopeful that
> macos can accommodate it. I think that with logind putting the block on
> AFTER the notification is actually not allowed (at least it seems that
> way in my testing.
>
> But I suspect we can accommodate both approaches if necessary.
>
> Can I get any feedback about the file descriptor closure issue? From what
> I can tell without exposing it in lisp the way I did I won't be able to
> use blocking anyway.
>

--000000000000c8a7a6062d8c3513
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">Do we need to consider not blocking sleep when Emacs is run in batch mod=
e?</div></div><br><div class=3D"gmail_quote gmail_quote_container"><div dir=
=3D"ltr" class=3D"gmail_attr">On Fri, Feb 7, 2025 at 6:43=E2=80=AFAM Andrew=
 Cohen &lt;<a href=3D"mailto:acohen@HIDDEN">acohen@HIDDEN</a>&gt; wrote:<br=
></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;=
border-left:1px solid rgb(204,204,204);padding-left:1ex">Feb 7, 2025 19:16:=
03 Ship Mints &lt;<a href=3D"mailto:shipmints@HIDDEN" target=3D"_blank">=
shipmints@HIDDEN</a>&gt;:<br>
<br>
&gt; On Fri, Feb 7, 2025 at 2:14=E2=80=AFAM Andrew Cohen &lt;<a href=3D"mai=
lto:acohen@HIDDEN" target=3D"_blank">acohen@HIDDEN</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; I spent some time looking over the documentation and the general<b=
r>
&gt;&gt; recommendations for dealing with sleep notifications. The <br>
&gt;&gt; recommendation<br>
&gt;&gt; (from systemd/logind) is that any application that needs to do <br=
>
&gt;&gt; something<br>
&gt;&gt; prior to sleep should monitor for sleep notifications and install =
the<br>
&gt;&gt; block preventing sleep at the time that monitoring starts. When a<=
br>
&gt;&gt; notification of sleep is received the application should complete =
its<br>
&gt;&gt; work and then remove the block. After waking up, the block should =
be<br>
&gt;&gt; restored.<br>
&gt;<br>
&gt; The semantics on macOS are still a bit murky to me and the API is <br>
&gt; woefully under documented. The steps on macOS, I think, will be what w=
e <br>
&gt; discussed earlier where the block is put in place during sleep-request=
 <br>
&gt; handling. I will see if it is possible to follow the same method as <b=
r>
&gt; gnome but it may have to be through experimentation (that&#39;ll be su=
per <br>
&gt; fun).<br>
&gt;<br>
&gt; The other thing I was able to find in documentation from last decade i=
s <br>
&gt; that there are two kinds of sleep, kind of as you&#39;d expect:<br>
&gt;<br>
&gt; - Forced sleep where the user explicitly does something like closing a=
 <br>
&gt; laptop lid or pressing a sleep button. This kind of sleep can be <br>
&gt; briefly delayed but not blocked by an application.<br>
&gt;<br>
&gt; - Inactive sleep where the system sleeps on user idleness. This kind o=
f <br>
&gt; sleep can be both delayed and blocked.<br>
&gt;<br>
&gt; Let&#39;s keep the potential semantics and processing differences in m=
ind <br>
&gt; when designing how to make this work across platforms. It may be <br>
&gt; possible to have one system implementation emulate another but that <b=
r>
&gt; could be cumbersome vs. a more accommodative structure.<br>
<br>
<br>
Sure. Having thought a bit more I am convinced that starting the block <br>
before the sleep notification is the right thing, and am hopeful that <br>
macos can accommodate it. I think that with logind putting the block on <br=
>
AFTER the notification is actually not allowed (at least it seems that <br>
way in my testing.<br>
<br>
But I suspect we can accommodate both approaches if necessary.<br>
<br>
Can I get any feedback about the file descriptor closure issue? From what <=
br>
I can tell without exposing it in lisp the way I did I won&#39;t be able to=
 <br>
use blocking anyway.<br>
</blockquote></div>

--000000000000c8a7a6062d8c3513--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 7 Feb 2025 11:44:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 07 06:44:05 2025
Received: from localhost ([127.0.0.1]:33158 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tgMmD-00042d-9a
	for submit <at> debbugs.gnu.org; Fri, 07 Feb 2025 06:44:05 -0500
Received: from mail-japanwestazon11021075.outbound.protection.outlook.com
 ([40.107.74.75]:40837 helo=OS0P286CU010.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tgMmB-00041r-4w
 for 63620 <at> debbugs.gnu.org; Fri, 07 Feb 2025 06:44:04 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=vM/eqdECYFjJ/aA/dQpfk6irloHgSbio7SKoMWJRCDqUch55GId5jxuq6+epc84H+ahaQhLlhK+C7XFVGALgA9HqNFEPHcFkQ0mgAvGui1oAh32SLnskay0rkKKW7kpdOnqgz/2xacx9scN3oSQ4krDgQWbN/vds2Pgo61/UlwLEU63BBzENQWzYlZP9hebFfaXWwChFq5zPFpY/ck7Pq4lG6W5Sa/5ZdHUI5GaHEbdDzq6BnCEf03PYdWPeOz13lmDfhrgTef3Y2FwCmo10WFzj9a8Xizumg0kdS9Xye7AxEvo5DRHWNaPNZn1XO2OI6Ghia0mCK1kDPhNe2b1KPQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RNCj3aim+/p4qBkaHOBQNDF0py91xbiZQdDAqa4ppeE=;
 b=t8mcKBg8rYPbV9D5eib3CJRVtWSQOLgTHNYmUKnx3CsIjF5NT3SyBu/pAssjORfyXKWf/xOcQ2vlz+u9PmDuWeEQsYHtQ/5GsuUxLQUhJhKpPzaEGhENHk49Q7ZRv4dtEXn0mN+rh6J9Lrc+pk7BVptLWyhufg+LDmm3LDnOj5AYNl+BeBVWcnlF0CfTuYfLTCjJ2u45D8b8C7OCvJ9nJSnXlxuPxgD3VKhS8hRHywWiIDHp35SRBV/0rAvzzYLdUbctPr7riK7Ja0p84oMh5C2u4njflPVJD/4XUT6GASnoHmszO9UeFrrA44QLkcXm9K4K5pTOVWaIz/V8zOOQ7w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RNCj3aim+/p4qBkaHOBQNDF0py91xbiZQdDAqa4ppeE=;
 b=Fs4hq30ObNNsRrNbu5fnZz/FjJL8yxGV3X0ZevsG9Gx1YR5Ur5hqNuvq2DCmS/EVrTcp8nkWgexm9fRHoFeOksVw2ZZXcuqtvULRgi8qyFrBHUBEhFjb5EC4hkeFpxsHAtbT9SLzgAAi3IUmoO5fn39EkF7IjjTXdpqHvBd1Pqogd/J+gwYuS16HObK4VHEcPu1rcbPjIryCOuNY8ePs9EUOcAtH0aMpKmBbT2+UJW/IOM/LUT6jFrIyOeeyK0ZgBPzd7XvZDIHLuDJs/wbtQza4gaujsTm8na0KvaGgZiKsr1RO2ULufUNGsCanyrMIngZLLF6gk1ZNOcfsmCmePg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by OS9P286MB4520.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:2fe::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.11; Fri, 7 Feb
 2025 11:43:52 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Fri, 7 Feb 2025
 11:43:52 +0000
Date: Fri, 7 Feb 2025 19:43:32 +0800 (GMT+08:00)
From: Andrew Cohen <acohen@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
Message-ID: <90a4296e-02c8-49ec-a10a-04114803a347@HIDDEN>
In-Reply-To: <CAN+1HbpBaeuGOvz=iC5sKUngEuB-Ew_PMc=y+rr33Fv5PG1X+A@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
 <87o6zfplyk.fsf@HIDDEN> <87r04agrb6.fsf@HIDDEN>
 <CAN+1HbpBaeuGOvz=iC5sKUngEuB-Ew_PMc=y+rr33Fv5PG1X+A@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: quoted-printable
X-Correlation-ID: <90a4296e-02c8-49ec-a10a-04114803a347@HIDDEN>
X-ClientProxiedBy: BN0PR02CA0025.namprd02.prod.outlook.com
 (2603:10b6:408:e4::30) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|OS9P286MB4520:EE_
X-MS-Office365-Filtering-Correlation-Id: d4b21e71-e507-4ba5-ac0e-08dd476cb1d0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016|7053199007;
X-Microsoft-Antispam-Message-Info: =?utf-8?B?Z1J6clJLUEZIWDR4RXcxM0JJYVp2S0hVR1FDSnRZdVp4QzRTdWxYeTcvdWsv?=
 =?utf-8?B?M1ZsMEtueUx4MDRmRGtWWDI3ODdsd2tWZE9pRWtvcGVYeUhmL3kyY2M3RkJD?=
 =?utf-8?B?WjNGUUJBSTBHZGdmK0c0WmJicm9YU3Vta29hdDNuUkFhNzFmc1U0UG9IcDZ0?=
 =?utf-8?B?ZmlkWDFtdnl2eE5lTkovUnF1UFM0R1RvRXg1cWFEWk9jY1ZKTnpRQzhmRmNK?=
 =?utf-8?B?MFhoSE9JTUFQREdFZ2M5NW93QmkvRDFDUTBiQ1czQlBMVTZ2Y0plcWZWM1Jn?=
 =?utf-8?B?RjNmUXJ4c0tRZDhrL2p1WGtTY09FeVZqUlg5clNpNTNybjQ5WnhFbGx5WnAw?=
 =?utf-8?B?RWVJSVptc3JjNDhJdFJ5VFE4Sjd0clYvWXpQaitUb2phQWVsR3I4VGprTkkv?=
 =?utf-8?B?RWFhNVdKR2VWQUFVQTlRRnhHamhoUEo0VkFZS1ljZFlEcGtpMXJSTDAyUWNO?=
 =?utf-8?B?N3cwYngvYmMxek1DcmdsczV5SHhETTExZmE5TDMwcDl6Z3U5U0lZRjdLazBP?=
 =?utf-8?B?Q1IrNDQxekNWb1ZjWnVodll6UVZrc09JNjJ6eVZ4TUpVbm5ZK21CRm9STlNh?=
 =?utf-8?B?YlBSUzNPNnBrSWJ3V09EbVZYMHM1NnkrbXZDL0tFVndJVGdjTVVIVTJ1VDZQ?=
 =?utf-8?B?YWZSSlhIOVllWHZhQ3FHRGdoejJWNzVoZC9SNFkwVWRyTytEU2phVjVGbnFP?=
 =?utf-8?B?ZnlZMCsxWTZ2UVZ0SUlieEI1YkdZREJnaGgxVy9EeGpmWm5MVmEyWVhVWkVj?=
 =?utf-8?B?c1gxRmFwRGFqdU9hQngwbFltS3F6NE5pdzUvUENSTjYzb25nUkNEQ253VTd2?=
 =?utf-8?B?RlloS0lnM0Nvb3Z1dmhwMmNRTlQ4c0d4cTc0ZC9rYlk1cU13N0ZBakwwNTFz?=
 =?utf-8?B?dVNnV2g3a0tiZ0xWbG1EMS9aRlZhRTI3Z09kb05aSHlhTTZzZW4wM24vbFA0?=
 =?utf-8?B?ZnZiOFNubVhrVi9kL3FJcGMwbS83c0pLNXN2dTR4Z3VTZUxnVEIwVFNpenJ3?=
 =?utf-8?B?NmRmUmhZQnhsNTVBcjBKVENzTmJjdEszMlFlR1J2SktpTk1jVnpuTGNBeDFZ?=
 =?utf-8?B?YkhGaFExV2U4dU8xM3BTVjlob01ZRmg3YkRhWE13RzYxWmxqTzV6cWIyNEta?=
 =?utf-8?B?V3J5UEVlYURGd2U2bnVnaW5ldmxhS1NjbUEzOWRYZmQrNXRyNFhwM0NWVk5a?=
 =?utf-8?B?ZWYzYlB0Mmsxb1RnWnF0UFcydmZ0MFBibThxdkZoZWUxcVZPOVFxV1B0blNt?=
 =?utf-8?B?SFNxVS91WFhVa0N4RWcxNTFpWkU2N2JhRklrblBxUnZGU2hqeVdreUN1WlpU?=
 =?utf-8?B?bWxrMlZkYldFSzFhdjhGYzZFdkN0WkpYbFlscmMvTTJUN2FrV05mc2lOcmlQ?=
 =?utf-8?B?YVJJbWhsSnlLOVhCUDVZSGIvTFcyNDdmSWpwUXRSNmFPUnRibTRiZ1ZWZkZB?=
 =?utf-8?B?VDF6NUdpdXpKSHhEeFgvall6QVYveVdlNCtPb0ZNRWVUeS9lUXpKUVJzZWdS?=
 =?utf-8?B?Z0RMUnZsdVB4ZWhhTXdPdk5OZHlxUWJyWW1DT0JOc0MrVDB0UkNvY3paNC9u?=
 =?utf-8?B?Z3c1S2JTOEJRM3FHbVB4eWhsaFkvS0NyY2FQUUZLNzJMYlVjY2EwZngxNmRh?=
 =?utf-8?B?Uks4eEZlUTdQSUVUSnBoQmJNT2N3TUk0UWZFc3NkQ0Q4cHk3WlQ2dUE0aTR4?=
 =?utf-8?B?N1JCOFRoK1NhbTBKRUVzZ3ZnK1lTK1FhWGgwRE5TWWp3Q1dZdk9aeFduUzRU?=
 =?utf-8?B?Y0RQalBGbHEzVmIrYTJoSXlydkhlNXpvdTBCN1pLT3ZKcmVaeTB5eERycEhB?=
 =?utf-8?B?YklNdDgzNUU0anlwajE0THVoZHNHWi9EYSsyWGptOW1leTRkd3I1S245QWpp?=
 =?utf-8?Q?m2XrRGBP9HTvn?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(1800799024)(376014)(366016)(7053199007); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dmlyZGFpakZKTTBpMFpnQ2RGWXJILzVWUDNmRzFTQXNYOG9ESUd6UWhBMmlX?=
 =?utf-8?B?YnphZUxqbEpWMEM1dmZ1Zks4WWxWZHFNS1p4bFBiZnJwRkVkbXZScHFtTWJY?=
 =?utf-8?B?UStkdVoxK1RRb25pL0JZSWdNT0hmWWdXd0FVZUQyTm56dzducnlLQzRHMGVx?=
 =?utf-8?B?S0xqcXFuSGVvZ2NjS3ZjaG9TaEswbDN3NUZpby9pNmNxZVdLallvVnlOOHJQ?=
 =?utf-8?B?N2FWMWNKa2ZwRzFLQ1FoWkF0dmU2cWZtMmFJdTRXUXFqcWg5ZjRNU3ptZExo?=
 =?utf-8?B?TlljNEJ3NUhBVkNVYU85RDlUNE54RTJHVTZLN3RWR04wcE9wc3FlZWRCTGRH?=
 =?utf-8?B?UjJSOENCSVlTNkEyazN6R0Q2Tzdid2VRMDFMRkFIR0RvK21RYVMrb0JJeStz?=
 =?utf-8?B?NHRHcjJzcUxJcld4bFluUi9NWGd3R2xzYjFydjYyTVFueVUwMkNUTTdab1F5?=
 =?utf-8?B?cWVXR0RyT2o4RDZpMGtNZEZiVHlWWDB3UGJvS2FQNDVtNUZYVWxBS1JLd1dU?=
 =?utf-8?B?eTZJTHBUMDQxV0IxRGcrbkhSc0NwVXA3Z3dtWXhXYlVtRkU5eXhKYUd6c1J2?=
 =?utf-8?B?bldBRDZMNTJXT1JmYWRrS05IbVVaNG5INGszdlg1MGVONVZPRnpQQkZCYVkv?=
 =?utf-8?B?VjJDQ1A3Q1o4ODQvOE1uY1hHZGhnOHRIQlJ5SXN2SEhZS2NHVGtFYXhjWEI5?=
 =?utf-8?B?VGFBbnZDT2prODFXQXR3TEhndHJydnNocVdoN3dBZXRnMFJNdkVpSllaNHdi?=
 =?utf-8?B?MEVRck5wS2Urem1QdDZwNEpCak5qbXFFV1dMeG9RT1Rhdm5yWmR4b0MzZDhL?=
 =?utf-8?B?OGQwejdYM3B3T0pjVWtvUmdZYjJLNUhpNUFvYkNwbXJiSyszR2s3c1BmRFNP?=
 =?utf-8?B?bUxkUmdNMytiYjk2Y0FPN05YSzRnUTZXMVgwWUlIU0xjNWtRWVRrSnVUdnk2?=
 =?utf-8?B?VTlDejdNVE1pOHZWMFF4Ky95NU9JaUhrWEJORmw2aHI0YkhtdGNwT3FyOGRJ?=
 =?utf-8?B?dkxoQlNBSHQ1RWs4QmNESkkxQnQvN3NTaW5TUkJCY1dwWDZLUjNadFZySTYy?=
 =?utf-8?B?bmxoOWpFbUd1ZjNKL3AzWm9QZnBqZTk4SWFheDVmakxpbkpNVnNqK0FQR2lF?=
 =?utf-8?B?cXFJMm5SQVRuc2ZxdFZXNHAwbElpUE5aV1NZVHcvRkNwTlBOS0pjZFpvUS9i?=
 =?utf-8?B?bThPR2tDL0hOcU4xcjdFV1dMNFFBYi9QREVPcTd4WTY4OEk3QSswN1JqTGdu?=
 =?utf-8?B?eHhkNis5anZnV05YODRJdG10WDJ4V3F3cWovdFAwc29BbSsycjFYMm5FRWxx?=
 =?utf-8?B?ODhyQ1VTbm5lVUppN3ZwNnhxYlEvekpWVGxZbGtlazFNNitaUlM3QXRBc1gv?=
 =?utf-8?B?L3BiLzM1TDhYeEJzU1J0R01Da1lza05EbTlxeUxrY2xPREJNS3M3NHVIV3VY?=
 =?utf-8?B?SXlka3pjeC9KMWlOdk1saHo2bEQrSkMvcDZ6WEJxL2Y3Qm45THF2dlUrVkI0?=
 =?utf-8?B?dFJZRUszc3FpWDdWRlJ6YjdFTmt3azVZUUJzUXhtZXVNMUllZlI3RWVxOU5H?=
 =?utf-8?B?Znp4ZWVHc1IwT2ZiTHFOVG5XaE1aVGMyL0NZUlhPKzFQWG5NTHM5WlBNUWxL?=
 =?utf-8?B?RkduaTFWQzJwVU5mUUJhSEVSbnQvVXlQMGVBeXhFSmR3OFJLV1cyMUptclc2?=
 =?utf-8?B?Z1htL1FrOERJTHJza1k1Y05kSHpzcFNuZCtEdEFmWFAySjFEOHV6bkpHcThK?=
 =?utf-8?B?UHBnMk8zK1kra0IySGZYcVY0cHBzVG1GaGI2TnVnRUMvZXVLWmlTbldzbVB4?=
 =?utf-8?B?clRKekNjdFVYUk0rY2Q2dFNoL2dlb21UTTFKZEJ0d3JJTTdLbGt6YzNUYUJ0?=
 =?utf-8?B?bnUyUkY3QlNkVU9FaThKcm5VZFhWNmpJaVkwallzM212UVpOcFpiT3NyWFNj?=
 =?utf-8?B?a2wrbW0xNE0xMGxaMytnbTZyOWpvM1Vjdy9KWjRRZkdTWkhEU1lwUnEwdjVh?=
 =?utf-8?B?aXBzNHkxNFY0cFVCcVo5dzRrWjhZUDFZS0RLMy9TU3krVjk1NXh6NSsrcUtX?=
 =?utf-8?B?ZVRlZlVHQXo0Vm8xR1hwbklpMG1LaUJEUU80WHZFZ3VnVll3MEFBQ2UzQXdV?=
 =?utf-8?Q?i9I1zkBBm7mZC54Y+cZBMv77I?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: d4b21e71-e507-4ba5-ac0e-08dd476cb1d0
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2025 11:43:52.3123 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 6SttyV54MSJaoTqyMZ9wX4oJFMKAVc+whD+r/ThlbyfLwkc0Ozy7HAHUMQOm8HS5
X-MS-Exchange-Transport-CrossTenantHeadersStamped: OS9P286MB4520
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Feb 7, 2025 19:16:03 Ship Mints <shipmints@HIDDEN>:

> On Fri, Feb 7, 2025 at 2:14=E2=80=AFAM Andrew Cohen <acohen@HIDDEN> wrote=
:
>>
>> I spent some time looking over the documentation and the general
>> recommendations for dealing with sleep notifications. The=20
>> recommendation
>> (from systemd/logind) is that any application that needs to do=20
>> something
>> prior to sleep should monitor for sleep notifications and install the
>> block preventing sleep at the time that monitoring starts. When a
>> notification of sleep is received the application should complete its
>> work and then remove the block. After waking up, the block should be
>> restored.
>
> The semantics on macOS are still a bit murky to me and the API is=20
> woefully under documented. The steps on macOS, I think, will be what we=20
> discussed earlier where the block is put in place during sleep-request=20
> handling. I will see if it is possible to follow the same method as=20
> gnome but it may have to be through experimentation (that'll be super=20
> fun).
>
> The other thing I was able to find in documentation from last decade is=20
> that there are two kinds of sleep, kind of as you'd expect:
>
> - Forced sleep where the user explicitly does something like closing a=20
> laptop lid or pressing a sleep button. This kind of sleep can be=20
> briefly delayed but not blocked by an application.
>
> - Inactive sleep where the system sleeps on user idleness. This kind of=20
> sleep can be both delayed and blocked.
>
> Let's keep the potential semantics and processing differences in mind=20
> when designing how to make this work across platforms. It may be=20
> possible to have one system implementation emulate another but that=20
> could be cumbersome vs. a more accommodative structure.


Sure. Having thought a bit more I am convinced that starting the block=20
before the sleep notification is the right thing, and am hopeful that=20
macos can accommodate it. I think that with logind putting the block on=20
AFTER the notification is actually not allowed (at least it seems that=20
way in my testing.

But I suspect we can accommodate both approaches if necessary.

Can I get any feedback about the file descriptor closure issue? From what=20
I can tell without exposing it in lisp the way I did I won't be able to=20
use blocking anyway.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 7 Feb 2025 11:15:47 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 07 06:15:47 2025
Received: from localhost ([127.0.0.1]:33085 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tgMKo-00089i-OC
	for submit <at> debbugs.gnu.org; Fri, 07 Feb 2025 06:15:47 -0500
Received: from mail-vk1-xa2d.google.com ([2607:f8b0:4864:20::a2d]:54590)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tgMKm-00089S-0G
 for 63620 <at> debbugs.gnu.org; Fri, 07 Feb 2025 06:15:44 -0500
Received: by mail-vk1-xa2d.google.com with SMTP id
 71dfb90a1353d-5188c6f260cso524233e0c.1
 for <63620 <at> debbugs.gnu.org>; Fri, 07 Feb 2025 03:15:43 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738926938; x=1739531738; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=XMd+Zk7fFBFEQYIxneQgDjAf9u3dkLNWlEz3c+L46rU=;
 b=ZeUFGakg7+sI5bptLqovMhLRshCuL1BKPLQG03pODcaZX3aVqM0R6hHLjfjw70AESl
 CWNk3dQEtFmGqFVOZi9PbDx2qlOoc+xeSxWoRG6mfuyVQth4QXx7iu+Ycbks05BH/P+4
 /vLN2tOaCObOo7+0OPvOqQQM3gVxe7PUd/XzsXz5kukhN3xUxFpI2elID40pPQWx6zWF
 xGcF0o9cR7zLLYanTW9nlguaWcFZlFSXB1/zxoiOxQB9Zlv6q4CbKJTBA8oOX2790Nap
 gJ/B7QDp2WfZB6QyFSQkqF3XY9k+VYbIettEIIIDOzkYJmDUYJSuKaQ/BhgSFSQVHa3l
 UICg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738926938; x=1739531738;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=XMd+Zk7fFBFEQYIxneQgDjAf9u3dkLNWlEz3c+L46rU=;
 b=tIynIU+o9etfwzCbT9d0QClYWED3fSeNs5wqL5giwy8m0bYNfd3R7WSVGVLf5shupS
 g7xFcLXb3WRXBVPwf1piirurGhe78sNel4nKuDge3gy7O6UtTOJJzNjsCvN/MkRDP7nP
 pNw3TWvQecjCD9ulOzZAD3af5IBqqBwnavpOQdxVWE9pbzNfqb1j6mHGlpbismBO9MS7
 IbozJvnmqOmusSw4/UmfNyoJD+8ykh4bnymSKvqIh8z3yjda3pfrSfbypBd2EvZjS1qU
 byZrCJi4CqAg10/8XojcX40itSJN2dP/XLenXGDFXhFX5k5fq8cg+CI0XaVk64Wdhb7A
 bZ8w==
X-Gm-Message-State: AOJu0YyyGNEftNj6duZFVLXOsncoMWW8bd7hhF+fnt8s4/75opb4Ru/k
 s8RGxZYyFohVE1uTA+UWX7V3ipodzbyokO6fkiuZC2NmWbW2u8RRsHc5yDhAJbtpU81UTVIXFC+
 v1PFGsMNIIqf45wgTCUSXNIP7HJ4=
X-Gm-Gg: ASbGncuNgJ0lnOuxuNzTc7rUQ30FUQnjUEunlJijIeV8O8fMTEJRntBJ4+ZZ9xdh78n
 tUBOeiI+BcIoCj1AwYDaBMJVMrbB+UDKrjj28EESUcp7IDfhqrNZ3EK2v359rR8Gr/A0QiJ8g
X-Google-Smtp-Source: AGHT+IEjIoHkYww96DxpMCrtBUHkqI1LdBHEFwsfHIY4dsbXye6zMOmFgE5MX3zgtyxnh/Hg/M3oMm/U+safhjvMhFU=
X-Received: by 2002:a05:6122:8293:b0:50f:f21c:4fd0 with SMTP id
 71dfb90a1353d-51f2e22a03fmr1444639e0c.8.1738926938044; Fri, 07 Feb 2025
 03:15:38 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
 <87o6zfplyk.fsf@HIDDEN> <87r04agrb6.fsf@HIDDEN>
In-Reply-To: <87r04agrb6.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Fri, 7 Feb 2025 06:13:34 -0500
X-Gm-Features: AWEUYZnN46_gahlIwKPvNf83vHLPN7OJsh10E78VAHAbdFq1ThyeSl8kDrNi198
Message-ID: <CAN+1HbpBaeuGOvz=iC5sKUngEuB-Ew_PMc=y+rr33Fv5PG1X+A@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Andrew Cohen <acohen@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000006ec2fe062d8b7a9b"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--0000000000006ec2fe062d8b7a9b
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, Feb 7, 2025 at 2:14=E2=80=AFAM Andrew Cohen <acohen@HIDDEN> wrote:

>
> I spent some time looking over the documentation and the general
> recommendations for dealing with sleep notifications. The recommendation
> (from systemd/logind) is that any application that needs to do something
> prior to sleep should monitor for sleep notifications and install the
> block preventing sleep at the time that monitoring starts. When a
> notification of sleep is received the application should complete its
> work and then remove the block. After waking up, the block should be
> restored.


The semantics on macOS are still a bit murky to me and the API is woefully
under documented. The steps on macOS, I think, will be what we discussed
earlier where the block is put in place during sleep-request handling. I
will see if it is possible to follow the same method as gnome but it may
have to be through experimentation (that'll be super fun).

The other thing I was able to find in documentation from last decade is
that there are two kinds of sleep, kind of as you'd expect:

- Forced sleep where the user explicitly does something like closing a
laptop lid or pressing a sleep button. This kind of sleep can be briefly
delayed but not blocked by an application.

- Inactive sleep where the system sleeps on user idleness. This kind of
sleep can be both delayed and blocked.

Let's keep the potential semantics and processing differences in mind when
designing how to make this work across platforms. It may be possible to
have one system implementation emulate another but that could be cumbersome
vs. a more accommodative structure.

--0000000000006ec2fe062d8b7a9b
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div class=3D"gmail_default" style=3D"fon=
t-family:monospace"><span style=3D"font-family:Arial,Helvetica,sans-serif">=
On Fri, Feb 7, 2025 at 2:14=E2=80=AFAM Andrew Cohen &lt;<a href=3D"mailto:a=
cohen@HIDDEN">acohen@HIDDEN</a>&gt; wrote:</span></div></div><div class=3D"=
gmail_quote gmail_quote_container"><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding=
-left:1ex"><br>I spent some time looking over the documentation and the gen=
eral<br>
recommendations for dealing with sleep notifications. The recommendation<br=
>
(from systemd/logind) is that any application that needs to do something<br=
>
prior to sleep should monitor for sleep notifications and install the<br>
block preventing sleep at the time that monitoring starts. When a<br>
notification of sleep is received the application should complete its<br>
work and then remove the block. After waking up, the block should be<br>
restored.</blockquote><div><br></div><div><div class=3D"gmail_default" styl=
e=3D"font-family:monospace">The semantics on macOS are still a bit murky to=
 me and the API is woefully under documented. The steps on macOS, I think, =
will be what we discussed earlier where the block is put in place during sl=
eep-request handling. I will see if it is possible to follow the same metho=
d as gnome but it may have to be through experimentation (that&#39;ll be su=
per fun).</div><div class=3D"gmail_default" style=3D"font-family:monospace"=
><br></div><div class=3D"gmail_default" style=3D"font-family:monospace">The=
 other thing I was able to find in documentation from last decade is that t=
here are two kinds of sleep, kind of as you&#39;d expect:</div><div class=
=3D"gmail_default" style=3D"font-family:monospace"><br></div><div class=3D"=
gmail_default" style=3D"font-family:monospace">- Forced sleep where the use=
r explicitly does something like closing a laptop lid or pressing a sleep b=
utton. This kind of sleep can be briefly delayed but not blocked by an appl=
ication.</div><div class=3D"gmail_default" style=3D"font-family:monospace">=
<br></div><div class=3D"gmail_default" style=3D"font-family:monospace">- In=
active sleep where the system sleeps on user idleness. This kind of sleep c=
an be both delayed and blocked.</div></div><div class=3D"gmail_default" sty=
le=3D"font-family:monospace"><br></div><div class=3D"gmail_default" style=
=3D"font-family:monospace">Let&#39;s keep the potential semantics and proce=
ssing differences in mind when designing how to make this work across platf=
orms. It may be possible to have one system implementation emulate another =
but that could be cumbersome vs. a more accommodative structure.</div></div=
></div>

--0000000000006ec2fe062d8b7a9b--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 7 Feb 2025 11:09:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 07 06:09:23 2025
Received: from localhost ([127.0.0.1]:33069 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tgMEd-0007mz-1D
	for submit <at> debbugs.gnu.org; Fri, 07 Feb 2025 06:09:23 -0500
Received: from mout.gmx.net ([212.227.15.15]:39219)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tgMEa-0007mh-8F
 for 63620 <at> debbugs.gnu.org; Fri, 07 Feb 2025 06:09:20 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738926544; x=1739531344; i=michael.albinus@HIDDEN;
 bh=VU793qUZ0RahCqbqTHD8FBucW7e5eCLwWAmWBAxRUBw=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=rjPmSBFy40TQeHj/zWp2FMbjSvhRBs19wxLQ4BfcJXzxF6jqwH3EHn/2+Rcm8uSQ
 ikTZ8zd4WS2mBPSAqPKCUTkIBxJYSLWozTPQJWR6fhyvTUh/4fOroATU2RJ8QOl/+
 SsN0kaPscrLzcpVJ4V5prtyAcX3Dql2l8+d7JnnP1eLSpoAJpQg9kOZFKRxy9ckcX
 ihjStu1ce6LuUvy37j51DkHipny8604l+jou/kOhuxcIih2Ro24FUOI45jlhCF/lT
 fOvthVxMQGjxW8EiekpOVhwcgOdwCCs9wCf7/yFsQJUK33SvS1EhsMQaIF18oYas0
 wF79FOGvNOcMjY5raw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1Mv31W-1tOYGN3j4i-00yALR; Fri, 07
 Feb 2025 12:09:04 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87mseynolz.fsf@HIDDEN> (Michael Albinus's message of "Fri, 07
 Feb 2025 09:30:32 +0100")
References: <87fs7qmw00.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
 <87o6zfplyk.fsf@HIDDEN> <87r04agrb6.fsf@HIDDEN>
 <87wme2npuv.fsf@HIDDEN> <87mseygo8x.fsf@HIDDEN>
 <87mseynolz.fsf@HIDDEN>
Date: Fri, 07 Feb 2025 12:09:01 +0100
Message-ID: <87a5aynh9u.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:Wf2LZqIB6DGE2U1bONHQPzwAnfbW26d5wxiQwMr7wgpsCvdzE8E
 bRur24AA51xJzNkvAfKjoTqVlr135C7TliFG+Yy2In7bJw40Z5jugN8YgKntoTTCdJN5c0K
 hlAnB0rrFN3kT04odhkDCp0DpkHxTqDnaZmlS7kGTZo7ipbaASUF4byyj0gUpwO5+EpH0EQ
 qwanmhOjJcudmNDr1jXsQ==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:kwZbcB818c4=;QJW7svABg0Bn34NvxfYi2UNu2zx
 vPd/fa99wGh00wIccYD5zExhE+XZHJOCK1hydGecxikW9GvUsApf2hnc/q8UYf3eCTyru+nP/
 MGS8eV6zbh3ioSsc/0IK9Q6vftdndyQDGdqW3HM6Id7lk7CQDWlIg80I5P5YbVz0JnfvpGQ3X
 dVkuzbWZ87seLlKG3pScxJ+TVSJD9S/heo6uRdCqvpekJmLzH4wUb15UjRlrHiqQEgKTs2Q4Q
 bJ1NXFOcsbFet1n7ulNpjnsLTrHecy4zM3sivd3S7GCt7XcEu8lCtjS5xMBJrX6Ck8pdrDGUE
 qvZ7en3BQecPDLwDXxK0xAro7ZxPV6q4IMv07Dg3t9v6VzmB1/IuWvi4e26sgsaAzO+GHIqOl
 /yVQcThDSJHvDlxgkuMmen8fxrzSXleL7+1JCvR/daP2mHXvY6OWntivAdAQtT2GhQrNCJdRD
 NviIlel5Kc4IzUGc8eOg/ZwpfKHPhSdRo9wcJOdmygwt2QZfoLOTsF/czeM1VIfTpdAn5N+Tk
 3ZdxTLuyppRyISiwG8YZyYcLQp/33fzm2e/7Kt3/1ObpqAL3/APCfFkpgnDEVqNcGNbYsGhpy
 VIMdMbsFdPfkhewCA5I9vnZrTYPR5bXqtg8XnqtvQHo7PoduVNY4XmQaAIfML25ca77SqRvdU
 Mzfa/Tgex1IjWKXAcyy94aSvLVx3plQJAQa8lWtaA/2bW9u/KL+nZyeHG2Ww1I+yEb85Y30ML
 rpPNpm+NkVWF03F0tCpLLY9HE6tLItBN+apSPx0lvDnST2vsjBOrb1dRyRrEB5jx3KvfstBW1
 sdTjInS1Gqw2KVtQtDzUdVDS5qkKVv1qYzaP6vmuLmYrq7BEVdFTDdAi+ceTLwCxTWPtqEtmf
 Lw+NiqicC16omhhI2QB9MzaEaNgejgJX3XboD4IsVw5ojuyyA5hoX1Hr2gN/OkBc9BEDoDAUW
 tcOMRQCHx34GdK6slW0Vp9OQCzJxbpTNhGKqFAHr5o1rIbF7+DVcXAbv6cXCnqK8fQeruvmrx
 +N4dqtWW+JhkOF4DPE+P/HNjBSZJgNVeHAF1GWihCKPnrYqSUPUf2enyqugiAvxOd6biwqhHh
 nYfZ1QrdRGSSgfoGLyfmn7EuBLeV+J/OLZUl7/NiFMb7DQm9MsN6cC926etzPAnPO8y0ZJ1nU
 td9QDcryLE+qxM0vgkTS9cHBBH9spOB+6ZTPhmkeE5h1MUkFpbHEqgeg32OVnC9nNpfVWPsVB
 ivRDVeE/xZS1uzmD85Igp5F4t8r48P22oXcbe+LtkE8fY/p7sKV4Q9DnDAVeWtcfXzvWhUX7G
 tWtepL/LLBcCIzRKB+LM7tPqIwom++1KGHK7/NeyEhE3D5GoNYg6TXJ4jdCUu2Cs3jB9DH1tM
 ZltItKfHE1DQJP7fGhoWNcjMPoHq62W2HUFL6CahJUPA9yAPTMD7y3Q33c
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>, Ship Mints <shipmints@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Michael Albinus <michael.albinus@HIDDEN> writes:

Hi Andrew,

> I'm just polishing my patch, will push it later today.

Done. Your proposal to expose emacs_close to Lisp must be decided by the
maintainers.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 7 Feb 2025 08:30:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 07 03:30:43 2025
Received: from localhost ([127.0.0.1]:60955 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tgJl5-0005St-2y
	for submit <at> debbugs.gnu.org; Fri, 07 Feb 2025 03:30:43 -0500
Received: from mout.gmx.net ([212.227.15.18]:34939)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tgJl1-0005SZ-Ur
 for 63620 <at> debbugs.gnu.org; Fri, 07 Feb 2025 03:30:41 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738917033; x=1739521833; i=michael.albinus@HIDDEN;
 bh=jXAgcduqT2UretmDTIH52uHWeuFNiqBeYVGiQdpGs/A=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=tG6u59lYD1Z1WEiu1P6d11TF+Kax67FvE8m5SUv+acPbV85vWnPa/5zDJXP20hqT
 3IlHHEAxyMwm7Bva2npMqlNhgqI98TMNclDxV2WZrXd6fkkVqrp+u5pruCtXOdiWW
 NaNYtOlB0VHUBLnuFOzrqkoDogwRA1JMDqjzRSZZfGiUEBxKcYxU8kL+mgSLjbYYr
 +KWr5qw+VE66+sVdQi6ozl4xCDHrODgYgLQ+hI0vCmCV22Lt6b5pIqLa9vIQ2YqH7
 4HepLZXILNOMAdwfsp74RlOk3tMLo7FIenAb5dMeB3B32cHKNoB5mkKE9QjAFFyg8
 lHkA6Ml7vItzA7M65A==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MKbkM-1tyx6L3DXo-00NiX4; Fri, 07
 Feb 2025 09:30:33 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87mseygo8x.fsf@HIDDEN> (Andrew Cohen's message of "Fri, 07 Feb
 2025 16:20:14 +0800")
References: <87fs7qmw00.fsf@HIDDEN> <87y1ky83du.fsf@HIDDEN>
 <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN>
 <86r04dahpc.fsf@HIDDEN> <878qqkzh9d.fsf@HIDDEN>
 <874j18zfm6.fsf@HIDDEN> <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
 <87o6zfplyk.fsf@HIDDEN> <87r04agrb6.fsf@HIDDEN>
 <87wme2npuv.fsf@HIDDEN> <87mseygo8x.fsf@HIDDEN>
Date: Fri, 07 Feb 2025 09:30:32 +0100
Message-ID: <87mseynolz.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:tM299YcXyoJ7cdlLofjsmNWUUZT+2t6PriJll4vaOgM44cKDImT
 IyOi3oc1q1v8K69Hch0cXW174r7oJStDL8UiwWRrCnwxSzu87szlTlXvUM8DVH2h7LSTJdd
 cZQG9nxk7MU7JRLONgRoV5rLS/D9oS/9rPBZg3RMhIx1uNpxJq2npNOGxkBNPdolACUBXmM
 9LEyD5UeJXjuhjQ05VQlg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:42n7QFaxKEM=;q7O5FyE5HhSrQv23dY7KjaTIyEU
 siudF+FfJznCKFYcePQcfZFg6Bw3OZE9EOj4aJyWKRY5jXDPSCWWJYiBuJs1ZGiiCtFpGyW+0
 a8YkcztNqtqxdAWMzllZ2QIHjeE+rs3zst+AxCmQdB93D8p0LtylwV43tQl4EQKQ7tIK20eLb
 c1iV/nV7S73RiSYvAhu5n5dO4df8queViPgWquuv/D5sLM6I1gKbofYhIh/os3UeqKV38H76I
 4d0559O3MhgJO0JLUKz0RA+a//MgIsHyvKBVmLSSQvz6z613qMn/zkr+Kb5XWfg2FC6FDUPu/
 wlAcGwp6+PYS1t4WvYQxQJPNWcgOPrUpZCuIXpRCgb0ix0bmg5/BWcdx1tjDo63FuuYpCwa7S
 W/Fy+T+/7wIXW0aA1TeSCKzg3GPtiCQUgdxvU0vxA1CdOb96jhW0iRyQAKSP4MSC1aBZK074r
 +4nMig8TVseOfrFdjvjgPAaS3WTvhIplOpaaz5/6Y2hp8DDSctjLPROv/Uqyi1JmVC4trUJMW
 fUX6tkRICpwXGbKFBaX3qxxNp3L3OB3bT/LJA8yN10T4uO7BknDPL0rf31QVMYSqZ/GK+RmGn
 cB2GwYOUFiGspYZIWLtgeyFHoq2L3B4DZAOrWdKvZCRrEL2QmtIGyUIkOkGt9BGJEuv4l4u8p
 7+P5cprpo0awtUZrdcq/wHVc8eLCIwmPmfuJWLohkYCXimc07jMbdoaTs27boByd4Tc/XTseR
 ZxtCJdE/WuVs+BmdAAe5IpaqULKAJwaoBQ0MLF2qMxmM1Qhl49f1+AEA4hSe+Td4FgcC5zkle
 i2IEM4HR7E/O8E5IvTBiG6KZjBc8qVJo6d5c9Ocow9F4U5X/eM8Iwj0uvannTYm57nZ7/Qt2T
 2064Fd6TYcyiKGUhmjrl+JSMkebay4TA9O8fCAPnwfSUTF72eoM1wlnGdnriE8gyh5lpFR4wM
 x6gID+ImnpAVs7gYuhRpTKsphnWb+MXJ8EbmwloMKXHZCyvUZPbctdEhWGuVPc4PCHJ43ys0A
 3foCAErc9JSz7vaNREjKRJzY6kjUABGVf2OPJ1ankjVMxj6qTn+bTaOHN2/UFJixheCHw3S82
 nhujGptCR/tocfxUMoXjqJ97PUJDgb3AN5LdlT9ZNg2sBBmOZuhOVT2hyy1y2gXC07Z8CCC4b
 MHblM3TpsE5BslJR+4QLCaZ7HyPj0BgpR28EXTaums2cPNnHFZcbe5flGinEOfRRd26t9MpTI
 /77K4KHX+AmRJiGVA6nSgqMLTx88dqVbq3gqQxC5wOHETgqdumRySzZQXWKkPg8NMxHD+IG6W
 1cOJOMSOmztPYiA1kCvgwlnx0FZbN4ojbvVHlp+yn+MtmYkRqNCHA4xQCs7z6ccPSxuzIpVMs
 QT0y45EKkX3MWsCHmyLWnR/dNuYJ7lzGMU8v3PZB+mjrM3/OiO8h3jNV+F
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>, Ship Mints <shipmints@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Andrew Cohen <acohen@HIDDEN> writes:

Hi Andrew,

>     MA> Another idea: There are the properties Docked, LidClosed and
>     MA> OnExternalPower. Perhaps you could check them in your
>     MA> sleep-handler, and start different actions depending on their
>     MA> value.
>
> That is a good idea. We could generalize the mode to handle a variety of
> things other than sleep. Maybe we should use a new event category
> (<system-event> or something) rather than sleep-event. This general
> event can contain actions for sleep, docked, lidclosed, etc. And we
> provide a mode for system-event, with sleep just one of the actions. For
> D-Bus, this becomes pretty trivial---we just inject all the events we
> are interested into system-event and have an appropriate handler.

Yes, that's more or less the direction I was thinking of. I'm just
polishing my patch, will push it later today. I still keep the event
name sleep-event; we can change it later to system-event. But it should
be sufficient for now, for your tests and proposed patches for review.

What I'll appreciate is, if you could write down what system-event would
be good for, and which attributes a (system-event ...) event shall
carry. However, this is rather a discussion for the emecs-devel@HIDDEN
ML, in order to get more attention from the Emacs developers.

> I must say, I hadn't fully appreciated all that can be done with
> D-Bus.

=F0=9F=98=8A

> Best,
> Andy

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 7 Feb 2025 08:20:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 07 03:20:31 2025
Received: from localhost ([127.0.0.1]:60925 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tgJbC-0004x1-UB
	for submit <at> debbugs.gnu.org; Fri, 07 Feb 2025 03:20:31 -0500
Received: from mail-japanwestazon11020120.outbound.protection.outlook.com
 ([52.101.228.120]:53421 helo=OS0P286CU011.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tgJbA-0004wf-4G
 for 63620 <at> debbugs.gnu.org; Fri, 07 Feb 2025 03:20:28 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=fgNPQj+vfROlsuv/BF5QOmhwQf3KqNbp3IElKxj2JSuLwPHL677n5B+J2nCkbEsG+xnwPmOb9A8GYf7mi2qdQBrOiu7cTWVbygabjUwq6hCJT05uTCftum/kmsZkdfj93Hfb/yv/1za/RL7Si0I7ITlUZBgp8FR/2Zlh40plLTAIy0yMQ7u9EEWWrwz0FAziToFG1MkwbpG5wllZoc7SS3Dl7aAk/SLmz9IvkIXL3XPhxSCRsfH9g36Ol81cVDYghH1jl1usVzdCXaf+urNL6x66xhjNN/TjXK5kSdsSD2Q9eGDawjHC0EbnLg/X89n86cWZ083FjEmWyM6+5bBz8Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=NKPvhiAM8UM50FoeiA/Sf8qN8lYsFx7tE8mpRV+gCFo=;
 b=URjvgHSStiFhGHjwSC+PhCMVaDilN0yAig2yI8kyf54ryWeSHjJnT/t6Cd55KuwLQiTLlm2q89/nathHmFM5jvMX13ZYxL2GGMHjxxOuypUFlu8EGiUwYJW4Fet58FXwW//6wCHHSNrdk1P7A+NQXDwM2rTILUxaRvODR5LYXLsuJkhMbSM3TNsBkwt0xyNVZLkfczHprVujyM1/nJO9dd9kKLgl0KxyJ58sc3dHhcsPpV7euhtQ3nThFPBhIv03Edrfr+G1prlZ4SemVQGxZZQR61Js2RE0fQPng+TzHu+e5K9Ugff/+VeJ9/1HYlzPe82U+KCEHz78ht4UQKZ5FQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=NKPvhiAM8UM50FoeiA/Sf8qN8lYsFx7tE8mpRV+gCFo=;
 b=xcgnbHp4oPFQIFPbNDr/nMR8wWQoq4G6tltCFFboAixkGSou2vUlH1viZd0WSVH/ze4LUlsCji2xivyKcV3NjvCDW27pGVja4pulOxArUA2Wna0ONdgqmqKtbVl13D3mdAHSTYJmzNUGAigW3JU2Us7Z3kj+VuB5bHC258ds32MkoT5/k4Q8ndnvM/VbDQJPimh/TZxVxn/TGBztsRZraSdjgmQvxNXIPS9Db9Lc1ebHNrCOfGj0JddRa1dVdq0lCW9pTx/SquEX+PjB2/UKyicTr4LnR4VwQOOP5/cYuURdDW/a+ajPjcK/dU43AGIGrZ7cIHhw5I6nV0xH5quHiQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by TY1P286MB3374.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:2ec::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.11; Fri, 7 Feb
 2025 08:20:16 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Fri, 7 Feb 2025
 08:20:16 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87wme2npuv.fsf@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
 <87o6zfplyk.fsf@HIDDEN> <87r04agrb6.fsf@HIDDEN>
 <87wme2npuv.fsf@HIDDEN>
Date: Fri, 07 Feb 2025 16:20:14 +0800
Message-ID: <87mseygo8x.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: TPYP295CA0028.TWNP295.PROD.OUTLOOK.COM
 (2603:1096:7d0:a::17) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|TY1P286MB3374:EE_
X-MS-Office365-Filtering-Correlation-Id: 7df641e3-6dd2-43e1-6f1e-08dd475040ad
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?HkvM8rEvWN2QKkQrmEYAWAKUgIbKv7dtj3qSzOoA29RJ59MlXHJx6H1m0Wld?=
 =?us-ascii?Q?S5/SQGBSG3oQQecF2RHBAnBQczZew6ReSiE22CjrWNv8V0m5Zyiifu3LvQzi?=
 =?us-ascii?Q?lAHEUlsbSRJQ1Ity0Omp4QTIFhHtO4kd66Z+R0GHXiSK6HIE36EjAulQd3xm?=
 =?us-ascii?Q?XDQlnjcmGCLoV9MeYQpvKOipKVs2AdSnWA0rk/3D1215I39wvZE9YeoXZ+S0?=
 =?us-ascii?Q?TLSNSl1uAfYf1TUfMSZCuQMU9a4PEOF/rq8Rm3AfsTMtzw+YRR84oR52exgX?=
 =?us-ascii?Q?ZrND241xWZss44YQE2hpGbZJN6Ncq3xxNaPoDbBBOUzBKjvwjSpnv7bDCAus?=
 =?us-ascii?Q?+bVdOZPcbxsZv3Y8/Ef7YTo4Fq1YtQdYNoya2Ri1a+x/E2DYsrFwUB2bqXAS?=
 =?us-ascii?Q?Mo4queBhL/TiPiZoaT61nqEEn+JKW4HICzzxKm4S5VdIazCl5V1YLdsnNpYA?=
 =?us-ascii?Q?8hBGJq17K2qaXel1R1R9J125wmBRt3yip+cSrZ2NelS4ZQGaZJ6Fa/C4kP2H?=
 =?us-ascii?Q?KXn+EcyGUGpySzpmJI3QblYypLzy15qLP8U3tGEv57atrxwU6D2Jqlc0YlsW?=
 =?us-ascii?Q?3z/K+FJxEoe3fxf708i/VvnJnauUVZyxL68CXBC9CBu0EKALRhMoGoaR/ht2?=
 =?us-ascii?Q?fS2ola6auRKIYgy1T06jixlCletCTdkhLZIPafJQlZfYazBLit7ffj4t9Ei4?=
 =?us-ascii?Q?+x7IM+oqmd2kYz/NUt6kK4e7hzRzd7iFcEFr9Q+HnD6fnR2jw8+hcx/wmP5s?=
 =?us-ascii?Q?6vwjlwxGrhemUibfRR+ZfEl8Cc/5fNwqL3nvYBXT4UYEkCzf3SLX4kV6p4xj?=
 =?us-ascii?Q?f94C9nXAW3HaY6/fo8NEESbqhW6nCSxj257MVxDxxlcetpT+hXh7kwKsnsGx?=
 =?us-ascii?Q?bOoMENszR2V/Zp4JMcwENK904q1zIKq9L8PH41lNh4Y8t2Y/VxfbvPPctyKM?=
 =?us-ascii?Q?+21cidhGmZ++dT+aQ3OikWESlSNbU23mJJijYZXrZwfSyVYcnD27IAx+UUXP?=
 =?us-ascii?Q?gOQ+PU7DDIXtF8uqOhBXYMhL/u8m+F1w+xXmlYWCpEnyJR4pDWGNSZzcD1VK?=
 =?us-ascii?Q?sTuEjEqn0ABKvHDmxBWAnGcFsMYJBO7lJ9PhygDi252F0IOvVfNhIrwMmlup?=
 =?us-ascii?Q?XpUIhGJV5tsTfkksmfT/o8lrlr9GiE4WT9FXJIVDtSzNg4pc1hsJxTK2watK?=
 =?us-ascii?Q?0XrlQf+yw/stJcIjnvabVZ0oRpA3q0fklXDmU47H8xWfUL1lA3meVQbcalXY?=
 =?us-ascii?Q?7jua8sLX+PgMe4ucduPe6JJAKSnQWTBeL5T6m+peFUizrT91DD9qnIxgLlm8?=
 =?us-ascii?Q?Fib0YEk41IFSUqhs2KfjCCn40DsboKw/kvKa7RxXhX7MoOpGsy9qcLdjjCuI?=
 =?us-ascii?Q?Tu/l7d/6UDllyHb9iObnlWDOuHom?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(376014)(366016)(1800799024); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Uk5s+sfmkRykHxyLbbgo99no59KecDfNj03omeGTR42ozrKwjgaFZ6nBBF0i?=
 =?us-ascii?Q?TWdqjkGTxajTb84iKDA1CrBpZw1v16lKrTLCkxft1jeHy4kB6oLIIO7tlZJM?=
 =?us-ascii?Q?E6S2vzk++Es/c0A0/WI9sdDmf68R4/sHoZBIzOOA3afin0EPgjNbs8MeEUbh?=
 =?us-ascii?Q?Hxliv9wWorvbumkpZqwnkIFRRbWr5mnrYOJXASQmjKOGtQF2ff3ZK6zanKrd?=
 =?us-ascii?Q?w6YvGm26vNdkAXSo7z5K+2TdXFGBn0vXFtUo9LAby8EzhrILXSDH7kHo5RIY?=
 =?us-ascii?Q?9HlXQyO/DHgfO0do2qKbjQUmYXM2auORRdDRXEWLMAc9nWlslWcvD9AAfmO4?=
 =?us-ascii?Q?IWkvScGcn+5XlwJWrPotFjeb6u9AIoJdwoS94HSIDNZIe8LCz0V/BTkuL3WD?=
 =?us-ascii?Q?3Bf/lcW7LWxLQVL09JhsSS11lczV8LbnSliKNe92foK7WOroPE4Cg7ZQD0Bi?=
 =?us-ascii?Q?o5PwVOVGf86k2M48A4+hQdZFn4Ngzc/XUrH2UgpQrACbu0tHHy7O58xj8ZGB?=
 =?us-ascii?Q?OsNmzpE1kNwEndUQN78RwzQHtQGTE/GFe6Ag+qdqC40vB8Bd5x83jU37IpcQ?=
 =?us-ascii?Q?cHMWLYTbnh21yamdW4qTSyczoCpet4VwhDYAxwXP11kVn3rk+kvqqBI6OfQX?=
 =?us-ascii?Q?JFcM+JypTSVxZc93eNyck5bJfBIp7jbEP5bJPGdQiJjTkqJRlHMR4LkF3K0d?=
 =?us-ascii?Q?SQHdmTceIII/62SBfBduXSryeJG01nHapEuE3MezBdBaNCDTwVmMa0qjfWQt?=
 =?us-ascii?Q?cMKFlZcoNLEoavmLynwXTaEnv9mQgX+24Dz/TTDlWn7ecO9CdEZT9We3DYws?=
 =?us-ascii?Q?RoLOgod6JZ8B+RXEEg1Sd7SN8IdIu72SjaeG3r8foP1Nld9X3EfuioN3yY07?=
 =?us-ascii?Q?yCKCg1RxC3JdS+h4IsarXUifkrfnxlEBgW68yTTbsJ6mrSc8Js2tiWXs3qAI?=
 =?us-ascii?Q?br0B1jfLrx1uXlCDnkDTXrnB+4Md1/e5Cq794qMscASsgmvIknmD5E9kCDcA?=
 =?us-ascii?Q?/QyPH1FtlZ8eXXEIj7oq3/kYz7TrU3opoRBARsliqr8YDzovBqr8Ozt2+tHK?=
 =?us-ascii?Q?3ac55nyJU3nwexxhgnJRyC4RAuRHf5EvDM5ZcvrH9mMLtFUFmRjnMRV3k0UG?=
 =?us-ascii?Q?DOZLwWfMDF8QcjZP5W7DbuCOpO4SGbdP23wYoghdGvxjnF8rqi78ne387Gxr?=
 =?us-ascii?Q?MjlKVKp0eE4UmMWu4m8Ci/fvTSCcYbKEtbRWe4zLkrRtnzUY06JTvTWcByEA?=
 =?us-ascii?Q?ts1zUP7OGAklc7QMx6cF7ckx/rJVsIPSKzVK6AiY8t36t4DxV5hoBeyFv4Jj?=
 =?us-ascii?Q?CkBhf8s3YqRYIsCn1w6oIdvlvnsQR5P6pAXMCqhEn9FvHLnAv0vjLg0MzAFp?=
 =?us-ascii?Q?eDJPyWFCXXrEPp1ANihtbqSMMuZMlYD20TwzTEVMVe/s0LYunfvYRlS+ioqV?=
 =?us-ascii?Q?Q8uCdvSckwTi3M7C4beoSVtsCppDHt3VeeyxYQJgjtioh2JxsSiYPETChDBC?=
 =?us-ascii?Q?e+GmPSuytVkiG4ZGgfJMRcG9EjxE+mJQ9YebKG6wGyjjCSpd5a4C5VyJNeSZ?=
 =?us-ascii?Q?AlcsBRzyCnO/s85gJSsQvB6KgVx+imXFDxPbfyJF?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: 7df641e3-6dd2-43e1-6f1e-08dd475040ad
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2025 08:20:16.5794 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vkySvO6dOp6Yz2QwbZacVq0p5ZA570cXaZViiu7Me7SQos0U7n+uNzcEf5lRIqpF
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TY1P286MB3374
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>, Ship Mints <shipmints@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "MA" == Michael Albinus <michael.albinus@HIDDEN> writes:

    MA> Andrew Cohen <acohen@HIDDEN> writes: Hi Andrew,

    >> (systemd allows me to list all of the applications holding
    >> blocks. My gnome desktop typically shows 7 or 8 applications
    >> holding blocks for sleep, including the Network Manager, Power
    >> Manager, etc)

    MA> Side note: According to org.freedesktop.login1.Manager, you
    MA> could get this information also on D-Bus level, calling method
    MA> ListInhibitors.

Yes, thanks. I was just using this for testing to see if I was
understanding the logic.

    MA> Another idea: There are the properties Docked, LidClosed and
    MA> OnExternalPower. Perhaps you could check them in your
    MA> sleep-handler, and start different actions depending on their
    MA> value.

That is a good idea. We could generalize the mode to handle a variety of
things other than sleep. Maybe we should use a new event category
(<system-event> or something) rather than sleep-event. This general
event can contain actions for sleep, docked, lidclosed, etc. And we
provide a mode for system-event, with sleep just one of the actions. For
D-Bus, this becomes pretty trivial---we just inject all the events we
are interested into system-event and have an appropriate handler.

I must say, I hadn't fully appreciated all that can be done with
D-Bus.

Best,
Andy

-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 7 Feb 2025 08:03:54 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 07 03:03:53 2025
Received: from localhost ([127.0.0.1]:60826 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tgJL7-00041X-K2
	for submit <at> debbugs.gnu.org; Fri, 07 Feb 2025 03:03:53 -0500
Received: from mout.gmx.net ([212.227.15.18]:56453)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tgJL5-00041F-AQ
 for 63620 <at> debbugs.gnu.org; Fri, 07 Feb 2025 03:03:51 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738915421; x=1739520221; i=michael.albinus@HIDDEN;
 bh=9v9KM5xZFS566j1zhTvq0pwTiAd3D+EM8dJEmJHKEEA=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=KCl8h6Qs+jzXA84UJenOBGXMIg5VggqNAR8/R9PHrimC/2VmOXaMNq1f9ehVWvBb
 vZsAgk/FYsGXnFwdRbCju4WyBqaYd/Q4DHi3eUyIcTLh4UdVdUZlGR5J6TvrnfCQO
 yjOQvEBGaaBGIZho7bF03zNKOyPdy7hI8scoIT1pEi5L96lLuKRgZM3NS2gCI2Glq
 mre+IGBzaXllErgfO8D5Zr8RqgqeBFyDNpFXP631l9BCWSjA240oA7TyYOMoHXl6+
 MF80cJz6yo2vEDbNOdNoUTx4bSj1gcWvfTAHT9teolbSxHfrqf/4UGoTRfgX1Y86g
 Z2k/ipqZ9YPEzxkhDA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1Mzhj9-1tSkgu11SD-00u3JQ; Fri, 07
 Feb 2025 09:03:41 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87r04agrb6.fsf@HIDDEN> (Andrew Cohen's message of "Fri, 07 Feb
 2025 15:14:05 +0800")
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
 <87o6zfplyk.fsf@HIDDEN> <87r04agrb6.fsf@HIDDEN>
Date: Fri, 07 Feb 2025 09:03:36 +0100
Message-ID: <87wme2npuv.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:KGG/7fz9+OGGZUlcmxS0s471z06uMw/rLRFwZJzOb7uEfgos9E/
 f+wUPKUjo70h0V1Pl3MREWG7WSX5w0F55/+6Xy820cv9MH9yzCtxlskSid8SgtoyqlCJMJB
 qcnJdkPZfnFvT3kZ+5izJhhsqKuj3wDvL8wx75hmq+KNgN+UOH6d6U2WabbI/0j8bHXAFes
 FPQCefPb7gINGXJzu7CJQ==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:bAVzZUiNPJY=;ZcpFSXI+wxHQMU9eVqntW8GAYi9
 L8XXi5QPVLYGxjhqZd0v+XpCfq2KnEj0y7Evtrcn0Z95vq032A/I5S864wvoGrjFX824gxBzi
 GDsKAQwEJD12cBAo6hKWzp06U3YTrN+oq+SAcggfvAue3ROGWVi1bbRlWFwp5cWaZYA1n2AB5
 +JDhYxKNNSqP5L5BoJuyrsnPrG7So4V1QQLYoqZY44M1yJPmVt2poHIycj6DwY5Bcuysp8eHx
 foP8HDE92LujEU5PNvK8TPK4SOjZySRozPp3Rqz/XuZK0PPnyNf7Q7mlJcPVuWQgwuTMVcnCI
 FFoOAJ6g4CJAU+KbMSaBuD9Zud4PnusicJMEwcp+z0lBEiU0psw2uaJlYo6KJqoxw7WC+LIkD
 gyWZZ3cSD3RMUmPosIoTXHX4c8igExd6J9YaySqCC6iTUGKvrUlDDboAsb8TN7kGEVXDegx0L
 AKBO1I8CwHVsq7G0HMKA6sx61USnAOnsfg9xcLlmnwB3bfJgBhOd7DWFEZZrDil39+xPl9TNs
 bq7LGb48PA0n0NHVRlm08hMpyx3enfA6Q661HwiHOA2GwrwJQnLS2EtnhbsoNJPKsY+1JsX+K
 qoUAPLy6gctBO7MylkIiCXSdM6LDcKnnJ7I/iFqwell5TKA2Rmy2q0JBdYqlqKs/8Hg+6E19u
 T0/0vnEtgnAD3b+xo+D8iKvYyySeVg9ShUirEqkpb7E/TbDwbugjik6dXxWyqvbhn4Vwblm9w
 Oj3Du4zuGcEt0vIrXNLbXIwAqaBjGqs0l4DD+5dFSD7Z2fOE7fiJdlZFyn3j/8K+uQ6ST9nR2
 QHIvLrdfU7u+uRbGyFXc7Sg8bFbYuKvwQop/6/KA5mKP92o34RSA75/qF2TSxC8IG7TbnCPoP
 8oLDgEWOzPUryY7D+EPmPhG2h8MyVyUFJqGETSmLcmkFDne3CSzcE2+fPZYN99Iv2iI1AcFeX
 f8nLi3iyXflE1bixcDYNd4kO1DHzWnR6AXMoft9RB518uhPIdQxpf3BRjjtQqHc0S0RL3pDe1
 nDsSqEzCFMrFSRGeqGCFasB6qSjOORcrB906pW/bWlcdDWX+1TdaFjgInhVxSfVoHuRhiF7Yb
 xZZjS9sXfyFOa5RY5WzGaynMka0+nSAgWIrDxeJap9gSWUD6LzqIU7yDZ/7wVU+K+PGUdsrNW
 /is/jlUgBRvM6CbgFjvbLsmGjwv3hyor5kNEuDCmeNVOgLjT/xz0AIYxrVlsMBEhv+jSHhz6n
 B2GIcQhEQhqb39iz09As17c6AMjBbvyXSoIGSEpb0EIMh3+RL7J2UWutg5vsFRGTI8TnO575h
 kSkk98YbXHtYhsbXRf/2QBSSsM9if8AaniINLw/r8LJ6JDd8TUMP2jBO4PiHmA8352u1dngWv
 Plm9CLmSPyvgQe95iEdninMaE2K1cFffPEHPe4UcXfLXWvflhWBQp3TZoM
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>, Ship Mints <shipmints@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Andrew Cohen <acohen@HIDDEN> writes:

Hi Andrew,

> (systemd allows me to list all of the applications holding blocks. My
> gnome desktop typically shows 7 or 8 applications holding blocks for
> sleep, including the Network Manager, Power Manager, etc)

Side note: According to org.freedesktop.login1.Manager, you could get
this information also on D-Bus level, calling method ListInhibitors.

Another idea: There are the properties Docked, LidClosed and
OnExternalPower. Perhaps you could check them in your sleep-handler, and
start different actions depending on their value.

> Best,
> Andy

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 7 Feb 2025 07:14:20 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 07 02:14:20 2025
Received: from localhost ([127.0.0.1]:60640 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tgIZ9-0001X0-TQ
	for submit <at> debbugs.gnu.org; Fri, 07 Feb 2025 02:14:20 -0500
Received: from mail-japaneastazlp170110002.outbound.protection.outlook.com
 ([2a01:111:f403:c405::2]:56953
 helo=TYVP286CU001.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tgIZ7-0001Wh-CZ
 for 63620 <at> debbugs.gnu.org; Fri, 07 Feb 2025 02:14:18 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=fynxzLIqvSdH8DrYrYmWkEu22cazV34rMebfNom3GFoAT/HIpvxmIz0mSZI3kjah2otaXlmb3nsmFZ3C8/0GjzByT+59jak9TcXYlaGDYHx5AUsZbdeT7YP9NagjeB8AsJeKWaJeBwEvnYdWtIi7hgGOx5ry4ByUyicipPL3CXwtbkX915Bz3xHk0Xqvvd/jnlfvo/9k+/tSQzZUOvNj8LDJmr201EDUggLqLVoGZfxnfLgeOogOh0dk2X9QDWf4PJ/G0MPENErMuRUsGWAxlfn+lSzTqkjNEjlJxqZ4TakG4RIPgIWxlREVHfLM6VJzyMErQzgIAZIQ1cYfuYiIkw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=POzmbVLfuuvpcDe2I5Eo3ESN1Z7mBoAlooCtYDGKdrc=;
 b=lA0HkyFOGE2tdICf9g2SULooXOeO2/kr5+DOjNqunUOEKHv1JZs2mTmxR6u7Asq/pmBRpYPc+vpxUHIoC6THNNWNfXmlHXaIiCJ6mvVlRVK2fhP72QvNJBPtu+ZyAZ4/zcqhhAlNHmVgQ+mcsS+Io+ZV26lAZPv9tvRil4kD+0pB3r4Au+pCqk1hVT4drQbC3MhczArE6VXdBbj3E/IDPpw4JLrSXYbcnZ9FKrGt4gjRkIs6ZhCt2lgMmGbpVxItNqCaCQvAikF7Aj3MWBzNIiNsPUDEbRpbrWI7x9yWqeBE2tTpF2BZ/4xNSQQb7CThZzMs4tWlJ+9DbtP0DH3FEg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=POzmbVLfuuvpcDe2I5Eo3ESN1Z7mBoAlooCtYDGKdrc=;
 b=uOArdPn6pPXc6+0LS7YF4k3tYo5u45Hw1/+/fqFOxIjU+VvfQYPTYvWb2c6rfCIr2yOOpEM9Thu8C9FfcnW/BCHz8W/gu0AdyP7qXvQJVYMORuIeMTRMU2bx5EniJEluYgR6MqPaKcuQgMOcjWFNJa/ytpxKvAwbcVIdVrsVmCuVAI8JNtwH3M35edLuVsR3QgoPHWFxvRrghE3ppi+4yL/tCzD2J+2jV41gcUcw7Wp9NTDuD3URa0Z0XoPWtaYWXehNUaScmN37QsLuFzwfR2aOI2fBYylYEJfBIIm/gxYnZw3MTwEpl8udjqnNy7rEj13r1sJWrab/u/npBmpFhA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by TYCP286MB2895.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:306::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.10; Fri, 7 Feb
 2025 07:14:08 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Fri, 7 Feb 2025
 07:14:08 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: 63620 <at> debbugs.gnu.org
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87o6zfplyk.fsf@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
 <87o6zfplyk.fsf@HIDDEN>
Date: Fri, 07 Feb 2025 15:14:05 +0800
Message-ID: <87r04agrb6.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: TPYP295CA0016.TWNP295.PROD.OUTLOOK.COM (2603:1096:7d0:a::8)
 To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|TYCP286MB2895:EE_
X-MS-Office365-Filtering-Correlation-Id: f44e8240-484e-4943-ee03-08dd4747034e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?W5fr/s9zOBS4ENER+nHDAhxnKcxDBNEh1BQQ21R1mDvtMbRcJP2UntuyDob0?=
 =?us-ascii?Q?LP8gFpjNNAvK8n5jHg0V1VYIfNF4GBNULde9uLuI77GcGQBEuTnBOWr9MrX+?=
 =?us-ascii?Q?ZjmdMEcknFJzRsk87m0wWqCPO7s1O29KcDmphKTrtOpS+sl2jUWgoyR/B68B?=
 =?us-ascii?Q?CoNxjBjc+zTvORsYxomi5fyNVPs57EYrejUH/hv+H2NUHcbj+Zv1AOt1iIy7?=
 =?us-ascii?Q?H2/EHgHM9/mqVy31Kpk4jwoQp71k58jqrigcO/zuqJ+pwCwtkiyxwn/WovNz?=
 =?us-ascii?Q?KweTgR4rZLU1T+s0JgyFr0BtFjw5UZK7ImvbieAZIUdoHyEki36crCsHn+MI?=
 =?us-ascii?Q?+wFptxuOEnk7Y2hCn8ybn0j8Ypd2Tmqk5+0qxvnDIm4TXdoGu28Lp+Nj9oow?=
 =?us-ascii?Q?wtW6SLsGxfQxl9c5S/wfj0oBgpsKc6X+PJIgnEwV+FHyFJCUkM9b4Y0FHx6E?=
 =?us-ascii?Q?O9UtbdU08D6LJmCc9+k6vqgxH2twnjB/X8YIkCRzFaOKRF+bBNXG/dIfTM64?=
 =?us-ascii?Q?eVRjnVY4jxw8AheGdmoySlciKsvRTeH9mlJQO2Vsniy+xJfvezP/MvnAYlYv?=
 =?us-ascii?Q?FBReY74xpXYl7n1UiR+VHPKGmzNvG5gb9KcfCOCzyEyrpOF1HidVKXTKDWls?=
 =?us-ascii?Q?OOOZUwTjuZfJYLv1AlT2qesZAjSdNWF/6qQkRlgvXZv3pezTPL6l+RJZq2cn?=
 =?us-ascii?Q?Cx70O4N1Wghd9mj4Ao6VXgEjkhtp/8/uaIF5aMifIAc62dIZrdbVmPS+YCBU?=
 =?us-ascii?Q?J9tR6hhPszWFp+QYGixmLdV1P9blb+OXAh5gJRE7MA64bzSNMKiZc/1Exs6K?=
 =?us-ascii?Q?ickibScNnodH4gtpuROVJZ3wKJu8EVZqD6VxoDVVTWysq1+SvvFcprm0mHHC?=
 =?us-ascii?Q?HlB5HJftGKodaVT8QGImmK8hXEOu4GiKc8TUXi26ZG6yjD1r0zGQaugqAVfr?=
 =?us-ascii?Q?wCt1hF6g41TYZRvzAtHB3H+2Es2tgyIrHrV0Ph+KwEWTapHp4Kx+SoOO9+yO?=
 =?us-ascii?Q?SfRqIu4fo3Fktq9+IExPoC624STbJTmWT0QgrNEBSRBmpYpHjx5aur84gBUi?=
 =?us-ascii?Q?ieVPkEqWWlN2Bf92ZE7SMpAA1SPiFDnkT6r/h0u6B1Fg8xalVQZCRtRszR24?=
 =?us-ascii?Q?9BuWmTrPxmOUhl4dBvAsqyn1QutdqVo0zEVt5Be/zfg3eeIx+4RF3yJ5flxE?=
 =?us-ascii?Q?J+uHhF07lXvfOfC8FbEvrWneX4tSzbztpuHXgTvfzw+8Ak90DASQBerDs9+2?=
 =?us-ascii?Q?a0q2HIkvIs2dP/T4FHDyPdLb5NLprsZx4M0eIEao321Y4kgsP2QzqJf3ucxm?=
 =?us-ascii?Q?Rgile1agUAj2sGg8grQ5XxiwRgKi5wPAMWL2luQEweRArI3XmqvopiYv6Rtc?=
 =?us-ascii?Q?mWPw7ZtcQuW4c/hWOhEjZPYXzxLO?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(366016)(1800799024)(376014); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?MyF3XczFcvUAFKxxKXGej0RgKk46BNus+sKnu5JRW7g775dNniaU1tiTrfYW?=
 =?us-ascii?Q?vYjdnPvqUy5C+gEyXfW6N+hESOSqKhf35UeI30VA2Yjrm1shgz8TSgDT7zbh?=
 =?us-ascii?Q?mwz7kPF/1b2h9Uup5s8NbDJBFu23wkawo1z1Z8oQoJAoa1Rxe9ZLs6v0AMGp?=
 =?us-ascii?Q?R5DWOEcgNBGOPFx5/H6lnt806+pvU3R5d2C+T8zf4lHbkA/Cxq54fv1wNsVa?=
 =?us-ascii?Q?1Yd8CBFZ5E+OEzt+u9qz9Yw4GTwRJTH5/SA3CcJkslginQRMqVDLPjee/vkP?=
 =?us-ascii?Q?ioGhPo3MJ4KTDbQ4BKX8XfQLEswVdeI/3okS7vb46o8TCSIgJ33N99NT1D4c?=
 =?us-ascii?Q?gYYfD9/13FfcxjiegnX5VsleXPAW4KBGxwZmkiQv+v/kgo2gruUVYsLvKNHb?=
 =?us-ascii?Q?1yZl2MoYChMedKmrFlCZmuVGH806tAv4nvXHYnse/dOf/QsAfkyeLsz3x9Ua?=
 =?us-ascii?Q?SV3ZriON6asnUrg8j8E0xleaWKpCdPkSdnAXz3dL6SWqq9GJ3Bdiy/8/+Idu?=
 =?us-ascii?Q?r8Cr2zxYs1DtQapkHDoxr/MMDkmsfV5/oeG0hHzLLrQ+/+KbBzt58as9lpmH?=
 =?us-ascii?Q?uxQdWovojsuXKoxfZg/pNJdHZTitgxmOPgoreCNlTlRTUnEW3OwpZ/XGGHiH?=
 =?us-ascii?Q?Lp6Pvdkdg7TRbWrS4EybvwBgbbgE9t7vhVRmhhT79wqOvuZwVZa5DcwfgZgu?=
 =?us-ascii?Q?PhzAeYo89iBDsDcCePyUdQo2ALzl7FVqAGy9Z2AfrfI71eQE1hfpx6UgBdNZ?=
 =?us-ascii?Q?H030rhMCPJd1WfGmrVFBsSZw43jaFPu0knW9x9Hzr+/afmmA8uOTmse6fFEU?=
 =?us-ascii?Q?jcpieKG8I0VpijDtG6FLtnKAxvNxbEHVZlktN7+9o1Mjut2gQCySbn1rRk3P?=
 =?us-ascii?Q?tWU0YYQocADKE19ykLrc6fYLA7nWIGQfXFgTMMxNcX6y+Fx6D+joCB9zPU82?=
 =?us-ascii?Q?SQqnS+VnD8z8U4K1lHEudizg/NcG1/+6FIUWz5gOifFW4ygkVcmM7waN81un?=
 =?us-ascii?Q?+Seiiz14lEu53FtgXldtq2+lVnQ1HD22B+Im0CWtfZerZjaSlGePtwWYdI+x?=
 =?us-ascii?Q?Ar9LgOP3fCj7gVWZ/PAzS6G1+LbFmeydqd/VcTFKuSo7yA4GYCjUlgIsEy+y?=
 =?us-ascii?Q?1ZxjWdQi3HExQf4woTQin+AlQokaoqvgmMX///HfzOgjGuJNgYY7oteh9p0N?=
 =?us-ascii?Q?mFrvR5POiUJmfKdmkpqog45sFn0n3vlTgQxXqp8z104Kud5GjV8eBXP7d45+?=
 =?us-ascii?Q?pXpK1fm4urF3aRjlAucsXFOXvhznb4bvVIFkX6WKAunq9xdj3W6q6bAePwK6?=
 =?us-ascii?Q?1STxVpF1R0b+HFlywFpeKbB6aMerMRw1pI1v/vOdLef5tTNS5oBMnjTVU+IP?=
 =?us-ascii?Q?X1i4BaJ6jVZ3/1yopiIQrUShNYJkeCYgK+dzQdRY1QIXEAy+Tbh4HjAsSKkl?=
 =?us-ascii?Q?foghZ83igjK3qNf/iRIbVCro7qgSfmiao8cSW7la+G95OS4Pi47bgY8DsBq9?=
 =?us-ascii?Q?IRaT6Akf9bTFbJxZrI8SfivTtxoQAUs8u3IUNNver8C+7hh6O+OLrsurA7TX?=
 =?us-ascii?Q?YIg6JT6Znmm+xueP0I/3gbjs/f6xnnXJXbR1LTgQ?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: f44e8240-484e-4943-ee03-08dd4747034e
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2025 07:14:08.2688 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Y7sJ2WWowDjt7uv2mj5WCXEMkREjMNuxTJxfTC+2d6zWlGCSoKSDLLBTv8fNZj1m
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYCP286MB2895
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Stefan Monnier <monnier@HIDDEN>, Ship Mints <shipmints@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "AC" == Andrew Cohen <acohen@HIDDEN> writes:

>>>>> "SM" == Stefan Monnier <monnier@HIDDEN> writes:
    AC> [...]

    SM> so what do we know about when we'll sleep?  Can we influence
    SM> (e.g. delay) it?

    AC> So I can make it work easily for the D-Bus backend, with one
    AC> minor issue.  The D-Bus interface returns a file descriptor (a
    AC> natural number) for the FIFO that is inhibiting sleep. To allow
    AC> sleep I have to close this. How can I do that from Emacs?

Just an update:

I have a more or less complete implementation using Michael's
modifications for `insert-special-event'.  A sleep-event triggers a
function that manages blocking/unblocking sleep and running the
appropriate hooks. This will work on any system that generates the
sleep-event (the blocking/unblocking routines are D-Bus specific, but
once we know what this looks like on other systems we can dispatch
appropriately).  The D-Bus handler just inserts a synthetic sleep-event
when it receives a PrepareForSleep notification. This is what I have
been running for today with no problems.

I spent some time looking over the documentation and the general
recommendations for dealing with sleep notifications. The recommendation
(from systemd/logind) is that any application that needs to do something
prior to sleep should monitor for sleep notifications and install the
block preventing sleep at the time that monitoring starts. When a
notification of sleep is received the application should complete its
work and then remove the block. After waking up, the block should be
restored.  This is the logic that I have implemented. (systemd allows me
to list all of the applications holding blocks. My gnome desktop
typically shows 7 or 8 applications holding blocks for sleep, including
the Network Manager, Power Manager, etc). This is slightly different
from what I was doing earlier (where the block was put in place
immediately after receiving the sleep notification---this could lead to
problems if sleep takes over before Emacs completes its
actions. Although in practice I never encountered an actual problem).

The only other thing I had to do was figure out how to close the file
descriptor that implemented the block. According to systemd/logind its
the application's responsibility to close the descriptor to release the
block. But I couldn't find any way to do this from lisp. In the end I
just exported `emacs_close' to lisp as `emacs-close-fd' and this works
fine.  But maybe there is a different approach.

Best,
Andy
-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 16:06:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 11:06:38 2025
Received: from localhost ([127.0.0.1]:59163 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg4Oj-0005x2-Om
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 11:06:38 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:39350)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tg4Oh-0005wm-N7
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 11:06:36 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tg4OZ-0001tp-Sm; Thu, 06 Feb 2025 11:06:28 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=zB8jkk+eUDBfImosKG2usfK2L7Hz/XutubupVfmlcIQ=; b=pxCKPdN9sT/S
 JrB8X4hY10IyvgBdHwqnKGpHuv2LRxM+e0A8AswD9YnTd6u7TVYuopOfqzE0qtDW60KKKgMFuE3L7
 J4B1nkZ8pgV3xSJf83eet2ODIHqznCFlC5JCYtYL6wcd7R4Vb0DXEXINyMEBJh1QDxWDeZHdkfziz
 W4sjKPljxxqZB0RFPQF7JsJ2+S4u8DiIgk7afjTosLnp2HTwhY3PvhpVkKOlttdqBG41nvbrlNYGW
 UGsDZVYkQBfi/FWFonWgQtIBFY1UZjdmvXO2FeNzmtbtiSdow73FfMEB50ru7wFnsdmvYP7pNqyAy
 MQ8/5+m2Pv1kwZs3ZyOivA==;
Date: Thu, 06 Feb 2025 18:06:19 +0200
Message-Id: <86zfiz5a84.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
In-Reply-To: <CAN+1Hboh=hBUhuubL=SWphyxL6Ud3MOabGPsyCW1rJz9qik4-A@HIDDEN>
 (message from Ship Mints on Thu, 6 Feb 2025 10:42:02 -0500)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN> <86a5az6qzm.fsf@HIDDEN>
 <jwv34grhywd.fsf-monnier+emacs@HIDDEN>
 <CAN+1Hboh=hBUhuubL=SWphyxL6Ud3MOabGPsyCW1rJz9qik4-A@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Ship Mints <shipmints@HIDDEN>
> Date: Thu, 6 Feb 2025 10:42:02 -0500
> Cc: Eli Zaretskii <eliz@HIDDEN>, Andrew Cohen <acohen@HIDDEN>, 63620 <at> debbugs.gnu.org, 
> 	michael.albinus@HIDDEN
> 
> macOS has an annoying feature that will wake the computer periodically to check shite like email and
> messages and then go back to sleep. I do not know if the notifications we're interested in are invoked by this
> default behavior. I've disabled mine to avoid burning the battery with the lid closed.

If the system wakes from sleep, it shouldn't matter to Emacs why it
wakes.  If it then goes back to sleep, the sleep handler will be
reinvoked; if it doesn't, it won't.

So I'm not sure we should worry about this.  If the user doesn't want
his/her system to be awoken by these conditions, he/she should
configure the system appropriately, like you did.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:58:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:58:27 2025
Received: from localhost ([127.0.0.1]:59129 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg4Gp-0005Sp-3K
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:58:27 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:41784)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tg4Gm-0005SZ-4h
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:58:25 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tg4Ge-0008Vk-RY; Thu, 06 Feb 2025 10:58:17 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=IORqZ8tEZ5g5B6un/pD+ZMA2Kvp/Xo4s45/F70R5dqk=; b=oI57mjRBQ/2f
 ExDxrron91+7nCwZfQjxDgc8GnmrzLV8C5uAt1G45hBpX+N9KTQVt49z2mKfiMFbTGBSCuEbQwdC0
 Lzo+rP7Y4pn9D7nhlBcji9mEpKFu6l+dLp//wRhJhYOf8ALGERxdEQKRjGjWRYu2cIpJLd/BBSvkf
 VTpXPzxiuOK3YdDjVVt/QtEd29GlQSth2KXCKxOFTucdAzjTpj2Y5cMdbAQzlTb+v619wAWavyfpH
 SDzYYzFBjx3/1dJobbiiUI7VDhGyFqRT/wTnHIVF4eWhMJYuFmUFC06BN7VlFdGqVGbeesaaPP9hW
 r49hKHhuTu28emAMcyz7fA==;
Date: Thu, 06 Feb 2025 17:58:13 +0200
Message-Id: <861pwb6p62.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
In-Reply-To: <jwved0bhz4f.fsf-monnier+emacs@HIDDEN> (message from Stefan
 Monnier on Thu, 06 Feb 2025 10:29:27 -0500)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN> 
 <jwved0bhz4f.fsf-monnier+emacs@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Stefan Monnier <monnier@HIDDEN>
> Cc: acohen@HIDDEN,  63620 <at> debbugs.gnu.org,  michael.albinus@HIDDEN
> Date: Thu, 06 Feb 2025 10:29:27 -0500
> 
> > Thanks, so which of these solutions would you recommend as the
> > cleanest and the most convenient/extensible one?
> 
> For the "wake", we could make it into an event, but for the "sleep" part
> we can't really push this to the event queue because we need to process
> it promptly (the system is waiting for an answer).

AFAIK, this is not a problem, because the system will wait for
programs to become idle anyway.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:48:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:48:00 2025
Received: from localhost ([127.0.0.1]:59093 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg46i-0004yH-1q
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:48:00 -0500
Received: from mail-vs1-xe32.google.com ([2607:f8b0:4864:20::e32]:51247)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tg46f-0004y0-Qq
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:47:58 -0500
Received: by mail-vs1-xe32.google.com with SMTP id
 ada2fe7eead31-4ba7d7aa995so165032137.2
 for <63620 <at> debbugs.gnu.org>; Thu, 06 Feb 2025 07:47:57 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738856872; x=1739461672; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=3zsYafWj1lp3IoWu1U7IEYTgcUrKNLUxccyeqtjTSkk=;
 b=dO83a4Wd9TRlSP7XtJDGO6PFksY6l7AYYlgllf/nfkPhU5YHj8fGS+H7oSjGq+r8CK
 UeopoZpr5xzB3IpFXvnK6vRjetiQt3gvKEqpbZuNlqUmfQUWQ9PacNXHoi3ItR/s1C+6
 Vbziqpx88yXNaRTSTXnZURcAl7nwj6xFHvrIoJucjEgWfy4DTt1HTAgy4jREODnrgOb8
 k/BJIhhz94D020Pxhdh76CKk4phXbAoEBhcpx7zoUf7lGgqgCrgG+OYHGGOn1RfBWKZd
 yrDYzIheISBYOPXbJAbY79GgMdTpMvDrXOsCsOXLTDzKdhoGredicKfz9k99qV5xqaDH
 RFIg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738856872; x=1739461672;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=3zsYafWj1lp3IoWu1U7IEYTgcUrKNLUxccyeqtjTSkk=;
 b=YqB27TUmMPpq49sttE/O87qk5YBzfeyYoBTfoEC5XhHpOAzgQ5i/T6Mm29D0rfioEg
 3+oLHR55JZe7IR/gb7DIld6APQz5L4PYuovlqu+I7v4xB46css5qqtCW/fxEhxMAJy8l
 +JUrn6VXvr3t3M3HQVIr3M3sOk6dz24IUxhx2xiJe4yJqJB1Sa2eYIO79uqEBS1RPCZg
 X+2aOYeBNjbJvkPyF9Jala8xWrco2Vb8kJD9zLgVRBAgsEa5ZqcLpPw14q/lLMWOAdtM
 yCIc5mlnWSxLwnxO3W2m7ruz+1daPX90Zxyuw8zl/WDHfT14zYzZJ93sjsmJAXylZhFF
 n3Xg==
X-Forwarded-Encrypted: i=1;
 AJvYcCXkG4xbHy73LUrd+7mMgxzzwWrALxBvZSKa5asv5B5DzY5iw1u02bxWuKuJHZg5dRjKpvY+8w==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YyoyIEU51gecfMlYa5JK/Unw/WTjo5kvxPPtGzuRMYNP3FBujsv
 iovoDfEslqxmjFbNGdab6ZSlvzwy3c60h51IbIsbpclbgAjXLdvEMG2ps9vIRM3B5DA1H5id8P6
 AqLcY7hxJNW7qAePan7a2ZDcY6f4=
X-Gm-Gg: ASbGncu0imj7P0RyVgB6IL3Gy7h1qz1/qaMyGl3Yq1StsLZmbo/+VK0GRfbXZEFVDjW
 yhXv7J+cqNZNU3e/amk6svPY5VVErOdALDoWRh93t5uQIp4B/dB/2NsYwUVcK1CVuhiwS6Xyf
X-Google-Smtp-Source: AGHT+IE0IgmbyETXrY5Ef6L7Ql1quMpfHkEf4LfsQJcIwKjOyLN3HyAC2zUJYpyen1iucrh3Nsfwirafkw9qFgvPmgE=
X-Received: by 2002:a05:6102:3a12:b0:4a3:ab95:9637 with SMTP id
 ada2fe7eead31-4ba478e4a1emr4916621137.12.1738856872256; Thu, 06 Feb 2025
 07:47:52 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
 <87v7tn1b0s.fsf@HIDDEN>
 <CAN+1Hbohnii6UeL41q0AyifP+6budQif4c99dFGZJzeVYmePDg@HIDDEN>
 <864j176psm.fsf@HIDDEN>
In-Reply-To: <864j176psm.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Thu, 6 Feb 2025 10:45:50 -0500
X-Gm-Features: AWEUYZlDNWK1bkkykdS1-RJd0Bq4meEnQkr-umLgFfsqvlPFgDVqze0czx5QQpU
Message-ID: <CAN+1HbpAs+daMxMv2msVzq+LiUfUtyghsTc80CG5DNSEBD8acg@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000002fad87062d7b2a89"
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--0000000000002fad87062d7b2a89
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Only insofar as the C-level API calls are different and that the mechanism
may have an impedance mismatches. For example, I do not think on macOS
there is a way to describe a delay as Andrew suggests there is on
dbus/logind/systemd. The only API I'm aware of is one where you tell the OS
that the "user is busy" and then tell it the user is not busy. However, the
documentation for the "will sleep" notification does say one can delay in
the handler but is otherwise silent on how to do that and I've found no
information. I'll have to contact Apple to see how to do this, if it's
real. It could be vestigial documentation.

On Thu, Feb 6, 2025 at 10:44=E2=80=AFAM Eli Zaretskii <eliz@HIDDEN> wrote:

> > From: Ship Mints <shipmints@HIDDEN>
> > Date: Thu, 6 Feb 2025 08:07:44 -0500
> > Cc: 63620 <at> debbugs.gnu.org, eliz@HIDDEN, michael.albinus@HIDDEN,
> >       monnier@HIDDEN
> >
> > I prefer using a mode, it seems more idiomatic. Shall this use
> cl-defgeneric in sleep-wake-mode that each
> > system can specialize?
>
> Are there differences on the Lisp level between the systems?
>

--0000000000002fad87062d7b2a89
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">Only insofar as the C-level API calls are different and that the mechani=
sm may have an impedance=C2=A0mismatches. For example, I do not think on ma=
cOS there is a way to describe a delay as Andrew suggests there is on dbus/=
logind/systemd. The only API I&#39;m aware of is one where you tell the OS =
that the &quot;user is busy&quot; and then tell it the user is not busy. Ho=
wever, the documentation for the &quot;will sleep&quot; notification does s=
ay one can delay in the handler but is otherwise silent on how to do that a=
nd I&#39;ve found no information. I&#39;ll have to contact Apple to see how=
 to do this, if it&#39;s real. It could be vestigial documentation.</div></=
div><br><div class=3D"gmail_quote gmail_quote_container"><div dir=3D"ltr" c=
lass=3D"gmail_attr">On Thu, Feb 6, 2025 at 10:44=E2=80=AFAM Eli Zaretskii &=
lt;<a href=3D"mailto:eliz@HIDDEN">eliz@HIDDEN</a>&gt; wrote:<br></div><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-lef=
t:1px solid rgb(204,204,204);padding-left:1ex">&gt; From: Ship Mints &lt;<a=
 href=3D"mailto:shipmints@HIDDEN" target=3D"_blank">shipmints@HIDDEN<=
/a>&gt;<br>
&gt; Date: Thu, 6 Feb 2025 08:07:44 -0500<br>
&gt; Cc: <a href=3D"mailto:63620 <at> debbugs.gnu.org" target=3D"_blank">63620@d=
ebbugs.gnu.org</a>, <a href=3D"mailto:eliz@HIDDEN" target=3D"_blank">eliz@=
gnu.org</a>, <a href=3D"mailto:michael.albinus@HIDDEN" target=3D"_blank">mi=
chael.albinus@HIDDEN</a>, <br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"mailto:monnier@HIDDEN" =
target=3D"_blank">monnier@HIDDEN</a><br>
&gt; <br>
&gt; I prefer using a mode, it seems more idiomatic. Shall this use cl-defg=
eneric in sleep-wake-mode that each<br>
&gt; system can specialize?<br>
<br>
Are there differences on the Lisp level between the systems?<br>
</blockquote></div>

--0000000000002fad87062d7b2a89--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:44:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:44:53 2025
Received: from localhost ([127.0.0.1]:59078 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg43g-0004mP-Kv
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:44:52 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:33752)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tg43d-0004m5-Gy
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:44:50 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tg43X-0003BI-FQ; Thu, 06 Feb 2025 10:44:43 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=iWqD2Q5PNt8P7mNw+piTOF1XAM6NOB0U4i2Oyp20LhA=; b=NxW5WhedJPnD
 wLJuF51NX15xsWDyZTpbbMUestdsZqNjzfD4a3kvXYBYUigQTJqn7lvc4vCQZBv/AWFzkRdQMwBt6
 dOpfP2Mu+lfLMvkBslwQ2xe8k6S0WBjkISt+kY5vvqxJKsGg+/rfDvZ/XazE6fdW69tJZDAGF73sg
 S0AXK8Q/MOkUxG+fqsYlNMeaSiy7ukakx8v54P9V4JIGnqNcRfgzHqj5EJLrvGNxS6NntWt8hFQ2K
 fpZrxHHaZGPFgiHhZlqErI/ZikklVUSUcwk4nAK2v3DnNp9pJQaTAI+o52yxarqPdkAOt0TtF6YgN
 RJFQise3NxbSLLWdyxRl0w==;
Date: Thu, 06 Feb 2025 17:44:41 +0200
Message-Id: <864j176psm.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
In-Reply-To: <CAN+1Hbohnii6UeL41q0AyifP+6budQif4c99dFGZJzeVYmePDg@HIDDEN>
 (message from Ship Mints on Thu, 6 Feb 2025 08:07:44 -0500)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
 <87v7tn1b0s.fsf@HIDDEN>
 <CAN+1Hbohnii6UeL41q0AyifP+6budQif4c99dFGZJzeVYmePDg@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Ship Mints <shipmints@HIDDEN>
> Date: Thu, 6 Feb 2025 08:07:44 -0500
> Cc: 63620 <at> debbugs.gnu.org, eliz@HIDDEN, michael.albinus@HIDDEN, 
> 	monnier@HIDDEN
> 
> I prefer using a mode, it seems more idiomatic. Shall this use cl-defgeneric in sleep-wake-mode that each
> system can specialize?

Are there differences on the Lisp level between the systems?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:44:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:44:12 2025
Received: from localhost ([127.0.0.1]:59072 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg432-0004lG-AC
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:44:12 -0500
Received: from mail-vk1-xa2c.google.com ([2607:f8b0:4864:20::a2c]:48560)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tg430-0004kt-4V
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:44:10 -0500
Received: by mail-vk1-xa2c.google.com with SMTP id
 71dfb90a1353d-51f2a8fd349so101935e0c.1
 for <63620 <at> debbugs.gnu.org>; Thu, 06 Feb 2025 07:44:10 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738856644; x=1739461444; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=gnmko2O/LMYzilz7TGBQA4X1ktP9m22W6ciKowg2Eg0=;
 b=aijIWaFCLMAvwoHU5fYrNYMjeNT+MW3UvHq8eBEd3JidGpgYQVWGO1tBjAsNEsSn/X
 VMQQxk9G7OHXGxwGyvYnoyMV2pfhTHylaYqZv8PAzk0u5lzpzXRg8z0jTWZKvIaZS9qo
 5WL7nE3h99R+bPM/EBkPsgyeMXtZ3s7XgCL2ckxl4b6Nmv4F3XJz94HZLxZKs1pu6uek
 QJbNctyRzESgFyU9ot4Zf9qjfXu8hanrE/8Kq52Cm30cVZtz/vwK7OPKtSKbPDoDO/xI
 5rXuTns9YHL0zXbDg8SEKSs54W90+Q7Mr1mfdROvvh1foJ6IR9V2s4im56NLBLDFDRUA
 zg1g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738856644; x=1739461444;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=gnmko2O/LMYzilz7TGBQA4X1ktP9m22W6ciKowg2Eg0=;
 b=IkwI3K7mTBrjhFonT2oxpx5p0m+e7BchZ8ZiIV/HMGTuRak7kry6jISsc+ZkNlfE3D
 /x29vmU2je3tqE7HXxKkQxeSvuVvYHwuGV5NyU2b7d217gISYCR7gqh0PFNu6//OLrN2
 RUR6++YAx/qCb9Q8IWu/n+5BpTZaJnCVDdQ85zavFlqyUoqHYdHF/d9I/Jf3TFyHVcbh
 QLjfp+SzcPwi/5rz+yGKAHxrMODTKeN6NY57gRFKWn00iqnVjJnoB9r6Zk+vMSccFjql
 NWa/w19HQth5DgqYd3CfjUy9w7gUVgM5xKYpUtalqtngPp+sWcPLGK5/8fu7nEevQ8RX
 cp/g==
X-Forwarded-Encrypted: i=1;
 AJvYcCWE2/K3zaUQgktJZathdOfWS2M20c+oBUUYpgd+T7/rf08NDdY7HEv577lUKSJhYU7l+ICH/w==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YxG1lufbx+ilDwlVZ0j+GLAMUVBp/R6g0e/jLLXx36cEoKXynt9
 Cp5pK0nt2HHXUglXhZqb/280C+yNC3Y/SY2MCWAQ//yTIzeecMKbKrhirURiF7oqQy16HGs3Sol
 j0If0Or/Zie4Z4B5WaxlIVt/MluE=
X-Gm-Gg: ASbGncvfVHU/dEU1q6BLbqPTr3T3A1W2pMgGVAqrN72o0UktXCOa6KjtKS/PGspVQ9Y
 OWwffdlpfYypjqwbXRdjdW3pZLJxq4ksPb9N7Zj1KW3xa4umMoehWR3SkWvWEhJM3xPrjc7Xs
X-Google-Smtp-Source: AGHT+IHayTXnkOQHF/4861c0IFM9VcXQnUYFvOPETGfGlR84nkt8KXbIkAPqHIl+HVI5cxoFwL+vnzWNDiybKsGQLEY=
X-Received: by 2002:a05:6122:882:b0:51d:eb9b:bf3 with SMTP id
 71dfb90a1353d-51f0c4e449amr4896726e0c.8.1738856644509; Thu, 06 Feb 2025
 07:44:04 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN> <86a5az6qzm.fsf@HIDDEN>
 <jwv34grhywd.fsf-monnier+emacs@HIDDEN>
In-Reply-To: <jwv34grhywd.fsf-monnier+emacs@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Thu, 6 Feb 2025 10:42:02 -0500
X-Gm-Features: AWEUYZmCNxsna-oJd9TSj_-DjG3iS1pC2DwamcCpJquVXqrjAN1Ge0DZjDP6zoY
Message-ID: <CAN+1Hboh=hBUhuubL=SWphyxL6Ud3MOabGPsyCW1rJz9qik4-A@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Stefan Monnier <monnier@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000009c87ae062d7b1c12"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: Andrew Cohen <acohen@HIDDEN>, 63620 <at> debbugs.gnu.org,
 Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--0000000000009c87ae062d7b1c12
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

macOS has an annoying feature that will wake the computer periodically to
check shite like email and messages and then go back to sleep. I do not
know if the notifications we're interested in are invoked by this default
behavior. I've disabled mine to avoid burning the battery with the lid
closed.

On Thu, Feb 6, 2025 at 10:37=E2=80=AFAM Stefan Monnier via Bug reports for =
GNU
Emacs, the Swiss army knife of text editors <bug-gnu-emacs@HIDDEN> wrote:

> > What is the semantics of this?  If the user closes the lid of the
> > laptop, and that was defined to put the system to sleep, does such
> > "inhibiting" mean the system will not sleep?  If so, I'm not sure this
> > is supported.
>
> Don't know about "supported", but failing to sleep when the laptop is
> closed can be a major problem (I only experienced the milder versions,
> like finding my laptop with an empty battery, or my backpack all dirty
> with melted chocolate, but overheating can be a serious issue).
>
> [ Of course, it can also be useful, when the laptop is docked into
>   a keyboard+screen station, or when you want to use it as a headless
>   server.  ]
>
>
>         Stefan
>
>
>
>
>

--0000000000009c87ae062d7b1c12
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">macOS has an annoying feature that will wake the computer periodically t=
o check shite like email and messages and then go back to sleep. I do not k=
now if the notifications we&#39;re interested in are invoked by this defaul=
t behavior. I&#39;ve disabled mine to avoid=C2=A0burning the battery with t=
he lid closed.</div></div><br><div class=3D"gmail_quote gmail_quote_contain=
er"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Feb 6, 2025 at 10:37=E2=
=80=AFAM Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife=
 of text editors &lt;<a href=3D"mailto:bug-gnu-emacs@HIDDEN">bug-gnu-emacs=
@gnu.org</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D=
"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-le=
ft:1ex">&gt; What is the semantics of this?=C2=A0 If the user closes the li=
d of the<br>
&gt; laptop, and that was defined to put the system to sleep, does such<br>
&gt; &quot;inhibiting&quot; mean the system will not sleep?=C2=A0 If so, I&=
#39;m not sure this<br>
&gt; is supported.<br>
<br>
Don&#39;t know about &quot;supported&quot;, but failing to sleep when the l=
aptop is<br>
closed can be a major problem (I only experienced the milder versions,<br>
like finding my laptop with an empty battery, or my backpack all dirty<br>
with melted chocolate, but overheating can be a serious issue).<br>
<br>
[ Of course, it can also be useful, when the laptop is docked into<br>
=C2=A0 a keyboard+screen station, or when you want to use it as a headless<=
br>
=C2=A0 server.=C2=A0 ]<br>
<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Stefan<br>
<br>
<br>
<br>
<br>
</blockquote></div>

--0000000000009c87ae062d7b1c12--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:43:54 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:43:54 2025
Received: from localhost ([127.0.0.1]:59067 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg42j-0004jv-Q9
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:43:54 -0500
Received: from mail-japaneastazlp170100001.outbound.protection.outlook.com
 ([2a01:111:f403:c405::1]:57261
 helo=TY3P286CU002.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tg42h-0004jf-IF
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:43:52 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=NmXMYzJAKZt36e97jieDeAvK35+AvA2/dBFpktm7uNyegeG49MMm9lVp35LlYzoVVkCnFFQxI3GsGFPO2WanMFlMZuwHh1UZBzpQAjHVxM3fPU2GDPxiVDsBAcThBOcOo7LQkgd3xKn1OUd0WL+AffPR9ikv1LjLoMM/9QMRGkxHh1g/hGNz5S5vUlfKPL4m54xj74MwXuKOrtKQYTcsRncv8PihPNGuldIqFtRNcoDWFoE6FeSaVSf/mJVj3OYiVIt5yDIpwLkCGADdVYi4qiY40Ca3jn34Z2jrZjyGrILudbrXjhgGcAK7ZZigAvHAfn0j9ZqACc71goflcSZBAQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JceBNMemacZqGCS8N/h8dTOfiBFIErXfbbcIDqPwfoM=;
 b=pC1iJSY03Ut5geyxfatYgjpHimLWykGomGqK2K3RB78aXixuhR4bkLhgqvInj+FrYfcl2fkTn8zu4ysKfuTtolgm34DqIpDSUSoahBmLYeL5Q1EtNMOVNMUtSWy39llOuCrP6O9QqTZIpJ02TOJUzWPJeykO32p13jyreEbK2As84hveDDBMKuoTmD9Tjw5W8vt0oswaE4dHriW3ZmkPDiEh0tOABhYBEr+Z7159dU40UHFwDaMu+lBUQfPJCfilWgzo/Y2kZ5BIIaG4YiRfcpxyu1lB4OUjyHylkbPpXziiLkcmHUUL5iVMsytshqcZgpBzELylfiVTJKdkpBA9LA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JceBNMemacZqGCS8N/h8dTOfiBFIErXfbbcIDqPwfoM=;
 b=lz/bp3IEEJ8/IXvMikMg4UUphjVMJNmRTJuNEEwLXbfoACEaylE3ZpdacJ3+pIS91U7qGAYpHcbpnvbaMCCyyWlES4xfQ5vI2+c0fZJf8vaoZR6nqWJm/2PFsxNq4aaLHGj/qfSwKylyJWSmq1sMSD9iea+ehGxOtD49UbDsFEMUKFQVpJZJidRhklMhjMhkXgfuKbDG92KUHCB99nsk5KPuq5t2gM0Q/8Sc4W0RcIztIU/Lf9LQUhOMiyrhp22uVhpDuZSDmu5fGHMuaicyB9gFE+U2QDaeQwMF3KmNOz75ZP8SFhfCihnj/SnJsxuCBeB5yWrvwk8dKjrNKhcIgQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by OS9P286MB4890.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:2bd::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.11; Thu, 6 Feb
 2025 15:43:43 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Thu, 6 Feb 2025
 15:43:43 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <jwv34grhywd.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <86a5az6qzm.fsf@HIDDEN> <jwv34grhywd.fsf-monnier+emacs@HIDDEN>
Date: Thu, 06 Feb 2025 23:43:41 +0800
Message-ID: <871pwbyt76.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: TP0P295CA0013.TWNP295.PROD.OUTLOOK.COM
 (2603:1096:910:2::18) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|OS9P286MB4890:EE_
X-MS-Office365-Filtering-Correlation-Id: e9bfc838-1d79-4983-72c7-08dd46c5093a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?b3ZMmMyGtL3BjfSRfnxB6YjHXX2UidVB+vMHr/8Rp+x1ocB9QAyZofqjBkBX?=
 =?us-ascii?Q?M+PjostEkmz2S2TCmKN9k8ghgXoZRdJrnUw/17KPuju9RvBJbyRxgVKrxlJW?=
 =?us-ascii?Q?dRFmJVudCQ39Zs0A6nVwN6DvXTyU+8k72qwXSpBId5dRRcWpTg9en6bhYeVz?=
 =?us-ascii?Q?/BrejjHBxi+ZWLSltpu+1/VWN7Qkp4vOVvcgfgVAYuMMGSpEgpGXSAaDdJSq?=
 =?us-ascii?Q?XOmq6pNJ43+ci0ynvzf3D6D+SHkvWL+JlCP6zSTOhdx5ktrSQFHurxWGJxUH?=
 =?us-ascii?Q?Tm5WnUnw5myL2NOjDG0XmKWPTJCalY0rhzzuq4Xy2VGxcNt5lD9EIiHywum8?=
 =?us-ascii?Q?gywLVZ+N9R8RkUN/1vM3zDLoav2dX+smNbtvpumckR6Q6njdn/gxGiGRIZgU?=
 =?us-ascii?Q?z5/j8LJZ24lgun3TrWF5or3+vjwGVzx5vMcphwRthhcaY+T7SZt6Yf8j6Xqw?=
 =?us-ascii?Q?cRRNyVybBEQhoGQVWzmL9wK15F8asgmgUWr4wXXQRJ/xy+KHRWutSE1GhwkX?=
 =?us-ascii?Q?/ZIl4bnrn+3gLciJzFasHO8e5TtiM4ORExlgqXJDq4k9vR/hw1VgHkehf1l9?=
 =?us-ascii?Q?WSM+JBnnPJMi8YGHj+Zh9NvG9g7B8LEtV8a1+UvxvB4zj+Ptbullxge0Xe8z?=
 =?us-ascii?Q?ZhuWBdPUpV8N1G17RcONVfNbOFYlMXddlbSQexYU3P9s4USQRtforMgejEAL?=
 =?us-ascii?Q?O3jmNuyeLMSed5HjYFUMnYOKk3JEeSYamufScTHoqL3IWpMLanArxNNkTozM?=
 =?us-ascii?Q?v+3bTb3KAp+EsDaTfgwffNUSSccAcRfR4G8Zj3xN62L9GjO3g6ipMtYePpqR?=
 =?us-ascii?Q?7byEcPpX7mRZnf/yEe1uj3c0+07mOkwCuiLYmTMeZEhqmNo/cpXQulj5egp6?=
 =?us-ascii?Q?NIOUohra7QLRet9tPchkT6YJm7zfss4ogwskUFdZ+bFUJJ1H50NEafV8tCbh?=
 =?us-ascii?Q?xDBG8mdVWVo1RSa1dv/ljIA1KtUgayvUnBQZYmnqfn/cMHesHHfO+6PDfvjZ?=
 =?us-ascii?Q?+5WibP/PDCLsvkXY5WrqZfaWSOvEkx/ZEOeCiLQDM/gVQsFkMhEWHKgZxRB7?=
 =?us-ascii?Q?VIkXMMuVBC8F+soSPNDkE5Bh64xHYYHrpXGEQJo2EfvbQznpyFksYmye7Q+p?=
 =?us-ascii?Q?CtQpMZX9TT6GYC8j7Irv4Wl2YhsZhw4ahp0MHlzNv5AVEfa7ssQwiMy1R0SL?=
 =?us-ascii?Q?FZjKH+DAN2zIIYzTVmUKgoosk1YXwKFElrn/JTc39xCwc9KoPmtkdAyhu5uM?=
 =?us-ascii?Q?75QvC1hEh72qvXd8PELLtiApk7JGNdyfovzCcFp3Eh7v36toQIOYKd2wggnW?=
 =?us-ascii?Q?cmNw0e5HYUT1Kz/Rvli41GtjNoHw424zSu+tX4jOpCSaAFTyjPgmPkvtzbkH?=
 =?us-ascii?Q?24AL4OOBK9Xs+9MY8TdKcmTJWZl9?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(366016)(1800799024)(376014); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?GpZvegjP+0ndH4y5qzBfZNUKJdqVFImc/8oyZMm9cCa//R7kf4SsTvNTSzg/?=
 =?us-ascii?Q?NHLff6IGF6nqmY6a8DdcGQnEIegMj1ZN42XPaGEFHQMi73x003DLEpy4uq/3?=
 =?us-ascii?Q?jl9QZgx+o7dmO2aFdIfugiSbzxfH/X5odjQS0EqdU5lDBgFDDPyTyOShuoOn?=
 =?us-ascii?Q?7kX4TZNd/I7L0dmmXlBqjvxTx06ssvNkIeXOy2oS9IHlSZJ2KA8xJsID5Y6m?=
 =?us-ascii?Q?nW7d6xUvXkfZ7ZkFwgNqVrdXSQAh8S4k9dyahDFjTH29ugrJqth7C+IFiLdZ?=
 =?us-ascii?Q?elkoneY0WAcS9YmjcohmDAbK4i3tzUIiVLbpiXen0QoBBIOmw6GZljyoyji4?=
 =?us-ascii?Q?FDT1awGNAZcuWuEkAXoo9s5b/QafmrikSDshm7mO7u6jWnrSaRbcEl0pxaL5?=
 =?us-ascii?Q?hvO8FHmSKRLIvdW3EFTfFyZ5OXz02iOApC5S8icUGXxNofDZqb3M/Tq9hDIS?=
 =?us-ascii?Q?aRuvGspMaWERAHoIvs7Xjt8xcDn8tMpWAy/6dHtqpbxukDnaThvVGekgskdc?=
 =?us-ascii?Q?1CNM0mtVhx2pwh5KgKS4tuGamKBb3s9OTdgrDb8vp6IwPtXo/QZAhKL8FXkG?=
 =?us-ascii?Q?/DZy/5+iQKUDeIqIVr8AhptCH6q0WiXQ9bxm573RweY5MkMxCXipnuhlapW0?=
 =?us-ascii?Q?j5quSL1PiHs/dZUwciYKBVz7J9AUwGEOpqygaI6cXQsT4RXpGWxCZSlrHGGL?=
 =?us-ascii?Q?99vqKMPoxxCFD8Esk2ijA7fOFhsgOOVT1j5OaxC1wyPJQ1FvOGq3uXqdfOKQ?=
 =?us-ascii?Q?fC44uxM8XMUmSpqEh/OPB1KyUUXqyamylaBijoQktp9DGD4Cz5SN9LBd8kr7?=
 =?us-ascii?Q?t4j7wnJzkVY53rL2UlRHZNp057qKlrGt9lWUH6c1RGL8/nisPTsHxA4ePer3?=
 =?us-ascii?Q?mRXdjXGK+RNhNrNEzni2+OHUQW6Gc8D9n1oyZYdY7ccGyL+l+8884MCew0Op?=
 =?us-ascii?Q?ox/bC5OhVfK0qjcqIxmLJObhT9gpzDtpiyDC4rjFUaMyaHbEXLWrAjsYyZ3h?=
 =?us-ascii?Q?x3Yg0aClNByrKoG7CE4DcFRHSFpdgbS47lLN+A6jz80hureMxH6GnqnFZPMf?=
 =?us-ascii?Q?XlkEzYAdy8mQhe0lmHFHGFIQI4t/g0eSyUTarFEZYPV4FhAvrYYETHgrpTiP?=
 =?us-ascii?Q?g/zYZ1B4uro8m2t1mv/IOq75wvf5RZHqHRVbRj6aPRzAGqgEH5NZacB5lWbR?=
 =?us-ascii?Q?9rh6S5rd3Cvd/CqKYL3uIPu4Z6YbecUmds5YTAlO1/1SFPYxgH1TKw4b2R8X?=
 =?us-ascii?Q?yhndRilr5QFTVxn9w5ZCIWb7NPIZbJEOqTAui8+rJfaVehcpeaoTgChSwaPo?=
 =?us-ascii?Q?PhVs1KKFtsafasdZwKdiHayH/f3qmRwzQD+XnJQFyZbWdjaIpAQTrEAlCHT8?=
 =?us-ascii?Q?9VuIdZY81n3EOGSc/yzjQkTKHUGu+iBHU+hpPZhMDClGJ/Ks4lJkO1qUKqp2?=
 =?us-ascii?Q?8yLNGeJCC5sieJRzOrubBIwPLA0eigFx5x5yg4TG7SchT5NdSwpVQODeGGxN?=
 =?us-ascii?Q?u/AGlu1e0cdn9Hpe4ruvih+Ot3VDsUwKzOS4kD4HetARUc1msmuaoxbP6HTv?=
 =?us-ascii?Q?htmp9OxGbV/nojAC3/qeL04ROA96WlFds4gV/eS/?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: e9bfc838-1d79-4983-72c7-08dd46c5093a
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2025 15:43:43.4912 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: qjuUJVPtCuaxQ57uHT28R/fqCK2LDdOa0Uk/BkB3thAdO+jkdpFU+6rN2e75l3d+
X-MS-Exchange-Transport-CrossTenantHeadersStamped: OS9P286MB4890
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "SM" == Stefan Monnier <monnier@HIDDEN> writes:

    >> What is the semantics of this?  If the user closes the lid of the
    >> laptop, and that was defined to put the system to sleep, does
    >> such "inhibiting" mean the system will not sleep?  If so, I'm not
    >> sure this is supported.

    SM> Don't know about "supported", but failing to sleep when the
    SM> laptop is closed can be a major problem (I only experienced the
    SM> milder versions, like finding my laptop with an empty battery,
    SM> or my backpack all dirty with melted chocolate, but overheating
    SM> can be a serious issue).

The "Inhibit" method I am using allows a delay rather than a total
block. You can specify a time (default I think is 5 seconds) after which
the sleep will proceed (or you can remove the delay earlier). So your
chocolate is safe (at least from melting).


-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:42:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:42:30 2025
Received: from localhost ([127.0.0.1]:59057 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg41O-0004hM-E7
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:42:30 -0500
Received: from mail-vs1-xe32.google.com ([2607:f8b0:4864:20::e32]:60606)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tg41M-0004h2-5e
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:42:28 -0500
Received: by mail-vs1-xe32.google.com with SMTP id
 ada2fe7eead31-4ba6ef7d736so268127137.0
 for <63620 <at> debbugs.gnu.org>; Thu, 06 Feb 2025 07:42:28 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738856542; x=1739461342; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=hqtzOu6cHdvxCVVg3O5duaYQRiFLg6btILmOSJK0F4w=;
 b=gwzAjZDomBWt0AOT3+smE6z5Hy8Kt46PhN9Nwp6+M30BxG0h4O96mh9DfMtNeJL+Nj
 wUvDcBAnbNFAIP285v5Hi4kJ7YZJ6IPM5jbgQAEmnV4fzJPylqXEVk1jlKDz/zzs9g6U
 FN7LCdtF66E8bLgmVdejegBie9UiE3IYYyoNlhCSYo6AdHWL2sbJzlFHcnKSZhgif//N
 iV+tkX8g3dYK9fMMzLrLSCQjz2Xarsiwy06MIGEDnwFXpvoldswlfgIknAhRptsz9tY2
 lYE4KK2CrpblVcUtNqsqhPKgE0UMUYjxR1+k5VghsqeHenhG+uLl5eHt/9G5I/1wemLq
 oXMg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738856542; x=1739461342;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=hqtzOu6cHdvxCVVg3O5duaYQRiFLg6btILmOSJK0F4w=;
 b=fJHrtDU5yd7FQt+GpCUhmSaoyT/OmsSwTRLwQXKX8zKeuiCawMW68ZmIfdGYzgoB6Z
 s8+qTU4V+7HTUItfCr/CfiNS2GQQUhchFVxO0NabO6bH8hER6B5yqvL8L5Vg1TfVjK9c
 h0CE1Fbwxwu324vGyf6vB+NV6EIy6eb/73tZI84EGYlIWhvPlsRfxCfesHNeJFgQh8US
 YUv/THwH37fk1dsEPS/24GKdb+0jN37slOvMT62RFVg7W4bAS9hUnOXb0+MdHmAXUyAb
 rr9jqTCR2uddw+jMZzntcb7AZke/h4YNH1U9QYTt5DW9LEyspAZT0yqEde/8jYEcttG2
 5GrQ==
X-Forwarded-Encrypted: i=1;
 AJvYcCVjZrz2yh+WZQ/FnDo/vzOZVOxi3VD7Pq7+n53XKxQrEbcEDwNJJXfopu0xzLglQ+sL4GNasw==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YzzZyB4dIa2M9OYc3h0oinRwehkuW47e0vfc/6v1n9rw+npUwGc
 0DnV3VvV1mxW9tiCwGl2R1xz80GP7EbTI9x4paFtccmM0KNJm8p3BsyPCsIk9dLJOjTlozKy+gk
 wVCuzdJIp9s/upo25jw2xyHqx57I=
X-Gm-Gg: ASbGncuopeQf48PJrd6n6mQfCauPh0L8bx2mpkx0W5i6EHd70UBXKrleyGW+/ticrx1
 qv4rDxvP4HdGO4bVyHA/Cnw+IJA16GjEFYPGc7ZIh+lBHdYShs8pch0I5U0PpqEXOFpq8uwb1
X-Google-Smtp-Source: AGHT+IFHuHYvNl7JZAmqCvNbOZl/czmULWH2c3vF879oOeP+6q3PbtV536f/TbD1pWZqMFaP2UvzxDyo0U8M4T4PKLU=
X-Received: by 2002:a05:6102:800e:b0:4b9:bb76:1dc1 with SMTP id
 ada2fe7eead31-4ba47ab99b2mr5249925137.22.1738856542436; Thu, 06 Feb 2025
 07:42:22 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
 <868qqj6qhx.fsf@HIDDEN>
In-Reply-To: <868qqj6qhx.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Thu, 6 Feb 2025 10:40:18 -0500
X-Gm-Features: AWEUYZkeZIVssuoZ5fOsfTVYHiebednh5nomrJHDFZX7-ViNsTNX8wg0vRSdB8c
Message-ID: <CAN+1HboRckWGO2TfNY5db2R9=gy9ff8kvSoHJjJZpr35K3EEWA@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000008707be062d7b1600"
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--0000000000008707be062d7b1600
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Feb 6, 2025 at 10:29=E2=80=AFAM Eli Zaretskii <eliz@HIDDEN> wrote:

> > From: Ship Mints <shipmints@HIDDEN>
> > Date: Thu, 6 Feb 2025 07:24:37 -0500
> > Cc: 63620 <at> debbugs.gnu.org, eliz@HIDDEN, michael.albinus@HIDDEN,
> >       monnier@HIDDEN
> >
> > The API on macOS would expose a pair of C functions to lisp, one would
> inhibit sleep, perhaps returning an
> > opaque "cookie", the second to revoke the inhibition.
>
> Why would this have to be exposed to Lisp?  We want to make sure the
> system doesn't go to sleep until after the function invoked by the
> "about to go to sleep" event completes its job and exits, and for that
> all we need is to revoke the inhibition once the function exits, no?
>

That's right. The revocation on macOS requires calling an objective-c API
to relinquish the inhibition.

--0000000000008707be062d7b1600
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div class=3D"gmail_default" style=3D"fon=
t-family:monospace"><span style=3D"font-family:Arial,Helvetica,sans-serif">=
On Thu, Feb 6, 2025 at 10:29=E2=80=AFAM Eli Zaretskii &lt;<a href=3D"mailto=
:eliz@HIDDEN">eliz@HIDDEN</a>&gt; wrote:</span></div></div><div class=3D"=
gmail_quote gmail_quote_container"><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding=
-left:1ex">&gt; From: Ship Mints &lt;<a href=3D"mailto:shipmints@HIDDEN"=
 target=3D"_blank">shipmints@HIDDEN</a>&gt;<br>
&gt; Date: Thu, 6 Feb 2025 07:24:37 -0500<br>
&gt; Cc: <a href=3D"mailto:63620 <at> debbugs.gnu.org" target=3D"_blank">63620@d=
ebbugs.gnu.org</a>, <a href=3D"mailto:eliz@HIDDEN" target=3D"_blank">eliz@=
gnu.org</a>, <a href=3D"mailto:michael.albinus@HIDDEN" target=3D"_blank">mi=
chael.albinus@HIDDEN</a>, <br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"mailto:monnier@HIDDEN" =
target=3D"_blank">monnier@HIDDEN</a><br>
&gt; <br>
&gt; The API on macOS would expose a pair of C functions to lisp, one would=
 inhibit sleep, perhaps returning an<br>
&gt; opaque &quot;cookie&quot;, the second to revoke the inhibition.<br>
<br>
Why would this have to be exposed to Lisp?=C2=A0 We want to make sure the<b=
r>
system doesn&#39;t go to sleep until after the function invoked by the<br>
&quot;about to go to sleep&quot; event completes its job and exits, and for=
 that<br>
all we need is to revoke the inhibition once the function exits, no?<br></b=
lockquote><div><br></div><div class=3D"gmail_default" style=3D"font-family:=
monospace">That&#39;s right. The revocation on macOS requires calling an ob=
jective-c API to relinquish the inhibition.</div></div></div>

--0000000000008707be062d7b1600--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:36:49 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:36:49 2025
Received: from localhost ([127.0.0.1]:58968 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg3vs-0004QD-U5
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:36:49 -0500
Received: from mail-japaneastazlp170110002.outbound.protection.outlook.com
 ([2a01:111:f403:c405::2]:49095
 helo=TYVP286CU001.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tg3vq-0004Pm-47
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:36:46 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=RLexASYSzbjBP0WSFB05QFAEylt4IhWNo+qfoTKKTUySSTG3+weWLpvsX61D+rg3GaqAyTFfA8pSRh2/NqY7taW5770Fu1uvYhGv2vLV3l6sap9WVzGcEGpYqtdhO7MtARwA2Zp4K3vWASATSrYsZuh1fZj5v23XkmfU1xon9BACMFRcxDuKR690CiLU5abBh2f+4n1jgxDB6FJnYFW7o7a2Q86ScLTfHS5pwYAEq4Wa2CAk2AdxHVzvJYPcM1QLq75gBlwliMGyuG7Pr0ImmZdXfh+s2WMN/r77uQcSl6zqVx7VIU09llzwup4AyPGuYRsClux12DM77bWmP4HuKA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qVLAmcdFBNVWoQx2RGwFmOa8em/8EUCslYoZLl5atMA=;
 b=afzxYiL0y8046w7P/v2pNm3Vi9RXGmiWF5o3WdO/6zpzYiMrLy+C1lBLIx/H/FUjHkKCSbzSlkbLxVk4i8A4efZZcmLtRl/GNqD1n6vHsmFitDbTyhAyF5RRzWn87qKZS/H3Tgm6IGzH7a+rWZROT09plFuolwB0BXiviiR+6NOCxLxMCChs/C8VxHV73Oyg/IIS1geay9GIpnpLAkblq/IAQ7j7xaaY+fc7uMs4ZObhdYCHAwEgVKkyFAgm1ImrgeFoy4fa2tbHkYKE05PrelBS2JJe6ZxdAwCZhMTNkgl2cdRZrupHMmLVag5sgTEmpL3cw067FTJt4uf0XwxILg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qVLAmcdFBNVWoQx2RGwFmOa8em/8EUCslYoZLl5atMA=;
 b=XRKmRrguWJSwqV1OsXlShXCJTh2WlFLTeCpJZSk+DnbnylPIMkWQqLqoqFFllwaVPX3zqdbKjwnc/Wh6eDycU0uBB8p4XU+NeNsk9Rsn1UWwtEu3i5u9CNu7HXdBL63ES2jFMtoewwY7fBTKyxOgaa9zUlGvpfoB3ITPZMLM6NvykklfeV21eCiW3cDW37uFcQfeW+GtHtpgK5lCF2wjHyxdVtVASwmiLbxoY1kRK099YW1KTWZlxz8Hw1T+UCM6DwS8vj2RB7LJRAyyhBXB8tbrbCud1IXoB8XvhYPBsk6Wfal7Ln2SWE9ygMpgtc+T8zPySlT8FT9jyhxCivuH0Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by TYXP286MB5622.JPNP286.PROD.OUTLOOK.COM (2603:1096:405:2a2::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.12; Thu, 6 Feb
 2025 15:36:36 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Thu, 6 Feb 2025
 15:36:36 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <86a5az6qzm.fsf@HIDDEN>
Organization: Hong Kong University of Science and Technology
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <86a5az6qzm.fsf@HIDDEN>
Date: Thu, 06 Feb 2025 23:36:34 +0800
Message-ID: <87a5azytj1.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: TPYP295CA0043.TWNP295.PROD.OUTLOOK.COM
 (2603:1096:7d0:7::11) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|TYXP286MB5622:EE_
X-MS-Office365-Filtering-Correlation-Id: 757939cd-3de9-4f0d-2856-08dd46c40ace
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?kbEas9MXu/M7VunvkZVRe+2Enit9iZuioGtmQzfLGW39i0abKjinTrqmo5vI?=
 =?us-ascii?Q?MvdbNtBPlGVGiz3qak8jN/fP6GzctVNGPujrmlnwwU8jq2DvhtpBQtwqPrzh?=
 =?us-ascii?Q?2T4CxIZZC+FBC65Cce8PB922x1H2s+v3/04q0ePMKQJ88wJjm5JwqwSzVat2?=
 =?us-ascii?Q?KV6z7J7VNVHdAhf7f7oLnsjezuDHNo2Rzt6w4ou61odwXTk4ZFxpUCYmdYHj?=
 =?us-ascii?Q?XHlq1yWCF+kkawkOVkR3ENZQmG3hDvDWeKBgv+nBJo5PnacszCQEFnySGZKV?=
 =?us-ascii?Q?XHDbLQzRYf8byJaxFR6zpgXq06qiNqty4ozPqnAyg2l773cMC0VKf/hFaY5p?=
 =?us-ascii?Q?rPMCamzJJZMsvoc8pKi5ldq5Y8YL64b7b45xkeOBeljkZVaPeOF4kdN7+hsz?=
 =?us-ascii?Q?lIoR2o1kx3yPgWmsm3wDMSne0zdEMV8wC8wr5nbFFlxOg3B1tBI+laIH3Kvv?=
 =?us-ascii?Q?2fNM6Hq771DFGMZcdRbbhde+hOl847wcXiF2n/YkblMIapIqbWugx7YRnwnm?=
 =?us-ascii?Q?LV7eUt986rOwv74eHM5m6LOB0StQzGG2sMynj5+B6bfelsJQmqMNB4XHuw9H?=
 =?us-ascii?Q?MAsuP776+JT03N8DgUX9VuINnyxW9yfR/0t7tBZfSTgQ1JCJPiRNMAkNbGsz?=
 =?us-ascii?Q?igE85mh2PqbMIBIfXE6WZkpHQTDFBM6rBAqBTs2HKoN77iRYKB76bzq8ra7b?=
 =?us-ascii?Q?N5xomvFWRXVasx/peW5NG1GJRgV7CAfmiP18Le2oBnNp3Yp3IzEi2KIGR5DX?=
 =?us-ascii?Q?0Dd+4zLfUTqT2I6eWm1/Sl+xNyakgd02kuwoy4tJ4/guvIwsPaAy79jzRyRq?=
 =?us-ascii?Q?WyfJSZ3vaLkgqsI7DOReE0nX44cdetnyrCYC53xGt8Hydru0X2pZfoCF2PHI?=
 =?us-ascii?Q?gJu+hK/yoVZOPNveZN11rN3bYtXMpnCSdUlzSlb41zMpypfegYWLp/+S02ba?=
 =?us-ascii?Q?qdYYTofckN5PNuZZi4dSe3TOAv5nosiA4x/ANaUVQwih/Q+ZTyjy39NQr8Ef?=
 =?us-ascii?Q?RF54FUmynrNv6A2Fskb53E8TFE/KCznuykMH1gd8cmnkdyAlkAnTsvlcMYDM?=
 =?us-ascii?Q?2vWAFRpHH4XqzuCj6t8ofToyROFMSNW2gefqP3XZaUTpPej9QV3vgEJT6W7n?=
 =?us-ascii?Q?8eMUMV2LwYUsPJRFZC3uV8iaHMftmNHXWXPRPIazBFtPRml8J/e5FnSowjhr?=
 =?us-ascii?Q?By/6dS9PjI7kPstls6NkynDhqej4fdJHzEH+VsxErKqan9pWo0/XaHH5Sd7+?=
 =?us-ascii?Q?Hzi+G+K8IKbpBQrBW0vWbDyOQzunzq43jSWrrAH4zK7MaI4lx3Eu0EXuzuws?=
 =?us-ascii?Q?Bd1XOCQ6QqDNtOZVC/SsZF8fjtJUkTtnQRLpNG/KAPhYY5sKnxn0LpnxqXR9?=
 =?us-ascii?Q?nbp+qpqGxCk058T0XSyg4XO/tqm+?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(366016)(1800799024)(376014); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?DFf1lqI55tzHEZyvDx4BsAk0hpgid9h+53y/d53AIMSf+ryBkFy/ww46Uddt?=
 =?us-ascii?Q?eZIjm4R8WIrBibtAyPtDCOwC4AReVlpSRs4Sb5kYdM4kCmVB+lt77dmOoWyv?=
 =?us-ascii?Q?q893P3UMBjYX5erRAQ3ARo7qOcImQnh/8J+76cCv58mnmOk9XCs0JQnxbo33?=
 =?us-ascii?Q?thK9IT8Xh8Mp/OdT9Vy+XflDYZRG6j85Bsd9ABQkRLmgcyePB43sRT+/RGqI?=
 =?us-ascii?Q?bjD+vGVLT7UZsnFhg6XtW517P5g8zYn5tkaqC8pn6Rce0IGWxezAkBA4pY/e?=
 =?us-ascii?Q?aLlbybQmNxsw71iffnybpo3lIGSxM2VpiUHtFyseRQDTrkIOMnd3sWSfm5Dr?=
 =?us-ascii?Q?STTfbe//LmY5LAxIUCSazZOU1CVLJKYyHG67uHXGryF89iu7aTEe4QW8bH4F?=
 =?us-ascii?Q?t49cqUVeVOR0UoYP5SCYPMhRpe11iZj5ZLPcFQ+IjbkySeQTvNECwb+8FJp4?=
 =?us-ascii?Q?1T9sDbmOk3K/3vR6SW7O19OvZjO0t7yIiHSC1mIyNqhz1EhCyolHM7iuzn23?=
 =?us-ascii?Q?VrQAarM3Nh8wi7u/lyGFg4fVSiLy+VmxqmtSAFyyAkzYrMt4LxRtlZH0RUXG?=
 =?us-ascii?Q?xxQ/emAx6WrC/wIANjW8Z3OfhE1xhWg/EGLFabWdM8ZzAoDg81B4Dw6bOMT8?=
 =?us-ascii?Q?Ggyb41Sz3Utbs+n+ua1ORnaEPkyvuroaU5vixn0qrRkVsok0QkgD9UhGcTzu?=
 =?us-ascii?Q?UM+yBRxhR2dBqCNp6CyPxaSPJ9u9OtiYgHd1QR8axZkekaPLGbH2kTrUXd4A?=
 =?us-ascii?Q?8dGuVc0Hy8vOVhJWczAAIExl2gp8c4bx2lp/6ahhEWyLS7Ic+KoCev7LKWnC?=
 =?us-ascii?Q?NxEJ8uh72G06MIj3sr7yTw6VShJHp0CtEviio3UHJaZfOXVzrLWGOP6ph+bL?=
 =?us-ascii?Q?tIi19Y20HR85sIVfT0i0zdtRBcJXXem0Yn7YJhgvU7+fKe7yp/FTxLFk68LA?=
 =?us-ascii?Q?H5KDGhcRxsIIKev9XKZ03gk8L1xrAxpNKwVklu5jJaiCgMyBkDT3m0fbJWqe?=
 =?us-ascii?Q?boyfjduMJGgON1sjO3GaF/YFavfhwRS74Vyk6vrpLwXTlGuFPYTGmyBlVISS?=
 =?us-ascii?Q?HzKbuHvuEPylUjAGLi4YYhIeMk1/otdqrU77RmAbI5H/znCM4pdxWo/JUWUU?=
 =?us-ascii?Q?xWfTUuCnie9EnkFpZUA5uzEDizwctP0aVhmBnc3cgF0z1MsmjUPWsB9rjxiV?=
 =?us-ascii?Q?ubS8o/UFO/mFV3agHmgaF9ZE6WmVacCPlSC+Z+dQJTm02B2OLym14d3fkBGt?=
 =?us-ascii?Q?jVhwdAaz33/2rEqXiv0iqjj0YFx9otuApc7h3GLmgt9FQhYCi7o2Yrs+I/3z?=
 =?us-ascii?Q?5fc0EJsvHeLN7GgriEXP0mKuMRIAJhwkkbebOfDu6+SEmUFwTVTcDl/Nt39A?=
 =?us-ascii?Q?iA6J8Rp22xAYNafD529mpzFs4+tTVq1GcdJlxFRPvFLtHbqn+WNzQ5L2O8Jb?=
 =?us-ascii?Q?TxISDpkv1yjufguMoMJJugwIyXORo3CAQ2uobV1itWMjKznsapbavpvBHsmu?=
 =?us-ascii?Q?yQ+OMrAjffkm5FnnU9qiCjWLNe8917ud8skDdMCN7cuiGrM6wvO+ZbQH8mZz?=
 =?us-ascii?Q?OckRt6bhfhq6iUnyeHaAWU1hGkpwU7FHGyWEgkTE?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: 757939cd-3de9-4f0d-2856-08dd46c40ace
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2025 15:36:36.6138 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /pa2lSTz1PXEP5g7eDmARZIK90flYNusnv69k5uuYxdBVA80mDy/WRnD5tE2LWpe
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYXP286MB5622
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "EZ" == Eli Zaretskii <eliz@HIDDEN> writes:

[...]

    EZ> What is the semantics of this?  If the user closes the lid of
    EZ> the laptop, and that was defined to put the system to sleep,
    EZ> does such "inhibiting" mean the system will not sleep?  If so,
    EZ> I'm not sure this is supported.  Or do you mean to delay sleep
    EZ> which is triggered by prolonged enough lack of activity?

The former.  Here is how it works for logind (which is common for
gnu/linux desktops):

logind, as part of the desktop system,  takes responsibility for sleep
initiated through the desktop: that is, through a lack of activity, an
explicit hibernate command (maybe a keypress or a menu item) or through
a lid switch, for example. When a sleep request is initiated this way,
it is announced through D-Bus (the PrepareForSleep signal); D-Bus also
has methods that can control the behavior. An "Inhibit" method can be
called which inhibits the sleep process, even if the lid is now closed,
for example. (This inhibition can just be a delay, or it can be a full
block depending on the parameters passed to "Inhibit"); as long as the
block is in place the system will not sleep. The "Inhibit" method
returns a file descriptor, and the block remains in force until the file
descriptor is closed.

It is, of course, possible to trigger hibernation outside of the desktop
system (directly to the kernel, for example), and this is not controlled
through D-Bus.

My daily routine involves a laptop moving from home to office, and I
rarely log out of the desktop or shutdown. So I typically just shut the
lid which triggers hibernation, and rely on sleep-wake-mode to manage
gnus network connections and my vpn. I had never bothered inhibiting the
sleep since Emacs was always fast enough to complete in time, but the
right thing is certainly to call the "Inhibit" method. Other systems are
likely different.

Best,
Andy

-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:36:26 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:36:26 2025
Received: from localhost ([127.0.0.1]:58958 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg3vW-0004PL-IN
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:36:26 -0500
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:1546)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1tg3vT-0004P3-Pn
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:36:24 -0500
Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 1E12F80964;
 Thu,  6 Feb 2025 10:36:18 -0500 (EST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1738856177;
 bh=Fjb8vV5nbDLpBeNu7EtPQv+xo8+RDcOZzO6hgUZLfqI=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=Km4gE2LZoaUzaH+5yQsHEaoLhBFOzNFtb1GU/3h/R6CmCpCJz4WCf0MQHc9ZJbCvJ
 6+FspaBIWTI/K49C2HkIY2WSMs6vhWDS+Vnv8ceq1hHMw5mKt/7hsiITswMzq9Wqgk
 x51SCNGbTUkqtztTX3AJ6SPoB3O3UICO2oX7UyW9ZdfxyvQw2iDc+tsbq6/7B+HKWA
 sJK430oSe7sIvzfXgTRnHGueUGYhHgc2I8Oq59HQ15/RiLO7q5ybrQOn6CzXg7Qky8
 1QM6vj81k96oUaFMhGA2l5Rsx41lIWWnH3fGIFaF4E3uYcS06BLOB1nliTeBJvT5Lw
 iG3/NkZ+gNV+Q==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 3C0C480030;
 Thu,  6 Feb 2025 10:36:17 -0500 (EST)
Received: from lechazo (lechon.iro.umontreal.ca [132.204.27.242])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 2802012024D;
 Thu,  6 Feb 2025 10:36:17 -0500 (EST)
From: Stefan Monnier <monnier@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <86a5az6qzm.fsf@HIDDEN> (Eli Zaretskii's message of "Thu, 06 Feb
 2025 17:18:53 +0200")
Message-ID: <jwv34grhywd.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <86a5az6qzm.fsf@HIDDEN>
Date: Thu, 06 Feb 2025 10:36:16 -0500
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL 0.219 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: Andrew Cohen <acohen@HIDDEN>, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> What is the semantics of this?  If the user closes the lid of the
> laptop, and that was defined to put the system to sleep, does such
> "inhibiting" mean the system will not sleep?  If so, I'm not sure this
> is supported.

Don't know about "supported", but failing to sleep when the laptop is
closed can be a major problem (I only experienced the milder versions,
like finding my laptop with an empty battery, or my backpack all dirty
with melted chocolate, but overheating can be a serious issue).

[ Of course, it can also be useful, when the laptop is docked into
  a keyboard+screen station, or when you want to use it as a headless
  server.  ]


        Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:31:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:30:59 2025
Received: from localhost ([127.0.0.1]:58897 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg3qF-0003N0-JC
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:30:59 -0500
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:3089)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1tg3qD-00039D-ON
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:30:58 -0500
Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1])
 by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 3CA4C100066;
 Thu,  6 Feb 2025 10:30:52 -0500 (EST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1738855851;
 bh=5M9ttAbqQJKeBJcpdHA7tTMPlrLOJlixPGAfqkgdYBw=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=fVfkDHz4ZcHEHiNQua5lMyHAbxnNFLVI2gBZRd6BlFCq62C9iFGiGCR9ILEUrUse5
 hkbXxwm6M6TzN2fZKSVD50jflVWQUp2oJKlyPqMF3YEQSIhx3m4NpgqrU4X14IiWBC
 HfkZSBgBf/0x2fEdrspe4pI/FI1myo7p1EM7DufkVS8WyqSIBxYE+bd19WDICvzgxb
 RVomgtduWGVJjO1avEaV9uUlNQFwbdvsGPoQmXkbqQp23ixykX8PfuinFIcBBUzzKn
 Zx8nao+t7+YH7OmG7YvZFBU9WmLUIzWf/twZfrOQ3nbwN3EvAmR51MrW9Lqla6ZWYI
 juMbPJMuL/n/g==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id A6E64100035;
 Thu,  6 Feb 2025 10:30:51 -0500 (EST)
Received: from lechazo (lechon.iro.umontreal.ca [132.204.27.242])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 97C481203B5;
 Thu,  6 Feb 2025 10:30:51 -0500 (EST)
From: Stefan Monnier <monnier@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87jza3thfq.fsf@HIDDEN> (Michael Albinus's message of "Thu, 06
 Feb 2025 12:56:41 +0100")
Message-ID: <jwv8qqjhz06.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN>
Date: Thu, 06 Feb 2025 10:30:47 -0500
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL 0.219 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> insert-special-event is not restricted to the sleep-event event, but
> shall support all special events, finally.

FWIW, that sounds like a useful primitive.


        Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:29:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:29:56 2025
Received: from localhost ([127.0.0.1]:58876 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg3pA-0000y1-CX
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:29:55 -0500
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:59197)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1tg3p4-0000xU-2m
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:29:46 -0500
Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1])
 by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 1930C441A64;
 Thu,  6 Feb 2025 10:29:39 -0500 (EST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1738855778;
 bh=fSzUeS9gfFpq+9hfIKgfZu/mE4UZYMi3SuoDZ1wlb/w=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=TSStGaVauP8e9mS5G94PUmmKtdCa64RFKzuu7AislCGNoa5bVdYyn7dGprIGW1QWi
 QmHPfrgj40xDCpKuR3JJy8vQuVRcqQbd9GzVuuR7mbX9hf481JM7n+jTwvH76IaRif
 HLzAiLTEkLG0xfgz8Rb+bxu7578h/QoGJNhgs7VpcHZSp+mOxTGHGQiJYrasjsCVtD
 VoHDC/sPL5s7wnkKZGvjXqsaIrqkdcKgFHWlvUgdUEkiDGeFV5tp3NZSLjzepeW92U
 zNRAzTOQBCt50E5x47ZBQPufLiTBlWhP+Eus9QejqeKiGnk+EEXr1sI4KNaBBtl3XZ
 8Ss4bDifjdRGg==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 2D29B441A2D;
 Thu,  6 Feb 2025 10:29:38 -0500 (EST)
Received: from lechazo (lechon.iro.umontreal.ca [132.204.27.242])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 19ACF12045A;
 Thu,  6 Feb 2025 10:29:38 -0500 (EST)
From: Stefan Monnier <monnier@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <86lduj7a3q.fsf@HIDDEN> (Eli Zaretskii's message of "Thu, 06 Feb
 2025 10:26:01 +0200")
Message-ID: <jwved0bhz4f.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
Date: Thu, 06 Feb 2025 10:29:27 -0500
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL 0.230 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Thanks, so which of these solutions would you recommend as the
> cleanest and the most convenient/extensible one?

For the "wake", we could make it into an event, but for the "sleep" part
we can't really push this to the event queue because we need to process
it promptly (the system is waiting for an answer).

So I'd go with the hook.


        Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:29:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:29:46 2025
Received: from localhost ([127.0.0.1]:58872 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg3p3-0000xg-Pd
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:29:46 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:34066)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tg3oy-0000xN-Rt
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:29:44 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tg3os-00079p-BS; Thu, 06 Feb 2025 10:29:34 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=Qr0jSIXPgqxLdGfqYYC7xAR7BiSGEbuBsSJyWTfiNEo=; b=E07cINBTIX/P
 5CkvuZEY2MYAcEB2WX95TZel+VlH7HSNzU4Jn/si3CtBR/90Y0dkpn02irDJdjq+6f1/PgluoHCEk
 sDXJ68qMB5NaDuh1tVd/fje8KFySKD/nJai7iH07z+U56CIl/0knIzNz9gdRz9U5W2Zr7HQGtkNtZ
 x+7aDjSNXAidr9eVYJw/oL+dYLMMarODnbTK2HfG+X3xHskbCfva2I/HEo8PBdZUfhfZeHUIbogtt
 2HmTHbBCX3dLAn/a9PWk7wYAahz7HbJwj3zL6JzeWgAFP4Sxd3xHElMk+8+QpNwi+s9dUS+CT1fMV
 SeBw4N0pEDy495hCtht5Yw==;
Date: Thu, 06 Feb 2025 17:29:30 +0200
Message-Id: <868qqj6qhx.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
In-Reply-To: <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
 (message from Ship Mints on Thu, 6 Feb 2025 07:24:37 -0500)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Ship Mints <shipmints@HIDDEN>
> Date: Thu, 6 Feb 2025 07:24:37 -0500
> Cc: 63620 <at> debbugs.gnu.org, eliz@HIDDEN, michael.albinus@HIDDEN, 
> 	monnier@HIDDEN
> 
> The API on macOS would expose a pair of C functions to lisp, one would inhibit sleep, perhaps returning an
> opaque "cookie", the second to revoke the inhibition.

Why would this have to be exposed to Lisp?  We want to make sure the
system doesn't go to sleep until after the function invoked by the
"about to go to sleep" event completes its job and exits, and for that
all we need is to revoke the inhibition once the function exits, no?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 15:19:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 10:19:07 2025
Received: from localhost ([127.0.0.1]:58858 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg3el-0000U3-5A
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:19:07 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:52130)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tg3ei-0000TU-P8
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 10:19:05 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tg3ec-0003me-1j; Thu, 06 Feb 2025 10:18:58 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=aXQjzvjpvtdseQYoQ3vvSy79RrSNNthJ37szC6UXszc=; b=HmwgZvg0iFb3
 1J2vwKifvdcnDHdDeVF0oG9Pj0QES1iWXH2roprwhTHNczn/HYVGz4ot7BW6FU2T1CgfP9AcrPyyN
 gipmWINg67A6udnEA5C2kjpIYFBezfV0lGJeHyRl5CxWDRc1nPuT7Hg9bYYiQgfRQECZFjNzcJ0df
 TDY29sBPNU21K6OiW4y/t+kP5eYHTjvGsxCaB9xc6zA2onWTBgnTxXCxdv8fTMjuLwG5HnptrqlaS
 nPshs5UVG8P6wv81g/wSDNpGanOsKnuZSWPAomAueRofU08ohLgmBQ6GAy0FSMyFixZeVOl7SlQoO
 lVYt3LiqKoO6rqZL+yjerA==;
Date: Thu, 06 Feb 2025 17:18:53 +0200
Message-Id: <86a5az6qzm.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
In-Reply-To: <87ikpn2rjx.fsf@HIDDEN> (message from Andrew Cohen on Thu, 06 Feb
 2025 20:20:18 +0800)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Andrew Cohen <acohen@HIDDEN>
> Cc: Eli Zaretskii <eliz@HIDDEN>,  Michael Albinus <michael.albinus@HIDDEN>,
>   63620 <at> debbugs.gnu.org,  Stefan Monnier <monnier@HIDDEN>
> Date: Thu, 06 Feb 2025 20:20:18 +0800
> 
> I think the remaining big question is how to handle inhibiting sleep
> until the sleep-wake code is finished. With dbus.el its straightforward
> (although I still don't know how to close the file descriptor returned
> from the dbus method in lisp; any help?) but I'm not sure what to do
> with other systems.

What is the semantics of this?  If the user closes the lid of the
laptop, and that was defined to put the system to sleep, does such
"inhibiting" mean the system will not sleep?  If so, I'm not sure this
is supported.  Or do you mean to delay sleep which is triggered by
prolonged enough lack of activity?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 14:53:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 09:53:53 2025
Received: from localhost ([127.0.0.1]:55144 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg3GL-0006nF-6m
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 09:53:53 -0500
Received: from mout.gmx.net ([212.227.15.15]:56603)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tg3GJ-0006mz-VW
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 09:53:52 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738853612; x=1739458412; i=michael.albinus@HIDDEN;
 bh=/DD0BLLLKtFl4+e48ATw74MZU7Km3vVG6X3+K2tuBzQ=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=hyQFDNhHhwb4OzxCvloKHxf8FG/2FjYsDggirldvh2YhJV3j87b5LtnYHaZMzFPM
 g+LuJk5x/dD3ISIuVyUrGdAba2U3qI3Mq6PLbFHyxZ+cJmXbRpPNBJVK+DfUlGP4q
 LlZnPFH45K9+b4IiDboAYQzblH7HvScsxsffJNBseoPUn7y2I35UBpEZq/b9gX4ZC
 Okl3JXNE6Nyvq8iB5TJdfVfPZk2tL+pQIbv0dliRsdnbMkbUbp5cCBVo44Sjfz4wN
 noMFQlBTarR1PEJCJAV7WgJVj6mvpgD7Mf1FI4jgENFugzFJ3piwajz4XUAjuTwuL
 mFgq4bzC8ANe0RGYNg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MNt0M-1u4Boi0m2S-00IEdc; Thu, 06
 Feb 2025 15:53:32 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <CAN+1Hbqyb=8SEPgdoSLYFdEWa3Zqv6t6yEUGkmpHATq96ZEPcA@HIDDEN>
 (Ship Mints's message of "Thu, 6 Feb 2025 09:11:36 -0500")
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
 <87a5aztbav.fsf@HIDDEN>
 <CAN+1Hbqyb=8SEPgdoSLYFdEWa3Zqv6t6yEUGkmpHATq96ZEPcA@HIDDEN>
Date: Thu, 06 Feb 2025 15:53:30 +0100
Message-ID: <87msezp1jp.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:/lXWt41YP9Cijz0rvh1rihNkV4gS0KohViTN48hNBpNb2gLUFC2
 Yp7Q8JiZ8x489DEhE+zMA45LxLihjGBy/u5wYCevyiOVFzXQlYUHE/wGCMHVmNXvZN0M/8E
 yFxyrqUiA6n/FPt1oB1MAu/OOqeSbLvxg2KIOZo8qC99kWMPGzTKaIqU+sYY4BfYcig6fuz
 yR++vfpwN0LMdUhi7fX0Q==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:UwZhjFBDT9A=;2L+ZlyK3A6BMusCuHglA060uEd6
 zsibII803x5TEM4dWKb0fpYYJC/i7T9xa5cbOSzlrntN5ZyaECOQ0ZVxE668Y0bEqRLgU8Hj+
 K/IK/lznYEstjYpUCmjYtU9+lr0SKFQu7XfkA9EhPtKlq9htjRvdDYjiS9zgJmNdrnk0otSVa
 gKSp3ppkUTvuamt6NYfWWA/G4xhIhMIp8HLRIDJsJO6MEx7MljGizqgQCI1P8VEDsUZPkDkWV
 6JJkYRSsdGdkvwHTjJEKvYB1WN8PJXkXwbmGJeNRaDHaQAemzoMcRk5JMr8qX7oOaZrNopAzF
 Q0iBrIbu1pESbtxmxgCKfGJVtTEvN31bA/eH2RFJTYwcRI0+iEabXP2czF51LeqYFrGykoLZk
 TnJ2h+moFbPXiiGzBnjvwSw/TI+ZNY+kI8Auq7EDXXxXh00YQaLtNy5pp19IDgB4LLzWUxjN6
 L6ualXPlbxoMwJhvVYGhK5K7bzU2PWAbLYhRj/vOkzYNijqjt4HofzTfqiW5wQ35xrnGd45RW
 K70ttT0YEOvYnGB6yRHEVRj0nfOmEx3rJ4qlw4Y5fjBQbe6PMcRUU8+EWm/m34oaNwkGHTxk+
 S/OKuSzs0mTnfUF5Kk557dXV4FWpHSnS7kNH3xn8sRk6YReSrIVAfK/YFZ7djzIAbQyP9Bb+o
 zlEbAFspSZK3yzZxH+qWkReU+klGLDygLLU/8jav1bGEUxA5a9e2i1UECSAZSBJHrPMnauZBd
 16ycqfLRVCqE/saAOFY0wU6E2fSEhlNE62hmKSQLW3ERlX8HzYQWvSep/7Hlhe937u/k0BYtx
 +a2e6dCRI+q0I1TFYNah9vX6yF/Np8e6fggfOKclBxJeeLV3xGSbOUHm/RR+qOGWv0mNRd+1+
 ftynG4mX/AZ5cxqyHk/btUcJFKLlFW1anfVyJ2ztK6SwAKQSnBwdNFGvRbQqszCeizibgQm6e
 0+iSfz4rRBtM60iP0/RrOTfewoPrAjFJ5jIGOvf3rSWQrD+GXpmgLv5aJtTQqf4198y5eTa47
 +C6bGhARBfBGYtgwbHqgGLDD7aEfc3Xct4vtJD3/A94FLynpLNPPsvS5aGkCpo6gSQiZae6Oo
 drZsUJJ+BnN5UravAUPScIp2KJdQJgACjJFTlRGNc5dvQoZbxBn7bpqfNsKPo34t621zGjd3h
 nXiVicSMjsXfTMQJWIID9o0GJp1twNs6TXArdazxRlaq01wEzV2y8gpt4n4mcZ116Xyzy0J4E
 lMWwzrxDy2t7UbBKqPVr/5V4i1bmbG6ZXsNUJEep0gVC1SwrpJT4tAQUU5/NbceMePOOEhd2R
 L4UssBAMJIETVoNcJmobLijGjiVA8ysfaK0EmnxbDbfdgNboCVbhqnaZX8MS9+uJFia+kY27z
 Gh/sn8d1g56lh9ojNwn3KdhqDXWJsAnN6xiZ2LA9TRS7Evk17ubANPWgTC
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: Andrew Cohen <acohen@HIDDEN>, 63620 <at> debbugs.gnu.org, eliz@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Ship Mints <shipmints@HIDDEN> writes:

Hi Ship,

> The flow, as I understand it looks like it will be:
>
> 1 OS reports about to sleep
> 2 C code posts an event
> 3 sleep-wake-mode processes the event
> 3a Tell the OS to prevent sleep (has to be done in C)
> 3b Call hooks
> 3c Tell the OS it's now okay to sleep (ditto in C)
>
> It's 3a and 3c that I was referring to.

Thanks, it wasn't clear to me in your message.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 14:13:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 09:13:46 2025
Received: from localhost ([127.0.0.1]:54998 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg2dW-0001aB-At
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 09:13:46 -0500
Received: from mail-ua1-x936.google.com ([2607:f8b0:4864:20::936]:58461)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tg2dT-0001Zr-IK
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 09:13:44 -0500
Received: by mail-ua1-x936.google.com with SMTP id
 a1e0cc1a2514c-866f771cd5bso183106241.0
 for <63620 <at> debbugs.gnu.org>; Thu, 06 Feb 2025 06:13:43 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738851218; x=1739456018; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=4vEE9DAjjL6SxgLisGSVj01IavQn0tIcDojQJ/c/eyI=;
 b=SMGoGTn5G288XtUyQpFjqXMw818ZMz4PSMCNY2B5CrYYUX/m70awO227oCzdQqM3De
 Q70v3H2amsSQho2Oxh7sbQlr4rLAOy6Dt2EdR5lnmwWF/3TVVrb4U4x7Br2H0VOObU8r
 W3YVCD3PQ7fvirwaIiWF5P7m+f8z3rBR+MkDmfD9joLdevBT+ifp4Og18elAEJZKso7b
 hnKIuEvkUARZCizSyhi7wXHd25kBdB2Hjb09rprSijpi8UG+ZrpkWkoNvrn+xJ4isj4q
 dV53RHTybam5W56J3msMM4kbX1oxMVoiwpTOOM4ychrxIaySeB2ez/I8vAyOUI4vlvPX
 4IqQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738851218; x=1739456018;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=4vEE9DAjjL6SxgLisGSVj01IavQn0tIcDojQJ/c/eyI=;
 b=vDU6WUSrOcooHDKVwr3yoO2iwtRqirI1MjWonzKgxv+soWJnHhnZCc3nKqoJnPtC85
 iZO72b7lsGIvaPsA3O/TwQ9/BAMNvQOBpP8uc6lTYBNQhoLeqhFy/NRrthuLJnuO1/4H
 7Vh3zIcwwnCCtcEtgpI/hjTaNW1xixC37xbmBJwIM3NIgP6iweiaH9zl9nECY5D0mJxH
 HF1h+gCAm3CKhozyOrouwKp3KJL4SbnmaLRxwz9CklVFQ/Rmtf7nFg1HZnSq24K09Oxu
 UqF3UaPoxM+kTBZCFQP35/gXZnOHBi+UiddWZtauBNk0Uh9WkItZHQnrnrG1OAJY7++x
 asrQ==
X-Forwarded-Encrypted: i=1;
 AJvYcCXbtQmLtxMODZYPrIOWGye7izLDct8C60xPL2rLqUECYoxD+s3fMQoliJxMMnGWv2UGb66QSQ==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yxeg+0DRXcgfHP3ZTvOxL5UxUm7dQ0aC1ayCQxP+R7pqHMQmGJ0
 oe3zv5eRgOw2bKecA12gHFKgBUfKKusRoaDZH4VPC8GuXKjytkhhMriaH1CS5x9rON4j8haqJSX
 UohE6VhXp4SJz//8h8tZeIqaKxCA=
X-Gm-Gg: ASbGnct/gMYGmphuD3DrVKhvlTYVmYV1RGjVha4mGRyGudF0JSsqgVuLZYzB6miMrqU
 p4+RWnRSEfSCLju7uBig6pwynUXtcDGAHWWZFBzIEVS3JJQVVE7qsmnn5+rJ+H1goHrNcnvRF
X-Google-Smtp-Source: AGHT+IGH96PRMyiA3P0EOBu7lZMfDz/ot6CO/LrXVxbPQpXwhOL9P/ot6ieew9FiaNt9r7IVoRGCEuYMIXC9F/EvxY8=
X-Received: by 2002:a05:6102:5710:b0:4b9:bb36:1d8 with SMTP id
 ada2fe7eead31-4ba47a990cbmr3932112137.16.1738851217874; Thu, 06 Feb 2025
 06:13:37 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
 <87a5aztbav.fsf@HIDDEN>
In-Reply-To: <87a5aztbav.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Thu, 6 Feb 2025 09:11:36 -0500
X-Gm-Features: AWEUYZkUGGMfQJx4ZDiWccbSZmxwAui-VYgfAbIeCeoRFhcuzw4u5pkuwKrEAh0
Message-ID: <CAN+1Hbqyb=8SEPgdoSLYFdEWa3Zqv6t6yEUGkmpHATq96ZEPcA@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Michael Albinus <michael.albinus@HIDDEN>
Content-Type: multipart/alternative; boundary="00000000000028a6a8062d79d992"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: Andrew Cohen <acohen@HIDDEN>, 63620 <at> debbugs.gnu.org, eliz@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--00000000000028a6a8062d79d992
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

The flow, as I understand it looks like it will be:

1 OS reports about to sleep
2 C code posts an event
3 sleep-wake-mode processes the event
3a Tell the OS to prevent sleep (has to be done in C)
3b Call hooks
3c Tell the OS it's now okay to sleep (ditto in C)

It's 3a and 3c that I was referring to.

On Thu, Feb 6, 2025 at 9:09=E2=80=AFAM Michael Albinus <michael.albinus@gmx=
.de>
wrote:

> Ship Mints <shipmints@HIDDEN> writes:
>
> Hi Ship,
>
> > The API on macOS would expose a pair of C functions to lisp, one would
> > inhibit sleep, perhaps returning an opaque "cookie", the second to
> > revoke the inhibition. The same API can be used to prevent macOS from
> > ever sleeping, if the user wanted that.
>
> Why that? If we have the special event sleep-event, you can call
> kbd_buffer_store_event directly in your C source.
>
> The arguments for the sleep-event can be extended as we like, as API.
>
> Best regards, Michael.
>

--00000000000028a6a8062d79d992
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">The flow, as I understand it looks like it will be:</div><div class=3D"g=
mail_default" style=3D"font-family:monospace"><br></div><div class=3D"gmail=
_default" style=3D"font-family:monospace">1 OS reports about to sleep</div>=
<div class=3D"gmail_default" style=3D"font-family:monospace">2 C code posts=
 an event</div><div class=3D"gmail_default" style=3D"font-family:monospace"=
>3 sleep-wake-mode processes the event</div><div class=3D"gmail_default" st=
yle=3D"font-family:monospace">3a Tell the OS to prevent sleep (has to be do=
ne in C)</div><div class=3D"gmail_default" style=3D"font-family:monospace">=
3b Call hooks</div><div class=3D"gmail_default" style=3D"font-family:monosp=
ace">3c Tell the OS it&#39;s now okay to sleep (ditto in C)</div><div class=
=3D"gmail_default" style=3D"font-family:monospace"><br></div><div class=3D"=
gmail_default" style=3D"font-family:monospace">It&#39;s 3a and 3c that I wa=
s referring to.</div></div><br><div class=3D"gmail_quote gmail_quote_contai=
ner"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Feb 6, 2025 at 9:09=E2=
=80=AFAM Michael Albinus &lt;<a href=3D"mailto:michael.albinus@HIDDEN">mich=
ael.albinus@HIDDEN</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote=
" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);=
padding-left:1ex">Ship Mints &lt;<a href=3D"mailto:shipmints@HIDDEN" tar=
get=3D"_blank">shipmints@HIDDEN</a>&gt; writes:<br>
<br>
Hi Ship,<br>
<br>
&gt; The API on macOS would expose a pair of C functions to lisp, one would=
<br>
&gt; inhibit sleep, perhaps returning an opaque &quot;cookie&quot;, the sec=
ond to<br>
&gt; revoke the inhibition. The same API can be used to prevent macOS from<=
br>
&gt; ever sleeping, if the user wanted that.<br>
<br>
Why that? If we have the special event sleep-event, you can call<br>
kbd_buffer_store_event directly in your C source.<br>
<br>
The arguments for the sleep-event can be extended as we like, as API.<br>
<br>
Best regards, Michael.<br>
</blockquote></div>

--00000000000028a6a8062d79d992--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 14:09:33 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 09:09:32 2025
Received: from localhost ([127.0.0.1]:54987 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg2ZQ-0001N4-LF
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 09:09:32 -0500
Received: from mout.gmx.net ([212.227.17.20]:42375)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tg2ZN-0001Mm-OC
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 09:09:30 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738850957; x=1739455757; i=michael.albinus@HIDDEN;
 bh=TkzEGN8MFezgpNwtQ7Vyk3dccxtwI3XLcWZJtKNCftk=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=e5Oy9Us9YPdbefh4lXMhGewQ13IKCq/HAUxakPqw95L+R/zvZE/J0ch7COPvc5n5
 B6Jdso/YJ0bADxA/yyiOy6DmBX38fCPEGzMgD7ONZiCspEo+OinD8MPuTHIQOM20h
 aOahl4yTPoYEcFcT+If7BJQoTO24xNRAaWPMfUY9Hel7jNzBVinlvqN7pSikmXtf7
 T4t7pQYRhkYT+tMQu5bnd1VpFnC8BpzaQtxAtsOHC2VpFT6ONKX82H7ua7d9osAqK
 wizSGRY5h6zcIjtTc2FGKinLVzNmXlGJ+hNL9eh5gCenXyjBSGWZQ4pnvtyMV7auY
 xWqcfn0CAszOSq1WWA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx104
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MdvmY-1t69md1n7O-00j1IO; Thu, 06
 Feb 2025 15:09:17 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
 (Ship Mints's message of "Thu, 6 Feb 2025 07:24:37 -0500")
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
Date: Thu, 06 Feb 2025 15:09:12 +0100
Message-ID: <87a5aztbav.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:jgGkZP1P5Rmc+ZOpUmMuNPCglBJRzIJB0Ou89oh6vvI6w3CTftI
 /wsLefLCx9wxWtxp0raCVxOaTV6K7ZKXZS4OHDbajC5BV6+n/vDdYd3kROjbW6j2zDhCdM8
 OdH3GaC73eZruXiN71IuFIxjUN+1+QZLxgDaTY6z1PZh3/A8TWTedAipkoj+Dq+n3zmC/L1
 pkTuTMoQIMavobO00WD1g==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:GAtaiXEjqaM=;ZwFFWwSOGR2+AzMnwA8uzJBiHyk
 SQ0vqWEDrwAZ/YsXSLy8hdQsJTGZAWgBX9a9lM8njACWapBI4q/6GPkBd3ruuf8+AhJnT38gR
 pSfdtkMt18OHKV6VrOWpnluGlV6MnG3LDkLdOWICfQJG926u0c9Gvi2tMQJxn3pP00fql11xi
 Ib0A3z8pKFf4DqAyVietPJirgDmYcli4MV0mR3wr6AtEMhe04PEU48q5BHG6K4gHyO/fuixr4
 wVm4stPNxocGuO++FrQg5Vj2ZnrTR9n5CA9PPIIdFY36lTmstvo86i6ASLi8TspxL5xn+eRGl
 LUkyLSfINLR59FyDdlF6dU+6qsOqMjTOGn4Ar5FUKNgd7DlnGTKc58TQw8yvi86eV9u7aMEto
 PBJHMXQC106GDAQrfJdDQnDhzBbRX1RmiseEgUEOu0aNzfOW9GvIFoYtIG7WP+ev27wQj+s4P
 Lr+D32xvxZkNJZuIxPXz5SbZ1Q4DAn6gbvIU5rmhxmC3WGi0oLbEAObNgNb840vYR5e/d+nMW
 xnI9176MrysaqLg05MeS3VnEV2OdSGaRVUsImirVuo41nTUb5Roo2odSu0hTbanMXDl0zxKWL
 1CXQc/xfgd+NkP/NuDCgsuueAiq2S6MVpV+sHXSukuLAr6EMR1o0trLBic4hAOQQU37UiryiC
 1Fe96aK/8mlzgxbSUNAzZN349kj96VoKIwwm1sG5P2iOpxeXp66tVJeuK7uSqok24r4zLLgq8
 5sYQlaJvSmZdpWBFCC7SJDDGwikpCTrW6O1DH6QgmmAFRyJpBJPkAPOSbzb/L48Q756Udn/GZ
 ECMnhhJe0yAi5yIciBoCTgOnseK3B/Q0QH9QsgnmPjPYgy8ndv4aRiBiTAvRivEEOl7p4grvz
 KSCzTrA72iCVgmmu/nGEt10tCsUagw5k8wRcVjmKZgjBsy99rLR+nXbpBxgDLstP/+QvVxh23
 v3VesP4dtJwUBlIFjeuLVf0R8cSGvu8Crvf7+8a/eMbd+TpkgqMrRS2ViA0QQcJn1A/5k54nr
 wSKhP5oivmllEuZpAHV7FyffLsB1klQJRLQAxczyupmzZ3fp/33RjP0RHjnqBian3PsB3jDSE
 XnQKe+2VU+RUN4Zq3U+S8CZvgRRyp8XZ3WZbQuUzST63vmHJUhbqHMSTojXd1kf+zKiimN94R
 l0cNRSMIG1KNTRtvlUMuHsJ2IZGQHqzuqt9OOT2Im4YvsY2KKr4DjBcYAyhFL7ExxoG80IFql
 YbRh4UkESzMds1q98Z0hFw4B0wVEBSBr3CjNv9emE8rDTbfhpm3x5gxECqHqYRJJfthlRUFMQ
 aDhytxIo6+/FPBVlniciYuKVqiFunubUfSbzl8jOC4efIwkFb7OxOmxeLaCuUARo4XBs7+Rwd
 NifzKButxFFZa7JEbTa+owmDTvMFSkOZV7t918lbWNX2mrIBdbbe0w6WWV
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: Andrew Cohen <acohen@HIDDEN>, 63620 <at> debbugs.gnu.org, eliz@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Ship Mints <shipmints@HIDDEN> writes:

Hi Ship,

> The API on macOS would expose a pair of C functions to lisp, one would
> inhibit sleep, perhaps returning an opaque "cookie", the second to
> revoke the inhibition. The same API can be used to prevent macOS from
> ever sleeping, if the user wanted that.

Why that? If we have the special event sleep-event, you can call
kbd_buffer_store_event directly in your C source.

The arguments for the sleep-event can be extended as we like, as API.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 14:05:49 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 09:05:48 2025
Received: from localhost ([127.0.0.1]:54980 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg2Vo-0001GV-HM
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 09:05:48 -0500
Received: from mout.gmx.net ([212.227.15.19]:39075)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tg2Vl-0001G7-Ak
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 09:05:46 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738850733; x=1739455533; i=michael.albinus@HIDDEN;
 bh=FPAnZElx+QIELkddK7okExSsYq+EewRbhbKhEE1811k=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=M/8UcbTYwltr+9Nr272i20898v/SvMjuGjJ1a/iExEyfHngtN7TQ56pPGluh9lVh
 R7nKZ7z+fnxuMA9big1+aleMcght3elwR2BQxNeOGnyARaj/ijgLpmiFYKFJKUYoe
 H0DlIjmjesKEviEn9HsFg3UG01xbPiZsNTdwfk+wLUvQ0wUk4Q6kkPrjfh2mL2uR7
 oqls0tGUdwdrnmBot3RxsIYxjIzyjEDmaheVrXOReYDCONdf/wrieKjpV2xKFOnwc
 fwGmvMqNJAfdUavLqdK2iyOB+/XekHvq3osVZ0JzbTw7v9m4IU2e7w6ulQq0BC8hG
 QHlFx+0kJ3e6iJxefw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MacSe-1t9SqN0FHm-00dk1S; Thu, 06
 Feb 2025 15:05:33 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87ikpn2rjx.fsf@HIDDEN> (Andrew Cohen's message of "Thu, 06 Feb
 2025 20:20:18 +0800")
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
Date: Thu, 06 Feb 2025 15:05:27 +0100
Message-ID: <87ed0btbh4.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:g5kT8QwqFJn2QCoc1tJZuQzLxsNc11qe1emTgL4uOtUFQ9OdYx+
 PwyTHt33+f5oJIAGmS7yPerNgJmcf+cqt7Vr8OnmYsd33qIZZ4ITzxIhPfIqVdw7lUa32na
 iM0r0+pI6+HHamPF56ByOpoGaVE0dfauRSF1JaMZZzoAuUbC/X+yp1nktVVqdTW4serTWE7
 GcPFs7Y7KsR48rDNIIjAg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:7+iVW9QmKYA=;epxqvhBYS3ohzqwIGbSNpXmYzqR
 9AWZD7SuqQ90K86AWNTCuCG3RH1qnnXbF+RqjQnmu2g2QVvWW722onfTHP/d4ICqd+EPhpG7e
 46WHukO6P/iDjiBuCCdAs88T/vtlqtKN2WWID69MqYcUlzTJNq0Ox0hMkVMOI/CjgraNhpctb
 VbQ0rhv2o429+OunwQJLj5cfvT9ukuEmv3r3AzyqX8yQHnFgsGruDMQXxf9gofHP8I7seBjFp
 mtk/s6RgeIP/Nw2z2F7o4yjQll0In8mWqiUQO1dqzM/lPqBRDD3bufM025oUZG+LNephgJleD
 eOcVQxQuMlkgf3cvrdPuHImLMDqLfvt0F197APAPuTuGnARjjhwlkVjouDyPYiyOwJBWtqALV
 ElcyMvCmbCWRkMLa351gKXA+f3So7d4Lr5LGahNfooGdxKhCJbWNci/XRNY1svt21nonctiFL
 tvQlfJrFSxMxSIFwbvMo0gYO4MVBpCmxwtzB/WHKwECQfvgDGrWkU06Hfc8DFhNUm2zYf0sMs
 6jqPZl/zODc7VZ3tuGH3f4vRjGqkPFBXZy4ePvgJWcTzGpTssC0W6cMfGXUfM92WZHRfUdDAD
 l2fdbBcPbRH8wdPFjFXmSAvkQEsxdVgu9H1PBT72GcvZhqKDBTEerTQT22BrYF2AI3r+D+LZS
 /OqBQLFH4i77JGEzxcvXlQYrdH4v0bbhT+l6waZhbCUoaayGNHE7+wyHK9PbEextrCfUb8NE4
 QaBXCbSKbvdhX9tffZF3t/v2oS42N4I18sQ/+HBMOtShz3QqSW80/JfANy1yN5uRksPtG9ct8
 0JNkj5XTFfREHgSYFMADdvaYG6t4qnR4mOTbZ3BaXC1XbEm3Ni281/1AJF4K3Lud8JRchVRhK
 AdAwHEGeh3qNOUn0WB/KdLNKFMD76sIWMarDELgtIHv+srra7/CiNoh/68k0AyYW+NDvTh3yR
 +oMB4FKkN2DyIuU8KxvwHBWMTTnYAj++80ahWNb3t8jOKjxn5/LG7SYYeTK4ZGby9oAjSSRL8
 +mdqKoTxq9HyZl++yz9niWzXHhu5ph/k0LVfl8yViFuxJjFD/WaGc0lT4o7pBIMORxPqCVQiv
 HPDJD7epohTI3xGcMeZKYiIGK/2Ne9xDGG0vPcl5MxQFmzKp1ZtqUrjKdIRpwaQaU7vnHV3aW
 tNGWi+vLYSc/Fbhx2iaq+t219Af/sm0Nj1hcPDfbPQ4GEo4gqeo81Fk+klyorKzFYi1NkIufR
 UTLpmtT6WTizzGuLgDgzKj92HtDZDvnh49JiPtzdpFLfLvy/hqUScJgYWXS4Fn+LdkgWbjmFx
 s3egYU0mi3RRdYps5pLXxKdToXv0crva3bv9EdhntJpTbodiwOpZogSO1OZr5eaquG3KDyuWP
 LQa8psH2CSWWGnWc0YGJhqYymVPGp2ph7uvY8wZUi8MeiVajr2Yox3Vb47
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, "Michael Albinus via Bug reports for GNU Emacs,
 the Swiss army knife of
 text editors" <bug-gnu-emacs@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Andrew Cohen <acohen@HIDDEN> writes:

Hi Andrew,

> I would change the initial special-event-map binding to 'ignore, so that
> nothing happens until sleep-wake-mode is activated. My current iteration
> installs the handler in the keymap when the mode is activated and
> sets it to 'ignore when its disabled.

Good idea, I change the patch accordingly.

> I think the remaining big question is how to handle inhibiting sleep
> until the sleep-wake code is finished. With dbus.el its straightforward
> (although I still don't know how to close the file descriptor returned
> from the dbus method in lisp; any help?) but I'm not sure what to do
> with other systems. Somehow  sleep-wake-mode needs to communicate that
> it is OK to release inhibition. I guess one way might be to mimic the
> D-Bus method and include a file descriptor in the sleep-event that
> blocks sleep until the fd is closed. But this seems kind of contrived.

I haven't checked this yet. We will do it once the special-event based
approach is accepted.

> Best,
> Andy

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 6 Feb 2025 14:05:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 09:05:50 2025
Received: from localhost ([127.0.0.1]:54982 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg2Vp-0001Gd-Vh
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 09:05:50 -0500
Received: from lists.gnu.org ([2001:470:142::17]:42974)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tg2Vn-0001GB-Aj
 for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 09:05:47 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <michael.albinus@HIDDEN>)
 id 1tg2Vf-0005ZR-69
 for bug-gnu-emacs@HIDDEN; Thu, 06 Feb 2025 09:05:39 -0500
Received: from mout.gmx.net ([212.227.15.19])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <michael.albinus@HIDDEN>)
 id 1tg2Vc-0007OJ-8r; Thu, 06 Feb 2025 09:05:38 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738850733; x=1739455533; i=michael.albinus@HIDDEN;
 bh=FPAnZElx+QIELkddK7okExSsYq+EewRbhbKhEE1811k=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=M/8UcbTYwltr+9Nr272i20898v/SvMjuGjJ1a/iExEyfHngtN7TQ56pPGluh9lVh
 R7nKZ7z+fnxuMA9big1+aleMcght3elwR2BQxNeOGnyARaj/ijgLpmiFYKFJKUYoe
 H0DlIjmjesKEviEn9HsFg3UG01xbPiZsNTdwfk+wLUvQ0wUk4Q6kkPrjfh2mL2uR7
 oqls0tGUdwdrnmBot3RxsIYxjIzyjEDmaheVrXOReYDCONdf/wrieKjpV2xKFOnwc
 fwGmvMqNJAfdUavLqdK2iyOB+/XekHvq3osVZ0JzbTw7v9m4IU2e7w6ulQq0BC8hG
 QHlFx+0kJ3e6iJxefw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MacSe-1t9SqN0FHm-00dk1S; Thu, 06
 Feb 2025 15:05:33 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87ikpn2rjx.fsf@HIDDEN> (Andrew Cohen's message of "Thu, 06 Feb
 2025 20:20:18 +0800")
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
Date: Thu, 06 Feb 2025 15:05:27 +0100
Message-ID: <87ed0btbh4.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:g5kT8QwqFJn2QCoc1tJZuQzLxsNc11qe1emTgL4uOtUFQ9OdYx+
 PwyTHt33+f5oJIAGmS7yPerNgJmcf+cqt7Vr8OnmYsd33qIZZ4ITzxIhPfIqVdw7lUa32na
 iM0r0+pI6+HHamPF56ByOpoGaVE0dfauRSF1JaMZZzoAuUbC/X+yp1nktVVqdTW4serTWE7
 GcPFs7Y7KsR48rDNIIjAg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:7+iVW9QmKYA=;epxqvhBYS3ohzqwIGbSNpXmYzqR
 9AWZD7SuqQ90K86AWNTCuCG3RH1qnnXbF+RqjQnmu2g2QVvWW722onfTHP/d4ICqd+EPhpG7e
 46WHukO6P/iDjiBuCCdAs88T/vtlqtKN2WWID69MqYcUlzTJNq0Ox0hMkVMOI/CjgraNhpctb
 VbQ0rhv2o429+OunwQJLj5cfvT9ukuEmv3r3AzyqX8yQHnFgsGruDMQXxf9gofHP8I7seBjFp
 mtk/s6RgeIP/Nw2z2F7o4yjQll0In8mWqiUQO1dqzM/lPqBRDD3bufM025oUZG+LNephgJleD
 eOcVQxQuMlkgf3cvrdPuHImLMDqLfvt0F197APAPuTuGnARjjhwlkVjouDyPYiyOwJBWtqALV
 ElcyMvCmbCWRkMLa351gKXA+f3So7d4Lr5LGahNfooGdxKhCJbWNci/XRNY1svt21nonctiFL
 tvQlfJrFSxMxSIFwbvMo0gYO4MVBpCmxwtzB/WHKwECQfvgDGrWkU06Hfc8DFhNUm2zYf0sMs
 6jqPZl/zODc7VZ3tuGH3f4vRjGqkPFBXZy4ePvgJWcTzGpTssC0W6cMfGXUfM92WZHRfUdDAD
 l2fdbBcPbRH8wdPFjFXmSAvkQEsxdVgu9H1PBT72GcvZhqKDBTEerTQT22BrYF2AI3r+D+LZS
 /OqBQLFH4i77JGEzxcvXlQYrdH4v0bbhT+l6waZhbCUoaayGNHE7+wyHK9PbEextrCfUb8NE4
 QaBXCbSKbvdhX9tffZF3t/v2oS42N4I18sQ/+HBMOtShz3QqSW80/JfANy1yN5uRksPtG9ct8
 0JNkj5XTFfREHgSYFMADdvaYG6t4qnR4mOTbZ3BaXC1XbEm3Ni281/1AJF4K3Lud8JRchVRhK
 AdAwHEGeh3qNOUn0WB/KdLNKFMD76sIWMarDELgtIHv+srra7/CiNoh/68k0AyYW+NDvTh3yR
 +oMB4FKkN2DyIuU8KxvwHBWMTTnYAj++80ahWNb3t8jOKjxn5/LG7SYYeTK4ZGby9oAjSSRL8
 +mdqKoTxq9HyZl++yz9niWzXHhu5ph/k0LVfl8yViFuxJjFD/WaGc0lT4o7pBIMORxPqCVQiv
 HPDJD7epohTI3xGcMeZKYiIGK/2Ne9xDGG0vPcl5MxQFmzKp1ZtqUrjKdIRpwaQaU7vnHV3aW
 tNGWi+vLYSc/Fbhx2iaq+t219Af/sm0Nj1hcPDfbPQ4GEo4gqeo81Fk+klyorKzFYi1NkIufR
 UTLpmtT6WTizzGuLgDgzKj92HtDZDvnh49JiPtzdpFLfLvy/hqUScJgYWXS4Fn+LdkgWbjmFx
 s3egYU0mi3RRdYps5pLXxKdToXv0crva3bv9EdhntJpTbodiwOpZogSO1OZr5eaquG3KDyuWP
 LQa8psH2CSWWGnWc0YGJhqYymVPGp2ph7uvY8wZUi8MeiVajr2Yox3Vb47
Received-SPF: pass client-ip=212.227.15.19;
 envelope-from=michael.albinus@HIDDEN; helo=mout.gmx.net
X-Spam_score_int: -27
X-Spam_score: -2.8
X-Spam_bar: --
X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=0.001,
 RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001,
 SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: submit
Cc: 63620 <at> debbugs.gnu.org, "Michael Albinus via Bug reports for GNU Emacs,
 the Swiss army knife of
 text editors" <bug-gnu-emacs@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Andrew Cohen <acohen@HIDDEN> writes:

Hi Andrew,

> I would change the initial special-event-map binding to 'ignore, so that
> nothing happens until sleep-wake-mode is activated. My current iteration
> installs the handler in the keymap when the mode is activated and
> sets it to 'ignore when its disabled.

Good idea, I change the patch accordingly.

> I think the remaining big question is how to handle inhibiting sleep
> until the sleep-wake code is finished. With dbus.el its straightforward
> (although I still don't know how to close the file descriptor returned
> from the dbus method in lisp; any help?) but I'm not sure what to do
> with other systems. Somehow  sleep-wake-mode needs to communicate that
> it is OK to release inhibition. I guess one way might be to mimic the
> D-Bus method and include a file descriptor in the sleep-event that
> blocks sleep until the fd is closed. But this seems kind of contrived.

I haven't checked this yet. We will do it once the special-event based
approach is accepted.

> Best,
> Andy

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 13:09:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 08:09:53 2025
Received: from localhost ([127.0.0.1]:54799 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg1dh-0003ko-5M
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 08:09:53 -0500
Received: from mail-qk1-x729.google.com ([2607:f8b0:4864:20::729]:42139)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tg1df-0003kZ-GI
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 08:09:52 -0500
Received: by mail-qk1-x729.google.com with SMTP id
 af79cd13be357-7b6ed0de64aso73409585a.0
 for <63620 <at> debbugs.gnu.org>; Thu, 06 Feb 2025 05:09:51 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738847386; x=1739452186; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=ppKn/MhJC5T+NivcmbbJ5wAd/Vi9jZNd4CuwBONHxtA=;
 b=PIXeljLkPRrpJteDVnwr//XkrPeRaPbvuJ+N3bPpz5u4S8HEo4M4Yzj0kmUOkrgrcZ
 MP62iTGgRya7X6jIVUJGUebcQ+1rJ+pGgKxEdQF463ceptQWC6XC3IMeBrTXw03dulGi
 64Ch8197fzqvRGBfg703m8StO47COxF1Mwr2PuGlxG74sfeq6ujMvlu+s5QQgJWNKjbn
 nqcoQnbsP1g3Col7v43n+Khs99O70mULv7L2TZ26hGEm6/qZtT2yRoMgec+JXrvShJZT
 c+wAVYEyGkr7oDrKHQjx+UxkXYHjc+M7wI09Ji6mloStmqavw8Iwy9w1w4LEl2k3Z+1X
 lyQg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738847386; x=1739452186;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=ppKn/MhJC5T+NivcmbbJ5wAd/Vi9jZNd4CuwBONHxtA=;
 b=e0yH3uTp1ypzgsBoRTsV2pfbpXVLg3o2xbOteDf9VGrZeOY3jpuPi4HRz2J/s2OkJy
 YaJffCTvKzqUNI8RPvBm5fLE9Gw5MVxNJrQSzMJbn+pXXrSktguYdQB8XJm873NKMXlB
 kmcItJ3OsGQSgiZknBffPDKuZ/rAcLcOINsvCW/ZJvIURMCpp2VUCk/V+WaUPRwMp5NX
 geEGtQJylMFO8hNiIBDpUTOKL+pSgPrebg07+Tu7AgMIx/oKXVLLs+aBLAkFVbjw5vdA
 XWh/Ixi8t/kHnWa3AuVGuD6MaZLUW9iW3gcARtio90Eo3LB3dQuO0lNA0kB1pnx6bjTI
 3p1A==
X-Gm-Message-State: AOJu0Yzfv66W/Ry0XGRlYv47ivrakJ7kVTXTKwBWsM5iD4ig3f2lG9eJ
 lm1+1UXIuVBsXmZ/iWSRZtwqWFQ6oh858lAp43fm1p8VYRQi8DnM1/+5cYkPXlSqSN1ZvWxca6X
 SaW3Xxg4tKBi7vAuU1FnS1rc1Ix8=
X-Gm-Gg: ASbGncswmIInwNBWic82AZN/m6D88yI5YqI4k14ODiRNsQ9JueNh5qEYC7Vj6o3G+ZM
 LbBLXiKe0fESrqr4R20CIGtAc8AxhyHk5bTNRhhLvregK6HtRNbipdUOdNP0Ztym04d6F5NwT
X-Google-Smtp-Source: AGHT+IHs4wINFFbpVBwGjikKHjzq4tVPqAC4yyZCdEb61boiKG5EpS3wdDlzbrl5oY2mQvGRg1Sot4vLEmZzxN1XHXU=
X-Received: by 2002:a05:620a:404e:b0:7be:4f75:fa86 with SMTP id
 af79cd13be357-7c04024ae04mr444929985a.11.1738847385839; Thu, 06 Feb 2025
 05:09:45 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
 <87v7tn1b0s.fsf@HIDDEN>
In-Reply-To: <87v7tn1b0s.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Thu, 6 Feb 2025 08:07:44 -0500
X-Gm-Features: AWEUYZkpxzmmBcZPzsUjMWYtaduz5d8NlS3-f_wCFBTURbZ_FIFsMOFb0jA9FRk
Message-ID: <CAN+1Hbohnii6UeL41q0AyifP+6budQif4c99dFGZJzeVYmePDg@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Andrew Cohen <acohen@HIDDEN>
Content-Type: multipart/alternative; boundary="000000000000c06e54062d78f462"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, eliz@HIDDEN, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--000000000000c06e54062d78f462
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

I prefer using a mode, it seems more idiomatic. Shall this use
cl-defgeneric in sleep-wake-mode that each system can specialize?

On Thu, Feb 6, 2025 at 8:02=E2=80=AFAM Andrew Cohen <acohen@HIDDEN> wrote:

> >>>>> "SM" =3D=3D Ship Mints <shipmints@HIDDEN> writes:
>
>     SM> The API on macOS would expose a pair of C functions to lisp, one
>     SM> would inhibit sleep, perhaps returning an opaque "cookie", the
>     SM> second to revoke the inhibition. The same API can be used to
>     SM> prevent macOS from ever sleeping, if the user wanted that.
>
> Great!
>
> So the idea now is:
>
> Turning on sleep-wake-mode:
>
> 0.  If on a system with D-Bus and logind, we register a signal for
> PrepareForSleep with a handler that generates a synthetic sleep-event on
> state change using Michael's recent insert-special-event.
>
> 1. Install 'sleep-event-handler on the special-event-map for
> [sleep-event].
>
> 'sleep-event-handler will inhibit sleep (with whatever method is
> appropriate for the system); run the function sleep-handler-function
> which is a defcustom defaulting to running the hooks; release the
> inhibition.
>
> 2. disabling sleep-wake-mode removes 'sleep-event-handler from the
> keymap and replaces it with 'ignore.
>
> (alternatively we could ask each system to expose a lisp function or
> variable to turn on and off the generation of sleep-events)
>
> Best,
> Andy
>
>
> --
> Andrew Cohen
>

--000000000000c06e54062d78f462
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">I prefer using a mode, it seems more idiomatic. Shall this use cl-defgen=
eric in sleep-wake-mode that each system can specialize?</div></div><br><di=
v class=3D"gmail_quote gmail_quote_container"><div dir=3D"ltr" class=3D"gma=
il_attr">On Thu, Feb 6, 2025 at 8:02=E2=80=AFAM Andrew Cohen &lt;<a href=3D=
"mailto:acohen@HIDDEN">acohen@HIDDEN</a>&gt; wrote:<br></div><blockquote cl=
ass=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid=
 rgb(204,204,204);padding-left:1ex">&gt;&gt;&gt;&gt;&gt; &quot;SM&quot; =3D=
=3D Ship Mints &lt;<a href=3D"mailto:shipmints@HIDDEN" target=3D"_blank"=
>shipmints@HIDDEN</a>&gt; writes:<br>
<br>
=C2=A0 =C2=A0 SM&gt; The API on macOS would expose a pair of C functions to=
 lisp, one<br>
=C2=A0 =C2=A0 SM&gt; would inhibit sleep, perhaps returning an opaque &quot=
;cookie&quot;, the<br>
=C2=A0 =C2=A0 SM&gt; second to revoke the inhibition. The same API can be u=
sed to<br>
=C2=A0 =C2=A0 SM&gt; prevent macOS from ever sleeping, if the user wanted t=
hat.<br>
<br>
Great!<br>
<br>
So the idea now is:<br>
<br>
Turning on sleep-wake-mode:<br>
<br>
0.=C2=A0 If on a system with D-Bus and logind, we register a signal for<br>
PrepareForSleep with a handler that generates a synthetic sleep-event on<br=
>
state change using Michael&#39;s recent insert-special-event.<br>
<br>
1. Install &#39;sleep-event-handler on the special-event-map for<br>
[sleep-event].<br>
<br>
&#39;sleep-event-handler will inhibit sleep (with whatever method is<br>
appropriate for the system); run the function sleep-handler-function<br>
which is a defcustom defaulting to running the hooks; release the<br>
inhibition.<br>
<br>
2. disabling sleep-wake-mode removes &#39;sleep-event-handler from the<br>
keymap and replaces it with &#39;ignore.<br>
<br>
(alternatively we could ask each system to expose a lisp function or<br>
variable to turn on and off the generation of sleep-events)<br>
<br>
Best,<br>
Andy<br>
<br>
<br>
-- <br>
Andrew Cohen<br>
</blockquote></div>

--000000000000c06e54062d78f462--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 13:02:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 08:02:59 2025
Received: from localhost ([127.0.0.1]:54778 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg1X0-0003RW-Th
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 08:02:59 -0500
Received: from mail-japanwestazlp170100001.outbound.protection.outlook.com
 ([2a01:111:f403:c406::1]:31369
 helo=OS0P286CU011.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tg1Wy-0003R8-F2
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 08:02:57 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=TLCMO+OoR4kTLQ9V7VUEyDfOJNyOa9f8FTp4DYbfN44ut/XCvx5sgjEV/UZxNSqswg6NDtauPY+L5spvCOVi+YucS/TYQwf6Sx4x8GPnagvaO4Dw1wsjMPJ7ScXoBvGqwrlk8/xDYWa0lticySJoD+RR3J/2LEHr/Ou2FsSOj70jJgl8asEwKdsobgZSmSufBgHpNoIzdb1HMzHLV7/jxpEOOo+cdYFqfafw685b8HirX0lZD4PrWiWS7JKS9O+upTNTrmhQbUzjQ9BQGJIR6J+EGCpUpWNjG5BCFQ10vv0WyxPO4eA49+HOixiKT07vQEzU/CmdLFp6wMs70xYVYQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=V26ActGOyoBsNtPcKdZ7iFwWPeNhIgpC/E0iP3FZ1iY=;
 b=jg/Rh8xL2mAxK2vWbz58k8f7u2VcSP8sOTwa3qQhQph/tHW/91dM827MXU2J0zXhHwoUZtsaSbiaa6eB6C81YViBN5M9jrHcu889BWFvyHYHAqip697tqDjDOpry/C5qKt759AAfu1wyfkVVcxS4cZOL0S4kRwzC+suNUwfbJeeoXzM1MF1byTfs9OQgJSIt/Ujt9QuqNlVq0pyFB+ey9UpuYZkE8fO+m5wF5XlaLorR/ULGPdZw9901IG4XJvb3zoWIQWqa7vsUQykGPMYURPcuKGkRIxny549MGKhBdwFNiLOvUtiVawkod6vQpEljtocdTZiFj+XZ3M9YKVrYWA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=V26ActGOyoBsNtPcKdZ7iFwWPeNhIgpC/E0iP3FZ1iY=;
 b=frfSYFqgxLL639UX02MgJnU4tO1ftX3FRZYhNGMBmc74m+5XNeS730+dgCgxG0FKO3wZfgYnRTJBI7JsuS9R6vPXhCaLzOKay6nn0S4/yrbGxnqWoJkN+XZVvgPwfbF18x8Un0zj4MTDsPZGcsAezy5CTuvfyuShrtHnQVvWLM9audxWMjoqeT/igLlHoyMPnf7rkiuPpxDIjkLktnvptS0vwfnF90Zj8XjmvoBBeuuREmOnwoWTgTkLuxqBHOIzUFySlwBrBimT0Ztab5frqCBP31pq0ObpaUKOsnA1opetYS0DwfFZtXXSTloyXPbIUUsDUmC10ccawQeaS51oZw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by OS9P286MB4952.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:2ba::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.25; Thu, 6 Feb
 2025 13:02:46 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Thu, 6 Feb 2025
 13:02:46 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
 <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
Date: Thu, 06 Feb 2025 21:02:43 +0800
Message-ID: <87v7tn1b0s.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: SI2PR04CA0015.apcprd04.prod.outlook.com
 (2603:1096:4:197::21) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|OS9P286MB4952:EE_
X-MS-Office365-Filtering-Correlation-Id: e61a0c38-1b43-4110-e09b-08dd46ae8d4b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?/+oJm+fJkbQyKr01lNLAsaHAW/wQS0Vw4I7K3lU9yW/m7H5QbC5mFKQ/MFjp?=
 =?us-ascii?Q?l7Cleb4psCyf3DpFBkTu+ehkRyKswiW/WoMQaLFheWZYH0HYogXiCXMoSGde?=
 =?us-ascii?Q?Gv8UOHuNeBb2jScuT7TqXyu/McF16ycNus7oaFBeJrL1Ik1wLhBnQgQgU2tG?=
 =?us-ascii?Q?WaevCJ8B3/N+0LC/f1qoW8MMILxoaQRkKHYqiE49D03u4CqqNR5Eqm3ae1ij?=
 =?us-ascii?Q?vRsP3JvXGSR4E6SnJ0hXh5AGNHm1i741ZDzrFTYN0XXuVgIEn/5lXdV4Nk+p?=
 =?us-ascii?Q?6zyIC0x1IB0YkxkxLvsuMRnjxIYUh8X/UPydKjKXhAck4R8dQK3cqmStICNq?=
 =?us-ascii?Q?Q9c9yU30+1xDolJgYANzBuGCHMQ6w9mm9srJb7Q1T6NudBiJhBSLVRIfzxc1?=
 =?us-ascii?Q?sRIrRO2bH3Hbbd6wtU4SgcJ81i/u4o656gml96aC9QQ2N5tb1l0ASCL7NOF6?=
 =?us-ascii?Q?U4KFRc+YVLvak+aAE6mULgRQ3SxJF3zXkXjiNUYv+cmVX/v3kwmOGwcsNGCg?=
 =?us-ascii?Q?svL4fPAN+vAogRBdEMwmS8nMQu5bfTLaQA/wQihXLN5LLcjXqZw3ztG/agqq?=
 =?us-ascii?Q?IieU/Wzd0BUm8mjJAapAjffS4Fj2NK4Ixz084ti1MX7TQCx8AZJIuJfZhoy/?=
 =?us-ascii?Q?gfRtl/Awb69Qfz88O0kKIhywqHTfQhR5zsBYj/LNOxUR/ViG/hCF62KdA1OE?=
 =?us-ascii?Q?U5rXRJlUv9t7l8Lbi5BXIGhVTQLmVLyHr0720bR3a006wWdKk99C8PS6uqWk?=
 =?us-ascii?Q?vVPQfiJbs+XZwBxMP7J3kZ03JPDGwtV6q+AR9laOjQkwS/w67sAIPqYq9wOo?=
 =?us-ascii?Q?tDiv1f2x4SHCIgjpYwjeeGG6XjzbNcjka3cUPtFSajFo4Q7kKMUqm2b3tGTH?=
 =?us-ascii?Q?hb6wK6ewtGCx6LoDgQeiPvNMXm6IpSVz/zxAznNT90JFhBpHAveW6B+LMr2g?=
 =?us-ascii?Q?2Og30kynZzxHhIGbgcEOAcIHaObJ8okUH/IWNstGQRrWDH0+DySSEHeumk2u?=
 =?us-ascii?Q?sOWIHOYJMhGu7KrvDuhhDfYKEIJV2hrAg8T0flOaW5j1zq/4rNC7KxwnAVsx?=
 =?us-ascii?Q?ftpUVut9QjZLXjdaNWg/hFuXik9Qc4Y/ZyiLZ4F3DeJ2w+pHL5tVCY2n+/jT?=
 =?us-ascii?Q?o6mOQ/ni7YavQBqOomaQXf+eAzMVFTIn+o+c/3uQPXkr/411Op9YqK5IseCm?=
 =?us-ascii?Q?8maqQSdKz7CA8qM4bRnFx6HTebmYfP08AGmSV4GD7eTe179WRPD34zblsyEG?=
 =?us-ascii?Q?i83GoLqvxwVSgOptJgdYkxuzkZHQkptfFKJJcKjO06Ij1o5gDzSFK021zEkl?=
 =?us-ascii?Q?isQXEfGIJJ8LZJWtBsntN6KEL5ebp/afdDB54oNfDbtlFn96w/ZFy21PNxbn?=
 =?us-ascii?Q?ItXbBmhhKGjBObS7QfxROzCkwtYg?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(376014)(366016)(1800799024); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?uQIfT55FaOd3DBa9zGZxQ2HMDeuXko/ZoYrT/tGo0+i3+GMmBVKcJr1bnIdy?=
 =?us-ascii?Q?GY1mOody4ig678iMjciMGUqFuUia0UgltteP4uh2QzWPrNqwg3QpzLQOsMis?=
 =?us-ascii?Q?XdvTd1/FZGOxX/xoBt2HmYbpSom0U51Ja9yoKJEVMIKRMf+VJoLxu9g8d9LS?=
 =?us-ascii?Q?ff2aItze1XShr8qXEg5MJBX7kFD/5VadDnoBxc+B9U57LnE9vWkmuG4q5+OH?=
 =?us-ascii?Q?L+YcqfCq2dXcM01j206GDX7jmdkOUYHWdAZRqYsRHhyNQVeyuYe5w+D0sDv5?=
 =?us-ascii?Q?Ejz0u/iDIxgnh/BVQeM2ZyDRJzrbUI1ekU162KQ5wDVKOU6OpU5QAL2QeucV?=
 =?us-ascii?Q?eKVZ3sluRiwLG/RJW6h7H1UkDpjj6pN58cWM0t9tr9k1KzF9ecqJ6R2/unU+?=
 =?us-ascii?Q?F8lIEHsTv3CdpjR2uZHQmoqf62Uz1Me3949T8WG8PVCGKsXaKs/vkeLaGUtQ?=
 =?us-ascii?Q?7EWoYmnp2oAaGD4UKxOTR0j/ldwj0WzmG+kbnECWBHuRJN6XgHDkVAZOvPTF?=
 =?us-ascii?Q?uS8PB66R/LFMzv3ZcxO5N0SpzkefmKv7AyHmbiB+vrayM5ix0lb6gP3u4sW/?=
 =?us-ascii?Q?SelQgjm4RkMa/tG+ZJzfKDwqYfO56de1kc+zscNGY6aEgRu5NQPZpGhZtKCU?=
 =?us-ascii?Q?z3JTxpDCm/1czOZIrTzk7Z3Z1kgVsWEOImWqaUD9nj5AcbnPLfKoxtx356RI?=
 =?us-ascii?Q?rvKOgLwUZvLFFJ9izUPnbdi4KJQ7vZS6bhsr25RG7t69Zgtq7taNA31339Si?=
 =?us-ascii?Q?nvgYc2SYju9Jr4gsJfB1KyWiwBHWgyk7lpzaJrVA3Oi7ZM8wmtCqIAzQNcCA?=
 =?us-ascii?Q?0dXy4XeAYP9XHQxbqz3mG0zVP/sSHML3zUSAHBVVre6PFsW0ZsEk9xHmHuOy?=
 =?us-ascii?Q?MbTnqcBm8w6os4dSTOZ6zb6GAnpGuAnvMPLo0RuC5aJGn7A4pM3HS0OW/ei/?=
 =?us-ascii?Q?EgzdOy4AWUV9x4z35Px+p3119clLO/AaOqeqdWcnVQ0qID1EiOQY96BYmXGr?=
 =?us-ascii?Q?+490keW2r+ZUP3umLZJWyErMajpCNrJ4ooNJLIjL6XuM0jcscT/O6WFeSLoa?=
 =?us-ascii?Q?EyrSkLojb08K/SxnVCmcKeAamreHFOf3as+5+zqC2aidDeV0iazvLQ7YzADM?=
 =?us-ascii?Q?PxjV572W4+30ecwxtIhJpNj27+PX/EN1gvjv3mlrugg6JpoRVSK3RaqC1+j0?=
 =?us-ascii?Q?mztM9IRDj8Q4x7CPFxjoeq0jPno1UgaZhKSDF2AwxyjqqTX/DvP3DyKulwTM?=
 =?us-ascii?Q?hsHzE1dVg6IL4uD/wZxf2OGOrBi/ARcoPiTw7gHNwhgAQGls8U+dGi7sGdMw?=
 =?us-ascii?Q?bOxEc07454AR4SeJep0BPbMjUlm7935yex2/CdfRVJ4P+KKRAdGxpmRWt35K?=
 =?us-ascii?Q?ktql+WprPstuvGVDSrWHj5il1+3xNEqZq5/Fm74zdC7HkFQQT+DTGkHi27TZ?=
 =?us-ascii?Q?nxX5VyF8M1Vm6FG33EHQepQZ5LY7DNKVqL+bPaXkOybN+dvW1CjcB5PN5Sl/?=
 =?us-ascii?Q?/wELNjCqX6erM6dXE6NDOwNSkaYQw3efqHl5X2i4vRamZZbjaJQFD1OTMHUp?=
 =?us-ascii?Q?A3Zk7YQWGnx47dy73OUc8NTh+Fdk3kUu9B1mgt/E?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: e61a0c38-1b43-4110-e09b-08dd46ae8d4b
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2025 13:02:46.6765 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0AaED0sTXxaYylkoW6rol4Cu+43Xx8+MqQ/Ov7kq+YnSwnaxshu8vKwAXiE7+hTG
X-MS-Exchange-Transport-CrossTenantHeadersStamped: OS9P286MB4952
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, eliz@HIDDEN, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "SM" == Ship Mints <shipmints@HIDDEN> writes:

    SM> The API on macOS would expose a pair of C functions to lisp, one
    SM> would inhibit sleep, perhaps returning an opaque "cookie", the
    SM> second to revoke the inhibition. The same API can be used to
    SM> prevent macOS from ever sleeping, if the user wanted that.

Great!

So the idea now is:

Turning on sleep-wake-mode:

0.  If on a system with D-Bus and logind, we register a signal for
PrepareForSleep with a handler that generates a synthetic sleep-event on
state change using Michael's recent insert-special-event.

1. Install 'sleep-event-handler on the special-event-map for
[sleep-event].

'sleep-event-handler will inhibit sleep (with whatever method is
appropriate for the system); run the function sleep-handler-function
which is a defcustom defaulting to running the hooks; release the
inhibition.

2. disabling sleep-wake-mode removes 'sleep-event-handler from the
keymap and replaces it with 'ignore.

(alternatively we could ask each system to expose a lisp function or
variable to turn on and off the generation of sleep-events)

Best,
Andy


-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 12:26:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 07:26:48 2025
Received: from localhost ([127.0.0.1]:54726 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg0xz-0007AL-Lk
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 07:26:48 -0500
Received: from mail-ua1-x930.google.com ([2607:f8b0:4864:20::930]:47195)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tg0xx-0007A1-0B
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 07:26:45 -0500
Received: by mail-ua1-x930.google.com with SMTP id
 a1e0cc1a2514c-866e57ec274so415152241.2
 for <63620 <at> debbugs.gnu.org>; Thu, 06 Feb 2025 04:26:44 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738844799; x=1739449599; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=/T3ltMeKZV7yNPuhhjSwlYJLeplkqm5JC60nMkZRlEw=;
 b=f77+O6Pc4xnqQr0hv/Da5ENcUmrJXIs2Q1AO3Mn8EukXuywq34nCQUZ+U96wPm+x8a
 /GgxEJgzqkpbi1Ku2kU2xGQ8kTCitKdVxcGQbm3UJ7bK3wsi6UytSdLJnLo06Y+YiHV9
 2wila9oqkmmAoVXO5jgiA+YHVT1RG5afLB+DajyuRfWEJHPw9Su8geiFXYQ3JcygjY7/
 H0TSZeCc3kYKiweZZuSft13s1auOvdLuctU6Byc82T5J5fNXxMG1vRG4quc4tKuLRGe0
 fgrWg5mdjRtq5iaLxpyMVghkab7a24dyhdDPycq75qA+5+bd7KNnVUwlmDwqk7BIzCI8
 iKSw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738844799; x=1739449599;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=/T3ltMeKZV7yNPuhhjSwlYJLeplkqm5JC60nMkZRlEw=;
 b=MfgfrBLbE0YasyYThpO39moMHuZ77rPyNkFCb/ChUhIMPQ3RaCKM/bnX2lXl8clwBz
 pdTnthDDVqhnYkzuQWGbMw8FstwrgI7RQL9OlGgkWbIHHvOtCw8WwzQXYxfYrLCrNfpr
 /5StAl9fN/je8OU2LWkOLgWQhi1L8fcXQ6x7hrldmdWPmGFeAE+8xq9g58/ilceZSJKU
 ykkEqjSzIbL3tHUlrr09NNlUHQr0nhniZ3BZPgg7wbLV68xfF/3td1P08v6frePuF3ia
 L4Fk7BPSTU5bmGT7Uj4DD46nvy2+7tCGenIlDCdH8j9vPfPaWtueSt27D58lOSvnSAGV
 Xftg==
X-Gm-Message-State: AOJu0YzT42QBxvRa5L0tWS65ZxqJpNzQB08q17mgvas7axBHW5WAYXpz
 Ez9VH0CsCWCLtxsHjPcQ6/f3ATpYZxXtHwp3VTJwI3pkaON+fJi1dN5HLR3TX1Qw3v5kA2zGLde
 LUa40PNeXhaNyDBfBq4F6/lLC274=
X-Gm-Gg: ASbGncuDfWocg3hCbFauNqJmIfUp1aDQO6QtoWzFLLfJx9vnBI8RiW73DZcqbHwcOGB
 08Qqodo2L1lxuqWStuIdfzFIdEIxwR5Qyqq1aaiPN14/O9yVcPcbD6lYpfid8kw10uMY0hJ+R
X-Google-Smtp-Source: AGHT+IE058KlTS+C6nseVXyG8r8/+Qo1F2nS4dFI86ja6qVhzlkruIZD5qxLXR1QbE6PQERKuStSuQfXIaMDgog1HtE=
X-Received: by 2002:a05:6122:1818:b0:50d:6a43:d525 with SMTP id
 71dfb90a1353d-51f0c3da72dmr3617823e0c.1.1738844799182; Thu, 06 Feb 2025
 04:26:39 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN> <87ikpn2rjx.fsf@HIDDEN>
In-Reply-To: <87ikpn2rjx.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Thu, 6 Feb 2025 07:24:37 -0500
X-Gm-Features: AWEUYZm9wiLNXk9jtkNH4msx9XQATf-pfoHfQdArQzHhdpNw7OO2Yc6IrS8FtCA
Message-ID: <CAN+1Hbofhk=VJKQ0HRKrxX4PiHDjgDSS_BardXNt2wrbyHa2bQ@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Andrew Cohen <acohen@HIDDEN>
Content-Type: multipart/alternative; boundary="000000000000933138062d785abe"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, eliz@HIDDEN, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--000000000000933138062d785abe
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

The API on macOS would expose a pair of C functions to lisp, one would
inhibit sleep, perhaps returning an opaque "cookie", the second to revoke
the inhibition. The same API can be used to prevent macOS from ever
sleeping, if the user wanted that.

On Thu, Feb 6, 2025 at 7:21=E2=80=AFAM Andrew Cohen <acohen@HIDDEN> wrote:

> >>>>> "MA" =3D=3D Bug reports for GNU Emacs, the Swiss army knife of text
> editors <Michael> writes:
>
> [...]
>
>     MA> I'm against to touch the D-Bus code because of this. Unneeded
>     MA> dependency.
>
>     MA> I've assembled a POC patch (appended), which adds the
>     MA> sleep-event special event to special-event-map, and which adds a
>     MA> new function insert-special-event, all on C level. With this,
>     MA> I'm able to eval in the *scratch* buffer
>
>     MA> (defun sleep-handle-event (event) (declare (completion ignore))
>     MA> (interactive "e") (message "Event arrived: %S" event))
>
>     MA> (insert-special-event '(sleep-event t))
>
>     MA> insert-special-event is not restricted to the sleep-event event,
>     MA> but shall support all special events, finally.
>
>     MA> Comments?
>
>
> I personally like this approach (but what do I know?)
>
> I would change the initial special-event-map binding to 'ignore, so that
> nothing happens until sleep-wake-mode is activated. My current iteration
> installs the handler in the keymap when the mode is activated and
> sets it to 'ignore when its disabled.
>
> I think the remaining big question is how to handle inhibiting sleep
> until the sleep-wake code is finished. With dbus.el its straightforward
> (although I still don't know how to close the file descriptor returned
> from the dbus method in lisp; any help?) but I'm not sure what to do
> with other systems. Somehow  sleep-wake-mode needs to communicate that
> it is OK to release inhibition. I guess one way might be to mimic the
> D-Bus method and include a file descriptor in the sleep-event that
> blocks sleep until the fd is closed. But this seems kind of contrived.
>
> Best,
> Andy
> --
> Andrew Cohen
>
>
>
>

--000000000000933138062d785abe
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">The API on macOS would expose a pair of C functions to lisp, one would i=
nhibit sleep, perhaps returning an opaque &quot;cookie&quot;, the second to=
 revoke the inhibition. The same API can be used to prevent macOS from ever=
 sleeping, if the user wanted that.</div></div><br><div class=3D"gmail_quot=
e gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Feb =
6, 2025 at 7:21=E2=80=AFAM Andrew Cohen &lt;<a href=3D"mailto:acohen@HIDDEN=
">acohen@HIDDEN</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);pad=
ding-left:1ex">&gt;&gt;&gt;&gt;&gt; &quot;MA&quot; =3D=3D Bug reports for G=
NU Emacs, the Swiss army knife of text editors &lt;Michael&gt; writes:<br>
<br>
[...]<br>
<br>
=C2=A0 =C2=A0 MA&gt; I&#39;m against to touch the D-Bus code because of thi=
s. Unneeded<br>
=C2=A0 =C2=A0 MA&gt; dependency.<br>
<br>
=C2=A0 =C2=A0 MA&gt; I&#39;ve assembled a POC patch (appended), which adds =
the<br>
=C2=A0 =C2=A0 MA&gt; sleep-event special event to special-event-map, and wh=
ich adds a<br>
=C2=A0 =C2=A0 MA&gt; new function insert-special-event, all on C level. Wit=
h this,<br>
=C2=A0 =C2=A0 MA&gt; I&#39;m able to eval in the *scratch* buffer<br>
<br>
=C2=A0 =C2=A0 MA&gt; (defun sleep-handle-event (event) (declare (completion=
 ignore))<br>
=C2=A0 =C2=A0 MA&gt; (interactive &quot;e&quot;) (message &quot;Event arriv=
ed: %S&quot; event))<br>
<br>
=C2=A0 =C2=A0 MA&gt; (insert-special-event &#39;(sleep-event t))<br>
<br>
=C2=A0 =C2=A0 MA&gt; insert-special-event is not restricted to the sleep-ev=
ent event,<br>
=C2=A0 =C2=A0 MA&gt; but shall support all special events, finally.<br>
<br>
=C2=A0 =C2=A0 MA&gt; Comments?<br>
<br>
<br>
I personally like this approach (but what do I know?)<br>
<br>
I would change the initial special-event-map binding to &#39;ignore, so tha=
t<br>
nothing happens until sleep-wake-mode is activated. My current iteration<br=
>
installs the handler in the keymap when the mode is activated and<br>
sets it to &#39;ignore when its disabled.<br>
<br>
I think the remaining big question is how to handle inhibiting sleep<br>
until the sleep-wake code is finished. With dbus.el its straightforward<br>
(although I still don&#39;t know how to close the file descriptor returned<=
br>
from the dbus method in lisp; any help?) but I&#39;m not sure what to do<br=
>
with other systems. Somehow=C2=A0 sleep-wake-mode needs to communicate that=
<br>
it is OK to release inhibition. I guess one way might be to mimic the<br>
D-Bus method and include a file descriptor in the sleep-event that<br>
blocks sleep until the fd is closed. But this seems kind of contrived.<br>
<br>
Best,<br>
Andy<br>
-- <br>
Andrew Cohen<br>
<br>
<br>
<br>
</blockquote></div>

--000000000000933138062d785abe--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 12:20:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 07:20:39 2025
Received: from localhost ([127.0.0.1]:54682 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg0rz-0006kX-4T
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 07:20:38 -0500
Received: from mail-japanwestazlp170100001.outbound.protection.outlook.com
 ([2a01:111:f403:c406::1]:46833
 helo=OS0P286CU011.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tg0rw-0006kC-3w
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 07:20:33 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=oIkdSxrFwID964O88wyInCnzTI5JLGuX+r43f7GEGzK2/1N65+iVWyQ93o/2UIOTX1qZQaZrMrt+SqFYXNqhSBUBX+BK6u/CMeGtCxw4fulwm6ma7q6bGBs0oudL7Wer35wr9fiIrTqeCkhGMAZBfXfipgE8vQlVBdH57Swxf1kmd3b8mWP97VeR3XFISPmmKZq/Z5OtTyiim+5NJzaQfauRZv6MHICK7X6OeB7WtRLqlfi1pVRuVtIB26eyfJcC/MkZ+9qMPT1vJtj/bHtMcs99prKP8GAYGWsNj8uOEx2BU0jmF6MXq4A5le8pXojzl78+7I0Mi7ygHKJgZRZDaw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZdUQtAbvb9c1FJR/v5H310R4RXjrZW2I5Mh+SLzVICU=;
 b=de9m+DpGrcVwTeKLKgfNibEIi75HUyqAO2YJgp75T73CxDKNbrq54+LoImUPikc8KvrAvNbhQ4r/wolLsmZna6d24uD+wvGgNm/ozF7uCVirGQNRx3CoJWU1iJ2DBsoQ0Y+A3XToYNXRASLv6yjyVhxZqaeW2UdShBx/eLSJcwjzwG9Q6OW+Wa/HnDTLZQMwCJpW1vjYNF3+2ZWSBSeGUuSMvajrMp2jfX0WdrTFYUakC+UTWxtRFZqkmdHInSKTL+bKmkW+whtVAZPtdJ0Lt2fDMJPY7KiszP7i417uS9MVk4kWk0oPn7l4AN5khpvGZ0s+zicBc/X8CrE3cVzqUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZdUQtAbvb9c1FJR/v5H310R4RXjrZW2I5Mh+SLzVICU=;
 b=o90ejIxhNAZgCZ/ZyGQ9Is7T5pKDtlVvLh2mNYbqgmSE/BGrQg/68UUTT7mok/KSKTko168v/iaJWHxyenSuShg96lh9VccALW9AiTQ6VdzG+jyNSsPF2sZgvaGJK2L3sLQPabD3GDTb/BhfCwwZyRDMAq6+N5BbSuAYotcDWRgEmJkYckm6PvDGq0b5A9ESypz0jrMDrGa6Gzf1jTC7W9aEM3lktKXxy4cCZp8rbmzhUDh8RnpGcNQ1bOyQ9xLOL8/gXwAqC3YYwE8U8IgowXyJQwITs4mNLQGNHvV9byq6XWbH6NXe2VHFHENwMNeRyhkBps0HZ4gXDlqw1FkOSA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by TYTP286MB4086.JPNP286.PROD.OUTLOOK.COM (2603:1096:405:185::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.11; Thu, 6 Feb
 2025 12:20:22 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Thu, 6 Feb 2025
 12:20:22 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Michael Albinus via "Bug reports for GNU Emacs, the Swiss army knife of
 text editors" <bug-gnu-emacs@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87jza3thfq.fsf@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN>
Date: Thu, 06 Feb 2025 20:20:18 +0800
Message-ID: <87ikpn2rjx.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: KL1PR01CA0022.apcprd01.prod.exchangelabs.com
 (2603:1096:820::34) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|TYTP286MB4086:EE_
X-MS-Office365-Filtering-Correlation-Id: fb3a21a8-735e-4f86-dafb-08dd46a8a0ac
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?I1nAdGuLsWA61WJ/UHSkSNNoR2R1INPLdMIcX6jsoEzf7hU0trqn0AeaWMXu?=
 =?us-ascii?Q?k+msPhValjEoVw4O39eWoVuKBXcbleIYb5FvBe7QSOxGNBYyW7idmF2CrLv2?=
 =?us-ascii?Q?G7jeWlOpcxuDR9tvpNsk8woQjULwcQ/Zi1MeMsMbcjk60qt5UYQPP/YfHClH?=
 =?us-ascii?Q?gPTI4SWJwNsJ//fAV9nWkirE4DZsAG58fs9/PjJNSyTePVYVnw4jDm25MbSM?=
 =?us-ascii?Q?F5mSN49ooC2JjJeAs2m58E7DXMME3Wdaw9bLbY8Y16dFFRE/FGcP1KwsQ5hx?=
 =?us-ascii?Q?fC74HIDTOFY8jQvQxvrTg7PeSro1Si5yjZKzBzs/Vqa+xfsgmSW33rt3sHvj?=
 =?us-ascii?Q?MZBtowaFdcmV8RsDWQRP7i/UJ9GZ0ZAdnEXcjIvx8z3/P15klcMmAZquD4gx?=
 =?us-ascii?Q?/b4aaSZ8aA25JspxKL+lnnyMXSCD7MVNNaSMOiomvbN38hPbmcxcaSMHeRva?=
 =?us-ascii?Q?zS06F8G6K4b9XUmxnZYJXXF2FUcP3u5NCoeycJiAjmOmFwXtXpfIiOSFL05D?=
 =?us-ascii?Q?0BES5TbXCDcaGxxWmBBSFmPaIoRTzMM0I1vygTNHQNyOMdsN/s/BnTYsaz/a?=
 =?us-ascii?Q?OT9UvHpkO/uEWr3ux+vg0/q55+zPpOGVIar9DpDtEcy+DYeWb/rj7cpjfhcI?=
 =?us-ascii?Q?zDpV0hvVe+3Qu4m/rdCxqg3YXJJRS9f4efFlqdjykT2yBM7NhWX5QoLEB2rx?=
 =?us-ascii?Q?9Xqq/vPWG1e+n+KYPh6D9Xu5ScL6/gzoIyKOZAN3S2+f5cHLxORJQxeUbjiR?=
 =?us-ascii?Q?0NhwNf36ZmhhuI24xuoNciKoh0SOjUpHMQ0/gmav+kti/G4EDx12+3+Ockli?=
 =?us-ascii?Q?vFW2GSzP7q6Hz3Xs901CTgGffksA9o7ykxaThVmw4ysQzETDP9YLyJUfe9WX?=
 =?us-ascii?Q?A8PztioB/HNk31jpHjghkO4dmlQI84Bc2VTvKi23T9vPEI7k3BVbxqt3Ewb7?=
 =?us-ascii?Q?UsxGggw6/2cIqDmVOyopigdh6NSvYc2AsEb7OxpEs0m41WG7Xx4Gg0tGzZQ3?=
 =?us-ascii?Q?1f+DOnpY3jvdyJdzui9cUFI5PLHl0qb9v71k2W8EEJcpJmQLyEb6nSGj7V8B?=
 =?us-ascii?Q?ooGfmZFwwgT/sqtBd2hOSYGtP4K4EGMUGwuoIdCAmh0PoynTQ3wcPKERnYl3?=
 =?us-ascii?Q?efIxfCAFHb+nvzGMIk+AIW/sLHqfd6sXM7dHYm2AXR3F8bFStJRqs9CZ7x4J?=
 =?us-ascii?Q?5acOG/WvF+B+E3WtKQEoCmYIV/yPD/oX3wM7UDPErXZFiVhKQIiB1GSqDOvM?=
 =?us-ascii?Q?1jW2LmuoUdfCdgbvfxUItYcyZ1oxKJSDypEzS2CEQE5ejQJtoD5QfjHPjkA+?=
 =?us-ascii?Q?7aAH8F4hylKtMsowvmUoGeJnHxYVgUUMsOA2Y1unsrJaCWbZqG4Zy80HnDVM?=
 =?us-ascii?Q?qk2hPW14/TRKCba2fb18Iu+6uyat?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?VK2FdwBZFJgeuMMFYJxLdbAK5e5cJPhGxGo94hAGph/rsSX27oFlK4uF9EYx?=
 =?us-ascii?Q?fwXs9skpbsQFTCfH9lp/Dh7KvEzxk/vX+gvk4CGgsLzo7d4EhDWY6t/s0R8x?=
 =?us-ascii?Q?ktz73sj+jT0fmvSfnpDDksk9i8+tt3Z3csZ4tpDdL0U/s87Iw+CT8W6MdBil?=
 =?us-ascii?Q?o34ed+WD3G8tLusa7sAMYylroU7spqWu3NsddZmPNOhJl0ZgF3E4ljTQkLs1?=
 =?us-ascii?Q?ROBQj+nxwzdLs4zJMvlP5CZyksOCAoNjQJBrYVu9w4kB1Huq8pO6Vaeig5cZ?=
 =?us-ascii?Q?wAb0vzSJXqnJG22X1PNuSDjfkQArPnzVc5j2ehmlOmdz8h43T3R1qunptuux?=
 =?us-ascii?Q?crk5VE9VgSO0wdJgkfiLOtCt7iePxZZu/GLCtrUeunowgYKJbdXYM0eUNr8P?=
 =?us-ascii?Q?huNXxhNi3EsPkeQFwx2ttFzzzeXGCPk1oqoLi1gD2ZVklWrp/Dtven2MIoSm?=
 =?us-ascii?Q?sRILlSUtzgvkQUZHlHq5B9HpyfmcthMbeIOi4ZKhttoj7+xswHsOdkSwyE51?=
 =?us-ascii?Q?z/QyqeTwN9KXp9/FP0yIaaYXwXjKsGsIE+XDQr+xmFXAXmNG9HlUMIIGPY34?=
 =?us-ascii?Q?hN4GjOO7oVCbVQ5qhgIWCrA9jn5RJ2O3JmSiGHY/A2Y6qb/a9wU3CSQ1AbVb?=
 =?us-ascii?Q?Zzibl1EZZOIOGqrGHgi0G6EueB7F4EZGb8/2GgWIgggc8/HbcLTOlG/sjg2b?=
 =?us-ascii?Q?qHN6ul3h71IX8kdwZsFME/JMteWGmU+75yj/g6Idvj4Qo0Z7tR6KwCqZmi8P?=
 =?us-ascii?Q?tuU8vF9NjolUIVlDw+S09bqF4UxoxIZbjDU5QKFKqDgoSNQASaF183tPjRHf?=
 =?us-ascii?Q?Uv0P3I6+XNpvUA6+dEso/hdXY+w1yQfewVSPJV5kGfdIom72lJiqDTiT8JjX?=
 =?us-ascii?Q?8vhZoCg2FWAfUrVtjo48Toj/vlRZnV/Hvn3OV0FXBDo7qfRnPnUyCykeqLp2?=
 =?us-ascii?Q?Ks+LUs8vFstPSuKoUfv7e+NHRmztewq65/BWyWjIt1YvNP7+2QsYf2mTLzR5?=
 =?us-ascii?Q?lI+4cPxL6yA9txNlKPtH9/HVgh9PoNDczwiuZ/UoLLUcw18bFxifvuyiajRd?=
 =?us-ascii?Q?Mr9SJD8Qu+4fLbKUhkjYhdD2kyKTI3ZCKjzVSlTsKZCNuEyyYtJOjQd7amDz?=
 =?us-ascii?Q?KGTrxW2FSzNK32KxVBjRnFfrfawb9MClF20c8fDKOGS0HcKC7ZI/Xw937DKO?=
 =?us-ascii?Q?4j6Q38ERcoR93R32+yeM9HPuzws1mZfIyPHoqb3KEOvj1WLPHKiGzoyL18Xw?=
 =?us-ascii?Q?IpyTBg/phBhT/GCCsZ/EoO0W97qQp60ZGYaeoZQvCLNLHA0fzEI4ihxkiSA4?=
 =?us-ascii?Q?S2dL/ssCmMQiNozw08VyytmQs1T2iz6jj7u4w8Kr9uxencFDxjP6Pqvm7fLF?=
 =?us-ascii?Q?dJgpB08wDVWAAeeJzjSIN4c4yNNP6SS8hYrBTAacNG9D8xVC/7FGS1FTlkvn?=
 =?us-ascii?Q?nbbunPsxr7FGVwDyhI35FvZfP/9PGyNs5TttHEvD/f6EO5x6Vi6aEp7sFuuN?=
 =?us-ascii?Q?Y4p4pqw+VYUzLNVmvjOQot7Tz1GS6J/vaJDfzyRZTobaDb1tkzpVG2VIDTam?=
 =?us-ascii?Q?KgjI1c6Ha+5tPs9mETC+eEGkeXUD8+PzDVY2HySA?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: fb3a21a8-735e-4f86-dafb-08dd46a8a0ac
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2025 12:20:22.2412 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jSp5mlQ1SttKhOIccRQNjy/tJFqVZnEHSJtSQK5vA+QVbGVZecxeaeKiggcgppA9
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYTP286MB4086
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>,
 Michael Albinus <michael.albinus@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "MA" == Bug reports for GNU Emacs, the Swiss army knife of text editors <Michael> writes:

[...]

    MA> I'm against to touch the D-Bus code because of this. Unneeded
    MA> dependency.

    MA> I've assembled a POC patch (appended), which adds the
    MA> sleep-event special event to special-event-map, and which adds a
    MA> new function insert-special-event, all on C level. With this,
    MA> I'm able to eval in the *scratch* buffer

    MA> (defun sleep-handle-event (event) (declare (completion ignore))
    MA> (interactive "e") (message "Event arrived: %S" event))

    MA> (insert-special-event '(sleep-event t))

    MA> insert-special-event is not restricted to the sleep-event event,
    MA> but shall support all special events, finally.

    MA> Comments?


I personally like this approach (but what do I know?)

I would change the initial special-event-map binding to 'ignore, so that
nothing happens until sleep-wake-mode is activated. My current iteration
installs the handler in the keymap when the mode is activated and
sets it to 'ignore when its disabled.

I think the remaining big question is how to handle inhibiting sleep
until the sleep-wake code is finished. With dbus.el its straightforward
(although I still don't know how to close the file descriptor returned
from the dbus method in lisp; any help?) but I'm not sure what to do
with other systems. Somehow  sleep-wake-mode needs to communicate that
it is OK to release inhibition. I guess one way might be to mimic the
D-Bus method and include a file descriptor in the sleep-event that
blocks sleep until the fd is closed. But this seems kind of contrived.

Best,
Andy
-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 6 Feb 2025 12:20:40 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 07:20:40 2025
Received: from localhost ([127.0.0.1]:54686 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg0s4-0006ky-1K
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 07:20:40 -0500
Received: from lists.gnu.org ([2001:470:142::17]:60676)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tg0s1-0006kL-4r
 for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 07:20:38 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <acohen@HIDDEN>) id 1tg0rt-0007zQ-Na
 for bug-gnu-emacs@HIDDEN; Thu, 06 Feb 2025 07:20:30 -0500
Received: from mail-japaneastazon11021136.outbound.protection.outlook.com
 ([52.101.125.136] helo=TYVP286CU001.outbound.protection.outlook.com)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <acohen@HIDDEN>)
 id 1tg0rr-0007K3-PF; Thu, 06 Feb 2025 07:20:29 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=oIkdSxrFwID964O88wyInCnzTI5JLGuX+r43f7GEGzK2/1N65+iVWyQ93o/2UIOTX1qZQaZrMrt+SqFYXNqhSBUBX+BK6u/CMeGtCxw4fulwm6ma7q6bGBs0oudL7Wer35wr9fiIrTqeCkhGMAZBfXfipgE8vQlVBdH57Swxf1kmd3b8mWP97VeR3XFISPmmKZq/Z5OtTyiim+5NJzaQfauRZv6MHICK7X6OeB7WtRLqlfi1pVRuVtIB26eyfJcC/MkZ+9qMPT1vJtj/bHtMcs99prKP8GAYGWsNj8uOEx2BU0jmF6MXq4A5le8pXojzl78+7I0Mi7ygHKJgZRZDaw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZdUQtAbvb9c1FJR/v5H310R4RXjrZW2I5Mh+SLzVICU=;
 b=de9m+DpGrcVwTeKLKgfNibEIi75HUyqAO2YJgp75T73CxDKNbrq54+LoImUPikc8KvrAvNbhQ4r/wolLsmZna6d24uD+wvGgNm/ozF7uCVirGQNRx3CoJWU1iJ2DBsoQ0Y+A3XToYNXRASLv6yjyVhxZqaeW2UdShBx/eLSJcwjzwG9Q6OW+Wa/HnDTLZQMwCJpW1vjYNF3+2ZWSBSeGUuSMvajrMp2jfX0WdrTFYUakC+UTWxtRFZqkmdHInSKTL+bKmkW+whtVAZPtdJ0Lt2fDMJPY7KiszP7i417uS9MVk4kWk0oPn7l4AN5khpvGZ0s+zicBc/X8CrE3cVzqUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZdUQtAbvb9c1FJR/v5H310R4RXjrZW2I5Mh+SLzVICU=;
 b=o90ejIxhNAZgCZ/ZyGQ9Is7T5pKDtlVvLh2mNYbqgmSE/BGrQg/68UUTT7mok/KSKTko168v/iaJWHxyenSuShg96lh9VccALW9AiTQ6VdzG+jyNSsPF2sZgvaGJK2L3sLQPabD3GDTb/BhfCwwZyRDMAq6+N5BbSuAYotcDWRgEmJkYckm6PvDGq0b5A9ESypz0jrMDrGa6Gzf1jTC7W9aEM3lktKXxy4cCZp8rbmzhUDh8RnpGcNQ1bOyQ9xLOL8/gXwAqC3YYwE8U8IgowXyJQwITs4mNLQGNHvV9byq6XWbH6NXe2VHFHENwMNeRyhkBps0HZ4gXDlqw1FkOSA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by TYTP286MB4086.JPNP286.PROD.OUTLOOK.COM (2603:1096:405:185::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.11; Thu, 6 Feb
 2025 12:20:22 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Thu, 6 Feb 2025
 12:20:22 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Michael Albinus via "Bug reports for GNU Emacs, the Swiss army knife of
 text editors" <bug-gnu-emacs@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87jza3thfq.fsf@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
 <87jza3thfq.fsf@HIDDEN>
Date: Thu, 06 Feb 2025 20:20:18 +0800
Message-ID: <87ikpn2rjx.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: KL1PR01CA0022.apcprd01.prod.exchangelabs.com
 (2603:1096:820::34) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|TYTP286MB4086:EE_
X-MS-Office365-Filtering-Correlation-Id: fb3a21a8-735e-4f86-dafb-08dd46a8a0ac
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?I1nAdGuLsWA61WJ/UHSkSNNoR2R1INPLdMIcX6jsoEzf7hU0trqn0AeaWMXu?=
 =?us-ascii?Q?k+msPhValjEoVw4O39eWoVuKBXcbleIYb5FvBe7QSOxGNBYyW7idmF2CrLv2?=
 =?us-ascii?Q?G7jeWlOpcxuDR9tvpNsk8woQjULwcQ/Zi1MeMsMbcjk60qt5UYQPP/YfHClH?=
 =?us-ascii?Q?gPTI4SWJwNsJ//fAV9nWkirE4DZsAG58fs9/PjJNSyTePVYVnw4jDm25MbSM?=
 =?us-ascii?Q?F5mSN49ooC2JjJeAs2m58E7DXMME3Wdaw9bLbY8Y16dFFRE/FGcP1KwsQ5hx?=
 =?us-ascii?Q?fC74HIDTOFY8jQvQxvrTg7PeSro1Si5yjZKzBzs/Vqa+xfsgmSW33rt3sHvj?=
 =?us-ascii?Q?MZBtowaFdcmV8RsDWQRP7i/UJ9GZ0ZAdnEXcjIvx8z3/P15klcMmAZquD4gx?=
 =?us-ascii?Q?/b4aaSZ8aA25JspxKL+lnnyMXSCD7MVNNaSMOiomvbN38hPbmcxcaSMHeRva?=
 =?us-ascii?Q?zS06F8G6K4b9XUmxnZYJXXF2FUcP3u5NCoeycJiAjmOmFwXtXpfIiOSFL05D?=
 =?us-ascii?Q?0BES5TbXCDcaGxxWmBBSFmPaIoRTzMM0I1vygTNHQNyOMdsN/s/BnTYsaz/a?=
 =?us-ascii?Q?OT9UvHpkO/uEWr3ux+vg0/q55+zPpOGVIar9DpDtEcy+DYeWb/rj7cpjfhcI?=
 =?us-ascii?Q?zDpV0hvVe+3Qu4m/rdCxqg3YXJJRS9f4efFlqdjykT2yBM7NhWX5QoLEB2rx?=
 =?us-ascii?Q?9Xqq/vPWG1e+n+KYPh6D9Xu5ScL6/gzoIyKOZAN3S2+f5cHLxORJQxeUbjiR?=
 =?us-ascii?Q?0NhwNf36ZmhhuI24xuoNciKoh0SOjUpHMQ0/gmav+kti/G4EDx12+3+Ockli?=
 =?us-ascii?Q?vFW2GSzP7q6Hz3Xs901CTgGffksA9o7ykxaThVmw4ysQzETDP9YLyJUfe9WX?=
 =?us-ascii?Q?A8PztioB/HNk31jpHjghkO4dmlQI84Bc2VTvKi23T9vPEI7k3BVbxqt3Ewb7?=
 =?us-ascii?Q?UsxGggw6/2cIqDmVOyopigdh6NSvYc2AsEb7OxpEs0m41WG7Xx4Gg0tGzZQ3?=
 =?us-ascii?Q?1f+DOnpY3jvdyJdzui9cUFI5PLHl0qb9v71k2W8EEJcpJmQLyEb6nSGj7V8B?=
 =?us-ascii?Q?ooGfmZFwwgT/sqtBd2hOSYGtP4K4EGMUGwuoIdCAmh0PoynTQ3wcPKERnYl3?=
 =?us-ascii?Q?efIxfCAFHb+nvzGMIk+AIW/sLHqfd6sXM7dHYm2AXR3F8bFStJRqs9CZ7x4J?=
 =?us-ascii?Q?5acOG/WvF+B+E3WtKQEoCmYIV/yPD/oX3wM7UDPErXZFiVhKQIiB1GSqDOvM?=
 =?us-ascii?Q?1jW2LmuoUdfCdgbvfxUItYcyZ1oxKJSDypEzS2CEQE5ejQJtoD5QfjHPjkA+?=
 =?us-ascii?Q?7aAH8F4hylKtMsowvmUoGeJnHxYVgUUMsOA2Y1unsrJaCWbZqG4Zy80HnDVM?=
 =?us-ascii?Q?qk2hPW14/TRKCba2fb18Iu+6uyat?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?VK2FdwBZFJgeuMMFYJxLdbAK5e5cJPhGxGo94hAGph/rsSX27oFlK4uF9EYx?=
 =?us-ascii?Q?fwXs9skpbsQFTCfH9lp/Dh7KvEzxk/vX+gvk4CGgsLzo7d4EhDWY6t/s0R8x?=
 =?us-ascii?Q?ktz73sj+jT0fmvSfnpDDksk9i8+tt3Z3csZ4tpDdL0U/s87Iw+CT8W6MdBil?=
 =?us-ascii?Q?o34ed+WD3G8tLusa7sAMYylroU7spqWu3NsddZmPNOhJl0ZgF3E4ljTQkLs1?=
 =?us-ascii?Q?ROBQj+nxwzdLs4zJMvlP5CZyksOCAoNjQJBrYVu9w4kB1Huq8pO6Vaeig5cZ?=
 =?us-ascii?Q?wAb0vzSJXqnJG22X1PNuSDjfkQArPnzVc5j2ehmlOmdz8h43T3R1qunptuux?=
 =?us-ascii?Q?crk5VE9VgSO0wdJgkfiLOtCt7iePxZZu/GLCtrUeunowgYKJbdXYM0eUNr8P?=
 =?us-ascii?Q?huNXxhNi3EsPkeQFwx2ttFzzzeXGCPk1oqoLi1gD2ZVklWrp/Dtven2MIoSm?=
 =?us-ascii?Q?sRILlSUtzgvkQUZHlHq5B9HpyfmcthMbeIOi4ZKhttoj7+xswHsOdkSwyE51?=
 =?us-ascii?Q?z/QyqeTwN9KXp9/FP0yIaaYXwXjKsGsIE+XDQr+xmFXAXmNG9HlUMIIGPY34?=
 =?us-ascii?Q?hN4GjOO7oVCbVQ5qhgIWCrA9jn5RJ2O3JmSiGHY/A2Y6qb/a9wU3CSQ1AbVb?=
 =?us-ascii?Q?Zzibl1EZZOIOGqrGHgi0G6EueB7F4EZGb8/2GgWIgggc8/HbcLTOlG/sjg2b?=
 =?us-ascii?Q?qHN6ul3h71IX8kdwZsFME/JMteWGmU+75yj/g6Idvj4Qo0Z7tR6KwCqZmi8P?=
 =?us-ascii?Q?tuU8vF9NjolUIVlDw+S09bqF4UxoxIZbjDU5QKFKqDgoSNQASaF183tPjRHf?=
 =?us-ascii?Q?Uv0P3I6+XNpvUA6+dEso/hdXY+w1yQfewVSPJV5kGfdIom72lJiqDTiT8JjX?=
 =?us-ascii?Q?8vhZoCg2FWAfUrVtjo48Toj/vlRZnV/Hvn3OV0FXBDo7qfRnPnUyCykeqLp2?=
 =?us-ascii?Q?Ks+LUs8vFstPSuKoUfv7e+NHRmztewq65/BWyWjIt1YvNP7+2QsYf2mTLzR5?=
 =?us-ascii?Q?lI+4cPxL6yA9txNlKPtH9/HVgh9PoNDczwiuZ/UoLLUcw18bFxifvuyiajRd?=
 =?us-ascii?Q?Mr9SJD8Qu+4fLbKUhkjYhdD2kyKTI3ZCKjzVSlTsKZCNuEyyYtJOjQd7amDz?=
 =?us-ascii?Q?KGTrxW2FSzNK32KxVBjRnFfrfawb9MClF20c8fDKOGS0HcKC7ZI/Xw937DKO?=
 =?us-ascii?Q?4j6Q38ERcoR93R32+yeM9HPuzws1mZfIyPHoqb3KEOvj1WLPHKiGzoyL18Xw?=
 =?us-ascii?Q?IpyTBg/phBhT/GCCsZ/EoO0W97qQp60ZGYaeoZQvCLNLHA0fzEI4ihxkiSA4?=
 =?us-ascii?Q?S2dL/ssCmMQiNozw08VyytmQs1T2iz6jj7u4w8Kr9uxencFDxjP6Pqvm7fLF?=
 =?us-ascii?Q?dJgpB08wDVWAAeeJzjSIN4c4yNNP6SS8hYrBTAacNG9D8xVC/7FGS1FTlkvn?=
 =?us-ascii?Q?nbbunPsxr7FGVwDyhI35FvZfP/9PGyNs5TttHEvD/f6EO5x6Vi6aEp7sFuuN?=
 =?us-ascii?Q?Y4p4pqw+VYUzLNVmvjOQot7Tz1GS6J/vaJDfzyRZTobaDb1tkzpVG2VIDTam?=
 =?us-ascii?Q?KgjI1c6Ha+5tPs9mETC+eEGkeXUD8+PzDVY2HySA?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: fb3a21a8-735e-4f86-dafb-08dd46a8a0ac
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2025 12:20:22.2412 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jSp5mlQ1SttKhOIccRQNjy/tJFqVZnEHSJtSQK5vA+QVbGVZecxeaeKiggcgppA9
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYTP286MB4086
Received-SPF: pass client-ip=52.101.125.136; envelope-from=acohen@HIDDEN;
 helo=TYVP286CU001.outbound.protection.outlook.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001,
 RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: submit
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>,
 Michael Albinus <michael.albinus@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "MA" == Bug reports for GNU Emacs, the Swiss army knife of text editors <Michael> writes:

[...]

    MA> I'm against to touch the D-Bus code because of this. Unneeded
    MA> dependency.

    MA> I've assembled a POC patch (appended), which adds the
    MA> sleep-event special event to special-event-map, and which adds a
    MA> new function insert-special-event, all on C level. With this,
    MA> I'm able to eval in the *scratch* buffer

    MA> (defun sleep-handle-event (event) (declare (completion ignore))
    MA> (interactive "e") (message "Event arrived: %S" event))

    MA> (insert-special-event '(sleep-event t))

    MA> insert-special-event is not restricted to the sleep-event event,
    MA> but shall support all special events, finally.

    MA> Comments?


I personally like this approach (but what do I know?)

I would change the initial special-event-map binding to 'ignore, so that
nothing happens until sleep-wake-mode is activated. My current iteration
installs the handler in the keymap when the mode is activated and
sets it to 'ignore when its disabled.

I think the remaining big question is how to handle inhibiting sleep
until the sleep-wake code is finished. With dbus.el its straightforward
(although I still don't know how to close the file descriptor returned
from the dbus method in lisp; any help?) but I'm not sure what to do
with other systems. Somehow  sleep-wake-mode needs to communicate that
it is OK to release inhibition. I guess one way might be to mimic the
D-Bus method and include a file descriptor in the sleep-event that
blocks sleep until the fd is closed. But this seems kind of contrived.

Best,
Andy
-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 11:56:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 06:56:58 2025
Received: from localhost ([127.0.0.1]:54616 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tg0V7-0005Dr-Hz
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 06:56:58 -0500
Received: from mout.gmx.net ([212.227.17.22]:54049)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tg0V3-0005DK-Sd
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 06:56:55 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738843004; x=1739447804; i=michael.albinus@HIDDEN;
 bh=871oP9FQ9ADLDmmgnhbQ8v4nGxlUgNMjJfyq8syRtGY=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=F/oguElkjdX1qeFdmJ64xV2nTeDEoWXH7eaX7RO00hizpOSflfIUtO0QqsiqBuuj
 J0TT/44b7V8USYS0bAdw1jUZ4ZvOPDCJYQ35/OGXqUkZ1+YifMabRjlFowWf42a6w
 9CpxaeQqiKhceU820BkipK4Xv3HIVmDjCxzN9aRkcU8Ggjc+FjDwaLu3U53dbZhML
 yQixZ1A+8gwJs99/u0x4I6D2a0sdsT/mB1LUzVC25Xs0rDSv6O4Y1zWU2e78NaN3w
 J82kTEmFYuPdE8h3NZmvm2hTMwgB0L/9LlOwcx/36nPAgwSAsurmAtEx3vxRltvlC
 GATBaiRwYh/nZQSkdg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx104
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MJVDM-1tzsnL2N44-00Tz26; Thu, 06
 Feb 2025 12:56:43 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <86lduj7a3q.fsf@HIDDEN> (Eli Zaretskii's message of "Thu, 06 Feb
 2025 10:26:01 +0200")
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <86lduj7a3q.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Date: Thu, 06 Feb 2025 12:56:41 +0100
Message-ID: <87jza3thfq.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Provags-ID: V03:K1:dYLH0emfK9atjkIlw/kqEUZSY+PJynIBK5VSg5XuZXZFOVmCJQt
 /PqUepLKiGIsTMUVxZYwD+YN80VTWjwC5DY7tB6Q4LVrz1idNVSebaijTWbVYwYDZUFNA1W
 uhMJ+j29d8XRTXvvRvXRMAoB+52ehpOPM9rrWhLd2YNPzo6qK03xWEjPzIsDhf7aVJeGUcP
 /9Cb5fwGOwK1aoSMEcxMA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:aTmGnwi2chw=;bP79DvAkkBmGre8FdD2gzQATxDo
 Ittspwf3D4SsSyPqlCAHkzB/2zOEfpKcevofJBn6E2xziKGUo73aTQoPhHQG4bHRzBStpw6UN
 zqOIUePY+8uUca5dQkwzHMydp3FyTWre+lyV1Xw52p/0t9Qtqyx9wZTQ1x2zog30x53oMYftt
 Y53ExR6KwihZHig2FV05RER83zM2sz2XPplUyrXF5sKo/LK62M4uzCkyw5qzoM0e5e4gZRF1J
 ED6/qe3/jBFUI8nMBfrXZbzwgKVYB+ai5HQQT8pIgaaxb6LW+tL5CwM0XZZtcl49UvfMGqhle
 ZlZnhIv0sdk1vLIPhmuXqZ2/R7BFJm5edLAkr6dCgjWfpuxtNOTSBvegzAGeEkVXa6txKH+yD
 a3Mh7A5ZKJXcMvsIiV+t5Vz+YiKFcCHTTps+L46IgcqnYcFbVBHPlCBWv+j8wfgbN/93Fsenc
 rpM7JjGTrFnpRHrHgOUspX3kK35QoGIwRd3FKMBLMOsk4Lyvx5e/5oEZvpdbC8/3wkhr+bZkM
 9g3h4imjFf+2AUBzqudZuE05J8KxdqdV6CLJKhSwqkOYbwFTp8+P3Geqkxqdt9k9WaXDa5R0R
 iFQRez3/h6JH7eTWhQVvewPo9YR8XEqdzBdcpSUuo/xHaxvHgmlFIdgN+CPnSqehz6dxOWUJC
 HjUi2uc5rvJAM1MKCbB2W+Qlh/5eu9gF2T6ouwiajT/UNqld9U2VxqJV/5EgWLKJDochgHSFX
 X9YMcsldwgnLdSwKhKUjZr8aPBaHT3+3O1IJqEgUHRqAP1R4LbARJ2a4StRtqV6AjGGOeUFvA
 geQzQy02DFp6iM/0OtVs5MWJlMUqdLPKNsTCaxJzROx2uIqvMgwmPEBg6Taf+kYiPROP6gZng
 CN0ZQtPwaeWb8MRHl+r7sWA3/4raqhTTrTWTTLaTdLygnB1Atnbo3NRoP79aXCGQN3fwgM7p6
 EAj7x75+zrB1IPpQDaWNuCsrfXBm8dPDFm/CTOKe/7isXNYrfDkl2eQeCm9Udvw/X/jEuh0IG
 EWEV2VJzUpI28AT92uHcb2RDd26nWGN/kyii/plHONa5RbVHVriWOom9fiUqu9zRm2B3UngIP
 FQ6RHNswHeYzHCp/Zst6ak5M4N6awAAFZv1uD681Gd3KcraAe5OIIe4bO/QR1dP9l1G5egO8J
 PDZd72xs/JT1M3BoJFVdnl3JBgjj0xq+UFSP3eNj8xYneJGZGEpCS3c2oxReZ+hrlQq/XE1cN
 aBKGX2nLX2BHPQT+ZoRbSHLqLqul/7Z4O8ginJBzeBuVdBGbHDy7RtPyJi+h97v+PvkYyJ7kL
 XAhj+pXqJM/yQluAKoMNS9AE8+7pzZSeITEhP5QLa1EYD9+EIY2NwKX0xtOlUCUB/WN+3U9Ir
 HPV20/wDoWjpDJJTo5H/Nau05fogBiVC0GVnfUMDmuU8nn96EDz7CJkab+
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-=-=
Content-Type: text/plain

Eli Zaretskii <eliz@HIDDEN> writes:

Hi Eli,

>>                                  why would those not be ale to run the
>> hook?  If it's because it's in a separate UI thread, they can push to
>> `pending_funcalls`, or in the worst case they can add an event into the
>> event queue and then use `special-event-map` to run an ad-hoc function
>> which runs the hook.
>>
>> Of course, we could similarly make the D-bus code manually do
>> (lookup-key special-event-map [sleep-event])
>
> Thanks, so which of these solutions would you recommend as the
> cleanest and the most convenient/extensible one?
>
> Michael, do you have any opinions or comments about these
> possibilities, from the D-Bus support POV?

I'm against to touch the D-Bus code because of this. Unneeded
dependency.

I've assembled a POC patch (appended), which adds the sleep-event
special event to special-event-map, and which adds a new function
insert-special-event, all on C level. With this, I'm able to eval in the
*scratch* buffer

--8<---------------cut here---------------start------------->8---
(defun sleep-handle-event (event)
  (declare (completion ignore))
  (interactive "e")
  (message "Event arrived: %S" event))

(insert-special-event '(sleep-event t))
--8<---------------cut here---------------end--------------->8---

insert-special-event is not restricted to the sleep-event event, but
shall support all special events, finally.

Comments?

Best regards, Michael.


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment
Content-Transfer-Encoding: quoted-printable

diff --git a/src/keyboard.c b/src/keyboard.c
index 2d8c45c05ee..e6539582eea 100644
=2D-- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -4273,6 +4273,7 @@ kbd_buffer_get_event (KBOARD **kbp,
       case CONFIG_CHANGED_EVENT:
       case FOCUS_OUT_EVENT:
       case SELECT_WINDOW_EVENT:
+      case SLEEP_EVENT:
         {
           obj =3D make_lispy_event (&event->ie);
           kbd_fetch_ptr =3D next_kbd_event (event);
@@ -7110,6 +7111,9 @@ make_lispy_event (struct input_event *event)
 #endif
 #endif /* USE_FILE_NOTIFY */

+    case SLEEP_EVENT:
+      return Fcons (Qsleep_event, event->arg);
+
     case CONFIG_CHANGED_EVENT:
 	return list3 (Qconfig_changed_event,
 		      event->arg, event->frame_or_window);
@@ -11631,6 +11635,36 @@ DEFUN ("input-pending-p", Finput_pending_p, Sinpu=
t_pending_p, 0, 1, 0,
 	  ? Qt : Qnil);
 }

+DEFUN ("insert-special-event", Finsert_special_event, Sinsert_special_eve=
nt,
+       1, 1, 0,
+       doc: /* Insert a special EVENT into the input queue.  */)
+  (Lisp_Object event)
+{
+  /* Check, that it is a special event.  */
+  CHECK_CONS (event);
+  if (NILP (access_keymap
+	    (get_keymap (Vspecial_event_map, 0, 1), event, 0, 0, 1)))
+    signal_error ("Invalid event kind", XCAR (event));
+
+  /* Construct an input event.  */
+  struct input_event ie;
+  EVENT_INIT (ie);
+  ie.kind =3D
+    /* TODO: Add the other special event kinds.  */
+    (EQ (XCAR (event), Qsleep_event) ? SLEEP_EVENT
+#ifdef HAVE_DBUS
+     : EQ (XCAR (event), Qdbus_event) ? DBUS_EVENT
+#endif
+     : NO_EVENT);
+  ie.frame_or_window =3D Qnil;
+  ie.arg =3D CDR (event);
+
+  /* Store it into the input event queue.  */
+  kbd_buffer_store_event (&ie);
+
+  return (Qnil);
+}
+
 /* Reallocate recent_keys copying the recorded keystrokes
    in the right order.  */
 static void
@@ -12803,6 +12837,7 @@ init_while_no_input_ignore_events (void)
 #ifdef THREADS_ENABLED
   events =3D Fcons (Qthread_event, events);
 #endif
+  events =3D Fcons (Qsleep_event, events);

   return events;
 }
@@ -12826,6 +12861,7 @@ is_ignored_event (union buffered_input_event *even=
t)
 #ifdef HAVE_DBUS
     case DBUS_EVENT: ignore_event =3D Qdbus_event; break;
 #endif
+    case SLEEP_EVENT: ignore_event =3D Qsleep_event; break;
     default: ignore_event =3D Qnil; break;
     }

@@ -12931,6 +12967,7 @@ syms_of_keyboard (void)
 #endif /* USE_FILE_NOTIFY */

   DEFSYM (Qtouch_end, "touch-end");
+  DEFSYM (Qsleep_event, "sleep-event");

   /* Menu and tool bar item parts.  */
   DEFSYM (QCenable, ":enable");
@@ -13144,6 +13181,7 @@ syms_of_keyboard (void)
   defsubr (&Srecursive_edit);
   defsubr (&Sinternal_track_mouse);
   defsubr (&Sinput_pending_p);
+  defsubr (&Sinsert_special_event);
   defsubr (&Slossage_size);
   defsubr (&Srecent_keys);
   defsubr (&Sthis_command_keys);
@@ -14017,6 +14055,8 @@ keys_of_keyboard (void)
 			    "handle-focus-out");
   initial_define_lispy_key (Vspecial_event_map, "move-frame",
 			    "handle-move-frame");
+  initial_define_lispy_key (Vspecial_event_map, "sleep-event",
+			    "sleep-handle-event");
 }

 /* Mark the pointers in the kboard objects.
diff --git a/src/termhooks.h b/src/termhooks.h
index 0795148f1af..a77ca25e159 100644
=2D-- a/src/termhooks.h
+++ b/src/termhooks.h
@@ -291,6 +291,9 @@ #define EMACS_TERMHOOKS_H
   , FILE_NOTIFY_EVENT
 #endif

+  /* Sleep/wake event.  */
+  , SLEEP_EVENT
+
   /* Pre-edit text was changed. */
   , PREEDIT_TEXT_EVENT


--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 10:56:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 05:56:57 2025
Received: from localhost ([127.0.0.1]:54511 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfzZ3-0002JW-AO
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 05:56:57 -0500
Received: from mail-ed1-x52d.google.com ([2a00:1450:4864:20::52d]:60898)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tfzZ0-0002JD-3H
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 05:56:55 -0500
Received: by mail-ed1-x52d.google.com with SMTP id
 4fb4d7f45d1cf-5dcef27deecso956125a12.1
 for <63620 <at> debbugs.gnu.org>; Thu, 06 Feb 2025 02:56:54 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738839408; x=1739444208; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=F11mHscZaBC6juAZH/cRBcQNE7A9lUTNQFUGnG0XSkQ=;
 b=Tc7U0L0CvOspZPyZqq9rWFHq8hfq/tvYsL6UiSMHUnS2V9zqnnAqTrbVk/Nq4XWa/q
 YRV/yS6A0y5TywQZjOs7uGmnxHjYsOUOIeNPiDDuNtwIO8SK7q2DnEnlffq3E5ASrS/K
 zmgqiYoBYEhLWWSmSOwyf6CTR3SeMmEKnevXIyA3drESI4PJvPOMHdR2qTjgU/gOKfeL
 w/Pfw89oygnPro0VoAI8aWuxyY6aHDI4U7Lv2hHIalISNEWzAeX0yDEdaj7JBm5AAkGr
 owKizfqDoDtXCJla0LjjUX1HGTAuMT/IJQdU6TJe2SxpNmlywIs2asab+gPwmDJxhO1h
 rYzQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738839408; x=1739444208;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=F11mHscZaBC6juAZH/cRBcQNE7A9lUTNQFUGnG0XSkQ=;
 b=Db1jeaRA3KcdDdW8QdZsaSE7oQCwWwSshjawoTkjtWWv8h/4AfyX8uQEZMmDwFe+2r
 O2Dae3Y4hCrcPPP8KA0/TOt5K26gUUSzUqFIIeOvqQaBLJ0DObovRcRAk36DOv8l8Vm4
 dqidksBVIirb6WTjRQDrRiRH4meTaSQNfeMshHP5381Js9Gvo+bn+HXuU14EJ0IhgGv2
 Vf+0nEi4VdWuHHlexcuh38MfS7hik7EK3xqYGPnZM/AKrdXvBQwD31LHIaBlK+xVgNS6
 uaesLW1qWhYNTB8+NvGeuCw7UgRjGfqJjG/1/TkiLPMtZv3bVc7OXaftHaSEnCEbntHq
 Qhlw==
X-Forwarded-Encrypted: i=1;
 AJvYcCWSPF8smal9UfXraEb31MqJeMVYJyP7+S1qNm5Sdp72LhrNFwFsqlZ9JbBMhPrIWTyaalMmkg==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yx987+swE5RTgSRX26gEyyd0QEn7IYNLpI1e/j1/xsiX1Lm7FBo
 QYfjGBUpUFpdePTnnYRzO+BQ8ZpMg14OtwV3R8w3ktUZ6zYEt2lrZIuPSv6xLmn/sJ+kHxgZxo7
 pm5PkOdnvGwRP1esE1sTh3JlnQBw=
X-Gm-Gg: ASbGnctbCuRwnLFa0VFOo+lc5KTkZF7tr9padzGYcppXpQFftgp+PzRG22gM2Gbmp+v
 X1D867nc+kuC71hfKfVWTCz28Uv5hyTnxge9rz291zBvqQC/DxxNYh3pAHMqY9al5ig6KxF1f
X-Google-Smtp-Source: AGHT+IFZh67CoR4qf5c+7fxNrOraU9WamU2UUX8RdsTjz2ErSBPqJSTu+eab7cb9s0YOd2Q6jST5hAY8zXhRFxZNrIA=
X-Received: by 2002:a05:6402:4308:b0:5da:105b:86c1 with SMTP id
 4fb4d7f45d1cf-5dcdb763fa4mr6677924a12.23.1738839407696; Thu, 06 Feb 2025
 02:56:47 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
In-Reply-To: <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Thu, 6 Feb 2025 05:54:41 -0500
X-Gm-Features: AWEUYZkymYk4TR-WPAWAA4Y9EVq4HKs2NHoTMIUPsqnYSGiy3Q3B7vi7VQIkVm8
Message-ID: <CAN+1HboTUC-WxjLx=6Q0XRLoz7fHeRGm4ZMfxj2y7FmbGFBo9Q@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Stefan Monnier <monnier@HIDDEN>
Content-Type: multipart/alternative; boundary="00000000000037a440062d771921"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: Andrew Cohen <acohen@HIDDEN>, 63620 <at> debbugs.gnu.org,
 Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--00000000000037a440062d771921
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On macOS, the receiver of a "will sleep" notification can delay sleep for
some time. There's also a message when the screen is put to sleep but not
the OS that might have some utility.

On Thu, Feb 6, 2025 at 12:20=E2=80=AFAM Stefan Monnier <monnier@HIDDEN=
al.ca>
wrote:

> > The idea is that you add code to detect the change at the OS level,
> > and then create an event of type sleep-event with an argument of t for
> > sleep and nil for wake.  The lisp package detects the sleep-event and
> > runs the appropriate code.
>
> BTW: I understand what a "wake" event means, but what about
> a "sleep" event?  I mean: how can we receive this event before we wake
> up again?  Or does it mean that we're about to sleep?  If so what do we
> know about when we'll sleep?  Can we influence (e.g. delay) it?
>
>
>         Stefan
>
>

--00000000000037a440062d771921
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">On macOS, the receiver of a &quot;will sleep&quot; notification can dela=
y sleep for some time. There&#39;s also a message when the screen is put to=
 sleep but not the OS that might have some utility.</div></div><br><div cla=
ss=3D"gmail_quote gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_at=
tr">On Thu, Feb 6, 2025 at 12:20=E2=80=AFAM Stefan Monnier &lt;<a href=3D"m=
ailto:monnier@HIDDEN">monnier@HIDDEN</a>&gt; wrote:<br>=
</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;b=
order-left:1px solid rgb(204,204,204);padding-left:1ex">&gt; The idea is th=
at you add code to detect the change at the OS level,<br>
&gt; and then create an event of type sleep-event with an argument of t for=
<br>
&gt; sleep and nil for wake.=C2=A0 The lisp package detects the sleep-event=
 and<br>
&gt; runs the appropriate code.<br>
<br>
BTW: I understand what a &quot;wake&quot; event means, but what about<br>
a &quot;sleep&quot; event?=C2=A0 I mean: how can we receive this event befo=
re we wake<br>
up again?=C2=A0 Or does it mean that we&#39;re about to sleep?=C2=A0 If so =
what do we<br>
know about when we&#39;ll sleep?=C2=A0 Can we influence (e.g. delay) it?<br=
>
<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Stefan<br>
<br>
</blockquote></div>

--00000000000037a440062d771921--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 08:26:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 03:26:17 2025
Received: from localhost ([127.0.0.1]:54208 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfxDF-0003T0-8D
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 03:26:17 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:35264)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tfxDA-0003Sd-EV
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 03:26:15 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tfxD3-0001sV-LU; Thu, 06 Feb 2025 03:26:05 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=po78yXuYwLrXXhW2dy83i+vStOqVi9wsVgWlMjKYi4c=; b=aTi8Va8R9oYU
 g3+Vi6l0d+aXU4/R4EbGi534ZubLxms6iYcTxlSRLzuEAmCpBy6mh/2jnovdJAZGok6r50jy7HYK+
 tYxBE0pkcAHctAyxycaTLvFMYrawzlEMJ1ksk3nRt6EmBVsLUKSyzhyZPnOGFYONt41hz/rKJYHoO
 uU+EgUj1VG0nsbypOUNEXvEBDZfNaRtl0vtrR89FJoOuZ6FxCadHeqJ8e/dLnS5kbCHpweWFbFK57
 RI9iNc+ReXaNLuT3NCPIUU/ekl5JSOnQU5a8ZUdRuHMBFEbGcvTd2kky5seEmdMsmA7J0D/oWojai
 bG4nsxZc9IcD+CDM3CI4cg==;
Date: Thu, 06 Feb 2025 10:26:01 +0200
Message-Id: <86lduj7a3q.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
In-Reply-To: <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> (message from Stefan
 Monnier on Wed, 05 Feb 2025 17:37:20 -0500)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Stefan Monnier <monnier@HIDDEN>
> Cc: acohen@HIDDEN,  63620 <at> debbugs.gnu.org,  michael.albinus@HIDDEN
> Date: Wed, 05 Feb 2025 17:37:20 -0500
> 
> >> Maybe a hook is not such a bad idea after all.
> > But then how would platforms where these events come from the
> > window-system call that hook?
> 
> I don't understand the question:

It seems you understood it well enough to answer it ;-)

>                                  why would those not be ale to run the
> hook?  If it's because it's in a separate UI thread, they can push to
> `pending_funcalls`, or in the worst case they can add an event into the
> event queue and then use `special-event-map` to run an ad-hoc function
> which runs the hook.
> 
> Of course, we could similarly make the D-bus code manually do
> (lookup-key special-event-map [sleep-event])

Thanks, so which of these solutions would you recommend as the
cleanest and the most convenient/extensible one?

Michael, do you have any opinions or comments about these
possibilities, from the D-Bus support POV?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 07:32:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 02:32:56 2025
Received: from localhost ([127.0.0.1]:54066 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfwNb-0000lR-Mv
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 02:32:55 -0500
Received: from mail-japaneastazlp170100001.outbound.protection.outlook.com
 ([2a01:111:f403:c405::1]:45282
 helo=TY3P286CU002.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tfwNX-0000l8-PG
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 02:32:53 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=WhNs7HuUfQ+5mjk5hT1rHxNjG/wUS98qqrra1UOAM02R8FUCs+d9khMFjJQHMMr3xSuBFaku4F36dVG2J1UZV1Wa5pl2RJaCMapLuxx/ryOr0ubvircTixex/K+TnvJjHdF8Y/uSt3wG2fhX1IEFtUKh7JogOknYroFf6J8ebF6NswpxxCIeW8oPqcmwaUbzbBV2/wN6KSJ7i+l4f4e24q9+J77qXGM911RCBQ0IJ3iP9xCIC/ebYh91IZPBsCazBJqNq8qqoyh8eaUCrlWhRMeLg89XLvfL9HobCpH0G8Re+kt/Yfe9z//TXyHft+e3H+QDoho5HlKAOmLjYN9Tgg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OtXJEm3BHqcOUZOtkYOke5LWHuG8/KI5SWT9uCggA14=;
 b=TSDEapCbpcXQpfNB8kmHIXqSkCI+5Fo7GXJKWAOaijkr5zPsHck/29UpLx94AIObzvGdVdmCschvvzls7jwAUflKYombTn3XlmON9bJQSIGFRXXc6CrJSIFrVLvHUtWsaNPhRb1Ph3WwnYzmrctPpboFLuMiXQkLBDmMCxJfDluUH/+bRauKwYIFlDAVck5SbFWdBFetpW5NAE8cgTUCr5OiBD9BCNGEswLXA/paTK6Jmq0iB79WX6oMJV3BxCfSvbBGvtZ39rw8Tm0TnlG2RjMfJC0Fx+Cz+y6EWe70Q78cK9r5/jCUbxDEXpoKH/C8hFOVC4SEqdcc8mG/lhD8fA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OtXJEm3BHqcOUZOtkYOke5LWHuG8/KI5SWT9uCggA14=;
 b=GxrQDlF6TszJdgGiI1davoZK5mTJciPcYRcZBl+WkIWeSDbb+59ldrBkpR7Jm1/C4ekAFH4LGzE/9xoWxYChZERsp29vhk2xLYzjspZ2bRFBFCKfA/kMdgSs0x0tvP6sCA7YMR/JLKPdic8cOq1SFSHrGmsGMfG0zUGF4RcoV1u1n19Nhonk+XiC3XNVnaEHVR1b7mLzVwiS9NjSUA0SGLTWYxYpbD10Q4RcoVqz0hxkVAKtdBdVymAYEw9xeZ0V9usYWFRSViOUGvt2MjCOQ2YN2dVwmrQoSh51vqLEVlWvrLpIgm2v2/7LxIrSpZ1XQcEciP+dONGpxxlLQ6n+6Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by TYVP286MB3652.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:36d::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.11; Thu, 6 Feb
 2025 07:32:38 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Thu, 6 Feb 2025
 07:32:38 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
Date: Thu, 06 Feb 2025 15:32:35 +0800
Message-ID: <87o6zfplyk.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: TP0P295CA0023.TWNP295.PROD.OUTLOOK.COM
 (2603:1096:910:5::19) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|TYVP286MB3652:EE_
X-MS-Office365-Filtering-Correlation-Id: a30501ba-41d5-4054-5f9a-08dd46806e93
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?sBbjU82kOnKaY/S6jl+kThb88RY+vky79FHgKFZr2g/gEwzjn5FiJFFfH9Iv?=
 =?us-ascii?Q?+rjqZaZ45U0TdO1P9O0DhTT+cdUk+jxf6sIbN/i6bGIQkj8CHTfwsg/4kTqW?=
 =?us-ascii?Q?xgWHBdQD95hRnMtsodz83FaJciO4orngxUVTaOlUioqkw8G9ZZhQCr42qYuu?=
 =?us-ascii?Q?fYjOnSLu/Qq9YJp5J4RmhXKJ3CXQRZKpydpvOeXuq9yTACdlYm4Vy7tKVZl+?=
 =?us-ascii?Q?NRJrrXyYbFS3tp0l4OqAt19TiHsLe1GLTsIlmrRXMEkt4WrkCoY97WbiaQzj?=
 =?us-ascii?Q?nb8UKt+qYMHq6ZflJs8+v6K/jrIQEqEjJrufQ0TP1xQ7w9KKMbfsiqMbacZP?=
 =?us-ascii?Q?oDCdTzaLofd18prWWRgwzIT5KcFm0/bDvcpc9Pzsa1j/LT/GKPiZgAIkRpSo?=
 =?us-ascii?Q?C385gK0H6sWjk837wn07E67St2N116WThRjb7/7BbBpMQQiq4LpEhIxTmFOV?=
 =?us-ascii?Q?TfYV8gV0jNcQsciPBdI/c6BQd9Qaj9VOPYsYTBNVWBCbLaAeQL3AUeR2iFAm?=
 =?us-ascii?Q?5xNgNgKx1HSjcLoaT3LzCW9VWZhrAEqwBfa0ajsXD3scbe5y02xQWpuC5bNC?=
 =?us-ascii?Q?EpVjrSssCaylCk3kHtcVO5KUeMYmkzfqoOEXWNXwrVkP/NdGa7GUjYJoNM5l?=
 =?us-ascii?Q?3zJuouqzruPg5W2KeXmVJ3XgCtrPzOQ1SrdzfRJwMjnMlpsOxMQ1MH1ifz3Q?=
 =?us-ascii?Q?1f7qXX6w4CVVytsHc+v61TxgMw6D9pBZufMdYTKof5nY2gdJLa00Yl9ne+6A?=
 =?us-ascii?Q?TTurwJZweC4JhS0I5feK9TfmZ6rhIwxeOYQ5KbxJ15b4YoMJVrL1tB21sK6D?=
 =?us-ascii?Q?AEdjMo7J9GK6kKIP+0sEdQ0wgdK9OQeEcoJns1+LYyI+wnvemhlmxx9doOuZ?=
 =?us-ascii?Q?cL3NgRRT+F3L5wC3+1u4fsD15eBYfs5f+bEhfd9/pLD6wvWr3ZX0Zi3vyPNd?=
 =?us-ascii?Q?HOVyaA+KURMdabnP6gfBw1Svs8Z1iFOdZ0YvEigBgOh/lc5Gi3hlZOeTg+AD?=
 =?us-ascii?Q?3Hz99begrNAkg2R7e84VgEefrLDDQy9d29OR+dv7BU2g11zag5ULgwVgJOry?=
 =?us-ascii?Q?4eObSrF4yIJZAno+9r2uZ6aHz8tUeHecMHvWkwp44zZiq6wXthocP87vi8fe?=
 =?us-ascii?Q?dyPiEAnq0/V6R38lGNUiZ1iK3sJ1EKcANpUxOl2Lz3PSiBcbhbJ21qd3zO1p?=
 =?us-ascii?Q?eO/pUBFPsZmoiYyCP3iCDJ/RplhkZR6pn5tf13GupWsRytj61Whs/oETgaIX?=
 =?us-ascii?Q?Fs6i7kw7sPzuP/jN+HrJ4rkUhRtL6ZEC2/AxoVvTL3byJJNlpN+/rpUPdIq8?=
 =?us-ascii?Q?PIR2lxMPx3PtDTj/6p1awLxJaaZnHcxY8nZ+Vj2fenaIDgaLVBoNEm9LY7VW?=
 =?us-ascii?Q?Y+blAN9aoaAyH2zZg0+2kJtgwhmO?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(376014)(366016)(1800799024); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?3D1m76O2t9ucpyV93R5h8LERvFLOIYy4/kLjTzRR2GCeESmWaMsFaCHk9cHw?=
 =?us-ascii?Q?Jn5TzBf2UTo6MaRv7e+NYBpbl2RTMVh00vcPl9iDOHVYBbSX7PPbOlYKm1eL?=
 =?us-ascii?Q?mfCpHIAgMFR31vxXJ/0rw3zv1tJNWKrkqN0YtUkYQ26QE2EJVTNqw6AaSuCL?=
 =?us-ascii?Q?SBDvl1xr0ezWZLnwzYNL2utfBjbOkWWnkdr/QdUvyKL2qnyhssBQboGflezD?=
 =?us-ascii?Q?qfXq1LL0zyhwRRxTQn8MXx8zv/+v5lTZZbuLp46kXgcSYnJvS28KbCGaQxNo?=
 =?us-ascii?Q?MqBAXrrwSmEzervgtQ1n7guz66OcLGgeb+yuCIT36X66kDnWf3YsObmlVIVi?=
 =?us-ascii?Q?7L4q27wC+Gj1GSISAuSsisimozvDGbrFYY5YLU9wpih+fgGeEXIsF+oF4lzS?=
 =?us-ascii?Q?cAHhbdjR/QEiuW1twohdjwAKtFiBJdwvrt5GffNMDG6tX9RCdomVzDw6R6k7?=
 =?us-ascii?Q?0+L9HfKiD8MWz2rV6aQFZ0jpAtEEcn9wrWBLQWMG8UaBNsZ/q0MX4qmnVg14?=
 =?us-ascii?Q?n/S/yG2V/cM0a6BgkDv9Xtzb/JlInlqM5ODgKtjwSt4zc6Cz1cyXbaulB5SM?=
 =?us-ascii?Q?UgUx/Fj3zpPtq+a87Gx8SBFS7ekHRyxx/YDXegU95rCOB0Uma8ncxNDqAeMJ?=
 =?us-ascii?Q?ur4/0moyre+1vg/hq4GMyu4Hei2E5p/1MejT9Rrlvnrxc8F8GPxYIDRSxDgK?=
 =?us-ascii?Q?wkeWkyznKosn43ZP/iPazJrOzKd5GZ4WngPF4bAqIvV88CLG8tdfUpBFAx6y?=
 =?us-ascii?Q?Vvf1CqJaNQMkNe59fuq+M3soKnmBog2DBy+zLM4fhdE4xHEeyeWy2IzVXEvv?=
 =?us-ascii?Q?u6A08Qkw3y4RGDJJ2Oe4RDEDPVhJEuLzbN/fdXfEnuDTg4okurlPfWgCNCup?=
 =?us-ascii?Q?0x+QrN1qTys716QZrU1Y6qXVSwPoTsIWgcyyQegThasw8/qIl8Ms2fgfY+/o?=
 =?us-ascii?Q?oFA+LEBbmaN+K/COi9jUKVTGn3THv+4hSWbFjiG+UqNAG9if8WhRY4CNFuQn?=
 =?us-ascii?Q?rkJOoqtbGA6DwqwHxcXI8BXebrLt12lcX4kSaip1QcZm4I6WcoyM1tXXI6EH?=
 =?us-ascii?Q?F7Ts4/d/lQP06WXAECKz6k7H/FwTrh5DLNDK1i0YbPbIeFYQ20yGqLaA8j/m?=
 =?us-ascii?Q?sx5cfT/MJ5GzfdmyXPUIyznH1TypD4TRAuVGVQI21oSF5785BJPwqmXx9Hrk?=
 =?us-ascii?Q?qR9Wf5jw9QBN8f99qF+OmtlX8mS2gpyJ2qdsmcufBMux9uzDjD4l3SpRotxO?=
 =?us-ascii?Q?PhLL1eLuArWBqnE8Dywi3OVM3HKlFAZsELzbaAQ1aRhCUkk850SPB4/+/6+y?=
 =?us-ascii?Q?gEIlf4ZX3uH20MDWMGMuo5tjLNgUkSUfPXNKiOPXl5rwZKues0d+ad+ATopw?=
 =?us-ascii?Q?nakLtj1EQprogDj41+p1bURkYx1h/xNT73CsFSnKblaLvBdu1YmMQg3r6WBx?=
 =?us-ascii?Q?78IEriKJ0AWzWHVElO5bKc3YA+Jivn5KkjeD/YQmFYfYIlqDPjQtpo1qCu2R?=
 =?us-ascii?Q?FeQLxoAcfI19t3jyA54XsJ7YilGp33+kLd7qcxhSp4ElnD7QvRxGPi7QDk5o?=
 =?us-ascii?Q?Zms/3js3hiBTuVU7tuie03OHG0svIlyCA9YxUUhd?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: a30501ba-41d5-4054-5f9a-08dd46806e93
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2025 07:32:38.2918 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: W34B8A5Sc40brLheFakNQf4bY0HCuNdn1/eatKOIr6gkbVuH7XRmHyL5yWy9b+yb
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYVP286MB3652
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Ship Mints <shipmints@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "SM" == Stefan Monnier <monnier@HIDDEN> writes:

[...]

    SM> so what do we know about when we'll sleep?  Can we influence
    SM> (e.g. delay) it?

So I can make it work easily for the D-Bus backend, with one minor
issue.  The D-Bus interface returns a file descriptor (a natural number)
for the FIFO that is inhibiting sleep. To allow sleep I have to close
this. How can I do that from Emacs?

Best,
Andy
-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 06:00:03 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 01:00:03 2025
Received: from localhost ([127.0.0.1]:53873 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfuvi-0004Tx-9c
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 01:00:03 -0500
Received: from mail-japanwestazon11021123.outbound.protection.outlook.com
 ([40.107.74.123]:13083 helo=OS0P286CU010.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tfuvf-0004T7-3W
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 00:59:59 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=NMyAhmZl+Xh1dLDoCS3EBQbSLdGJolxHg/yOEtotivmoeaFS/XSm+3UZCg9tn26IJmAJv/utntj9dQqkQRjUCGnQ/XaqJkP0hrk3If7McI1khEuyUBGlWNliwmXOvm2GHKOMBAg5wJt2+qH3UkZGKlA3CXyAfpIzRYIGh2MEgvR520TOMR65AbAwHjtc7U4Dy7Qns0t87iA5+eEQeT9b4cL/+c55y8oruVc11nSJd6jkVZu/p8CCUSwbdyBxtYkt2P9mqzGylcY219UzF7bYvvDj7hAvnaVsvCPkDh+s4ATcNYUW63TlPtqXjzeegbxGbXHdqcQ127dcMkdQJ3Y6bQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OBVJYvue0wn7DKItiiLpELHRRQlBfEe5kNSrpJFSHB4=;
 b=j7/bcs1ku1fAFQPSp+SKy3n2fueKHgxIC6GUKMLRUk1120cQVR8xkoaROXxXG7p6er5+LQCa+PY3tKUiYwT1IQIRosNNfHbHka3ST+S0cwVJNyVU6CwIEAEGpryThFe+CO0DJz0haTXusLAOFS6Zh/yw8qwJB4gqAO3lOM63YvHodATBD8IL7ZYqmn7LCKLY4n7YtvajcG3+1DsGWE9nHUrMewbbZhxoCiL4SrKGxJSW8ciNZQFFi9wJh160Qq9euQdgCs5biwb/3AAjEdktZx4wwcVIPOPhEpiCjba+tLEfxiZbL9WCnWU8JT+Y7Rcn2+kWdyKndPVaIklUch+A4Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OBVJYvue0wn7DKItiiLpELHRRQlBfEe5kNSrpJFSHB4=;
 b=SG/Y81CoU2QaoZ96Xw+8B4SBtc4rIOMls2eCof5k7VNGUTFQnx289n+uXi5mJJ+KnGN10u8uoWaPZqG+BE8u57rB9sHsv9CwuRQJ7gGVuu9Gmy/Uh8qLKJvUHmFJrL7YGzDdIqGFwpECPe6hdhFXHqkSJa1qokBmwzuMPGehdm4iED7UMHIEVn9XKwKgZXImjX29snYYSQNBl5ab4haHJnLJz0rjLoyMisNmaA6CNWICF1axWjlz8R4NtggeHRitKgYBCuYjID9+TSx4cLm42FX1SIlHN37QXOeLaqYy6fgjPxSkjXMB82N/5rqCCpZVyjCy6Iribo5d3wimNvMj8A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by TYTP286MB3899.JPNP286.PROD.OUTLOOK.COM (2603:1096:405:181::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.11; Thu, 6 Feb
 2025 05:59:43 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Thu, 6 Feb 2025
 05:59:43 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
Organization: Hong Kong University of Science and Technology
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN> <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
Date: Thu, 06 Feb 2025 13:59:40 +0800
Message-ID: <8734grwr3n.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: TP0P295CA0043.TWNP295.PROD.OUTLOOK.COM
 (2603:1096:910:4::18) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|TYTP286MB3899:EE_
X-MS-Office365-Filtering-Correlation-Id: 0b2f36f3-ab15-4eb7-e49a-08dd4673735b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?MDiy0sC/3RvzNuHB2jGoK6r4PlbbWyGmnbYxncSnQQeUZetY0bGkjT3LOE5u?=
 =?us-ascii?Q?JN1dzhRpBEfG2o56zzPVr4jSul3ECkmzdIW7PB+8O0QH7nmq8Uz0UrHiVhUP?=
 =?us-ascii?Q?oPEYsFzB4NgTPuKJSxPmglXAll5FbOPnCc+dvS0oYSRBJgNo+8pRjwD3jW3o?=
 =?us-ascii?Q?QWqYSGcEBg/ay8PuSSpHQ5SgU+DfGDMQTOuyvuTEM8Sa33zdpeAKVf5qinHT?=
 =?us-ascii?Q?p+p193kGzyOuCHjcb1ngPEX1s06PWdioWBfNfi2/UalDMPgyGYEpJ+3+ag1u?=
 =?us-ascii?Q?qJWi8yNZ6khM6p40YaRcy9Nd6FIEDGoHtVyufw/3P60Txe+UxZ/TwYjU8LJq?=
 =?us-ascii?Q?nrIpuNUkCe9NpSb3i3sqQlUpNJyhmpWHLWs4UDMzW8ZGBohPbPuQq579oDa+?=
 =?us-ascii?Q?zcINfdbVSKJBxVZXaTnCwNSeqnmtSej08HrAzn9iu/3jUyds8bbvLsCFYn0o?=
 =?us-ascii?Q?IKZ1+ECW4BnHA52iphKUgqOg6sw+Eejac2skfjJeYocg27mhmVJFjQGdEwZK?=
 =?us-ascii?Q?MDK0n3lbG+mPl4GvPxo8x0GhPG3TAzUoWQmsb3tebitVKgLkIsSKHI7+2ceR?=
 =?us-ascii?Q?ONIHA/cAJpdbwi/DxYjHSqsNlT0cKhf77Cn31fk5KJXZBIXBcfbiSiDd11sW?=
 =?us-ascii?Q?u1Y+VkCJDzlDpvOMrdCqib9p4etNBv8+WIarFOMDsvm2IHoS27sPEZrXnYuO?=
 =?us-ascii?Q?+30rAcI+MLbUprkva9rHaK35hyxU4my5I1LUy6ZgLvh6QerhrIbwUFcUucoo?=
 =?us-ascii?Q?pIWZzOLPD53NHhXuBXvhZNse3gxlgiT2lcjAurPAzd+B21oU0FQEBLjroLuL?=
 =?us-ascii?Q?mD6iM+0T6ds7HHC2uMqoUrKI+FvZwI//qTe91KgS91i7O2USscUX1iauq9/c?=
 =?us-ascii?Q?1tVNrfapYVQlrjx3VeHjuwqXwOvkYErvTnVVnQwR4o6VaVnhuGfuqvM8lFYA?=
 =?us-ascii?Q?u3LwUN1u51NOMGQpouQkfGLp8DriRZLj4K1Dt8tQZri9xlY7k05gdjvYXSvk?=
 =?us-ascii?Q?0egM2cXvrNsrkSAd1M7MvlFsVDZ5/Lr6OhE2esc8Dwo13v8a+BZXAPyC9ZOf?=
 =?us-ascii?Q?ZpagilJDYlSfrkIpIJEyyga6Pt5nn8VNUj3jJ5b91PKssDSQVG2eZmDq6cKM?=
 =?us-ascii?Q?htE80tCam/YzHM5ydd5ZOUZBDu36PLcXr8aS//U7wnYwaysq+xYApyelHr+m?=
 =?us-ascii?Q?qXa6V5HEJvAfzkZbe3VFNBFIgAqnLjx+K5GEzLrTRZiJH7aPuTcXYkYLJyGW?=
 =?us-ascii?Q?RBV9ssjv76Zr+iK1XXwItEtYyw0SE5ziAEQr2cJVublIJZIdGGzXohj4BE5M?=
 =?us-ascii?Q?KAxXpLyLvyiH++zBcuz/n+2RtKLKQU9hVfD0f9ZkV9NBouJF4+sAc14V6LFn?=
 =?us-ascii?Q?4FjhR+P7UZtDZG9AEbZLIaETg25C?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?bJJCuu/+s7g+tpLw6YVWPfA5bmEf/QAeLUWTHWC0RB9BHFqovNSawl/dx7s5?=
 =?us-ascii?Q?KHV0pW7OxUWfb1PkdS9IZOs3oqxUVswNopFfy0CQ6lnJmN4wAyR4CW/2qzJr?=
 =?us-ascii?Q?zzP+1f+EcXTp1LJiZBkBhiTWbgGc+Xpt579kqIrhHbTNhQekZxRYEbI7VBZh?=
 =?us-ascii?Q?F6nkhSnyjRNJ9gRTm/9tNYgExg0wg8EXZFPmzmHby8KGzpqUvD4LHOwvW03b?=
 =?us-ascii?Q?wx/vsqKPmZohFacII7NWVkmHg4NXthVFON837dqX+8dHMsOsIt8+uhJESrAk?=
 =?us-ascii?Q?DDTZQ/CIlGnsE4WsUMpOQn9l/6SBwNw/77BGK59wGUSVeEgC+jE5FRG/+0g7?=
 =?us-ascii?Q?+/IEaQQMWbMExvRS7k6dRzJeOU4pddeD9/ph6AV1U2v/mcApTlnfXrnE10G9?=
 =?us-ascii?Q?qUgLdkxDqzPuKzszu3PCRbT6cnosax7HmIkD7DYIAJOzueXA94j8YxXY6CnV?=
 =?us-ascii?Q?0r8If4VNPrWK2nX8FGXFuLdiYOXf5YZywwIqM26G/f1UX+N7XuzZK64MWHEB?=
 =?us-ascii?Q?aRVEvqNW7KjNodK5rJwCEeP9DTf3qiRGVdpaS5hEkBcPdTW9XRFRUWbbnfn6?=
 =?us-ascii?Q?RXSm2E9ATl1BPGCh7aR8CjLGJ7wuzcOFU5qBA93oPAtr7lLRDGQp+bks84ML?=
 =?us-ascii?Q?dDhZ035A33CBU6sqoQEyIh7RXi/8wf1iyO8m8qBxCuKx9ryXrvKd4W9Iysv9?=
 =?us-ascii?Q?yVaYllCUr1XPGNwgEActCuiWcQf1DpT0UGMIWDaMdiKPrSodptV1npzhs2d2?=
 =?us-ascii?Q?guTI+95J0dK+U95s0av6LZFdhs2kRhXI62sP78W4xMM1Iduy1f62Eg5TmlZK?=
 =?us-ascii?Q?5u4eZ8gGaBYbucfVFZvz0Y1NE6VItzgo//0bUonOJ2Ge4irnyvJAsYc8hSfC?=
 =?us-ascii?Q?RphRhMpgnHdKX+zUWVSfOGaPhZzE0ymaLW+Y/DGxSDCmIEoDAnB28xyRhIyD?=
 =?us-ascii?Q?riuXprDa4RmW3SBj3ZTm6egKVXasUCAbBetajUOrkPyLC1BZHyIRAIRDku7g?=
 =?us-ascii?Q?FVLguouZAGFDqmNtJWROHhvUIYxAXbfFIm/LZF64FXLdzpq/VHJFlsEGo2g4?=
 =?us-ascii?Q?jaoWBG382SQxjjhsXV1wg2lVHKWvA4XGJ3z8nNCOWyfNVHP9zEoy+XFhQxNy?=
 =?us-ascii?Q?L245HKiFNQrNMK6xf/lvZRJewJYNl1AKgjTqlP8IpfCHGULQ/iXpROR1UlTN?=
 =?us-ascii?Q?j5dNoeCYu5iuHhJoWviPkIVbYhyrCiA9UZBvtZv5fy7DtQzkLHSNaKpUHvPh?=
 =?us-ascii?Q?Qp04+gyG7z9rilrydccV4/Xj6sCnHO7Hhs3MgSveVeI5IRLBOM747GvEjr44?=
 =?us-ascii?Q?Y309f6uZ2YBBhvnvxY4C82ZvuZlj0wP+KhaOeXUhCyD6uEJBnmT46hN9u0Y8?=
 =?us-ascii?Q?Alkh5n7+txRHu9kyoL/+SHPqNIUFqo2uR5ePUk7j56Yq/dIgQ4/qEzbL7tbS?=
 =?us-ascii?Q?QCvW9igOoGQgywYaQf5amMhdmBVHh77DQsxy4gJU/VWjk1jqaulquVjLWyPY?=
 =?us-ascii?Q?HBjHA4DEDSirGqhqAJQGKew2xeXIqVokwCp0FmzBQgQ+pyXuhR6N6X/DLK9u?=
 =?us-ascii?Q?krYZkSFSJHmj70dCOw5KH9MAbioX5mqf6J3N4Nqc?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: 0b2f36f3-ab15-4eb7-e49a-08dd4673735b
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2025 05:59:42.9814 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: fvkoIdkTi0o7FZdYNEzm1+SJq52UvvG0kDLGZlrMw94YJv/PS+leGGB8uj6t8cJl
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYTP286MB3899
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Ship Mints <shipmints@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "SM" == Stefan Monnier <monnier@HIDDEN> writes:

[...]

    SM> BTW: I understand what a "wake" event means, but what about a
    SM> "sleep" event?  I mean: how can we receive this event before we
    SM> wake up again?  Or does it mean that we're about to sleep?  

The events that I am detecting with D-Bus are actually part of logind, a
tiny daemon that manages user logins in various ways. The process
monitors the status of a variety of hardware components (such as the
state of the lid, power, etc), and is responsible for managing
suspension and hibernation.  I think that logind, part of
freedesktop.org, is pretty universal on gnu/linux.

The signal I am accessing, PrepareForSleep, is sent right before the
systems enters suspend/hibernate (with argument True), and right after
the system leaves suspend/hibernate (with argument False). 

    SM> If so what do we know about when we'll sleep?  

I don't think there is a guarantee how much time remains before the
sleep state is fully realized. However I've been using this for a couple
of years and have never had a failure to run the hooks to completion.

    SM> Can we influence (e.g. delay) it?

logind has a method to inhibit sleeping (exposed through D-Bus), which
can be used to create an inhibition lock, preventing sleep until the
lock is released. It would be ideal to implement this around running the
hooks to ensure that all the Emacs code completes before finishing
sleep. It shouldn't be hard, I just haven't found it necessary. I'll
take a look. And its probably important to have some well-designed API
for this as well.

The real question is what to do on systems that don't use logind. That
will depend on what kind of information is available and how we can
control things. Inevitably this means that we will have a fair amount of
system-specific code in the package.

Best,
Andy

PS:

In trying to understand `unread-command-events' and 'special-event-map'
I came across this bit in bindings.el:

;; FIXME: Do those 3 events really ever reach the global-map ?
;;        It seems that they can't because they're handled via
;;        special-event-map which is used at very low-level.  -stef
(global-set-key [delete-frame] 'handle-delete-frame)
(global-set-key [iconify-frame] 'ignore)
(global-set-key [make-frame-visible] 'ignore)

So I think the answer to the question is "yes, provided someone puts the
event on unread-command-events" where it won't be handled first by
special-event-map. This is why I found that I could inject these special
events onto unread-command-events and have them trigger a callback, but
not the others.

-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 05:20:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 06 00:20:55 2025
Received: from localhost ([127.0.0.1]:53801 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfuJr-0002jo-8Q
	for submit <at> debbugs.gnu.org; Thu, 06 Feb 2025 00:20:55 -0500
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:8164)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1tfuJn-0002jX-OZ
 for 63620 <at> debbugs.gnu.org; Thu, 06 Feb 2025 00:20:53 -0500
Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 21CC8803C1;
 Thu,  6 Feb 2025 00:20:44 -0500 (EST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1738819242;
 bh=cW3X86FFdihb88lJrbVKDF+DZDT3qKE5H6lMzQy+vMs=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=Q8maTDuAsfOHJjkd8PuUhWNiv9c3MmsswdUGTqdNRD7/u1H/CjGqh/wNNRNWi36zR
 9Di1b4ll4Z0LWil7sRc0w0+Z/ZnFSUzocImTSInJWzA4yIkKHrThOyfr1d5YFJOIy0
 XAFkIhCUToNTklEcSAi5v1Oi5J+dYVV2ezc7i3bw3zakDl87QHu1/jdolndW7jSNbK
 oLo9Q0S7aDqc1EjDtUPA80OpqAII9GUWSRh+KPOlQFP8+k3VHhrpU8mMfAE2Re+c78
 OrZywxlSbGtHbKKsYUJvvTBcruIGC4M76YDk5Cqee0SP4PU3FuA9Nsn0bp+uUHBU9p
 CbcWXwmLrRwnA==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id C40AC801FA;
 Thu,  6 Feb 2025 00:20:42 -0500 (EST)
Received: from pastel (104-195-232-86.cpe.teksavvy.com [104.195.232.86])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 808F71203D7;
 Thu,  6 Feb 2025 00:20:42 -0500 (EST)
From: Stefan Monnier <monnier@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <877c63x18j.fsf@HIDDEN> (Andrew Cohen's message of "Thu, 06 Feb
 2025 10:20:44 +0800")
Message-ID: <jwva5azk5vw.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN>
Date: Thu, 06 Feb 2025 00:20:40 -0500
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL -0.037 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Ship Mints <shipmints@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> The idea is that you add code to detect the change at the OS level,
> and then create an event of type sleep-event with an argument of t for
> sleep and nil for wake.  The lisp package detects the sleep-event and
> runs the appropriate code.

BTW: I understand what a "wake" event means, but what about
a "sleep" event?  I mean: how can we receive this event before we wake
up again?  Or does it mean that we're about to sleep?  If so what do we
know about when we'll sleep?  Can we influence (e.g. delay) it?


        Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 02:26:37 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 05 21:26:37 2025
Received: from localhost ([127.0.0.1]:53415 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfrbB-0005O3-0r
	for submit <at> debbugs.gnu.org; Wed, 05 Feb 2025 21:26:37 -0500
Received: from mail-ua1-x92a.google.com ([2607:f8b0:4864:20::92a]:53343)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tfrb8-0005Nn-1S
 for 63620 <at> debbugs.gnu.org; Wed, 05 Feb 2025 21:26:34 -0500
Received: by mail-ua1-x92a.google.com with SMTP id
 a1e0cc1a2514c-866f123081aso118880241.2
 for <63620 <at> debbugs.gnu.org>; Wed, 05 Feb 2025 18:26:34 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738808788; x=1739413588; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=3pjbFsLvbUzZ3hZDQmcI2FyanHhbbZuYzszgBWzzpQw=;
 b=BaFCRfLhmrcng3+aIul/KwLzJoXHX3m3tWsXOSZw9md0SlzFZj8tIzTDeni0k/kRF7
 yGeAXnA5ra7iJmlP2QMEu7Xe/4PrQ5T82VEWffjTrQepDIxNhRAHuC2TPp2kZxgpbPln
 oxKorPrTwOdL7eFu5EUrR9yyRbkaznoylhYk7tZrFsPwhvHT5uyGFgHdIMEj+9sZOHZM
 9UALpx4ku0TVIm7alhE32gJTRSjWgzhY2FaYo85K75gZjz77o72CBkjLAamdOoHwlUMB
 MnuhNd35nh/FC+/W3kGF1x0x9eFWHs03KXmrti/AdaAsRGYnpHrSmF4ezCJiSW+/GYxX
 vwUw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738808788; x=1739413588;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=3pjbFsLvbUzZ3hZDQmcI2FyanHhbbZuYzszgBWzzpQw=;
 b=b5TZIoXU9bjSZ11Fa03XCyswZLLOgbKo5TJqGtoXvWBhnfL+j5uyZj/TlkbdH1Y2TY
 Hmtacl8bMNWnTgra5SSbKPu2LOL7Yb4Pm7LQp7mgXgutS9pCQfhOBX7I++JGR9wMN56p
 rGtoG8roZA0liKui6Oej8wYAAdLOhiY0N24qK5dJfW4rVQCtZ3b5BHwAm9/6b9ZSAegp
 1jEe4JDjpTrKvKrdO8QlBa/yMTE1XoR8FA6je7YyTnUIsAI10Jo2pagoIt6B+9d16+Co
 WBW5k5WBXMLIEBHSQgDIEBBTwEHlCUKDoLUBWvtfLpKM9Z1kGWWKd2d9bsDfsf3wPXyj
 ZVbQ==
X-Forwarded-Encrypted: i=1;
 AJvYcCVIrpcQ8BxiYf47JEQWjyuUwe5HIBwh+j8aIJFMnaQwh5cM+O3jhgbLViUgAxF0Pyehan+1pw==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yx3bYlut7O4ubUB2SpnTgI9xFDtXGWEQpiL+oeXsiYBVzWcHXA9
 +GB+zvujDDniZhlhB8LA+9vxL+ZzgUNjPK121QLWoKSsSNv3ulz6s2oigynwmR81K/4VYtsHzyh
 SMtblT7sCuGuSXYBg6LTF/IkJjvc=
X-Gm-Gg: ASbGncsRLAD6/RYIaYwjKAe6jBN++H9qCP1hdFQa0BkNq1FqHs19HkBU3/9odpTkmKi
 erBgTmCmMgb7LYRUVZ5Z04mHrilZbEFFyHk+TeUjJ+0cwBqAFqrmoOQhtP3MHbq4tlhJqLsTY
X-Google-Smtp-Source: AGHT+IEejlI2S0Jgbfw/E4zm2dBuZTDnNFASmlhFsHi9XpNYb26buG96XIuhD/d4BGUovHVRE9qXSPWlg9xyWp2JxB4=
X-Received: by 2002:a05:6122:4315:b0:516:18cd:c1fc with SMTP id
 71dfb90a1353d-51f0c4e6243mr3390560e0c.8.1738808788171; Wed, 05 Feb 2025
 18:26:28 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
 <877c63x18j.fsf@HIDDEN>
In-Reply-To: <877c63x18j.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Wed, 5 Feb 2025 21:26:17 -0500
X-Gm-Features: AWEUYZmumRq2HmQ3g68kJzzzk5R-4jcLECblfvwFGU4UES-rnPPJPCMgPO6PDSk
Message-ID: <CAN+1Hbr91g3vFHZD2a4iOZJr5jY8nYCvxUiX9_im0bJ-aK_V8w@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Andrew Cohen <acohen@HIDDEN>
Content-Type: multipart/alternative; boundary="00000000000026c5ac062d6ff886"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--00000000000026c5ac062d6ff886
Content-Type: text/plain; charset="UTF-8"

I didn't read the code yet so I'm glad this approach doesn't depend on
dbus.

I will happily work on the NS event generation. I can prototype any time
we're ready.

On Wed, Feb 5, 2025 at 21:20 Andrew Cohen <acohen@HIDDEN> wrote:

> >>>>> "SM" == Ship Mints <shipmints@HIDDEN> writes:
>
>     SM> If someone builds without dbus, say on macOS, does this approach
>     SM> work without dbus?
>
> This assumes that detection of sleep/wake state changes will be added to
> the C source (as you offered to implement for NS :)). The idea is that
> you add code to detect the change at the OS level, and then create an
> event of type sleep-event with an argument of t for sleep and nil for
> wake.  The lisp package detects the sleep-event and runs the appropriate
> code.
>
> It won't work quite yet (this was just showing the concept) since the C
> code has to be written, and the handler function needs to accept either
> an event (a cons) or a boolean. But if everyone thinks this is a valid
> approach we can take care of this.
>
> Best,
> Andy
> --
> Andrew Cohen
>

--00000000000026c5ac062d6ff886
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">I didn&#39;t read the code yet so I&#39;m glad this appro=
ach doesn&#39;t depend on dbus.=C2=A0</div><div dir=3D"auto"><br></div><div=
 dir=3D"auto">I will happily work on the NS event generation. I can prototy=
pe any time we&#39;re ready.=C2=A0</div><div dir=3D"auto"><br><div class=3D=
"gmail_quote gmail_quote_container" dir=3D"auto"><div dir=3D"ltr" class=3D"=
gmail_attr">On Wed, Feb 5, 2025 at 21:20 Andrew Cohen &lt;<a href=3D"mailto=
:acohen@HIDDEN">acohen@HIDDEN</a>&gt; wrote:<br></div><blockquote class=3D"=
gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-=
left:1ex">&gt;&gt;&gt;&gt;&gt; &quot;SM&quot; =3D=3D Ship Mints &lt;<a href=
=3D"mailto:shipmints@HIDDEN" target=3D"_blank">shipmints@HIDDEN</a>&g=
t; writes:<br>
<br>
=C2=A0 =C2=A0 SM&gt; If someone builds without dbus, say on macOS, does thi=
s approach<br>
=C2=A0 =C2=A0 SM&gt; work without dbus?<br>
<br>
This assumes that detection of sleep/wake state changes will be added to<br=
>
the C source (as you offered to implement for NS :)). The idea is that<br>
you add code to detect the change at the OS level, and then create an<br>
event of type sleep-event with an argument of t for sleep and nil for<br>
wake.=C2=A0 The lisp package detects the sleep-event and runs the appropria=
te<br>
code.<br>
<br>
It won&#39;t work quite yet (this was just showing the concept) since the C=
<br>
code has to be written, and the handler function needs to accept either<br>
an event (a cons) or a boolean. But if everyone thinks this is a valid<br>
approach we can take care of this.<br>
<br>
Best,<br>
Andy<br>
-- <br>
Andrew Cohen<br>
</blockquote></div></div>

--00000000000026c5ac062d6ff886--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 02:21:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 05 21:21:04 2025
Received: from localhost ([127.0.0.1]:53400 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfrVo-00058c-1F
	for submit <at> debbugs.gnu.org; Wed, 05 Feb 2025 21:21:04 -0500
Received: from mail-japaneastazon11021095.outbound.protection.outlook.com
 ([52.101.125.95]:19925 helo=TYVP286CU001.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tfrVg-00057r-TC
 for 63620 <at> debbugs.gnu.org; Wed, 05 Feb 2025 21:21:01 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=H1DnzqJq5EGgfdmKF7KZ0qUgHb/78N0CiM1NPnNC3y/uWeKwf9TgNXhPaXL7rioSELPV3H/4VYPXQWqTVTFRZSYedYIQvi+Lon5OzxEl5JaOwiiauuuyfpscPymqIAM1H2DUmpuQ8u2a1HTie0NATbho2Zo0p3mlQxQeWLGTpv585LW/woW/D9EKFrRwrME9hek0LxbQPpeFZ2cl7lQjpqmRz3fyYgZY+v0ldfXJUmXl51d/SOiB5sfJrfzg5dSir/fCzQq71awIIR96xAIhMnWiwul4vAVPy9g8L1aobfpzHREP4gL6H1E4Eo4PekPdwKVG5S3evuwRBkv0IRfk4g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JpeO4Rqzz4IP1rYQJngrxXzz5E1UOmFIhXrAJi7tDUA=;
 b=W2khcnpF5Ss5CZN2IjrIQbk3dOND7WxjlYCYUpXB4rO/88qRTnP9nNphdEf9BrMzNWbOw3hsdQnS4g7ZaTVYmBfZITErufmY/TeOQESgbyHizar149wvbI0RYIm3+omQ3QkZvOxUE1CRJa0j55rspemTxROAOzJehJEGLg0aE+sWMZGZXnnK/5fJsHshaGAF69lXu0HkGFosb1r1TO78yNwBFNAmK8J73xbp7agMfCa93jjDvtNwLXuXUDSQcu1Z8aSNcmxT/z1S0gdqPrPHEIN1Nx/Ii5tefKXnqIpmxcRWrWqUZ1mpoxrLz4OcE1fVat7sDaiYfpGsg6Qlg0eWIA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JpeO4Rqzz4IP1rYQJngrxXzz5E1UOmFIhXrAJi7tDUA=;
 b=NCiGg1eXT1khW880Kpn5gXCZKeqkrA4jBzyBRh30//Sc0oPzF2K+Hzj3e9DED2OpRH/imTf6aabTMw41z3187IExXt2mrDRqMIOfink/JW5NKYtoIjF79/CgV9amY/9dkJip2D9jn9RV6CWYpVnjyBR8aKDEk3UvwnjuCUXJMjYB3aU2PAyHOeFqNTVBXvSr0FdzPpGOPZBQXZc2AdB1Psf+l87EvljmqoHPG7rWgV7wYtF6Rd4gsK7JZzJ0HwDPu/RQZ8fWmRGyrSdOzh3+VnhCEiCl2rvdn7YR9Z/7mMAU7FM7kEzHIK5SrzKkddDuklB6lbAHF/vUHB1/XQjEYQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by OSCP286MB4999.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:348::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.10; Thu, 6 Feb
 2025 02:20:47 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Thu, 6 Feb 2025
 02:20:47 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
 <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
Date: Thu, 06 Feb 2025 10:20:44 +0800
Message-ID: <877c63x18j.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: TP0P295CA0043.TWNP295.PROD.OUTLOOK.COM
 (2603:1096:910:4::18) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|OSCP286MB4999:EE_
X-MS-Office365-Filtering-Correlation-Id: 8a8b23eb-6c7d-44a1-eae5-08dd4654dd50
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?YFD0zw/9E0eGK9QAe9OJtusvkl11hURMBukPw6T6StjTqrDH/vos07Rp+DSq?=
 =?us-ascii?Q?OLf7b/1K9DlJD0JVAyX/nTYEu5ZoAvpRSKQVB1wVpmW51bBIQFyeJZfyZTWc?=
 =?us-ascii?Q?JoomH3aKDkOAYOe2uC6RNshnE6ftuB7aDLAi+P6oxxwa7TOOA9oiPnHQjeSw?=
 =?us-ascii?Q?3zA3yXZxWwvYfdeMGLcHrJ0nSgewrIk+ByGxcBr4TvTKiyPWHdDS7iwV0m8S?=
 =?us-ascii?Q?DTCtpCwSm5uV1HJrAB+Yqh/6MbpA57C6W98kO6p3CFhcKN5lW2cB9aOi9HXP?=
 =?us-ascii?Q?OMLdBBylouZRneMJopnyscSphdfa8NfVmZr4+wV1ENi4qXZHzb7v2/wp7deo?=
 =?us-ascii?Q?S6gH+65BtkVD8TkQGNaX4Ie5PV4d6GpRO+FaQoDAWX/b61o9mXj3HVFX497Y?=
 =?us-ascii?Q?0vENvMihndHwg6Y2WlCRBJVRTWxfXFjZnKSUNdyS9SWv3PNJADIubn0QjoSm?=
 =?us-ascii?Q?uBsDx4tRCSPegXwcMoPFAdNd/i2uoOmyc1I7GRE+A33fY43alnNf5eYaRRZH?=
 =?us-ascii?Q?4tzFIKx4EAWLTfCDSq702+vKu4gmtAUPPgBaHp+0qXEp49A7bVvjsgsb6y6c?=
 =?us-ascii?Q?EEy+CPniBLXGKe28VH7J9mM+DOssLuo4wtrYcoaC/OCcP6IPBMZSwDTxt+QT?=
 =?us-ascii?Q?w5+J8/fFpsTNQp9EclDgheZsnOW6frHS5gk2t0yiykuSYcaaDbn3GCrS+nDS?=
 =?us-ascii?Q?DvnPCBaJuLTZOjxuQrmp1NoiNqrXxVRfAfjMtIsSyebHPqmqvHDcTL42+h7n?=
 =?us-ascii?Q?0qXxFoinftlvmU5MM0PD/IMBPpSErKP2rlKCcnUdsAIzWlkf99jyxr8rCArV?=
 =?us-ascii?Q?1uJXO93HpcnZ4GQglesYzzGnanLVl2kH14xSY64dA1pEIs2EcgXI3oIlBXgv?=
 =?us-ascii?Q?7sYv46VskW9fau7IMdRCD6kBuQUnV0oxUJCJYt7DIwnQ/BCjmuI6rew2F8nT?=
 =?us-ascii?Q?EaROLWYK58EFj37mz70Ah/NXUrKQ2E3q3sI72amyJgKGTFCPS1MuDWGY0Typ?=
 =?us-ascii?Q?IrF4dSTD+vZ/+wDFZUN5pfJL5WSurSn4SkbfDpiwFGSgueRpoY1F0E7EZaph?=
 =?us-ascii?Q?UIp+o0oObk3TxP+qKpzotx4hA9aoiTudnRBJQSPyhC4N7aH8xdqleODOi0rP?=
 =?us-ascii?Q?qx6GvKt8BEQaBP0SXLxjDx9j6q2S9AVXFsmt+scYC58WHlRDs0Rnu5woaR/6?=
 =?us-ascii?Q?kJM8SqLKwNM4B76VLY4KxEARgRvQAhM7PBnU05PQTsbNUpVJ0ltzY4/uGhls?=
 =?us-ascii?Q?KEh0Dh0MdMvbxAYpB+6EWEv/lXrZeybQCh3JNPQUC5BbF8R+6Jmn6IAXPdCf?=
 =?us-ascii?Q?5u002pchDPBzCTNqPE7wegBgI1Gu/x05S3nqD/jf+1p4xI/rzV5fCiVBHQ1L?=
 =?us-ascii?Q?jryYBlGv7hpgddy5Q1hQMv81N3Uy?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(366016)(1800799024)(376014); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?1lti2PSY1BnFCMhlDRvh0C4DCSlgAChrX9X+Ac6KBg4dD7PCIHQwfVDi3gGA?=
 =?us-ascii?Q?d45BQj3V77NFfSDHlFu0OSL63zQ/uZ6heuwR5WVRL/+Yv1lSGaqPTneXlgrV?=
 =?us-ascii?Q?AncVuZ/pCepU6DZSzy5SUcqxhsi0nrufXTP3MXCKGGx1SsVyU62WpIYbbfEG?=
 =?us-ascii?Q?lRkx/9Otv6oAsmbfH3lQcdd3pjNqctnWR7ipMoJciuEAAqXdhJYk/xombW8o?=
 =?us-ascii?Q?fWag90kD3UVaB7PH2JSNkVeWXQJv6bsmbEJxa2vDpISAEfUDGyBnosm1Fl9D?=
 =?us-ascii?Q?f/mVtOjJWbrOhkrPEdRs/9ma1rufYtjH1EILq0HiEMaYMEcey7dE43jNp6ex?=
 =?us-ascii?Q?VZTrPEFmlSkahDeWTEtjY/QUfoGfd+175mon8Dvxb79sdf57Li3ZH/kXeLB4?=
 =?us-ascii?Q?OPu/X9iB5DccjS7foNMFZt87RaQKMhgx7TRgoiF7Jp81RG4RBVpearuMZJnw?=
 =?us-ascii?Q?/+AvzMec+urvfqQYHVSqSWMBP5yN3DCee3drse/fueiCcfSwWpC+kswJPufH?=
 =?us-ascii?Q?0MO/72QZ2bTYafupOn9LfIUVjK379n1VhclruMle9PBOIgv8WJXZkk9mXdPl?=
 =?us-ascii?Q?JkNlduJJlg9sOTkvfke4tgfhOAJpUJhsH8MxxrTeo3ESNtb3vVUkkeRKm3kC?=
 =?us-ascii?Q?+zTnJyBMwAlHrkNJ4maYxpQ6kP94aGJ2M0qSD0XnBrM63YB5uI+u3jOrBd3r?=
 =?us-ascii?Q?sYxrOB7xddND3ERkz5qsdSP2JoUMROeAUiofqeF2reIIFlq53jRL0cnhkJez?=
 =?us-ascii?Q?K2XZ3r8tpmosyvW/GfLCo5xWfc8s6IjttE+I99+cAUsfyDT9QDwIUQrzq7IW?=
 =?us-ascii?Q?iF6ZK4ExRREIAwm2egS8vnovkZ4v7S74Syl3KYw5ynC3/QfQ2U1meily3wR6?=
 =?us-ascii?Q?/3HR+6/J8Y4BA64RhjCzo6SHt6CDEGkOkJgHvGLlcpjoMMiisPLxqVGdyF1x?=
 =?us-ascii?Q?2YhTgV1tyNdpE+pEjtHBjUikz0eNzd+yGEOMRdgO5EnWL+jJgz8slSvfY1Dh?=
 =?us-ascii?Q?YPzcOuf9cpHWOfeilbSnWetM7zeLnHq7xicu6DSOl+VcTrahi5GwBXyV4Ejh?=
 =?us-ascii?Q?hYrpEXEiMjHvAyiyWg6J6ft3QGoRYsWxGTGm7jlIYPFDot+pTQDaef0bQyG7?=
 =?us-ascii?Q?e5oBEfjvxxi3BQWp07EseiUsq80nX/7wavtCnjKcD4A3poyzhi84wTBdgpWE?=
 =?us-ascii?Q?HaaUvyR10ya0ktqK+ldEMJN6NcEZeZQzcYi6zxpxlmlW3JhVjdzet1DUYECc?=
 =?us-ascii?Q?sovrh4Gm3yyq2pDhdDJrxt3FyItn46x9SSpPhix7eH+esAuJkp3Q+oRTDpIh?=
 =?us-ascii?Q?7E+/KucWecAo54MH4H0la7CEtUAN52Ujyc+YeWLVXlvfvNFiHj4nOowKPUOS?=
 =?us-ascii?Q?hEtA7lw+1YxGHOWDYxAgjgkSp0TnH5aIIpRUDexauT+RCAjdl+9hjCNszxxt?=
 =?us-ascii?Q?dTxNZqjZmLfYcfEt64n7ntlOpANRjFNaTAmwutuAmrKzlM0NhBAWbm4xzsTq?=
 =?us-ascii?Q?nR6nU+4vMyI1nwBdgDOKnpxR60IV70vxIQmajrIS/CXn9TP2dg+50hZaCZ7M?=
 =?us-ascii?Q?RQuB1icua0O3IN18I26U1pqNVw2rd9YzLCVVO7wd?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: 8a8b23eb-6c7d-44a1-eae5-08dd4654dd50
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2025 02:20:47.0777 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rondnJ3xcnjGevGiCQs4c1uirEOT3Cg1e6rZeqzNYvw/HKg7GqKoVZfqhF41YnbF
X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSCP286MB4999
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "SM" == Ship Mints <shipmints@HIDDEN> writes:

    SM> If someone builds without dbus, say on macOS, does this approach
    SM> work without dbus?

This assumes that detection of sleep/wake state changes will be added to
the C source (as you offered to implement for NS :)). The idea is that
you add code to detect the change at the OS level, and then create an
event of type sleep-event with an argument of t for sleep and nil for
wake.  The lisp package detects the sleep-event and runs the appropriate
code.

It won't work quite yet (this was just showing the concept) since the C
code has to be written, and the handler function needs to accept either
an event (a cons) or a boolean. But if everyone thinks this is a valid
approach we can take care of this.

Best,
Andy
-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 02:08:45 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 05 21:08:45 2025
Received: from localhost ([127.0.0.1]:53385 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfrJs-0004VN-6F
	for submit <at> debbugs.gnu.org; Wed, 05 Feb 2025 21:08:45 -0500
Received: from mail-vs1-xe2f.google.com ([2607:f8b0:4864:20::e2f]:47492)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tfrJo-0004V5-8X
 for 63620 <at> debbugs.gnu.org; Wed, 05 Feb 2025 21:08:42 -0500
Received: by mail-vs1-xe2f.google.com with SMTP id
 ada2fe7eead31-4ba7738fbc7so94635137.3
 for <63620 <at> debbugs.gnu.org>; Wed, 05 Feb 2025 18:08:40 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738807714; x=1739412514; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=LOw//sGB2QPaeDT0Y3MMtYOp4CnKJw0qIrDOydnyqoA=;
 b=Io07aTbi9+7y6Cu8hVporihAcDdYJp5NDa0L/ZCJKnStzV57ploX0zj7WYGkBuOAyi
 AdVfiUvgFIGxh6+zYZz1r+Gxf3F2NlcoZkbigsJah5UJCQaKaSCQa4RD6RYpuJSPBDeO
 nYYgZh7st1Tr7SwjIZ/1Pbo3NgWtwXWlOTr1I1D8Q9ZK4Zcpb8+wjBJWelMTn8Y3AXaA
 xcb0dgvvVUhpYiHABimUTFpfxeEjL57k8Vi9JdBmHqp5Ns3HZTuGA8G/PX6CE27Z/yPy
 qjyXzF9GF7TYwZodaQL8gStiKF4MmUroYKD9Y1hwjfqZVRZXp1aeSCbN1P4NcgfI5prd
 0gWQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738807714; x=1739412514;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=LOw//sGB2QPaeDT0Y3MMtYOp4CnKJw0qIrDOydnyqoA=;
 b=wWrnP3VuAySbNa9M8GVcp7tE43q5YbJOqUAHGrLyAheEuOWsS/+pGdynELSw86z8rr
 3hrT5BpdFyJU3Ncfd1wS2SElgKNMmbNJqI4bee9MKmYs6O47s9/KIuWdqpv6idnFguZ/
 GfyxaY0X7PiT6Ycpa6rkqijGqiz/CmJurvmqsjCnExFvomJctT8GFRDIkDVSapShw0HN
 y4yF79HosL0CYlC6qANPwyGbMu1EDtaNORoYYxV0eNtZNJYv7PKLGo/VBx4MR8MCBfla
 zZMzEfrUqSCQuiVGYj5PL5rqpCY+XHOoIcYb0Uocytb4gQXS05TlBv3uu3E+ppTGrJ04
 4cUw==
X-Forwarded-Encrypted: i=1;
 AJvYcCUmdwhVZLiypwDVLyxCT73VcvgvN2JNW6/fvWt9ZtxYgQe3F71VmK61x0BNwjWSpJSBjXbdEA==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YxZILgd6sSyr59y3QSOyAzqpOiyPawOE/f8rS6MmfJO0vcLM6TD
 wzH5gc3to8vGUehvzalooTrWT3SaCY7TGgHc0YGteIN4jCI5tZ/Ecn29GQwpHFQYhW7eB3Nb7PS
 9BZ0dk0Br6LXoItOwN2BOL23+pes=
X-Gm-Gg: ASbGncvDt7bkUrtv14wkPYdRb1FRpc3FJrPGhO/ozfV0DMv3aDE6kTF91speb4atXhH
 L2JrUZvoYbN+48Poiciyvfwf2UXZC9Smkbxgz77AUN8WdUOPeUdfIPFx8fuQIflD147UtUGAU
X-Google-Smtp-Source: AGHT+IGkdB5FuuJIrZA/S+8WzeIvXMPmFxOtqdGjw6apr7FwHv+2eViKKPePRzR3esdbhq7F9l4xBW6ogdb83BolReI=
X-Received: by 2002:a05:6102:508f:b0:4b2:5ecf:d124 with SMTP id
 ada2fe7eead31-4ba47a37394mr3497853137.14.1738807714442; Wed, 05 Feb 2025
 18:08:34 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN> <87bjvfx2xv.fsf@HIDDEN>
In-Reply-To: <87bjvfx2xv.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Wed, 5 Feb 2025 21:06:33 -0500
X-Gm-Features: AWEUYZkcE6Iyoe84cCdb_ECdVfesP2DArtJx15U1-L6vA_EGfAr7TpucLoU-Vaw
Message-ID: <CAN+1Hbr3fsHfGyDbVVLOO-7k=LRbSXp94ib+jGd9UKDgdT_OoQ@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Andrew Cohen <acohen@HIDDEN>
Content-Type: multipart/alternative; boundary="00000000000026f43c062d6fb81e"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--00000000000026f43c062d6fb81e
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

If someone builds without dbus, say on macOS, does this approach work
without dbus?

On Wed, Feb 5, 2025 at 8:44=E2=80=AFPM Andrew Cohen <acohen@HIDDEN> wrote:

> >>>>> "SM" =3D=3D Stefan Monnier <monnier@HIDDEN> writes:
>
>     >>> Maybe a hook is not such a bad idea after all.
>     >> But then how would platforms where these events come from the
>     >> window-system call that hook?
>
>     SM> I don't understand the question: why would those not be ale to
>     SM> run the hook?  If it's because it's in a separate UI thread,
>     SM> they can push to `pending_funcalls`, or in the worst case they
>     SM> can add an event into the event queue and then use
>     SM> `special-event-map` to run an ad-hoc function which runs the
>     SM> hook.
>
> I remain open to other ideas, but it seems to me that the most
> straightforward is to allow systems to add a sleep-event into the event
> queue.  My original code installed a callback function to run the hooks
> when a state change is detected.  So this same function can be installed
> into special-event-map and the behavior on all systems is the same.
>
> I've modified the code a bit---I've made the handler function
> configurable with a defcustom and set it by default to the function that
> just runs the hooks. But the same handler will be used on both
> sleep-events and dbus detection.  The only difference is that if the
> system supports dbus, dbus detection of state changes will be used,
> while in other cases sleep-events will trigger the handler.
>
> ;;; sleep.el --- run hooks on device sleep and wake  -*- lexical-binding:=
t
> -*-
>
> ;; Copyright (C) 2025 Free Software Foundation, Inc.
>
> ;; Author: Andrew Cohen <>
> ;; Maintainer: emacs-devel@HIDDEN
> ;; Keywords:
>
> ;; This file is part of GNU Emacs.
>
> ;; GNU Emacs is free software: you can redistribute it and/or modify
> ;; it under the terms of the GNU General Public License as published by
> ;; the Free Software Foundation, either version 3 of the License, or
> ;; (at your option) any later version.
>
> ;; GNU Emacs is distributed in the hope that it will be useful,
> ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
> ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> ;; GNU General Public License for more details.
>
> ;; You should have received a copy of the GNU General Public License
> ;; along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.
>
> ;;; Commentary:
>
> ;;; This global minor mode enables evaluating code when the device
> ;;; running Emacs enters or leaves the sleep state.  The hooks
> ;;; `sleep-sleep-hook' and `sleep-wake-hook' are run when the system
> ;;; detects that it is going to sleep or waking up.  Currently only a
> ;;; D-Bus interface to detect sleep state change is implemented.
>
> ;;; Code:
>
> (require 'dbus)
>
> (defgroup sleep nil
>   "Run hooks on device entering/leaving the sleep state."
>   :group 'hardware)
>
> (defcustom sleep-handler-function 'handle-sleep-event
>   "Function called on device sleep state change.
> The function takes a single boolean argument (t for sleep and nil for
> wake).  The default function just runs the sleep and wake hooks."
>   :group 'sleep
>   :type 'function)
>
> (defcustom sleep-sleep-hook nil
>   "Hook to run on device entering sleep."
>   :group 'sleep
>   :type 'hook)
>
> (defcustom sleep-wake-hook nil
>   "Hook to run on device leaving sleep."
>   :group 'sleep
>   :type 'hook)
>
> (defvar sleep-dbus-registration-object nil
>   "Object returned from `dbus-register-signal'.
> This is recorded so that the signal may be unregistered.")
>
> (defun sleep-dbus-detection (mode)
>   "Enable D-Bus detection of device sleep/wake state change.
> When enabled run `sleep-handler-function' when a state change is
> detected.  Disable detection if MODE is nil."
>   (if mode
>       (unless sleep-dbus-registration-object
>         (setq sleep-dbus-registration-object
>               (dbus-register-signal :system
>                                     "org.freedesktop.login1"
>                                     "/org/freedesktop/login1"
>                                     "org.freedesktop.login1.Manager"
>                                     "PrepareForSleep"
>                                     sleep-handler-function)))
>     (condition-case nil
>         (progn
>           (ignore-error (dbus-error wrong-type-argument)
>             (dbus-unregister-object
>              sleep-dbus-registration-object))
>           (setq sleep-dbus-registration-object nil))
>       (wrong-type-argument nil))))
>
> (defun handle-sleep-event (sleep-wake)
>   "Handler to execute sleep and wake functions.
> SLEEP-WAKE is t on sleeping and nil on waking."
>   (ignore-errors
>     (if sleep-wake
>         (run-hooks 'sleep-sleep-hook)
>       (run-hooks 'sleep-wake-hook))))
>
> ;;;###autoload
> (define-minor-mode sleep-wake-mode
>   "Toggle sleep/wake detection.
>
> With `sleep-wake-mode' enabled, the hooks `sleep-sleep-hook' and
> `sleep-wake-hook' will be executed when the device enters or leaves the
> sleep state.  This is currently only available on systems that support
> D-Bus detection of sleep state changes."
>   :global t
>   :group 'sleep
>   (cond
>    ((and (featurep 'dbusbind)
>          (member "org.freedesktop.login1"
>                  (dbus-list-activatable-names :system)))
>     (sleep-dbus-detection sleep-wake-mode))
>    (t
>     (if sleep-wake-mode
>         (define-key special-event-map [sleep-event] sleep-handler-functio=
n)
>       (define-key special-event-map [sleep-event] 'ignore)))))
>
> (provide 'sleep)
> ;;; sleep.el ends here
>
>
> --
> Andrew Cohen
>

--00000000000026f43c062d6fb81e
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">If someone builds without dbus, say on macOS, does this approach work wi=
thout dbus?</div></div><br><div class=3D"gmail_quote gmail_quote_container"=
><div dir=3D"ltr" class=3D"gmail_attr">On Wed, Feb 5, 2025 at 8:44=E2=80=AF=
PM Andrew Cohen &lt;<a href=3D"mailto:acohen@HIDDEN">acohen@HIDDEN</a>&gt; =
wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0=
px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">&gt;&gt;&=
gt;&gt;&gt; &quot;SM&quot; =3D=3D Stefan Monnier &lt;<a href=3D"mailto:monn=
ier@HIDDEN" target=3D"_blank">monnier@HIDDEN</a>&gt; wr=
ites:<br>
<br>
=C2=A0 =C2=A0 &gt;&gt;&gt; Maybe a hook is not such a bad idea after all.<b=
r>
=C2=A0 =C2=A0 &gt;&gt; But then how would platforms where these events come=
 from the<br>
=C2=A0 =C2=A0 &gt;&gt; window-system call that hook?<br>
<br>
=C2=A0 =C2=A0 SM&gt; I don&#39;t understand the question: why would those n=
ot be ale to<br>
=C2=A0 =C2=A0 SM&gt; run the hook?=C2=A0 If it&#39;s because it&#39;s in a =
separate UI thread,<br>
=C2=A0 =C2=A0 SM&gt; they can push to `pending_funcalls`, or in the worst c=
ase they<br>
=C2=A0 =C2=A0 SM&gt; can add an event into the event queue and then use<br>
=C2=A0 =C2=A0 SM&gt; `special-event-map` to run an ad-hoc function which ru=
ns the<br>
=C2=A0 =C2=A0 SM&gt; hook.<br>
<br>
I remain open to other ideas, but it seems to me that the most<br>
straightforward is to allow systems to add a sleep-event into the event<br>
queue.=C2=A0 My original code installed a callback function to run the hook=
s<br>
when a state change is detected.=C2=A0 So this same function can be install=
ed<br>
into special-event-map and the behavior on all systems is the same.<br>
<br>
I&#39;ve modified the code a bit---I&#39;ve made the handler function<br>
configurable with a defcustom and set it by default to the function that<br=
>
just runs the hooks. But the same handler will be used on both<br>
sleep-events and dbus detection.=C2=A0 The only difference is that if the<b=
r>
system supports dbus, dbus detection of state changes will be used,<br>
while in other cases sleep-events will trigger the handler.<br>
<br>
;;; sleep.el --- run hooks on device sleep and wake=C2=A0 -*- lexical-bindi=
ng:t -*-<br>
<br>
;; Copyright (C) 2025 Free Software Foundation, Inc.<br>
<br>
;; Author: Andrew Cohen &lt;&gt;<br>
;; Maintainer: <a href=3D"mailto:emacs-devel@HIDDEN" target=3D"_blank">ema=
cs-devel@HIDDEN</a><br>
;; Keywords:<br>
<br>
;; This file is part of GNU Emacs.<br>
<br>
;; GNU Emacs is free software: you can redistribute it and/or modify<br>
;; it under the terms of the GNU General Public License as published by<br>
;; the Free Software Foundation, either version 3 of the License, or<br>
;; (at your option) any later version.<br>
<br>
;; GNU Emacs is distributed in the hope that it will be useful,<br>
;; but WITHOUT ANY WARRANTY; without even the implied warranty of<br>
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.=C2=A0 See the<br>
;; GNU General Public License for more details.<br>
<br>
;; You should have received a copy of the GNU General Public License<br>
;; along with GNU Emacs.=C2=A0 If not, see &lt;<a href=3D"https://www.gnu.o=
rg/licenses/" rel=3D"noreferrer" target=3D"_blank">https://www.gnu.org/lice=
nses/</a>&gt;.<br>
<br>
;;; Commentary:<br>
<br>
;;; This global minor mode enables evaluating code when the device<br>
;;; running Emacs enters or leaves the sleep state.=C2=A0 The hooks<br>
;;; `sleep-sleep-hook&#39; and `sleep-wake-hook&#39; are run when the syste=
m<br>
;;; detects that it is going to sleep or waking up.=C2=A0 Currently only a<=
br>
;;; D-Bus interface to detect sleep state change is implemented.<br>
<br>
;;; Code:<br>
<br>
(require &#39;dbus)<br>
<br>
(defgroup sleep nil<br>
=C2=A0 &quot;Run hooks on device entering/leaving the sleep state.&quot;<br=
>
=C2=A0 :group &#39;hardware)<br>
<br>
(defcustom sleep-handler-function &#39;handle-sleep-event<br>
=C2=A0 &quot;Function called on device sleep state change.<br>
The function takes a single boolean argument (t for sleep and nil for<br>
wake).=C2=A0 The default function just runs the sleep and wake hooks.&quot;=
<br>
=C2=A0 :group &#39;sleep<br>
=C2=A0 :type &#39;function)<br>
<br>
(defcustom sleep-sleep-hook nil<br>
=C2=A0 &quot;Hook to run on device entering sleep.&quot;<br>
=C2=A0 :group &#39;sleep<br>
=C2=A0 :type &#39;hook)<br>
<br>
(defcustom sleep-wake-hook nil<br>
=C2=A0 &quot;Hook to run on device leaving sleep.&quot;<br>
=C2=A0 :group &#39;sleep<br>
=C2=A0 :type &#39;hook)<br>
<br>
(defvar sleep-dbus-registration-object nil<br>
=C2=A0 &quot;Object returned from `dbus-register-signal&#39;.<br>
This is recorded so that the signal may be unregistered.&quot;)<br>
<br>
(defun sleep-dbus-detection (mode)<br>
=C2=A0 &quot;Enable D-Bus detection of device sleep/wake state change.<br>
When enabled run `sleep-handler-function&#39; when a state change is<br>
detected.=C2=A0 Disable detection if MODE is nil.&quot;<br>
=C2=A0 (if mode<br>
=C2=A0 =C2=A0 =C2=A0 (unless sleep-dbus-registration-object<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (setq sleep-dbus-registration-object<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (dbus-register-signal :sys=
tem<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &quot;org.freedesktop.=
login1&quot;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &quot;/org/freedesktop=
/login1&quot;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &quot;org.freedesktop.=
login1.Manager&quot;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &quot;PrepareForSleep&=
quot;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 sleep-handler-function=
)))<br>
=C2=A0 =C2=A0 (condition-case nil<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (progn<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (ignore-error (dbus-error wrong-type-arg=
ument)<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (dbus-unregister-object<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0sleep-dbus-registration-obj=
ect))<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (setq sleep-dbus-registration-object nil=
))<br>
=C2=A0 =C2=A0 =C2=A0 (wrong-type-argument nil))))<br>
<br>
(defun handle-sleep-event (sleep-wake)<br>
=C2=A0 &quot;Handler to execute sleep and wake functions.<br>
SLEEP-WAKE is t on sleeping and nil on waking.&quot;<br>
=C2=A0 (ignore-errors<br>
=C2=A0 =C2=A0 (if sleep-wake<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (run-hooks &#39;sleep-sleep-hook)<br>
=C2=A0 =C2=A0 =C2=A0 (run-hooks &#39;sleep-wake-hook))))<br>
<br>
;;;###autoload<br>
(define-minor-mode sleep-wake-mode<br>
=C2=A0 &quot;Toggle sleep/wake detection.<br>
<br>
With `sleep-wake-mode&#39; enabled, the hooks `sleep-sleep-hook&#39; and<br=
>
`sleep-wake-hook&#39; will be executed when the device enters or leaves the=
<br>
sleep state.=C2=A0 This is currently only available on systems that support=
<br>
D-Bus detection of sleep state changes.&quot;<br>
=C2=A0 :global t<br>
=C2=A0 :group &#39;sleep<br>
=C2=A0 (cond<br>
=C2=A0 =C2=A0((and (featurep &#39;dbusbind)<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(member &quot;org.freedesktop.login1&quot=
;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(dbus-list-ac=
tivatable-names :system)))<br>
=C2=A0 =C2=A0 (sleep-dbus-detection sleep-wake-mode))<br>
=C2=A0 =C2=A0(t<br>
=C2=A0 =C2=A0 (if sleep-wake-mode<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (define-key special-event-map [sleep-event] sle=
ep-handler-function)<br>
=C2=A0 =C2=A0 =C2=A0 (define-key special-event-map [sleep-event] &#39;ignor=
e)))))<br>
<br>
(provide &#39;sleep)<br>
;;; sleep.el ends here<br>
<br>
<br>
-- <br>
Andrew Cohen<br>
</blockquote></div>

--00000000000026f43c062d6fb81e--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 6 Feb 2025 01:44:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 05 20:44:10 2025
Received: from localhost ([127.0.0.1]:53364 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfqw6-0003OM-5n
	for submit <at> debbugs.gnu.org; Wed, 05 Feb 2025 20:44:10 -0500
Received: from mail-japanwestazlp170100001.outbound.protection.outlook.com
 ([2a01:111:f403:c406::1]:61539
 helo=OS0P286CU011.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tfqw4-0003Nb-CQ
 for 63620 <at> debbugs.gnu.org; Wed, 05 Feb 2025 20:44:09 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=VlEWwPfNsV1dQPb8ZAHOyJTftK8oEMUmGPNW1Du70ovsdjfTeedAgglhHV4Bs+UjwTt2g3cgEy+bPctm5e08QPzZSfPifsV4QtrYFbRUhGLHMvz1YA1JX7aqvdhhzWwEQviaDYmoe7g0Rz2yshVbh0nWKzKbFOtLMLKHdo3Kn3US3nrc2YEpeWfngqDrbplyDfs97CyMQKdhRdP/a5QeJExXla8WyLDYgnYAEDDy+TeuuLt6qkjftW9dtZTnZsaebevCf+qCF52znp/lMfytLy0fcRLAY+ePAi/2JHQ67KwJZg8L4guD9IOLNKXposFDAYzFFdMe3mAbsK42Eu9UDA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xf/cebNemosDlrDmmmEpGaHK/jJ0gG5dN8DhXu7X/As=;
 b=EQOz9mFwE1yQUDeo+PlEFL8w5d2z/43YJhIXhIdov8RxYEIQHfwgmaRLNgczG8znzPhzpm2RaBBSS9E/qQV8e2vAVkamgXzPPig258PHsadzxqd6TlTBgFrU8AcwXWcriBuZoYsx5jwdCd3ZlC5ZmSpl+feDMz+s0jcUilTkfcker6OIJMmqYP41GUChAQGiNr7LSeA5vKelMWyDF62MzI4jfPArsxTS+xu8jWetCcx7p76MnhGrT8ET4APtnSPEzhtHbVtlVb1lMy4m/UMnPuqhHIFq1VS3ZVJCosbCSe/y6JvZZ6Qf13tLQ1aFpQVJXDDPDajjBLdZ20UoleC8/g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xf/cebNemosDlrDmmmEpGaHK/jJ0gG5dN8DhXu7X/As=;
 b=GRaMfkxA9uyV9YqXoekA/ml8epqwnMaR6DzhZsRgZ2yIO6rk/vklGOWqYFoHby+U/uas1W/E+3mwrrFX4Qa+1fUB7kTKmM52hJ8NAbX19ezcnm3q11NoWRuuY7rvFN2S7IY5FbjWTW6Bk+NrQ0wKuLxFTplvVK7SHag+DTSGLF1ynAvl3bs4QGwemL/PY0TfeStvqbHK/SjPxyKTzrxQ6pxyy1h2k6F0m5LeSgTPKwrCxOS40xBNCp1ukTbqO5MMOd3FSowrB3p4gciVbbALOAM5z8IigdY0026WXAbZ4t6lyr3ua8YwvolPgtITQ6qfgOhQoZTp1Bh+mNES5S4hhQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by OS9P286MB5221.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:311::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.25; Thu, 6 Feb
 2025 01:43:59 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Thu, 6 Feb 2025
 01:43:59 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <jwv5xloja7l.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
 <jwv5xloja7l.fsf-monnier+emacs@HIDDEN>
Date: Thu, 06 Feb 2025 09:43:56 +0800
Message-ID: <87bjvfx2xv.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: TP0P295CA0045.TWNP295.PROD.OUTLOOK.COM
 (2603:1096:910:4::16) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|OS9P286MB5221:EE_
X-MS-Office365-Filtering-Correlation-Id: 0f0712cf-aed1-429b-c677-08dd464fb9ea
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|1800799024;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?eJAmRgIVv9Rxhi8N9Rtr/yIoNPeGLeolRdJQ8Hv5mCXImQBxoFIXX4DXjr74?=
 =?us-ascii?Q?TDzGwXg4UccHPNcfZC2/HfCxv5fIMBXwnBNR1NefhT93CLGvRqWgYekjH5Qg?=
 =?us-ascii?Q?RysmGedRsDr8NYOKu9qiNiQ/FaJT/sRSSkI82wb/pSZs0r4U5DeZQjuFOuDy?=
 =?us-ascii?Q?fliZJgY/Yp9nMh4LAWnOiTdkADB3DaqWO+KtHWx7IdK3qJ1DjfbMa5bsPfY3?=
 =?us-ascii?Q?cAUG5R7hwoZMB/+dLRazkRgylTzcZ2nTRaLhR6MAYdCAfKRkT4fOAHKPUGP2?=
 =?us-ascii?Q?L1wM0gG7Yeq8tfLAYcBXO91toNQ4tBwIoZKjKP5srzolc1rus8Qg3BCH4ELW?=
 =?us-ascii?Q?Lz+hMFuMUKaC3NIZ78D9zlSgTpuyi6OL/3ndSCC0eA2Auww0Q2+deNpfVBMt?=
 =?us-ascii?Q?9ylcz5hxBiisgxAwcTChEgGHjBuzx5omQF4eqcvOtMmdwrJZkwGyWN0YRa0h?=
 =?us-ascii?Q?GRn0n044WqD+GLgjCl0dLtcapo+5DFY3F0QeNv14irfoiLVFzgHDCwowC2uF?=
 =?us-ascii?Q?/sm9kgPEsrNIj4BJIPhF7GXZucZdH12Y8CkbZVYPfZzlxJGZv8vo5EQGVZ9x?=
 =?us-ascii?Q?r47t3AclVdL9+gh60XCv9YERr87FQ+u5FG+C16scd2OdFapnHRZWKjjrV6pA?=
 =?us-ascii?Q?0JxY7IsutDdS0xYNjtaDxe4Ica2fvoYgsEYh8Nrf5PoM2WuvdjKihX1nbE5j?=
 =?us-ascii?Q?vBYLcWrFqrtbCQp2h4oh0K+9/Po95AarqqKpZPB/gS2OuRtw0E1+ZtGheryI?=
 =?us-ascii?Q?MN03d0q7ho+4OD70lkHnPtrhHuPY31NdcOW7dVWgSB0k5Gflf0HCHG1sGQtB?=
 =?us-ascii?Q?CQrH3q7v0h9L/JyRnBIFg0r1TeT5rFeb20Fl3sMcPJnKe2TxgoHHFIKdmfA7?=
 =?us-ascii?Q?iYj3hgl++yiXhNWSS0TB6mjzVsPXUv0SQTqC/PaDUVsTIZYNdDHjzReSqUJB?=
 =?us-ascii?Q?oT8+EIJHvD7YKes39TqTblS+Xlt/9txNfYE14PjJPD5YOEi3eFGEhjg5WXNk?=
 =?us-ascii?Q?mrtz+/BAKf0rwz2d2ySPoq6fbqZoOjpgSIJdLzuuV2Q7QfrD4sHYRAkq15Wq?=
 =?us-ascii?Q?tk1mvl31g03KMQKW6DBUEBGRf/WBDp2UqvgzPNhEZD+S8ofYiuJ1ykhKR680?=
 =?us-ascii?Q?EqIA7iqzjysK4wEpFdkBJd5Dg0GkJGcPSAE3aK8ayf2hh3gu5V+mRuEZ8Tl6?=
 =?us-ascii?Q?0VtYpVyuIRUezFxEjKvp5wPfAzV23MdxMMkvUwkYWsDHSM5lfoDBr8E1eXgO?=
 =?us-ascii?Q?h1vAy38pFMsgefw8YEqkNnM9oRjh0b9O5cSg0kcfdyWRmM9t+W60NRzXxNZ9?=
 =?us-ascii?Q?ER8rEnsW7j0tTiCbChcUEBJqozJstq0w97UrhuCfg58GoA=3D=3D?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(366016)(376014)(1800799024); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?UOt34DHrZNSE3MROGXbGph+L7I0H61UBpEKr9zSbXQqtTAMqYGOqWgHvi8QT?=
 =?us-ascii?Q?8HaVzblHSGNy2N/wfpYiFYTW0wpYO439FCW7u+6/GJrkUES1PiJ2lZaclr0z?=
 =?us-ascii?Q?Gt3DriWyw54Pa6l/ircI470347dd7zWPtCb5r09+skD9RAXKfG0IWHvtzGT9?=
 =?us-ascii?Q?mjHfPlHaAdjF6jeuArDcdmV/QH18caynPRcmJDy3zaNRUDTNdtzZ+tgytOMr?=
 =?us-ascii?Q?dvM+4USsXGnvUEYCLjOPmgzfXglXPUl53TwyB6CZ7FafeRZdS6nCVMx0hHdN?=
 =?us-ascii?Q?KGZSN0pI1dXo8/wFYKLwCQmTQnax5Q+GoKKta7czxghfeIXiyv8ax+h1Awj/?=
 =?us-ascii?Q?d0rP0RSci8wPWwb/NzmxMkRAbri8thy4abHPcuDiaYNZ0P+Brd4qyjfPVqus?=
 =?us-ascii?Q?rK9347+v2EVT50bg3Qqr+2nFmTIMI6FLMgesztXZc+pvGajZ1L9RycTyiOMx?=
 =?us-ascii?Q?kDkOL8qxsFgScqDiDdOVbDYzOWFj5rca41Yc/pl2FeTCzrnJzzNqCD8u8we/?=
 =?us-ascii?Q?KKCC5hNLP5OiUvlMHpWtFbdWcpQYJqHyDa4nEd5NKjR71ulDIFPc1SdJripI?=
 =?us-ascii?Q?S9otuPGnnAaRYkjmzc0jSCk5sw3xBXthj+ilekfMKT1yGkqVdDnJ3MoerZnu?=
 =?us-ascii?Q?LPr/uTdmpbyQyxsbXx0iF7rKIrgkHBE8Wlw1+iyCsYQd8YMf7hKJ894RQhMB?=
 =?us-ascii?Q?UMWVsihu1JicbAofX/AOLtwzmEq1tYHTDFJ5dZ4qBngPKhqsBc2zYyYkAmK4?=
 =?us-ascii?Q?qz/f4mvoiOfbssmXj7tdYUEgT+7pdoV/D+vITorVV41DPuxOSwXzKZkZ+nuz?=
 =?us-ascii?Q?oRlL4OyNNOIWYMH5+TWSK/PidJ0+SL+pg8pAnrNoMT0Jf+j3VkAg1RLhkJzS?=
 =?us-ascii?Q?PnqAianu8eL8N22lCiPqFXep7Ax32DJEAvui3qYtQH8tUbo8bW7UTHaa2ybd?=
 =?us-ascii?Q?nu8RDXJp5tnUAePvfcVHJJb3FJflNYMZ6LeYh9mTAqF1UV8sia8bMLcIb7Sp?=
 =?us-ascii?Q?XTZooRvkYqn/0s5k2GK1CkUR4lEj/3EMqX83xvDx9Yd8sjGjfpqg5zF0/lXp?=
 =?us-ascii?Q?Q6VKYT31LUjdachtOY5GDpEx+prg3ydvo8zFYVlUng2byLgu/xEB5JHSEWE1?=
 =?us-ascii?Q?hBGC61wVt+2m6fy9G5oXnsngoHAKJ15jkIg7wEsqjhCL+IgpLjWw6ynxuxIR?=
 =?us-ascii?Q?r6x85PYwQswDBVk3dJjX+mZ+DiImUMFrVJrjdlvgrdSkvZUiEPuRCbT6W6dh?=
 =?us-ascii?Q?f+4lJwARx2x8Z0f0M9a+1+8fOnPzur0jHBnB8dgaaEGs+qd7cpzCYjRvkE0q?=
 =?us-ascii?Q?GX+9mOxrspjW5oai5ybfq0QfVbcCT1cS4d74f+JJRbZ3T+EN4GXZ5Giqtfz3?=
 =?us-ascii?Q?WdSsEbZMSlBTh1FB8OMIzAt8H3c9CxdZswNV+aOlUyTixELv5Cthr5XUk1Ku?=
 =?us-ascii?Q?Qy6khtNGjomoaILtIk3SOYWOJjMaNLOot8zBi+jU7kHm84Wd8UBPS4j9PoEY?=
 =?us-ascii?Q?dA//UDAXsFJnndj/bXAbj+tHXY6ZnqDjroJO5fzd0k1I4Zzi66rE7YbsH8Z1?=
 =?us-ascii?Q?wjo95hrtyG11JS2N1MjYUDBSwV7GzvcA1fDtzWBV?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: 0f0712cf-aed1-429b-c677-08dd464fb9ea
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2025 01:43:59.3996 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: NCRihFwzhvaZQmX/hJJZUz06pG0qodaYXBzWEGH8wJRTEvKi3VXPEWpPQ+p489oQ
X-MS-Exchange-Transport-CrossTenantHeadersStamped: OS9P286MB5221
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN,
 Ship Mints <shipmints@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "SM" == Stefan Monnier <monnier@HIDDEN> writes:

    >>> Maybe a hook is not such a bad idea after all.
    >> But then how would platforms where these events come from the
    >> window-system call that hook?

    SM> I don't understand the question: why would those not be ale to
    SM> run the hook?  If it's because it's in a separate UI thread,
    SM> they can push to `pending_funcalls`, or in the worst case they
    SM> can add an event into the event queue and then use
    SM> `special-event-map` to run an ad-hoc function which runs the
    SM> hook.

I remain open to other ideas, but it seems to me that the most
straightforward is to allow systems to add a sleep-event into the event
queue.  My original code installed a callback function to run the hooks
when a state change is detected.  So this same function can be installed
into special-event-map and the behavior on all systems is the same.

I've modified the code a bit---I've made the handler function
configurable with a defcustom and set it by default to the function that
just runs the hooks. But the same handler will be used on both
sleep-events and dbus detection.  The only difference is that if the
system supports dbus, dbus detection of state changes will be used,
while in other cases sleep-events will trigger the handler.

;;; sleep.el --- run hooks on device sleep and wake  -*- lexical-binding:t -*-

;; Copyright (C) 2025 Free Software Foundation, Inc.

;; Author: Andrew Cohen <>
;; Maintainer: emacs-devel@HIDDEN
;; Keywords:

;; This file is part of GNU Emacs.

;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.

;;; Commentary:

;;; This global minor mode enables evaluating code when the device
;;; running Emacs enters or leaves the sleep state.  The hooks
;;; `sleep-sleep-hook' and `sleep-wake-hook' are run when the system
;;; detects that it is going to sleep or waking up.  Currently only a
;;; D-Bus interface to detect sleep state change is implemented.

;;; Code:

(require 'dbus)

(defgroup sleep nil
  "Run hooks on device entering/leaving the sleep state."
  :group 'hardware)

(defcustom sleep-handler-function 'handle-sleep-event
  "Function called on device sleep state change.
The function takes a single boolean argument (t for sleep and nil for
wake).  The default function just runs the sleep and wake hooks."
  :group 'sleep
  :type 'function)

(defcustom sleep-sleep-hook nil
  "Hook to run on device entering sleep."
  :group 'sleep
  :type 'hook)

(defcustom sleep-wake-hook nil
  "Hook to run on device leaving sleep."
  :group 'sleep
  :type 'hook)

(defvar sleep-dbus-registration-object nil
  "Object returned from `dbus-register-signal'.
This is recorded so that the signal may be unregistered.")

(defun sleep-dbus-detection (mode)
  "Enable D-Bus detection of device sleep/wake state change.
When enabled run `sleep-handler-function' when a state change is
detected.  Disable detection if MODE is nil."
  (if mode
      (unless sleep-dbus-registration-object
        (setq sleep-dbus-registration-object
              (dbus-register-signal :system
                                    "org.freedesktop.login1"
                                    "/org/freedesktop/login1"
                                    "org.freedesktop.login1.Manager"
                                    "PrepareForSleep"
                                    sleep-handler-function)))
    (condition-case nil
        (progn
          (ignore-error (dbus-error wrong-type-argument)
            (dbus-unregister-object
             sleep-dbus-registration-object))
          (setq sleep-dbus-registration-object nil))
      (wrong-type-argument nil))))

(defun handle-sleep-event (sleep-wake)
  "Handler to execute sleep and wake functions.
SLEEP-WAKE is t on sleeping and nil on waking."
  (ignore-errors
    (if sleep-wake
        (run-hooks 'sleep-sleep-hook)
      (run-hooks 'sleep-wake-hook))))

;;;###autoload
(define-minor-mode sleep-wake-mode
  "Toggle sleep/wake detection.

With `sleep-wake-mode' enabled, the hooks `sleep-sleep-hook' and
`sleep-wake-hook' will be executed when the device enters or leaves the
sleep state.  This is currently only available on systems that support
D-Bus detection of sleep state changes."
  :global t
  :group 'sleep
  (cond
   ((and (featurep 'dbusbind)
         (member "org.freedesktop.login1"
                 (dbus-list-activatable-names :system)))
    (sleep-dbus-detection sleep-wake-mode))
   (t
    (if sleep-wake-mode
        (define-key special-event-map [sleep-event] sleep-handler-function)
      (define-key special-event-map [sleep-event] 'ignore)))))

(provide 'sleep)
;;; sleep.el ends here


-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 5 Feb 2025 22:37:33 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 05 17:37:33 2025
Received: from localhost ([127.0.0.1]:53108 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfo1V-0005Uk-AB
	for submit <at> debbugs.gnu.org; Wed, 05 Feb 2025 17:37:33 -0500
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:3263)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1tfo1S-0005UL-Su
 for 63620 <at> debbugs.gnu.org; Wed, 05 Feb 2025 17:37:31 -0500
Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 753D6803EA;
 Wed,  5 Feb 2025 17:37:23 -0500 (EST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1738795042;
 bh=1wr1BOrDFZZr2lhP5QvtKWQOPRcBJQkdju2Uj6on39g=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=OuBl17VTdfIqvmL5hNUM8GRmTJXFwJ3cC0uCrb2C3MKAVMXG/bJCvD/gevJzcdBI7
 c79m1wz5/Xist7jDRksMGA79Y1TI4v4b8fLfu+i33H+sUdtMtog4hNyPqr+jLNQkz8
 uEPJiYoWJyjQereg8+/W9TqSkgaYm/BKXkYgzGeZmDodCqA9/KXb8WTHz7/s39wehS
 tcC0+GcKL4fqq87cMnDYjqkPEqVOHEnD+rscpx29Kd+cbWIXDhQ3kkFK56kXpkhJnV
 f2HR3eBpd76r0s6xom+ERZGvRpsyJcI+q+V4ocr9rR9mwiWULMNEHU0AII7kkJovu4
 hof+yJe9tVSPA==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 9E7D38045E;
 Wed,  5 Feb 2025 17:37:22 -0500 (EST)
Received: from alfajor (104-195-232-86.cpe.teksavvy.com [104.195.232.86])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 6458312041A;
 Wed,  5 Feb 2025 17:37:22 -0500 (EST)
From: Stefan Monnier <monnier@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <86y0yk6t24.fsf@HIDDEN> (Eli Zaretskii's message of "Wed, 05 Feb
 2025 22:21:55 +0200")
Message-ID: <jwv5xloja7l.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> <86y0yk6t24.fsf@HIDDEN>
Date: Wed, 05 Feb 2025 17:37:20 -0500
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL -0.037 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

>> Maybe a hook is not such a bad idea after all.
> But then how would platforms where these events come from the
> window-system call that hook?

I don't understand the question: why would those not be ale to run the
hook?  If it's because it's in a separate UI thread, they can push to
`pending_funcalls`, or in the worst case they can add an event into the
event queue and then use `special-event-map` to run an ad-hoc function
which runs the hook.

Of course, we could similarly make the D-bus code manually do
(lookup-key special-event-map [sleep-event])


        Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 5 Feb 2025 20:22:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 05 15:22:10 2025
Received: from localhost ([127.0.0.1]:52789 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfluT-0001Se-PG
	for submit <at> debbugs.gnu.org; Wed, 05 Feb 2025 15:22:10 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:43210)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tfluQ-0001S2-5t
 for 63620 <at> debbugs.gnu.org; Wed, 05 Feb 2025 15:22:08 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tfluJ-0003zl-OJ; Wed, 05 Feb 2025 15:21:59 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=I4eVMdq1vcCl9RHEMl2Ls/UrVRYgKOKvNTXOi9xDORE=; b=mQtDmxaUJ30dYTYmD54Z
 i8MgsjboLN/ubKhna41JW84Cl+0tVRy9xW0TIVEsiyyMIlkA0RkaNXmS8tpwD7TpnNoST+Q5A5fvm
 hwjYeA1n1Ty1ivbqHLuhlJmMYwAWDEJhdaPMc1slcS0hYf11xZI22dNog4tvOvQ42YPCqiLDo6nON
 LKxqpg0A0Rt1r+DRJGCTlcSEFpKPj4Dji/bwhYWFRQercmeB/rapTOBrl+kMCbqs+mCMNtVwIFduU
 fyYWxoN1NKBAILnwy2/xssnKuvQ0d2UhP3RSQ5h2h3acn3ZiGTPk+rA5ow3FP3GY8wB/q0eDpccQ8
 dW2PZVrwrWGANw==;
Date: Wed, 05 Feb 2025 22:21:55 +0200
Message-Id: <86y0yk6t24.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
In-Reply-To: <jwvh658jlr1.fsf-monnier+emacs@HIDDEN> (message from Stefan
 Monnier on Wed, 05 Feb 2025 13:21:41 -0500)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
 <jwvh658jlr1.fsf-monnier+emacs@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Stefan Monnier <monnier@HIDDEN>
> Cc: Eli Zaretskii <eliz@HIDDEN>,  63620 <at> debbugs.gnu.org,
>   michael.albinus@HIDDEN
> Date: Wed, 05 Feb 2025 13:21:41 -0500
> 
> >> According the the elisp manual special events "cannot be unread with
> >> ‘unread-command-events’".
> > Oh, right!  So pushing to `unread-command-events` will only work if the
> > binding is made in a normal map.  That's not the end of the world, but
> > it's not ideal.  E.g. it doesn't really make sense to have the behavior
> > depend on the mode of the current buffer, and it seems undesirable to
> > fail to run the binding if you happened to type `C-x` just
> > before sleeping.
> 
> Maybe a hook is not such a bad idea after all.

But then how would platforms where these events come from the
window-system call that hook?  We'd need two different mechanisms for
the same feature, and two different ways of calling user-defined
functions when the event comes in.  Or what am I missing?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 5 Feb 2025 18:21:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 05 13:21:53 2025
Received: from localhost ([127.0.0.1]:52348 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfk25-0000t8-4M
	for submit <at> debbugs.gnu.org; Wed, 05 Feb 2025 13:21:53 -0500
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:45774)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1tfk22-0000ss-Af
 for 63620 <at> debbugs.gnu.org; Wed, 05 Feb 2025 13:21:50 -0500
Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id C94C08092A;
 Wed,  5 Feb 2025 13:21:42 -0500 (EST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1738779702;
 bh=9mupy18Hn/HnS07moeRWLbxI4AwdxugYylHFnaLOlUI=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=SXNKiOWkuJxNZugim2a9a92FeXfKt/mveVexsK5VWPlKaIwiePm9tq7bUq7eXrSE5
 uvK/14o2JKdDfruFD3VnbhsuTRqdOYz3mNj4c4pTEKhRQVzWFGIhi193EOEmd5klGG
 Fft/TJH+86gserT9CpNZtt7oM+017YGYldganwr1VxnYZV6JXKU1RTu8GVxIhY4DIe
 H9WZ2jbGLhDA+zojwHDdsiHPvSdTu86HJ+IF1+g5L6a6r5HmhbsxHhi80JsKvm2A9x
 xvqzV/NVtbpD2/q3OJ/XN8P40PfqSh/nNEAcTfLrNaBma+9PnsxyyLGXj77NLTWtjU
 1U4RTejDorVVQ==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 1BAAA80065;
 Wed,  5 Feb 2025 13:21:42 -0500 (EST)
Received: from alfajor (unknown [23.233.149.155])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id E8D0F120401;
 Wed,  5 Feb 2025 13:21:41 -0500 (EST)
From: Stefan Monnier <monnier@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN> (Stefan Monnier's message
 of "Wed, 05 Feb 2025 10:28:59 -0500")
Message-ID: <jwvh658jlr1.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
 <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
Date: Wed, 05 Feb 2025 13:21:41 -0500
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL 0.047 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

>> According the the elisp manual special events "cannot be unread with
>> =E2=80=98unread-command-events=E2=80=99".
> Oh, right!  So pushing to `unread-command-events` will only work if the
> binding is made in a normal map.  That's not the end of the world, but
> it's not ideal.  E.g. it doesn't really make sense to have the behavior
> depend on the mode of the current buffer, and it seems undesirable to
> fail to run the binding if you happened to type `C-x` just
> before sleeping.

Maybe a hook is not such a bad idea after all.


        Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 5 Feb 2025 15:29:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 05 10:29:18 2025
Received: from localhost ([127.0.0.1]:51919 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfhL4-0003Ps-9b
	for submit <at> debbugs.gnu.org; Wed, 05 Feb 2025 10:29:18 -0500
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:63986)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1tfhL1-0003Pa-Dc
 for 63620 <at> debbugs.gnu.org; Wed, 05 Feb 2025 10:29:16 -0500
Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1])
 by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 7C81710004C;
 Wed,  5 Feb 2025 10:29:08 -0500 (EST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1738769347;
 bh=vpVXEXnVqo7YajP1ttf7WMkUrFt2eTT4frXo9r0NIdg=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=QOHwZLykUMEsTmQPA9gMa+p91HeqjBFJWr567k1vjVIaM+ZOevEnelpd8j4oGafRe
 Bc9C94rvW5vnax3cbO8hdZEqQUr1MmTHfXE0sTAwfHBoIIbnMcrzmAf+hblz6OAPtM
 sMSFROY3aQoVj2NFWDvC6dA3UbaojwDUCpAA88lpMkzXuQQfnuZ5f0A21CSFnGABZk
 K1oWEUoosKAh6OEwXEuiJsVYFnQSixkoVMEm1YEIKfI96JucCEIyb8DIrh1ZuzKFQD
 tPPaSsrzSjAPFGsXLvZ5YGeORceOHkK9GfFBqgQ+/ofk4vVVjg6P5O8QUOxysOeG0Z
 b413wZ1fxeAkQ==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id C5FD6100034;
 Wed,  5 Feb 2025 10:29:07 -0500 (EST)
Received: from alfajor (unknown [23.233.149.155])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 99E7612086C;
 Wed,  5 Feb 2025 10:29:07 -0500 (EST)
From: Stefan Monnier <monnier@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <874j18zfm6.fsf@HIDDEN> (Andrew Cohen's message of "Wed, 05 Feb
 2025 21:27:13 +0800")
Message-ID: <jwvy0ykjtwa.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN> <874j18zfm6.fsf@HIDDEN>
Date: Wed, 05 Feb 2025 10:28:59 -0500
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL -0.605 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> According the the elisp manual special events "cannot be unread with
> =E2=80=98unread-command-events=E2=80=99".

Oh, right!  So pushing to `unread-command-events` will only work if the
binding is made in a normal map.  That's not the end of the world, but
it's not ideal.  E.g. it doesn't really make sense to have the behavior
depend on the mode of the current buffer, and it seems undesirable to
fail to run the binding if you happened to type `C-x` just
before sleeping.

Hmm...


        Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 5 Feb 2025 13:27:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 05 08:27:29 2025
Received: from localhost ([127.0.0.1]:49078 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tffRA-0002ER-Uh
	for submit <at> debbugs.gnu.org; Wed, 05 Feb 2025 08:27:29 -0500
Received: from mail-japaneastazon11021100.outbound.protection.outlook.com
 ([52.101.125.100]:63798 helo=TYVP286CU001.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tffR7-0002E4-KB
 for 63620 <at> debbugs.gnu.org; Wed, 05 Feb 2025 08:27:27 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=h092bSfBEVDkkc0w7kif/Orq6eTLbk1gh+gZQgWYAPRZ78rSz+oi91/n47HoXmp4E4K/4Jws0pRAHNr0vGpO77C5cpsCoEUbvzSwAkqCyXs70Rs4gRaowB7SbM8X8kVMu7H5fAwgML5INlznEgkevnEKMCJSi7XeQ9FUTdY8OJVvqBBtz4sDGa8Q+gxOiXSWdHyUhr9m3CjM2xt9vQabQ4cr0NcuBB1wxaLzXEQ0+imwaEuZjsUwbBzaOWwY/czPujxdLSF+d3hjy/cRHVlRe3peYPQuOLRKloUCWshXmAk/qw8uNcXqbEATeckVbLF2SiR3mhCexQOW/MLPpwePnA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=b/NtzTx9Uoa1Y7HXVHQ75FynrGI+hIx2fWOBAlXbSGE=;
 b=mA1+TtER2IoJ8SBsK3uHHJq6MZXPE4NAcKG8iuYY5a21daebhvvg2Xy5y4nOM1gMKe7bTAr5Q0lK8I2nnQYakdXty7jXRsGUa7/F95AjBQBmzTObk9ZYoFW8lVVzrw2/vVpmC5yhX0nRPDozeItJNTlz5bcFkU+UZw2oq6re+1T5EzkGXAOwl6YGlZV6IXmCZWGkeUw13GDy9gXw11Z2WZ0DG92Fo/tPJGhDaV18Pwyg5oT7QMayTvlKBKy0r5XWyenVt0SPS7x3qlXfYDT7aTOmalsVhR2gh6JpD1Dqy0vPAjGyAC0oAaAHXE/WG4sxPgF8HjOS+N3VOjbOHBOSUg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=b/NtzTx9Uoa1Y7HXVHQ75FynrGI+hIx2fWOBAlXbSGE=;
 b=IXmtLjmfK6bW/Cf8k8E7MEXn+eT3ZaYP/+qfJ63DRHtNpBO3QfWoD3km6QXn7/2Zkz4bRz39nqNtlX+RAUicT9EcotGwlgNdiJy7+3r3O/InTq0WvIqbTcEKK//xFVuKZe/tTTQ1qtwmZINJufQomTApdsudTu4UYsp4rp8JqZTa4N5ati3TFjJWPsnP9yaywhrqAWEo3R9y4/wtqNLlPuzoYykheytz4h1t3z4y0ZJxCbtj7NCS4SMTyr3U8Uqw4KphE+1eniC7lCswcZzXhyK3pP0HxgZgLBqgdltOWtSNmnwRKy1tYpXCc2ibnMR+IbyuPzzsah11KfhZMieWKQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by OSOP286MB4239.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:308::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.11; Wed, 5 Feb
 2025 13:27:16 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Wed, 5 Feb 2025
 13:27:16 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <878qqkzh9d.fsf@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
 <878qqkzh9d.fsf@HIDDEN>
Date: Wed, 05 Feb 2025 21:27:13 +0800
Message-ID: <874j18zfm6.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-ClientProxiedBy: SI2PR01CA0042.apcprd01.prod.exchangelabs.com
 (2603:1096:4:193::23) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|OSOP286MB4239:EE_
X-MS-Office365-Filtering-Correlation-Id: b581cf98-6268-43e4-7543-08dd45e8ced4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016;
X-Microsoft-Antispam-Message-Info: =?utf-8?B?cjFSQzBVeDVwYkVvZU9NNDNueEl6Y1hZWExtUEFTQ0s5SFRhcjNGRno3MGhK?=
 =?utf-8?B?TFRYcGFhZk9vTEU2cmFXd01hdzJaS1F1eHlmYTFYcHJpdTgrUUlHSGljaE8z?=
 =?utf-8?B?M0lDSmlydzUyUEc0bWdKU2hRTkVzNzRDZ2owV1Yvd1ZvNmpYWm5PaTVyK0pE?=
 =?utf-8?B?Y3lxTmlnMnlxK2xrOGIyeDJvRWZnZk1GdEtneDRMWkdRbDM0K0FHSWUwajlr?=
 =?utf-8?B?ajUrbUZjeVE4NUZPclVmaWkyM3F1SU5hK3ZWVDBlR3Naak1mYkJoM2FyemVl?=
 =?utf-8?B?NW96WFdpWkxNTEVyRGlBYi9WY2ovL2dWVnl4Y2hVNXRBVHVuNDdPcGdiZS9Q?=
 =?utf-8?B?MWJ4ZkY3WTN5TmdFdHA3NXNkc1FodWVQTFBILy9JcHpzL0RuN3lLbGhvaTQ0?=
 =?utf-8?B?RldRQThmVElrSVJOTjVQUTBJZ0J4dy9ZY2JZYUdVVVRVenNBNDVnQUFBWXRP?=
 =?utf-8?B?YzY1aTNUK21XcFM0V0VaOUJBNHpkMUU1MnROZmNsYmV4b2kwMWJ2SGZZbGpq?=
 =?utf-8?B?RVFsREdRQm9LbFZ0TTVzYjVUczFISWt5UUZYaldOZG5kbldQUVphSFRveE9W?=
 =?utf-8?B?TStoR0psNXJ1dHZJaXNoMEZkZFQ1Y3ZZVGdSV1pMa0drRFJmQWwwUml1bEZD?=
 =?utf-8?B?NmYzYjJhSVBJSUNNMGtWSDdPaEkrL0tNb3dxVnJHNDhFSjlCWkRZZEtjZzdm?=
 =?utf-8?B?bHowTkxVWEZmMXdSdTAyRlVmZGtsWnlnd29SWDUwSmdBY0lEck1EY0ZtOENZ?=
 =?utf-8?B?dGpxRU9wQ0s5T0puZFU5djBGZnBMbXVQM0c0VUJKOThvME12VWVOWTA0a0JY?=
 =?utf-8?B?QjFFSnI4bjd3cmY1R29kY29oU3NKcWp3eVU1eXFkNFUwWnRBdXNWRWZPcXN0?=
 =?utf-8?B?NzlHZzdycy9VV2V5OGtYcHl6bENmTWd3aXdrUExUNThLd09YL2x1NWl2aERi?=
 =?utf-8?B?SitqbUFBOXdxNXlDZUxGRUp6RFEybWQ0UExsdm1raG82a201UUFTbXU5c2pS?=
 =?utf-8?B?Ny9mZ0Y4OFhXdkRmMzJFSzRSaERpbWFKRlpNcHZpVk5ndWlxVHBmSVgwRUNM?=
 =?utf-8?B?YkIwcmhPUFhYMmpxTldZMGFzSU9KVzB5RmJxamgxZE5WRWpJZ3FkNUdpVFNB?=
 =?utf-8?B?WUltRWhXTitmL3QxUGNmWGIzUXRYQmx1R3dzbDJhOVBqaitOTXRBdVdmM1BF?=
 =?utf-8?B?ZHJURi8rcUx5bnFQbC9iVUJQTmZJdlI5N1ZIV2hCd29WclFEMnRhbENNTy9P?=
 =?utf-8?B?ZnVKZmU0VlB2OE9MSFA4MDVCM0ZkOUJXbURxSlQwcHlMUU1EeURQRXNEcG5M?=
 =?utf-8?B?WkxwRVZVSnVQbWNES3UxQkVZR1R2TXNQWUhrOG01TmI1MGdQakcvZjRrZWpI?=
 =?utf-8?B?VEJ2eDdhaDBDOWlBdEdZR0xsVktTb0hXUjBRcHI0V0kzK3A3bzJGRWpPNUdN?=
 =?utf-8?B?OTY3RVJTRjVNY3ZWZjFEQUVQM2NUZmF2SkkyMEdhY0JqUjNjb3Rqa3NLbCtz?=
 =?utf-8?B?aXVMRkJyUlorYVI4UjJKY21ad3pBSzEvRTg1K3Q2dnpKT1FwdGltQkpPNGw1?=
 =?utf-8?B?WDIydkk5RUUzY29EbHJOQ3V5NHF5a1BocTEzT3NmNnJMOHl0a0VaNEFqQ2Nv?=
 =?utf-8?B?cWx1M3ZQZGZDSHQzQ2Noa3lEakEzUTBsVlhNdFZzN2sva0JRdkEzVVFNMkkz?=
 =?utf-8?B?Y1pmRzluSkwrOGVySmM3d0NtMWlzVlpoSk1qVW5MZEppL21ST1lpclRJYSt5?=
 =?utf-8?B?VnZ0WnpTK1pjZ0hpRDFpNWNwbG9zbmdQUU1zMEVzWUVtYVpLMy9mZldpNWJo?=
 =?utf-8?B?eG5nTWx3emU0c05zd1U5d0d2eXcvOW1TSzRRMFhRMzIxN2ZIRFI4MjA5RFRo?=
 =?utf-8?Q?kcKmtCottg0r0?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WDFhQWhkRGxtcUM5ajdaTUhyem1PT1gwYUM5M21BVVBFQzlMSWpMaXFzdVlI?=
 =?utf-8?B?VUVYMUxOYlhnMDJSbGxZZTVHVVZEOXFYRGlZSWF2dHIraGdtY0hsSHQ0YXJa?=
 =?utf-8?B?blJPdE5mWFBKNlRSdEgyQlJvdW9aS3dhNEhsb2cwUlZ4NWtqTVJKd0l0bjdE?=
 =?utf-8?B?cHNhS0gyMkM4a2RQb3piYTM0Rkd5WWZHdG9UNzJxa0pLRWhZM1lJeGVvTmZw?=
 =?utf-8?B?cnJsQ1NiUFJocnlYZUhzaG8xeU0raGg0c1Q5djYzK0VCdWNwS3l3NzZIMVFk?=
 =?utf-8?B?YUkxdkJlU0xsY21Gc1VSSSsyZ3JVcktiUm9NRVZXMjVnNHJzVlBVRUQ3d0ZQ?=
 =?utf-8?B?Zi9JcmtWdERvRDZtaVBDeUltdHRzcTZrM1NNb2xPVFkxYStsQmVGMlhZM25m?=
 =?utf-8?B?bWVUWG5hUmc3UWg3SnZFcmhjSnlWeDUwSk1HZzM5SkdDdzlaWHprUU93MzZW?=
 =?utf-8?B?eEVNdTFXSTdXblZUT0prZ004b2k4OFNRK2hZZmpqNWtWM21xTDdOaEFOV3cy?=
 =?utf-8?B?eGNnOFJjSGVrMmc4bUcwMWJuRlVhVndPOTlzcjcrbVdOdFR5Vy9ETE11Z0Rt?=
 =?utf-8?B?dFdzaVkzWTk0NXlLTDJjYm1zeFFKYmJPam9LMkpBeXJoVVVrQm42Y2NjSVJ4?=
 =?utf-8?B?Mm04VTNiVlVodE9yelFXUkE1WTliTjBBNWhRU084UG4xeW51QWdpNWhpbFNG?=
 =?utf-8?B?VHNpVnU3ekRBWVppTTk0NzZBaTIyVDNPdkdRM0RZWjRrbXN6ZVFFZDlRUHUx?=
 =?utf-8?B?eU1EeHlMQjUvVUJ2Q3BwTTVwN21QdXBUVDZncDh4M216OFV6Q3E0TWRoRkwy?=
 =?utf-8?B?bkw0ZEFUQlh0eG5CZitjL09OK1RiWWhKb0V3cmFPTzZkWTJ5MHVVcGU1SGow?=
 =?utf-8?B?anRkSWlDL3AxUS85ZnJ2ZC9DU1VMUDJqRG9ISWtPaE0vZzAwRFVrcmFTb3NM?=
 =?utf-8?B?LzZ3Myt5K3M2cFdnT0I2Szh6MFROMGFISTFEdjBaKzFsdkh3L3pGeWhsVDZ6?=
 =?utf-8?B?MS9xQzA0bExqdzdOMWZPUGtqNThDcHhQTm5NN3lteFVmbzZDRFM2MHpzN2ZL?=
 =?utf-8?B?K09DdjBDYUt4TjU5T0hSVlYwdk16bWpWRDJFdnp1WlVkQ1UyczAxZmNZNUFt?=
 =?utf-8?B?enVRc1BhRnBubU9KUGlXdk1hZFNWVUZXU3E0SkZJdVZNdTZVOUs3ak5uSWwv?=
 =?utf-8?B?VysvanVzdU1iUWV1UiswZmtCOWtTTjBNNGQ1dVl3dlZncWVDc3lCYWh3K3pW?=
 =?utf-8?B?Wk8wODdQa0xWbzc3ZUZCZjJRb2poS1pLcDA0cXU4SzZvNFhsV2dBWFA1ck9K?=
 =?utf-8?B?UkhZeFUyMGEwTElxYmMySmRweVpaTDArOG1oRUR0VURaRS9uNlFFZWFLUVlt?=
 =?utf-8?B?aDV4REhnWGN4WDc5c2lqTWRURlVNTmswSDhzUlEvL2w1bzNnb1E1Z0VJeE9n?=
 =?utf-8?B?eFo5WlhPYm8vaGhlWnRNa256Zk9xRk1UK3p4U2plaWNWbm04T3BFeTU4Q0p3?=
 =?utf-8?B?V1J0SFREdTZvY1MyRzRNMlJqb0s5NDdMZHM5TEczRno3QnBITUNLMlpjeGVV?=
 =?utf-8?B?UDZRTjN2L2JJOW9WYy9XcVcybk1mMnZIV1RBcmJUWmU1TGtQRndlV0FQSVph?=
 =?utf-8?B?RnQ0Rll5Q2RIY3hMeUlYeXdlOTRYUDdiZFNlUFFzNytGVXB6QXRHUUpTSjRa?=
 =?utf-8?B?UEJISnlsVU5RTmcweS9nbWxmbkR0M3FmT0lhYU83UlVDTVFuTzgwcEFjOHZS?=
 =?utf-8?B?WWdrdW5XSU12cFZsUXFRTldMcmY2Zy9xd0tZeDRjM1U2MkFVQ0xvb2hFTS9W?=
 =?utf-8?B?OU1CT2lKc0xzWDVmdlkyZWpSZFA2M25IRS8zQU9sc2VXLzV6RjFQM241ZDZy?=
 =?utf-8?B?ZzE0ai9uWVdVeFJzTXJUS1VKL3FOTXFEbmxlL1pXR05NK0l4V0ZDTU02SUNG?=
 =?utf-8?B?M2R6UGZsUlJlQ2svSVlaNnUvYUVUb09taDh4aldhQ3pUMHFzNlhHUEVvWnVp?=
 =?utf-8?B?NmptRUx6emE1eWZyZjZkeXR0bGZqS1hNN1hXYlQ4UGJEdUQwU2tzTk8rdkU2?=
 =?utf-8?B?RGhjQXlrdTJyZEtTVkxoMjc1U1ZkVk9FbzBQZ2Ezb04yaEtkdTRvL2JQTTUx?=
 =?utf-8?Q?E7SZcRMGBv+0m6V7FyJzQgyN+?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: b581cf98-6268-43e4-7543-08dd45e8ced4
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Feb 2025 13:27:16.2786 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jTK6EeT3VRT97jJs06P6aYUCyPT1nSIFswbiHn+K6aF4rYueM4JFKJEkwL8bz13t
X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSOP286MB4239
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "AC" =3D=3D Andrew Cohen <acohen@HIDDEN> writes:

[...]

    AC> So how exactly do I add a new sleep-event to the C source? I
    AC> tried copying how its done for dbus-event in keyboard.c and
    AC> termhooks.h (I'm only trying to create such an event in lisp so
    AC> I didn't worry about generating such an event in C). Is this
    AC> right? And do I always have to install the handler in the global
    AC> keymap (just to test this I tried pushing an existing dbus-event
    AC> onto unread-command-events, and also get "dbus-event is
    AC> undefined" unless I install a handler on the global keymap. So
    AC> it seems that I do. I also notice that other special events,
    AC> like delete-frame, have handlers installed in both the global
    AC> keymap and the special-event-map).

And maybe answering my own questions:

According the the elisp manual special events "cannot be unread with
=E2=80=98unread-command-events=E2=80=99". Not sure exactly what this means =
(and I
haven't yet read the code to figure it out) but it certainly appears
that special events can't trigger a function bound in special-event-map
by pushing an event onto unread-command-events. But that's probably OK,
since we can /also/ bind the handler to the special event in the global
keymap, as is done for several of the existing special events
(delete-frame, make-frame-visible, iconify-frame). Then we can trigger
the event directly in C by generating the special event, or
synthetically in Lisp by pushing onto unread-command-events.=20

I'll assume that this is OK unless I hear otherwise and make changes to
the package accordingly.

Best,
Andy
--=20
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 5 Feb 2025 12:52:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 05 07:52:01 2025
Received: from localhost ([127.0.0.1]:48972 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfesq-0000Vu-Py
	for submit <at> debbugs.gnu.org; Wed, 05 Feb 2025 07:52:01 -0500
Received: from mail-japanwestazon11021108.outbound.protection.outlook.com
 ([40.107.74.108]:61777 helo=OS0P286CU010.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tfesm-0000VW-Lb
 for 63620 <at> debbugs.gnu.org; Wed, 05 Feb 2025 07:51:58 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=XkaK2KDLs+540i6AymnWAMnlLkugSiVt/RPN/RiFfz0aOY2XUkfKT80IUFXWQQlmP5CY7Z81cq8iVgV769zsFsdaH5LCExDRSOtHUPbFyeDGM332WaHt9DG3AjQ2DkJPJREJEw/t3piJyIAKu5v/gAAnIyLw3OL05THVdLE05DP5HRgFbLx/zNAB6yRFsruV9kc5SJq9h2q/0YGczfny2PRoXdDVODqswIq4TtRtZCTgSZMB5vEA7OI0g6eJnJw7ofh7r/TqnGx+CTTBCeVO0TnaiuMRoIYx01xj1YXV5MNHjRXOH9hBBZnzSYIg73+CQKN+QtfkYKhMlU1VHk8e0Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KyaU5TPAjP1aW/xbhDlZgOZdJQ0EmssAP3i3zSPX7gQ=;
 b=KU+WK3O22dB7q7IvO2L7xFNPJxgU7zo2x4MQnvKNj4mfNL2kgru8bwT1WkKkONn5pWtzjUArsMeXG1xrFQL0CLrM/jkAQTjUeUjzcHs7MLILFhseXasrzsIbcfo9C7aeJQKY4KIAny3O6jYcaBZDyjsMZkk3PGJTHtIV+rqkFBG7BcQs2NAWzGL37IKdU0Bb+s+xohJRDDGJjeVS24dJQuzSWIYv5RfORRw3DzMjsfhf+NHsiWJwrEYUlOZVFUJbiPoqV6VuZTfiWdDdoruoPuNHbzXVl4FHRV9EqgjPbOKp+qHP44DbsVYU9p85sO0s1EzrlHZtgT61HKzJu9+STg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KyaU5TPAjP1aW/xbhDlZgOZdJQ0EmssAP3i3zSPX7gQ=;
 b=RHlI7XkORE3inGH++z2r5qjUipbjjvZYCkCU00mMRxDSrPju1zHEsbCWVtWbuFKf8Zl8D+19tGtZYp639U/MKtrakczRvrZ5I3uL1PkLpucWxCJ3mQJyHK6KkomFy4hqXIb6eNsokqyLEmpHnBujDf9IFso/WHSbyiJOg4xt1lQKy/DjkeS2bKmL9NE10VDfAAaPRUyHTXIxuYNge5QZGEg/mwrsLHNKLxPIjtkEV0R18X93k8cEVlegDqBxjYJAN5Tazdlh2G/twdgzSfFWQiXS3nmgNBIAlagBBesHA/8PDxNlyLWlVoW+ArB5Cz5aafu4Ut0TcN1qXk4CG73cqQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by OS3P286MB2524.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1e9::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.21; Wed, 5 Feb
 2025 12:51:47 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8422.009; Wed, 5 Feb 2025
 12:51:47 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <86r04dahpc.fsf@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <86r04dahpc.fsf@HIDDEN>
Date: Wed, 05 Feb 2025 20:51:42 +0800
Message-ID: <878qqkzh9d.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: KL1PR01CA0158.apcprd01.prod.exchangelabs.com
 (2603:1096:820:149::14) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|OS3P286MB2524:EE_
X-MS-Office365-Filtering-Correlation-Id: 8b9692a8-cf51-49b0-a9f0-08dd45e3d9ac
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|1800799024;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?gQRjyXgAtbszccNCU8outkIE2fORkpUa5bhkRuhMxQzoMAWFycJ/m+HFWw31?=
 =?us-ascii?Q?guBAgZ9PjmQL8CG65/QN79v8wCnXPUC79g3Nfww6WJajbgDfujVk2sydu8NA?=
 =?us-ascii?Q?n6nnSvBe/ySZro7XEj17P9Z50N5zVuvqRbZ3ARPkNhAG5YPJzds6tb45Ah8D?=
 =?us-ascii?Q?8L8QW4bMbZ88RQ1OcwBJx7sEDPd2Kf6ABsFSBy0sLj5S7miCd7kEmHudChvx?=
 =?us-ascii?Q?4LgtgjLTKvsQRoeC7GhADi8zW8Wb3X3hvsUj41lpY1jilSMI3zNZKpNgkVnn?=
 =?us-ascii?Q?uQXVkOSE2CWsT6JzE5ZHr+1x5/YYeoCktvKnSs2BgyXC8p+ADb05wy0tjIyc?=
 =?us-ascii?Q?Ye+HfwPvpBvaIYVLecxpOeqi/D9rMd+BEAH+RaQXtauV98GJsxBxWKQxLr7w?=
 =?us-ascii?Q?qHeJAo4HcIHfQEvUpKOLcLS7QsbP33a7ck4rBrC+tozTbMOgabCNXRLkVs37?=
 =?us-ascii?Q?KsfNh8JwI71Djwlzcv7k3YW6A4L3ZqDWB+ODbnX6tAxtapS+ALA14lIgfw2E?=
 =?us-ascii?Q?fma279Xr7iw5epOTU/Xt4jvvKm83gNPCniCiM/M92ZLnwGZuDUQtLltBeYud?=
 =?us-ascii?Q?1WPxYVxdKD88p9t84SXppbF+PeZWQhAboodUGrolqetLJXGi0n+ZeCHBA9BV?=
 =?us-ascii?Q?wxaSdIIgMXvCNWGnWmjtW8ObE6Xq/CTGpqOTMQmipvO5lYbLvTwmIwA/SEK0?=
 =?us-ascii?Q?HH07ZMj9GcqTMKuOEbQYrTap/VIikORon7RGG01pgaKPuo6ibWQGRowHhj1u?=
 =?us-ascii?Q?A31bglDCc9t/rnZC4v/ZBPg2CaxiI8GA7jYRe2+OoXJwSmlmXbTYTXuiwhm9?=
 =?us-ascii?Q?XmyxaH97BDrw1XKsV0BMXW+I1fRlG3ZiJxzOA6he2GDe8JsPFXq7VDYDYkVD?=
 =?us-ascii?Q?5CwZtgwGC0gjNTK6uLrR9vP2WRqwLVPZHT78ZHzJneGlrtJvvC9boU/XKoBE?=
 =?us-ascii?Q?i942S1sweSipSN5L0ZbN7CDHz8ppHgDCpOiyvk+RailkbtZUgp+t0kIpHayP?=
 =?us-ascii?Q?peCWD/jR8/iLlxV33d+yTriZMfxHFZJlHCNbNW4phJsGRpp+H+/hYrlkSiep?=
 =?us-ascii?Q?O9KWAeCjVLVSTuGYlABK+gg0eLYoSbdh70nXWWZLxuGJRu7vgfbBn8+lb2lG?=
 =?us-ascii?Q?je8a4ltImbnBFXc7r9RH3OjZ34pGVGv+wYKsl2i9ST6nycgnjJUa6F7TfYbh?=
 =?us-ascii?Q?OB1ObyE5uI2pavEjIq2pd2Izflw3zrYvvpUBa6QsKyCbi7KS1Kr4RQFkdiWN?=
 =?us-ascii?Q?Z8HNZeSwBuufsx90934AtdCJZACUVu/S45hiLLIjxD8BlDM6d7kkdZc6rTUb?=
 =?us-ascii?Q?6KWseZfam10tMV2BZKZHw1shsYtJBY0FMd/+znb2IsBTX0oi6SXIs9+m+sRn?=
 =?us-ascii?Q?IGHBxtDeobKiNQJwH4msIfWJF5G4?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(366016)(376014)(1800799024); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?qrxcLQijizIjbee4Y45CdAr2Q6Qxra1di9BsPE6E+OQQ62es/ab6LenJOK8i?=
 =?us-ascii?Q?XKfMYPEdJA0cNjqbz2n0sP1KRnaFojpf9Q5OimyYKGOm2ricNnuilxbxYGvF?=
 =?us-ascii?Q?4xF/a/jvh57uQQ+TDnAFdj8LYknAioLbpnnEqvO2oLHB0MZ14NDENp2MYvFO?=
 =?us-ascii?Q?5ziJV37BsF4mMX4leQE7BAkMpefYHRv9kD7CB/Ws8BBnjOAm4LaiwGlmrm95?=
 =?us-ascii?Q?V51/XQOXl+EAIZeFaVJvGVdR9jgIK6f/JxHUTW6rMnCArpYhkJXt5R+iMBLT?=
 =?us-ascii?Q?yjxAW0lLdnAYdEmMFXJUJQRXV/8HSKeVdJnFqUMDAQOhjdOo9LL/anOE5N1j?=
 =?us-ascii?Q?yATEMehd3W3+EvxWu2IN8gOy9qtpnLBXIEX3URrAOmWWLu9DOJqwCcei9fMm?=
 =?us-ascii?Q?CTbMfwIg2uzqaVhzGSnKTCDcCxzAxg43gMuggdklz0yK1gF+qAI/Rh+lcJWk?=
 =?us-ascii?Q?JQXXfPhNmEmKBzYQ2k25+3pjLTRY06FAkY3b2b0pv6flg2K0Hbtar90nHXg8?=
 =?us-ascii?Q?tKWltXrRz0EBxz8hrtID5eGzzAytjJixGEMHZQFxrE9KkYbDo9d2VY4Ye57o?=
 =?us-ascii?Q?tTi96+IN6TuRE1TYK1zs7fgji0h1AAsfmn+VmJqxBs7D/UkIFHdrn4lj5kzL?=
 =?us-ascii?Q?2k8Hb6Y0JfhPUU3sMWEl/gYnF4RpUwUeu/aMpt+cFW7WCcMr891WvlmfJqME?=
 =?us-ascii?Q?DQnjcY+nBoRHNm3EYF5mNClXSVsmMAvIm7IghrAJCqX6KwXWBpa4eLew1yYQ?=
 =?us-ascii?Q?Qy4MJ9taKTwW+9wIBGXcYZhOOg4k9XroZiXmqUDykh65L3xbQPMTXeMkXotD?=
 =?us-ascii?Q?Ws++VAT+kRqEk5UWX8FY1ijl6+KmF5UNiOyOU5U5491ch48aK8xc2oE0QFLz?=
 =?us-ascii?Q?mqufq67Ughwlu5NNJcDU62t1HupUqCLQMnPXlEkgzv6pG0cIOKw29Yke8D6N?=
 =?us-ascii?Q?bIlEsNNNL7HD/auKzRTx6dDP8/QU/ui0/QPEi09P2ljOTjqHArMZIXtah4GP?=
 =?us-ascii?Q?aLJWeceIWTFaEwiRDSXk9N6oIdtGaYZ5lsYTTIEQW+6svGQl8RPaqGo7JtbW?=
 =?us-ascii?Q?W3351gEEYp7jZD33LdnCziLbETeCdGQb42a3uPSltjJG2z0OGtHiKlN+5IhY?=
 =?us-ascii?Q?ay6gLwTpWPrH73VlSdsbsyg9pb3PktzcbXAP6wsQQ3IS85jj4fZP3+JrAKKr?=
 =?us-ascii?Q?2JkPFFCUogUiu+ECXbxXbwXKVC/15E3x/FaRPnRa45xXrkB1TFsD6MEFD8ol?=
 =?us-ascii?Q?x0BrLeL4l2gOpxdsquoF+lmrvS8e3+0CXn2cPV+O2RC9pekClNj0OYhrNdA2?=
 =?us-ascii?Q?l1A7E3u4VRXPffrhDNyKjIK3qjXSO8Kzm2MSnyhoEnmR+cPLsmXGT0YjPLKw?=
 =?us-ascii?Q?pUksdsIqBbO5ocsJsVPj7UiuPYKg8fFFeN9RRq5WymdHQAF0NGt4x0t9S9s7?=
 =?us-ascii?Q?u/g1cT+snBymr5eV44Sng/V62Ij/UhntpIi3T/rjIh08nLhuWkTwGgBgZFWR?=
 =?us-ascii?Q?U2nAxsJa1adqb+n/hE9yW9X8b4wbBqakWC6cmk9p09u2yZ8AAKbm6k96Vp0h?=
 =?us-ascii?Q?ojoUbI3PCj6SM2FZhMWRkOBe2KGib5siqjBKCiBf?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: 8b9692a8-cf51-49b0-a9f0-08dd45e3d9ac
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Feb 2025 12:51:47.0762 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: bo0k0Q1myUCzZNcCevh79LhSg6qbitoPT5i/9QnFDCHmbdJJI9V6QnGEKBowuRBy
X-MS-Exchange-Transport-CrossTenantHeadersStamped: OS3P286MB2524
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "EZ" == Eli Zaretskii <eliz@HIDDEN> writes:

    EZ> Thanks, and don't hesitate to ask questions where you have
    EZ> difficulties.  I'm sure you will find here quite a few people
    EZ> willing to help.

OK, I have almost no idea what I am doing. I am trying to understand how
to use unread-command-events to make this work. I guess a new event
(sleep-event) will get added in the C code? Then backends other than
dbus will generate this event when a system sleeps or wakes, and we have
a handler installed like

(define-key special-event-map [sleep-event] 'handle-sleep-event)

with the function 'handle-sleep-event that runs the appropriate hooks.

For the dbus backend we install a dbus callback that injects the
sleep-event onto unread-command-events, which would then trigger the
'handle-sleep-event function. 

So I thought I would play around a bit. I tried installing [sleep-event]
in the special-event map, but when I push the sleep-event onto
unread-command-events I get an error: "<sleep-event> is undefined".
After playing around I found that if I also install it in the global
keymap, it works (that is, pushing a sleep-event onto
unread-command-events then triggers the handler).

So how exactly do I add a new sleep-event to the C source? I tried
copying how its done for dbus-event in keyboard.c and termhooks.h (I'm
only trying to create such an event in lisp so I didn't worry about
generating such an event in C). Is this right? And do I always have to
install the handler in the global keymap (just to test this I tried
pushing an existing dbus-event onto unread-command-events, and also get
"dbus-event is undefined" unless I install a handler on the global
keymap. So it seems that I do. I also notice that other special events,
like delete-frame, have handlers installed in both the global keymap and
the special-event-map).

Sorry for the very naive questions. Assuming that my understanding is
correct I think I can make the necessary modifications to the lisp
package. Then the C code to generate the sleep-event on other systems
can be added.

Best,
Andy
-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 18:14:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 13:14:59 2025
Received: from localhost ([127.0.0.1]:46574 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfNRq-0003f4-QG
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 13:14:59 -0500
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:12891)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1tfNRp-0003ep-1m
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 13:14:57 -0500
Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1])
 by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 801F34439EE;
 Tue,  4 Feb 2025 13:14:50 -0500 (EST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1738692889;
 bh=atZ5ypbvjTScbcLpridpbCnTNSFYiAvkvYLZTaZEUBg=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=GUwbQUqlNMSKISG3CQclCt0muEo30LMTFqL6qhTmKG1Bh3yM0VLSa81Og9y2lGZwH
 92t8R2VRsicqwFUMCGxz3yfxAwAhwbml0mOjdgbyT6reblIgir5nNv+L69JcM1F/zR
 Kgl3TRSq/8JMGSVrLTmr6rRCtnZPLF9/MLTsJtFc5kYLhC/0KacP5eeC5sICGJnPW0
 it0Koxug4Fy7Thw+kBviC2oPm2GB1wgWH6kPibNs94t/LXtoIje7pimET6dhZvzCG0
 ohWrJDdgc7lKEmo3pi+Cid6KEmyecrulSIDx2GCAN4Yw2NMqUdLOt+qn0PdcN1e8BD
 f/T69vluz1KMQ==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 9CBF04439D9;
 Tue,  4 Feb 2025 13:14:49 -0500 (EST)
Received: from pastel (104-195-232-86.cpe.teksavvy.com [104.195.232.86])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 54E92120602;
 Tue,  4 Feb 2025 13:14:49 -0500 (EST)
From: Stefan Monnier <monnier@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <86msf1afro.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 04 Feb
 2025 17:30:51 +0200")
Message-ID: <jwvjza5mvbz.fsf-monnier+emacs@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <87pljxwyi2.fsf@HIDDEN>
 <CAN+1HbpuZAs7BMNZx74WX2EhaAi7gKC5C5ZViaa9faUwjQ39Sg@HIDDEN>
 <86msf1afro.fsf@HIDDEN>
Date: Tue, 04 Feb 2025 13:14:47 -0500
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL -0.009 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 Ship Mints <shipmints@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> What I had in mind is basically to have the D-Bus handler push a
> special event onto unread-command-events, and then that event could be
> bound to a command.
> Michael and Stefan, does it make sense to work like that with D-Bus?

It would likely be bound in `special-event-map`, yes, that makes sense.


        Stefan





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 16:15:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 11:15:46 2025
Received: from localhost ([127.0.0.1]:46359 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfLaU-0000SZ-1G
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 11:15:46 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:38450)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tfLaR-0000SJ-0G
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 11:15:44 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tfLaK-0007JU-3h; Tue, 04 Feb 2025 11:15:36 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=0ICcf+eil1/yOvAIVmnLdqJh+YeV6DmhJ/JKvsDqIMM=; b=Q0zko4pnBuyM
 rNvwLwt74NG81Yc9db3VUy189hIB4Qj+zewqL8266PvSYyvXptZo4Yyt+4pn3U0z8XcrFKTMZBMhH
 /0jEUjgCSask+A9ewW9gM8m94qSBhX6DwcM2PJtITJhGk+BOcPu7VfY1yboyWrpddK0oeLF0lLAsl
 BDS6OBiRxK11rzP9gnTZCHtq21EHO7+Fz7EkDK01Z/C11tHcnPdqH0n3qJiQIGlYIl46MXNII3K0g
 tGPPOI63CQ5lJENYROT/0BF+ghoNMtPtbfR2esTzKKT/iQSUQhPfaC1+LHP2cjHr5At83M+V3iNqo
 ITJMgRyj9a5Yr5ceP/3Epg==;
Date: Tue, 04 Feb 2025 18:15:15 +0200
Message-Id: <86jza5adpo.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
In-Reply-To: <CAN+1HbpF+qqt5=XMWxmntUNTr8PEdLNLSUG9NmQOmurMU7MtHg@HIDDEN>
 (message from Ship Mints on Tue, 4 Feb 2025 10:51:11 -0500)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <87pljxwyi2.fsf@HIDDEN>
 <CAN+1HbpuZAs7BMNZx74WX2EhaAi7gKC5C5ZViaa9faUwjQ39Sg@HIDDEN>
 <86msf1afro.fsf@HIDDEN>
 <CAN+1Hbqt-d-1AzoeMjDNuMv-7pTorPSO5296fZx3UKpx7PNaGg@HIDDEN>
 <87cyfxwwbo.fsf@HIDDEN>
 <CAN+1HbpF+qqt5=XMWxmntUNTr8PEdLNLSUG9NmQOmurMU7MtHg@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Ship Mints <shipmints@HIDDEN>
> Date: Tue, 4 Feb 2025 10:51:11 -0500
> Cc: Eli Zaretskii <eliz@HIDDEN>, acohen@HIDDEN, 63620 <at> debbugs.gnu.org, 
> 	monnier@HIDDEN
> 
> For macOS, we'll have to do this via objective-c so would be the lower-level function that would post the
> event.

Yes, platforms that get the event from their window-systems should do
it in C.  Then we'd need to define a new event kind and inject it.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 16:12:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 11:12:58 2025
Received: from localhost ([127.0.0.1]:46350 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfLXm-0000Ge-6N
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 11:12:58 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:60290)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tfLXj-0000GK-6L
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 11:12:56 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tfLXb-0005yf-ON; Tue, 04 Feb 2025 11:12:47 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=xhk/tKDWWuYlNVug9l9vOcanEyRPkjUfP5Avayx8/1U=; b=cha1K1AnFbyd
 389v/jx3C1u0W485MbcacJ/kXI7VGG91eSmkXMtLoGNfPwGkJf2v/NB6+UgpfVuFtstSAhDH7Ec/P
 n749qj1X67xGXi87JGX3sz/oRX4rXa86O0VhLWUxwQXGJ+XXNeHXpg3BsqD0Dd2UsZkOFMNhQQVDh
 JcKzLXHqXqVTcVaa7pRRoUkeKbmt3hh1rmMy6RrwFTCWO74JaTLlj9dSWbb0/DCcx2/cYIqBei0zj
 laM0qU+KMWFzQi/fVuKaLAOt1PBdFj5NFnBzulZolY3jOizen3hfYDETab7F1L0b8eSg3ts0vNlTL
 GMuqa1pNCB+kvtxubyYf0g==;
Date: Tue, 04 Feb 2025 18:12:42 +0200
Message-Id: <86lduladtx.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
In-Reply-To: <CAN+1Hbqt-d-1AzoeMjDNuMv-7pTorPSO5296fZx3UKpx7PNaGg@HIDDEN>
 (message from Ship Mints on Tue, 4 Feb 2025 10:35:03 -0500)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <87pljxwyi2.fsf@HIDDEN>
 <CAN+1HbpuZAs7BMNZx74WX2EhaAi7gKC5C5ZViaa9faUwjQ39Sg@HIDDEN>
 <86msf1afro.fsf@HIDDEN>
 <CAN+1Hbqt-d-1AzoeMjDNuMv-7pTorPSO5296fZx3UKpx7PNaGg@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Ship Mints <shipmints@HIDDEN>
> Date: Tue, 4 Feb 2025 10:35:03 -0500
> Cc: michael.albinus@HIDDEN, acohen@HIDDEN, 63620 <at> debbugs.gnu.org, 
> 	monnier@HIDDEN
> 
> This would be kbd_buffer_store_event?

Basically, yes.  But I meant to do it in Lisp, not in C.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 15:53:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 10:53:18 2025
Received: from localhost ([127.0.0.1]:46317 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfLEk-0007lK-4v
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:53:18 -0500
Received: from mail-vk1-xa2f.google.com ([2607:f8b0:4864:20::a2f]:49177)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tfLEi-0007l6-9J
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:53:17 -0500
Received: by mail-vk1-xa2f.google.com with SMTP id
 71dfb90a1353d-5187aa2c97dso1910493e0c.2
 for <63620 <at> debbugs.gnu.org>; Tue, 04 Feb 2025 07:53:16 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738684390; x=1739289190; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=9HdNm4mBLS56t91kJZc90N+4/3XEiNbB3ucnelF3Beo=;
 b=Woh7ntLRoi0Pxsn/XjG+eDRewfNYtBbsYG2z2goaViyvRYJK99ybBNNC60NerlfIhh
 gm+VXmx/y+gReLKeFK6uuBu/SwKrcZ1WeeRfO60eR7fmVbniPthTMr4OKLlxQuOeA9Sy
 TdxtRRpUq0tiQnPaNmSC0DwrjbJZ91g7KbLTQkMtdYwBULM+/q1ihtxOy65pAj88COnj
 6y1NmokzZYvF/V7povfGe7GPw5U3FFOyOwj3nEvODc0byk0BdjClV7fhMf4N3ZJCLZyk
 o0syY4lpRBN1HSVEhARHBQ3YMGFyASasU47SQ1c7mhgp/ScOj6EPME5JNmk3eev3pYqz
 b1Cw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738684390; x=1739289190;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=9HdNm4mBLS56t91kJZc90N+4/3XEiNbB3ucnelF3Beo=;
 b=vHVwJrGHfwyDOeByHYl62IEAPv91ut0vZp5MG+zDMiAbNtj/TTAylIf4il44VvzBAx
 aDSTCUX5JoCtz5Ax607QozaL5SLkLFH4fomwSmHiLEUeHLasi3Om3VXSqckmVfDiKt/F
 D3OBH6JkWOHwWA2DQVuT//zs8kb00Nni3rT4hphu4JnwHVQ2a7h+m9DrYFigApM7LQAL
 pAiLPgg/Koj3I+32bG4PpnIlQ3L/iGBmmej7zSdfRio/f5P8TqI3Zll/yD1TsA6kc/eG
 c4JIF6OhuyhfD0sa6HmzHcDSXPxBWpwrMbtRpNbD1x6WbCO4i+AYU+P5W2cvpxkbaxth
 EAjQ==
X-Forwarded-Encrypted: i=1;
 AJvYcCVCsk47u4MdTTy4eGZEMovgTQ/e3xnXcF7rRdIGQUy9CWQPDRgoEfw1D2UfgnvPuMQ7wXtSgw==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YwG8v+ggO9eWTjt6dfb1JROWiSVIw44TdePTUG7ReazYzOu/7Yw
 Whvlc68WOyfhgoXOb6ewStXw3Cv6TRgNvZ1xycv99X//q8Pr4Qm9VO97WjhzV7lrpptxA4LtN/X
 Vut51IBPVGWsaRNeUbKnaxhDioBE=
X-Gm-Gg: ASbGncuXtjeMNofH6JilMsObwMd9ZU95rtQobkBbzXRqKd23K1nf9XChIPyPElHpY9/
 oTLiwxZnO9s9WlRQItL9w2jdPCLoGMupGhk6KHmgdAmTPnEfai9e9amKeXeN5KDWYWztbat0m
X-Google-Smtp-Source: AGHT+IFSgPbFU7tBzF6029I1u6Q+QpJ7bLMY9XH9sKeFA2aQxgPdC+6TsduFXdIFjm5mTJPk0Mr/tQE4jA+qCR6+aQs=
X-Received: by 2002:a05:6102:4a82:b0:4b2:ad50:a99c with SMTP id
 ada2fe7eead31-4b9a4ec91demr20845296137.2.1738684390377; Tue, 04 Feb 2025
 07:53:10 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <87pljxwyi2.fsf@HIDDEN>
 <CAN+1HbpuZAs7BMNZx74WX2EhaAi7gKC5C5ZViaa9faUwjQ39Sg@HIDDEN>
 <86msf1afro.fsf@HIDDEN>
 <CAN+1Hbqt-d-1AzoeMjDNuMv-7pTorPSO5296fZx3UKpx7PNaGg@HIDDEN>
 <87cyfxwwbo.fsf@HIDDEN>
In-Reply-To: <87cyfxwwbo.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Tue, 4 Feb 2025 10:51:11 -0500
X-Gm-Features: AWEUYZn9LbZ3dewqxsOEvYwxp26SCho3OzkBQUbqFYsO2ilfJDJrjKEuPcHzsZs
Message-ID: <CAN+1HbpF+qqt5=XMWxmntUNTr8PEdLNLSUG9NmQOmurMU7MtHg@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Michael Albinus <michael.albinus@HIDDEN>
Content-Type: multipart/alternative; boundary="00000000000077104f062d5301c3"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--00000000000077104f062d5301c3
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

For macOS, we'll have to do this via objective-c so would be the
lower-level function that would post the event.

On Tue, Feb 4, 2025 at 10:42=E2=80=AFAM Michael Albinus <michael.albinus@gm=
x.de>
wrote:

> Ship Mints <shipmints@HIDDEN> writes:
>
> > This would be kbd_buffer_store_event?
>
> On Lisp level, adding the event to unread-command-events, as Eli
> said. See a similar handling in dbus-call-method.
>
> >     What I had in mind is basically to have the D-Bus handler push a
> >     special event onto unread-command-events, and then that event
> >     could be
> >     bound to a command.
>
> Best regards, Michael.
>

--00000000000077104f062d5301c3
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">For macOS, we&#39;ll have to do this via objective-c so would be the low=
er-level function that would post the event.</div></div><br><div class=3D"g=
mail_quote gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On =
Tue, Feb 4, 2025 at 10:42=E2=80=AFAM Michael Albinus &lt;<a href=3D"mailto:=
michael.albinus@HIDDEN">michael.albinus@HIDDEN</a>&gt; wrote:<br></div><blo=
ckquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left=
:1px solid rgb(204,204,204);padding-left:1ex">Ship Mints &lt;<a href=3D"mai=
lto:shipmints@HIDDEN" target=3D"_blank">shipmints@HIDDEN</a>&gt; writ=
es:<br>
<br>
&gt; This would be kbd_buffer_store_event?<br>
<br>
On Lisp level, adding the event to unread-command-events, as Eli<br>
said. See a similar handling in dbus-call-method.<br>
<br>
&gt;=C2=A0 =C2=A0 =C2=A0What I had in mind is basically to have the D-Bus h=
andler push a<br>
&gt;=C2=A0 =C2=A0 =C2=A0special event onto unread-command-events, and then =
that event<br>
&gt;=C2=A0 =C2=A0 =C2=A0could be<br>
&gt;=C2=A0 =C2=A0 =C2=A0bound to a command.<br>
<br>
Best regards, Michael.<br>
</blockquote></div>

--00000000000077104f062d5301c3--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 15:42:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 10:42:39 2025
Received: from localhost ([127.0.0.1]:46304 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfL4R-0007Hi-Bg
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:42:39 -0500
Received: from mout.gmx.net ([212.227.15.15]:42311)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tfL4O-0007HR-5A
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:42:36 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738683740; x=1739288540; i=michael.albinus@HIDDEN;
 bh=0G6pH941fJzoig6WVpLLOsuMVK+yG+xF97CH0yGKqH8=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=A4k4EjDD7w5VZt35aYshaUbBTPVLPwGKZ/B7iYFDFnImV26OLOdRI+P3EsjNel5U
 Z/cm22PKo3M1ZqO3eNjKRfSsuq1eQ5v2qpA8WiyVB1vsTjoH56RE3q0hDbq6w7QxQ
 CMpkwhFsozct+ie0UltzFoRYgM+sFIpI/rp3JNXO4LjVwkT3mgHZyAuqG+UP3dqfi
 5u8tPo2Xzvt+dDsJD3j46LXowATO5JV/Smej+SJmj7WOWXx1CXN7dOln/CqsWha6b
 z7QG8zkIXlVvJAmquKXcfaJpWV8tv8JBaOUkY9yiXezYAUdAEJlyVU8wsnH0vi9J3
 HtuNzr4QXFeVWpE9Og==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MOiDd-1u4Q1U4263-00UCxm; Tue, 04
 Feb 2025 16:42:20 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Ship Mints <shipmints@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <CAN+1Hbqt-d-1AzoeMjDNuMv-7pTorPSO5296fZx3UKpx7PNaGg@HIDDEN>
 (Ship Mints's message of "Tue, 4 Feb 2025 10:35:03 -0500")
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <87pljxwyi2.fsf@HIDDEN>
 <CAN+1HbpuZAs7BMNZx74WX2EhaAi7gKC5C5ZViaa9faUwjQ39Sg@HIDDEN>
 <86msf1afro.fsf@HIDDEN>
 <CAN+1Hbqt-d-1AzoeMjDNuMv-7pTorPSO5296fZx3UKpx7PNaGg@HIDDEN>
Date: Tue, 04 Feb 2025 16:42:19 +0100
Message-ID: <87cyfxwwbo.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:QY5A2jAh8+X7vtmmMKi0gPjNXxMgZ41/x1uediQJAEDZlFeohu2
 uUu+h+No2b6Oy936nzL5DvfdzYW5t1noQPaSB0HSCpXZzls4kmHgbRf43vUatW5+ZjXgqre
 C5QLARhyX2bXQk/oaCr69H5tJIgJnKVod2YIX6s00jaipj2sh8TwAGS+z2e0l3OnKHr/6Sx
 Em3UYgPs0ICMY6/f90aDg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:ELx8e9ZuYeI=;WJb8mLztwYF/TvYUrx6peFvQNgU
 9q3+eyLh9kNLLgbSw1EtUOrTZPNSJvX13Y1RaxXV3Uo8JKR382SQA7MKOAJ0iap4EZ9DOtu5L
 Hy5sq3u58LyCExSs0gHrpdPhiv3Caw37QD/0wvf0EEYYY2ye1CmPgM9lY52PZt2KRswcTRfob
 zYEYP8DoUHgsBwLTinhYzi0iCb7OsAoiGNMM9dapD0E+gpC1OeMl4B5QT9iSMPyt397zCzvSy
 48gjC+d7XR6HM1wL9+45jI7nxdpEgrk3sQhsOrpU347QWjI5gvhp24rSo2FR4pLMORL60vBnj
 AdYCanzHoL0WrIlAc7kRxAAY4iDaJrwrjd04fI377lmUx6xs+xx5h0Nw7T6dXMhNnNTzwPK5A
 PqX1Wtn6vqbIT2Zf3RnymDatn4klHZVsjrNFOu2gxzNvsHIyDMkDAuQrqRRlqc84R+wfDsWOE
 6HWZol5bhQ5bOKg1WhNrk0dRQxQJC8CW7kXN0VywQOyShhBddkn1fMSutAmonZuv3KWT1HjOx
 K+JyJ5dSvX5V49SWn8/Mpp6TEvFzg0YfO+5YRbjOPhhv0cicL/egbcDJ8wrhymfNWRqQRpTlM
 bSsVSiPSf3w55dB5+u6Y5J8JJMElCctUyznczyzUyCgtV5IVGPU9pUvn8+/lBKyS5QZA6oVnI
 T1OtmjNi7ZZp35HiV2eycD+2a6NZ6B+UyKQ0slyHcgYEpzpPb6jkiJ/AL1gis5cLjqX6VAJwU
 UO+W0K/tNp+wAY4fSUAX3O8CUWMTj5bAT9SWCBvJ6Eh2G6qB1yu9okJPG7+J0MqxCuxtY8zBT
 9n3Zl9+8QP7hIxDOyGjIR8WSKrnNSIqxhLoXVKq/cswBKMsXd4fi/qVQe2nKOnd86EcG0sAWi
 axy3D5rqmxZG7YF397zj4TW35UdtXG7OynylmiUB9YNbgpFRFaM8I/+IDszk8n16VJga7Zmgs
 VmcaatLWCxgVQqUpJ4XhJlMQu0xTuB/Vxjh/PjFu0vBgRcK1kxqgMwqKisjOiuKfkDGh4J/eF
 bKSG/sZqWn+3o/9QeX5oJfeO5oiWPBSpIVzMpNd36Lqc579RF7T2glGB3NGJOfSMWB/Fxcw+Y
 TietdejgbCT7lcXzK7gT2zGcVaNt8g6boOy3piO3vaY4fMj6rTkkhwA7KYwVaWofJkNjE5RBE
 q9S2llHCEPNVVNUX9njNUqvh7IjdSAOUio5NWMe1naN5y58EfEIegEG+pFTZDCBNLFDyxq7FI
 2GBm3IO2an0nFbQXEavp63o2wjkNf+KOuwW6HD7jkWiSwvfZdVynnxw9pcfr3uYRtNFGVbrIF
 XPb9CBysTr7Lg+FRbEaiWueKOfymfaQ5i9QPsyZ1oA94wc=
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Ship Mints <shipmints@HIDDEN> writes:

> This would be kbd_buffer_store_event?

On Lisp level, adding the event to unread-command-events, as Eli
said. See a similar handling in dbus-call-method.

>     What I had in mind is basically to have the D-Bus handler push a
>     special event onto unread-command-events, and then that event
>     could be
>     bound to a command.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 15:38:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 10:38:55 2025
Received: from localhost ([127.0.0.1]:46285 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfL0p-00074f-0t
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:38:55 -0500
Received: from mout.gmx.net ([212.227.15.15]:45623)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tfL0m-00074P-1u
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:38:53 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738683516; x=1739288316; i=michael.albinus@HIDDEN;
 bh=q41l1cnqaIk15/GTPd4f8Q70IaJEOoyuwi0xBuTxtoM=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=JpV8pmKoM61H5FaPnuaeXe49pChlHyYm0Z6Mz3rHvqHzc7aLXIkB7jBwYd1XqgJX
 sDOKX5i3W8C3Bp1jIRCtSGnF1kJKC9yfmH252VygqCRyIU+JkK5trsTompHOFoKuv
 ns2oXiSODCJOUwcjpUqi1LobSO2qXXSdTpQISl10RCtr0oT81Neh/JmkpCf0EvzS8
 2YNR/CEyhkDsaESrCtkz9zlK7youyybtqyLO69NyOePqGxKixKYoXh3axSLyZTBSD
 7Xvd+zqtgmrWgdlU6sKoBbCowluOjKnAEJ0vfT0Mmx2ZtdT0SbLWiE8lpaA5m83rV
 aV8Okzi7BRrLO0WRqA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1Mr9Fs-1t2NHG1HUs-00aLnH; Tue, 04
 Feb 2025 16:38:36 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <86msf1afro.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 04 Feb
 2025 17:30:51 +0200")
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN> <87pljxwyi2.fsf@HIDDEN>
 <CAN+1HbpuZAs7BMNZx74WX2EhaAi7gKC5C5ZViaa9faUwjQ39Sg@HIDDEN>
 <86msf1afro.fsf@HIDDEN>
Date: Tue, 04 Feb 2025 16:38:34 +0100
Message-ID: <87h659wwhx.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:HfXbk9X5xti6ZlDB8Tptm+FWLComv5I+eV4WbOfj7a6eO5EBHAa
 70DmH2WCIyKx4U1/a4FaoDsihET+drBEDoTJwG3JQLH4UfcQe0ygPNAG+wrow8Jh/UMrdDz
 vFY01sKyysjQ0rwvQcxF4UEpVR4AToN3tQJhuHBjnmNG71SSOPqjUxOZdgwzJPa9dxKtzCp
 i4XPLSGaOhLs94bkDwwIA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:54AwSbGTVpQ=;Caovmds4p6nZIw705e4dLTklGV4
 5UYANqf9uk2N+5ig9C3Ja5povn6zNiQmVd95AFmSMfbPaMl1aGufY1PRdNcib1woWL5eQWHP6
 VMS0uSJJZfcjjaCwA1SuTVChZ6gndFS8176DAxv9frC4EcQ7oA/JXkLRI0SiWUvO/Z6c4nsPO
 W3KlSwB6k039dgb1PiX3IUEFLqyJPFa+Rax4RGJ+Niw8ts3Z+FzesuWB3tK62TfFmZwszbuml
 3cM4wRDcRG+ZxBXUakKAY1+zvmKPTxTF/N4EofFng3+qOtxPamXduF37doKdLyAzTacS0I+dO
 hk1RnTMiqk9vuuMD4ykvCH3Qkow3MkmwaNfjUJhiNjkNvWlZvi/2RRsVIu9xwT8LQlDcAKUsH
 gd3juJh7SHqrSEcneMZrqwg8ccNZPBxkfhz+MAgzPYKycM8qaRRikj758RQh4u+B/AmNXjZ6k
 t1+RQ/1P3a1mW2uRWKaKp18oVw3/BZuumb3KQxZ1w67HM3TrRJGtB0qlhAHeATyxe8XYctdw/
 P5Ac2VIQc4LKgj/l/xcJ+SFsfwGrm//mvOSpEOHYU4MAg2W3M3CXzSRsL9/yeT82ZpVTGGPMB
 jQ07XmZ2zxAhb7q2NOVq7sVC4tcQPP3HNehW7LjkjFZzuRI/a3QvjtMdtDbYxrDDYsDrfiPk9
 Rv3/xl4uxG7FzQ5+EDeVX12h1HSWASdt3e+L1YcKeTpoKGRu8YbOHonUFzKB0105kaW+s/opP
 7VXxRb/PfjPpz0J8Hd1BenZ4nSeZRk/zKropgjPONrZIgDgFMepEmjsE8KM1SDfJeqWZ5gMLu
 4Ws7GVQlW0lgo51QGJxY/2PQdaJbSAblCNBaHw8VR8fAitTMIffqgEznn73voj6PiBu+Lo6IH
 jXVQXk5013EBZye6zuBfE9HOaf4VevLIDV9RmXKUb+ScAhCnsou3pnUrx7BVb37obHfOqNYLC
 blDm3XujYvQSLZ/zYz71ge+KcwfW0fSkZToOO1rRn+7RAsunTJrCbkgd7U0Tp45l9gvwBdXg4
 P2KpUMlQ4nfdB4HvlQ4Z+jOb3WUMpG4IdmHB0ERlBfAnfqkN01qgb+KpccnZIKImZy6/5yoMO
 TfZycPWd7IgPGcFVvlLFcUN5LlbwJ9h5xl6ZKp90HxMma2SBDz2rFo/9X+kSx7gmXj9nCqSHX
 SjbDurf6cpNv9O+SEfe6X172RiltdCTJ6M4YItM6alNe4FS/WlmtcDPBpMAEmY5sDituYE4RQ
 D6CWkOVB8olRlOW+60HQb54G8RuI/joT32CRoCz60Kesn5TdFM85DtiWN0EZ15Iq24vo6h7l4
 M24OahGR+1koqOkDJYitHBCJNI7GeOUsly4ysLU9f53vyA=
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, Ship Mints <shipmints@HIDDEN>,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Eli Zaretskii <eliz@HIDDEN> writes:

>> Once an API is agreed in principle, I'd be willing to take a stab at an NS implementation for sleep/wake
>> events to exercise the API, and so we'd have both dbus and NS. On macOS, it's basically "will sleep" and
>> "did wake" events, and I don't think there's a hibernate event.
>
> What I had in mind is basically to have the D-Bus handler push a
> special event onto unread-command-events, and then that event could be
> bound to a command.
>
> Michael and Stefan, does it make sense to work like that with D-Bus?

Sure, no problem for D-Bus. This could be done in sleep-handler, instead
of running sleep-sleep-hook and sleep-wake-hook.

The event should have a boolean argument, for on/off (or sleep/wake,
however we name it).

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 15:37:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 10:37:11 2025
Received: from localhost ([127.0.0.1]:46281 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfKz9-00071e-5h
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:37:11 -0500
Received: from mail-vs1-xe31.google.com ([2607:f8b0:4864:20::e31]:53718)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tfKz6-00071L-LG
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:37:09 -0500
Received: by mail-vs1-xe31.google.com with SMTP id
 ada2fe7eead31-4b11a11a4f0so1689245137.3
 for <63620 <at> debbugs.gnu.org>; Tue, 04 Feb 2025 07:37:08 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738683423; x=1739288223; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=/W1UVEaK+3oawP2LtOrp51Q4dxPBnqWOO9BcutVd0YM=;
 b=Fddt0IBmTe+5OpBMRo0zDDuJPhDrBQFpw9ly2OFgQflZSX4f6y9QLp+RKiyjY+w7Wy
 Pbg4rJICh6aXcjSxxxX3KZEfMbpMFQv3h9aU7biDxunEuDKnqxDksteYX7MetLAoLYPd
 IAJ7sNPuKZR6gKIojd7yO7HPGq7l2JwsEPmHXMBH7oxmrY0jEqAeVH+9Sl0WMwZ1htV7
 hlvQefajrxxhctLJibN8CmTcZWiW47LvvqSSfqRhulCrH5+TOUsIqm87fD0Ncv2OrXVi
 I1uLCU9g1/PirYy4pENWcvZYkNMXKSyOMsDZlPl8DYvcERdT1VUeACQnklNCe1VtQZAg
 ziMw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738683423; x=1739288223;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=/W1UVEaK+3oawP2LtOrp51Q4dxPBnqWOO9BcutVd0YM=;
 b=DwKWLXnSssFc7l4rLZmsrXJ6Y9/q1hCSz6KygNIzrPdlwxmLqx2GwLYRIDTScrv/+8
 dWPjGsaknvS1dFJ9W4tknQNK12ArFn5ymFgi2nBmxm1Uzh8ROFjWuOozeL+26bivyFAz
 W7zBgDTFg3M/HQri1NA2KN7aHER7Y71AtTx0t7shUM8kF32N0Fv5OCrMhiLm6AmIRaEu
 mzkVYfn/ho83uOYB/nou7521GKKdNAgVLSF8LHS38Ejei4zwunqw9yalwEXZRWKIgrzB
 tnmKJkZNd0VGKNNqNaFwiszeQ7DPpIwrbGmB7XyRnS5wll2lIIRYtTZ24AvZgfBbrwA/
 bL5w==
X-Forwarded-Encrypted: i=1;
 AJvYcCWRBWfqrFWew1tEcvbP8TJUlRfr6ao13cEBd1uSDzBuCb/w5wA8pZuGLJOSe9Ixp70wvUJD+A==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YziyIFkrfUumzi7varmc9NSbeRFl1Y63LEij3Hd1U3N/goQb5qd
 ngP5v7+RUo0BYSrY/5VrAoI0/C5siym+hjaMTy64X9tmwO2GQBxSSBnQ93aQwEYKAlZazzjPe1s
 zHZFXHYeY5Zj0sSy1my3ld/cslysUjupN
X-Gm-Gg: ASbGncvVJ2p9Fv8JiY7NmrOETkeP3XmPah3T7HlcbkNnBw6CYqWRNY/Ma6Gql0diXPh
 Of37jsD7gxdDwHZsknbTD0QGc54pX4fNdCdG1s2VrKAGfgb/YiO2svCuJ7MFRRlXFnnKxa82e
X-Google-Smtp-Source: AGHT+IEaY8yzJyXcCD8WJhnEkmhF4vL4n2hQl9O9i/73oFhlka/ozt8bg/vfWFU+5CNh3rmvkRqw6lKNNCEDCiBNP5Y=
X-Received: by 2002:a05:6102:2a63:b0:4b9:b986:591c with SMTP id
 ada2fe7eead31-4b9b98660dbmr11772412137.22.1738683422922; Tue, 04 Feb 2025
 07:37:02 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <87pljxwyi2.fsf@HIDDEN>
 <CAN+1HbpuZAs7BMNZx74WX2EhaAi7gKC5C5ZViaa9faUwjQ39Sg@HIDDEN>
 <86msf1afro.fsf@HIDDEN>
In-Reply-To: <86msf1afro.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Tue, 4 Feb 2025 10:35:03 -0500
X-Gm-Features: AWEUYZkS6S8j3ujsmUOextfPlUXJQQT8t8hJIMPPTvpGU6PziIu4F8P7Vxz20sI
Message-ID: <CAN+1Hbqt-d-1AzoeMjDNuMv-7pTorPSO5296fZx3UKpx7PNaGg@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: multipart/alternative; boundary="000000000000ccdd15062d52c701"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--000000000000ccdd15062d52c701
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

This would be kbd_buffer_store_event?

On Tue, Feb 4, 2025 at 10:31=E2=80=AFAM Eli Zaretskii <eliz@HIDDEN> wrote:

> > From: Ship Mints <shipmints@HIDDEN>
> > Date: Tue, 4 Feb 2025 10:21:05 -0500
> > Cc: Andrew Cohen <acohen@HIDDEN>, 63620 <at> debbugs.gnu.org, Eli Zaretskii =
<
> eliz@HIDDEN>,
> >       Stefan Monnier <monnier@HIDDEN>
> >
> > Once an API is agreed in principle, I'd be willing to take a stab at an
> NS implementation for sleep/wake
> > events to exercise the API, and so we'd have both dbus and NS. On macOS=
,
> it's basically "will sleep" and
> > "did wake" events, and I don't think there's a hibernate event.
>
> What I had in mind is basically to have the D-Bus handler push a
> special event onto unread-command-events, and then that event could be
> bound to a command.
>
> Michael and Stefan, does it make sense to work like that with D-Bus?
>

--000000000000ccdd15062d52c701
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">This would be kbd_buffer_store_event?</div></div><br><div class=3D"gmail=
_quote gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Tue,=
 Feb 4, 2025 at 10:31=E2=80=AFAM Eli Zaretskii &lt;<a href=3D"mailto:eliz@g=
nu.org">eliz@HIDDEN</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quo=
te" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204=
);padding-left:1ex">&gt; From: Ship Mints &lt;<a href=3D"mailto:shipmints@g=
mail.com" target=3D"_blank">shipmints@HIDDEN</a>&gt;<br>
&gt; Date: Tue, 4 Feb 2025 10:21:05 -0500<br>
&gt; Cc: Andrew Cohen &lt;<a href=3D"mailto:acohen@HIDDEN" target=3D"_blank=
">acohen@HIDDEN</a>&gt;, <a href=3D"mailto:63620 <at> debbugs.gnu.org" target=3D=
"_blank">63620 <at> debbugs.gnu.org</a>, Eli Zaretskii &lt;<a href=3D"mailto:eli=
z@HIDDEN" target=3D"_blank">eliz@HIDDEN</a>&gt;, <br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0Stefan Monnier &lt;<a href=3D"mailto:monnier=
@iro.umontreal.ca" target=3D"_blank">monnier@HIDDEN</a>&gt;<br>
&gt; <br>
&gt; Once an API is agreed in principle, I&#39;d be willing to take a stab =
at an NS implementation for sleep/wake<br>
&gt; events to exercise the API, and so we&#39;d have both dbus and NS. On =
macOS, it&#39;s basically &quot;will sleep&quot; and<br>
&gt; &quot;did wake&quot; events, and I don&#39;t think there&#39;s a hiber=
nate event.<br>
<br>
What I had in mind is basically to have the D-Bus handler push a<br>
special event onto unread-command-events, and then that event could be<br>
bound to a command.<br>
<br>
Michael and Stefan, does it make sense to work like that with D-Bus?<br>
</blockquote></div>

--000000000000ccdd15062d52c701--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 15:31:16 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 10:31:16 2025
Received: from localhost ([127.0.0.1]:46259 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfKtQ-0006kz-If
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:31:16 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:46458)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tfKtN-0006kf-Fj
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:31:14 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tfKtB-0003J6-Dt; Tue, 04 Feb 2025 10:31:02 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=4S4CYPpFSPuAJUUItquQUVPpcffX+TnENFC2roFPBpY=; b=pXNPUsCsl1AZ
 eXIAue8pa3M6nnw8eRuGGtTGYXCNutgVOnxFrEDKs9zvnX0dGzpkd2UefWJvGaKlhFRscVwBywvkB
 E2KCR3lrZf47MLfFXn5rTvTuLBGIQwtw7VioeqGXrCQ0pvMBUwOSBQ2Z8CPpXGTFH2T+e+Rnnco+k
 ve8jgWBissMNIR1pt4+vhgsglPniP+IjHbKFilrC97W5fu3CkKP6WkNI96I2GEZikTbqou9dEBBFT
 N/J+jlp/CPunMO4FTIurS/hkqmn7KnCFrEs4oF3rTepUKF4hlwI2OWymn/8xnX5fwvTmFb59rAfo4
 z93gcSuOVTNmswI8/6aJoQ==;
Date: Tue, 04 Feb 2025 17:30:51 +0200
Message-Id: <86msf1afro.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: michael.albinus@HIDDEN, Ship Mints <shipmints@HIDDEN>
In-Reply-To: <CAN+1HbpuZAs7BMNZx74WX2EhaAi7gKC5C5ZViaa9faUwjQ39Sg@HIDDEN>
 (message from Ship Mints on Tue, 4 Feb 2025 10:21:05 -0500)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <87pljxwyi2.fsf@HIDDEN>
 <CAN+1HbpuZAs7BMNZx74WX2EhaAi7gKC5C5ZViaa9faUwjQ39Sg@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: acohen@HIDDEN, 63620 <at> debbugs.gnu.org, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Ship Mints <shipmints@HIDDEN>
> Date: Tue, 4 Feb 2025 10:21:05 -0500
> Cc: Andrew Cohen <acohen@HIDDEN>, 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, 
> 	Stefan Monnier <monnier@HIDDEN>
> 
> Once an API is agreed in principle, I'd be willing to take a stab at an NS implementation for sleep/wake
> events to exercise the API, and so we'd have both dbus and NS. On macOS, it's basically "will sleep" and
> "did wake" events, and I don't think there's a hibernate event.

What I had in mind is basically to have the D-Bus handler push a
special event onto unread-command-events, and then that event could be
bound to a command.

Michael and Stefan, does it make sense to work like that with D-Bus?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 15:23:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 10:23:13 2025
Received: from localhost ([127.0.0.1]:46218 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfKlc-0006IG-Gm
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:23:13 -0500
Received: from mail-ua1-x92f.google.com ([2607:f8b0:4864:20::92f]:49442)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <shipmints@HIDDEN>)
 id 1tfKlZ-0006Hy-Fq
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 10:23:10 -0500
Received: by mail-ua1-x92f.google.com with SMTP id
 a1e0cc1a2514c-85c4c9349b3so1396478241.3
 for <63620 <at> debbugs.gnu.org>; Tue, 04 Feb 2025 07:23:09 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1738682584; x=1739287384; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=7hTiBu9MoYHteqbYIJTV5x9sw/+K1pZEoGIO52iynCo=;
 b=dEsKVEU7FAx9JM/F/fLcfftv2j5jwBUkV427t+MUKIAnAPMMrdBi9RIJ3UMv2Fm+6Y
 CMGOLz2XAKquIK3j4mn6PQ0CpoBc4opFTKu2ogcdX5QFcCiatd/oCmjO+1fYmA4rU+jO
 fipYMBt6hPO7x8B1bqfX8jb16e/XAAskOVc2Y+GiP5AYkr7lR5qsu+lI2AxWAGAV0AG5
 gmqtK4KMWT+pYZBJLQbNIcrIeWL9ZJuldJJSzXWcOV2uFub++rAbUx5snKFqIPouD/lJ
 8fTGhPf9dR8fYepewIY73Z8LdoD3WZA7pUua1BQ837P3IlGlQoXU5EYIBLOnIec7+KO/
 O2EQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1738682584; x=1739287384;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=7hTiBu9MoYHteqbYIJTV5x9sw/+K1pZEoGIO52iynCo=;
 b=TrdRhcsPNnfLhrGlbR67Ua0jM/iuXvTkvmxKKEGBOmJnvVdh0VUrNcs6WuvmGRUSlm
 SVqtYaIZVArDY6Wxm+lPDQMDvHfUgpYyXUsAhLu/D8WVsK7skphQZyaYLXm5XnhLw75+
 lS4OntNmGIQqYKrbU0LJFfuaZIKtSrcYh1HMOQ2hK8aGQAgX1NRI5pDIqwM/swzZtQcX
 R7yzyA26kaedkJOomMXZPrpFZLy7+1+A2H/Xi7Vr/QS3mtB3RSdu0pmw+tVJUL74Voys
 1kToItujM0L6QcAKs1MFvOedU3Y2XP8FrMPx5hJoa+txG93Jjw217dOpwGd7uNgLKfkU
 l3WA==
X-Forwarded-Encrypted: i=1;
 AJvYcCVe6+ndbE7bxIjBbbRiVcX3t72hhdmqh+IIoeOFpgr+nf5J6m4XAGWdx31sekw1uc/vlMtZEw==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YxrVYZWzgY09DdTTM6wzh+SBv1rGKiB9bd8i6ccGv7br1roWyJd
 z1Xkm9G8SCBoumP8xpLuFsSA3k7DS78XMRf3vy0DL2KzucuD0xaOgDqkB68e1xbrgEOjifT1ycd
 4DGZaVwDA2y38HDTcKf8YfSBlUQE=
X-Gm-Gg: ASbGncttk8xHnGl6i8m2jpFKmhHdLul5RMQgkLFcgkZSq/2shNgXcH49ysqW3kRty1H
 X3spintAVQ10Z7E/SVWPeb5ClX39UWwXHpi2WmdCetJyeBkdY1IF7pWcLTYyzhb0WjXK6j16B
X-Google-Smtp-Source: AGHT+IHu+b1bbjLM0XOFqtKa6gSmQfxXOMjsPTcYLSlzLAqyiVO7y3IUyJ2snI6DNFvx5zrfn2gO7+ZTRgaMaNM5dhY=
X-Received: by 2002:a05:6122:882:b0:51d:eb9b:bf3 with SMTP id
 71dfb90a1353d-51e9e5190f5mr19053366e0c.8.1738682583749; Tue, 04 Feb 2025
 07:23:03 -0800 (PST)
MIME-Version: 1.0
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
 <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN> <87pljxwyi2.fsf@HIDDEN>
In-Reply-To: <87pljxwyi2.fsf@HIDDEN>
From: Ship Mints <shipmints@HIDDEN>
Date: Tue, 4 Feb 2025 10:21:05 -0500
X-Gm-Features: AWEUYZldwo8qbZAOYJhlXXd-L-d5Bj5dr8cyE622r1vFNgFXSTzNosGY_kR76PQ
Message-ID: <CAN+1HbpuZAs7BMNZx74WX2EhaAi7gKC5C5ZViaa9faUwjQ39Sg@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
To: Michael Albinus <michael.albinus@HIDDEN>
Content-Type: multipart/alternative; boundary="000000000000c81d51062d5295eb"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: Andrew Cohen <acohen@HIDDEN>, 63620 <at> debbugs.gnu.org,
 Eli Zaretskii <eliz@HIDDEN>, Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--000000000000c81d51062d5295eb
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Once an API is agreed in principle, I'd be willing to take a stab at an NS
implementation for sleep/wake events to exercise the API, and so we'd have
both dbus and NS. On macOS, it's basically "will sleep" and "did wake"
events, and I don't think there's a hibernate event.

On Tue, Feb 4, 2025 at 9:56=E2=80=AFAM Michael Albinus via Bug reports for =
GNU
Emacs, the Swiss army knife of text editors <bug-gnu-emacs@HIDDEN> wrote:

> Andrew Cohen <acohen@HIDDEN> writes:
>
> Hi,
>
> >     >> I have not had much time for Emacs outside of my regular
> >     >> activities, but I made the changes you suggested and have been
> >     >> using the package for the past year. Unless I hear objections,
> >     >> I'll push the package to master sometime soon.
> >
> >     EZ> Thanks, but could we perhaps implement this in a way that is
> >     EZ> less modeled on D-Bus, thus allowing different back-ends on
> >     EZ> other systems?  For example, could we have the D-Bus backend
> >     EZ> inject an input event, which could then be bound to a command,
> >     EZ> instead of directly calling the hooks from a D-Bus event
> >     EZ> handler?  That would allow adding other backend, which will
> >     EZ> generate the same input event "by other means".
> >
> >     EZ> Stefan and Michael, I'd appreciate your comments, both on the
> >     EZ> patch and on my proposal.  Maybe you will have other, better
> >     EZ> design ideas.  (FWIW, I've read Michael's original comments in
> >     EZ> this bug report as saying things similar to what I say above.
> >     EZ> But either I misunderstood or the patch as posted doesn't do
> >     EZ> what Michael suggested back then.)
> >
> >
> > Thanks, I'm happy to make changes. I think I understand what you are
> > suggesting (and what Michael suggested earlier) and it is certainly
> > desirable to make this more independent of D-Bus. My programming skills
> > are extremely rudimentary so it might take some time (or I might fail
> > altogether).
>
> Yes, I still believe my proposal stands. OTOH, nobody else has taken the
> stab over the last months, so I don't know whether such changes will
> happen.
>
> FTR, the majority of my comments on the code are integrated. What's left
> could be done later. What I'm missing is the documentation in the Elisp
> manual, if we integrate it into Emacs core.
>
> > Best,
> > Andy
>
> Best regards Michael.
>
>
>
>

--000000000000c81d51062d5295eb
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">Once an API is agreed in principle, I&#39;d be willing to take a stab at=
 an NS implementation for sleep/wake events to exercise the API, and so we&=
#39;d have both dbus and NS. On macOS, it&#39;s basically &quot;will sleep&=
quot; and &quot;did wake&quot; events, and I don&#39;t think there&#39;s a =
hibernate event.</div></div><br><div class=3D"gmail_quote gmail_quote_conta=
iner"><div dir=3D"ltr" class=3D"gmail_attr">On Tue, Feb 4, 2025 at 9:56=E2=
=80=AFAM Michael Albinus via Bug reports for GNU Emacs, the Swiss army knif=
e of text editors &lt;<a href=3D"mailto:bug-gnu-emacs@HIDDEN">bug-gnu-emac=
s@HIDDEN</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding=
-left:1ex">Andrew Cohen &lt;<a href=3D"mailto:acohen@HIDDEN" target=3D"_bla=
nk">acohen@HIDDEN</a>&gt; writes:<br>
<br>
Hi,<br>
<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;&gt; I have not had much time for Emacs outside=
 of my regular<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;&gt; activities, but I made the changes you sug=
gested and have been<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;&gt; using the package for the past year. Unles=
s I hear objections,<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;&gt; I&#39;ll push the package to master someti=
me soon.<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; Thanks, but could we perhaps implement this =
in a way that is<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; less modeled on D-Bus, thus allowing differe=
nt back-ends on<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; other systems?=C2=A0 For example, could we h=
ave the D-Bus backend<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; inject an input event, which could then be b=
ound to a command,<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; instead of directly calling the hooks from a=
 D-Bus event<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; handler?=C2=A0 That would allow adding other=
 backend, which will<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; generate the same input event &quot;by other=
 means&quot;.<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; Stefan and Michael, I&#39;d appreciate your =
comments, both on the<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; patch and on my proposal.=C2=A0 Maybe you wi=
ll have other, better<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; design ideas.=C2=A0 (FWIW, I&#39;ve read Mic=
hael&#39;s original comments in<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; this bug report as saying things similar to =
what I say above.<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; But either I misunderstood or the patch as p=
osted doesn&#39;t do<br>
&gt;=C2=A0 =C2=A0 =C2=A0EZ&gt; what Michael suggested back then.)<br>
&gt;<br>
&gt;<br>
&gt; Thanks, I&#39;m happy to make changes. I think I understand what you a=
re<br>
&gt; suggesting (and what Michael suggested earlier) and it is certainly<br=
>
&gt; desirable to make this more independent of D-Bus. My programming skill=
s<br>
&gt; are extremely rudimentary so it might take some time (or I might fail<=
br>
&gt; altogether).<br>
<br>
Yes, I still believe my proposal stands. OTOH, nobody else has taken the<br=
>
stab over the last months, so I don&#39;t know whether such changes will<br=
>
happen.<br>
<br>
FTR, the majority of my comments on the code are integrated. What&#39;s lef=
t<br>
could be done later. What I&#39;m missing is the documentation in the Elisp=
<br>
manual, if we integrate it into Emacs core.<br>
<br>
&gt; Best,<br>
&gt; Andy<br>
<br>
Best regards Michael.<br>
<br>
<br>
<br>
</blockquote></div>

--000000000000c81d51062d5295eb--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 14:55:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 09:55:32 2025
Received: from localhost ([127.0.0.1]:44057 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfKKq-0001UN-7g
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 09:55:32 -0500
Received: from mout.gmx.net ([212.227.15.19]:35481)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1tfKKm-0001Nm-Va
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 09:55:29 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1738680919; x=1739285719; i=michael.albinus@HIDDEN;
 bh=51DGarzsjRIW+/aBvBz0q2mELjx0fp09ilLXE5y6oD8=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=U8eyYw5FDYBBGqWTzLC06oj/15w5burR5JNE6RRW8VXnXEXagXniXFrXrNvQacrW
 HU/wVP3RsSvLmDWMXEe5cpP9M3FBHc1l2enuwPVq42aOFo2dESATk1gL1hTR6P8SJ
 2XpXhg8MGftt2agQVygGZ5+mzxUgxB/xzn+xyzaMo7invZTzUlaGhntaEbs1JqVz4
 YRHd0hUoFlO2lAO2ndeRa8X7h4Hm8YchZIvNWSDNeksPXLBN0DagWc6JXVcCT8gO/
 40zevcseCubXqlcQ8SwnWtOqMco4mSLB7mVIynZDu0VtwNRzGSS4RR+bbqfaWe69h
 5d6/wIXPonGzSBHicw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1N4zAs-1tGCmJ0Vl6-00wws0; Tue, 04
 Feb 2025 15:55:19 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87seot3k42.fsf@HIDDEN> (Andrew Cohen's message of "Tue, 04 Feb
 2025 21:38:53 +0800")
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
 <87seot3k42.fsf@HIDDEN>
Date: Tue, 04 Feb 2025 15:55:17 +0100
Message-ID: <87pljxwyi2.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:2cbNsKBPwjYoZXZnHexOg78M0v50jLmFikAR3mMB0HaM6iL22Te
 +wbXGAnOmrRhz9xEvZ/AvxF86Xxog5905hFmnBTQOyZ4e905LhGiA/0pdxgeqXA81cH8cXd
 LU3/VDLBhm8GjF98XpfDVoWNwm2b0eYD7seQoq7JZjZeFkx1HZX4htzHT/xEnI8w/2GYXo9
 3iB8/boud1Jjd6ngrUJ3g==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:uv/ioASZADY=;TjhUDo/HvrdLTp3jVcp04gzVNQ3
 57kHRKyrPXI90XLclAdiuUO4DEZ7UvXbE+WJnUm+LBDhLrd3HbDm0VguoIpe+vwJWCIqzQ/jn
 adVIKMPSb7+fJppQ5TT6rSF00pDWNZkswYxEwt8qJ1S6xKCeDNwUHEFAIOztkbIH176II0gMd
 +1Xba8PvJ/MjSutW29tnm3DBE/7c2Xq+HI1KDX/GR8AdFWUA0MZd7bcJxrNQ0L6LH1wh3l0WR
 hnFTqycDY+zLhDtFKXlCzQNn6Fxv6PhLxAJF2IlLhRVRnn0KtUCDIWDYnoTXkxntxihop1Klz
 ayBkLKh6RoSTJH1UIMnbSMM61jX4VOz6ohgAHlVFOs8vkz6Z6d0Bls2gn4/6g+KJxltykUGbk
 RBdZVg+p7tt30v0nN5aQBsQ7Y6hnSJYqhP2uNXlfZr6J/h/SGri5gsfGsplDMje3GHWXX0WLp
 ypNUlWMuJMG5FORqEiRmfn2wdqgtvBDDhLSqkpCkmvf55ApRXbE2j6KpquoKp5HCQsp7b3nPf
 s/WI8bW6OUiG5OQJitOBuwx0JEDwKnoadqf8+6DQQV0KzKu9JZT0Uxu+dZ/sshtuQ56nqD0UH
 Am9LmvmFDWgOtOjbR2f1vTuXPa6CPlw4EnlGtM8o2PcpnWi5QejrgS1frVHwlNTHieGgWYtsg
 Hu25zeq7G+n2ogaSGFvlZ27nclB4rSdm/EzbSECvy/07STwzWdP0xRTDl8mYbXeJ1wAivWPGn
 W/C7ZJy6T1FZfG5Ww/QWkqD4EHI6rAxaurKZqtk0WRS6XuUPiIt64DHvoqSG6QPIzn7a1G+Eg
 rR9lGJ0x9b76UU/GJZuTu3Mr4JrUfiC+Gffk2E3zo9VapbHdht4eTGSghveB61tZBttFUf7Gq
 LTZKhHLrZnbZAe/wnMfxURiwQv9xa+Qo7e2CxmHRkWJ30rWX7TsxOqHWk/ekrqkj0Z4JakyaN
 NMCd1X6GTRrxSAQ+oPBsMV63slBOheQb2vjSBGf0yFeLaGWgFUzrNNXz6Yu8K+G5SrRcvs926
 1Qq3M8LMtnz/nSoNAVqnUA+L2QceFJB3PpgbD1TZtMoZq0maU+zg6MSJj6mD8qSKQCFAgsWOK
 IxmEn9r2O2k/Z6tw8m0NCs8pj37wQTwEmo42Qf0DpbbgzAuOpYWdbV8T0HnG/DbZ+TNQtJ7tB
 Xg3Mgk+66t9tlZDaIXLk3HvTmMyXSLTKciztaAyJyOLvM3FFH/AHdWata8wYKCeqNdjWTunfF
 o2w8ycJzCY6QC+QYEyyQaGt/q9TYHPlfVQOQhgU/Oc0MzxJHJUZ3XXpKNufgUYjaqS9SW0B9E
 A/LrSDmAP3mFJh1sTCt6x+mgY82yKfMvqtEyHoH0Qj8x8I=
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Andrew Cohen <acohen@HIDDEN> writes:

Hi,

>     >> I have not had much time for Emacs outside of my regular
>     >> activities, but I made the changes you suggested and have been
>     >> using the package for the past year. Unless I hear objections,
>     >> I'll push the package to master sometime soon.
>
>     EZ> Thanks, but could we perhaps implement this in a way that is
>     EZ> less modeled on D-Bus, thus allowing different back-ends on
>     EZ> other systems?  For example, could we have the D-Bus backend
>     EZ> inject an input event, which could then be bound to a command,
>     EZ> instead of directly calling the hooks from a D-Bus event
>     EZ> handler?  That would allow adding other backend, which will
>     EZ> generate the same input event "by other means".
>
>     EZ> Stefan and Michael, I'd appreciate your comments, both on the
>     EZ> patch and on my proposal.  Maybe you will have other, better
>     EZ> design ideas.  (FWIW, I've read Michael's original comments in
>     EZ> this bug report as saying things similar to what I say above.
>     EZ> But either I misunderstood or the patch as posted doesn't do
>     EZ> what Michael suggested back then.)
>
>
> Thanks, I'm happy to make changes. I think I understand what you are
> suggesting (and what Michael suggested earlier) and it is certainly
> desirable to make this more independent of D-Bus. My programming skills
> are extremely rudimentary so it might take some time (or I might fail
> altogether).

Yes, I still believe my proposal stands. OTOH, nobody else has taken the
stab over the last months, so I don't know whether such changes will
happen.

FTR, the majority of my comments on the code are integrated. What's left
could be done later. What I'm missing is the documentation in the Elisp
manual, if we integrate it into Emacs core.

> Best,
> Andy

Best regards Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 14:49:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 09:49:17 2025
Received: from localhost ([127.0.0.1]:43382 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfKEm-0000x4-Rt
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 09:49:17 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:45198)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tfKEj-0000wo-Et
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 09:49:14 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tfKEc-0006hF-SK; Tue, 04 Feb 2025 09:49:06 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=CDwoTnclByj4NG8DoMmbvCNybsZS4dHevLcvmE/a06k=; b=Bf1vgqxpqUlm
 RF0Y4E+GdrYzYWlIJCmK8eFsvEPhly3b6b7TSm0nWeNMtyPC5uKM4mL9cNwWDGgzvmUeFwKK1uEgu
 zI95gT1P4+PNSuAP5RxPCdrBHzBRyMPP+Pf1GZxwQzW7fxtXY36EgUohHqk0ei6hx/hIBomJz/yD4
 J/cbfSAiYXA4dDjKo7UH/fEZNTg8PFXVCU/CNvq7SBOqbljL7cHIiRLkSCJ+tVUm+UGmX19DZhQcR
 EJZ4e4MMlIvqUYjvohww6mcHxitl5lmlHbcmUElYJOTFcTHo41cpYVPQIsyCIfTb1AXgxr9ttSQ3X
 bAANbc7kIpCsksLKb+x4mg==;
Date: Tue, 04 Feb 2025 16:49:03 +0200
Message-Id: <86r04dahpc.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
In-Reply-To: <87seot3k42.fsf@HIDDEN> (message from Andrew Cohen on Tue, 04 Feb
 2025 21:38:53 +0800)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN> <87seot3k42.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN, monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Andrew Cohen <acohen@HIDDEN>
> Cc: <michael.albinus@HIDDEN>,  Stefan Monnier <monnier@HIDDEN>,
>   <63620 <at> debbugs.gnu.org>
> Date: Tue, 04 Feb 2025 21:38:53 +0800
> 
> Thanks, I'm happy to make changes. I think I understand what you are
> suggesting (and what Michael suggested earlier) and it is certainly
> desirable to make this more independent of D-Bus. My programming skills
> are extremely rudimentary so it might take some time (or I might fail
> altogether).

Thanks, and don't hesitate to ask questions where you have
difficulties.  I'm sure you will find here quite a few people willing
to help.

To make it clear: I think this is a very useful feature to have in
Emacs, given today's proliferation of laptops and devices that like to
go to sleep, so I hope we will be able to make it work on as many
platforms as possible.  Which is why I think we should try
implementing it using the most portable and flexible mechanisms we
have of triggering stuff in Emacs.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 13:39:14 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 08:39:14 2025
Received: from localhost ([127.0.0.1]:43158 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfJ90-0002g6-AO
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 08:39:14 -0500
Received: from mail-japaneastazlp170110002.outbound.protection.outlook.com
 ([2a01:111:f403:c405::2]:29832
 helo=TYVP286CU001.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tfJ8x-0002fn-9x
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 08:39:12 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=j5dTzpjXQbVNPZvdDiFC1FrBHvqRzK1K9h28TE4JfvC24g0isG3i88a61/sqfrPoOyniK/Hl5qxyu7zWJ9EpV93uHLc75yPjWWXtv0OxCDtleBSr0j26gkCiaM9sz3IHCTzulg0FSKvqjjkS4Yt11nrI5IKukwpJ23FBSaPycuuBq7Ze7SkKvsftch4FRHHpDiMk3SCsfYDlIilZP/ysiWH9voyCfHGnLMtkldTARL6X3/Z3fvBqUEArLMvHWkG0+oZYCcNmoLOypINh553pv82dPU0d3kh8Q//sQHvPtAPWIeBGF9AtT/HRoHioDF28aGEnlwPSK+1iES7s59mgbw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qOrBkDF91FIM4zET+c+X6EyLmFS1CH37uYd5BJQOGrw=;
 b=mRz+bCDKi0hrefkyAUARFTvMB+LeSxPKtP2IkyydFX5L8zr1ziJPBB3sWBeLZraX8sDOLwDsN8ghAuU8NGeWLWnjjws4Br9hpvn3ZW7he8WHVltNSR8BwpzrlI8Jem+K4bW76x9awY80bbdzS77DfJQ2CtZIMxg0OSB92sVAUdYVv+S6GcVRsAA+zXk09RPl5E86MgahkbBgW9TSuZu11p4doAo/Q9Cb91mwzhecQZE1TklzspQENkouAdIlFouAHMRIZVPrQNs5s3WQf0scmR+qXwJVlwAL9KPlTyOsA4X9TPj0JB/kgyX0yg7EVr4wgLTBB+01P7VB21VY4a3SJA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qOrBkDF91FIM4zET+c+X6EyLmFS1CH37uYd5BJQOGrw=;
 b=roqFxzljHWwzhk6zF+ZePAj31X5+2GzKFq6C33ayJWjm6JhLfgPJnJh3Poy6xBSjA1tBiaKOX99WA2WPN/cS91wQZSGLc/6MYThVWB3qMGTdmBf3PmPeGz9SZ2E32yc7kI4V6G6GejNaw1InNHQhsYtSzcuJ89QbPc68UAIQvAT2UsNRWmBZzsRrE5i+NEe5XzHtVq2PSWQPe1onDVO7SrzgdY7pcKbWwUnng5mi7PY6Ncl+Wr9vCZ5/MS+s9JEZLXINOXIhLb0udzNDy/orobwcN4j5L5b4aqkiCajqGIEZQ+FgGmQdBLQ2zflwRwMQYjwgeNomKK/oh/F5gOyWkA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by TYTP286MB3960.JPNP286.PROD.OUTLOOK.COM (2603:1096:405:185::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.25; Tue, 4 Feb
 2025 13:38:56 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8398.025; Tue, 4 Feb 2025
 13:38:56 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <8634gtc0k7.fsf@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
 <878qqmz99g.fsf@HIDDEN> <8634gtc0k7.fsf@HIDDEN>
Date: Tue, 04 Feb 2025 21:38:53 +0800
Message-ID: <87seot3k42.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: TP0P295CA0054.TWNP295.PROD.OUTLOOK.COM
 (2603:1096:910:3::18) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|TYTP286MB3960:EE_
X-MS-Office365-Filtering-Correlation-Id: 52dc0bd0-e22e-4d99-8ff2-08dd452145c2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016|7053199007;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?HJKL4HW1zBI6Gg7i1cdxOM1Xx2e+ITymuNy/+8jiOLCOMILw2WKlJARgtuAd?=
 =?us-ascii?Q?0O6HOQZugT5ph4qktQaeWjb54+cxSkalq3SIYcDGZScsiryM+8won74ijAV7?=
 =?us-ascii?Q?iM1Yo0Y/1Iwyyu3ZHSuxs1XoXGqTfzpXWaOC2FfyrfyCwxYdBVCiIJPFIcxG?=
 =?us-ascii?Q?lF6HlmFRKuchYn6or35Bb4BEUUKL0U8f8H7kplbFE9lIMx1+t/2pSEqt3P2K?=
 =?us-ascii?Q?OEDxuF1rtoamrzObUUmqFrE2b1oKGHk8ZMz3DZb+5ripJB6xb3PVmeY1Dz25?=
 =?us-ascii?Q?xJ7NmnxK0UEXYZt4/FiNpxD6HsVGhBYbBBM2HFOeu5XVwFjyS8xwm+3KLcJp?=
 =?us-ascii?Q?2n5dKJDVFM8aCOyA65JqEkmrK1DialLyHqkMyANn71qtiCSpOzlCrABEtVRU?=
 =?us-ascii?Q?wrYE3pJna93udjEpaEMI0Ic1FE10abgledldElNLkxWvlCX5tLk/kgqC2JHo?=
 =?us-ascii?Q?cI0MDM0YTQ6eZnOQciQRtJQ1mam5wgLo3p1soWlsAnLLvGSRg0i8PUoB8OHE?=
 =?us-ascii?Q?eqsCUNIRj1atjjovldOUX3IN+TjnBNnKKfvPJ1oZOOiR02VQ02B8/5WYvNWl?=
 =?us-ascii?Q?BLpSShonxLxNDpEbI0S243eYUoVty7YY9dzoSbhA39CktCG6xVeCKV0Fjem5?=
 =?us-ascii?Q?wFx9MjVBf18K6LOOiT+IAzN7BAiyysGkMsPOm9Q1/UhIK7Ys5w9mDRUxhPiO?=
 =?us-ascii?Q?h6qnp2Jse8uPPtdEFcPOrIjC/+eI96I4i4MWypihrTREYJlBpXwYOjKSlpDm?=
 =?us-ascii?Q?fhMvh9w3GNQHvxCUiaUrtlKU1WqOHNcD4VXbSfIJvgGKxr676E8lhyaoV+Ft?=
 =?us-ascii?Q?3hyqIEL54guvGNXSrxeiEwhUZp332EQBhp4/GY+tnylY/iQjdMfxPb0qblfv?=
 =?us-ascii?Q?yfrh2Qs4XSiHl2Kpc25i044YX90JXGOTXrEywBckVsbrKnkJWKhzM92UIrfN?=
 =?us-ascii?Q?DejErqOKmcgiE0QSvNqKUcfu3uHn2E2Kd3Opwf9BkulunQY0exZbTlq8oO+O?=
 =?us-ascii?Q?xuJ2+wnjqXuHh1cpPp9/6yZWw0Ht3XCwHxjje61kfxUs1Ohz0tm0eVwIQ3Wu?=
 =?us-ascii?Q?iyIis6KerjsDPfiCBnRF5CRY24td+PeFVqoqBUB1ZdZRNEGK6Jz5ZhV4MYzJ?=
 =?us-ascii?Q?ojUd/oGbO9K8MWkpK2RHIQ/v4DTpuYlbDhS8kGtWyBdXR7GPGunEApJF154b?=
 =?us-ascii?Q?CxuKVTNkXc+Wy/BXrAEM2PvgXpqey6+d/lKk38MSpQWxMe475mQeJb+ybq3w?=
 =?us-ascii?Q?zHQf9UikgsVdWnUpDxD6hTESDL/IzZfZI5Vp4S0C4fOIOS01DNak60+Y04tJ?=
 =?us-ascii?Q?nt+CaoSEyp3WyIedW6QA80f0foNNO77waKek93XzeVkHNtQrvVplogqB+DVB?=
 =?us-ascii?Q?zh9bABe5SHPyd447osaNamX0N2Ak?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(1800799024)(376014)(366016)(7053199007); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?K8qFVy7DLpyRMwVPxScDxm4+sNLxCe7NIUb9Nm6CUpsgh6UnCj5smfjEBurL?=
 =?us-ascii?Q?dlqlLAdfifTVp/wZg7VnkOYg4dzhYpRugiNIEbOZB14f4R4GWcBzDZWTzfGh?=
 =?us-ascii?Q?YW5I9t9SKLGjFcnKXCsli1Ca8NGmCPVNbEyQJhvAkMddt/RUY/z1iDhYaquc?=
 =?us-ascii?Q?1N8mc4QeigqMypL+PgOaRWtqf4NTXj2hl1ZRx8WYPsINZ2fv9OVYrHAcBrEc?=
 =?us-ascii?Q?Gbz1or33wwbrmT3RkVvOAUhfNmZVln9/SGbyo/YEF1wTm5UwywFb8xYHSOzm?=
 =?us-ascii?Q?dWbum6uY5/kwqyGHQBp9viUMLNWATaw8ftpDxjAjFdFQEUTQL+hooszjk+RA?=
 =?us-ascii?Q?g5NqIRk3VxyWJDcjIHA28WAFLBl2Y7Exu/QNuoyr4DMI5uRbF237xvNpYEep?=
 =?us-ascii?Q?FNlWbU2HFe+MmCT23I1I26T8myD7a7PJiHokEgJce6V9jQm5lkl3BigpphDd?=
 =?us-ascii?Q?ARgIatibT63bbO+gN6AbCGMMS3hAhQ0M1s35Cuh9gjIS78aWXzkVT07wop5R?=
 =?us-ascii?Q?wRrrzTTbQjlYRTUtZUz1JvSvrl9n11CwcIN222MYy29YyI5kk8i55qBLRVKz?=
 =?us-ascii?Q?uC/xFavd8v1lnu+jccqj3l3ZwTNtl5Uld9rd36u08V/ta68Pqh3ynqlkxsvO?=
 =?us-ascii?Q?AAnwhWUDWMR9/1dFEC6azAatY9GfHDwFgQAQja31sNfp5K2R2TOLsqS4TI21?=
 =?us-ascii?Q?+RsRYfpW/sCM8OD8UGh3lFLEldaJEnVKprzmalA6dF0RDz8KUNVUVpTHbQIC?=
 =?us-ascii?Q?BhG/GRbfpQWCxuuLN9B1pXr2T8rV3YDKcJPtvMjcytobV3QCZuFNPn4Qx/c7?=
 =?us-ascii?Q?89p1RJV2fmhy4LMGlUI3beGfp5pYsKFcckCiJHRSOZqdAcVxMtsz6oSBE9rZ?=
 =?us-ascii?Q?c9kIzb6CF06msOr9tz6tv/fGU4g0jx0XV+GF2+qYx2L9dHW4GbZuxXidDZew?=
 =?us-ascii?Q?GxA3vN/MD4tckqY4j5cry7eD1wA5TB0SzxGxeWfOovIrT/v3Kt3UoFGPZ1G+?=
 =?us-ascii?Q?GdEq8rvQtT+EeiACF0t3MOsrcrhl5EXBVEiOfEvy5Ere4cYyLv0nmuiIX09S?=
 =?us-ascii?Q?J/8J0HiE9LjOiTEuPtBr+vEHjHXi8CI6di6DKRqSm+G3G2VN8WAWzwpSw7FK?=
 =?us-ascii?Q?g870uzZvpfWA9rCpQpXjLjmSSGeKShWInYKj32JU9aArLcj5kEQ0tBumAtWs?=
 =?us-ascii?Q?gSSX1zpPrDz4LuCu7hTtl7jBMrYGY0P4PB61KNRxtVl5rV9gS7uJghmEEutT?=
 =?us-ascii?Q?kIruRODogb5wVFAR0Fb0cJt4Y/PPx3P7pjfg+B9JlmiYYUz/a0LBCbIOjTPQ?=
 =?us-ascii?Q?IMXpYC0wmQMyIjeWQJ1U/SX3GsbzGxOJi3em3SzmazYe9nItnFuq2bwBvQPx?=
 =?us-ascii?Q?IGggUkUz2eyeuYrnugjiHrKp1fk2DiatlpeNDaJZVT1KP2fcrp5EjUZEiK9v?=
 =?us-ascii?Q?jLvUz7ukbxu25V4ZlCXgdNDJnDw4s4ouYsSf6EG1EJwD0r3wPNxtazksbSV3?=
 =?us-ascii?Q?5PBIdb/T5temTMC8bAH57Xvpi3FXU8XyZ/jYqVmvX7LwZu0VmWcLfk0eDauv?=
 =?us-ascii?Q?dxGWWfpAAzASp9RTI15NIAWgDzWLhJ7ZP5LwVSg1?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: 52dc0bd0-e22e-4d99-8ff2-08dd452145c2
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Feb 2025 13:38:56.5478 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: fSYdWrdPaCMLEuP8llcy5JDfWm6PBNrOUvpIafiKuSELiSuxh2l47kGa9nxWfdEG
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYTP286MB3960
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> "EZ" == Eli Zaretskii <eliz@HIDDEN> writes:

    >> Cc: 63620 <at> debbugs.gnu.org From: Andrew Cohen <acohen@HIDDEN>
    >> Date: Tue, 04 Feb 2025 11:19:55 +0800
    >> 
    >> I have not had much time for Emacs outside of my regular
    >> activities, but I made the changes you suggested and have been
    >> using the package for the past year. Unless I hear objections,
    >> I'll push the package to master sometime soon.

    EZ> Thanks, but could we perhaps implement this in a way that is
    EZ> less modeled on D-Bus, thus allowing different back-ends on
    EZ> other systems?  For example, could we have the D-Bus backend
    EZ> inject an input event, which could then be bound to a command,
    EZ> instead of directly calling the hooks from a D-Bus event
    EZ> handler?  That would allow adding other backend, which will
    EZ> generate the same input event "by other means".

    EZ> Stefan and Michael, I'd appreciate your comments, both on the
    EZ> patch and on my proposal.  Maybe you will have other, better
    EZ> design ideas.  (FWIW, I've read Michael's original comments in
    EZ> this bug report as saying things similar to what I say above.
    EZ> But either I misunderstood or the patch as posted doesn't do
    EZ> what Michael suggested back then.)


Thanks, I'm happy to make changes. I think I understand what you are
suggesting (and what Michael suggested earlier) and it is certainly
desirable to make this more independent of D-Bus. My programming skills
are extremely rudimentary so it might take some time (or I might fail
altogether).

Best,
Andy

-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 13:16:37 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 04 08:16:37 2025
Received: from localhost ([127.0.0.1]:43128 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tfIn7-0001ei-0C
	for submit <at> debbugs.gnu.org; Tue, 04 Feb 2025 08:16:37 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:60346)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tfIn4-0001eK-Fz
 for 63620 <at> debbugs.gnu.org; Tue, 04 Feb 2025 08:16:35 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1tfImx-0002He-DO; Tue, 04 Feb 2025 08:16:27 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=PWtiv8Y7iGO/iIOpR5MqMDq0g5WP6cm6Fr2xe5S1sQI=; b=CEgvFaW+KvnL
 0qlKzOCG6GIEi7pVM4q5u5G9pdWzXRylQcQJAbniUYV/S/VjZKaiGnGPBylFy7Vwwu6UH3QXP8dcT
 mbBdMoNdb4xwRCvWDRwYyW/peeakHrqmF/mr1HlZ1n1/NDdoJevVHAcQaRmcDdS58euVZNiJ8mJbH
 pPcjZsIAcNKU9j01LvCHImvyHmOrXJLECU4ZPYo5QPgsNeE0I+kArUtZd7xtUYzl+t6I3VbcWn2ls
 f/sAaaSwPWqEJHLHFF7GNXTvfRsfdzw3UsFxzNA28GjlOtw55iiziXqSy8MN902iT81mpT2HO/lIY
 riyKHpwhmsBHBZ1MQUVa/w==;
Date: Tue, 04 Feb 2025 15:16:24 +0200
Message-Id: <8634gtc0k7.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
In-Reply-To: <878qqmz99g.fsf@HIDDEN> (message from Andrew Cohen on Tue, 04 Feb
 2025 11:19:55 +0800)
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN> <878qqmz99g.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org, michael.albinus@HIDDEN,
 Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: 63620 <at> debbugs.gnu.org
> From: Andrew Cohen <acohen@HIDDEN>
> Date: Tue, 04 Feb 2025 11:19:55 +0800
> 
> I have not had much time for Emacs outside of my regular activities, but
> I made the changes you suggested and have been using the package for the
> past year. Unless I hear objections, I'll push the package to master
> sometime soon.

Thanks, but could we perhaps implement this in a way that is less
modeled on D-Bus, thus allowing different back-ends on other systems?
For example, could we have the D-Bus backend inject an input event,
which could then be bound to a command, instead of directly calling
the hooks from a D-Bus event handler?  That would allow adding other
backend, which will generate the same input event "by other means".

Stefan and Michael, I'd appreciate your comments, both on the patch
and on my proposal.  Maybe you will have other, better design ideas.
(FWIW, I've read Michael's original comments in this bug report as
saying things similar to what I say above.  But either I misunderstood
or the patch as posted doesn't do what Michael suggested back then.)




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 4 Feb 2025 03:20:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 03 22:20:12 2025
Received: from localhost ([127.0.0.1]:42057 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tf9Tw-0000qn-5Z
	for submit <at> debbugs.gnu.org; Mon, 03 Feb 2025 22:20:12 -0500
Received: from mail-japanwestazon11021078.outbound.protection.outlook.com
 ([40.107.74.78]:8316 helo=OS0P286CU010.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <acohen@HIDDEN>) id 1tf9Tr-0000po-8c
 for 63620 <at> debbugs.gnu.org; Mon, 03 Feb 2025 22:20:10 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=TwGXlOCru891YjaSIIqQpLlfzy52ep76zAuuh3CoptJylqO9am6LpJOi/sxgFxGvn4vdTVkp+ss9MduGntrglmUfM0HgeTczAouTS2ca+RGQOj+TjzfCTm/1Ks+H0vWLcHH2DAfT7R0zk9rglGjQPpLsX7KtS38/wt9IEWUWb/gPVY1jkmWlfpoiWGxg6xkolBI10laj1dAkEcWeuxE/jc3BgQUuOtlZJT2tUro+uoZO2UBCEHQpBcBdZnue+cKMqeIGMzkptF9zlk8mGwTn/p5LCXZOCyk5saDbdokiRCFLlZoTCxKPyeW0YlHAtgsw7FZ3eoxH4hKDiBFYlCtUhA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4xOsgz+kcV/Nq3B1/qLHwKxTMD/v1BJDV5RB3OdtPBs=;
 b=FZZOHebDuRxtPmvxgh0v011+tIxycPUCC14qa880t0VDxnjXjocVpi3G2pqRx466kQ4rIA+iGStZwZlweaqPkPmRsM5HezzX7ULnaVFQlObt+yB1BdFdIWfpJUr10ldY7SgonMlmy9VQYlX9qlZfMNBgoGWSVwJtngJbvYJZVq6T9twAK5Bv/Z/BilQCPq7aGiz+HyBPWpGdm2QOv6OHjW4kcxWGPDmrbm/oS0Duxrp4bON0p8Xldhxyf/NoMpiQkq/G2NjiXWuLsp/kD2jgjQKEdCAD0vz9kSIKyN704DV866VF+A44xM1DRL0wSs6JwoWkyyK8b2aBTwRXWUimGA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4xOsgz+kcV/Nq3B1/qLHwKxTMD/v1BJDV5RB3OdtPBs=;
 b=TH5cpS2WcVU+nTXl38Vea9+JOyoYOaj/8xdiBwOGpaV87YKKa83AKs3fct1QKntvYqYKUuhwOc7Ie/vy+oBa/V5DtDAo4fFXgQQCu8Wta21hVNZtF4it0D5c8YMaqEnkjitsy6CZPkTgPWBl3xsm663i6Ddm0uZlWZBPhiFaANJGrbIytLKEQAY0Ab5f58GECFRyaTueCm8Wn3Iqpx8tRR+TDqDY0gwCJKktX+Sf+RHd+R7uBJOwhMYIgSyYW9isfTztcuHLUQPivmUUiWuTQ+e6vPIk7IomanRQd+N77UUR2X2og7Q2wCbRfMYY8j6gi6qaEshBePPgOVudwUPG+w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by OSCP286MB4788.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:348::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.21; Tue, 4 Feb
 2025 03:19:58 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::4b6e:c37e:4327:cfab%4]) with mapi id 15.20.8398.025; Tue, 4 Feb 2025
 03:19:57 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87legr1tn5.fsf@HIDDEN>
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN> <87legr1tn5.fsf@HIDDEN>
Date: Tue, 04 Feb 2025 11:19:55 +0800
Message-ID: <878qqmz99g.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: TP0P295CA0048.TWNP295.PROD.OUTLOOK.COM
 (2603:1096:910:3::19) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|OSCP286MB4788:EE_
X-MS-Office365-Filtering-Correlation-Id: 7a17699a-5f8c-48ce-93fc-08dd44cacd6b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014;
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?82MAIFQmwhyltmudnLem6aHO7DDGKTqYxL3I7lozqdM7s3sMa7Ogid/A1/5y?=
 =?us-ascii?Q?UbeB8ALwkJUH5J+IVKgV/+uZmI5Av9QJZ7tEFowD+yddC+rXNI6r17XzK9oJ?=
 =?us-ascii?Q?dGhzlvVGrO+F8rUcjjjOHCSOoYxjP7XidUkKdBNLDB9Fv5rR9wfFGz/088nu?=
 =?us-ascii?Q?Pm/91Rr9BxYvq3GJc5xGhRRErdYRX0EMiggicVrB6gAH6E0VQUYmgW2bPsOe?=
 =?us-ascii?Q?GRqHjoEP2MMouXh7V6+dFGUl4VpHqYxefqcqR5lkOP+BuxmcMFsNIdeQToIS?=
 =?us-ascii?Q?LS9usIvoTiFAXjxDOYikKgaYE3bJBKTOJhX5oD4WhsxNddpYXKlQ25QFxT0y?=
 =?us-ascii?Q?AS8aQShZ3ADmt+sqQHFoB5Y06D3CPyILJaNt7P+YcTVC5nSB4eQ1PiW8uagN?=
 =?us-ascii?Q?uouC3Bzg5MfLLCT3a0N/CBkojbHm99pZ3l3Z2ASTUpZkihLAYC1sAJ0BC2EK?=
 =?us-ascii?Q?TM9+k9RbmvgPBpJcaBD/j4ICsnwZHabme5Ny9UXmbg7ujQAiL5qq+xoRt10y?=
 =?us-ascii?Q?7GAM6pNCSHNZAcgiHutWLTceW0VfEkrlbquCf/63EqTYm4ZAH7WhSEy00/cE?=
 =?us-ascii?Q?LP/rm9rv3pV3ScZbcfTfXIfLtzUQVppfqL8eI9Cf0m6um3KCMeUrCJ4CVATq?=
 =?us-ascii?Q?BpjtEyRl5pX0r4Z3LHrewjZOIPWkR57/jsVd6u9MSkZ05cz2a1KtocG9LZPe?=
 =?us-ascii?Q?35EBymGn3bPRnA3aPhGGCbzb/A1ltIHiMQc3+k9KcozosUDStXwCqP/vKbce?=
 =?us-ascii?Q?HAY+eKymN5DNe7eRCWSy/u/IiHMRxUaxb8EOrayPzOYHKqbziNGPWP88U0A8?=
 =?us-ascii?Q?KQjwvQbY7stNzx7ZOw3H3traXKsD73EGLphDCDaCXANPug5y1ZcbeYK50Or7?=
 =?us-ascii?Q?7cslFwdWfzzhsJQDLA37qPWVl0K8kz1hp/guX/tkZZbgJozh/RijIz4BAWG6?=
 =?us-ascii?Q?qW9Rm03fUUrssiQldTb0b0BRdgHoHeDkDlPcbzPZZ3rXn9GZH8mCMGywDjDS?=
 =?us-ascii?Q?3jsgs7T8Sygj2dXiKcPYKZOIq5CHUH6vDmnKhczcS4nQuMIKVT5HJcf3V16B?=
 =?us-ascii?Q?6x3GC/nMOCHrSBdRg5qwkx/pUVCQ2Sn8beTnqFnWOlLU+GX2nnuTx0k4e7Yz?=
 =?us-ascii?Q?sznvKtPgAzGcbaAbRhCnleEMs51rjvi/DamQ3Vx7+7FAZIpz4BqUt+Ti8HrJ?=
 =?us-ascii?Q?mcHtC2QS1rEnCzQiQ6qQTt5km7kGmuV3DeGu9Jco1U+Ld4TJS+3Fiu9MHdKu?=
 =?us-ascii?Q?ZBLBY9uGg9D0+sG8NgEhsR+5jsA+BIx0xhpoosymmGsp0cWkRw7zq1KA0uZb?=
 =?us-ascii?Q?LWcn/2aXPOS6wu6uIF7Ywof/1dthRnCinjWolrCk8TElug=3D=3D?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230040)(1800799024)(366016)(376014); DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?d6gJW5gj/WoCsQkXDbB9MaLuCuknhFtTdO73BfRrRvaQ7+hQpRnzvDMbUoXM?=
 =?us-ascii?Q?UIYoFGP9dQa0/2ANKKh/QQ60Mn3TR5agRZoopkFwx6ysuypqSQCQTVpjCGhV?=
 =?us-ascii?Q?CGFWJlFUMyg9OcPmmf+FvgQ6BrOptBRcNVKndv613AOCWhQfNcVfbNpbZ+UC?=
 =?us-ascii?Q?oNFulktqqQDJlUQjMXvAMjPqZ9pHghS0T8oJ4va5yT1K1zOEDrisrLzOR8Ik?=
 =?us-ascii?Q?Yj3K+V9MOlBLnSTV42sIgD+CdN4Ml7gxq9h+NmlE0ikQ2PM3E+U2uczeM4fQ?=
 =?us-ascii?Q?Dq12eNW6Tw52W3L0/uS31QbG4cFdsCavjveGVmUFP71UYPZf7Pv7T3kSEPUV?=
 =?us-ascii?Q?jq4Qx09uI6YA+lQS6/ozrMUpXpDoFmsjNdylXN2VyYpqF6NfS8QiHjllzZWy?=
 =?us-ascii?Q?KIdJ6y8i1CoKttn4T1G8EzPa0r+n7eZd4nkongho5755z3Db+dtaTR93IhSi?=
 =?us-ascii?Q?eFtrQRn8kuuTS2fTUm4We0aUfzt6jx0t19dM8oGIqZ6D/K3E6ZhxucyfLH/0?=
 =?us-ascii?Q?QeXjrhf2by7rrQ1xbTzzdBNpcSaJVzzlMmx7I4GRhYJtOM/cFc72SKAQ6hF9?=
 =?us-ascii?Q?Ni3MkC4MpeyhxU4iUUGFJ7ON+w2b1a44k3PBLObIu4XmuJvtYhMDlGGwnAFL?=
 =?us-ascii?Q?xalUSIX6yiKXktLkEbzWnzSTpdQw2HlW1jiDzH/ivgNuTSTpOoLSGn7dq+tL?=
 =?us-ascii?Q?n+hY7qSIvIozvacaf2F4kPv+uaxxS6JYnKqiZqauwZ+kREgPhCXmws3fyYzl?=
 =?us-ascii?Q?Mv73KWhnkRO/rtbtGEVrhofuMy0Rr+v1puF31MRr0YnwguJM15RDp27l11qK?=
 =?us-ascii?Q?+g4iNuQdH0HIhvXL7z9fAWZNsv/v8JG4F5HOtPqSXWG6a7i8TwxBOaB74WC2?=
 =?us-ascii?Q?5BeK1dj/QtTheNCiGbEzpxhlTJeKHKYGH481KNLxWPqzS7HPLyn6AtK2GvD9?=
 =?us-ascii?Q?hlk5nGDunFHvyQtnv9nhPtsM3NM1VCF95LjzykfwuFObyuhf7lBEbIyttBeg?=
 =?us-ascii?Q?wv010RKvh6u7SUg6+WlYzH7SmlWi8a/jNOXqvSAZhF8B2nuFDBEJJMNXhg7P?=
 =?us-ascii?Q?DRsqgUU+JyN+iXBqvBfx3iI3XV6qwCc7COIbVvm9vX54KNsMKDmXDvBHYz+9?=
 =?us-ascii?Q?2Sa/LALncr/0q9X0YneRlhQE8SLNYvF74LgGMkYI+97BgvOnu15avA8bApfq?=
 =?us-ascii?Q?VkvLH3QZBR6+Pe6R8Z1APQZWaAyc9KEPpiDyU+TeyIvOqiD3qYsVmp5CQ7+j?=
 =?us-ascii?Q?gfB+Qx8pt8K3apS4WJQeOyv9xcOO5xCg7KBoxRHMbuzhZjVY3bCGTPiB/Hzw?=
 =?us-ascii?Q?Yf2tY3sy9xbvLzgIeK7x9990WyshQpR0ezPPNKG1asuOZueGQbcqjidsqBMa?=
 =?us-ascii?Q?MKntIQVq9jtrB640cHDJNGowd3cRhFK8SL8h8BgTqfYLxVJbLM+q/JYNnn7a?=
 =?us-ascii?Q?vzG4Khf77Xq2ar4cRQSftTgLcPhL23OgN9hbwAk9ONPt6/JCtNqwf7ArcREd?=
 =?us-ascii?Q?/gZ1p71jfZUHyF1SSM8piF7nPHf8Jc7dYbmwmhJJcTeVFpE/vi4z2gVxsMrJ?=
 =?us-ascii?Q?/gGEXTrSAXwHPwUec2H6UOOcz9ra1azF0N8RRIRd?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: 7a17699a-5f8c-48ce-93fc-08dd44cacd6b
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Feb 2025 03:19:57.8565 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: w1Ij0keioGlUuv7Mv2d9Hbejf/PmegXo1Kxk0XooTkdsuu1cS7eyWc8tjQhDMYFo
X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSCP286MB4788
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

I have not had much time for Emacs outside of my regular activities, but
I made the changes you suggested and have been using the package for the
past year. Unless I hear objections, I'll push the package to master
sometime soon.

Best,
Andy

ea288bd05e7d11740f5d580771ed7ca5ad496b15
Author:     Andrew G Cohen <cohen@HIDDEN>
AuthorDate: Thu Mar 21 11:06:36 2024 +0800
Commit:     Andrew G Cohen <cohen@HIDDEN>
CommitDate: Tue Feb 4 11:14:26 2025 +0800

Parent:     c54d8d4cbe0 New functions to suspend and resume gnus demon
Merged:     master
Contained:  feature/igc
Follows:    emacs-29.1.90 (176369)

New sleep-wake-mode to run hooks on sleep state change

* lisp/sleep.el: New global minor mode. When enabled, the hooks
sleep-wake-hook and sleep-sleep-hook are run on the corresponding sleep
state change.

2 files changed, 112 insertions(+)
etc/NEWS      |   6 ++++
lisp/sleep.el | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

modified   etc/NEWS
@@ -1015,6 +1015,12 @@ destination window is chosen using 'display-buffer-alist'.  Example:
 
 * New Modes and Packages in Emacs 31.1
 
+** New global minor mode 'sleep-wake'.
+With this minor mode enabled, the hooks 'sleep-sleep-hook' and
+'sleep-wake-hook' are run when the device running Emacs enters or leaves
+the sleep state. Currently only D-Bus detection of device sleep state
+changes is available.
+
 
 * Incompatible Lisp Changes in Emacs 31.1
 
new file   lisp/sleep.el
@@ -0,0 +1,106 @@
+;;; sleep.el --- run hooks on device sleep and wake  -*- lexical-binding:t -*-
+
+;; Copyright (C) 2025 Free Software Foundation, Inc.
+
+;; Author: Andrew Cohen <>
+;; Maintainer: emacs-devel@HIDDEN
+;; Keywords:
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;;; This global minor mode enables evaluating code when the device
+;;; running Emacs enters or leaves the sleep state.  The hooks
+;;; `sleep-sleep-hook' and `sleep-wake-hook' are run when the system
+;;; detects that it is going to sleep or waking up.  Currently only a
+;;; D-Bus interface to detect sleep state change is implemented.
+
+;;; Code:
+
+(require 'dbus)
+
+(defgroup sleep nil
+  "Run hooks on device entering/leaving the sleep state."
+  :group 'hardware)
+
+(defcustom sleep-sleep-hook nil
+  "Hook to run on device entering sleep."
+  :group 'sleep
+  :type 'hook)
+
+(defcustom sleep-wake-hook nil
+  "Hook to run on device leaving sleep."
+  :group 'sleep
+  :type 'hook)
+
+(defvar sleep-registration-object nil
+  "Object returned from `dbus-register-signal'.
+This is recorded so that the signal may be unregistered.")
+
+
+(defun sleep-dbus-enable ()
+  "Enable D-Bus detection of device sleep/wake state change.
+Run `sleep-sleep-hook' and `sleep-wake-hook' as appropriate."
+  (unless sleep-registration-object
+    (setq sleep-registration-object
+          (dbus-register-signal :system
+                                "org.freedesktop.login1"
+                                "/org/freedesktop/login1"
+                                "org.freedesktop.login1.Manager"
+                                "PrepareForSleep"
+                                #'sleep-handler))))
+
+(defun sleep-dbus-disable ()
+  "Disable D-Bus detection of device sleep/wake state change."
+  (condition-case nil
+      (progn
+        (ignore-error (dbus-error wrong-type-argument)
+          (dbus-unregister-object
+           sleep-registration-object))
+        (setq sleep-registration-object nil))
+    (wrong-type-argument nil)))
+
+(defun sleep-handler (sleep-wake)
+  "Handler to execute sleep and wake functions.
+SLEEP-WAKE is t on sleeping and nil on waking."
+  (ignore-errors
+    (if sleep-wake
+        (run-hooks 'sleep-sleep-hook)
+      (run-hooks 'sleep-wake-hook))))
+
+;;;###autoload
+(define-minor-mode sleep-wake-mode
+  "Toggle sleep/wake detection.
+
+With `sleep-wake-mode' enabled, the hooks `sleep-sleep-hook' and
+`sleep-wake-hook' will be executed when the device enters or leaves the
+sleep state.  This is currently only available on systems that support
+D-Bus detection of sleep state changes."
+  :global t
+  :group 'sleep
+  (cond
+   ((and (featurep 'dbusbind)
+         (member "org.freedesktop.login1"
+                 (dbus-list-activatable-names :system)))
+    (if sleep-wake-mode
+        (sleep-dbus-enable)
+      (sleep-dbus-disable)))
+   (t
+    (message "No sleep/wake detection method found."))))
+
+(provide 'sleep)
+;;; sleep.el ends here


-- 
Andrew Cohen




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.
Added tag(s) patch. Request was from Stefan Kangas <stefankangas@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 10 Jun 2023 10:47:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 10 06:47:28 2023
Received: from localhost ([127.0.0.1]:33336 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q7w7z-0005Xw-Uu
	for submit <at> debbugs.gnu.org; Sat, 10 Jun 2023 06:47:28 -0400
Received: from mout.gmx.net ([212.227.17.22]:46829)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <michael.albinus@HIDDEN>) id 1q7w7w-0005Xd-Ef
 for 63620 <at> debbugs.gnu.org; Sat, 10 Jun 2023 06:47:27 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de;
 s=s31663417; t=1686394032; x=1686998832; i=michael.albinus@HIDDEN;
 bh=58rZXdSF9YrXXbPRgCKavpXrmqBTXpsIVYaiHWeY1As=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date;
 b=TIO7/BPGTyfNnnTegpwXFv6ndVLJov0Xj2lcdFdXp+pgwTlpNV2fk7eyG2EqgjucvGJZ23Q
 yv40rkLGMI1vPBxOZTcexNupqM8pfS0KkWtYUC2i3dWY26yvetd9kKnKD8TinlDCSGnP7NBlu
 hlTtUAUsIOOyBlEV6bJhJ+tmKKNcwHkrGa4L8Q7bn7GfeEZ9pENtIOcq0iuz9knznkfayjPch
 mGk+w+V8BhcS4n3rnAIIb+Z36r373MW3+Aqc3rGA4cawP+3B2rHGfw5PsvVTPDEZ0VykIzbdC
 6j8euDxHqEgimSXuFyzbQmOpujAkVJ6DSn++xtEcib/gyXKGN2IQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.39.13]) by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mi2Jt-1pdXBR0L57-00e0sT; Sat, 10
 Jun 2023 12:47:12 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87y1ky83du.fsf@HIDDEN> (Andrew Cohen's message of "Mon, 05 Jun
 2023 21:06:37 +0800")
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
 <87y1ky83du.fsf@HIDDEN>
Date: Sat, 10 Jun 2023 12:47:10 +0200
Message-ID: <87legr1tn5.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:+7Vm+4Gyy1Z9PmskvjTk1LpsZ8UtHELNn1jmoKlnuVNpmdjWAlW
 sN8fWXRbP/fmna7hzSzNt5GV+9dWyd/nNPq42mhuiRyOqFDwtvKAiF2RI8Q+jtTcKqLnoZl
 pHp4oy+WHeYLJ1Mk/UPHsnFw/cptxikFAuu/KS/h4YBpwdRhJjDcbx9M3OgE+kDz32SuB81
 Wg9J8+EjNZB1EVX0dB6Fw==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:I0NciSjItbM=;IW2RUAF7wLLXOa1ne7Fq3UQZZ47
 LGEDGWctDwbIgF0AtwET9HVIEf2OmaUzjbNdPWH0r3v+I3VkNh5lfSlM/QHkaxV+2hkDWmxGE
 0ogR8eCrcXGQuR3Y/kL9K57SvevjBUbeyVlIM4WY8Ne6eq5hvuzGJKOtmFuS5DGE7iL6R+8yn
 BjeHrWgm4h6QawqLoUEdA1vV1vHtOkaJ128ElgVpJycR31LrtNmeCmZMs3hygT/vRuEOJiQmM
 au4QMVkymtObRv9zIU7mJrka6/LZlYcAVJAkLCXmFnc6TUvu7D8rpoAh05ilOjZXS8jDBT/6b
 fUkeOv/6h1TLbTqeFyWlkzKI+kqnXkxvym5Vvr19398LHTQscAkv/v1MZ/JFOFXwqR+IKXhlx
 YJfFAqiHDwr6SXMYuil+MuAGoPse7d6bnHGbJlh8EpIZnbuxCDdjXzwLTpmZDPDQBxIGwFq7X
 vjBtcdfgfixk55zeloPsUxTL9VDwdz9SnO7s8vDreezs22kt9zzcZ8hvOAG6pSVlWz8TZkZdy
 F3ol/au9fcrkqZE2b8BzlMoZrc+1VrL8AndS1IOdi6YOe9jtGgVrrt6XEASxc5eNUQNka/Vw+
 ziY8kkqqALeOr+uReGH6dXCAoIfn657RQGGtFM+qlSurvv3bqwxFFDpD6oI7YTuga1yFkeDlg
 4whweh1LBM5+IZqBER0EwZP7mKvUNTnoCIu8n6THCfGevRyRWjA3g7M+Dfk/psPqiYOrYxaOC
 rJmwEZy5DhYa/zMZ62r0mQrtfOA98iCAwX4arf5TmqO+mcPDe23QmdepNDihEii6K9tpu3ue1
 NYPMDCu93EE8qOq4wEawTmM/YKI8ENcO5GLlwpRWiN3SGl/q+zZE9fiDuabJvF1s0Sh/aRQ/E
 7IZqzyTJ4tLZFzFezevm5VbVKR3RVul+SYxFa3PatHZbtHizEAvnnNfEIIsmlU0KHhE6xtHxy
 El1QBQ==
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Andrew Cohen <acohen@HIDDEN> writes:

> Dear Michael

Hi Andrew,

sorry for the delayed answer, I've been busy ...

> I've now put everything together and modified the gnus code to use the
> new sleep.el. But I remain unsure if I should remove gnus-dbus.el
> entirely (everything remains the same for the user: setting
> gnus-dbus-close-on-sleep to a non-nil value will enable the feature
> using the global minor mode rather than gnus-dbus).  And is sleep.el
> something worth adding?

It depends whether sleep.el will be added to vanilla Emacs, or as GNU
ELPA package. It's not my decision, but I lobby for the former.

In this case, it could be used in gnus-dbus.el.

Just some few comments on the code

> ;;; sleep.el --- run hooks on sleep and wake  -*- lexical-binding:t -*-

I would be more precise. You don't mean sleeping Emacs or another
application, but you mean sleeping the machine on OS level. Say it so.

> ;;; This global minor mode enables evaluating code when the device
> ;;; running Emacs enters or leaves the sleep state.  Two hooks are
> ;;; used, sleep-sleep-hook and sleep-wake-hook, run when the system
> ;;; detects that it is going to sleep or waking up.  Currently only a
> ;;; dbus interface to detect sleep state change is implemented.

Please quote Lisp objects like `sleep-sleep-hook'. D-Bus is spelled out
in commentaries as D-Bus.

> (defgroup sleep nil
>   "Run hooks on entering/leaving the sleep state."
>   :group 'hardware)
>
> (defcustom sleep-sleep-hook nil
>   "Hook to run on entering sleep."
>   :group 'sleep
>   :type 'hook)
>
> (defcustom sleep-wake-hook nil
>   "Hook to run on leaving sleep."
>   :group 'sleep
>   :type 'hook)

These are the user visible objects. Please be precise what is going to
sleep. The machine or device.

> Run sleep-sleep-hook and sleep-wake-hook as appropriate."

Please quote sleep-sleep-hook.

>   (unless sleep-registration-object
>     (setq sleep-registration-object
>           (dbus-register-signal :system
>                                 "org.freedesktop.login1"
>                                 "/org/freedesktop/login1"
>                                 "org.freedesktop.login1.Manager"
>                                 "PrepareForSleep"
>                                 #'sleep-handler))))

I would also protect against D-Bus errors. Like

(ignore-error dbus-error
  (unless sleep-registration-object
    (setq sleep-registration-object
          (dbus-register-signal
	   :system "org.freedesktop.login1"
           "/org/freedesktop/login1" "org.freedesktop.login1.Manager"
           "PrepareForSleep" #'sleep-handler))))

>   (condition-case nil
>       (progn
>         (dbus-unregister-object
>          sleep-registration-object)
>         (setq sleep-registration-object nil))
>     (wrong-type-argument nil)))

Aka

(ignore-error (dbus-error wrong-type-argument)
  (dbus-unregister-object
   sleep-registration-object)
  (setq sleep-registration-object nil))

> When sleep-wake-mode is enabled, Emacs will execute the hooks

Please quote sleep-wake-mode.

> support dbus detection of sleep state change."

D-Bus is spelled out ...

Furthermore, it would be nice if you add

- documentation in lispref node "(elisp) System Interface". I'm not sure
  whether it is good for a new subnode, or whether it shall be
  documented in "(elisp) System Environment". This documentation should
  also give a practical example for functions in sleep-sleep-hook and
  sleep-wake-hook.

- adding the functionality to etc/NEWS

- if possible, adding tests in test/lisp/sleep-tests.el

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 5 Jun 2023 13:06:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 05 09:06:55 2023
Received: from localhost ([127.0.0.1]:48430 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q69vC-0004hV-NU
	for submit <at> debbugs.gnu.org; Mon, 05 Jun 2023 09:06:55 -0400
Received: from mail-os0jpn01on2107.outbound.protection.outlook.com
 ([40.107.113.107]:5970 helo=JPN01-OS0-obe.outbound.protection.outlook.com)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <acohen@HIDDEN>) id 1q69v9-0004hC-78
 for 63620 <at> debbugs.gnu.org; Mon, 05 Jun 2023 09:06:52 -0400
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U5sTqryY+cgAgzfq/wkJsVh5RpGOnR9YKIikdfr1b146xGfv2lqa+9wGuDdulCfI3nWO4/xSh+Soi/r5Ogc/QaP5yMKj7KTn4RL6M8nV4TSyAUNPkiasklTiUAttcM2uZYpU3aWUPNkFgFrP7FxfbTAnZm96s9CoGtdEL+MXJ0lrnCPmb7pQ+d4yhfl0OCRVgygP8aUoUOLmNOl8w6PjnufD8IA2iWA0kEZqRwmi+vSi2q8eNTe1TbBAl94pUjIQAr6L1hfvKQLGWTkEUh64sSGX8PH8KaG9OinedcQn09GEh5f94QDGhNmcIBaM9NW0btvfxYim8TgmI5L1KWZ1jw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ByPxk3uByxTlt4F0+cZPCPMSKoW9mKYZPS+QUmqCSAw=;
 b=FCefDBiQ6sY5MnVKv1cVNubWLFIcDgORJrqFzy6vKS8UbGXgsEYFMqGnXFmTtV2xekch3eVj7lLiW3b/gMl6j8qXwFs8CdWI7rvKklP51HTeUC+v5UPcsgEZNEFra59Fc7+DJ/yMdhS102/HCfbAOQzBDTyG2Zny4Iy1o8tJ81hMFarP58yDQho9kJWjD/tN4nRMRt3QW/rDX8u5cV7J1+POdLQovUENhUcF/7KBsqlpPJd/b0S/rUKvEV82FHIi+lNhXGdNxLv5l3yc7n26M5ynzFNpoNZP0zkf7e+VUUJWU149nTBy3t/+7Vk2mlmyEcV6l0O+pKEJnk4JgCCmxw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ByPxk3uByxTlt4F0+cZPCPMSKoW9mKYZPS+QUmqCSAw=;
 b=eHt3BDSXxKibgihvXOebMtEFDNiknUD/GpUYUL9zn3F5ZgI7cZcLe/XKyioX5s265lLYmrfaB0SKG35SwxoBSVoKEE51+9Y4aAmYkgCRO5P1pR/Pz+hL/+3CpCcud94VerGWFX49vMhvf4cgToWfOphm5AVFK/f++K1XMVpcDYKRcpz8OtmHeAQxzZ1DUNcyIj3ytle9f+/JLTCbhyyT00eOgHwyB9mU+wkOYSXfTosH57xMR+xJxFW+Fqsqhnl57XgPpxXctKHt/rLmbIzZrFdHMl48EcaRk79SpoAzfUPPK+imsjT5NS40yB7yDse8W8pmXVN69qRP8cBetrHKqw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by TY1P286MB3257.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:2e8::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun
 2023 13:06:43 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::873a:53e:955d:c20f]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::873a:53e:955d:c20f%7]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023
 13:06:43 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87lehinlvg.fsf@HIDDEN> (Michael Albinus's message of "Sun, 21
 May 2023 10:12:51 +0200")
Organization: Hong Kong University of Science and Technology
References: <87fs7qmw00.fsf@HIDDEN> <87lehinlvg.fsf@HIDDEN>
Date: Mon, 05 Jun 2023 21:06:37 +0800
Message-ID: <87y1ky83du.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: multipart/mixed; boundary="=-=-="
X-ClientProxiedBy: KU1PR03CA0029.apcprd03.prod.outlook.com
 (2603:1096:802:19::17) To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|TY1P286MB3257:EE_
X-MS-Office365-Filtering-Correlation-Id: e665078d-0cc3-41ff-06db-08db65c5b57f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: oL0+oPEfyh+4wm2rGxJS63rWV7WTdiiG2zZ1SuiHrtpYDj+F5x/X6SnFGi5XrZq9du6cB0MP444EnESJNEVzOMp3adAdYFgtbzdtoMR3Dc3nyNgVFIXZQKltJCmDnTy8oRDLk9gc/4Gk1LF7HieeMkc0kvE5LMAZk9sIl+TIedeKWncbxywoSW2VloX96eIGUcVqII50TaTKhJCoVKlh8DH5OIMW7MISMMn/3oGBIV4gjuKbuOd79UM9IxD2vonB4aLrMDCEuKXcaKVZnHrvjaCmxOc85Kyy4hUvSPeWc2NJi5ZECT4xH4UOwIzlQBgda1GNcPMpHsrdm9tC9lrbJr6Oh+HBL4JJeBcsM9eqN3zDeENsv2dJDhRfdTER+o68AO+nLG8NSJNaSnliAFo4Z7NmAJfr0atcLSRl+TAKZ2pMmfjesMYOEO90WVdq/KqjHNf1YelelNeLntVMgcGuV+wwAU9nHGgVIs9COrKwDW0CM415HIl8gaF9v7GvKVLQpEGNcoFmlh3UHFn6OPIhgkuAgELkOnVYli+iVzFnZGwMvaCJ91ekgZj53KKZ23Sfd2qfO2WkFFHL1WMQd0Na9JsuzcOhb59VJb0CyqMOaBYsg7CvhXfAfhEYtV6xvHP1
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230028)(4636009)(39860400002)(366004)(396003)(136003)(346002)(376002)(451199021)(478600001)(2906002)(36756003)(6486002)(36916002)(6666004)(2616005)(83380400001)(41320700001)(186003)(6512007)(6506007)(26005)(86362001)(38100700002)(786003)(316002)(8676002)(8936002)(66946007)(6916009)(4326008)(66556008)(66476007)(5660300002)(41300700001)(547064002);
 DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?zeaYcuFLqYQVcwDIiejP3lr+lw4rNl+KlQ2VLSRAzE5PHulGHzrzufHF1cRf?=
 =?us-ascii?Q?IMPTxMg0jxwfOet+0+fULdSl/b1p/zMts5wAZkX1YMcOl/E4a6Ec93RT2jw/?=
 =?us-ascii?Q?anWxkZJB5xcjjNHX3VmdDHBxhiw9fmAR+T3m0x1rCEzSxx1NLXmTOI7MoZCX?=
 =?us-ascii?Q?LxsPCjVsQ0rtLtVsvdhPpADbuy/WFq1tNjKUwKrLLOoO9BtoZuAWCPhavCir?=
 =?us-ascii?Q?fkSmS1rmDYL50tU6bP4eKJ+WMPKedbIMAzoXuUhWcb9iKM0ilXuBNMr6KZ3V?=
 =?us-ascii?Q?cv49KJ7FrNtPgGlve96RvjyePoilIV3tPYfPfkNIGitLRnhGJP6sGzf/deXk?=
 =?us-ascii?Q?VIUg9VC1q2//ZHRh5LUxiBrUwlWPvihAPxd7c5z7/K6s3jjd27+3UiQNe9sa?=
 =?us-ascii?Q?vBOj16T9Qfo/gxOu2q+5hMdao60L2dVa3VHBWWV4IH509494QiVc04tTPH6h?=
 =?us-ascii?Q?qmleOCs8BTSYFdct14/jxKjK/WQCIWwaJ/Sun3mfGRdKcVDm9B1Vk0XpycSc?=
 =?us-ascii?Q?VaY+mLcRTnGTLnZyVWpzoNyMa7yk84IhChoY1Ak0+0pKI2eQ+I3qhN87jLBE?=
 =?us-ascii?Q?spEeBnunikpxv/Hz6Khooq2qgVItFJltRibQH5OEqJFirAyYXZuu7yUhrxb1?=
 =?us-ascii?Q?M2TUVvUJ7d6hg1qWHxHbdSoTYApY6G5mCwAwh7/1Yj9iQomMfrGbCrvJbE9U?=
 =?us-ascii?Q?vicMzNb5foUpsd50QHIGaKtZRZRDBWeY5PdWoX1M7+Glf08XkLwVHrdkwYQB?=
 =?us-ascii?Q?mQShBzdlBPo6FfS9s7qkehnQqEgfgKJo7aYwSWMkScaSfYOkuGCqdllyEqaV?=
 =?us-ascii?Q?ixIwmndM050qS1I5Dz6a7wvTcDg4zbyqxgKJxQ91iNsuWBI1YlUU1fYVXGp+?=
 =?us-ascii?Q?gWnqOEFJi5VWZetrg0PZway6QG23VpMQcXz+LGqLhYSlkukenjWS4EFoMPKo?=
 =?us-ascii?Q?D35Sv7ybha3tpkAW25oWjkWRwgfqy7l6iXQRsyrfpeLH0ejQdLHufterd1T3?=
 =?us-ascii?Q?tcoQGTOJG8oBl3iy6VqFtTZ2UzxnIGYgmwSTDEVRKtR5xkARgKit2k5NoTdg?=
 =?us-ascii?Q?JMtv7EtzVx9CALNtJ+GquwPp3d4vhAs5+9GVbtmKZO7yjZS7QUWgOJUIJo2Z?=
 =?us-ascii?Q?46F75C1EuBpPoLOGYHpPIh4UQE9oBVaE3wc4rFRxtb7IhSUQx/iPhBPQo3Br?=
 =?us-ascii?Q?ivCxGHlYir6u0YbfSVtLge7WNGhUnxNQRqTm9Ec6NndaoW824bM8Aq19kn8i?=
 =?us-ascii?Q?2s8l1jQ95tSWgxPJUOxvV20LT1ZtPf1zSwnOKgUXnGejdwnBM36Pa0wA0GZF?=
 =?us-ascii?Q?optp98fCDlP6uHurCLvXD71cBpLmJpKUVj7P+GpNj1enaJb7RwZYEtXrBMWI?=
 =?us-ascii?Q?lHm6icVV2qhoO6JgShcY0WyM0xjQ1+aoMp2kk4Sn67WXu6kaDGEzKRYlhkcF?=
 =?us-ascii?Q?9XIMXts77kZ0N/V6XoyxGPhV/w4A0ddWXL6NQo0fb+RIzK7MUrrFBIY5iUyt?=
 =?us-ascii?Q?LOSbMg0zwIqR2kk5rL/zSamAHOeM3xfsKLsqEJ/urYOvtSUbpOs4v2OOJ5U0?=
 =?us-ascii?Q?OPPrXN00jab6NrrLiFGaLlacmrpesozNTat4WLUc?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: e665078d-0cc3-41ff-06db-08db65c5b57f
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 13:06:43.3209 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: PmAbTWXcoPuAOKdVUL9d86ptUTrZjSmhmaoZ4w2mSq9AmRmEo7ba+pzFh5RYDMol
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TY1P286MB3257
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

Dear Michael

>>>>> "MA" == Michael Albinus <michael.albinus@HIDDEN> writes:

[...]

    MA> Using D-Bus is just an implementation detail. What you want are
    MA> handlers, which are invoked when your laptop falls asleep or
    MA> awakes.

Yes, of course you are right!

    MA> A general package could implement it using D-Bus if available,
    MA> or using something else if there's no D-Bus. See battery.el,
    MA> which uses the D-Bus service "org.freedesktop.UPower" only if
    MA> possible. Your package might be called sleep.el or alike.

I am not familiar with other methods for detecting sleep/wake, so I just
have dbus at the moment. But if anyone knows of something else
(especially on windows) it can then be added.

[...]

MA> I would make it rather a global minor mode, that you can
MA> enable/disable it easily.

Yes, that is a better idea. 

[...]

    MA> Perhaps, you check also for the service
    MA> "org.freedesktop.login1", like

    MA> (member "org.freedesktop.login1" (dbus-list-activatable-names
    MA> :system))

OK, added.


I've now put everything together and modified the gnus code to use the
new sleep.el. But I remain unsure if I should remove gnus-dbus.el
entirely (everything remains the same for the user: setting
gnus-dbus-close-on-sleep to a non-nil value will enable the feature
using the global minor mode rather than gnus-dbus).  And is sleep.el
something worth adding?


--=-=-=
Content-Type: application/emacs-lisp
Content-Disposition: inline; filename=sleep.el
Content-Transfer-Encoding: quoted-printable
Content-Description: sleep.el

;;; sleep.el --- run hooks on sleep and wake  -*- lexical-binding:t -*-

;; Copyright (C) 2023 Free Software Foundation, Inc.

;; Author: Andrew Cohen <>
;; Maintainer: emacs-devel@HIDDEN
;; Keywords:

;; This file is part of GNU Emacs.

;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.

;;; Commentary:

;;; This global minor mode enables evaluating code when the device
;;; running Emacs enters or leaves the sleep state.  Two hooks are
;;; used, sleep-sleep-hook and sleep-wake-hook, run when the system
;;; detects that it is going to sleep or waking up.  Currently only a
;;; dbus interface to detect sleep state change is implemented.

;;; Code:

(require 'dbus)

(defgroup sleep nil
  "Run hooks on entering/leaving the sleep state."
  :group 'hardware)

(defcustom sleep-sleep-hook nil
  "Hook to run on entering sleep."
  :group 'sleep
  :type 'hook)

(defcustom sleep-wake-hook nil
  "Hook to run on leaving sleep."
  :group 'sleep
  :type 'hook)

(defvar sleep-registration-object nil
  "Object returned from `dbus-register-signal'.
This is used to unregister the signal.")


(defun sleep-wake-enable ()
  "Enable detection of sleep/wake state change.
Run sleep-sleep-hook and sleep-wake-hook as appropriate."
  (unless sleep-registration-object
    (setq sleep-registration-object
          (dbus-register-signal :system
                                "org.freedesktop.login1"
                                "/org/freedesktop/login1"
                                "org.freedesktop.login1.Manager"
                                "PrepareForSleep"
                                #'sleep-handler))))

(defun sleep-wake-disable ()
  "Disable detection of sleep/wake state change."
  (condition-case nil
      (progn
        (dbus-unregister-object
         sleep-registration-object)
        (setq sleep-registration-object nil))
    (wrong-type-argument nil)))

(defun sleep-handler (sleep-wake)
  "Handler to execute sleep and wake functions.
SLEEP-WAKE is t on sleeping and nil on waking."
  (ignore-errors
    (if sleep-wake
        (run-hooks 'sleep-sleep-hook)
      (run-hooks 'sleep-wake-hook))))

;;;###autoload
(define-minor-mode sleep-wake-mode
  "Toggle sleep/wake detection.

When sleep-wake-mode is enabled, Emacs will execute the hooks
`sleep-sleep-hook' and `sleep-wake-hook' when entering or leaving
the sleep state.  This is currently only available on systems that
support dbus detection of sleep state change."
  :global t
  :group 'sleep
  (when (and (featurep 'dbusbind)
             (member "org.freedesktop.login1"
                     (dbus-list-activatable-names :system)))
    (if sleep-wake-mode
        (sleep-wake-enable)
      (sleep-wake-disable))))

(provide 'sleep)
;;; sleep.el ends here

--=-=-=
Content-Type: text/plain



-- 
Andrew Cohen

--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at 63620 <at> debbugs.gnu.org:


Received: (at 63620) by debbugs.gnu.org; 21 May 2023 08:13:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 21 04:13:07 2023
Received: from localhost ([127.0.0.1]:59979 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q0eBf-000257-Fr
	for submit <at> debbugs.gnu.org; Sun, 21 May 2023 04:13:07 -0400
Received: from mout.gmx.net ([212.227.17.21]:45797)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <michael.albinus@HIDDEN>) id 1q0eBc-00024b-De
 for 63620 <at> debbugs.gnu.org; Sun, 21 May 2023 04:13:06 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417;
 t=1684656773; i=michael.albinus@HIDDEN;
 bh=sBoByeaeOdJETzWswEUKQGHZzNKXH4sKwqNUk0PBHFY=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date;
 b=DABWri0CSl3H6MSOpOKlX6grpBu8DaE0eWyw3fRQ7ekOLDOy52vafZaR5YEXM6KDt
 57s4nz4fT5tx8pf3cXix2OHFZV+cM60tFyIpPDsEmv4eNwIcCTGUaIEBlnkooBqV4Y
 nMkKxKTy6eysr84/SkInoD8dVT8wqZCB4KFTLbEf7PQZ4gZj/n1q8C+FUxoRcw+6jI
 +0fcXBTJXqVEYdlwSux1QeAGNtLXernTMsineZHxlIjuD9b5Z9kI3tIEU/vmNNkFsu
 BWdS/4+kn5KwW/JEL0iRpFvLzu6UAi6/AP61WsuG8ukght6VGUn9h/hKeMekuYKni6
 v+V8++trUxccQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.39.13]) by mail.gmx.net (mrgmx104
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MdNY8-1qZhsz1wAq-00ZLFO; Sun, 21
 May 2023 10:12:53 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
To: Andrew Cohen <acohen@HIDDEN>
Subject: Re: bug#63620: 30.0.50; [Feature Request] run hooks on sleep/wake
In-Reply-To: <87fs7qmw00.fsf@HIDDEN> (Andrew Cohen's message of "Sun, 21 May
 2023 07:19:27 +0800")
References: <87fs7qmw00.fsf@HIDDEN>
Date: Sun, 21 May 2023 10:12:51 +0200
Message-ID: <87lehinlvg.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:Buy4P8/Uj6Nx/N1MGDFXNj+SF1rXqfG8PmfqSWqhpl5D23BQDr+
 sRj4p7lPwaEfS9fz9D1OZ70C212XxuE+907Hwz1VdKLdiVlVcExEWGwd4YpaG7OAienSwCt
 NtWnEBZw1h2UZLCpxS2eE280gY9XIBnEltYI7YMzrEhlFvzzkhx6t6A+XWmg2KRv38zediZ
 yRCUfWrMClzEA/XJ5EuuA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:ISS3QARFEqk=;Vroz3XJhCes5EROHDLuo/twjZZ1
 htoqCf4dLb3x8Vsso0MDuUvNetUbwoH1Z4gUr3WTYOTQpw/Br9+1gsgNvaUZc4PhJCCe2OUmv
 9zd+g9dLCSe3ceunoIyLe1uUZKRO+qrfD0B90wYyipMh8K3TOb5r/Xm9KLz/08hWwX+g1zU/2
 ps8sKVU5gQxTxZE/nNLHjf+1KoQ4uYLkgAYtWsxMDMZnd+vs4uFUvxPA8JRh27OkAvBTG+DBf
 8R+uDGgiQfkNDoBbGGp6baSpswBJ/oumaiJeS6asya5MRxpIIpWCI2SiYVh9t8pTOhH+mhSy/
 Vr8k5Dys1fkmCfjpcSZDlx8IOPEis63YSnB36S6RLG6jKLdV3R1kEvVV8DoA3D2QkSXpCKCCm
 cHuNTVR6daj91UzjfnHm8dOIOn/kZdAG8P8oL4fdgScYvdUQMZ+P9Zv+z6OLK4lcA2LyZRHUR
 7w2N3olcCovIHb2Ka4JjRugf5FlXIkbTt7sWezH2e17UqOVQyOJeMyEs3s7jnOCWo7pvBNxAq
 ajHNJhPmQEiSrHJ+4Rx7g07/sTA6o+Vq6dqSSwUrN27Unvyr6ikhJj22nwZFw+lMD800x9iIv
 BRGn56rBAoq64vzCi75Ei8cShWbzCypP1LsWeu/SfKw2U+I+oIV/X29QhUdTwJ4dSddmEYEwH
 Zq69Em2pFktQCMZdKVdlDSYh+GyStxDQ2zq12XSUzGfa6O1PNknoBn20uaBa7drZ56b2Ypfme
 pG43UhtqP3OJZfk8ai+nWIjMSKP0d7Bae81JytYgMdWvth481P52t6FEMTzndF90CmpiFrEDe
 roJHkBqmh6EBi0eHMrVSb0x28in3jU1XKWNvFxKY31EcyV1MbXpgDbrEQWlezIwXd1YZ/ptYu
 l/oudAN++Ngq8ItwHYny9m/RxUz/dHOQsMgh3n7hZtNHPebTXTcYtgxeu9fl6AFIue2+ePgBA
 BZiuhQ==
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 63620
Cc: 63620 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Andrew Cohen <acohen@HIDDEN> writes:

Hi Andrew,

> 2. Add a small package dbus-sleep.el. I would also remove gnus-dbus.el
> but leave the variable 'gnus-dbus-close-on-sleep and use it to control
> the installation of appropriate gnus functions to the new hooks.
>
> 3. Add the new code to the existing dbus.el. I would also remove
> gnus-dbus.el but leave the variable 'gnus-dbus-close-on-sleep and use it
> to control the installation of appropriate functions to the new hooks.
>
> I mostly favor adding it to dbus.el. The argument against: dbus.el is
> focused on providing language bindings for the D-Bus API rather than a
> user-feature. The removal of gnus-dbus.el shouldn't cause any problem
> since I would maintain the same functionality enabled by the same
> variable, so no user-visible change.

Using D-Bus is just an implementation detail. What you want are
handlers, which are invoked when your laptop falls asleep or awakes.

A general package could implement it using D-Bus if available, or using
something else if there's no D-Bus. See battery.el, which uses the D-Bus
service "org.freedesktop.UPower" only if possible. Your package might be
called sleep.el or alike.

Your code uses the D-Bus service "org.freedesktop.login1", which isn't
part of the basic D-Bus spec. So it isn't suited for dbus.el anyway.

> ;;;###autoload
> (defun dbus-sleep-enable ()
>   "Use `dbus-register-signal' to close servers on sleep."
>   (interactive)

I would make it rather a global minor mode, that you can enable/disable
it easily.

>   ;; Don't enable if it's already enabled.
>   (when (and (featurep 'dbusbind) (not dbus-sleep-registration-object))

Perhaps, you check also for the service "org.freedesktop.login1", like

--8<---------------cut here---------------start------------->8---
(member "org.freedesktop.login1" (dbus-list-activatable-names :system))
--8<---------------cut here---------------end--------------->8---

This check might return nil for several reasons, like the system bus is
not running, or you don't have permissions to speak to the system bus,
or the service simply doesn't exist.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 20 May 2023 23:24:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 20 19:24:46 2023
Received: from localhost ([127.0.0.1]:59603 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1q0VwL-0003KA-Hn
	for submit <at> debbugs.gnu.org; Sat, 20 May 2023 19:24:45 -0400
Received: from lists.gnu.org ([209.51.188.17]:57678)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <acohen@HIDDEN>) id 1q0VwJ-0003K3-Ly
 for submit <at> debbugs.gnu.org; Sat, 20 May 2023 19:24:44 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <acohen@HIDDEN>) id 1q0VwJ-00017Z-Fb
 for bug-gnu-emacs@HIDDEN; Sat, 20 May 2023 19:24:43 -0400
Received: from mail-tycjpn01on2072a.outbound.protection.outlook.com
 ([2a01:111:f403:7010::72a]
 helo=JPN01-TYC-obe.outbound.protection.outlook.com)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <acohen@HIDDEN>) id 1q0VwG-00049d-TQ
 for bug-gnu-emacs@HIDDEN; Sat, 20 May 2023 19:24:43 -0400
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HX38iqiWiqFuKIloy5/IXWANRw7zbtlsUqqLCMtthXbI/uM/y+yPOsF5mglOQNzDDMPkYENV+6gePVflFK5mV4Ybh1prb2akOPtaSjX9veZgbKTGAsqGFCe5EUmI1Enl4ABlrx9F8Pavt8DUEIMa+VafJ3SPaUwF9wOCKBgcMR1MnlFWazcDH95CzkzH3hV3HbwGzR5y7m2Rq5SaRF4gZxqrJlVPu6TFO38XTbvqcezyYqnIkwhiUZFLSokClKCQH9IFFDsUKNQckLHo2m4tepICZotUHRj4c87mp+nuYqFH76lzVzT2rcuqJUBF4dT1/W1giTuqX8BT0HXwVpQweA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=R/vMerENyhLB6MqkxKTPylMxzGx5V+YRFPXpXZosGoA=;
 b=adK6UwboLUaGVoeM8mYLft3RV0CiUZmHHHs697qqQg/UXyLH2VzBQ2X06nX23aU+UiDz3OeHCdd4UWjWkkVAVBFWCLElCcuMg4tQIaovkzKb6XPgX+BWZcdZish3DNkgkJE6kX5vfB4Yb5Tb9UY1iqapHVQy4qz46Hsci8o5yLkvxN8HOiSBEb+ZZ+OE7L+DG7SZVbBzf7/PuakjuxB80P4tHB3bt+IPLkek9NTvdrgBKcdokTDaOgbpjvLJKf/i5puuavxyFL7cpXPAl/uCBIpLhB71mvOkCLa9qegkJtmQkP+NHXiMK1GWWWQynAPx7sgig05XHRI1taYlw/AvCg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=ust.hk; dmarc=pass action=none header.from=ust.hk; dkim=pass
 header.d=ust.hk; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ust.hk; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=R/vMerENyhLB6MqkxKTPylMxzGx5V+YRFPXpXZosGoA=;
 b=bhYFJqm0V/5OOpDLJMAHbw+/4Z9+qsKRUI6hMbN34qsxSbnrUePlzsBMOxqRC1WwADcwiT9qjbq1Ulo1D1xSbNMvrtWuWSDcnjXOoiR+KCD0YEZMlMyrqnXBQtkNitpnpJqTEfBkeC9b0orA0iIlU7y1KNxfhpKDLnThI0WuA5NgMp3MeyZbyytflW7M56eeHz78yoKLe+fh7GwQXFdtIcnsJGmYMj8GNqQc6LRWfV8uP9zzN4ri4mHIRg4YUcIRr13nPk4Hcyw7CdCW/HIeVQMal/X0KGN9Z8CgQ8hv0i038EPPtyFbcKiG7JhOS5gGqbpICt49Sbtd7ewAaIWGEw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=ust.hk;
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:1bf::11)
 by TYWP286MB1959.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:164::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6411.27; Sat, 20 May
 2023 23:19:32 +0000
Received: from OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::c1ac:edec:7164:36ec]) by OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 ([fe80::c1ac:edec:7164:36ec%7]) with mapi id 15.20.6411.025; Sat, 20 May 2023
 23:19:31 +0000
From: Andrew Cohen <acohen@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 30.0.50; [Feature Request] run hooks on sleep/wake
Date: Sun, 21 May 2023 07:19:27 +0800
Message-ID: <87fs7qmw00.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
Content-Type: text/plain
X-ClientProxiedBy: SGAP274CA0022.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b6::34)
 To OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:604:1bf::11)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: OS3P286MB1877:EE_|TYWP286MB1959:EE_
X-MS-Office365-Filtering-Correlation-Id: 787eba8d-a9b5-47ad-ac5c-08db5988aa95
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 8cPUqa/znd24Sk+T/VAVRciHMy3tNClwNkgRdgt+o6HB8102+ldQWCfPlkZWo8/7AEmib7Tfq5hwDqOGETwU/VMGApPi4xz03/6Tkd+PMANuwd+Yq269v8FGQpgBxLW4iaoUl7Si+kgyszMbyvj/DiXZpcy8sOKqB3zIzkUr/h5alPtokcUu2LFaV+7oLu36H37+dCQEieBrNb/BXAjFdI4jVSMxu3W0yurajkbAEr3Q39FE5mU5DW7qOTfsBpMG+yyYHg2j8wzPyvP84jlL2SNA5ak71xa2k9zLEf/sfIemG4a2DwJE2yfxdbhybsslOOoQXIfWVB+mqvQjTbp2wZIVK1DOSm4CdueXPCfnrSm7yZhWSZaN1HkQ0/xVeMwEr15JhPWDeQiwHFyzSVgrnlUikiixhf8vukm09Pl8FebNy56uaHTBFQ+sw7PEAjk7WaIBkcB0sJJNmoBJkix54J3B+jUJADSijE6b3nxeD7aoFAC6/qYCtHi23bWULLDcYCJMdbVLuxabK9yoEOOml69AAWTCVLqPNLkFStkFy97gZFqkJ84VjFpYpzrreaEW
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230028)(4636009)(396003)(376002)(366004)(346002)(39860400002)(136003)(451199021)(2906002)(41320700001)(38100700002)(2616005)(6506007)(83380400001)(26005)(6512007)(186003)(8676002)(8936002)(36756003)(86362001)(316002)(786003)(41300700001)(5660300002)(6916009)(6486002)(6666004)(66476007)(66556008)(66946007)(478600001);
 DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?9rq8D0krlsHKM1nDvg3Vuw0QJS5/XvyTFjK55TIcVBvl84zpT5otFlSV/Zfh?=
 =?us-ascii?Q?hq/g9+GkL6Mh37eGS8b/PCEc+Mo8G8L34RsxOaiZACKJHskTFhy9ZSCTmH3H?=
 =?us-ascii?Q?rGoSNQFG+/IbexkgGmv3YvM98LvYVyhhoSuxKiWFi2WaLNKufFyFHkVvvRl0?=
 =?us-ascii?Q?J3fcKVb78VRAcHc2zRXErQxON5tD+LGkr41RIfqP0gyx8LkwFhgX4VNJh4tG?=
 =?us-ascii?Q?WoYYn/ftheSHkx/1qj4tGTC10jnFmve6UgEVxs9K10mElkb/MMNlcz/wCs5c?=
 =?us-ascii?Q?qlZgmCb+6oICtzEc8FcUU/PzBwDJ7cJLqbVx9tCQsWER6sTqAAIC/sGAIGK9?=
 =?us-ascii?Q?5wRPQc6AxgeduRZKZOp7X8y9lDAF10fY54Hc+juFQ9+RR8uhSdYMsR5s7UmR?=
 =?us-ascii?Q?hXnTCH7m6mzKNPeHSqpDZvd2eP7TZVSd9oV6roBg+psGECv1hQ3/pwOvMxAk?=
 =?us-ascii?Q?tfZxBS0TYAafHp/QP4DssivcAKJjP4FL/aluB9kNlsaJ+jpGZu0gE6dAcA8X?=
 =?us-ascii?Q?V9J0L95bUUFBP23TfBTgF8fDgxoI+BsGqWeiyJ6VVpzMfZ/cukE/jTKrK5uV?=
 =?us-ascii?Q?JKX0Kw27cXDlVfw9qqvaZj0UpOkBicZc2kN9O4jn9paq04ClmclSgsE2ZHWG?=
 =?us-ascii?Q?5Ta74wxuZRjfijUEjZOg9wrRYr04tgz+7KswWHOmRnKXjwFRrNcm1h5j28Un?=
 =?us-ascii?Q?Y0iRxENrNdLHQHTW2RehsKnU4/CunKo1JvjlJD8Xr2ms9O1dQ4qbSVfj7KgH?=
 =?us-ascii?Q?xEQlYJDL5V1Eq+lIYmFzM1B6DUkGgvA49q5Xa5UV3XYNvNhXLqvEj6NJ7Qjk?=
 =?us-ascii?Q?ALPWvTKzBNTwmUbw+c573qOcn2gEgFGufHc7krQoFF5eb7g7Tqjt0/deNOoV?=
 =?us-ascii?Q?ugxtcAcO0w0ih1HusRKTOk6MDXLiV0C5s3+ou/wK9/dypd8fYTj9Xq8tu181?=
 =?us-ascii?Q?FjDBq9WAHPONnv1zhf6aioAzgMmKfooaglFk8lBa5pA+16ut3EuSZ+kGlp5O?=
 =?us-ascii?Q?yVfotatlWTVWV+WQeaCoyZQ5TzuE+jkMorSwdlh5+ycu45z6dsgstCyV/NLV?=
 =?us-ascii?Q?urvdMzacArz77gkc9hmU+rJbCRWwYS4xOXAzUIFGIofOct3PbflQ4VDUGprZ?=
 =?us-ascii?Q?PAvilictnf3XdxG9fcrnP9VNxdATq5g/KjYjUMtNL4Ixhygiki/crbQRJV6E?=
 =?us-ascii?Q?om6ESUbNFmZRQ0BjcY8Ikg5RFjyTIaeGkIi+q0IhH9Jp7dnP/KkVEhZRP73o?=
 =?us-ascii?Q?HaWDnvTInSDcd8Guz1q3+ftjMmJuBuSQzjEulu6FyG78EzUF2F5qDrtYR3/M?=
 =?us-ascii?Q?H707MUseTUOq0uVIuRRGdUPswtPMB61+SfxUOqWFTNIrugADl2QlBCe0zvWR?=
 =?us-ascii?Q?uTeOY11MJeoSDdXtx0ZfUIkTjy5PQmpYjodhOf3SU1MT9oeq/NR5cOpsrdT7?=
 =?us-ascii?Q?j5ZV07HKS1aAvFM02AV+E9Gq1sDoD9OXpYlbsTACEHgRAVetvKSx8LWP/DuQ?=
 =?us-ascii?Q?x3N6BeKQg0dOaUsEvYjbe2UlANbrwmhoQggPrKxT4mFuvlHeA5WRQK/nqEkD?=
 =?us-ascii?Q?Ns2KG3bXbBZNRQqeaqZPoN7aVIUUOGVk0qevInju?=
X-OriginatorOrg: ust.hk
X-MS-Exchange-CrossTenant-Network-Message-Id: 787eba8d-a9b5-47ad-ac5c-08db5988aa95
X-MS-Exchange-CrossTenant-AuthSource: OS3P286MB1877.JPNP286.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 May 2023 23:19:31.6972 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: c917f3e2-9322-4926-9bb3-daca730413ca
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 41aUxSe+hIcG0QJpbO9vunWkZqHRm366anUzks4wbZgG8z2p2F5IZrbBZCy1Sy7n
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYWP286MB1959
Received-SPF: pass client-ip=2a01:111:f403:7010::72a;
 envelope-from=acohen@HIDDEN;
 helo=JPN01-TYC-obe.outbound.protection.outlook.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001,
 SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

I am playing around with various network things (mostly vpn related) and
need Emacs to take certain actions when my laptop sleeps and wakes. This
is easy to do using the existing dbus support (the relevant code is
below, which runs hooks on sleeping and waking) The question is whether
this is useful enough to add to Emacs, and if so the best place to put
it.

Not too long ago, Eric Abrahamsen added gnus-dbus.el which is similar,
although for a single purpose: to close gnus server network connections
on sleep. This has a single entry point for the user: set
'gnus-dbus-close-on-sleep to t to enable the feature. 


Options:
1. Do nothing (this isn't useful enough to change anything, and I can just
keep using my own code).

2. Add a small package dbus-sleep.el. I would also remove gnus-dbus.el
but leave the variable 'gnus-dbus-close-on-sleep and use it to control
the installation of appropriate gnus functions to the new hooks.

3. 2. Add the new code to the existing dbus.el. I would also remove
gnus-dbus.el but leave the variable 'gnus-dbus-close-on-sleep and use it
to control the installation of appropriate functions to the new hooks.

I mostly favor adding it to dbus.el. The argument against: dbus.el is
focused on providing language bindings for the D-Bus API rather than a
user-feature. The removal of gnus-dbus.el shouldn't cause any problem
since I would maintain the same functionality enabled by the same
variable, so no user-visible change. 

Advice?


;;; Code:

(require 'dbus)

(defcustom dbus-sleep-sleep-hook nil
  "Hook to run on sleep."
  :group 'dbus-sleep
  :type 'hook)

(defcustom dbus-sleep-wake-hook nil
  "Hook to run on wake."
  :group 'dbus-sleep
  :type 'hook)

(defvar dbus-sleep-registration-object nil
  "Object returned from `dbus-register-signal'.
This is used to unregister the signal.")

;;;###autoload
(defun dbus-sleep-enable ()
  "Use `dbus-register-signal' to close servers on sleep."
  (interactive)
  ;; Don't enable if it's already enabled.
  (when (and (featurep 'dbusbind) (not dbus-sleep-registration-object))
    (setq dbus-sleep-registration-object
          (dbus-register-signal :system
                                "org.freedesktop.login1"
                                "/org/freedesktop/login1"
                                "org.freedesktop.login1.Manager"
                                "PrepareForSleep"
                                #'dbus-sleep-handler))))

(defun dbus-sleep-disable ()
  "Unregister sleep signal."
  (interactive)
  (condition-case nil
      (dbus-unregister-object
       dbus-sleep-registration-object)
    (setq dbus-sleep-registration-object nil)
    (wrong-type-argument nil)))

(defun dbus-sleep-handler (sleep-wake)
  "Handler to execute sleep and wake functions.
SLEEP-WAKE is t on sleeping and nil on waking."
  (ignore-errors
    (if sleep-wake
        (run-hooks 'dbus-sleep-sleep-hook)
      (run-hooks 'dbus-sleep-wake-hook))))

-- 
Andrew Cohen




Acknowledgement sent to Andrew Cohen <acohen@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#63620; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Fri, 7 Feb 2025 12:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.