* bug#66141: 29.1; Window size properties not set immediately for window in new frame @ 2023-09-21 16:16 Mattias Nyrell 2023-09-21 16:39 ` Eli Zaretskii 0 siblings, 1 reply; 8+ messages in thread From: Mattias Nyrell @ 2023-09-21 16:16 UTC (permalink / raw) To: 66141 Starting from emacs -Q, enter the following in *scratch*: (let ((f (make-frame '((fullscreen . maximized))))) (select-frame-set-input-focus f) (message "window-body-width=%s" (window-body-width)) (sleep-for 1) (message "window-body-width=%s" (window-body-width)) ) Execute with C-x C-e Result: - A new frame is created. - The message "window-body-width=80" is printed - The message "window-body-width=190" is printed (exact value depending on screen size of course) Expected result: The first printed message should be the same as the second printed message. In GNU Emacs 29.1 (build 2, x86_64-w64-mingw32) of 2023-07-31 built on AVALON Windowing system distributor 'Microsoft Corp.', version 10.0.22621 System Description: Microsoft Windows 10 Enterprise (v10.0.2009.22621.2134) Configured using: 'configure --with-modules --without-dbus --with-native-compilation=aot --without-compress-install --with-tree-sitter CFLAGS=-O2' Configured features: ACL GIF GMP GNUTLS HARFBUZZ JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP NOTIFY W32NOTIFY PDUMPER PNG RSVG SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XPM ZLIB (NATIVE_COMP present but libgccjit not available) Important settings: value of $LANG: SVE locale-coding-system: cp1252 Major mode: Lisp Interaction Minor modes in effect: tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t line-number-mode: t indent-tabs-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message mailcap yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils cl-extra shortdoc text-property-search help-fns radix-tree help-mode time-date subr-x cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel dos-w32 ls-lisp disp-table term/w32-win w32-win w32-vars term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads w32notify w32 lcms2 multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 60177 5492) (symbols 48 5492 0) (strings 32 17131 1407) (string-bytes 1 468887) (vectors 16 11742) (vector-slots 8 276217 11742) (floats 8 81 21) (intervals 56 303 0) (buffers 984 12)) ^ permalink raw reply [flat|nested] 8+ messages in thread
* bug#66141: 29.1; Window size properties not set immediately for window in new frame 2023-09-21 16:16 bug#66141: 29.1; Window size properties not set immediately for window in new frame Mattias Nyrell @ 2023-09-21 16:39 ` Eli Zaretskii [not found] ` <dd7c9d58-3adf-7669-a071-5db6f619e268@nyrell.se> 0 siblings, 1 reply; 8+ messages in thread From: Eli Zaretskii @ 2023-09-21 16:39 UTC (permalink / raw) To: Mattias Nyrell; +Cc: 66141 > Date: Thu, 21 Sep 2023 18:16:01 +0200 > From: Mattias Nyrell <mattias@nyrell.se> > > Starting from emacs -Q, enter the following in *scratch*: > > (let ((f (make-frame '((fullscreen . maximized))))) > (select-frame-set-input-focus f) > (message "window-body-width=%s" (window-body-width)) > (sleep-for 1) > (message "window-body-width=%s" (window-body-width)) ) > > Execute with C-x C-e > > Result: > - A new frame is created. > - The message "window-body-width=80" is printed > - The message "window-body-width=190" is printed (exact value depending > on screen size of course) > > Expected result: > The first printed message should be the same as the second printed message. Isn't it because the actual resizing of the frame is done by the window-system, and we can only ask it to do so? IOW, I think your expectation is incorrect, as it assumes that frame move/resize operations are executed immediately. ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <dd7c9d58-3adf-7669-a071-5db6f619e268@nyrell.se>]
* bug#66141: 29.1; Window size properties not set immediately for window in new frame [not found] ` <dd7c9d58-3adf-7669-a071-5db6f619e268@nyrell.se> @ 2023-09-21 18:51 ` Eli Zaretskii 2023-09-21 19:04 ` Mattias Nyrell 0 siblings, 1 reply; 8+ messages in thread From: Eli Zaretskii @ 2023-09-21 18:51 UTC (permalink / raw) To: Mattias Nyrell; +Cc: 66141 [Please use Reply All to reply, to keep the bug tracer CC'ed.] > Date: Thu, 21 Sep 2023 20:48:19 +0200 > From: Mattias Nyrell <mattias@nyrell.se> > > > > On 2023-09-21 18:39, Eli Zaretskii wrote: > >> Date: Thu, 21 Sep 2023 18:16:01 +0200 > >> From: Mattias Nyrell <mattias@nyrell.se> > >> > >> Starting from emacs -Q, enter the following in *scratch*: > >> > >> (let ((f (make-frame '((fullscreen . maximized))))) > >> (select-frame-set-input-focus f) > >> (message "window-body-width=%s" (window-body-width)) > >> (sleep-for 1) > >> (message "window-body-width=%s" (window-body-width)) ) > >> > >> Execute with C-x C-e > >> > >> Result: > >> - A new frame is created. > >> - The message "window-body-width=80" is printed > >> - The message "window-body-width=190" is printed (exact value depending > >> on screen size of course) > >> > >> Expected result: > >> The first printed message should be the same as the second printed message. > > Isn't it because the actual resizing of the frame is done by the > > window-system, and we can only ask it to do so? > > > > IOW, I think your expectation is incorrect, as it assumes that frame > > move/resize operations are executed immediately. > I have no idea, but your explanation sounds very reasonable and it is > probably right! > > Is there a way to get notified when the resize operation has finished? > Or is sleeping for a short while a reasonable solution? Yes, calling sleep-for is one way. I would also suggest to try (sit-for 0) If that works, it is faster. ^ permalink raw reply [flat|nested] 8+ messages in thread
* bug#66141: 29.1; Window size properties not set immediately for window in new frame 2023-09-21 18:51 ` Eli Zaretskii @ 2023-09-21 19:04 ` Mattias Nyrell 2023-09-22 6:47 ` Mattias Nyrell 0 siblings, 1 reply; 8+ messages in thread From: Mattias Nyrell @ 2023-09-21 19:04 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 66141 On 2023-09-21 20:51, Eli Zaretskii wrote: > [Please use Reply All to reply, to keep the bug tracer CC'ed.] > >> Date: Thu, 21 Sep 2023 20:48:19 +0200 >> From: Mattias Nyrell <mattias@nyrell.se> >> >> >> >> On 2023-09-21 18:39, Eli Zaretskii wrote: >>>> Date: Thu, 21 Sep 2023 18:16:01 +0200 >>>> From: Mattias Nyrell <mattias@nyrell.se> >>>> >>>> Starting from emacs -Q, enter the following in *scratch*: >>>> >>>> (let ((f (make-frame '((fullscreen . maximized))))) >>>> (select-frame-set-input-focus f) >>>> (message "window-body-width=%s" (window-body-width)) >>>> (sleep-for 1) >>>> (message "window-body-width=%s" (window-body-width)) ) >>>> >>>> Execute with C-x C-e >>>> >>>> Result: >>>> - A new frame is created. >>>> - The message "window-body-width=80" is printed >>>> - The message "window-body-width=190" is printed (exact value depending >>>> on screen size of course) >>>> >>>> Expected result: >>>> The first printed message should be the same as the second printed message. >>> Isn't it because the actual resizing of the frame is done by the >>> window-system, and we can only ask it to do so? >>> >>> IOW, I think your expectation is incorrect, as it assumes that frame >>> move/resize operations are executed immediately. >> I have no idea, but your explanation sounds very reasonable and it is >> probably right! >> >> Is there a way to get notified when the resize operation has finished? >> Or is sleeping for a short while a reasonable solution? > Yes, calling sleep-for is one way. I would also suggest to try > > (sit-for 0) > > If that works, it is faster. Ok, thank you! /Mattias ^ permalink raw reply [flat|nested] 8+ messages in thread
* bug#66141: 29.1; Window size properties not set immediately for window in new frame 2023-09-21 19:04 ` Mattias Nyrell @ 2023-09-22 6:47 ` Mattias Nyrell 2023-09-22 6:58 ` Eli Zaretskii 0 siblings, 1 reply; 8+ messages in thread From: Mattias Nyrell @ 2023-09-22 6:47 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 66141 On 2023-09-21 21:04, Mattias Nyrell wrote: > > > On 2023-09-21 20:51, Eli Zaretskii wrote: >> [Please use Reply All to reply, to keep the bug tracer CC'ed.] >> >>> Date: Thu, 21 Sep 2023 20:48:19 +0200 >>> From: Mattias Nyrell <mattias@nyrell.se> >>> >>> >>> >>> On 2023-09-21 18:39, Eli Zaretskii wrote: >>>>> Date: Thu, 21 Sep 2023 18:16:01 +0200 >>>>> From: Mattias Nyrell <mattias@nyrell.se> >>>>> >>>>> Starting from emacs -Q, enter the following in *scratch*: >>>>> >>>>> (let ((f (make-frame '((fullscreen . maximized))))) >>>>> (select-frame-set-input-focus f) >>>>> (message "window-body-width=%s" (window-body-width)) >>>>> (sleep-for 1) >>>>> (message "window-body-width=%s" (window-body-width)) ) >>>>> >>>>> Execute with C-x C-e >>>>> >>>>> Result: >>>>> - A new frame is created. >>>>> - The message "window-body-width=80" is printed >>>>> - The message "window-body-width=190" is printed (exact value >>>>> depending >>>>> on screen size of course) >>>>> >>>>> Expected result: >>>>> The first printed message should be the same as the second printed >>>>> message. >>>> Isn't it because the actual resizing of the frame is done by the >>>> window-system, and we can only ask it to do so? >>>> >>>> IOW, I think your expectation is incorrect, as it assumes that frame >>>> move/resize operations are executed immediately. >>> I have no idea, but your explanation sounds very reasonable and it is >>> probably right! >>> >>> Is there a way to get notified when the resize operation has finished? >>> Or is sleeping for a short while a reasonable solution? >> Yes, calling sleep-for is one way. I would also suggest to try >> >> (sit-for 0) >> >> If that works, it is faster. > Ok, thank you! > > /Mattias I tried (sit-for 0) and even (sit-for 5), but none of those worked. (sleep-for 0.1) or (sleep-for 0) worked for me. /Mattias ^ permalink raw reply [flat|nested] 8+ messages in thread
* bug#66141: 29.1; Window size properties not set immediately for window in new frame 2023-09-22 6:47 ` Mattias Nyrell @ 2023-09-22 6:58 ` Eli Zaretskii 2023-09-22 7:23 ` Mattias Nyrell 0 siblings, 1 reply; 8+ messages in thread From: Eli Zaretskii @ 2023-09-22 6:58 UTC (permalink / raw) To: Mattias Nyrell; +Cc: 66141 > Date: Fri, 22 Sep 2023 08:47:02 +0200 > From: Mattias Nyrell <mattias@nyrell.se> > Cc: 66141@debbugs.gnu.org > > >> Yes, calling sleep-for is one way. I would also suggest to try > >> > >> (sit-for 0) > >> > >> If that works, it is faster. > > Ok, thank you! > > > > /Mattias > > I tried (sit-for 0) and even (sit-for 5), but none of those worked. > > (sleep-for 0.1) or (sleep-for 0) worked for me. I guess this means that some input event from the window-system interrupts sit-for too early, so sleep-for is really required. I think we can now close this bug report, right? ^ permalink raw reply [flat|nested] 8+ messages in thread
* bug#66141: 29.1; Window size properties not set immediately for window in new frame 2023-09-22 6:58 ` Eli Zaretskii @ 2023-09-22 7:23 ` Mattias Nyrell 2023-09-22 11:07 ` Eli Zaretskii 0 siblings, 1 reply; 8+ messages in thread From: Mattias Nyrell @ 2023-09-22 7:23 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 66141 On 2023-09-22 08:58, Eli Zaretskii wrote: >> Date: Fri, 22 Sep 2023 08:47:02 +0200 >> From: Mattias Nyrell <mattias@nyrell.se> >> Cc: 66141@debbugs.gnu.org >> >>>> Yes, calling sleep-for is one way. I would also suggest to try >>>> >>>> (sit-for 0) >>>> >>>> If that works, it is faster. >>> Ok, thank you! >>> >>> /Mattias >> I tried (sit-for 0) and even (sit-for 5), but none of those worked. >> >> (sleep-for 0.1) or (sleep-for 0) worked for me. > I guess this means that some input event from the window-system > interrupts sit-for too early, so sleep-for is really required. > > I think we can now close this bug report, right? Yes, thank you! ^ permalink raw reply [flat|nested] 8+ messages in thread
* bug#66141: 29.1; Window size properties not set immediately for window in new frame 2023-09-22 7:23 ` Mattias Nyrell @ 2023-09-22 11:07 ` Eli Zaretskii 0 siblings, 0 replies; 8+ messages in thread From: Eli Zaretskii @ 2023-09-22 11:07 UTC (permalink / raw) To: Mattias Nyrell; +Cc: 66141-done > Date: Fri, 22 Sep 2023 09:23:56 +0200 > Cc: 66141@debbugs.gnu.org > From: Mattias Nyrell <mattias@nyrell.se> > > > I think we can now close this bug report, right? > > Yes, thank you! Done. ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2023-09-22 11:07 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-09-21 16:16 bug#66141: 29.1; Window size properties not set immediately for window in new frame Mattias Nyrell 2023-09-21 16:39 ` Eli Zaretskii [not found] ` <dd7c9d58-3adf-7669-a071-5db6f619e268@nyrell.se> 2023-09-21 18:51 ` Eli Zaretskii 2023-09-21 19:04 ` Mattias Nyrell 2023-09-22 6:47 ` Mattias Nyrell 2023-09-22 6:58 ` Eli Zaretskii 2023-09-22 7:23 ` Mattias Nyrell 2023-09-22 11:07 ` Eli Zaretskii
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/emacs.git https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.