WerWolv
7685a22c5f
fix: Crash when pressing delete twice when data processor nodes are selected
2023-09-04 19:58:55 +02:00
WerWolv
2b8a9db0f0
impr: Clean up default layout file
2023-09-03 22:45:03 +02:00
WerWolv
4ff25819c2
fix: Pasting not working correctly on non-zero pages
...
Fixes #1291
2023-09-03 16:25:51 +02:00
WerWolv
563ff5a774
fix: Future proof the previous fix
2023-09-03 16:18:29 +02:00
WerWolv
b042b8327a
fix: Crash when re-opening a custom section window while having a selection in it
2023-09-03 16:09:06 +02:00
WerWolv
971c8739ca
fix: Potential crash when preprocessing invalid pattern file when loading a file
2023-09-03 15:49:27 +02:00
WerWolv
26f4aa0d9f
fix: Buffer to integer node not working correctly
2023-09-03 15:41:00 +02:00
WerWolv
b2d1568abb
fix: First overlay being assigned to all end nodes
2023-09-03 13:44:13 +02:00
WerWolv
632f388ece
impr: Make --pl subcommand automatically register ImHex's include dirs
2023-09-03 12:25:00 +02:00
WerWolv
0bbd21f25a
fix: Build issues with older standard libraries
2023-09-03 11:44:48 +02:00
WerWolv
367c4ec9c8
impr: More view comments and refactoring
2023-09-03 10:27:03 +02:00
WerWolv
5538307838
impr: Make achievement popups stay up for longer
2023-09-03 10:26:40 +02:00
iTrooz
fc1ad592cb
feat: Adapt content store view for new API contents ( #1268 )
2023-09-02 18:36:34 +02:00
Lennard Fonteijn
f725d763d1
feat: Remember bytes per row in Hex Editor ( #1276 )
2023-09-02 17:52:05 +02:00
iTrooz
c2fe9f0966
fix: verify that file names queried from the store do not allow path traversal ( #1277 )
2023-09-02 17:51:21 +02:00
WerWolv
58cef2361b
impr: Added hint when patterns are still loading
2023-08-30 10:04:06 +02:00
WerWolv
60649d1cba
fix: Occasional crash when using favorites
2023-08-30 09:18:24 +02:00
WerWolv
ea9457c08c
patterns: Added [[hex::favorite]]
attribute
2023-08-29 21:46:08 +02:00
WerWolv
4288f876e2
impr: Added lots of comments and cleaned up many views
2023-08-29 12:14:12 +02:00
iTrooz
10ad239fb9
fix: add _lang suffix to "Load into memory" localization string ( #1267 )
2023-08-28 02:21:41 +02:00
WerWolv
550392c8d6
fix: Texture loading from romfs
2023-08-26 23:43:35 +02:00
WerWolv
ba66005585
impr: Various code cleanup
2023-08-26 12:54:52 +02:00
Justus Garbe
bfc835fc54
fix: add new capstone options and fixed overextending name array
2023-08-26 12:21:44 +02:00
iTrooz
32d6ac2241
feat: move PerProvider data to new provider when saving memory provider into file provider ( #1264 )
2023-08-26 01:47:44 +02:00
iTrooz
175e66a60e
feat: Do not save memory providers as recent entries ( #1259 )
2023-08-25 15:35:15 +02:00
WerWolv
d50fb8d17b
fix: Crash when deleting items from file combiner in some cases
2023-08-19 19:18:57 +02:00
WerWolv
83e42ddfd9
fix: Don't show accept pattern popup if no patterns are available
2023-08-19 19:12:48 +02:00
WerWolv
e70ec10b0e
impr: Allow the file combiner tool to select multiple files at once
2023-08-19 19:11:38 +02:00
WerWolv
b4401b7df1
fix: Rest in peace, Anonfiles
2023-08-17 09:27:14 +02:00
lorsanta
84ceb45129
impr: Update timestamp when saving a file in windows ( #1248 )
...
### Problem description
Ref #1210
### Implementation description
Call
[`SetFileTime()`](https://learn.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-setfiletime )
everytime `FileProvider::save()` is called.
### Additional things
I moved the call to `File::close()` from `FileProvider::open()` to
`FileProvider::close()` because `SetFileTime()` requires a file handler
as input, so I need `File::m_file` to be valid.
2023-08-16 23:18:16 +02:00
WerWolv
8a2afd1c05
fix: Crashes when having pattern auto evaluation enabled
2023-08-16 22:26:05 +02:00
Justus Garbe
2059ad82c3
fix: Update title on project save
2023-08-13 23:36:50 +02:00
Lennard Fonteijn
c25aad552d
feat: Selectable demangler ( #1250 )
...
Supersedes #1240 - depends on #1249 and
https://github.com/WerWolv/libwolv/pull/8 to work.
2023-08-13 21:51:05 +02:00
Lennard Fonteijn
896091b124
feat: Added toggle for human-readable units in hex editor footer ( #1251 )
...
Finalization of #1245 by adding a toggle to the hex editor itself, issue
can be closed afterwards.
2023-08-13 19:08:09 +02:00
Lennard Fonteijn
d2e6d8e4d9
Added ImGui extension to create single- and multiline formatted selec… ( #1249 )
...
(Partial) implementation of #1245 with additional functionality to
supersede PR #1240 .
2023-08-13 17:08:17 +02:00
WerWolv
65c56a887c
feat: Added option to load files into memory
2023-08-09 20:04:12 +02:00
WerWolv
882849e73c
fix: Highlighting of found elements not being cleared correctly
2023-08-09 20:01:57 +02:00
WerWolv
a6aafa8cd6
feat: Allow memory files to be renamed
2023-08-08 19:04:00 +02:00
WerWolv
ba9227c1e0
feat: Properly save memory provider data
2023-08-06 21:48:08 +02:00
Nik
e77f138514
feat: Added Achievements ( #1230 )
...
This PR adds Achievements to ImHex that serve as both a guide and a fun
way to learn more about ImHex and reverse engineering
2023-08-06 21:33:15 +02:00
WerWolv
f2cfc70eca
fix: Highest / Lowest entropy block address being wrong
2023-08-06 01:51:01 +02:00
WerWolv
2082781cf5
fix: Correct endianess of CRC hashes
...
Fixes #1225
2023-08-04 16:05:21 +02:00
WerWolv
a61c93e99c
impr: Better tooltip for update all button in content store
...
#1222
2023-08-03 21:50:28 +02:00
WerWolv
79eb53eb0d
fix: --pl command line interface not working correctly
2023-08-02 20:30:13 +02:00
WerWolv
05ca498343
feat: Added Fill option to hex editor
2023-08-02 13:09:21 +02:00
WerWolv
fbd4bc337b
fix: Crash when trying to format invalid timestamps
2023-08-02 12:52:10 +02:00
WerWolv
89115bcdde
impr: Added better data processor workspace close button
2023-08-02 12:51:58 +02:00
WerWolv
954c0d5bda
fix: Writing to hex cells in big endian mode writing the value as little endian
...
Fixes #1219
2023-08-02 12:51:33 +02:00
WerWolv
bf8924ae0c
feat: Added support for string in/out variables
2023-08-02 12:51:02 +02:00
WerWolv
106e669512
feat: Added setting to remember and restore window position and size
...
Closes #1215
#944
2023-07-31 11:17:37 +02:00
WerWolv
b469e68ddb
fix: Pattern console not updating correctly
2023-07-30 21:35:31 +02:00
WerWolv
2e5a51bb05
patterns: Updated pattern language
2023-07-30 00:44:09 +02:00
WerWolv
d079b8c3bb
impr: Hide column headers when hiding ASCII or custom encoding column
2023-07-28 10:31:44 +02:00
WerWolv
33f0d59545
fix: Bad formatting of project open error popup
2023-07-28 00:01:49 +02:00
WerWolv
e829c407e3
fix: Writing behaving weirdly when using a custom base address
2023-07-27 02:05:35 +02:00
WerWolv
94a02c4b6d
build: Streamlined plugin creation process
2023-07-27 00:53:04 +02:00
WerWolv
4792a29fac
fix: Crash when passing invalid parameters to sound visualizer
...
Fixes #1208
2023-07-26 22:13:39 +02:00
WerWolv
d0a5c144e6
patterns: Updated pattern language
2023-07-26 00:23:09 +02:00
WerWolv
4d4f223357
impr: Improve frame rate when lots of bytes are highlighted
2023-07-24 23:24:31 +02:00
WerWolv
a032bfa0f5
feat: Added support for hashing arbitrary strings using the string view
2023-07-24 16:58:52 +02:00
WerWolv
ff8946b851
fix: Pattern array chunks being rendered wrongly
2023-07-24 16:55:35 +02:00
WerWolv
b8d5e1e9c5
feat: Added built-in logging console
2023-07-23 23:37:47 +02:00
WerWolv
fdd2e1fcde
patterns: Added [[hex::spec_name]]
2023-07-23 09:14:00 +02:00
WerWolv
564ae6dd8c
fix: Crash when loading bad font
2023-07-22 19:35:58 +02:00
WerWolv
8aec382440
fix: Loading of plugins and localizations after restart
2023-07-22 18:38:14 +02:00
WerWolv
a99f8f78d0
fix: Crash when trying to paste invalid data
2023-07-22 18:21:58 +02:00
WerWolv
f6bbfd7283
impr: Properly print new line characters in cli
2023-07-21 15:17:21 +02:00
WerWolvTranslationBot
d3f493b6c2
lang: Translations update from Weblate ( #1200 )
...
Translations update from [Weblate](https://weblate.werwolv.net ) for
[ImHex/Built-in
Plugin](https://weblate.werwolv.net/projects/imhex/built-in-plugin/ ).
It also includes following components:
* [ImHex/Windows
Plugin](https://weblate.werwolv.net/projects/imhex/windows-plugin/ )
Current translation status:
![Weblate translation
status](https://weblate.werwolv.net/widgets/imhex/-/built-in-plugin/horizontal-auto.svg )
Co-authored-by: Justus Garbe <gihihoh@gmail.com>
2023-07-21 14:30:27 +02:00
WerWolv
bd8868d2c8
impr: Added better help output for cli
2023-07-21 14:28:15 +02:00
WerWolv
ee41a5a046
fix: Selection changes not being handled correctly
2023-07-21 14:22:53 +02:00
WerWolv
18dd754b31
impr: Better handling of hex editor selections
2023-07-20 20:58:28 +02:00
WerWolv
3c97759aa7
fix: Crash when trying to load files with invalid paths
2023-07-19 22:35:55 +02:00
WerWolv
2d4f971d10
impr: Disable endianess switch in hex editor when visualizer only uses one byte
2023-07-18 14:23:02 +02:00
WerWolv
90267ec356
impr: Allow hex editor view to be scrolled slightly past the end
2023-07-18 14:22:39 +02:00
WerWolvTranslationBot
7fc53bf861
lang: Translations update from Weblate ( #1199 )
...
Translations update from [Weblate](https://weblate.werwolv.net ) for
[ImHex/Built-in
Plugin](https://weblate.werwolv.net/projects/imhex/built-in-plugin/ ).
It also includes following components:
* [ImHex/Windows
Plugin](https://weblate.werwolv.net/projects/imhex/windows-plugin/ )
Current translation status:
![Weblate translation
status](https://weblate.werwolv.net/widgets/imhex/-/built-in-plugin/horizontal-auto.svg )
---------
Co-authored-by: Justus Garbe <gihihoh@gmail.com>
Co-authored-by: xtex <xtexchooser@duck.com>
2023-07-17 16:40:40 +02:00
WerWolv
b9c2955b88
fix: Use ANSI escape codes for --plugins
2023-07-17 11:59:21 +02:00
WerWolv
6d7f217e2a
patterns: Updated pattern language
2023-07-17 11:20:17 +02:00
WerWolv
a83ca3c228
feat: Added --pl and --magic command
2023-07-17 10:43:29 +02:00
WerWolv
b9ec1a150d
fix: Wrong libfmt header being included
2023-07-17 09:12:22 +02:00
classabbyamp
d9a4906b3c
impr: Clarify portal error message ( #1197 )
...
<!--
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 -->
see #723
### Implementation description
<!-- Explain what you did to correct the problem -->
`xdg-desktop-portal-wlr` is not relevant because it does not provide the
FileChooser interface.
`xdg-desktop-portal` needs the `WAYLAND_DISPLAY` env var on wayland and
the `DISPLAY` and `XAUTHORITY` env vars on xorg. If the dbus user
session bus is not run in a way that it already gets those variables,
they must be given via `dbus-update-activation-environment(1)`.
### Screenshots
<!-- If your change is visual, take a screenshot showing it. Ideally,
make before/after sceenshots -->
### Additional things
<!-- Anything else you would like to say -->
fixes #723
2023-07-17 09:11:40 +02:00
WerWolv
e9450b490f
feat: Added --plugin, --calc, --hash, --encode and --decode subcommands
2023-07-16 23:46:41 +02:00
WerWolv
52c517d38d
fix: Potential crash when loading incorrect data processor node files
2023-07-16 20:41:06 +02:00
WerWolv
aac9bf3896
fix: Crash when using "Open in new View" button in bookmarks
2023-07-16 20:35:10 +02:00
WerWolv
54891c6d8f
impr: Added proper localization for new visualizer endianess toggle
2023-07-16 20:25:31 +02:00
WerWolv
7631778edb
feat: Added support for big endian in data visualizers
2023-07-16 19:53:02 +02:00
Justus Garbe
1a3debd6c9
fix: Raw Disk Provider not working correctly on Linux and macOS ( #1195 )
...
<!--
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
- Fixed disk provider not working for linux
### Implementation description
- Used ioctl instead of fstat
- Fixed buffer issues
---------
Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-07-16 18:18:41 +02:00
WerWolv
893b06c78b
feat: Allow hex editor editing mode to be entered when pressing Enter
2023-07-16 18:14:48 +02:00
WerWolv
3a775e982f
build: Removed outdated and dangerous linker flags in plugins
2023-07-15 10:02:34 +02:00
WerWolv
c1cdab72ef
fix: Weird behaviour when trying to open a non-existing file through the command line
2023-07-15 00:12:09 +02:00
iTrooz
1ed658bcdc
feat: Added command line interface support ( #1172 )
...
System design has been discussed on discord
Should fix #948
---------
Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-07-13 14:08:23 +02:00
WerWolv
272b4b0cf8
feat: Added "Update All" button to content store
2023-07-11 09:19:52 +02:00
WerWolv
8524e93445
impr: Display encoding types in header of hex editor
...
Closes #1186
2023-07-11 00:04:26 +02:00
WerWolv
ce9ce42c1c
impr: Only reload localization when necessary
2023-07-09 20:24:56 +02:00
WerWolv
6343cb092b
build: Fixed include issues
2023-07-09 12:53:31 +02:00
WerWolv
2449b08f64
fix: Crash when trying to remove chunks larger than the whole file
2023-07-06 21:14:50 +02:00
WerWolv
c9c6f3aadb
fix: New visualizers behaving weirdly with large font sizes
2023-07-06 10:08:47 +02:00
WerWolv
924c816dbd
fix: Chunk size setting in information view being reset the first time
2023-07-06 00:00:56 +02:00
WerWolv
695e11477e
feat: Added single stepping feature to pattern debugger
2023-07-05 21:32:11 +02:00
iTrooz
e3ae169833
impr: Separate the behaviour of being savable and being dumpable for provider ( #1183 )
...
### Problem description
Currently, the providers use the method `isSavable()` to determine both
if they can use "Save" or "Save as".
This behaviour is problematic because some providers may need to be
saveable but not saveable as: for example the view provider. The
original provider may not allow to be saved.
### Implementation description
I separate these two behaviour by creating another function:
`isDumpable()`, that return true by default but can be overridden by the
provider to return false, if the provider should not be dumped in any
way.
### Additional things
While I was at it, I also marked "export" operations as needing the
"dumpable" flag. That way, we can't accidentally export the whole
address space of a process as base64.
I also added documentation for these some functions in Provider
2023-07-05 20:49:57 +02:00
WerWolv
b6881d2362
feat: Added timestamp visualizer
2023-07-05 19:54:18 +02:00