> Am 14.05.2020 um 12:22 schrieb Josh Freeman <[email protected]>:
> 
> On May 13, 2020, at 5:52 PM, Andreas Höschler via Discussion list for the 
> GNUstep programming environment wrote:
> 
>> I could fix the problem under GNUstep by simply commenting out
>> 
>> 
>> /*              if (_firstResponder != v && ![v isKindOfClass: [NSButton 
>> class]])
>>                {
>>                  // Only try to set first responder, when the view wants it.
>>                  if ([v acceptsFirstResponder] && ![self makeFirstResponder: 
>> v])
>>                    {
>>                      return;
>>                    }
>>                }
>> */
>> 
>> Does anything speak against submitting this change into the public tree?
> 
>   That logic should remain - it's useful for when the clicked responder wants 
> first responder status but the current first responder refuses to yield it; 
> In that case, it's probably better to return without passing along the 
> mouseDown event, otherwise the clicked responder will assume it's active & 
> receiving key events, while the current first responder is preventing its own 
> deactivation.
> 
>   That doesn't seem to be the cause of the issue anyway; The different 
> behavior between GNUstep & OS X appears to be due to mismatched return values 
> of -[NSWindow makeFirstResponder:] - if the passed responder refuses first 
> responder status, GNUstep's version returns NO, but OS X's version returns 
> YES:
> https://developer.apple.com/documentation/appkit/nswindow/1419366-makefirstresponder?language=objc

Thank you Josh for pointing this out. This looks like the correct way to go.

Fred


  • ... Andreas Höschler via Discussion list for the GNUstep programming environment
    • ... Fred Kiefer
      • ... Andreas Höschler via Discussion list for the GNUstep programming environment
        • ... Fred Kiefer
          • ... Andreas Höschler via Discussion list for the GNUstep programming environment
            • ... Fred Kiefer
              • ... Andreas Höschler via Discussion list for the GNUstep programming environment
        • ... Josh Freeman
          • ... Fred Kiefer
            • ... Fred Kiefer
              • ... Andreas Höschler via Discussion list for the GNUstep programming environment

Reply via email to