Commit graph

360 commits

Author SHA1 Message Date
d30fecea99 Merge commit '11e11264a6' into gzdoom_merge 2025-09-24 19:42:51 +02:00
2c3d46075d Merge commit '991d522c57' into gzdoom_merge 2025-09-24 19:42:37 +02:00
991d522c57 Squashed 'libraries/ZWidget/' changes from b5ae8c8ab0..bac2a2edc5
bac2a2edc5 Exclude SDL2 from Windows compilation.
5b859bfd84 WaylandDisplayBackend: If the clicked window has a locked mouse, hide the cursor afterwards
ce76df6aa6 WaylandDisplayBackend: Add a TODO about XDG_Activation
a0ba04275b WaylandDisplayWindow: Move XDG Activation Token outside activate()

git-subtree-dir: libraries/ZWidget
git-subtree-split: bac2a2edc52cf12d1223244251876e9c4533e614
2025-09-24 19:42:37 +02:00
b2a9dbf809 Merge remote-tracking branch 'gzdoom/master' into gzdoom_merge 2025-09-24 19:39:17 +02:00
Marcus Minhorst
4505e758f0 Link MoltenVK 2025-09-23 01:38:57 -04:00
Marcus Minhorst
c26490a395 Fix linker config 2025-09-23 01:38:57 -04:00
Christoph Oelckers
dadfade127 Exclude SDL2 from Windows compilation.
This causes problems if CMake finds it - these files are not meant to be used on Windows builds
2025-09-20 23:08:45 -04:00
Marcus Minhorst
65cfb976fa
Squashed 'libraries/ZWidget/' changes from 924b8e0e78..b5ae8c8ab0 (#3357)
b5ae8c8ab0 Fix sdl2 initial paint
a06bc7f8b4 Wayland Backend: Use unaccelerated dx and dy for OnMouseMoveRawEvent()
f1789718d1 Wayland Backend: Implement clipboard support
11f3fe0e21 Fix a typo
2f4e3603e0 Add timers
bcecfa9ee2 Fix filling with wrong window background sometimes
6681d2c2d8 Fix timer linked list
4564f7ea88 OnXInputEvent calls callbacks, which potentially could create/destroy windows
92f99a1abf Improve timer stability
4ccb1a03f8 Fix Cursor Shape protocol related crashes - If the protocol is available, avoid handling buffers directly
fdefb2945d Add timers for X11 backend
25a2a2c846 WaylandDisplayBackend: New protocols and improvements - Add xdg_toplevel_icon and cursor_shape protocols support - Implement WaylandDisplayWindow::SetWindowIcon() based on the xdg_toplevel_icon protocol.
d817b79b98 Fix compile error
af5a87dba5 Add missing include statement
43996b7864 setIcon for x11
49ae157f31 Implement setIcon for Windows Fix spaces that should be tabs in the wayland backend
a564526bb7 WaylandDisplayBackend: Combine LShift and RShift into Shift
46031df314 CMakeLists: Remove the unnecessary additional SDL2 check in the example section
5363f5354e Implement open folder dialog Improve support for paths with spaces in them
bec2844e11 Fix the CI label for macOS
e2c6af9e5d Seems CI was set to use a macOS version from 1865
991ca3377a Enable macOS in CI
1f5c95edef include SDL2 directory to fix mac compilation

git-subtree-dir: libraries/ZWidget
git-subtree-split: b5ae8c8ab038789298a8df1384322f0e69e57e5c
2025-09-19 23:49:56 -03:00
Marcus Minhorst
5834fe6abe
[Nit] Silence more minor warnings
* Silence -Wdeprecated-literal-operator

* Silence -Wmissing-braces warning

* Silence -Wbitwise-instead-of-logical warning

* Silence -Wlogical-op-parentheses warning
2025-09-19 23:49:03 -03:00
Marcus Minhorst
e2bd23dfa0
[Nit] Fixup nontrivial memcall warning
* Silenced -Wnontrivial-memcall in asmjit

* Silenced -Wnontrivial-memcall in tools

* Silenced -Wnontrivial-memcall

* (to squash) Silenced -Wnontrivial-memcall (as reviewed by Jay)

* (to squash) Silenced -Wnontrivial-memcall (as reviewed by Jay [again])
2025-09-19 16:38:53 -03:00
rafapaezbas
6a0ee2c9fe fix compilation in mac with sdl2 2025-09-08 03:04:03 -03:00
Brad Smith
ca74b49dc8 Remove hardcoded libdl for BSD's
Fixes build on OpenBSD and NetBSD. BSD's do not use libdl.
2025-08-30 06:31:32 -04:00
Marcus Minhorst
f532b04712 Maybe fix initial paint
Needs to be upstreamed after confirming this does in fact fix things
2025-08-26 23:22:53 -04:00
Marcus Minhorst
27a934ee70 Merge commit '87689ccb5f' into theme 2025-08-26 22:09:24 -04:00
Rachael Alexanderson
f30fc8dd00
mirror changes from commit '194fb9e' at https://github.com/dpjudas/vkdoom 2025-08-13 17:24:51 -04:00
Rachael Alexanderson
6356d87438 Squashed 'libraries/ZWidget/' changes from 02da8cdc0e..cecd34301d
cecd34301d Delay load DPI-related functions
bfc172f702 Added exception to some unimplemented functions
7c8d469bcb Added item modifications functions
847d0e6d9e Improved keyboard navigation
8c4270e0f8 Dropdown can now be closed by re-selecting it
91402c31ec Fix dropdown positioning in x11 and win32

git-subtree-dir: libraries/ZWidget
git-subtree-split: cecd34301d369400227eb0f27bad2ab41ad756d2
2025-08-13 17:17:30 -04:00
Rachael Alexanderson
b7d9ddb6a3
Merge commit '6356d87438' 2025-08-13 17:17:30 -04:00
25b5407b09 Merge commit '31c8dde32f' 2025-08-13 14:11:06 +02:00
Marcus Minhorst
2ef2243f7f
Update zwidget
* Moved subtree scripts to tools, updated bash script for granularity

* Squashed 'libraries/ZWidget/' changes from 96501b6ef1..02da8cdc0e

02da8cdc0e Added ListView::GetPreferredWidth, ListView::GetPreferredHeight, ListView::GetMinHeight
04bf153d9d Added event subscriber system
1ce55e5da2 Added Dropdown Known issues: does not hide when parent widget's visibility changes

git-subtree-dir: libraries/ZWidget
git-subtree-split: 02da8cdc0e0ca14443245e0aa5a25b3f8e84928b
2025-08-09 21:28:36 -03:00
Magnus Norddahl
3fdd22ef91 Merge remote-tracking branch 'gzdoom/master' into big_beautiful_merge 2025-08-06 21:06:53 +02:00
Rachael Alexanderson
d72ae6d14b
- implement impure's changes to discordrpc to use crt allocator to prevent crashes with newer versions of cmake 2025-08-02 11:55:24 -04:00
Rachael Alexanderson
34c2d4f917
Squashed commit of the following:
- add submodule update scripts
    - remove auto-setup scripts, they don't work anymore
    - copy zmusic.dll into build folder (this may need to be also done on Linux sometime)
    mirror changes from commit '194fb9e' at https://github.com/dpjudas/vkdoom
    - fix for case sensitive systems
2025-07-30 01:25:09 -04:00
Rachael Alexanderson
397976738f
- integrate zmusic into normal build process 2025-07-30 00:37:50 -04:00
Rachael Alexanderson
8f1f0d5a02 Merge commit '9f3cb3d92e' as 'libraries/ZMusic' 2025-07-30 00:24:15 -04:00
Rachael Alexanderson
404123a22e Merge commit 'd9b2c00228' as 'libraries/ZWidget' 2025-07-30 00:09:28 -04:00
Rachael Alexanderson
3dbe3bd8e0
- remove zwidget local copy to be included later as a subtree 2025-07-30 00:05:20 -04:00
dpjudas
ef2f720f6b Fix compile error 2025-07-29 19:28:03 +02:00
Magnus Norddahl
7d5c1bb2e4 Timer support for SDL backend 2025-07-29 18:37:12 +02:00
Magnus Norddahl
521dcbe07f Update zwidget 2025-07-29 00:23:16 +02:00
Magnus Norddahl
95edc8c4a3 Update zwidget 2025-07-29 00:18:22 +02:00
Magnus Norddahl
5c9bf33b0a Fix lineedit selection bug 2025-07-29 00:09:50 +02:00
Magnus Norddahl
2f9e286dc7 Add home/end/pageup/pagedown support to listview 2025-07-28 23:17:49 +02:00
Magnus Norddahl
322b033c3b Update zwidget 2025-07-28 22:46:48 +02:00
Magnus Norddahl
73d1b123eb Add borders to tab widget 2025-07-28 21:36:44 +02:00
Magnus Norddahl
56ddcb9a2e Update to latest zwidget 2025-07-28 20:50:51 +02:00
Nikita
45ac7c1d9e
ZScript DAP Debug server (#3009)
* Add STL-standard type traits and functions to TMap to enable for loop iteration

* add third-party range-map library

I have e-mailed the author for clarifcation on the license, will update this when they respond

* vcpkg: Add cppdap and eventpp libraries, update baseline

* DAP implementation

* Add `FileSystem::FileHash()` to get the CRC32 hash

* add `starting_offset` param to `VMDisasm()` for debugger disassembly view

Defaults to `0`, should not change output if it's not set

* Add `VMFrameStack::HasFrames()` to prevent assertions when inspecting in the debugger

* Add `PC` field to VMFrame, ensure that it is updated whenever vm increments/decrements the pc

Does not change alignment, the offsets used in VMFrame still work
We need this for the debugger because we otherwise have no way to get the pc; it was a local in `ExecScriptFunc()`

* `ZCCCompiler::CreateClassTypes()`: ensure SourceLumpName is set for classes derived from non-native classes

* start debug server in d_main, add `vm_debug` cvars and `-debug` CLI arg

* Add documentation for `vm_debug` cvars

* vm_exec: Add debugger hooks for instruction execution events

* c_console: Add debugger hooks for logging events in `PrintString`

* add `.cache/` to gitignore

* vendor cppdap on main @ 6464cd7

Patches:
removed .gitmodules (submodules were thirdparty/json, thirdparty/googletest)
removed thirdparty/googletest, not needed
removed thirdparty/json/docs, thirdparty/json/test, thirdparty/json/benchmarks to prevent massive bloat

* vendor eventpp on master @ 1224dd6

* build: use internal cppdap and eventpp by default

* dap: fix Binary::GetFunctionLineRange()

* fix bug in range_map::find_ranges

* make Binary dap::Source dynamic

* cache source code upon retrieval

* refactor Binary into a class, cleanup PexCache

* fix ending session gracefully

* d_main: Stop debug server in D_Cleanup()

* Fix connecting to debugger when session already started

* cleanup unused stuff in ZScriptDebugger

* always send TerminateEvents on disconnect if initialized

* tweak color display

* Don't cache disassembly lines when scanning scripts

* Cache nodes when getting runtime state

* WIP display locals

* Fix display of static arrays

* Ensure names display in proper order

* dap: Fix struct locals display, add args display

* Support `start` parameter

* Support `filter` parameter

* remove struct unbound native data display

Practically useless for debugging zscript and didn't work properly anyway

* d_main: fix vm_jit and vm_jit not being disabled soon enough

* support breaking on abort exceptions

* dap: refactor game event emitter functions into seperate header

* dap: show native functions on stack

* dap: Remove "Native" from exception handling, simplify exception event emit

* dap: add instruction breakpoints

* dap: fix display of locals not in scope yet

* dap: Make disassembly view display invalid instructions for non-code addresses

* dap: remove dot initializers

* dap: fix local structs in scope

* dap: don't parse the non-used options in the launch/attach requests

* dap: fix local struct view

* dap: Fix displaying objects that aren't their actual types

* dap: Fix action and state handling

* dap: stack display view

* dap: fix object display view

* d_dehacked: set qualified name in addition to the printable name

* dap: fix displaying breakpoint errors when script isn't loaded

* dap: remove debug print

* dap: Display parameter names

* dap: Turn down verbosity of logging

* dap: fix disassembly view

* dap: fix performance problems with arrays

* c_console: emit event only if not PRINT_NODAPEVENT

* dap: improve logging

* dap: update upstream cppdap library to fix deadlocks on no bind

* dap: Fix ending session on client socket closed

* dap: prevent DebugServer.h from pulling in `dap` and `ZScriptDebugger.h`

* dap: fix pause event not being emitted on pause

* dap: remove eventpp emitters, way too slow

* Remove eventpp dependency

* dap: Display correct register names

* dap: Show special inits in registers

* dap: Add stack offset to VMLocalVariable

* dap: fix display of static arrays and local variables on stack vs. registers

* dap: fix displaying function pointers

* dap: tweak color display

* dap: fix scalar display < 4

* dap: add Globals display to debugger

* dap: unify methods to get vmvalue

* dap: rename free method to freeValue to avoid running afoul of macro defs

* fix windows builds

* fix compile on linux

* cleanup

* Fix display of function breakpoints

* dap: Don't send back binary files

* dap: include sbarinfo in script types (no debug support for anything but zscript yet, this is just for returning source info)

* dap: don't show ending session message unless initialized

* fix erroneous commit

* dap: handle evaluate requests

* Fix getting bitfield values

* Add CVars Scope and evaluation

* add running console commands from repl

* dap: disable commands via repl for now

* fix loading functions DECORATE scripts

* Add source information to Dehacked VM functions, add debugging support

* dap: cleanup

* fix resolving archive paths

* don't send source back on native stack frames

* handle `modules` request

* cleanup

* allow evaluating cvars on hover

* fix oob bpinfos

* fix restarting the game blowing out the debug server

* dap: process input events while paused to prevent deadlocks

* fix getting local state

* dap: fix LocalState alignment

* dap: fix DumpStateHelper

* update cppdap protocol version to 1.68.0

* remove cppdap from vcpkg deps

We can't use the upstream version anyway because the maintainers are not merging our patches

* dap: make named variable nodes derive from the same class

* dap: make cvar scope available in native stack frames

* handle local variables with conflicting names

* add I_GetWindowEvent() to win32 to only process window events when debugging is paused

* dap: fix evaluate

* dap: fix display of `out` variables
2025-07-18 00:01:18 -03:00
Magnus Norddahl
045deae316 Newer version of the vulkan SDK does not use pipes in the debug message output anymore 2025-06-22 06:50:33 +02:00
Boondorl
885c1d2920 Update to latest ZWidget version
This adds new features (such as themes) alongside fixing numerous bugs. This should be kept up-to-date with upstream more often and changes to it should be PR'd back to its main repo.
2025-06-18 14:47:03 -03:00
Ricardo Luís Vaz Silva
9aa44fa13b Merge branch '4.14.2' into gz_merge 2025-05-02 17:15:41 -03:00
Magnus Norddahl
fe452faadc Fix UI scale for X11.
Fix page up and page down keys not working.
Fix mouse wheel not working
2025-04-22 12:05:09 +02:00
Magnus Norddahl
26b10dbdda Validation layer wants layout specified during linking (is it right? nobody knows! the vulkan spec is unreadable in this part, thanks khronos!)
Fix light probe pass using depth stencil format selection before it was set
2025-04-20 18:15:38 +02:00
dpjudas
22b7f02305 Remove vulkan shader modules 2025-04-19 08:24:43 +02:00
Peppersawce
49cca9e8fe Haiku support patch 2025-04-09 14:31:57 -03:00
James Le Cuirot
786b9806f6 Fix building with GCC 15 2025-04-09 14:30:04 -03:00
Peppersawce
a02892389d Haiku support patch 2025-04-05 20:49:45 -04:00
dpjudas
340a98950f Update ZVulkan to support graphics pipeline libraries 2025-04-05 03:08:38 +02:00
Magnus Norddahl
c6344588c2 Update glslang to 15.2.0 2025-04-03 00:35:31 +02:00
Magnus Norddahl
976c18f3a9 Suppress another warning 2025-03-22 13:02:21 +01:00
dpjudas
5e22b07db2 Update to latest zvulkan 2025-03-22 04:44:33 +01:00
Magnus Norddahl
f34cce5614 Replace RectPacker with a version that can do dynamic allocations 2025-03-16 18:42:49 +01:00