243 Commits

Author SHA256 Message Date
27ae7d91c1 Begin converting URL struct into modern C++ class 2025-04-12 22:20:34 -04:00
26b903f02f Test drive using std::string to replace dstr.
Looks like it worked within the URL code.

Now we can really start to slice-and-dice.
2025-04-12 04:25:55 -04:00
441a04609b DilloURL has a dtor.
It is the same as the original free function.  But this
will let me put some ownership on various members and slowly
start to C++ify this core type.
2025-04-12 04:08:14 -04:00
07485c7959 Manage an FLTK cancel button via smart ptr.
It's still `release()`'d, but I can make a cleaner
wrapper which explicitly type-enforces the ownership
transfer.

That will come later.
2025-04-12 04:07:13 -04:00
d1d4653477 Manage a string in HTTP TLS core. 2025-04-12 03:07:10 -04:00
446b12f5f7 Manage a window. 2025-04-12 03:05:40 -04:00
e595830fab Rename user-facing bits of Dillo to Flenser.
I dunno if I got them all.

This is also now version 0.0.0
2025-04-12 00:43:11 -04:00
564567d389 Charset now an optional string. 2025-04-11 19:49:07 -04:00
3407c98eec Make autogen part of the build process 2025-04-11 19:46:57 -04:00
8bcf60ccc9 Rebuild helper. 2025-04-10 02:47:01 -04:00
06f8226487 Migrate a lot of C to C++.
It will let me put a lot more dtors into certain
structs that C++ code calls `free` on members within.
2025-04-10 02:46:06 -04:00
f29c4f3992 Removed a few of the SimpleVector lists. 2025-04-09 13:02:23 -04:00
36d04ad1c4 Another easy win. 2025-04-09 04:10:04 -04:00
228da913c4 A major lift.
Quite a few uses of raw memory management had to be
struck down, in a batch.  It could have been a bit
more precise to do some of the lower dependencies
first, but I didn't start there with my analysis.
2025-04-09 03:48:51 -04:00
885a5ba629 Another memory simplification. 2025-04-07 22:37:33 -04:00
40e2306664 A Vector has been replaced. 2025-03-13 22:26:15 -04:00
9be23f8360 One more. 2025-03-11 17:33:13 -04:00
5f1fa36890 Improvement for keybinding memory management.
I'm not respecting the sorted list anymore, but it's still good.
2025-03-04 01:03:18 -05:00
a3ae87e90b Remove some explicit string management. 2025-03-03 13:44:42 -05:00
4616cbac27 Another one.
This one is annoying.  Sometimes `const char *` means
`std::string`... but sometimes it's `std::optional< std::string >`.

A bit of a pretzel.
2025-03-03 13:36:09 -05:00
fad3dbc39a This adds some resource-ownership tracking.
Time to start spreading this out, more.
2025-03-03 13:26:36 -05:00
a36901db50 A simple one. 2025-03-03 01:14:07 -05:00
d814e000bd Remove another raw-delete. 2025-03-03 00:53:25 -05:00
23599df231 Unique pointer a member of style node. 2025-03-03 00:49:53 -05:00
865e176e5d Another one. This one was big. 2025-03-03 00:37:28 -05:00
82fcd7c1f8 Another one bites the dust. 2025-03-03 00:12:01 -05:00
df45103126 Another container. 2025-03-02 23:44:14 -05:00
7c3f2c1535 Remove one custom container usage. 2025-03-02 23:06:04 -05:00
6d05779dd2 Removed some manual management.
Apparently, the layout engine is written in something resembling
either Java or Google's G+.  It's "C++", but there's no exceptions,
manual memory management, etc.  But it's also attempting to recreate
a subset of the Java Collections framework in C++.  It's a common
pattern in both beginner and older C++.

I'll completely replace all of this with standard C++ library types.
2025-03-02 17:28:31 -05:00
bdbd30873f Another memory trim. 2025-03-02 11:10:23 -05:00
7aa237d228 Actually _enable_ standards-compliant C++. 2025-03-02 11:10:04 -05:00
d1fa4d5cca Another string simplification.
At some point using `std::filesystem::path` would be
warranted.  Better to simply clean up memory issues first, though.

Then we can see what changes.
2025-03-02 02:09:15 -05:00
982684e36c A bit more memory grind... 2025-03-01 03:27:46 -05:00
396b5fc2a6 This is a major lift into C++.
Much of the code is now building in C++, and I'm using C++23.

A spot test seems to work.  Now I can start to debride all the
painful memory management quirks...
2025-03-01 03:03:25 -05:00
3a474cb68e Another unique pointer, for dialogue window. 2025-02-28 21:58:44 -05:00
ee54d2aff8 More memory management.
I'm seeing a lot of potential memory leaks of various FLTK components...

Unless their ctors register themselves into some global garbage
collector...  It's a mess.
2025-02-28 15:42:39 -05:00
5d489d1441 Move to another unique ptr. 2025-02-28 15:16:08 -05:00
c6370d1cfd Remove one simple new/delete pair.
More to come!
2025-02-28 15:02:27 -05:00
a836f97b88 Add Alepha submodule
We're gonna need it!
2025-02-28 13:54:38 -05:00
8101f9f267 This marks the "start" of Flenser. 2025-02-28 13:53:05 -05:00
20fea64cb5 Initial import of Dillo 2025-02-28 13:34:30 -05:00
bd4e3eebd8 We'll be using the license from dillo 2025-02-28 13:28:33 -05:00
a82ac8a05c Initial commit 2025-02-28 13:28:03 -05:00