emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Mac OS Sierra tab feature breaks C-x 5 2


From: Alan Third
Subject: Re: Mac OS Sierra tab feature breaks C-x 5 2
Date: Thu, 13 Jul 2017 21:22:34 +0100
User-agent: Mutt/1.7.2 (2016-11-26)

On Wed, Jul 12, 2017 at 11:20:57PM +0200, Anders Lindgren wrote:
> > We could disable the warning:
> >
> >     #pragma clang diagnostic push
> >     #pragma clang diagnostic ignored "-Wobjc-method-access"
> >       if ([win respondsToSelector: @selector(setTabbingMode:)])
> >         [win setTabbingMode: NSWindowTabbingModeDisallowed];
> >     #pragma clang diagnostic pop
> 
<snip>
> 
> The end result would look like:
> 
>       NS_SILENCE_MISSING_METHOD_WARNING_BEGIN
>       if ([win respondsToSelector: @selector(setTabbingMode:)])
>         [win setTabbingMode: NSWindowTabbingModeDisallowed];
>       NS_SILENCE_MISSING_METHOD_WARNING_END

I like this option, but after a lot of messing about I’m pretty sure
that gcc doesn’t let you silence this warning.

So, unless we don’t care about gcc warnings for the NS build, we could
try using performSelector:

    [win performSelector: @selector(setTabbingMode:)
              withObject: (id)NSWindowTabbingModeDisallowed];

Which only supports one parameter, so works here but not necessarily
anywhere else we might want to try this.

Or back to the first suggestion and fake the methods when they’re not
there. But that doesn’t help get rid of the need for multiple
binaries.
-- 
Alan Third



reply via email to

[Prev in Thread] Current Thread [Next in Thread]