void OnKeyPressed(object sender, KeyEventArgs args)
        {
            var searchField = sender as NSSearchField;

            if (searchField == null || searchEntry.Window == null)
            {
                return;
            }

            var isNSTextView = searchField.Window.FirstResponder is NSTextView;
            var isTabPressedInsideSearchBar = (args.Key == Key.Tab && isNSTextView);

            if (isTabPressedInsideSearchBar)
            {
                SearchEntryKeyPressed?.Invoke(sender, args);
            }
        }
 void AttachToolbarEvents(SearchBar bar)
 {
     bar.Changed += (o, e) => {
         SearchEntryChanged?.Invoke(o, e);
     };
     bar.KeyPressed += (o, e) => {
         SearchEntryKeyPressed?.Invoke(o, e);
     };
     bar.LostFocus += (o, e) => {
         SearchEntryLostFocus?.Invoke(o, e);
     };
     bar.SelectionActivated += (o, e) => {
         SearchEntryActivated?.Invoke(o, e);
     };
     bar.LostFocus += (sender, e) => {
         exitAction?.Invoke();
     };
 }