Commit Graph

329 Commits

Author SHA1 Message Date
Bartosz Taudul
8107754a3c Support loading trace files from URL in web version. 2026-09-12 13:08:04 +02:00
Bartosz Taudul
ed468d8625 Reject truncated trace files.
Block sizes weren't checked against the file length, so truncated files
made the decompression threads read off the mapping. Validate framing
(u32 size + payload) before the mapping and threads exist; also reject
zero-stream or empty files.
2026-09-09 01:04:55 +02:00
Bartosz Taudul
23ffe89d24 Abort pending update check on profiler exit. 2026-08-22 02:20:24 +02:00
Bartosz Taudul
246139fb04 Show the NFD error message in the file selector failure popup.
When the native dialog failed, the popup said "File selector cannot
be displayed. Check nfd library implementation for details." but never
showed any details: NFD_GetError() was never read, so the actual
failure reason (e.g. the xdg-desktop-portal lacking a FileChooser
implementation on the session) was invisible and the user was stuck
without a way to open or save traces.

Capture NFD_GetError() into a static string when
NFD_OpenDialogU8_With()/NFD_SaveDialogU8_With() return NFD_ERROR and
display it in the popup. The copy is required: the returned pointer
references NFD-internal storage (the D-Bus error message or a static
buffer) that is overwritten by the next NFD call or cleared on
shutdown. In TRACY_NO_FILESELECTOR builds no NFD exists, so the
previous fallback line is kept there.

The error is shown as a single line (TextUnformatted) rather than
wrapped: in an AlwaysAutoResize window the wrap width is derived from
the previous frame's window size, which feeds back into the auto-size
and oscillates, converging to a narrow multi-line column for a ~110
character D-Bus message.
2026-08-21 20:20:45 +02:00
Bartosz Taudul
dcc86d343b Link to cropped guadec video. 2026-08-06 21:21:26 +02:00
David McCloskey
064d400cf1 Ordering the clients in the connection dialog to prevent jumping in the list. Ordering by time still caused jumps. 2026-07-27 15:33:14 -05:00
Bartosz Taudul
7986dc18d0 Add yalter's guadec presentation to list of videos. 2026-07-23 01:53:54 +02:00
Bartosz Taudul
562fea5564 Add DPI change notification method in View. 2026-07-18 13:17:42 +02:00
Bartosz Taudul
81cb4acbe6 Use ImGui mouse button identifiers instead of raw numeric ids. 2026-07-05 18:47:38 +02:00
Bartosz Taudul
db383f738b Store window handle for file selector. 2026-07-02 01:26:58 +02:00
Bartosz Taudul
eeab1bf1a9 Border sizes are scaled by ScaleAllSizes() since ImGui 1.92.7. 2026-06-17 22:37:30 +02:00
Bartosz Taudul
f441a5070b Wrap achievements column contents into child windows. 2026-06-06 13:19:56 +02:00
Bartosz Taudul
00b6abd67b Move achievements text to markdown files. 2026-06-06 13:19:55 +02:00
Bartosz Taudul
86fbe529ed Bump font awesome to 7.2. 2026-06-05 23:28:09 +02:00
Bartosz Taudul
9da66d4c6b Add icon texture accessor. 2026-05-27 22:33:56 +02:00
Bartosz Taudul
6f91104542 Include git ref in profiler's --help output. 2026-03-28 12:44:12 +01:00
Bartosz Taudul
49590756a0 Extract broadcast message parsing into TracyBroadcast
Move broadcast message parsing logic from profiler/src/main.cpp into
server/TracyBroadcast.cpp/hpp. This reduces code duplication and enables
reuse by other tools (e.g., multi-capture).

ParseBroadcastMessage() handles all broadcast protocol versions (0-3) and
returns std::optional<BroadcastMessage>. ClientUniqueID() generates a unique
identifier from IP address and port.

Co-authored-by: Grégoire Roussel <gregoire.roussel@wandercraft.eu>
2026-03-02 19:45:48 +01:00
DaniPopes
12a964d3be fix: UI zoom scale not applying on macOS
On macOS with Retina displays, dpiScale is 2.0 but gets overridden to
userScale alone under __APPLE__. The early-return check compared
prevScale against the pre-override value (dpiScale * userScale), which
for 50% zoom evaluates to 2.0 * 0.5 = 1.0, matching the previous
prevScale of 1.0 and causing an early return before the scale change
could take effect. Moving the __APPLE__ override before the early-return
check ensures the comparison uses the actual effective scale.
2026-02-10 16:33:02 -05:00
Bartosz Taudul
a9ea7ec1c9 Workaround libc++ issues. 2026-02-01 18:57:49 +01:00
Bartosz Taudul
8f0c83dbf9 Fix View ptr assignment. 2026-02-01 18:55:53 +01:00
Bartosz Taudul
c86549a3bb View is accessed concurrently. 2026-02-01 17:29:34 +01:00
Bartosz Taudul
4fe8d16a20 Add support for source file links in markdown renderer. 2026-01-31 18:03:11 +01:00
David Kern
0a438193ba fix: 2x scaling on macos with ImGui 1.92 2026-01-15 17:01:40 -08:00
Bartosz Taudul
24ea5118e0 Rename DrawWaitingDots() to DrawWaitingDotsCentered(). 2026-01-14 02:12:00 +01:00
Bartosz Taudul
3ae9db27de Change chat icon to a two-way conversation. 2026-01-11 19:10:58 +01:00
Bartosz Taudul
63a8b4cfb4 Use proper UTF ellipsis. 2025-12-31 18:28:57 +01:00
Bartosz Taudul
adefaff0cc RasterizerDensity is obsolete now. 2025-07-13 12:49:23 +02:00
Bartosz Taudul
9ee6af33a4 Format achievements intro message with markdown. 2025-07-12 23:54:49 +02:00
Bartosz Taudul
d4094f45cc Replace all deprecated ImGui functionality. 2025-07-12 19:50:37 +02:00
Bartosz Taudul
1dd4c2d670 Update ImGui to 1.92.0-docking. 2025-07-12 14:36:47 +02:00
Bartosz Taudul
f9be40ae7c Update wording. 2025-07-12 11:50:28 +02:00
Bartosz Taudul
9c648232a8 Disable LLM integration on emscripten. 2025-07-12 11:50:18 +02:00
Bartosz Taudul
d5b3de6b3a Fix aliasing of button names in options. 2025-07-12 11:50:15 +02:00
Bartosz Taudul
fb0d4f0d82 Make config accessible to all code without extern hacks. 2025-07-12 11:50:15 +02:00
Bartosz Taudul
d1c67a93c6 Make readability.js optional. 2025-07-12 11:50:13 +02:00
Bartosz Taudul
85086c461b Separate selection of LLM and embeddings model. 2025-07-12 11:50:10 +02:00
Bartosz Taudul
b398a4641a Switch from Ollama API to OpenAI API commonly used by all LLM providers. 2025-07-12 11:50:08 +02:00
Bartosz Taudul
eae3c7ef80 Remove LLM config from global settings (leave just LLM checkbox). 2025-07-12 11:50:08 +02:00
Bartosz Taudul
2f9436577e Use global font structure. 2025-07-12 11:50:07 +02:00
Bartosz Taudul
8fd1530c8f Rework context size handling.
The user now specifies max context size to be used for all models.
2025-07-12 11:49:57 +02:00
Bartosz Taudul
571189c9da Use the intended icon for setting default ollama url. 2025-07-12 11:49:54 +02:00
Bartosz Taudul
4c7338ec1e Load LLM models in a thread. 2025-07-12 11:49:54 +02:00
Bartosz Taudul
fd291f225e Properly set state when reseting ollama URL to default. 2025-07-12 11:49:54 +02:00
Bartosz Taudul
6ce5c345a5 Don't fail when there are no models downloaded. 2025-07-12 11:49:54 +02:00
Bartosz Taudul
d50f05c00b Rework loading LLM models. 2025-07-12 11:49:53 +02:00
Bartosz Taudul
02b2882261 Display context size in model selection dropdown. 2025-07-12 11:49:53 +02:00
Bartosz Taudul
0f31d6ac1a List LLM models in global settings. 2025-07-12 11:49:53 +02:00
Bartosz Taudul
cb212567ed Store selected LLM model. 2025-07-12 11:49:53 +02:00
Bartosz Taudul
6b0589f5eb Add configuration UI for LLM. 2025-07-12 11:49:52 +02:00
Bartosz Taudul
584ad9ffde Add LLM configuration. 2025-07-12 11:49:52 +02:00