Commit Graph

38 Commits

Author SHA1 Message Date
ts-korhonen
d2a9389ce7 qt: Initial OpenGL 3.0 renderer implementation 2022-02-27 14:56:51 +02:00
Jasmine Iwanek
4674756664 More newline and whitespace cleanups 2022-02-20 16:26:40 -05:00
Cacodemon345
0d31bb0cc6 qt: X11 Xinput2 mouse motion backend 2022-02-15 02:34:13 +06:00
Cacodemon345
bfebbd05d3 qt: Compatibility improvements
* Patch to build with Qt 5.11 and later by jriwanek
* Attempt to fix viewport on hardware renderers
2022-02-11 13:49:45 +06:00
Cacodemon345
775dad5fa3 qt: Use QDesktopWidget for screen retrival 2022-02-10 15:30:39 +06:00
Cacodemon345
a637f61d4f Add missing copyright notices 2022-02-07 15:00:02 +06:00
Cacodemon345
03a6b2b50a Fix bottom line being glitched 2022-02-05 16:45:17 +06:00
Alexander Babikov
45520768ba Fix unsolicited mouse captures after a double-click in an file selection dialog 2022-02-05 01:01:06 +05:00
ts-korhonen
8c8e2219d8 qt: Refactor renderers buffer ownership
Invert the way buffers are created; make renderer create buffers for
renderer stack.
Use QImage bits as the buffer for software renderer.
2022-01-15 21:45:34 +02:00
Cacodemon345
31d3d6309b Copy lines from buffer32 one by one
(cherry picked from commit 00a75d4e602ec3ba6d214eeae4500c90dc77fc5f)
2022-01-14 16:44:54 +02:00
Cacodemon345
9b8650cae5 Fix crash when switching fullscreen stretching modes when fullscreen 2021-12-31 13:02:27 +06:00
Cacodemon345
1bdff37e38 * Turned the software renderer into a window as well
* Fix inability to move window on GNOME
* Fix status bar icons being frozen after icon set switch
2021-12-29 23:49:09 +06:00
Cacodemon345
814aaf08a7 Add OpenGL 3.0 Core renderer 2021-12-27 16:32:03 +06:00
Cacodemon345
33d2844de6 Fix OpenGL ES renderer not actually creating OpenGL ES contexts 2021-12-26 11:52:50 +06:00
Cacodemon345
fa70dda2c0 Fix screenshots being cut off 2021-12-26 00:49:21 +06:00
Cacodemon345
07af487acb * Fix rare crash when switching renderers
* Abandon QPainter in hardware renderers in favour of OpenGL
* Disable VSync in the application globally
2021-12-25 15:34:00 +06:00
Cacodemon345
67a0f7a85f Blitting improvements
* Use a single QImage copy for actual drawing
* Use std::array and std::unique_ptr for image buffers
* Signal immediately after copying the buffer to internal image
2021-12-21 16:38:13 +06:00
Cacodemon345
0313d02073 Delegate input events of HardwareRenderer to RendererStack 2021-12-18 00:37:30 +06:00
ts-korhonen
0c7450a08a Merge branch 'winqt5' of https://github.com/Cacodemon345/86Box into qt 2021-12-17 16:48:31 +02:00
ts-korhonen
265abedb3b Merge branch 'qt' of https://github.com/jgilje/86Box into qt 2021-12-17 16:23:59 +02:00
Cacodemon345
2aa93d2e17 Merge remote-tracking branch 'winqt/qt' into winqt5 2021-12-17 16:36:47 +06:00
Joakim L. Gilje
c3c5a87a70 fixups after latest merge: plat_midi_ => rtmidi_, framebuffer is now 2048x2048 2021-12-17 11:10:32 +01:00
Cacodemon345
30376341d1 Start of windowed OpenGL rendering 2021-12-17 12:17:54 +06:00
ts-korhonen
e686a0ad87 qt: Buffer/texture size to 2048x2048 2021-12-17 07:52:30 +02:00
ts-korhonen
9d313fde17 qt: clear buffers_in_use flags when changing renderer 2021-12-15 21:19:46 +02:00
ts-korhonen
75c045c103 Merge branch 'qt' of https://github.com/jgilje/86Box into qt 2021-12-15 21:09:59 +02:00
Joakim L. Gilje
1cc09b9033 make sure render-widget gets deleted when switching 2021-12-15 20:02:35 +01:00
Joakim L. Gilje
d2115bc5e4 init the renderer on demand, instead of always ready 2021-12-15 19:58:09 +01:00
ts-korhonen
7c2cd35965 qt: Add overload protection to renderers
Added atomic_flags for renderer buffers to prevent concurrent usage and
overloading the renderer with draw requests when it's busy.
2021-12-15 00:37:48 +02:00
Cacodemon345
7934d90039 libevdev mouse support 2021-12-10 01:22:13 +06:00
Cacodemon345
03096ca9f4 Fix mouse support on EGLFS 2021-12-09 00:03:09 +06:00
Cacodemon345
fe67c40e33 Take into account max cursor position 2021-12-08 17:09:55 +06:00
Cacodemon345
a6bddd0327 Use globalPos for fullscreen 2021-12-08 17:04:30 +06:00
Cacodemon345
a078900546 Fix for fullscreen 2021-12-08 17:02:28 +06:00
Cacodemon345
b7fee7745b Mouse event improvements
* Only center the cursor when it leaves the emulator screen
* Ignore the very first mouse event that appears after it is captured for the first time after starting
2021-12-08 16:27:58 +06:00
Cacodemon345
c376cca71e Fix mouse wheel scrolling 2021-12-06 16:33:25 +06:00
Cacodemon345
f2e6d79de4 Fix building with Wayland 2021-12-05 12:02:57 +06:00
Joakim L. Gilje
a74afc3f1e added software renderer. split common functions prev.
in gleswidget to renderstack (a QStackWidget), which in
turn calls an actual renderer. added ability to target GLES
directly, but this is maybe uneeded.
2021-12-04 21:33:04 +01:00