Subject: Re: bug#25408: Remove Decorations Around Emacs Frame (NS port)

From: martin rudalics <[email-masked]>
Date: Mon, 17 Apr 2017 19:20:20 +0200

> I’m not sure about the decoration stuff, but I think, from a quick
 > glance at the GNUStep docs, the parent/child window stuff should work.
 >
 > I’ll try and build it under GNUStep at some point to check it works.
 > I’ve got a GNU/Linux virtual machine around here somewhere...

Here, building with GNUStep currently fails as follows:

../../src/nsterm.m: In function ‘x_set_offset’:
../../src/nsterm.m:1714:33: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:1714:33: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:1714:33: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:1716:33: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:1716:33: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:1716:33: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m: In function ‘x_set_window_size’:
../../src/nsterm.m:1742:7: warning: unused variable ‘tb’ [-Wunused-variable]
../../src/nsterm.m: In function ‘x_set_undecorated’:
../../src/nsterm.m:1822:34: warning: ‘NSWindow’ may not respond to ‘-setStyleMask:’ [enabled by default]
../../src/nsterm.m:1822:34: warning: (Messages without a matching method signature [enabled by default]
../../src/nsterm.m:1822:34: warning: will be assumed to return ‘id’ and accept [enabled by default]
../../src/nsterm.m:1822:34: warning: ‘...’ as arguments.) [enabled by default]
../../src/nsterm.m:1833:34: warning: ‘NSWindow’ may not respond to ‘-setStyleMask:’ [enabled by default]
../../src/nsterm.m: In function ‘ns_read_socket’:
../../src/nsterm.m:4160:21: warning: unused variable ‘specpdl_count’ [-Wunused-variable]
../../src/nsfns.m: In function ‘frame_geometry’:
../../src/nsfns.m:2853:3: error: no ‘visible’ getter found
../../src/nsterm.m: In function ‘-[EmacsView initFrameFromEmacs:]’:
../../src/nsterm.m:6892:30: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:6894:30: warning: initialization from distinct Objective-C type [enabled by default]
../../src/nsterm.m:6905:12: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:6905:12: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:6905:12: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:6907:12: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:6907:12: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:6907:12: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m: In function ‘-[EmacsView windowDidMove:]’:
../../src/nsterm.m:6951:43: warning: comparison of distinct pointer types lacks a cast [enabled by default]
../../src/nsterm.m:6953:9: warning: comparison of distinct pointer types lacks a cast [enabled by default]
make[1]: *** [nsfns.o] Fehler 1
make[1]: *** Warte auf noch nicht beendete Prozesse...
../../src/nsterm.m: In function ‘-[EmacsView updateFrameSize:]’:
../../src/nsterm.m:6467:9: error: no ‘visible’ getter found
../../src/nsterm.m:6472:7: error: no ‘visible’ getter found
../../src/nsterm.m: In function ‘-[EmacsView windowWillResize:toSize:]’:
../../src/nsterm.m:6554:9: error: no ‘visible’ getter found
../../src/nsterm.m: In function ‘x_set_window_size’:
../../src/nsterm.m:1772:7: error: no ‘visible’ getter found
../../src/nsterm.m:1788:5: error: no ‘visible’ getter found
../../src/nsterm.m: In function ‘x_set_offset’:
../../src/nsterm.m:1706:12: error: no ‘visible’ getter found
make[1]: *** [nsterm.o] Fehler 1
make[1]: Leaving directory `/home/martin/emacs-git/trunk/obj-ns/src'
make: *** [src] Fehler 2

No good idea what made it choke.  The plethora of warnings is terribly
confusing.

 > Now, one thing that may be wrong is that (0 0) is actually the very
 > top, including the titlebar. I could probably fix that if it’s not
 > right just by offsetting by the height of the titlebar.

No really great deal.  If you don't, we'll mention it in the
documentation.

martin