Commit graph

411 commits

Author SHA1 Message Date
Yousef Khadadeh
1a5815a994 Can now add and remove from selection using shift and alt 2025-08-05 19:04:47 +03:00
Yousef Khadadeh
137b1603e5 Renamed ink dropper to eye dropper 2025-08-05 12:11:50 +03:00
Yousef Khadadeh
2605df6e54 Separated transform commit from deselecting, only one undo required to undo a paste operation 2025-08-05 11:35:22 +03:00
Yousef Khadadeh
a2e4a795f7 Transformations now commited step by step, fixes many transformation related bugs 2025-08-04 18:14:28 +03:00
Yousef Khadadeh
b4babf978e Fixed broken scale transform 2025-08-04 13:30:47 +03:00
Yousef Khadadeh
b08c73ddf1 Fixed a multiplication bug in new multiplier 2025-08-04 12:02:29 +03:00
Yousef Khadadeh
d261293d6b Separate coord space transform class for more correct scaling 2025-08-04 10:47:24 +03:00
Yousef Khadadeh
46370e5762 Objects glow when selected 2025-08-03 18:20:39 +03:00
Yousef Khadadeh
9845d14a83 Removed old drawing program cache 2025-08-03 16:52:11 +03:00
Yousef Khadadeh
19f8c99b66 Fix issue where border pixels of cache arent updated 2025-08-03 14:29:40 +03:00
Yousef Khadadeh
d350ead7b3 Fixed bug where cache doesnt get updated at times 2025-08-03 14:23:45 +03:00
Yousef Khadadeh
c21d3e0595 Increased minimum size of objects when using edit tool 2025-08-03 13:09:19 +03:00
Yousef Khadadeh
7bfa2798a5 Selective cache update goes a bit beyond its bounds, and also made sure that you can't edit objects to be too thin/small 2025-08-03 13:04:07 +03:00
Yousef Khadadeh
81ac5a2302 Cache surfaces only update in locations that require updating 2025-08-03 12:31:30 +03:00
Yousef Khadadeh
50fcaee52c Added lasso tool icon 2025-08-03 09:51:10 +03:00
Yousef Khadadeh
465ede3346 Dont draw textbox twice while placing it 2025-08-02 22:06:03 +03:00
Yousef Khadadeh
c8d8a349aa Fixed textbox and screenshot tool issues related to new tool system 2025-08-02 21:14:57 +03:00
Yousef Khadadeh
c2301ae9f5 Change how tools get switched 2025-08-02 20:39:21 +03:00
Yousef Khadadeh
90374da228 Restructure how tool data is stored 2025-08-02 20:10:33 +03:00
Yousef Khadadeh
d07eaf4207 Using a proper polygon triangulation library instead of delaunator for lasso tool 2025-08-02 14:42:53 +03:00
Yousef Khadadeh
a4ba969e11 Added lasso select tool 2025-08-02 12:31:16 +03:00
Yousef Khadadeh
6cec654d4c Can change canvas background color 2025-08-01 10:58:45 +03:00
Yousef Khadadeh
0b1cc8d4c2 Selection cache is also updated when objects are updated 2025-07-31 19:28:18 +03:00
Yousef Khadadeh
069fc66565 Updating ellipse and rectangle colors updates cache as well 2025-07-31 18:05:40 +03:00
Yousef Khadadeh
75a614946c Fixed objects being drawn ontop of cache images, causing transparency issues 2025-07-31 17:55:14 +03:00
Yousef Khadadeh
f72d8c21fa Fixed textbox color not updating cache, and taking snapshot images for cache instead of storing surfaces 2025-07-31 15:30:22 +03:00
Yousef Khadadeh
ed3d5f6d51 Removed temporary update commits 2025-07-31 09:34:17 +03:00
Yousef Khadadeh
d19b5c4cb0 Files no longer render name, and also fixed a bug where the very first object can't be edited 2025-07-30 11:45:18 +03:00
Yousef Khadadeh
b2f2070f95 Improve performance when hosting canvas with many objects 2025-07-30 11:36:55 +03:00
Yousef Khadadeh
1d0a7fc495 Improved transform and clipboard paste performance, and share memory between copied brush strokes in some instances 2025-07-29 14:11:36 +03:00
Yousef Khadadeh
eb9db31d31 Remove colliderAllocated flag 2025-07-28 14:25:28 +03:00
Yousef Khadadeh
0a75b0ada3 Selection improvements 2025-07-28 13:49:46 +03:00
Yousef Khadadeh
d9761a84b5 Readded clipboard 2025-07-28 11:09:59 +03:00
Yousef Khadadeh
60230cc8ef Scale and translate transformations improved 2025-07-28 09:17:11 +03:00
Yousef Khadadeh
9aa41ddb7f Fixed bugs with undo and redo of multiple objects 2025-07-27 20:04:26 +03:00
Yousef Khadadeh
2de5c90006 Prevent undo and redo at points when they might break the program 2025-07-27 16:53:22 +03:00
Yousef Khadadeh
f606fc6fc1 Improved undo 2025-07-27 16:30:45 +03:00
Yousef Khadadeh
7e69688ca6 Transformations over network work again, with undo and redo 2025-07-27 11:56:34 +03:00
Yousef Khadadeh
b6a25280e6 Improved online performance for canvases with many components 2025-07-26 21:20:14 +03:00
Yousef Khadadeh
8a36bc4b6d Rotation works 2025-07-25 10:00:39 +03:00
Yousef Khadadeh
4a4456524f Added scale transform 2025-07-24 20:36:40 +03:00
Yousef Khadadeh
759f551cd3 Translation works on selection 2025-07-24 19:35:51 +03:00
Yousef Khadadeh
ff1355234f Begin work separating selection code from rectangle select tool 2025-07-24 16:35:48 +03:00
Yousef Khadadeh
7f905f01df Fixed segfault that occurs when undoing while drawing 2025-07-23 17:21:56 +03:00
Yousef Khadadeh
0a8add3df1 Optimized eraser, now uses BVH 2025-07-23 16:04:16 +03:00
Yousef Khadadeh
7fa82d3fa4 Fixed ordering issue with cache draw, also sharing draw cache space with all open tabs 2025-07-22 12:22:08 +03:00
Yousef Khadadeh
415921d881 Use multiple threads to load objects when loading file 2025-07-21 18:05:41 +03:00
Yousef Khadadeh
24b2d47a90 Removed updateDraw boolean 2025-07-21 17:48:46 +03:00
Yousef Khadadeh
38a10e0ef4 Add AABB collision check for BVH collision checks 2025-07-21 17:04:50 +03:00
Yousef Khadadeh
f75a5133d5 Improved collision system use of BVH 2025-07-21 16:54:48 +03:00