-
Notifications
You must be signed in to change notification settings - Fork 2
files core monitor pockwidgetsources status items slangitem swift 16e144f8
ventaphobia edited this page Apr 23, 2026
·
1 revision
- Area: Touch Bar and Pock widget runtime.
- This page records the file's current repository role, source metadata, and recent commit history.
- Review nearby tests and commit pages before changing this file.
| Field | Value |
|---|---|
| Source path | Core-Monitor/PockWidgetSources/Status/Items/SLangItem.swift |
| Wiki area | Touch Bar and Pock widget runtime |
| Exists in current checkout | True |
| Size | 6247 bytes |
| Binary | False |
| Line count | 201 |
| Extension | .swift |
AppKit, Carbon, Foundation, UniformTypeIdentifiers
| Kind | Name | Line |
|---|---|---|
| class | SLangItem |
12 |
| func | didLoad |
27 |
| func | didUnload |
40 |
| func | apply |
48 |
| func | reload |
53 |
| func | shouldTintInputSource |
93 |
| func | selectedKeyboardInputSourceChanged |
120 |
| extension | TISInputSource |
125 |
| func | value |
127 |
| extension | URL |
146 |
| extension | NSImage |
160 |
| func | tint |
164 |
| func | copy |
174 |
| func | resizeWhileMaintainingAspectRatioToSize |
186 |
| Commit | Date | Subject |
|---|---|---|
05e3328 |
2026-04-13 | commit |
2664fd1 |
2026-04-11 | Update Core Monitor |
011232b |
2026-04-11 | Update website install video |
- Prefer focused changes that respect the ownership described above.
- If this file touches helper trust, SMC writes, startup, or permissions, update the relevant support docs and tests.
- If this file is generated or an asset manifest, verify the producing workflow instead of hand-editing generated payloads.
//
// SLangItem.swift
// Status
//
// Status widget item for Core Monitor.
//
import AppKit
import Carbon
import Foundation
import UniformTypeIdentifiers
final class SLangItem: StatusItem {
private var tisInputSource: TISInputSource?
private let iconView = NSImageView(frame: NSRect(x: 0, y: 0, width: 26, height: 26))
private var currentTheme: TouchBarTheme = .dark
init() {
didLoad()
}
deinit {
didUnload()
}
var view: NSView { iconView }
func didLoad() {
iconView.imageAlignment = .alignCenter
iconView.frame.size = NSSize(width: 18, height: 18)
reload()
DistributedNotificationCenter.default().addObserver(
self,
selector: #selector(selectedKeyboardInputSourceChanged),
name: NSNotification.Name(kTISNotifySelectedKeyboardInputSourceChanged as String),
object: nil,
suspensionBehavior: .deliverImmediately
)
}
- Home
- Start Here
- Product Overview
- Runtime Architecture
- Monitoring Pipeline
- Fan Control
- Privileged Helper
- Touch Bar
- Release Automation
- Security Model
- File Index (279)
- Every Commit (401)
- Chronological Change Log
- Removed Parts
- All Deleted Paths
- Branches And Tags
- Wiki Manifest
- Start Here
- Product Overview
- Source Map
- Runtime Architecture
- App Startup And Lifecycle
- Dashboard Architecture
- Menu Bar Architecture
- Monitoring Pipeline
- Snapshot Trends And Freshness
- CPU GPU Memory Disk Network
- Battery Power And Thermals
- SMC And Apple Silicon
- Fan Control
- Custom Fan Curves
- Privileged Helper
- XPC Trust Boundary
- Helper Diagnostics
- Touch Bar Architecture
- Touch Bar Customization
- Weather And Location
- Privacy And Permissions
- Onboarding And Help
- Legacy Alerts
- Kernel Panic Weird Mode