feat: unified shell, diagnostics pack, native Office, sticky board
All checks were successful
CI / Windows build (push) Successful in 14m22s
All checks were successful
CI / Windows build (push) Successful in 14m22s
Make Surface remote debugging and classroom workflows viable: always-on structured logs with one-click zip export, a single AppShell chrome, OOXML PPTX/DOCX annotation without LibreOffice, and a first-class sticky board. Also drop spike/legacy ink widgets and tighten pen feel (predictor, PenInfoHistory, page-tile layer). Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -89,6 +89,7 @@ void ObservePenMessage(UINT message, WPARAM wparam, LPARAM lparam) {
|
||||
int raw_pen_flags = 0;
|
||||
int raw_pen_mask = 0;
|
||||
int btn_change = 0;
|
||||
int history_count = 0;
|
||||
|
||||
if (is_pointer) {
|
||||
++g_ptr_msgs;
|
||||
@@ -124,6 +125,13 @@ void ObservePenMessage(UINT message, WPARAM wparam, LPARAM lparam) {
|
||||
const int ay = ppi.tiltY < 0 ? -ppi.tiltY : ppi.tiltY;
|
||||
if (ax > g_tilt_abs_max) g_tilt_abs_max = ax;
|
||||
if (ay > g_tilt_abs_max) g_tilt_abs_max = ay;
|
||||
|
||||
// Coalesce recent history (diagnostic + future batching).
|
||||
POINTER_PEN_INFO history[32];
|
||||
UINT32 hist_n = 32;
|
||||
if (GetPointerPenInfoHistory(pointerId, &hist_n, history)) {
|
||||
history_count = static_cast<int>(hist_n);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (message == WM_POINTERUP) {
|
||||
@@ -151,6 +159,7 @@ void ObservePenMessage(UINT message, WPARAM wparam, LPARAM lparam) {
|
||||
{flutter::EncodableValue("orPenMask"), flutter::EncodableValue(g_pen_mask_or)},
|
||||
{flutter::EncodableValue("btnChangeLast"), flutter::EncodableValue(g_btn_change_last)},
|
||||
{flutter::EncodableValue("tiltAbsMax"), flutter::EncodableValue(g_tilt_abs_max)},
|
||||
{flutter::EncodableValue("historyCount"), flutter::EncodableValue(history_count)},
|
||||
};
|
||||
g_pen_sink->Success(flutter::EncodableValue(payload));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user