WerWolv
ce0c97e6d5
feat: Add ImGuiExt::InputPrefix
2025-08-15 17:30:07 +02:00
WerWolv
3ed7834945
feat: Allow custom UIs to be drawn in the command palette
2025-08-15 17:29:00 +02:00
WerWolv
870bce2bf8
build: Fix last MSVC build errors
2025-08-14 23:39:54 +02:00
WerWolv
5147d8ab63
fix: More missing includes
2025-08-14 22:49:02 +02:00
WerWolv
babd9584a6
build: Fix a few remaining build errors
2025-08-14 21:58:07 +02:00
WerWolv
20df023137
build: Updated libwolv
2025-08-14 21:23:27 +02:00
WerWolv
fbde2942de
build: Refactor ContentRegistry into multiple separate files
2025-08-14 21:22:03 +02:00
WerWolv
d920718b44
build: Refactor ImHexAPI into multiple separate files
2025-08-14 20:16:40 +02:00
WerWolv
4ca429e389
impr: Allow post-processing shaders to be set dynamically
2025-08-14 17:11:37 +02:00
WerWolv
3cb5dd226c
build: Updated ImGui to v1.92.2b
2025-08-13 22:46:27 +02:00
WerWolv
5fa9aaa6a6
fix: Crash when opening provider after warm-restarting ImHex
2025-08-13 20:35:25 +02:00
WerWolv
63711f652f
fix: Fonts being scaled twice as big by default on macOS
2025-08-13 20:24:00 +02:00
WerWolv
d07b4417d7
build: Updated libwolv
2025-08-13 17:32:52 +02:00
WerWolv
95ae5a26ed
fix: Don't load workspaces from non-writable places since they can't be updated then
2025-08-13 17:32:04 +02:00
WerWolv
50b25882cd
fix: MSVC build errors
2025-08-12 19:21:00 +02:00
WerWolv
28bfceab6c
build: Updated ImGui to v1.92.2
2025-08-12 18:01:04 +02:00
WerWolv
6febe9982b
impr: Significantly reduce memory usage
2025-08-12 18:00:47 +02:00
WerWolv
b5a3a8b4c2
impr: Rewrite Localization Manager to use more standard format and load localizations on the fly
2025-08-12 18:00:10 +02:00
WerWolv
25c8f4b588
fix: Jump to certain array-member patterns not working
...
Fixes #2398
2025-08-11 21:46:47 +02:00
WerWolv
09b2e20a3d
impr: Save most of the hex editor settings
...
#2398
2025-08-11 21:03:18 +02:00
WerWolv
ad2a36676c
fix: Issues when running the updater on Linux
2025-08-11 17:44:49 +02:00
paxcut
50f1fe2b2d
improv: moved text editor to the ui plugin. ( #2397 )
...
Reorganized source code into files named in the fashion of imhex and
split large functions into smaller ones. Moved all function definitions
out of the header except for one-liners. All variable types were
switched to use imHex standard (u8,...) and removed duplicated functions
that were needed when the text editor was isolated.
Minor improvements to find/replace while making sure they still worked
with utf-8 chars.
2025-08-10 14:35:21 -07:00
WerWolv
75e73ddcd9
fix: Properly clean up plugin features
2025-08-10 22:45:50 +02:00
WerWolv
23d673f920
fix: Multiple FreeBSD build and run errors
2025-08-10 22:38:12 +02:00
WerWolv
73a59fe5c1
impr: Modernize Tools view
2025-08-10 12:36:11 +02:00
WerWolv
5028b354cc
impr: Clean up window setup code
2025-08-10 12:34:03 +02:00
WerWolv
66e407549e
fix: Missing return value in update function
2025-08-09 23:49:59 +02:00
WerWolv
0870ab4d3c
feat: Add option to check for updates to the Extras menu
2025-08-09 23:46:15 +02:00
WerWolv
6be0eeff72
impr: Allow more release types to be updated
2025-08-09 23:31:07 +02:00
WerWolv
f3d9f224b7
fix: Fixes for previous PR merge
2025-08-09 19:53:22 +02:00
Zephyr Lykos
ae8a12fa27
impr: Show external frames when using std::stacktrace backend ( #2302 )
...
<!--
Please provide as much information as possible about what your PR aims
to do.
PRs with no description will most likely be closed until more
information is provided.
If you're planing on changing fundamental behaviour or add big new
features, please open a GitHub Issue first before starting to work on
it.
If it's not something big and you still want to contact us about it,
feel free to do so !
-->
### Problem description
`std::stacktrace` backend in `hex::trace` does not show frames for
external libraries.
### Implementation description
If `dlfcn.h` is available, use `dladdr` to retrieve external symbol
information.
### Screenshots
Before:
```
[02:33:46] [FATAL] [main | Main] Printing stacktrace using implementation 'std::stacktrace'
[02:33:46] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/lib/trace/source/stacktrace.cpp:34) | hex::trace::getStackTrace()
[02:33:46] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/crash_handlers.cpp:75) | printStackTrace
[02:33:46] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/crash_handlers.cpp:125) | hex::crash::handleCrash(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
[02:33:46] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/crash_handlers.cpp:211) | operator()
[02:33:46] [FATAL] [main | Main] () | ??
[02:33:46] [FATAL] [main | Main] () | ??
[02:33:46] [FATAL] [main | Main] () | ??
[02:33:46] [FATAL] [main | Main] () | ??
[02:33:46] [FATAL] [main | Main] () | ??
[02:33:46] [FATAL] [main | Main] () | ??
[02:33:46] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/lib/third_party/imgui/backend/source/imgui_impl_glfw.cpp:844) | ImGui_ImplGlfw_UpdateMouseData
[02:33:46] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/window/window.cpp:353) | hex::Window::frameBegin()
[02:33:46] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/window/window.cpp:241) | hex::Window::fullFrame()
[02:33:46] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/window/window.cpp:297) | hex::Window::loop()
[02:33:46] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/init/run/native.cpp:43) | hex::init::runImHex()
[02:33:46] [FATAL] [main | Main] () | ??
[02:33:46] [FATAL] [main | Main] () | ??
[02:33:47] [FATAL] [main | Main] () | ??
[02:33:47] [FATAL] [main | Main] () | ??
```
After:
```
[02:30:19] [FATAL] [main | Main] Printing stacktrace using implementation 'std::stacktrace'
[02:30:19] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/lib/trace/source/stacktrace.cpp:41) | hex::trace::getStackTrace()
[02:30:19] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/crash_handlers.cpp:75) | printStackTrace
[02:30:19] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/crash_handlers.cpp:125) | hex::crash::handleCrash(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
[02:30:19] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/crash_handlers.cpp:211) | operator()
[02:30:19] [FATAL] [main | Main] (/lib64/libc.so.6) | libc.so.6+0x00019bef
[02:30:19] [FATAL] [main | Main] (/lib64/libc.so.6) | libc.so.6+0x00073c2c
[02:30:19] [FATAL] [main | Main] (/lib64/libc.so.6) | gsignal+0x1d
[02:30:19] [FATAL] [main | Main] (/lib64/libc.so.6) | abort+0x25
[02:30:19] [FATAL] [main | Main] (/lib64/libc.so.6) | libc.so.6+0x00001638
[02:30:19] [FATAL] [main | Main] (/lib64/libglfw.so.3) | libglfw.so.3+0x00002275
[02:30:19] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/lib/third_party/imgui/backend/source/imgui_impl_glfw.cpp:844) | ImGui_ImplGlfw_UpdateMouseData
[02:30:19] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/window/window.cpp:353) | hex::Window::frameBegin()
[02:30:19] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/window/window.cpp:241) | hex::Window::fullFrame()
[02:30:19] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/window/window.cpp:297) | hex::Window::loop()
[02:30:19] [FATAL] [main | Main] (/home/mochaa/ghq/github.com/WerWolv/ImHex/main/gui/source/init/run/native.cpp:43) | hex::init::runImHex()
[02:30:19] [FATAL] [main | Main] (/lib64/libc.so.6) | libc.so.6+0x000035b4
[02:30:19] [FATAL] [main | Main] (/lib64/libc.so.6) | __libc_start_main+0x87
[02:30:19] [FATAL] [main | Main] (./build/imhex) | imhex+0x0000cd94
[02:30:19] [FATAL] [main | Main] (??) | +0xffffffffffffffff
```
### Additional things
None
2025-08-09 19:46:01 +02:00
WerWolv
d925c8216d
impr: Allow ImHex to be used without subpixel rendering on Windows if only OpenGL 3 is available
2025-08-09 19:13:45 +02:00
WerWolv
e6f46747b6
fix: Add missing Updates path to About screen
2025-08-09 17:59:01 +02:00
WerWolv
411e971ba7
impr: Properly delete old update files
2025-08-09 14:28:48 +02:00
WerWolv
dbc5819bc4
fix: Handling of unchanged shortcut keys
2025-08-09 14:23:36 +02:00
WerWolv
fd2d50508b
fix: Update nightly update detection logic to work with release changes
2025-08-09 12:10:25 +02:00
paxcut
14ee688629
fix: fixes for issues #2388 and #2389 . ( #2392 )
...
Tab insertion was not being recorded for undoing and the shift-backspace
shortcut did not exist. This PR addresses both issues directly.
2025-08-09 03:03:08 -07:00
WerWolv
cd5b16cce5
fix: Another missing include
2025-08-09 10:34:09 +02:00
WerWolv
cc1ac95af6
fix: Missing include
2025-08-09 10:23:35 +02:00
WerWolv
59c6d3090b
fix: Clang doesn't support std::chrono::parse() yet
2025-08-08 23:32:07 +02:00
WerWolv
ce66f3a98a
build: Fix remaining missing includes
2025-08-08 22:56:21 +02:00
WerWolv
ad87f005fe
feat: Added command line palette option to open/focus views
2025-08-08 22:36:46 +02:00
paxcut
df1e97af0a
improv: further reformatting of text editor in an effort to bring it into the ui plugin. ( #2385 )
...
Added the ui namespace and broke the main rendering function into a set
of smaller functions. Reorganized the header code separating functions
into rough groups that eventually will be in separate files.
2025-08-08 12:47:52 -07:00
WerWolv
82ceb2e11f
impr: Better auto updater, added support for updating nightlies
2025-08-08 21:25:52 +02:00
WerWolv
725462b222
fix: Diffing task not being properly cancelable
...
Fixes #2383
2025-08-08 17:47:15 +02:00
WerWolv
d39d33de32
fix: Inconsistent look of welcome screen hyperlinks
2025-08-07 17:09:07 +02:00
WerWolv
7c07f70afd
fix: AlmaLinux doesn't seem to support fmt::println yet
2025-08-07 17:08:38 +02:00
WerWolv
de67d5942b
fix: Broken formatting in unit tests
2025-08-07 08:26:35 +02:00
WerWolv
f358069cc1
feat: Allow plugins to add their own welcome screen quick settings, improve UI
2025-08-06 22:51:59 +02:00
aoqia194
cf87294a8c
feat: Add EventViewClosed event ( #2377 )
...
Where one door opens, another one closes (said someone) and in this
situation i mean view, because there's no event for closing a view only
opening one, so please add this :c
### Problem description
Simply adds an **EventViewClosed** to match the pre-existing
**EventViewOpened**. Also fixes the issue where EventViewOpened wouldn't
trigger for windows that were popups (even if they are technically a
View.
### Implementation description
I mirrored the current functionality of EventViewOpened for closing.
---------
Co-authored-by: paxcut <53811119+paxcut@users.noreply.github.com >
2025-08-06 22:22:46 +02:00