Commit graph

39 commits

Author SHA1 Message Date
Adam D. Ruppe
d8861809e3 unfinished thing i think can be cool 2024-08-12 12:35:38 -04:00
Adam D. Ruppe
71a211bc5e open new window in current instance of browser support 2024-07-25 18:52:17 -04:00
Adam D. Ruppe
74fe3159d7 update cef again 2024-07-25 18:52:17 -04:00
Adam D. Ruppe
89252d46e4 clear all opend deprecations 2024-03-30 22:00:29 -04:00
Adam D. Ruppe
e18fb69779 Try to resolve random crash on Windows
The debugger tells me the Invoke method is accessing an invalid, but
non-null pointer. This appears to be a use-after-free delegate context
pointer. This is not easy to reproduce - even with the browser, I'd have
to open and close tons of windows and trigger specific callbacks to get
the behavior. (I found the best one to get it was the status text
changed event out of WebView2, probably because it uses a member
variable without any explicit local.)

I suspect it has to do with the delegate trying to capture both `this`
and other local variables at the same time. I couldn't confirm this, but
the theory is that normally, when a delegate captures a local variable,
the compiler places it in an allocated heap block instead of on the
stack, but perhaps `this` gets different treatment and it is wiped out
or the block is GC'd or something. (The AddRef does GC.addRoot to the
containing class that had the delegate member, so that should have
prevented it from disappearing, but it is possible I did it wrong.)

Nevertheless, I recall having trouble with this in the past as well,
and decided perhaps the best thing to do is to just take control of
which context, exactly, is passed and retained. Hence the conversion to
`function` so I can hold on to it better. This makes things harder to
use - especially since IFTI wouldn't pick up the usage correctly - but
meh, I'm mostly just passing the class handles down so not that bad.

Not 100% sure this actually even fixed the crash; it hasn't happened
again since using it, but that's no guarantee given how difficult it is
to reproduce.
2023-12-24 19:46:46 -05:00
Adam D. Ruppe
d31ca0b91f stuff for my browser 2023-12-19 21:14:20 -05:00
Adam D. Ruppe
95ea3af2b1 update bindings to MSFT webview2 2023-12-16 13:17:59 -05:00
Adam D. Ruppe
6bbc91f90b make the color picker a bit less bad on linux 2023-11-29 15:49:44 -05:00
Adam D. Ruppe
58133b5fd3 update to newer cef 2023-11-22 18:59:29 -05:00
Adam D. Ruppe
8d73ec2603 some context menu in webview 2023-11-01 10:09:04 -04:00
Adam D. Ruppe
dfdc6e7816 more sdpy mac support 2023-10-09 18:52:37 -04:00
John Colvin
3f1de5a834 trailing whitespace 2023-03-05 13:16:36 +00:00
John Colvin
251cb73f71 remove trailing whitespace 2023-03-02 14:00:12 +00:00
Adam D. Ruppe
56fe895a81 more ime fixes and cursor placement support for embedded termnial 2022-12-06 09:29:21 -05:00
Adam D. Ruppe
7d475b1480 some lifetime fixes 2022-11-20 09:26:04 -05:00
Adam D. Ruppe
ba77439507 update cef to latest again 2022-11-15 09:53:29 -05:00
Adam D. Ruppe
04afca2079 name 2022-07-26 14:49:21 -04:00
Adam D. Ruppe
1cca75a7f1 initial find thing 2022-05-10 14:32:52 -04:00
Adam D. Ruppe
7d81f250fe more improvements to input handling and web 2022-04-19 12:07:08 -04:00
Adam D. Ruppe
f44c993695 experimenting with input proxy 2022-04-11 09:11:00 -04:00
Adam D. Ruppe
a0a6e7431b more stuff 2022-04-07 17:32:06 -04:00
Adam D. Ruppe
ce2f7d5f94 more browser stuff, still not stable! 2022-04-05 19:16:15 -04:00
Adam D. Ruppe
28f09ae118 initial version of date/time/calendar pickers 2022-03-22 18:01:40 -04:00
Adam D. Ruppe
307c6acb28 little things 2021-12-22 18:49:12 -05:00
Adam D. Ruppe
12bb6d7f4d add more stuff to dub 2021-12-09 22:23:41 -05:00
Adam D. Ruppe
671aacf86d little things 2021-11-27 22:21:05 -05:00
Adam D. Ruppe
cc765ced2d move observable to minigui core 2021-11-27 22:20:32 -05:00
Adam D. Ruppe
7e4938690a some new web conveniences (experimental) and some bug fixes 2021-11-18 22:23:18 -05:00
Adam D. Ruppe
d177023e44 more work in progress 2021-11-10 09:47:03 -05:00
Adam D. Ruppe
543d3a2b5d it just continues to get more awesome 2021-05-28 23:06:13 -04:00
Adam D. Ruppe
3d9718be32 stuff 2021-05-06 15:02:08 -04:00
Adam D. Ruppe
b861cf5f46 catching up 2021-02-22 23:27:39 -05:00
Adam D. Ruppe
dafa15243d fixes 2020-04-18 21:33:41 -04:00
Adam D. Ruppe
fbbe881537 update to new refactor of terminal emulator 2020-03-16 21:27:46 -04:00
Adam D. Ruppe
95755a1512 making it suck less 2019-03-23 14:44:53 -04:00
Adam D. Ruppe
9dd559b284 terminal emulator widget 2017-04-13 10:33:25 -04:00
Adam D. Ruppe
11a5c1e43f more text improvements 2017-04-06 10:36:17 -04:00
Adam D. Ruppe
86fb5ba6ee basic file chooser dialog 2017-04-05 23:07:10 -04:00
Adam D. Ruppe
06577dee6f color widget 2017-04-05 20:15:52 -04:00