         self.setupTableViewHeaders()
     }
     
+    private func setupFilterTextFields() {
+        self.addressFilterTextField.backgroundColor = ThemeColor.controlBackgroundColor
+        self.addressFilterTextField.tag = FilterTags.address.rawValue
+        self.addressFilterTextField.delegate = self
+        
+        self.statusFilterTextField.backgroundColor = ThemeColor.controlBackgroundColor
+        self.statusFilterTextField.tag = FilterTags.status.rawValue
+        self.statusFilterTextField.delegate = self
+        
+        self.methodFilterTextField.backgroundColor = ThemeColor.controlBackgroundColor
+        self.methodFilterTextField.tag = FilterTags.method.rawValue
+        self.methodFilterTextField.delegate = self
+    }
     
     func refresh() {
         self.tableView.reloadData()

import macOSThemeKit

class PacketsViewController: BaseViewController {

    static var statusColumnWidth = CGFloat(50.0)
    static var methodColumnWidth = CGFloat(55.0)
    static var dateColumnWidth = CGFloat(150.0)

extension PacketsViewController: NSTextFieldDelegate {
    
    func controlTextDidChange(_ obj: Notification) {
        guard let tag = (obj.object as? NSTextField)?.tag else { return }
        guard let filterTag = FilterTags(rawValue: tag) else { return }
        
        switch filterTag {
        case .address:
            viewModel?.addressFilterTerm = addressFilterTextField.stringValue
        case .method:
            viewModel?.methodFilterTerm = methodFilterTextField.stringValue
        case .status:
            viewModel?.statusFilterTerm = statusFilterTextField.stringValue
        }

    }
    
}
