Commit graph

3302 commits

Author SHA1 Message Date
Marc Durdin
6eb516f9d9 chore(windows): more cleanup 2020-05-15 12:46:54 +10:00
Marc Durdin
faa02f276f chore(windows): cleanup http server 2020-05-15 12:29:40 +10:00
Marc Durdin
c45a0eb177 chore(windows): cleanup configmain a little 2020-05-15 12:22:31 +10:00
Marc Durdin
ecb4e17417 chore(windows): remove commented code 2020-05-15 11:15:09 +10:00
Marc Durdin
1fa4f7ddda chore(windows): cleanup 2020-05-15 09:49:47 +10:00
Marc Durdin
8ee92d1927 fix(windows): add dependency for keyman.dpr 2020-05-15 08:30:58 +10:00
Marc Durdin
6600a1f4f1 fix(windows): refactor state control
Move state management out of the main form and into the
main shared data object, using http post to save.
2020-05-15 06:49:39 +10:00
Marc Durdin
0bbf6d7cac fix(windows): translate remaining data
Moves rest of the data into the http layer. Some messy
stuff around lifetime for the main form which will need
to be refactored in a future iteration.
2020-05-14 06:50:42 +10:00
Marc Durdin
b1ed449ea6 fix(windows): start data refactor for http
Start moving data from forms to models/controllers for
onlineupdate and establish a shared data pattern for
transitional refactoring. Also establish a TLocaleStrings
class which has no global variable dependency.
2020-05-13 06:41:35 +10:00
Marc Durdin
60cfa98638 fix(windows): kmbrowserhost was missing debug info 2020-05-11 15:31:06 +10:00
Marc Durdin
aaa8d6b8c5 fix(developer): updated project 2020-05-11 15:12:03 +10:00
Marc Durdin
aa4f1febe6 refactor(windows): use http instead of file for ui
Serve all Keyman Configuration dialogs over a local http server
instead of over file protocol. This is more secure and allows for
a bunch of things in the future, including simple online integration
and stable reporting.
2020-05-11 15:11:31 +10:00
Marc Durdin
6d7c92bfff fix(windows): kmshell title and kmbrowserhost sentry
kmshell had no application.title set and this gave incorrect
results for crash report dialog.
kmbrowserhost was acting as a VCL app but it isn't, and the
sentry integration was pulling in all the VCL dependencies which
was a bad outcome. This removes those and handles crashes as a
non-VCL app.
2020-05-11 08:10:26 +10:00
Marc Durdin
080f03860e
Merge pull request #3083 from keymanapp/fix/windows/2759-force-output-keystroke-fails
fix(windows): force output keystroke failure
2020-05-11 06:09:09 +10:00
Marc Durdin
dc5cab612b chore: add comment post review 2020-05-08 16:57:20 +10:00
Marc Durdin
79ae25f966 fix(windows): support kmtip 2020-05-08 16:45:04 +10:00
Marc Durdin
bf1c2cde90 chore(windows): cleanup deps 2020-05-08 14:45:52 +10:00
Marc Durdin
5e7df2e051 fix(windows): sentry cef shutdown interactions
When Sentry is trying to shutdown an app which has CEF windows active,
the main process can hang waiting for the CEF renderer etc processes to
shutdown. Instead, we now rely on the child (CEF renderer etc) processes
to shutdown when their parent process aborts, with a watchdog thread, and
then abandon everything in the parent process with ExitProcess. This is
more reliable, especially with nastier crashes like memory corruption or
stack corruption.
2020-05-08 14:42:39 +10:00
Marc Durdin
ce5db177c2 fix(windows): use consistent sentry db location 2020-05-08 07:46:09 +10:00
Marc Durdin
9030a66f11 fix(windows): sentry x64 stacks truncated pointers 2020-05-06 16:16:46 +10:00
Marc Durdin
acc53706ca fix(windows): force output keystroke failure
If a keyboard emits some actions but then requests that the
default keystroke also be emitted, Keyman was failing to
emit the queued actions. Fixes #2759.
2020-05-05 17:27:47 +10:00
Marc Durdin
3b0fe837e0 fix(windows): pointer casts for x64 2020-05-05 16:35:42 +10:00
Marc Durdin
3f98c6027b fix(windows): decxstr was not checking start of string properly 2020-05-04 16:18:31 +10:00
Marc Durdin
e9867aaf08 fix(windows): additional project files 2020-05-01 17:16:34 +10:00
Marc Durdin
34cb049344 fix(windows): add windows unit 2020-05-01 17:15:35 +10:00
Marc Durdin
156c2685c3 fix(windows): add LARGEADDRESSAWARE flag for all CEF processes 2020-05-01 16:38:52 +10:00
Marc Durdin
214bd4652e chore(windows): Merge branch 'master' into fix/windows/sentry-cleanup 2020-04-30 05:04:13 +10:00
Marc Durdin
f73cdaade6 chore: merge stable history 2020-04-29 06:33:31 +10:00
Marc Durdin
edc53fb468 fix(windows): use KeymanWindows rather than KeymanDesktop as logger for sentry 2020-04-27 14:00:30 +10:00
Marc Durdin
16c9341671 fix(windows): add sourcemap upload for desktop/developer 2020-04-27 12:55:42 +10:00
Marc Durdin
cc325fa74d fix(windows): add environment to sentry init for js 2020-04-27 12:55:22 +10:00
Marc Durdin
2d4b2a7af0 fix(windows): attempt to shutdown CEF before exception handler 2020-04-27 12:55:01 +10:00
Marc Durdin
8710cb866e fix(windows): cleanup and fix .dll tests 2020-04-27 12:54:19 +10:00
Marc Durdin
e09b081a34 fix(windows): cleanup release and environment for Sentry 2020-04-20 07:07:39 +10:00
Marc Durdin
ad9eb3a7f8 fix(developer): kmcomp debug data for sentry 2020-04-19 16:50:18 +10:00
Marc Durdin
d6ddebe64f fix(windows): use correct slug for Keyman Desktop 2020-04-19 16:32:57 +10:00
Marc Durdin
883804f3e5 fix(windows): test for stack precapture was not correct 2020-04-19 16:32:36 +10:00
Marc Durdin
fab07b5dfc fix(windows): flush module cache before capturing exception
Sentry caches the module list so it doesn't need to
rebuild on every event. That's fine for most cases
but when we have an exception we want as much accuracy
as possible, so flush it first
2020-04-18 16:52:40 +10:00
Marc Durdin
f4a9fe1769 fix(windows): add crashpad_handler.exe to installers 2020-04-18 16:51:51 +10:00
Marc Durdin
c8c9f780eb fix(windows): add extra detail for console app crashes 2020-04-18 15:22:18 +10:00
Marc Durdin
28a9e22aa3 fix(windows): Sentry event ids are raw byte never guids now 2020-04-18 15:21:29 +10:00
Marc Durdin
9f5d1ab664 fix(windows): recapture call stack if exceptaddr not same as previous 2020-04-18 15:09:22 +10:00
Marc Durdin
4548040661
Merge pull request #2923 from keymanapp/feat/windows/test-sentry-integration
feat(windows): Testing Sentry integration
2020-04-08 06:02:00 +07:00
Marc Durdin
cebb2a6980 chore(windows): sentry 0.2.3 2020-04-08 07:10:47 +10:00
Marc Durdin
40b69950fa fix(windows): support x64, remove sentry.dll 2020-04-05 07:36:50 +10:00
Marc Durdin
17cbc37f8c fix(windows): fixup missing sentry config 2020-04-02 17:11:45 +11:00
Marc Durdin
7715c1a5b9 fix(windows): refactor compile.pas for early load
We want the compiler to load early so that Sentry will
include it in the module list. DRYed out the compiler load
code at the same time.
2020-04-02 06:16:51 +11:00
Marc Durdin
e1d3a25f3b fix(windows): update sentry to latest master
Sentry 0.2.2 had a bug with initialization that stopped the random
number generator from working.
2020-04-02 06:15:05 +11:00
Marc Durdin
e194076d40 fix(windows): fix certificate tests 2020-04-01 15:35:18 +11:00
Marc Durdin
1413615e1d fix(windows): use safe strcat 2020-04-01 13:27:22 +11:00