Martin Fouilleul
d01dc832fb
[gles] Support for exposing GLES surfaces to orca apps
...
- update gles surface example
- add mp_dispatch_on_main_thread_sync() to osx threads
- add /experimental:c11atomics to glesTriangle build.bat
- mp_dispatch_on_main_thread_sync: win32 impl
- move mp_dispatch_on_main_thread_sync() on app layer
- configure dlmalloc to not assume contiguity. This allows us to reserve blocks on our end without trashing malloc-owned zones. This way we can add a block to store GL static strings when needed.
- implement deselect interface
- Log an error when an OpenGL function is called while no OpenGL API is selected, or if that function is not part of the selected API
- avoid dispatching calls to image or canvas API if surface is not selected. However, we could later allow it and temporarily select the surface _on behalf of the user_.
- Adding support for format string and optional parameters in assert macros
2023-08-08 22:15:53 +02:00
martinfouilleul
0785b6b637
[win32]
...
- Take drop shadown into account when calling SetWindowPos (milepost window frame _excludes_ the drop shadow)
- Fix mp_window_center()
2023-07-26 17:35:58 +02:00
martinfouilleul
2c0d3268e7
[win32] update window rect API
2023-07-26 16:50:45 +02:00
martinfouilleul
3816e85592
[win32, surface] always resize surface to parent window's client area
2023-07-25 14:18:02 +02:00
martinfouilleul
985aed852a
[app] change mp_move_event to mp_mouse_event and mp_frame_event to mp_move_event. Transmit both window frame and contents rect in move/resize events
2023-07-25 13:40:25 +02:00
Ilia Demianenko
40906bb852
Feedback
2023-07-15 00:15:12 -07:00
Martin Fouilleul
21aa1bef68
[win32] honor timeout value in mp_pump_events
2023-06-26 19:59:34 +02:00
martinfouilleul
0366e3d724
[win32, graphics] experiments with multisurface with transparent top-level windows
2023-06-21 15:48:26 +02:00
martinfouilleul
ae7a60b942
[win32, graphics, wip] working on multi surface, currently using top-level transparent window and moving them to cover the 'parent' window area...
2023-06-21 12:36:05 +02:00
martinfouilleul
d2c4acf6e2
[wip] adding missing impl for win32 version of orca
2023-06-17 20:09:25 +02:00
martinfouilleul
9954b69eda
[win32, io] implement IO_OP_OPEN_AT with non-null base directory handle
2023-06-13 19:53:06 +02:00
martinfouilleul
3667ab30e0
[win32, io, wip] add win32 io impl. for open/close/seek/read/write
2023-05-26 16:03:23 +02:00
Martin Fouilleul
ba125ae860
[mem] change scratch arena API to allow using independant scratch for temporary computations and results
2023-05-24 20:17:03 +02:00
martinfouilleul
db0dadd128
[win32] allow specifying start folder in open/save dialogs
2023-05-23 17:24:38 +02:00
martinfouilleul
ed45d88cfd
[win32] add file type filters to open/save dialogs
2023-05-23 16:43:57 +02:00
martinfouilleul
49de9d0290
[win32] added basic mp_save_dialogue() implementation using COM IFileSaveDialog
2023-05-23 16:04:49 +02:00
martinfouilleul
e24500e18d
[win32] added basic mp_open_dialog() implementation using COM IFileOpenDialog
2023-05-23 15:59:29 +02:00
martinfouilleul
a54c8b4f4b
[win32] alert popup using TaskDialogIndirect(): automatically handles icons, dpi, and text/buttons layout (but requires Vista or higher)
2023-05-23 14:50:31 +02:00
martinfouilleul
f1d8dd1ca9
[win32] crappy message box with custom button text. Not DPI aware, doesn't show message box image (eg exclamation/information mark), and has very crude layout...
2023-05-23 12:55:57 +02:00
martinfouilleul
a6a37c874e
[win32] adding prototypes for open/save/alert dialogs in win32_app.c
2023-05-17 16:50:07 +02:00
martinfouilleul
2a01cba026
[ui] Fix ui scrolling
2023-05-17 15:48:25 +02:00
martinfouilleul
52538248d9
[win32, wip] compile and run simple window example
2023-05-12 16:46:13 +02:00
martinfouilleul
62b8b3323e
[win32, wip] Remove input state from win32_app code
2023-05-12 11:42:35 +02:00
Martin Fouilleul
b27dc615d1
Finish separating graphics_common and graphics_surface + add platform_math, so that we can compile graphics_common to wasm in orca
2023-04-26 14:56:02 +02:00
Martin Fouilleul
86a16d3775
modifications to log system to support orca env where stdio is not defined
2023-04-18 14:33:27 +02:00
martinfouilleul
137a75540b
[win32] implemented string clipboard functions
2023-03-09 19:44:55 +01:00
martinfouilleul
cae8666561
[ui, win32] Fixed char input and modifier keys
2023-03-09 18:03:27 +01:00
martinfouilleul
9accf4c666
[ui, win32]
...
- change coord system of gl canvas to match ui
- change mouse coordinate system to match ui
- fix mouse delta
2023-03-09 17:38:41 +01:00
Martin Fouilleul
bfc19665ce
[util]
...
- shorten str8_lit macro to STR8
- use strlen() in STR8 and remove str8_from_cstring(). Usage with string literal seem to always be optimized by compile-time constant, so there's little need for a confusing macro that only works with literals and breaks with pointers.
- replaced str8_unbox() with str8_lp/str8_ip
2023-03-08 11:40:40 +01:00
Martin Fouilleul
592f4cdecd
end of line renormalization
2023-03-05 16:05:43 +01:00
martinfouilleul
653ddec978
[win32 surface sharing] win32 surface sharing using window reparenting
2023-03-03 12:41:09 +01:00
martinfouilleul
ac00cc9def
[wip, win32 surface sharing] simplifyin the surface sharing API
2023-03-02 19:21:39 +01:00
martinfouilleul
9ea9ea7636
[surface] abstracted child window layer from win32 surfaces
2023-02-21 12:35:22 +01:00
martinfouilleul
2dccfa5547
[win32 surfaces] Backing win32 surfaces with child window and implementing frame/hidding control
2023-02-20 18:34:29 +01:00
Martin Fouilleul
4306d0a01c
back osx surfaces by CALayer
2023-02-20 16:49:44 +01:00
martinfouilleul
833767d6e2
move text with the mouse in perf_text example
2023-02-09 09:50:53 +01:00
martinfouilleul
21c604104f
fix mp_app_get_resource_path()
2023-02-08 20:40:48 +01:00
martinfouilleul
c0601961f1
Reposition window when changing dpi
2023-02-08 20:40:48 +01:00
martinfouilleul
7cf4c3d925
opengl surface/renderer: set surface scaling according to dpi of first monitor. Use that dpi to scale backing texture of canvas renderer. Note: changing monitor isn't handled yet!
2023-02-08 18:22:54 +01:00
martinfouilleul
e6e674ee04
Allow setting surface swap interval in opengl surface
2023-02-08 11:49:00 +01:00
martinfouilleul
e59f2b152b
simple gles tiled renderer
2023-02-03 18:44:28 +01:00
martinfouilleul
8faf588bee
Added text rendering in win_canvas test app and confirm it's slow as is...
2023-02-02 20:36:03 +01:00
martinfouilleul
e0300e9e3c
Fixed indexing in gles_canvas_fragment shaders and fixed native keys buffer
2023-02-01 16:23:51 +01:00
martinfouilleul
72338b1a25
Extracted commonalities from platform specific app backends
2022-12-23 20:46:42 +01:00
martinfouilleul
2421871c3e
windows port initial commit: simple window with GL 4.3 context
2022-12-21 12:03:55 +01:00