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
749823e044
build: Move -s
additional compiler flags into linker flags, and enable it only when gcc/clang are used. ( #1087 )
...
Compiler when compiling doesn't use them in those cases and emit a
warning, which is turned into an error by `-Werror`. Unfortunately,
CPack doesn't expose the logic it uses for stripping binaries.
2023-05-20 13:37:57 +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
WerWolv
2829bf2640
fix: New lines appearing in pattern editor when switching provider
2023-04-13 15:03:50 +02:00
WerWolv
ffafb05d3d
fix: Providers with the same name not being selectable in diff view
...
Fixes #1034
2023-04-13 15:03:14 +02:00
WerWolv
cf72b5ec5c
fix: Some shortcuts triggering twice
2023-04-12 19:50:03 +02:00
WerWolv
803b99f2a9
impr: Immensely improve provider read speeds
2023-04-12 19:21:48 +02:00
WerWolv
7e144b136b
patterns: Updated pattern language
...
Fixes #1030
2023-04-12 16:03:58 +02:00
WerWolv
aa7c5422c0
fix: Make sure provider data is properly cleared when deleting provider
2023-04-11 15:26:18 +02:00
WerWolv
5512585cc5
fix: Make sure docs question request is always properly formatted
2023-04-10 23:05:44 +02:00
WerWolv
349b5da810
fix: Prevent constants view from growing past the size of the screen
...
Fixes #1025
2023-04-10 21:30:27 +02:00
WerWolv
e7494be5e7
fix: Last line of patterns going missing in projects with multiple files
...
Fixes #1012
2023-04-10 16:50:23 +02:00
WerWolv
87d0aae608
feat: Added selection range radio button to various views
...
Closes #1024
2023-04-10 14:08:21 +02:00
WerWolv
391c8acfe4
impr: Added path tooltips to accept pattern popup
2023-04-10 01:46:55 +02:00
WerWolv
dc77d81e1b
feat: Added documentation helper AI
2023-04-10 01:42:53 +02:00
WerWolv
00c9a92977
fix: Localization being broken in the content store
2023-04-10 01:42:28 +02:00
WerWolv
f9a08f5c11
feat: Allow custom alignment to be used in binary sequence search
2023-04-09 15:28:31 +02:00
WerWolv
70f3014390
fix: Some more popup rendering issues
2023-04-08 23:34:46 +02:00
WerWolv
d4ad457af1
fix: Crash when closing provider that was used in view provider
2023-04-08 21:07:57 +02:00
WerWolv
cb5d197700
impr: Added tooltips to icon buttons in bookmarks view
2023-04-08 21:07:41 +02:00
WerWolv
78e66f8959
feat: Added non-ranged and aligned search to sequence and value finder
2023-04-08 20:59:33 +02:00
WerWolv
f562260e42
fix: Build error again
2023-04-08 12:30:38 +02:00
WerWolv
21f38974a8
impr: Use smart pointers to allocate Views
2023-04-08 12:08:45 +02:00
WerWolv
dfca7e923c
feat: Make pins in data processor nodes more visible
2023-04-08 11:58:49 +02:00
WerWolv
6913598de4
fix: Build error
2023-04-08 11:58:12 +02:00
WerWolv
80edaea392
impr: Update all of ImHex to the new popup system
2023-04-08 00:58:53 +02:00
WerWolv
9c9ac23818
feat: Added a much more flexible popup system
2023-04-07 10:21:27 +02:00
WerWolv
51e615095e
fix: Make sure placing a type through the Edit menu re-evaluates the pattern
2023-04-06 23:01:45 +02:00
WerWolv
248b93f41a
patterns: Updated pattern language
2023-04-06 19:23:16 +02:00
WerWolv
c73f33aac2
impr: Added various new events
2023-04-06 17:36:28 +02:00
WerWolv
5f713882d4
fix: Occasional crash when loading project files
2023-04-06 12:44:25 +02:00
WerWolv
1698f1599b
impr: Allow file chooser to open files using double click
2023-04-05 18:33:05 +02:00
WerWolv
24e584c77b
fix: Crash when trying to place pattern language variable through the Edit menu
...
Fixes #1013
2023-04-05 18:29:30 +02:00
WerWolv
7a4f909c68
fix: Disassembler arch names not correctly corresponding to their ids
...
Fixes #1010
2023-04-05 18:02:47 +02:00
WerWolv
3658d8d96e
fix: Disassembler not supporting any Capstone 5 features anymore
...
Fixes #1010
2023-04-04 23:08:10 +02:00
WerWolv
efe3227ef2
patterns: Updated pattern language
2023-04-04 09:34:50 +02:00
H1X4
aab8c88a96
feat: allow loading and saving pattern code via events ( #1004 )
...
Currently there is no way to save the pattern code progamically from a
plugin unless the builtin plugin is modified to add those events. This
pull request will be adding ability to load and save pattern code from
specified file.
2023-04-01 11:18:52 +02:00
Thomas
af18ca011b
fix: Modified bytes visually reverting back after saving ( #1003 )
...
Fix #988
Co-authored-by: Nik <werwolv98@gmail.com>
2023-04-01 11:18:03 +02:00
WerWolv
60efb6973b
fix: Filtering of long strings in find view not working correctly
2023-04-01 11:04:07 +02:00
WerWolv
cffd55bdda
fix: UTF-16BE search being broken
2023-03-31 22:20:00 +02:00
WerWolv
88e767aaaf
fix: Crash when loading big encoding files
2023-03-31 19:56:20 +02:00
WerWolv
d6cda43618
fix: Modified bytes visually reverting back after saving
2023-03-31 19:18:31 +02:00
WerWolv
3b229cd5cb
impr: Added path tooltips to entries in the file chooser popup
2023-03-31 19:17:27 +02:00
WerWolv
4da18d3630
fix: Custom encoding and text padding setting not applying to custom encoding column
...
Actually fixes #1005
2023-03-31 13:49:33 +02:00
WerWolv
2f04cfd5c6
fix: Entering decimal and float values in hex editor cells being broken
2023-03-31 11:34:08 +02:00
WerWolv
173ed5475c
fix: Remove empty column when ASCII row is off and custom encoding is on
...
Fixes #1005
2023-03-31 11:07:32 +02:00
WerWolv
1460044e91
impr: Save custom encoding file to project
...
Fixes #1005
2023-03-31 11:06:51 +02:00
WerWolv
06a7b6e446
patterns: Fixed namespace of hex::prv:: functions
2023-03-28 10:27:49 +02:00
WerWolv
28b7b4b7f1
fix: File -> Open Others... menu not working correctly
2023-03-28 10:13:41 +02:00
WerWolv
6a9f79628e
impr: Don't try to apply patches if there are none
2023-03-26 12:48:22 +02:00
Thomas
c2823facc2
lang: Fix weblate ( #997 )
...
This should (hopefully) fix weblate. I tried to fix merge conflicts
using instructions at
https://weblate.werwolv.net/projects/imhex/windows-plugin/#alerts
---------
Co-authored-by: xtex <xtexchooser@duck.com>
2023-03-26 11:03:30 +02:00
Thomas
fabb1596e5
impr: Handle and show NFD errors ( #995 )
...
This PR handles errors that NFD might encounter (both in Init() and the
other method to open the dialog), and log them in the logs and in the
GUI
This (among other) fix the crash I had running ImHex as root and opening
a file
2023-03-26 11:02:51 +02:00
Zaggy1024
5fa264ea18
patterns: Update pattern_language and implement support for new bitfield features ( #992 )
...
This requires https://github.com/WerWolv/PatternLanguage/pull/34 to be
merged first, and then this can be amended to update the submodule and
merged to add support for the new features.
2023-03-26 11:01:37 +02:00
WerWolv
635173e55a
impr: Make sure themes are added correctly when downloaded from the store
2023-03-23 20:35:16 +01:00
WerWolv
2296766746
build: Allow building with capstone 4.X again
2023-03-23 16:45:00 +01:00
WerWolv
fec5c567e1
ui: Improve look and feel of content store
2023-03-23 13:32:47 +01:00
WerWolv
15be24db62
sys: Updated to use the new HttpRequest helper instead of Net
2023-03-23 11:23:07 +01:00
WerWolv
631cfce2f8
impr: Added tooltip informing about font size if no custom font was selected
2023-03-22 16:30:49 +01:00
WerWolv
0fd3cb0c4a
fix: Don't jump to previous editing position when selecting new region in hex editor
...
Potenially fixes issues mentioned in #924
2023-03-22 13:11:09 +01:00
Jacob Creedon
3cfec69020
feat: Added additional CRC hash types ( #991 )
...
This adds some common CRC types.
---------
Signed-off-by: Jacob Creedon <jcreedon@gmail.com>
2023-03-22 10:53:57 +01:00
WerWolv
f3f0dda3d4
fix: Properly clear valid region when switching to a different provider
2023-03-21 16:11:40 +01:00
WerWolv
be16b66ac0
fix: Make sure files don't get truncated when using Save As on itself
...
Fixes #987
2023-03-21 15:42:10 +01:00
WerWolv
b9059aaa01
fix: Make find process in the find view more easily cancelable
2023-03-21 15:37:49 +01:00
WerWolv
57a62d0544
impr: Clean up entire API and added doc comments
2023-03-21 15:33:43 +01:00
WerWolv
d82f0e952f
fix: Custom data inspector rows not being writable correctly
2023-03-21 13:16:22 +01:00
Thomas
8731b7582b
impr: Display a more detailed errors when opening a raw disk provider failed ( #970 )
...
PR title is self explaining
I may modify other providers implementations to display a detailed error
message later
I'm not sure how to deal with other locales because the format changed.
Before, I had to add and comment the key in all locale files, now I'm
not so sure.
2023-03-21 10:33:00 +01:00
WerWolv
060ff56f9d
impr: Improve file reading performance if opening of files is slow
2023-03-21 09:47:42 +01:00
WerWolv
0a0c0c0d07
feat: Added bytes swapper tool
2023-03-20 22:25:27 +01:00
WerWolv
17c4e405a6
impr: Update the command palette for the modern ages
2023-03-20 17:05:26 +01:00
WerWolv
a4dfaba03f
fix: All menu item shortcuts being global
2023-03-20 15:12:12 +01:00
WerWolv
6e23560e80
feat: Added all menu items to command palette
2023-03-20 14:11:43 +01:00
WerWolv
39e8d557e8
sys: Completely revamped main menu item system
2023-03-20 13:11:43 +01:00
WerWolv
677c989664
feat: Allow custom data inspector rows to be edited
2023-03-20 08:30:34 +01:00
WerWolv
c9342d90fb
fix: Prevent new line from appearing on every pl code save
...
Fixes #982
2023-03-20 08:29:00 +01:00
WerWolv
367bd76046
ui: Mae sure all theme scaling values are scaled correctly
2023-03-18 10:52:50 +01:00
WerWolv
1a1bf98905
impr: Look for magic files recursively
2023-03-17 21:18:28 +01:00
WerWolv
4c1a24058c
ui: Fixed various scaling inconsistencies on higher scaling factors
2023-03-17 19:58:08 +01:00
WerWolv
294e95caf8
fix: Store page not clearing nodes and themes section correctly
2023-03-17 17:55:39 +01:00
WerWolv
466dacaab4
ui: Improve the look and feel of the information view
2023-03-17 17:07:39 +01:00
WerWolv
1f8645fd43
fix: Occasional crash when multiple threads are reading data from a file provider
2023-03-17 11:43:50 +01:00
WerWolv
880568cc60
impr: Better find view result filter speeds
2023-03-17 11:32:08 +01:00
WerWolv
f10fb56042
impr: Drastically improve file reading performance
2023-03-17 11:31:50 +01:00
WerWolv
64be6d89ee
fix: Moving cursor around using arrow keys behaving weirdly
2023-03-17 09:17:44 +01:00
WerWolv
4ee53701e6
impr: Allow Regex find strategy specify string type and minimum length
2023-03-17 08:16:13 +01:00
WerWolv
5097a223e3
impr: Added default saveAs implementation for all providers
2023-03-17 08:15:43 +01:00
WerWolv
7cdba75bef
fix: Crash when not making a valid selection in provider load interfaces
2023-03-16 16:48:15 +01:00
WerWolv
0312027ca8
impr: Modernize look and feel of bookmarks
2023-03-16 14:40:26 +01:00