Commit Graph

2107 Commits (72b2c029a2cd2247addf5742cfed84596326aed5)

Author SHA1 Message Date
Yuval Dolev 1ab40ff5b9 Lowered view sample count to improve the rendering speed on high dpi displays. 2020-01-14 17:21:03 +02:00
Yuval Dolev de9fc34c3e Added a hack to fix DeadLock problem regrading the system_memory_annotation function. Also started working on fixing the performance issues that I discovered in the graphics renderer on retina displays (for now I changed to FCoder_View to be layer backed which is faster for rendering animations, this seems to improve performance by a little margin but rendering on high dpi displays is not closed to being smooth yet...). 2020-01-14 03:22:29 +02:00
Yuval Dolev a737a5409a Implemented all system cli handling functions. 2020-01-13 16:15:25 +02:00
Yuval Dolev 585978982e Updates to the step scheduling to improve animations. 2020-01-13 04:20:10 +02:00
Yuval Dolev fd1c41bab4 Finished implementing the run loop. 2020-01-13 04:06:10 +02:00
Yuval Dolev f7b0b05426 Posting to clipboard now works. 2020-01-13 03:20:58 +02:00
Yuval Dolev 7d2a91805b The clipboard is now read is frame and on changes and sent to the core. We're using polling to get the clipboard contents on macOS using a timer because there is no way to get a clipboard change notification on macOS (sigh...) 2020-01-13 03:05:44 +02:00
Yuval Dolev dbcb05d2d1 Fixed a performance issue regarding timers. Now we can start a single timer per step request. 2020-01-12 23:16:03 +02:00
chr efa63025dc remaining things from list besides skipped ones 2020-01-11 22:44:12 -08:00
chr 3d9845a376 More linux platform layer 2020-01-11 22:07:01 -08:00
chr 8f6daa1c28 More linux platform layer funcs 2020-01-11 21:27:40 -08:00
Allen Webster 8c6335afb4 Stabilized scrolling in side-by-side single buffer editing 2020-01-11 18:00:38 -08:00
Allen Webster f8297dc036 Fixed paren-statement interaction in indentation logic 2020-01-11 17:20:40 -08:00
Yuval Dolev 020e2789d7 Fixed input bug where the input was not zeroed at the end of each frame. 2020-01-12 03:08:07 +02:00
Allen Webster 8e390db03c Optimizing auto-indent scanning logic 2020-01-11 16:27:34 -08:00
chr 55a5765e03 progress 2020-01-11 16:19:37 -08:00
Allen Webster f1dd78f32a Only compute line indentation info at necessary points in the auto-indent routine 2020-01-11 15:45:28 -08:00
Yuval Dolev 7f00ead99c Added support for control keys. 2020-01-11 23:12:41 +02:00
Yuval Dolev 8e4ec5215f Added KeyStoke and KeyRelease events and fixed TextInput events. 2020-01-11 22:19:43 +02:00
Yuval Dolev 13970744b4 Fixed blending bug in the Metal renderer where the destination alpha was not updated which caused problems while rendering the program in full screen mode. 2020-01-10 18:57:08 +02:00
Allen Webster 2e21156e66 Add call convention for wgl functions 2020-01-09 18:52:53 -08:00
Allen Webster 65bfe172c4 4.1.1 2020-01-09 18:15:37 -08:00
Allen Webster d143a0e6d5 Fix indent on save bug 2020-01-09 18:12:20 -08:00
Allen Webster 76735e6f01 Change file name bug fixed 2020-01-09 17:56:01 -08:00
Yuval Dolev 520ab3dd27 Fixed animations. 2020-01-10 01:04:55 +02:00
Yuval Dolev 533819c7d4 Added mouse input. 2020-01-09 20:52:39 +02:00
Yuval Dolev 88c933acd2 Implemented the renderer abstraction for both OpenGL and Metal. 2020-01-09 02:36:37 +02:00
Yuval Dolev 912bcae8a7 Started working on an abstraction for the macOS renderer implementations. 2020-01-09 02:15:25 +02:00
Yuval Dolev 521fb82113 The Metal renderer is now fully functioning. 2020-01-08 21:44:47 +02:00
Yuval Dolev a18ef3197a Implemented my own vertex buffers management, also started working on textures. 2020-01-08 01:45:36 +02:00
Yuval Dolev a34d95b848 Metal renderer is now working (no textures yet). 2020-01-07 02:55:28 +02:00
Yuval Dolev efad772401 Work on metal renderer. Only semi-working for now. 2020-01-06 02:55:07 +02:00
Yuval Dolev 813ba593e3 Fixed flipped projection matrix. 2020-01-05 03:44:16 +02:00
Yuval Dolev b52f1cee24 Metal projection matrix test. 2020-01-05 03:13:47 +02:00
Yuval Dolev 0fceec19a9 Basic metal renderer (only rendering a triangle as of right now). 2020-01-04 03:24:52 +02:00
Allen Webster 2d78eade2f Added checker for missing documentation, 2020-01-02 16:00:34 -08:00
Allen Webster 13ee76effe Added hard exit API; fixed exit menus 2020-01-02 14:37:01 -08:00
Yuval Dolev 4e0549f270 OpenGL renderer abstraction. The OpenGL renderer is now in its own view that's separate from the main 4coder view which handles all input and updates. Also added a Window Delegate which handled window events. 2020-01-03 00:09:22 +02:00
Yuval Dolev d1b9977a63 Started working on high-dpi support. 2020-01-02 04:37:23 +02:00
Yuval Dolev 0420a9a852 Implemented resizing (seems to be really slow for some reason...) and basic input (actually we're not receiving user input yet, but the we're sending the app an empty input struct with only a few parameters being updated like if it's the first step.). 2020-01-02 02:21:33 +02:00
Yuval Dolev 6f827801e5 macOS platform layer initialization and very basic update functions. The 4coder beta has been rendered successfully for the first time on macOS! 2020-01-02 01:13:32 +02:00
Yuval Dolev debdda8184 Started working on getting the opengl renderer to work but encountered a few errors on the way... 2020-01-01 18:38:48 +02:00
Yuval Dolev 0cfb8b319c Work on setting up the opengl view. 2020-01-01 04:16:39 +02:00
Yuval Dolev 26fd4cd230 Finished most of the system api functions (a few will be implemented later). 2020-01-01 00:07:21 +02:00
Yuval Dolev 8c7600ba09 Implemented all system memory handling functions. 2019-12-31 23:36:12 +02:00
Yuval Dolev 9263a4a59f Implemented all system mutex and cv handling functions. 2019-12-31 13:14:05 +02:00
Yuval Dolev cbdc6a14e0 Implemented all system thread handling functions. 2019-12-31 03:22:50 +02:00
Yuval Dolev aff4a783e0 Implemented system_get_screen_scale_factor. 2019-12-31 01:56:12 +02:00
Yuval Dolev 912174e725 Experimentations with redrawing the opengl view. 2019-12-31 00:04:33 +02:00
Yuval Dolev 1d6be32462 Setup window and basic opengl view. 2019-12-30 03:21:21 +02:00