unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
@ 2022-12-03  2:43 Sean Farley via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2024-11-17  5:00 ` Aaron Jensen
  0 siblings, 1 reply; 13+ messages in thread
From: Sean Farley via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-12-03  2:43 UTC (permalink / raw)
  To: 59790

Hi there,

I have observed this behavior for (at least) emacs 28.0, 28.1, 28.2, and
emacs-29 branch (which I'm sending this bug report from)

The bugged behavior is that `ns-use-native-fullscreen' set to nil is not
read when launching emacs. To reproduce:

/Applications/Emacs.app/Contents/MacOS/Emacs -Q --eval "(progn (setq ns-use-native-fullscreen nil) (add-to-list 'initial-frame-alist '(fullscreen . fullboth)))"

The result is that Emacs launches fullscreen'd into a new desktop space
but the desired behavior is to just fullscreen into the current desktop
space.

I /think/ this might be because `ns-use-native-fullscreen' is defined in
C code which, to me at least, seems to have a funky load order with pure
lisp.



In GNU Emacs 30.0.50 (build 1, x86_64-apple-darwin22.1.0, NS
 appkit-2299.00 Version 13.0.1 (Build 22A400)) of 2022-12-02 built on
 laptop
Windowing system distributor 'Apple', version 10.3.2299
System Description:  macOS 13.0.1

Configured using:
 'configure --disable-dependency-tracking --disable-silent-rules
 --enable-locallisppath=/usr/local/share/emacs/site-lisp
 --infodir=/usr/local/Cellar/emacs-plus@29/29.0.50/share/info/emacs
 --prefix=/usr/local/Cellar/emacs-plus@29/29.0.50 --with-xml2
 --with-gnutls --with-native-compilation --without-compress-install
 --with-dbus --without-imagemagick --with-modules --with-rsvg
 --with-xwidgets --with-ns --disable-ns-self-contained 'CFLAGS=-Os -w
 -pipe -march=nehalem -mmacosx-version-min=13
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk
 -DFD_SETSIZE=10000 -DDARWIN_UNLIMITED_SELECT'
 'CPPFLAGS=-I/usr/local/opt/zlib/include -I/usr/local/opt/jpeg/include
 -I/usr/local/opt/icu4c/include -I/usr/local/opt/openssl@1.1/include
 -I/usr/local/opt/readline/include -F/usr/local/Frameworks
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk'
 'LDFLAGS=-L/usr/local/opt/zlib/lib -L/usr/local/opt/jpeg/lib
 -L/usr/local/opt/icu4c/lib -L/usr/local/opt/openssl@1.1/lib
 -L/usr/local/opt/readline/lib -L/usr/local/lib -F/usr/local/Frameworks
 -Wl,-headerpad_max_install_names
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk''

Configured features:
ACL DBUS GIF GLIB GMP GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP
NOTIFY KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS WEBP XIM XWIDGETS ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: DOOM v3.0.0-pre

Minor modes in effect:
  flyspell-lazy-mode: t
  which-key-mode: t
  better-jumper-mode: t
  better-jumper-local-mode: t
  vertico-mode: t
  all-the-icons-completion-mode: t
  marginalia-mode: t
  volatile-highlights-mode: t
  global-page-break-lines-mode: t
  whole-line-or-region-global-mode: t
  whole-line-or-region-local-mode: t
  global-dot-mode: t
  dot-mode: t
  fancy-narrow-mode: t
  global-org-modern-mode: t
  org-roam-db-autosync-mode: t
  global-git-commit-mode: t
  shell-dirtrack-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  server-mode: t
  gcmh-mode: t
  global-hl-line-mode: t
  hl-line-mode: t
  winner-mode: t
  smartparens-global-mode: t
  corfu-popupinfo-mode: t
  savehist-mode: t
  global-undo-fu-session-mode: t
  undo-fu-mode: t
  global-flycheck-mode: t
  ws-butler-global-mode: t
  editorconfig-mode: t
  persp-mode: t
  doom-modeline-mode: t
  solaire-global-mode: t
  solaire-mode: t
  delete-selection-mode: t
  projectile-mode: t
  ns-auto-titlebar-mode: t
  +popup-mode: t
  override-global-mode: t
  corfu-history-mode: t
  global-corfu-mode: t
  corfu-mode: t
  general-override-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  window-divider-mode: t
  buffer-read-only: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/Users/sean/.config/emacs/.local/straight/build-30.0.50/ivy/elpa hides /Users/sean/.config/emacs/.local/straight/build-30.0.50/lispy/elpa
/Users/sean/.config/emacs/.local/straight/build-30.0.50/cmake-mode/cmake-mode hides /usr/local/share/emacs/site-lisp/cmake/cmake-mode
/Users/sean/.config/emacs/.local/straight/build-30.0.50/transient/transient hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/transient
/Users/sean/.config/emacs/.local/straight/build-30.0.50/xref/xref hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/progmodes/xref
/Users/sean/.config/emacs/.local/straight/build-30.0.50/project/project hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/progmodes/project
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-comint hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-comint
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-exp hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-exp
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-ctags hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-ctags
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-emacs-lisp hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-emacs-lisp
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/oc hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/oc
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-texinfo hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-texinfo
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-irc hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-irc
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-doi hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-doi
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-refile hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-refile
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-version hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-version
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-num hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-num
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-mhe hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-mhe
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-shell hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-shell
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-attach hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-attach
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-C hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-C
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-macs hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-macs
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-entities hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-entities
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-dot hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-dot
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-sql hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-sql
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-eww hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-eww
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-datetree hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-datetree
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-macro hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-macro
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-eval hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-eval
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-haskell hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-haskell
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-org hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-org
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-rmail hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-rmail
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-awk hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-awk
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-groovy hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-groovy
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-icalendar hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-icalendar
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-octave hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-octave
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-scheme hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-scheme
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-mobile hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-mobile
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-processing hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-processing
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/oc-biblatex hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/oc-biblatex
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/oc-csl hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/oc-csl
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-colview hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-colview
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-R hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-R
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-table hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-table
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-html hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-html
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-fortran hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-fortran
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-plantuml hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-plantuml
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-docview hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-docview
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-perl hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-perl
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-sqlite hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-sqlite
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/oc-basic hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/oc-basic
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-sed hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-sed
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-fold-core hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-fold-core
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-ditaa hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-ditaa
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-ruby hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-ruby
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/oc-bibtex hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/oc-bibtex
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-habit hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-habit
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-gnus hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-gnus
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-screen hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-screen
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-mouse hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-mouse
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-css hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-css
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-inlinetask hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-inlinetask
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-lisp hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-lisp
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-eshell hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-eshell
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-pcomplete hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-pcomplete
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-lint hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-lint
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-id hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-id
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-capture hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-capture
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-sass hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-sass
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-tangle hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-tangle
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-calc hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-calc
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-java hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-java
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-compat hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-compat
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-attach-git hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-attach-git
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-beamer hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-beamer
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-protocol hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-protocol
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-element hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-element
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-lob hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-lob
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-tempo hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-tempo
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-python hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-python
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-latex hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-latex
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-w3m hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-w3m
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-agenda hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-agenda
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-persist hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-persist
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-ocaml hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-ocaml
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-ref hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-ref
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-fold hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-fold
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-julia hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-julia
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-lilypond hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-lilypond
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-table hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-table
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-clojure hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-clojure
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-indent hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-indent
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-plot hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-plot
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-latex hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-latex
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-src hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-src
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-duration hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-duration
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-makefile hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-makefile
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-info hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-info
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-clock hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-clock
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-forth hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-forth
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-odt hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-odt
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-man hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-man
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-publish hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-publish
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-archive hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-archive
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-org hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-org
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-lua hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-lua
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-keys hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-keys
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-eshell hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-eshell
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-faces hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-faces
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-man hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-man
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-list hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-list
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-md hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-md
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-goto hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-goto
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-bbdb hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-bbdb
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ol-bibtex hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ol-bibtex
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-koma-letter hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-koma-letter
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox-ascii hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox-ascii
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-matlab hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-matlab
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ox hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ox
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-timer hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-timer
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/oc-natbib hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/oc-natbib
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-core hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-core
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-feed hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-feed
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-gnuplot hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-gnuplot
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-js hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-js
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-footnote hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-footnote
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/ob-maxima hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/ob-maxima
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-cycle hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-cycle
/Users/sean/.config/emacs/.local/straight/build-30.0.50/org/org-crypt hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/org/org-crypt
/Users/sean/.config/emacs/.local/straight/build-30.0.50/map/map hides /usr/local/Cellar/emacs-plus@29/29.0.50/share/emacs/30.0.50/lisp/emacs-lisp/map

Features:
(shadow sort disp-table whitespace flycheck-posframe posframe
flyspell-lazy flyspell ispell vi-tilde-fringe display-line-numbers
highlight-indent-guides adaptive-wrap mail-extr emacsbug cursor-sensor
vertico-repeat objed objed-objects cap-words superword subword which-key
better-jumper vertico all-the-icons-completion marginalia etags fileloop
xref project volatile-highlights page-break-lines whole-line-or-region
dot-mode fancy-narrow org-modern org-agenda oc-natbib oc-csl citeproc
citeproc-itemgetters citeproc-biblatex citeproc-bibtex parsebib
ol-bibtex org-roam-migrate org-roam-log org-roam-mode org-roam-capture
org-roam-id org-roam-node org-roam-db org-roam-utils org-roam-compat
org-roam org-capture org-attach smartparens-org org-yt org-element
org-persist xdg org-id org-refile avl-tree generator org ob ob-tangle
ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src
ob-emacs-lisp org-table ol org-keys citeproc-cite citeproc-subbibs
citeproc-sort citeproc-name citeproc-formatters citeproc-number
smartparens-rst rst citeproc-proc citeproc-disamb citeproc-itemdata
citeproc-generic-elements citeproc-macro citeproc-choose citeproc-date
citeproc-context citeproc-prange citeproc-style citeproc-locale
citeproc-term citeproc-rt citeproc-lib citeproc-s queue bibtex
oc-biblatex oc ob-comint org-pcomplete org-list org-entities org-faces
cal-menu calendar cal-loaddefs magit-todos pcre2el rxt re-builder
hl-todo async code-review code-review-actions code-review-comment
code-review-section code-review-bitbucket code-review-faces shr
pixel-fill kinsoku url-file emojify apropos tar-mode arc-mode
archive-mode ht code-review-gitlab code-review-utils forge-list
forge-commands forge-semi forge-bitbucket buck forge-gogs gogs
forge-gitea gtea forge-gitlab glab forge-github forge-notify
forge-revnote forge-pullreq forge-issue forge-topic yaml parse-time
iso8601 bug-reference forge-post smartparens-markdown markdown-mode
edit-indirect outline-minor-faces noutline outline forge-repo forge
forge-core forge-db code-review-parse-hunk code-review-github
code-review-db uuidgen calc-misc calc-ext calc calc-loaddefs rect
calc-macs a code-review-interfaces deferred ghub-graphql treepy gsexp
ghub url-http url-gw nsm url-auth gnutls closql emacsql-sqlite emacsql
emacsql-compiler magit-autoloads magit-submodule magit-obsolete
magit-popup magit-blame magit-stash magit-reflog magit-bisect magit-push
magit-pull magit-fetch magit-clone magit-remote magit-commit
magit-sequence magit-notes magit-worktree magit-tag magit-merge
magit-branch magit-reset magit-files magit-refs magit-status magit
magit-repos magit-apply magit-wip magit-log which-func edebug debug
backtrace magit-diff smerge-mode diff diff-mode magit-core
magit-autorevert magit-margin magit-transient magit-process magit-mode
git-commit magit-git magit-base magit-section crm compat-27 compat-26
transient log-edit message sendmail yank-media puny dired dired-loaddefs
rfc822 mml mml-sec epa epg rfc6068 epg-config gnus-util time-date
mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util
ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader
pcvs-util add-log with-editor shell pcomplete doom-snippets
doom-snippets-lib yasnippet elisp-mode recentf server autorevert
filenotify gcmh hl-line winner smartparens-config smartparens-text
smartparens corfu-popupinfo savehist undo-fu-session undo-fu
flycheck-package package-lint imenu finder finder-inf doom-packages
package browse-url url url-proxy url-privacy url-expand url-methods
url-history url-cookie generate-lisp-file url-domsuf url-util mailcap
url-handlers url-parse bitwarden tree-widget wid-edit auth-source eieio
eieio-core password-cache url-vars flycheck-eldev flycheck json map
find-func ws-butler editorconfig persp-mode doom-modeline
doom-modeline-segments doom-modeline-env doom-modeline-core
all-the-icons all-the-icons-faces data-material data-weathericons
data-octicons data-fileicons data-faicons data-alltheicons shrink-path f
f-shortdoc shortdoc s dash compat dtrt-indent byte-opt advice
doom-themes-ext-treemacs doom-themes-ext-org solaire-mode face-remap
doom-nord-theme doom-themes doom-themes-base delsel comp comp-cstr
warnings icons projectile lisp-mnt grep compile text-property-search
comint ansi-osc ansi-color ring ibuffer-vc ibuf-ext ibuffer
ibuffer-loaddefs thingatpt mu4e-config html2text let-alist ob-core
org-cycle org-fold org-fold-core org-compat ob-eval org-version org-macs
format-spec smartparens-lua ns-auto-titlebar ibuf-macs derived edmacro
kmacro use-package-bind-key bind-key corfu-history kind-icon svg-lib
color svg dom xml orderless corfu doom-editor doom-projects doom-ui
easy-mmode doom-keybinds pp cl-extra help-mode use-package-core bytecomp
byte-compile general tex-site rx realgud-recursive-autoloads doom-start
doom-modules cl-seq doom doom-lib cl-macs cl-loaddefs cl-lib pcase gv
jansson dynamic-modules subr-x rmc iso-transl tooltip cconv eldoc paren
electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/ns-win
ns-win ucs-normalize mule-util 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 xwidget-internal dbusbind
kqueue cocoa ns lcms2 multi-tty make-network-process native-compile
emacs)

Memory information:
((conses 16 887625 409974)
 (symbols 48 75035 53)
 (strings 32 247349 78616)
 (string-bytes 1 8192450)
 (vectors 16 93786)
 (vector-slots 8 1867025 886681)
 (floats 8 1288 2174)
 (intervals 56 917 89)
 (buffers 984 13))





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2022-12-03  2:43 bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist Sean Farley via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-11-17  5:00 ` Aaron Jensen
  2024-11-20 21:27   ` Alan Third
  2024-11-24 11:59   ` Alan Third
  0 siblings, 2 replies; 13+ messages in thread
From: Aaron Jensen @ 2024-11-17  5:00 UTC (permalink / raw)
  To: sean, 59790


[-- Attachment #1.1: Type: text/plain, Size: 763 bytes --]

​The bugged behavior is that `ns-use-native-fullscreen' set to nil is not read
when launching emacs.


The attached patch should fix this. The problem is that when the frame is
made, the current value of ns-use-native-fullscreen is copied to a variable
and that's only reset when the frame goes from fullscreen to windowed. I
believe the original intent was to ensure that the mode could not change
while the window was fullscreen already.

This resets the value of fs_is_native if the frame is not already
fullscreen, which allows it to respect the value at the time of the first
fullscreen.

Without this, the only way to get the behavior that Sean is expecting is to
set ns-use-native-fullscreen in early-init, which should not be necessary.

[-- Attachment #1.2: Type: text/html, Size: 1501 bytes --]

[-- Attachment #2: 0001-src-nsterm.m-EmacsView-toggleFullScreen-Reset-fs_is_.patch --]
[-- Type: application/octet-stream, Size: 818 bytes --]

From 8e6138ea26f996895d2e60dad7ec112e916736a9 Mon Sep 17 00:00:00 2001
From: Aaron Jensen <aaronjensen@gmail.com>
Date: Sat, 16 Nov 2024 20:54:59 -0800
Subject: [PATCH] * src/nsterm.m ([EmacsView toggleFullScreen:]): Reset
 fs_is_native

---
 src/nsterm.m | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/nsterm.m b/src/nsterm.m
index dabc36ce018..d2650843548 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -8524,6 +8524,11 @@ - (void)toggleFullScreen: (id)sender
 
   NSTRACE ("[EmacsView toggleFullScreen:]");
 
+  /* Reset fs_is_native to value of ns-use-native-full-screen if not
+     fullscreen already */
+  if (fs_state != FULLSCREEN_BOTH)
+    fs_is_native = ns_use_native_fullscreen;
+
   if (fs_is_native)
     {
 #if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
-- 
2.47.0


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-17  5:00 ` Aaron Jensen
@ 2024-11-20 21:27   ` Alan Third
  2024-11-20 21:38     ` Aaron Jensen
  2024-11-23  1:12     ` Aaron Jensen
  2024-11-24 11:59   ` Alan Third
  1 sibling, 2 replies; 13+ messages in thread
From: Alan Third @ 2024-11-20 21:27 UTC (permalink / raw)
  To: Aaron Jensen; +Cc: sean, 59790

On Sun, Nov 17, 2024 at 12:00:07AM -0500, Aaron Jensen wrote:
> ​The bugged behavior is that `ns-use-native-fullscreen' set to nil is not read
> when launching emacs.
> 
> 
> The attached patch should fix this. The problem is that when the frame is
> made, the current value of ns-use-native-fullscreen is copied to a variable
> and that's only reset when the frame goes from fullscreen to windowed. I
> believe the original intent was to ensure that the mode could not change
> while the window was fullscreen already.
> 
> This resets the value of fs_is_native if the frame is not already
> fullscreen, which allows it to respect the value at the time of the first
> fullscreen.
> 
> Without this, the only way to get the behavior that Sean is expecting is to
> set ns-use-native-fullscreen in early-init, which should not be necessary.

The patch looks good here. The only thing is I get this printed to the
console:

2024-11-20 21:11:36.609 emacs[18867:241457] ERROR: Can't have a toolbar in a window with <NSNextStepFrame: 0x7f8db350c7e0> as it's borderview

I don't think I've ever seen NextStep explicitly mentioned in macOS
code before, other than the "NS" prefix.

I'm going to hazard a guess that the first if at the top of
createToolbar needs another test for when we're in non-native
fullscreen or something.

Native fullscreen displays the toolbar, non-native doesn't because it
uses the borderless stylemask. Perhaps a check on the stylemask would
be enough to cover both this and undecorated.

-- 
Alan Third





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-20 21:27   ` Alan Third
@ 2024-11-20 21:38     ` Aaron Jensen
  2024-11-20 21:59       ` Alan Third
  2024-11-23  1:12     ` Aaron Jensen
  1 sibling, 1 reply; 13+ messages in thread
From: Aaron Jensen @ 2024-11-20 21:38 UTC (permalink / raw)
  To: Alan Third; +Cc: 59790

[-- Attachment #1: Type: text/plain, Size: 2031 bytes --]

Thanks for trying it out. I saw the error as well both before and after the
patch, so I didn't look into it. I think you're right though. I can try
that out later. It probably shouldn't impact when/if this patch should be
installed.

Are you able to install this and the other or do we need someone else to
sign off on it and install them?


Aaron


On Wed, Nov 20, 2024 at 1:27 PM, Alan Third <alan@idiocy.org> wrote:

> On Sun, Nov 17, 2024 at 12:00:07AM -0500, Aaron Jensen wrote:
>
> ​The bugged behavior is that `ns-use-native-fullscreen' set to nil is not
> read when launching emacs.
>
> The attached patch should fix this. The problem is that when the frame is
> made, the current value of ns-use-native-fullscreen is copied to a variable
> and that's only reset when the frame goes from fullscreen to windowed. I
> believe the original intent was to ensure that the mode could not change
> while the window was fullscreen already.
>
> This resets the value of fs_is_native if the frame is not already
> fullscreen, which allows it to respect the value at the time of the first
> fullscreen.
>
> Without this, the only way to get the behavior that Sean is expecting is
> to set ns-use-native-fullscreen in early-init, which should not be
> necessary.
>
> The patch looks good here. The only thing is I get this printed to the
> console:
>
> 2024-11-20 21:11:36.609 emacs[18867:241457] ERROR: Can't have a toolbar in
> a window with <NSNextStepFrame: 0x7f8db350c7e0> as it's borderview
>
> I don't think I've ever seen NextStep explicitly mentioned in macOS code
> before, other than the "NS" prefix.
>
> I'm going to hazard a guess that the first if at the top of createToolbar
> needs another test for when we're in non-native fullscreen or something.
>
> Native fullscreen displays the toolbar, non-native doesn't because it uses
> the borderless stylemask. Perhaps a check on the stylemask would be enough
> to cover both this and undecorated.
>
> --
> Alan Third
>

[-- Attachment #2: Type: text/html, Size: 3044 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-20 21:38     ` Aaron Jensen
@ 2024-11-20 21:59       ` Alan Third
  2024-11-20 22:18         ` Aaron Jensen
  2024-11-21  6:23         ` Eli Zaretskii
  0 siblings, 2 replies; 13+ messages in thread
From: Alan Third @ 2024-11-20 21:59 UTC (permalink / raw)
  To: Aaron Jensen; +Cc: 59790

On Wed, Nov 20, 2024 at 01:38:27PM -0800, Aaron Jensen wrote:
> Thanks for trying it out. I saw the error as well both before and after the
> patch, so I didn't look into it. I think you're right though. I can try
> that out later. It probably shouldn't impact when/if this patch should be
> installed.
> 
> Are you able to install this and the other or do we need someone else to
> sign off on it and install them?

I should be able to install it, but I don't know where. Master?
-- 
Alan Third





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-20 21:59       ` Alan Third
@ 2024-11-20 22:18         ` Aaron Jensen
  2024-11-21  6:23         ` Eli Zaretskii
  1 sibling, 0 replies; 13+ messages in thread
From: Aaron Jensen @ 2024-11-20 22:18 UTC (permalink / raw)
  To: Alan Third; +Cc: 59790

[-- Attachment #1: Type: text/plain, Size: 650 bytes --]

 Master is fine with me for both. I could see it going into 30.2


Aaron

On Wed, Nov 20 2024 at 1:59 PM, Alan Third <alan@idiocy.org> wrote:

> On Wed, Nov 20, 2024 at 01:38:27PM -0800, Aaron Jensen wrote:
>
> Thanks for trying it out. I saw the error as well both before and after
> the patch, so I didn't look into it. I think you're right though. I can try
> that out later. It probably shouldn't impact when/if this patch should be
> installed.
>
> Are you able to install this and the other or do we need someone else to
> sign off on it and install them?
>
> I should be able to install it, but I don't know where. Master?
> --
> Alan Third
>

[-- Attachment #2: Type: text/html, Size: 1240 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-20 21:59       ` Alan Third
  2024-11-20 22:18         ` Aaron Jensen
@ 2024-11-21  6:23         ` Eli Zaretskii
  2024-11-21  7:13           ` Aaron Jensen
  1 sibling, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2024-11-21  6:23 UTC (permalink / raw)
  To: Alan Third; +Cc: 59790, aaronjensen

> Cc: 59790@debbugs.gnu.org
> Date: Wed, 20 Nov 2024 21:59:54 +0000
> From: Alan Third <alan@idiocy.org>
> 
> On Wed, Nov 20, 2024 at 01:38:27PM -0800, Aaron Jensen wrote:
> > Thanks for trying it out. I saw the error as well both before and after the
> > patch, so I didn't look into it. I think you're right though. I can try
> > that out later. It probably shouldn't impact when/if this patch should be
> > installed.
> > 
> > Are you able to install this and the other or do we need someone else to
> > sign off on it and install them?
> 
> I should be able to install it, but I don't know where. Master?

If the problem is serious enough (is it?), then emacs-30 is fine, as
far as I'm concerned.

Thanks.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-21  6:23         ` Eli Zaretskii
@ 2024-11-21  7:13           ` Aaron Jensen
  0 siblings, 0 replies; 13+ messages in thread
From: Aaron Jensen @ 2024-11-21  7:13 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Alan Third, 59790

[-- Attachment #1: Type: text/plain, Size: 1037 bytes --]

 I suppose this one is a bug fix, yes. So I'm good with 30 as well. The
other is more experimental in a way since we can no longer reproduce the
original concern.

Realistically, both could go in 30 most likely. Your call on that front.


Aaron

On Wed, Nov 20 2024 at 10:23 PM, Eli Zaretskii <eliz@gnu.org> wrote:

> Cc: 59790@debbugs.gnu.org
> Date: Wed, 20 Nov 2024 21:59:54 +0000
> From: Alan Third <alan@idiocy.org>
>
> On Wed, Nov 20, 2024 at 01:38:27PM -0800, Aaron Jensen wrote:
> > Thanks for trying it out. I saw the error as well both before and after
> the
> > patch, so I didn't look into it. I think you're right though. I can try
> > that out later. It probably shouldn't impact when/if this patch should
> be
> > installed.
> >
> > Are you able to install this and the other or do we need someone else to
> > sign off on it and install them?
>
> I should be able to install it, but I don't know where. Master?
>
> If the problem is serious enough (is it?), then emacs-30 is fine, as far
> as I'm concerned.
>
> Thanks.
>

[-- Attachment #2: Type: text/html, Size: 1845 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-20 21:27   ` Alan Third
  2024-11-20 21:38     ` Aaron Jensen
@ 2024-11-23  1:12     ` Aaron Jensen
  2024-11-23  2:20       ` Aaron Jensen
  1 sibling, 1 reply; 13+ messages in thread
From: Aaron Jensen @ 2024-11-23  1:12 UTC (permalink / raw)
  To: Alan Third; +Cc: sean, 59790

[-- Attachment #1: Type: text/plain, Size: 2082 bytes --]

On Wed, Nov 20, 2024 at 1:27 PM, Alan Third <alan@idiocy.org> wrote:

> On Sun, Nov 17, 2024 at 12:00:07AM -0500, Aaron Jensen wrote:
>
> ​The bugged behavior is that `ns-use-native-fullscreen' set to nil is not
> read when launching emacs.
>
> The attached patch should fix this. The problem is that when the frame is
> made, the current value of ns-use-native-fullscreen is copied to a variable
> and that's only reset when the frame goes from fullscreen to windowed. I
> believe the original intent was to ensure that the mode could not change
> while the window was fullscreen already.
>
> This resets the value of fs_is_native if the frame is not already
> fullscreen, which allows it to respect the value at the time of the first
> fullscreen.
>
> Without this, the only way to get the behavior that Sean is expecting is
> to set ns-use-native-fullscreen in early-init, which should not be
> necessary.
>
> The patch looks good here. The only thing is I get this printed to the
> console:
>
> 2024-11-20 21:11:36.609 emacs[18867:241457] ERROR: Can't have a toolbar in
> a window with <NSNextStepFrame: 0x7f8db350c7e0> as it's borderview
>
> I don't think I've ever seen NextStep explicitly mentioned in macOS code
> before, other than the "NS" prefix.
>
> I'm going to hazard a guess that the first if at the top of createToolbar
> needs another test for when we're in non-native fullscreen or something.
>
> Native fullscreen displays the toolbar, non-native doesn't because it uses
> the borderless stylemask. Perhaps a check on the stylemask would be enough
> to cover both this and undecorated.
>

I tried this in createToolbar and I still get the error. I don't know if
the styleMask isn't set yet or if it's somehow using the toolbar from the
previous window? Seems odd. I haven't played with it too much, but I just
wanted to let you know that this didn't appear to work in case you were
planning on taking a look at some point.

if ([[view window] styleMask] & NSWindowStyleMaskBorderless)
  return;

Thanks,

Aaron

[-- Attachment #2: Type: text/html, Size: 3143 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-23  1:12     ` Aaron Jensen
@ 2024-11-23  2:20       ` Aaron Jensen
  2024-11-24 12:10         ` Alan Third
  0 siblings, 1 reply; 13+ messages in thread
From: Aaron Jensen @ 2024-11-23  2:20 UTC (permalink / raw)
  To: Alan Third; +Cc: 59790


[-- Attachment #1.1: Type: text/plain, Size: 412 bytes --]

>
> I tried this in createToolbar and I still get the error. I don't know if
> the styleMask isn't set yet or if it's somehow using the toolbar from the
> previous window? Seems odd. I haven't played with it too much, but I just
> wanted to let you know that this didn't appear to work in case you were
> planning on taking a look at some point.
>

Figured it out. Please try the attached patch.

Thanks,

Aaron

[-- Attachment #1.2: Type: text/html, Size: 1014 bytes --]

[-- Attachment #2: 0001-src-nsterm.m-EmacsWindow-createToolbar-Disable-toolb.patch --]
[-- Type: application/octet-stream, Size: 896 bytes --]

From 902dd3c43f18f5e9152da06e8f6e58b5c439fc9c Mon Sep 17 00:00:00 2001
From: Aaron Jensen <aaronjensen@gmail.com>
Date: Fri, 22 Nov 2024 18:17:55 -0800
Subject: [PATCH] * src/nsterm.m ([EmacsWindow createToolbar:]): Disable
 toolbar when fullscreen

---
 src/nsterm.m | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/nsterm.m b/src/nsterm.m
index d2650843548..dceb3cebb4d 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -9366,7 +9366,10 @@ - (instancetype) initWithEmacsFrame: (struct frame *) f
 
 - (void)createToolbar: (struct frame *)f
 {
-  if (FRAME_UNDECORATED (f) || !FRAME_EXTERNAL_TOOL_BAR (f) || [self toolbar] != nil)
+  if (FRAME_UNDECORATED (f)
+      || [self styleMask] == NSWindowStyleMaskBorderless
+      || !FRAME_EXTERNAL_TOOL_BAR (f)
+      || [self toolbar] != nil)
     return;
 
   EmacsView *view = (EmacsView *)FRAME_NS_VIEW (f);
-- 
2.47.0


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-17  5:00 ` Aaron Jensen
  2024-11-20 21:27   ` Alan Third
@ 2024-11-24 11:59   ` Alan Third
  1 sibling, 0 replies; 13+ messages in thread
From: Alan Third @ 2024-11-24 11:59 UTC (permalink / raw)
  To: Aaron Jensen; +Cc: 59790

On Sun, Nov 17, 2024 at 12:00:07AM -0500, Aaron Jensen wrote:
> ​The bugged behavior is that `ns-use-native-fullscreen' set to nil is not read
> when launching emacs.
> 
> 
> The attached patch should fix this. The problem is that when the frame is
> made, the current value of ns-use-native-fullscreen is copied to a variable
> and that's only reset when the frame goes from fullscreen to windowed. I
> believe the original intent was to ensure that the mode could not change
> while the window was fullscreen already.
> 
> This resets the value of fs_is_native if the frame is not already
> fullscreen, which allows it to respect the value at the time of the first
> fullscreen.
> 
> Without this, the only way to get the behavior that Sean is expecting is to
> set ns-use-native-fullscreen in early-init, which should not be necessary.

Pushed to emacs-30 as 03ae07291e85fd353595806c3ce1ad3315c47649.

-- 
Alan Third





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-23  2:20       ` Aaron Jensen
@ 2024-11-24 12:10         ` Alan Third
  2024-11-24 16:18           ` Aaron Jensen
  0 siblings, 1 reply; 13+ messages in thread
From: Alan Third @ 2024-11-24 12:10 UTC (permalink / raw)
  To: Aaron Jensen; +Cc: 59790-done

On Fri, Nov 22, 2024 at 06:20:17PM -0800, Aaron Jensen wrote:
> >
> > I tried this in createToolbar and I still get the error. I don't know if
> > the styleMask isn't set yet or if it's somehow using the toolbar from the
> > previous window? Seems odd. I haven't played with it too much, but I just
> > wanted to let you know that this didn't appear to work in case you were
> > planning on taking a look at some point.
> >
> 
> Figured it out. Please try the attached patch.

Looks good. Pushed to master as cf3ea44eb56364190ea9f2b905f74902c49de416.

-- 
Alan Third





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist
  2024-11-24 12:10         ` Alan Third
@ 2024-11-24 16:18           ` Aaron Jensen
  0 siblings, 0 replies; 13+ messages in thread
From: Aaron Jensen @ 2024-11-24 16:18 UTC (permalink / raw)
  To: Alan Third; +Cc: 59790-done

[-- Attachment #1: Type: text/plain, Size: 679 bytes --]

 Thank you, Alan.


Aaron

On Sun, Nov 24 2024 at 4:10 AM, Alan Third <alan@idiocy.org> wrote:

> On Fri, Nov 22, 2024 at 06:20:17PM -0800, Aaron Jensen wrote:
>
> >
> > I tried this in createToolbar and I still get the error. I don't know if
> > the styleMask isn't set yet or if it's somehow using the toolbar from
> the
> > previous window? Seems odd. I haven't played with it too much, but I
> just
> > wanted to let you know that this didn't appear to work in case you were
> > planning on taking a look at some point.
> >
>
> Figured it out. Please try the attached patch.
>
> Looks good. Pushed to master as cf3ea44eb56364190ea9f2b905f74902c49de416.
>
> --
> Alan Third
>

[-- Attachment #2: Type: text/html, Size: 1318 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2024-11-24 16:18 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-03  2:43 bug#59790: 30.0.50; ns-use-native-fullscreen is not respected for first use of initial-frame-alist Sean Farley via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-11-17  5:00 ` Aaron Jensen
2024-11-20 21:27   ` Alan Third
2024-11-20 21:38     ` Aaron Jensen
2024-11-20 21:59       ` Alan Third
2024-11-20 22:18         ` Aaron Jensen
2024-11-21  6:23         ` Eli Zaretskii
2024-11-21  7:13           ` Aaron Jensen
2024-11-23  1:12     ` Aaron Jensen
2024-11-23  2:20       ` Aaron Jensen
2024-11-24 12:10         ` Alan Third
2024-11-24 16:18           ` Aaron Jensen
2024-11-24 11:59   ` Alan Third

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).