WerWolv
6a146e239a
fix: Workspaces not being exported correctly
2024-01-29 20:50:00 +01:00
WerWolv
cecb8b8d31
fix: Linking issues and menu bar not appearing sometimes
2024-01-29 15:44:18 +01:00
Nik
339541a56f
impr: Restructure various components much better ( #1520 )
2024-01-28 22:14:59 +01:00
WerWolv
069544eb93
feat: Added Minimap to Hex Editor
2024-01-28 15:28:55 +01:00
WerWolv
ba20790ed2
build: Make libpl not being linked twice
2024-01-28 01:09:26 +01:00
WerWolv
d2a26017d7
fix: Build error due to mismatching types
2024-01-27 16:56:18 +01:00
WerWolv
61048757e6
impr: Allow custom encodings with only single-byte characters to be displayed immediately
2024-01-27 16:49:31 +01:00
paxcut
1957d6f432
feat: Added find-replace to pattern editor ( #1465 )
2024-01-27 14:52:20 +01:00
WerWolv
4c06fd2fb8
impr: Allow plugins to be loaded in debug builds
2024-01-26 21:11:56 +01:00
iTrooz
b7349e42c7
feat: Allow users to open multiple files with the same name in the web version + make web Dockerfile able to run web server by itself ( #1518 )
2024-01-26 18:52:05 +00:00
WerWolv
bde476dfb7
build: Make sure libraries are correctly linked in external plugins
2024-01-26 12:36:07 +01:00
Nik
6ae86ce906
build: Get rid of pkgconfig as much as possible ( #1517 )
2024-01-26 12:13:22 +01:00
WerWolv
919110b024
impr: Make data information view have per-provider state
2024-01-25 22:49:56 +01:00
WerWolv
9c25a1609e
feat: Add more magic information to the information view
2024-01-25 22:49:22 +01:00
WerWolv
78723887e1
build: Updated dependencies
2024-01-25 11:33:34 +01:00
WerWolv
920b403ee3
build: Fixed libimhex not finding nlohmann json on some platforms
2024-01-25 11:05:02 +01:00
WerWolv
390c1469b1
build: Fix rpath issues on macOS
2024-01-24 22:30:40 +01:00
WerWolv
b605c463a1
impr: Further improve interfacing with external plugins
2024-01-22 23:35:00 +01:00
WerWolv
00491c8d90
git: Put libimhex and the ui plugin library under LGPLv2.1
2024-01-22 19:05:04 +01:00
WerWolv
60e7362f4e
feat: Allow extra plugin folders to be specified with the --plugins
cli option
2024-01-22 12:53:07 +01:00
Nik
58603ed12a
impr: Better experience when first starting ImHex ( #1510 )
2024-01-21 18:39:51 +01:00
Nik
d005b5d2d9
feat: Allow toolbar icons to be modified ( #1509 )
2024-01-21 18:39:32 +01:00
Nik
a13b5bf8c0
feat: Implement Myers' diffing algorithm ( #1508 )
2024-01-21 18:39:13 +01:00
Ada
cc97c0e525
fix: Segfault when launching ImHex with file arguments ( #1501 )
...
d511080814
introduced a regression where
running imhex with arguments (i.e. `imhex blob1.bin blob2.bin`) will
segfault due to a null pointer dereference.
### Implementation description
This patch updates `getSubCommands` to follow the same control flow as
`getFeatures`, where if the function returns a null pointer, it will
return gracefully rather than crash.
2024-01-18 11:11:06 +01:00
WerWolv
ffb324f685
patterns: Updated pattern language
2024-01-16 00:46:01 +01:00
WerWolv
b3d3794e1d
patterns: Updated pattern language
2024-01-15 21:10:44 +01:00
WerWolv
82a3017629
feat: Added always on top and fullscreen mode toggle
2024-01-15 20:52:08 +01:00
WerWolv
d511080814
impr: Make plugin features and subcommands work in statically linked builds
2024-01-13 00:34:13 +01:00
WerWolv
ea7483f9a7
impr: Get rid of the concept of built-in plugins
...
#1489
2024-01-12 23:03:13 +01:00
WerWolv
72f4331703
feat: Added virtual files to the pattern language
2024-01-11 20:11:22 +01:00
WerWolv
3449525ead
feat: Added drag-n-drop overlay for windows
2024-01-10 23:46:50 +01:00
WerWolv
1c17ec5599
fix: Avoid heap allocations in thread local storage
2024-01-10 20:13:53 +01:00
WerWolv
f518bdadbd
fix: Properly clear thread-local thread name
2024-01-09 21:46:54 +01:00
WerWolv
d5c8021b41
fix: Use a thread-local storage for thread names instead
2024-01-09 16:16:20 +01:00
WerWolv
929b5176ce
impr: Fallback to old thread name API when new one isn't available
2024-01-09 13:43:34 +01:00
WerWolv
dd9a2e1818
fix: Errors being thrown during library init
2024-01-09 11:38:56 +01:00
WerWolv
0b5656dcc4
fix: Manually initialize library plugins
2024-01-09 11:31:56 +01:00
WerWolv
037d77f28e
impr: Improve plugin unload logging
2024-01-09 10:54:53 +01:00
WerWolv
301e95b708
impr: Move plugin unload logging to plugins
2024-01-09 10:53:50 +01:00
WerWolv
874bac7de2
impr: Include thread name in log
2024-01-09 10:39:06 +01:00
WerWolv
bfafc692db
impr: Added icons to all menu items
2024-01-08 21:51:48 +01:00
WerWolv
9530100455
fix: Texture interpreting raw data as structured images
2024-01-08 09:39:01 +01:00
WerWolv
cab329556c
impr: Make sure plugins are only loaded once
2024-01-07 18:45:17 +01:00
WerWolv
1c5d6cbe94
impr: Added error reporting for plugin unloading
2024-01-07 16:07:53 +01:00
WerWolv
576bc80716
impr: Use full windows to draw tutorial popups
2024-01-06 22:54:18 +01:00
WerWolv
c89d19cd27
impr: Make file provider use atomic file IO instead of memory mappings
2024-01-06 16:09:28 +01:00
WerWolv
f9ab16049b
fix: Make sure plugins are unloaded in opposite load order
2024-01-06 16:09:05 +01:00
WerWolv
09300c209f
build: Updated libfmt
2024-01-06 09:36:53 +01:00
WerWolv
464495987a
fix: Crash due to task manager not being fully reset
2024-01-04 21:33:17 +01:00
WerWolv
556fd2bbc3
build: Really only build the things that are necessary
2024-01-04 13:18:27 +01:00
WerWolv
0097d1782e
build: Fix external plugins not having a imhex version set
2024-01-04 12:01:40 +01:00
WerWolv
ebf379f7c1
build: Fix some sdk variables not being set correctly
2024-01-04 10:39:07 +01:00
WerWolv
cd72ff1f84
build: Fix installing external plugins
2024-01-04 10:25:29 +01:00
WerWolv
eca41cac16
build: Fix more link and define issues
2024-01-04 01:06:38 +01:00
WerWolv
a8e2e132d1
build: Fix library linking and define setting issues
2024-01-04 01:01:51 +01:00
WerWolv
499711b9af
build: Updated libfmt
2024-01-04 00:40:40 +01:00
WerWolv
ff48d37598
build: Make SDK not try to link to unbundled libraries
2024-01-04 00:37:56 +01:00
WerWolv
4a5f1038e0
fix: Crash when opening a file that cannot be mapped into memory
2023-12-31 14:58:20 +01:00
WerWolv
e2b7a69fc8
fix: Warnings when trying to load progress for achievements that aren't in save file
2023-12-31 13:53:28 +01:00
Nik
950eaea8af
impr: Make decompression support actually useful ( #1481 )
2023-12-31 11:39:24 +01:00
WerWolv
b76e7ff678
impr: Remove duplicate window name from macOS title bar
2023-12-30 23:52:25 +01:00
Nik
5a0a5ad445
build: Fix macOS M1 build entirely ( #1480 )
2023-12-30 19:11:33 +01:00
WerWolv
af63b42eaf
impr: Make task progress bar show animation when no progress is set
2023-12-28 22:14:45 +01:00
WerWolv
5adeac6bbc
fix: Make sure library plugins are always initialized
2023-12-28 14:59:23 +01:00
WerWolv
3c6f52f5ea
impr: Harden achievement progress store function
2023-12-27 16:57:44 +01:00
WerWolv
874619f62e
impr: Harden settings store function
2023-12-27 16:53:03 +01:00
WerWolv
74b5c93caf
impr: Code style improvements
2023-12-27 16:33:49 +01:00
WerWolv
ec45d1f564
build: Updated libwolv
2023-12-27 16:26:02 +01:00
WerWolv
1cf692cecf
fix: PerProvider move event not being unsubscribed
2023-12-27 11:33:04 +01:00
WerWolv
af5b871383
fix: Provider not having any valid regions by default
2023-12-27 11:31:25 +01:00
WerWolv
37d60411bb
fix: Hyperlink items disappearing inside of scrolling containers
2023-12-27 02:14:38 +01:00
WerWolv
4e0a93fc20
fix: MemoryProvider not having any valid regions
2023-12-27 01:05:34 +01:00
WerWolv
96fe608d60
impr: Switch most usages of modals over to toasts
2023-12-26 00:22:47 +01:00
WerWolv
98bc89cb39
impr: Make sure all views are closed before loading new workspace or layout
2023-12-24 14:51:47 +01:00
WerWolv
e2489151f3
feat: Added decompressing support
2023-12-24 13:14:51 +01:00
WerWolv
9066891ce2
fix: ImHex not starting on some platforms
2023-12-24 12:20:51 +01:00
WerWolv
65e2f1b5af
fix: Synchronized scrolling not working correctly
2023-12-24 00:06:16 +01:00
WerWolv
83f8370e2a
impr: Don't display plugins in the list that couldn't be loaded
2023-12-23 23:12:15 +01:00
WerWolv
8a428df7df
build: Updated HashLibPlus
2023-12-23 22:57:25 +01:00
WerWolv
de6bb5dfb9
build: Updated HashLibPlus
2023-12-23 22:55:41 +01:00
WerWolv
80561001b8
build: Updated HashLibPlus
2023-12-23 22:40:47 +01:00
WerWolv
33d077e997
build: Updated HashLibPlus
2023-12-23 22:25:01 +01:00
WerWolv
fe24db7c57
feat: Move hashes into plugin, merged in extra hashes plugin
2023-12-23 22:01:47 +01:00
Nik
61bfe10bc2
refactor: Rework features that use external libraries into optional plugins ( #1470 )
2023-12-23 21:09:41 +01:00
Nik
84bfd10416
build: Restructured entire custom plugin system ( #1469 )
2023-12-22 23:39:38 +01:00
WerWolv
b934ca6ad3
impr: Allow a entire 64 bit address space to be displayed in the hex editor
2023-12-22 16:58:50 +01:00
Justus Garbe
ad8e3e38f0
Revert pattern language until it's stable again ( #1468 )
...
- Revert pattern language
2023-12-21 22:01:07 +01:00
WerWolv
ffc1aa6a91
patterns: Updated pattern language
2023-12-21 16:56:21 +01:00
WerWolv
d48acf7fef
patterns: Updated pattern language
2023-12-21 16:39:37 +01:00
WerWolv
72260b5323
patterns: Updated pattern language
2023-12-21 16:23:50 +01:00
WerWolv
e84b8cb96d
build: Fix glfw linking
2023-12-21 16:02:28 +01:00
WerWolv
adcaad791a
patterns: Updated pattern language
2023-12-21 14:58:45 +01:00
WerWolv
86231d0154
build: Release build on Windows trying to link to glfw3dll
for some reason
2023-12-21 13:57:25 +01:00
WerWolv
e2ae567b9f
fix: Logger not printing project prefix properly
2023-12-20 15:10:53 +01:00
WerWolv
f47163c4ad
build: Updated libromfs
2023-12-20 14:11:51 +01:00
WerWolv
e951359a46
feat: Add frame time graph to FPS display
2023-12-20 13:42:42 +01:00
WerWolv
5b3ae56912
patterns: Update all pattern language code to use new API
2023-12-20 10:08:40 +01:00
WerWolv
2b5789631f
feat: Added basic toast popups
2023-12-19 23:21:20 +01:00
WerWolv
96db2074c6
feat: Add ignore case and UTF16 search options to sequence searching
2023-12-19 14:34:35 +01:00
WerWolv
c7ab4a4569
refactor: Get rid of this->m_
2023-12-19 13:10:25 +01:00
WerWolv
dd4be3b772
refactor: Make sure unlocalized strings are always actually unlocalized
2023-12-19 12:22:28 +01:00
WerWolv
71763d108b
build: Updated libwolv
2023-12-18 22:39:46 +01:00
WerWolv
4973556fc8
impr: Better UI resize handling on welcome screen
2023-12-18 13:08:17 +01:00
WerWolv
450c93e029
impr: Cleanup welcome screen
2023-12-18 11:03:19 +01:00
WerWolv
c1abbfad7d
impr: Make sure welcome screen stays at the back
2023-12-18 10:14:07 +01:00
WerWolv
f2a795c51e
fix: Provider loader interface being closable and not resizing correctly
2023-12-17 23:15:52 +01:00
WerWolv
b1aa4fd3f8
fix: Resize operations not working correctly
...
#1463
2023-12-15 20:59:58 +01:00
WerWolv
b58463bbaf
build: Updated libwolv
2023-12-15 08:11:22 +01:00
WerWolv
78ef5b0d07
fix: ProviderChanged Event not being called correctly when closing first provider
...
Fixes #1421 , Fixes #1416
2023-12-14 20:48:30 +01:00
WerWolv
c1f76be3b7
feat: Display complete window title when hovering over search bar
2023-12-14 13:50:26 +01:00
WerWolv
2ebd3c6f35
impr: Better centering of icons in icon buttons
2023-12-14 13:49:46 +01:00
WerWolv
710ceedf3d
fix: Rare case where workspace was saved to wrong file
2023-12-14 09:36:29 +01:00
WerWolv
5b77f511d3
impr: Added shadow to tutorial popups
2023-12-13 23:44:53 +01:00
WerWolv
f000b6bc0a
feat: Added basic introduction tutorial
2023-12-13 23:03:39 +01:00
WerWolv
346f1362c6
impr: Allow more popups to be closed with Escape
2023-12-13 15:08:27 +01:00
WerWolv
92043a3d23
feat: Added tutorials view
2023-12-13 13:04:59 +01:00
WerWolv
3bc5295eae
impr: Allow tutorials to work correctly with localized strings
2023-12-13 11:48:21 +01:00
WerWolv
5bcfe37b4e
feat: Added tutorial system
2023-12-13 11:24:25 +01:00
WerWolv
c32dad75cd
fix: Remove logging from CLI
2023-12-12 13:20:39 +01:00
WerWolv
1b457dae7d
fix: Workspaces not always loading layout correctly
2023-12-12 00:16:21 +01:00
WerWolv
690b0df932
fix: Crash after restarting ImHex
2023-12-11 23:05:58 +01:00
WerWolv
1e4bb8c91e
impr: Remove Font Awesome
2023-12-11 23:05:35 +01:00
WerWolv
623e074ba0
build: Updated libromfs
2023-12-11 16:11:49 +01:00
WerWolv
91230ba438
feat: Added workspaces
2023-12-11 15:54:22 +01:00
WerWolv
7a4358a5ec
feat: Added automatic backups
2023-12-11 11:42:33 +01:00
WerWolv
ef7898ea8d
impr: Add support for specifying filtering mode when loading textures
2023-12-09 22:00:35 +01:00
WerWolv
09a148b8a5
impr: Add hint text about font size when no custom font is selected
2023-12-09 12:14:45 +01:00
WerWolv
878f45dd80
fix: Various build errors
2023-12-08 16:22:36 +01:00
WerWolv
f1b40d0500
build: Updated libromfs
2023-12-08 14:30:35 +01:00
WerWolv
0cbaf40747
build: Allow for better stacktraces on Linux
2023-12-08 14:00:32 +01:00
WerWolv
b4813660b5
refactor: Better interface for the event system
2023-12-08 10:29:44 +01:00
Truman Kilen
5c84ef5f72
feat: Added Linux support to the Process Memory Provider ( #1331 )
...
<!--
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 -->
Implement a Linux backend for the ProcessMemoryProvider plugin.
### Implementation description
<!-- Explain what you did to correct the problem -->
Most of the provider code is the same between Windows and Linux. The
primary differences are:
- enumerate PIDs in `/proc/` to get the process list
- use `/proc/<PID>/cmdline` as the process name
- parse `/proc/<PID>/maps` to get the module list
- reading/writing from memory is done using
`process_vm_readv`/`process_vm_writev`
NOTE: `sudo setcap CAP_SYS_PTRACE=+eip build/imhex` must be run to give
the binary permission to read another process' memory. Running as root
user should also work but I would not recommend it.
### Additional things
The existing translations keys no longer match since I moved the plugin
from `windows` to `builtin`.
I'm not well versed in C++ so I attempted to keep my changes rather
simple. Feedback is very welcome.
---------
Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-12-07 23:33:15 +01:00
WerWolv
7f69f8bcdb
impr: More size_t -> u64
2023-12-07 13:02:12 +01:00
WerWolv
3a016da549
impr: Make providers return a 64 bit size on all platforms
2023-12-07 12:06:26 +01:00
WerWolv
9ba6d7ee1e
impr: Added simplified welcome screen
2023-12-07 11:18:49 +01:00
WerWolv
370ca740e3
feat: Allow layouts to be locked
2023-12-06 13:49:58 +01:00
WerWolv
37ac1b66dd
refactor: Task Manager related code
2023-12-06 11:04:35 +01:00
WerWolv
760b8c7a88
impr: Make long running tasks not freeze ImHex, fix saving non-continuous providers
...
Fixes #1454
2023-12-05 14:32:43 +01:00
Nik
f9a9ed4846
impr: Vastly improved 3D Visualizer ( #1456 )
...
Based entirely on @paxcut's amazing PR #1443
---------
Co-authored-by: paxcut <paxcut@outlook.com>
Co-authored-by: paxcut <53811119+paxcut@users.noreply.github.com>
2023-12-05 10:49:51 +01:00
WerWolv
e8f0a3bd23
impr: Force center modal views
2023-12-04 22:32:25 +01:00
WerWolv
08fd09064a
fix: Settings view still using old system and not opening properly
2023-12-04 22:17:43 +01:00
Nik
caee764af3
fix: Crash when destructing a moved plugin
2023-12-04 21:01:48 +01:00
WerWolv
f71fa2f704
impr: Better centered text rendering
2023-12-02 23:46:20 +01:00
WerWolv
e6ad54b53b
fix: Overlays not being applied properly
2023-12-02 18:42:57 +01:00
WerWolv
768982b67a
patterns: Updated pattern language
2023-12-02 14:35:54 +01:00
WerWolv
4fd3167bb3
feat: Added minimal layout
2023-12-02 14:35:44 +01:00
WerWolv
866cb5706d
feat: Added highlighting rules
2023-12-02 11:09:32 +01:00
WerWolv
2cf642a2a4
build: Updated libwolv
2023-12-01 14:07:10 +01:00
WerWolv
a50bb39978
impr: Further improve compile times
2023-11-30 14:40:07 +01:00
WerWolv
8ee234e5a6
impr: Optimize api includes
2023-11-30 11:23:12 +01:00