2525 Commits

Author SHA1 Message Date
paxcut
854535fec6 fix: Some variables are incorrectly highlighted as errors (#2690)
Non-auto function arguments of custom types defined inside a namespace
made the highlighter unable to check if member uses inside the function
are valid. Argument types were not parsed as fully qualified types and
the problem is corrected by making sure that fully qualified names are
used when they are found in function arguments.

An example of a pattern that shows the error is id3.hexpat in the which
uses unqualified types. In order to obtain the correct highlighting then
you have to add the namespace to all custom types even if they are being
used inside the namespace. Type names without namespace are considered
by the syntax highlighting code as belonging to the global scope
regardless of where the use takes place.
2026-03-20 10:45:01 -07:00
paxcut
432e16e0c4 fix: pattern editor find/replace. (#2686)
A recent commit broke the pattern editor popups for fin/replace and goto
line. The problem was cause by changes to the function that returns the
name of the currently focused subwindow using a function that only
updates when ImHex main window losses focus. The commit was aimed at
fixing evaluation of shortcuts in pattern data view and pattern editor
simultaneously but missed to fix some shortcuts like cut and paste.

The fix substitutes how the subwindow is first selected by using the
result of the subwindow selection used by imhex to insure that menus and
other ui components don't steal focus from views. The function that
returns the name of the current focused subwindow was changed to use
this value. This fixes both the window popups of pattern editor and all
the shortcut duplications.
2026-03-14 16:59:32 -07:00
paxcut
f3ccbb9b84 fix: data inspector crash (#2685)
When ImHex starts it crashes from a segv fault caused by uninitialized
m_selectedRegion member.
Fixed by adding default initializer.
2026-03-13 19:21:38 -07:00
WerWolv
a4af283a37 impr: Allow data inspector shortcuts to work when hex editor is selected 2026-03-13 21:11:10 +01:00
WerWolv
ea0b97a066 fix: Main menu item overflow not showing all menus when some are hidden 2026-03-13 21:01:16 +01:00
WerWolv
e668feb807 feat: Add setting to only show data inspector rows matching exact size
#2684
2026-03-13 21:01:16 +01:00
paxcut
fbd6d6b9fc fix: popup when highlighting was cancelled (#2678)
Popup was caused by old code that set the interrupt flag when the
exception was caught in the thread and was already fixed in the code
folding branch.
2026-03-09 21:46:51 -07:00
WerWolv
aa5a83444d impr: Add Create new file and Open file menu entries to all views again 2026-03-09 11:53:25 +01:00
WerWolv
d25c80c0a5 fix: Shortcuts displayed in main menu not matching actual shortcuts 2026-03-09 11:52:08 +01:00
WerWolv
6f83b050cd fix: Pattern editor shortcuts applying when text input in pattern data view is selected 2026-03-09 10:46:55 +01:00
WerWolv
72e177aafc fix: Exception popup when canceling highlighting 2026-03-09 10:46:55 +01:00
Stephen Hewitt
5648378837 fix: Use UTC for data inspector date/time display (#2675)
time_t should not be converted to local time zone.
2026-03-08 21:29:42 +01:00
WerWolv
c1cdef7ca1 fix: Taskbar menu items showing up in command palette 2026-03-03 22:45:13 +01:00
WerWolv
380b1dbce3 fix: Menu bar focus issues 2026-03-03 13:45:54 +01:00
WerWolv
04a8bd6798 fix: Cached provider invalidation on reload not being done correctly 2026-03-02 10:07:57 +01:00
qux-bbb
ffa8b0d0db lang: Update zh_CN.json (#2580) 2026-03-01 09:37:24 +01:00
WerWolvTranslationBot
ff65217b7e lang: Translations update from Weblate (#2624)
Translations update from [Weblate](https://weblate.werwolv.net) for
[ImHex/Builtin](https://weblate.werwolv.net/projects/imhex/builtin/).


It also includes following components:

* [ImHex/Diffing](https://weblate.werwolv.net/projects/imhex/diffing/)

* [ImHex/UI](https://weblate.werwolv.net/projects/imhex/ui/)

* [ImHex/Fonts](https://weblate.werwolv.net/projects/imhex/fonts/)

*
[ImHex/Disassembler](https://weblate.werwolv.net/projects/imhex/disassembler/)

* [ImHex/Hashes](https://weblate.werwolv.net/projects/imhex/hashes/)

* [ImHex/Remote](https://weblate.werwolv.net/projects/imhex/remote/)

* [ImHex/Script
Loader](https://weblate.werwolv.net/projects/imhex/script-loader/)

*
[ImHex/Visualizers](https://weblate.werwolv.net/projects/imhex/visualizers/)

* [ImHex/Yara
Rules](https://weblate.werwolv.net/projects/imhex/yara-rules/)

* [ImHex/Windows](https://weblate.werwolv.net/projects/imhex/windows/)



Current translation status:

![Weblate translation
status](https://weblate.werwolv.net/widgets/imhex/-/builtin/horizontal-auto.svg)

Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: PICOPress <choys041011@gmail.com>
Co-authored-by: Yaroslav <mrikso821@gmail.com>
2026-03-01 09:36:14 +01:00
paxcut
800a24b42e fix: Dirty projects on load. (#2649)
When a project is loaded it is set to dirty without any changes so that
it goes through the steps that patterns with changes go through. The fix
uses a different starting step that doesn't set the dirty flags when
changing providers or loading projects.
2026-02-09 20:21:51 -07:00
WerWolv
d39d107de4 fix: Copy As -> C# Array producing invalid syntax
Fixes #2648
2026-02-06 21:44:42 +01:00
Nemoumbra
70fdbd4a48 feat: Add request restart option to debug menu (#2636)
<!--
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
<!-- Describe the bug that you fixed/feature request that you
implemented, or link to an existing issue describing it -->
Hopefully this will help us debug the bugs that appear once ImHex
restarts a little easier.

### Screenshots
<!-- If your change is visual, take a screenshot showing it. Ideally,
make before/after sceenshots -->
<img width="372" height="182" alt="image"
src="https://github.com/user-attachments/assets/1f27443e-9eaa-465a-b545-c2bbf0b56ca4"
/>
2026-01-29 21:16:55 +01:00
WerWolv
71c71c5bbf fix: Merge error 2026-01-29 20:18:17 +01:00
WerWolv
ade8c8f68d feat: Add Open Source File option to custom data inspector rows 2026-01-29 19:54:53 +01:00
WerWolv
16b02caf7a fix: Clicking on data inspector row clearing data inspector window if required size is zero 2026-01-29 19:54:36 +01:00
WerWolv
dc1c205fb1 fix: Inverted logic for custom inspector row evaluation 2026-01-29 19:53:48 +01:00
WerWolv
b974533f96 lang: Remove duplicate entry 2026-01-29 19:53:09 +01:00
WerWolv
b9e0a9f0e6 fix: Code indentation 2026-01-29 19:43:37 +01:00
WerWolvTranslationBot
06f4d12f10 lang: Translations update from Weblate (#2621)
Translations update from [Weblate](https://weblate.werwolv.net) for
[ImHex/Builtin](https://weblate.werwolv.net/projects/imhex/builtin/).


It also includes following components:

* [ImHex/Diffing](https://weblate.werwolv.net/projects/imhex/diffing/)

* [ImHex/UI](https://weblate.werwolv.net/projects/imhex/ui/)

* [ImHex/Fonts](https://weblate.werwolv.net/projects/imhex/fonts/)

*
[ImHex/Disassembler](https://weblate.werwolv.net/projects/imhex/disassembler/)

* [ImHex/Hashes](https://weblate.werwolv.net/projects/imhex/hashes/)

* [ImHex/Remote](https://weblate.werwolv.net/projects/imhex/remote/)

* [ImHex/Script
Loader](https://weblate.werwolv.net/projects/imhex/script-loader/)

*
[ImHex/Visualizers](https://weblate.werwolv.net/projects/imhex/visualizers/)

* [ImHex/Yara
Rules](https://weblate.werwolv.net/projects/imhex/yara-rules/)

* [ImHex/Windows](https://weblate.werwolv.net/projects/imhex/windows/)



Current translation status:

![Weblate translation
status](https://weblate.werwolv.net/widgets/imhex/-/builtin/horizontal-auto.svg)

Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: Rutar Andriy <RutarAndriy@gmail.com>
Co-authored-by: Yaroslav <mrikso821@gmail.com>
2026-01-17 21:45:41 +01:00
WerWolv
684c2e66fb fix: Ranges are still not available everywhere 2026-01-17 21:13:04 +01:00
WerWolv
4a311ed69f fix: Multiple issues with undo/redo stack handling 2026-01-17 21:03:36 +01:00
WerWolvTranslationBot
9a058efc79 lang: Translations update from Weblate (#2553)
Translations update from [Weblate](https://weblate.werwolv.net) for
[ImHex/Builtin](https://weblate.werwolv.net/projects/imhex/builtin/).


It also includes following components:

* [ImHex/Diffing](https://weblate.werwolv.net/projects/imhex/diffing/)

* [ImHex/UI](https://weblate.werwolv.net/projects/imhex/ui/)

*
[ImHex/Disassembler](https://weblate.werwolv.net/projects/imhex/disassembler/)

* [ImHex/Yara
Rules](https://weblate.werwolv.net/projects/imhex/yara-rules/)

* [ImHex/Fonts](https://weblate.werwolv.net/projects/imhex/fonts/)

* [ImHex/Hashes](https://weblate.werwolv.net/projects/imhex/hashes/)

* [ImHex/Remote](https://weblate.werwolv.net/projects/imhex/remote/)

* [ImHex/Script
Loader](https://weblate.werwolv.net/projects/imhex/script-loader/)

*
[ImHex/Visualizers](https://weblate.werwolv.net/projects/imhex/visualizers/)

* [ImHex/Windows](https://weblate.werwolv.net/projects/imhex/windows/)



Current translation status:

![Weblate translation
status](https://weblate.werwolv.net/widgets/imhex/-/builtin/horizontal-auto.svg)

Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: MrClock <mrclock8163@gmail.com>
2026-01-12 23:26:15 +01:00
WerWolv
f4b2be9334 chore: Cleanup logs slightly 2026-01-07 21:27:41 +01:00
WerWolv
550fe8e4aa impr: Add MCP Client information to footer icon tooltip 2026-01-07 17:12:40 +01:00
WerWolv
2064aea3b6 fix: ImHex processes getting stuck in the background
Fixes #2611
2026-01-07 17:12:17 +01:00
WerWolv
3411bc4577 fix: Unused variable 2026-01-07 11:13:52 +01:00
WerWolv
6eedb469e9 fix: Notifications on Web build causing exceptions 2026-01-07 09:45:30 +01:00
paxcut
90d8e03f2c Fixes by @AkiSakurai for bug thats caused crashing ImHex when creating recursive inheritances. (#2612)
The previous code I approved was wrong and caused ImHex to grow until
computer froze. This PR is a copy of the original fix in PR #2546 by
@AkiSakurai
2026-01-05 16:57:04 -07:00
Aki Sakurai
63fd61e245 Fix crash in Pattern Language syntax highlighting for self-inheriting structs (#2546)
``` rust
struct Rec : Rec {
};
```

Prevent infinite recursion in appendInheritances by erasing processed
inheritance entries during traversal, and safely iterate over
m_inheritances in appendInheritances to avoid
modification-during-iteration issues.

Co-authored-by: paxcut <53811119+paxcut@users.noreply.github.com>
2026-01-05 03:11:21 -07:00
WerWolv
712a125be7 fix: listxattrs signature being different between Linux and macOS 2026-01-03 23:52:42 +01:00
WerWolv
e8a6e102c3 feat: Add xatts to file info display 2026-01-03 22:43:34 +01:00
WerWolv
b2cc09852d fix: Weirdly worded pattern editor help message 2026-01-03 22:40:45 +01:00
WerWolv
60627b8325 impr: Only add pattern editor help text to first opened data source 2026-01-03 22:38:36 +01:00
WerWolv
bfa807ca8b feat: Add data inspector option to reverse bit order 2026-01-03 12:04:51 +01:00
WerWolv
3274649b77 fix: Task finished notification showing up regardless of focus state on Windows 2026-01-03 10:48:46 +01:00
paxcut
5756105347 fix: Text highlighter crash (#2595)
The assumption that the number of lines of colors will be equal to the
number of lines in the input signal is incorrect. As issue #2594 shows,
erroneous input can cause the lexer to end processing the input file
prematurely thus being unable to create tokens past the line where the
error occurred which in turn implies that no colors can be found beyond
those lines.

To fix the crash (the underlying problem is user caused and can't be
fixed) is to use the size of the vectors containing the first token
index of each line since that size must be equal to the number of lines
stored in token sequence.

Fixes #2594
2026-01-02 16:04:35 +01:00
WerWolv
a628784c6d fix: Empty entry showing up in main menu bar 2025-12-30 19:12:17 +01:00
WerWolv
5b9b5d4f1f fix: Another use of ssize_t 2025-12-30 14:35:56 +01:00
WerWolv
54d9f8ec5c fix: Build on MSVC, properly handle empty files 2025-12-30 10:30:14 +01:00
WerWolv
73a17308cc feat: Allow opening special files with no specific size 2025-12-30 09:34:45 +01:00
WerWolv
40b604c6e4 fix: ImGui-internal shortcuts not working correctly with native macOS menu bar enabled
(cherry picked from commit f0f6a22391)
2025-12-29 19:32:25 +01:00
WerWolv
53153ca3e0 fix: Merge messup 2025-12-29 13:27:25 +01:00