Crystal-Modeling / tasklist-lang

Langium-based LS for TaskList language implemented in GLSP blueprints. Integrated with GLSP as SourceModel Server for demo purpose
Apache License 2.0
3 stars 1 forks source link

Remove delay between receiving an LMS Update API request and pushing an update to subscription #36

Open hpopov opened 1 year ago

hpopov commented 1 year ago

Currently, when an update request is received, the TextEdit is computed and applied to an open WorkspaceDocument through an LSP client. The changes are subsequently propagated to LSP server, and go through all DocumentBuilder steps (including model reconciliation, changes computation and pushing an update). When the calculated updates are pushed through LMSDocumentBuilder, there are a 300ms delay designed to accumulate also subsequent changes (given the document is modified manually by the user) to not clog the subscription channel with too many update messages. However, this delay should be disregarded, when an update comes from LMS Update API, since there will be no immediate text edits following.