6077 Commits

Author SHA1 Message Date
Mitchell Hashimoto
2f61f7d6a3 font: fix hashing of descriptor strings 2024-04-06 19:49:14 -07:00
Mitchell Hashimoto
21605eaab7 apprt/embedded: setfontsize 2024-04-06 19:37:41 -07:00
Mitchell Hashimoto
84f30a6064 apprt/gtk: setFontsize should have error 2024-04-06 19:36:59 -07:00
Mitchell Hashimoto
3afeac99e9 renderer/opengl: support font size change 2024-04-06 19:35:56 -07:00
Mitchell Hashimoto
506ba854fa core: font size changes work 2024-04-06 19:33:49 -07:00
Mitchell Hashimoto
f51dad445f core: add todo for next time 2024-04-06 10:56:21 -07:00
Mitchell Hashimoto
b8d11e57c9 renderer/Metal: change font size works again 2024-04-06 10:55:58 -07:00
Mitchell Hashimoto
ebd31ad50f font: SharedGridSet DerivedConfig does not take font size 2024-04-06 10:45:44 -07:00
Mitchell Hashimoto
b9efd83798 font: SharedGridSet uses DerivedConfig 2024-04-06 10:37:26 -07:00
Mitchell Hashimoto
07a5dd0442 config: FontStyle.clone 2024-04-06 10:28:57 -07:00
Mitchell Hashimoto
efb8146c28 config: RepeatableString.clone should clone all the strings too 2024-04-06 10:20:16 -07:00
Mitchell Hashimoto
00f677fd51 font: SharedGridSet locks and is thread-safe 2024-04-06 10:08:52 -07:00
Mitchell Hashimoto
a22ca8e4c1 renderer/opengl: clean up texture sync 2024-04-06 09:34:34 -07:00
Mitchell Hashimoto
45f518851d renderer/opengl: convert to SharedGrid, new windows/tabs are frozen 2024-04-05 22:00:51 -07:00
Mitchell Hashimoto
b77513de1a font/harfbuzz: work with new font structures 2024-04-05 21:48:53 -07:00
Mitchell Hashimoto
6aa659c4b5 renderer/metal: re-enable preedit rendering 2024-04-05 21:39:39 -07:00
Mitchell Hashimoto
2a06cf54ba core: App asserts the font grid set is empty on close 2024-04-05 21:28:50 -07:00
Mitchell Hashimoto
29b172b3ac renderer/metal: use new atlas APIs 2024-04-05 21:13:10 -07:00
Mitchell Hashimoto
de2b0f6857 font: Atlas updated to use monotonic ID 2024-04-05 21:10:10 -07:00
Mitchell Hashimoto
c45747bf1f font: implement many rendering, caching functions for SharedGrid 2024-04-05 20:50:35 -07:00
Mitchell Hashimoto
c88137d254 font/shaper: work on new grid APIs 2024-04-05 20:21:13 -07:00
Mitchell Hashimoto
90ea733cbd font: SharedGrid hasCodepoint 2024-04-05 19:07:45 -07:00
Mitchell Hashimoto
c99b27d364 font: SharedGrid.getIndex 2024-04-05 19:00:41 -07:00
Mitchell Hashimoto
329697779a renderer/metal: convert more 2024-04-05 18:51:26 -07:00
Mitchell Hashimoto
d6c048f1e3 renderer/metal: picking away at font group => grid changes 2024-04-05 15:35:16 -07:00
Mitchell Hashimoto
04e0cd29e5 core: begin converting to SharedGridSet, renderers still broken 2024-04-05 15:25:45 -07:00
Mitchell Hashimoto
4a29da3525 font: SharedGridSet clarify memory ownership 2024-04-05 15:15:30 -07:00
Mitchell Hashimoto
719c5d7c25 font: SharedGridSet starts 2024-04-05 15:03:22 -07:00
Mitchell Hashimoto
b9471f3791 font: SharedGrid setup test infra 2024-04-05 14:39:31 -07:00
Pete Schaffner
1bf05187a6 Merge remote-tracking branch 'upstream/main' into titlebar-unzoom-button 2024-04-05 21:15:45 +02:00
Pete Schaffner
620c0f9450 Fix new tab icon color not updating sometimes 2024-04-05 21:12:11 +02:00
Mitchell Hashimoto
35c4059f18 Merge pull request #1660 from mitchellh/macos-app
macos: wrap syncAppearance in async call
2024-04-05 10:05:32 -07:00
Mitchell Hashimoto
dd0ec492e4 macos: wrap syncAppearance in async call
Fixes #1656

When called as part of window restoration AppKit has a lock, so
NSAppearance changes need to be called async.

See deadlock:

```
Thread 1 Queue : com.apple.main-thread (serial)
0	0x000000018fd63fac in __ulock_wait ()
1	0x00000001069bf720 in _dlock_wait ()
2	0x00000001069bfaec in _dispatch_group_wait_slow ()
3	0x0000000106b5f5c4 in interposed_dispatch_group_wait ()
4	0x00000001937fb1f0 in NSCGSTransactionRunPreCommitActions_ ()
5	0x00000001938f1230 in -[_NSCGSTransaction synchronize] ()
6	0x00000001938f11ac in NSCGSTransactionSynchronize ()
7	0x000000019382ad30 in +[NSCGSWindow(NSCGSSpace) isAnyWindowOnAVisibleSpace:] ()
8	0x000000019382a968 in -[NSWindow _isInSomeVisibleSpace] ()
9	0x000000019382a8e4 in -[NSWindow isOnActiveSpace] ()
10	0x0000000193db8d98 in -[NSApplication(NSApplicationAppearance_Internal) _invalidateWindowAppearances] ()
11	0x00000001938f44d4 in -[NSApplication(NSAppearanceCustomization) setAppearance:] ()
12	0x0000000102c48050 in AppDelegate.syncAppearance() at /Users/mitchellh/code/go/src/github.com/mitchellh/ghostty/macos/Sources/App/macOS/AppDelegate.swift:412
13	0x0000000102c47840 in AppDelegate.configDidReload(_:) at /Users/mitchellh/code/go/src/github.com/mitchellh/ghostty/macos/Sources/App/macOS/AppDelegate.swift:380
14	0x0000000102c43c7c in AppDelegate.applicationDidFinishLaunching(_:) at /Users/mitchellh/code/go/src/github.com/mitchellh/ghostty/macos/Sources/App/macOS/AppDelegate.swift:110
```
2024-04-05 10:01:44 -07:00
Mitchell Hashimoto
9fb883666a font: start SharedGrid 2024-04-05 09:29:41 -07:00
Mitchell Hashimoto
88db80b7b0 font: CodepointResolver test box glyph 2024-04-05 09:29:41 -07:00
Mitchell Hashimoto
b2541d24f1 font: CodepointResolver style disabling test 2024-04-05 09:29:41 -07:00
Mitchell Hashimoto
4eccd42f6b font: CodepointResolver beginnings 2024-04-05 09:29:41 -07:00
Mitchell Hashimoto
bd479db09f font: Collection setSize 2024-04-05 09:29:41 -07:00
Mitchell Hashimoto
4d70859864 font: Collection autoItalicize 2024-04-05 09:29:41 -07:00
Mitchell Hashimoto
40b4183b1f font: Collection deinit 2024-04-05 09:29:41 -07:00
Mitchell Hashimoto
0d0688404e font: Collection.getIndex 2024-04-05 09:29:41 -07:00
Mitchell Hashimoto
833d54e441 font: Collection has load options 2024-04-05 09:29:41 -07:00
Mitchell Hashimoto
89b3e3ae4e font: a mess 2024-04-05 09:29:41 -07:00
Mitchell Hashimoto
72d59956d5 font: [broken] working on extracting Collection from Group 2024-04-05 09:29:40 -07:00
Mitchell Hashimoto
7b428367df font: improve log statements a bit 2024-04-05 09:29:40 -07:00
Mitchell Hashimoto
5de88fe3f8 core: deref the font group when not used 2024-04-05 09:29:40 -07:00
Mitchell Hashimoto
6d7053a1ad core: convert surface/app to use GroupCacheSet 2024-04-05 09:29:40 -07:00
Mitchell Hashimoto
9f34edfa83 font: GroupCacheSet can initialize a group 2024-04-05 09:29:40 -07:00
Mitchell Hashimoto
2a386daa19 font: GroupCacheSet.Key has metric modifiers 2024-04-05 09:29:40 -07:00
Mitchell Hashimoto
9d8da8fcc7 font: CodepointMap hashable, use for groupcacheset 2024-04-05 09:29:40 -07:00