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
WerWolv
8e0349e2ac
fix: Projects failing to be loaded when another project is being unloaded
2023-07-04 23:30:37 +02:00
WerWolv
86c4c8fa96
feat: Added new pattern inline visualizers
2023-07-04 22:18:06 +02:00
WerWolv
33566137c2
impr: Allow bitmap visualizers to be zoomed
2023-07-04 22:17:51 +02:00
WerWolv
f16bbfb469
feat: Added coordinates visualizer
2023-07-04 09:40:05 +02:00
WerWolv
b265d8e54a
build: Restructure romfs assets
2023-07-04 08:42:33 +02:00
WerWolv
6a667d9493
impr: Allow image visualizer image to be scaled
2023-07-03 21:24:36 +02:00
WerWolv
ceed8c7420
pattern: Properly display Start/End/Size column again for zero sized types
2023-07-03 21:24:15 +02:00
WerWolv
d297b2d1cc
impr: Hide sections with an empty name
2023-07-03 12:04:20 +02:00
WerWolv
39e74c627e
impr: Handle unidentifiable data in the data information view better
2023-07-02 10:27:56 +02:00
WerWolv
a0c89858ed
patterns: Don't re-evaluate format functions during highlighting
2023-07-01 14:06:15 +02:00
iTrooz
c6c3ca4d26
fix: Reset terminate handler directly when being called + some other crashes to crash handling ( #1174 )
...
This PR fixes some things about crash handling:
- when the terminate handler is called, immediately set it back to the
original one, so can't make a recursion if the crash-handling code fails
- Only save projects if the crash occured after Imhex finished startup
- do not update the project location when saving the crash backup file:
this will remove problems when `EventAbnormalTermination` is called
before `crashCallback()`
I also added a bit more documentation
2023-07-01 12:32:28 +02:00
WerWolv
301418c728
fix: Bookmarks not being loaded correctly when multiple providers are in project
2023-07-01 12:27:59 +02:00
iTrooz
aec38328d0
impr: Added "Hold SHIFT for more info" text to provider tooltip ( #1171 )
...
As discussed on discord
2023-06-30 22:28:37 +02:00
WerWolv
050a71913a
impr: Improved construction of language settings dropdown
2023-06-30 14:00:10 +02:00
WerWolv
8cc6994dd0
fix: Properly apply UI scaling on launch
2023-06-30 13:40:39 +02:00
WerWolv
bc98556897
impr: Automatically scroll pattern console to the bottom when new lines are added
2023-06-30 00:11:48 +02:00
WerWolv
4f08ba3590
patterns: Fixed race condition when evaluating patterns
2023-06-30 00:11:26 +02:00
WerWolv
d527675bda
build: Make sure changing commit hash doesn't trigger a full rebuild
...
Closes #1137
2023-06-26 14:01:45 +02:00
WerWolv
15cd2b693c
fix: Crash when using paste without a valid selection
2023-06-26 11:14:10 +02:00
WerWolv
cda883bb0f
fix: Page count displaying wrongly in empty files
2023-06-26 11:13:12 +02:00
WerWolv
e03c91b888
impr: Better UI for all data information diagrams
2023-06-26 10:51:37 +02:00
WerWolv
9282f1fe75
fix: Multiwindow support not being disabled by default on Linux
2023-06-26 09:02:23 +02:00
WerWolv
af147b4f54
fix: Titlebar button localization keys still being inside the windows plugin
2023-06-26 08:54:30 +02:00
WerWolv
c280b16787
fix: Make disassembler view not clear selection when typing in region
2023-06-24 20:53:36 +02:00
WerWolv
a449478e39
patterns: Make updating favorites and pattern tooltips not lag out ImHex
2023-06-24 16:40:34 +02:00
WerWolv
c1babc2a55
fix: Prevent data inspector table from being scrollable
2023-06-24 15:39:19 +02:00
WerWolv
b644020e0f
impr: Allow Accept Pattern popup to be closed with Escape
2023-06-24 15:32:05 +02:00
WerWolv
07ffd21c5a
fix: Entropy and byte type graph sometimes stopping in the middle
2023-06-24 15:20:26 +02:00
WerWolv
af951e3526
fix: Entropy and byte type diagram address and display being wrong
2023-06-24 11:53:21 +02:00
WerWolv
ade05f8e12
impr: Only load a limited subset of unicode characters by default
2023-06-24 10:58:42 +02:00
WerWolv
1e9cc97263
feat: Added scope selector dropdown to pattern debugger
2023-06-24 00:49:43 +02:00
WerWolv
a7ecefb5a0
fix: Don't load constants files that start with a _
2023-06-23 21:39:39 +02:00
WerWolv
d65e669bbb
impr: Make loading of large table files significantly faster
2023-06-21 23:58:21 +02:00
iTrooz
b7d8e46288
feat: Display detailed error message when loading of project fails ( #1135 )
...
In order to do this I add to make some other additions :
- Add a warning popup (TODO, maybe add some icons to differentiate
error/warning popups in a future PR ?)
- create showError() and showWarning() functions, as helpers to show a
message both to the logs and as a popup
2023-06-21 20:07:36 +02:00
WerWolv
3fe6cd057b
impr: Upper case pattern data export options
2023-06-21 17:49:03 +02:00
WerWolv
da11c47693
impr: Better sorting of hex cell visualizers
2023-06-21 17:48:51 +02:00
WerWolv
9cd19063da
fix: Occasional crashes when evaluating patterns
2023-06-21 10:30:00 +02:00
WerWolv
0da87cdb68
patterns: Updated pattern language
2023-06-21 09:29:40 +02:00
WerWolv
eed785d73f
impr: Better layout for statistics value in statistics popup
2023-06-21 00:33:06 +02:00
shenleban tongying
b223d9b0ff
fix: Wrong drawing logic for custom encoding characters ( #1150 )
...
fix https://github.com/WerWolv/ImHex/issues/1146
related
3a840c4ced
2023-06-21 00:30:26 +02:00
WerWolv
c8150f3261
impr: Make statistics format not suck a whole lot
2023-06-21 00:21:16 +02:00
Nik
f703b15165
feat: Added statistics and crash log uploading ( #1149 )
...
Co-authored-by: Justus Garbe <gihihoh@gmail.com>
2023-06-20 11:55:56 +02:00
WerWolv
25154dd450
build: Force enable exceptions and rtti
2023-06-18 14:42:48 +02:00
WerWolv
d9af85f458
impr: Split offset column into Start and End column in pattern data view
2023-06-18 12:23:47 +02:00
WerWolv
5f6bc2507c
impr: Make ImHex not use lots of CPU when waiting for conditions
2023-06-18 10:18:58 +02:00
WerWolv
c2e023f567
fix: Pattern editor console scrolling back to the top constantly
2023-06-16 22:17:01 +02:00
WerWolv
90a576c3c7
fix: Highlighting and updating of the new console not working well
2023-06-14 10:35:23 +02:00
WerWolv
0e5371b298
fix: Properly handle multithreading for new pattern console
2023-06-14 06:57:43 +02:00
WerWolv
dd832bfa7e
ui: Make pattern editor console use another text editor
2023-06-13 22:58:57 +02:00
WerWolv
3b514003f8
fix: Pattern editor drag bar not always getting dragged correctly
2023-06-12 08:55:30 +02:00
WerWolv
7de367a944
impr: Properly allow multi-threaded logging without messing up output
2023-06-12 08:24:36 +02:00
WerWolv
ef1d831158
impr: Better UI/UX of the new debugger
2023-06-11 22:00:49 +02:00
WerWolv
da137b3e3b
feat: Allow pattern editor console to be resized
2023-06-11 21:41:24 +02:00
WerWolv
03673b5846
feat: Added basic Pattern Language debugger
2023-06-11 21:41:11 +02:00
WerWolv
34732a1ee7
fix: Corrected some memory leaks
2023-06-11 10:47:17 +02:00
KOLANICH
e8ca139246
fix: Remove unused member variable in HexEditor class ( #1129 )
...
Fixes `error: private field 'm_grayZeroHighlighter' is not used
[-Werror,-Wunused-private-field]`
2023-06-11 00:49:34 +02:00
WerWolv
ef9cb31204
patterns: Updated pattern language
2023-06-11 00:08:34 +02:00
WerWolv
e90e414d5a
impr: Show infinity icon in pattern editor view when pattern limit is disabled
2023-06-10 15:09:20 +02:00
WerWolv
a485a0bc3a
fix: Crash when loading files in some cases
2023-06-08 17:02:28 +02:00
WerWolv
903d1fb555
impr: Analyze file content of newly loaded files only when they are selected
2023-06-08 17:02:16 +02:00
WerWolv
99831a66a7
feat: Added file handlers for .hexlyt and .hexproj files
2023-06-06 21:35:13 +02:00
WerWolv
456895a6a6
fix: Various pattern drawer issues
2023-06-06 11:29:58 +02:00
WerWolv
1e2cf87532
fix: Properly clear pattern editor when all providers are closed
2023-06-06 10:36:02 +02:00
WerWolv
48022bc295
fix: Bad formatting of array chunks in pattern data view
2023-06-06 10:06:54 +02:00
Sergei Rebrov
b4ac46f719
impr: Set currently selected address in selection popup ( #1125 )
...
Set the Begin field to the current selected address
2023-06-06 08:22:10 +02:00
WerWolv
44bbbb03af
fix: Various pattern visualizer issues
...
Closes #1119
2023-06-06 08:20:58 +02:00
WerWolv
b8457439a4
fix: Crash when loading custom encodings
2023-06-05 16:56:50 +02:00
WerWolv
c690f7627f
fix: Bad sentence wrapping in advanced provider information popup
2023-06-05 15:36:47 +02:00
WerWolv
849e4ea370
feat: Make paths in about page clickable
2023-06-05 13:50:55 +02:00
WerWolv
9712329924
feat: Added pattern export option to pattern data view
2023-06-05 11:57:26 +02:00
WerWolv
59aa52e744
patterns: Allow console log to be printed immediately and from format functions
2023-06-05 09:45:25 +02:00
WerWolv
60a95eddd7
fix: Crash due to uninitialized data visualizer in hex editor
2023-06-05 09:45:03 +02:00
WerWolv
7c23b215ba
impr: Allow detached tools to always be rendered
2023-06-05 09:08:41 +02:00
WerWolv
ae48ae659b
impr: Move various settings from settings window to hex editor and pattern data view
2023-06-05 09:07:58 +02:00
WerWolv
e78c21cbfb
impr: Use better icons for favorites and filter text boxes
2023-06-04 22:52:36 +02:00
WerWolv
cc55e5ec74
fix: Added missing pattern data favorites lang entry
2023-06-04 18:41:58 +02:00
WerWolv
1134697b90
fix: Pattern filter RValue parsing
2023-06-04 18:35:44 +02:00
WerWolv
e518b8360c
feat: Allow patterns to be marked as favorite
2023-06-04 18:30:47 +02:00
WerWolv
244e34ab84
feat: Added pattern data filter field
2023-06-04 16:13:46 +02:00
WerWolv
07aabe8efa
impr: Improved types used in provider functions
2023-06-04 10:42:11 +02:00
iTrooz
25476d4e1e
build: Update ImGui and its dependencies ( #1122 )
...
This PR updates imgui and its dependencies from the last time, ~1 year
ago
(deabacbd50
)
Commits will be refactored before merging
Things you might ask :
- why did you remove `ImGui_ImplGlfw_SetBorderlessWindowMode()` ?
-> Where is it used ? The only usage of it I see is commented
(cb9a3b1f55/lib/external/imgui/source/imgui_impl_glfw.cpp (L757)
)
- why did you remove the implot anti aliasing flag ?
-> They.. seem to have removed it altogether ?
https://github.com/epezent/implot/issues/479
2023-06-04 00:09:45 +02:00
WerWolv
de76c37ffb
fix: Multiple file provider resize issues
2023-06-03 23:57:41 +02:00
WerWolv
6d19b33e32
fix: Don't require providers to be writable to save a project
2023-06-03 23:18:43 +02:00
WerWolv
aca949175d
impr: Disable advanced provider information popup if there are none
2023-06-03 15:57:47 +02:00
WerWolv
d2e455c4cb
fix: Intel hex provider not displaying data correctly
2023-06-03 15:53:55 +02:00
WerWolv
09dda0bc5e
feat: Added provider information to advanced provider tab tooltip
2023-06-02 14:44:19 +02:00
WerWolv
62ecfb0e0e
fix: Make sure crash backup doesn't end up in recents list
2023-06-02 11:03:44 +02:00
WerWolv
504c022f01
patterns: Added hex_viewer visualizer
2023-06-02 10:47:23 +02:00
WerWolv
5e0ca4ac50
patterns: Properly display exported variables
2023-05-28 15:44:01 +02:00
WerWolv
8d8a5a70f3
fix: Find view replace and hex editor paste logic being wrong
2023-05-28 14:30:33 +02:00
WerWolv
c8c3f5e753
feat: Added primitive replace feature to find view
2023-05-28 11:50:10 +02:00
iTrooz
ea756e620e
fix: Explicitely convert std::fs::path to std::string ( #1116 )
...
This should fix the current crash when opening a project on Windows
2023-05-28 11:36:08 +02:00
iTrooz
e599d31625
fix: Properly Check if crash.json has valid json, remove it otherwise ( #1117 )
2023-05-28 11:35:51 +02:00
iTrooz
e578127f67
feat: Save opened projects as recent entries ( #1105 )
...
This PR does two things :
- save opened projects as recent entries
- refactor stuff about recent entries in a separate file. The reason is
that I felt like welcome_screen.cpp was really big ( 685 lines before
this, 500 now). What do you think ?
---------
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-27 16:59:30 +02:00
paxcut
950760691c
fix: 3D Visualizer calculating normals incorrectly ( #1108 )
2023-05-26 09:01:16 +02:00
iTrooz
ee94870e83
fix: Do not loop over 'END' ImHexPath ( #1098 )
...
Really small issue, in Help->About->Imhex directories, there would be an
extra entry at the end because you seemed to loop over the
fs::ImHexPath::END entry
2023-05-25 09:27:10 +02:00
iTrooz
d2638c4f27
feat: Display titlebar buttons when not running borderless ( #1099 )
...
Tested on Linux (non-borderless) and Windows (borderless)
You may want to also test it just to be sure
2023-05-25 09:26:40 +02:00
WerWolv
320973c5ff
fix: Crash when sorting Value column
2023-05-24 21:05:14 +02:00
WerWolv
26eac61ddf
feat: Allow themes to set the background blur color
2023-05-24 21:05:14 +02:00
WerWolv
0e3da22c76
feat: Added support for changing the page size
2023-05-23 11:34:30 +02:00
WerWolv
e32fc639c2
fix: Turning off blur again not working
2023-05-22 13:25:11 +02:00
iTrooz
7ce0613977
impr: Added better crash backup and restore mechanism ( #1094 )
...
- Add a new file 'crash.json' to store metadata about the crash, like
the log file or project opened
- show the log file of the session that caused the crash to the user
- Correctly restore the project path
2023-05-22 13:24:48 +02:00
iTrooz
91635346be
feat: Allow to remove recent providers with right click ( #1085 )
...
![image](https://github.com/WerWolv/ImHex/assets/42669835/648d2c8f-6518-4989-bc92-808898cb0f87 )
2023-05-22 13:22:18 +02:00
WerWolv
f81276f7e3
feat: Added support for transparent and blurry window styles
2023-05-22 12:00:35 +02:00
WerWolv
6b28828174
fix: Prevent horizontal scroll on welcome screen
2023-05-22 10:37:30 +02:00
WerWolv
2191eb14ae
impr: Cleanup hashes view a bit
2023-05-22 09:58:56 +02:00
WerWolv
e7b51a56a5
feat: Added support for automatically loading patterns using binary pattern magic
2023-05-22 00:01:58 +02:00
WerWolv
df75218ecb
fix: Ranges found by find view not being highlighted
2023-05-22 00:00:50 +02:00
WerWolv
f57d4f2f7a
impr: Manually sort file chooser popup list
2023-05-21 18:41:43 +02:00
WerWolv
446e0751a6
fix: Force entropy and type distribution graphs to always span the entire plot
2023-05-21 13:46:14 +02:00
iTrooz
5666a5c5fb
feat: Added context menu with right-clicking on file provider ( #1084 )
...
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-21 13:21:53 +02:00
WerWolv
1b88b3704d
feat: Allow layouts to be deleted again
2023-05-21 10:43:35 +02:00
WerWolv
6dbaac4283
impr: Make sure hex editor popups have their input focused
2023-05-21 10:35:14 +02:00
WerWolv
c02465b892
fix: Byte type and Entropy graph being shifted
2023-05-21 10:23:33 +02:00
WerWolv
f503a89f98
fix: Typo in IEEE754 tool
2023-05-20 21:49:45 +02:00
WerWolv
87621e9337
impr: Disable some Import...
options when the provider isn't writable
2023-05-20 21:23:15 +02:00
WerWolv
3219ba68de
impr: Better layout of ImHex subtitle on welcome screen
2023-05-20 21:20:32 +02:00
WerWolv
5d608603cb
fix: Selection in diff view being retained
2023-05-20 21:13:40 +02:00
WerWolv
11f55a7561
fix: File handles not being closed correctly
2023-05-20 18:07:15 +02:00
KOLANICH
608c9e2e7a
fix: WASM disassembler not being available in Capstone < 5 ( #1086 )
...
This fixes build on Debian with Capstone from packages.
2023-05-20 13:37:45 +02:00
WerWolv
3cb8e37182
fix: Broken file open logic
...
Closes #1090
2023-05-20 11:52:24 +02:00
paxcut
3e4c4430d5
feat: Greatly improved the IEEE754 tool ( #1047 )
...
I just realized one feature request existed about this tool and have
added a comment to it referring this pr. Errors and additions are
described in the fork commit already. I'm not sure if I should repeat
them here again. I have tested the changes thoroughly, but it is always
possible some fringe case was not tested and is incorrect. The tests
were done using the many similar online calculators for IEEE 754
floating point formats.
IEEE 745 floating point tool redesign modeled after 'float toy' web app
(http://evanw.github.io/float-toy/ )
Streamlined output using colors and compact layout which can be further
simplified.
Chosen display mode (detailed or simplified) is automatically saved and
set on new sessions.
Edit the binary bits, the integer hexadecimal or the floating point
decimal values and the entire app will update with the change.
Supports the main IEEE745 standard formats (half, single and double
precision) together with custom formats of size <= 64 bits.
Each format choice uses and displays the number of significant decimal
digits defined by the mantissa size.
Added labels to identify the location of each bit box inside the binary
representation.
Satisfies round trip / idempotent (reproducing) conversion property
Added theme colors, radio buttons for display mode and a clear button
that resets the tool.
Removed previously and incorrectly added locale translation to various
labels and languages
Attempted to adhere to code style formatting using existing code as
example.
An effort was made to use preferred variable types and functions from
std namespace when appropriate.
Attempted to document code using comments.
Not implemented / left to complete at an later time
Arbitrary width and precision formats.
Extended precision formats.
Shortest string property.
hexadecimal floating point display and conversions.
2023-05-19 21:18:38 +02:00
WerWolv
4ad66365d0
fix: Crash when saving patches
...
Fixes #1077
2023-05-19 20:01:42 +02:00
WerWolv
39276e123e
patterns: Allow bitfield values to be edited
2023-05-19 19:56:55 +02:00
WerWolv
0f9434740f
fix: Crash when deleting last environment variable in pattern editor
2023-05-19 17:15:37 +02:00
Justus Garbe
5ef58cdf76
feat: Added bit and byte reverse and bit display data processor nodes ( #1082 )
...
#1081
2023-05-18 10:25:59 +02:00
WerWolv
a5b0a8614a
impr: Automatically re-evaluate pattern when changing provider and code sync is on
...
Closes #1078
2023-05-16 14:45:04 +02:00
WerWolv
e28f2dfea1
fix: Only 5 patterns per byte being highlighted
...
Fixes #1076
2023-05-16 14:41:02 +02:00
WerWolv
0dcfeaefb3
fix: Build when git commit hash or branch is not available
2023-05-16 12:02:17 +02:00
WerWolv
3bd4a3ba8b
impr: Better JSON error handling in many places
2023-05-16 11:33:00 +02:00
WerWolv
7e9b23de7d
impr: Improve network interface error handling
2023-05-16 11:20:46 +02:00
WerWolv
a758676b0d
fix: Change network interface port to 31337
2023-05-16 11:01:59 +02:00
WerWolv
636ed0095d
feat: Added new imhex/capabilities
network interface
2023-05-16 11:01:40 +02:00
WerWolv
c006062540
feat: Added basic network interface support
2023-05-15 11:30:24 +02:00
WerWolv
e685d65be8
fix: Scrolling not working correctly on welcome screen
...
Fixes #1071
2023-05-15 08:33:35 +02:00
WerWolv
ab67e274b2
fix: Hex editor editing value not updating correctly
2023-05-15 08:17:16 +02:00
WerWolv
7ec7e562d1
fix: Wrong editing values in hex editor in some circumstances
2023-05-14 22:52:47 +02:00
WerWolv
c50d52d0a6
fix: Crash when reading from modified bytes
2023-05-14 22:46:19 +02:00
WerWolv
2b765617ce
impr: Disallow saving pattern files if they're empty
2023-05-14 22:24:16 +02:00
WerWolv
d96fc6d41b
fix: Compilation on macOS
2023-05-14 21:50:58 +02:00
WerWolv
f40b5d9811
fix: Search button in numeric find option being active by default
2023-05-13 17:51:16 +02:00
WerWolv
d00fae03a9
fix: Diff table not being cleared when closing providers
2023-05-13 17:50:33 +02:00
WerWolv
3c4e1b2f27
impr: Various cleanup
2023-05-13 17:50:16 +02:00
WerWolv
6709baa710
patterns: Updated pattern language
2023-05-13 15:43:37 +02:00
WerWolv
aa1bf0b764
impr: Make about page resizable
2023-05-13 12:26:13 +02:00
WerWolv
a7327290ea
fix: Only save custom encoding to project file when necessary
2023-05-13 11:17:27 +02:00
WerWolv
857e90a37b
fix: ImHex freezing when evaluating patterns
2023-05-13 11:12:38 +02:00
WerWolv
aaeebd3fe9
fix: Various pattern execution race conditions
2023-05-12 15:46:13 +02:00
WerWolv
0a7a190b04
impr: Added tooltips to pattern data view when name or value is too long
2023-05-12 08:49:08 +02:00
WerWolv
21d922113d
impr: Make sure to clear selections when all providers are deleted
2023-05-12 08:38:52 +02:00
WerWolv
b0876e1c35
impr: Move some options into a new Extras menu
2023-05-12 08:38:32 +02:00
WerWolv
18bc5de169
fix: Copy-as options not being disabled correctly
2023-05-12 08:38:07 +02:00
WerWolv
0321743f1e
fix: Missing save layout localization keys
2023-05-12 08:37:43 +02:00
WerWolv
0649e0dcd3
impr: Clean up old layout stuff
2023-05-11 23:21:52 +02:00
WerWolv
ceeaca1a4b
feat: Added layout manager to save and restore custom layouts
2023-05-11 18:44:50 +02:00
WerWolv
2da89f4b9b
fix: Position of restore layout button being wrong with different scalings
2023-05-11 18:44:33 +02:00
iTrooz
2e73d74cea
impr: Open .hexproj files as projects when opened though the Open File option ( #1061 )
2023-05-11 12:38:22 +02:00
WerWolv
8f07f0f8ae
impr: Better look and feel of the welcome screen close button
2023-05-11 12:00:45 +02:00
iTrooz
b0ab8698ec
fix: Loading data processor nodes from project thowing errors ( #1065 )
...
This will correct the errors `cannot use operator[] with a string
argument with string[..]` when loading a project
2023-05-11 09:57:29 +02:00
WerWolv
50c3cf8272
build: Replace old interval tree in favour of custom libwolv one
2023-05-11 09:27:23 +02:00
WerWolv
5a6e5d2255
build: Switch to better interval tree implementation
2023-05-07 23:27:43 +02:00
classabbyamp
82f5900759
build: Added option to disable update checking ( #1036 )
...
This is aimed at use by linux distros, where package updates come from a
central location, and users shouldn't need to worry about updating ImHex
on their own. This disables parts of the ImHex UI that would not be
useful in that case.
Tested and confirmed that this works in both states of the of the
`-DIMHEX_DISABLE_UPDATE_CHECK` switch.
2023-05-05 22:03:45 +02:00
iTrooz
e44eb2aa8e
impr: Added more documentation to libimhex ( #1052 )
...
This PR adds some documentation. It's actually pretty random, I followed
the function calls I was curious about and commented whenever I wasn't
sure/I thought it needed clarification
You might want to make sure to squash them, because the commits are kind
of a mess, I didn't went through the effort of interactive rebase
2023-05-05 22:02:18 +02:00
iTrooz
34e12e2515
feat: Added a button to restore default layout when there are no views open ( #1053 )
...
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-05 22:00:17 +02:00
WerWolv
5680b90549
fix: Project files failing to save when no custom encoding is loaded
2023-05-04 23:23:44 +02:00
WerWolv
bec655a8c6
impr: Added event logging in debug mode
2023-05-02 20:35:30 +02:00
WerWolv
0c8b3e31e7
fix: Dangerous function call popup not showing up
2023-05-02 20:34:37 +02:00
iTrooz
13a3942f8f
impr: Show an error message when ImHex can't open a file ( #1050 )
...
This PR does two correlated things:
- Show a generic error message (Failed to open provider) rather than a
file-specific message (Failed to open file) when a provider fails to
open
- Set the error to something more specific when opening a file fails
2023-04-30 18:37:22 +02:00
XorTroll
b0028b0e51
lang: Added Spanish translations ( #1042 )
...
This translates ImHex for the Spanish language
(made a new PR since I got a bit messed up on the other one, this was
faster to fix)
2023-04-21 17:44:36 +02:00
WerWolv
1e39f4354f
fix: Provider reader being broken
2023-04-20 13:46:44 +02:00
WerWolv
8245f3d4c9
build: Updated libwolv
2023-04-19 21:56:34 +02:00
WerWolv
6c122e5fbe
patterns: Updated to new API
2023-04-18 10:06:47 +02:00
WerWolv
7ae814f7fb
fix: Various localization issues
2023-04-17 22:18:50 +02:00
WerWolv
04a5efc7a3
fix: Crash when evaluating patterns to quickly
2023-04-17 17:02:10 +02:00
WerWolv
99a736df27
impr: Replace horrible pattern extra data class with a more modular system
2023-04-17 16:18:48 +02:00
WerWolv
c32515bc44
impr: Clean up some more clang-tidy issues
2023-04-16 22:12:35 +02:00
WerWolv
1690cd2740
fix: Various issues with the new popup system
2023-04-16 21:34:29 +02:00
WerWolv
52925c99e8
impr: Default to monitor synchronized FPS limit
2023-04-13 17:12:40 +02:00
WerWolv
18d5fd5d3e
fix: Commit link in about page not working correctly
2023-04-13 16:10:55 +02:00