280 Commits

Author SHA1 Message Date
1163b3c47e Enhance shortcut navigation and add replacement acceptance logic for mistakes #4 2025-06-04 15:03:10 +02:00
e903917179 Add navigation buttons in popup #4 2025-06-04 13:18:30 +02:00
0f2fa218f3 Update popup positioning after using keyboard shortcut #4 2025-06-04 11:50:41 +02:00
99db143007 Add keyboard shortcut navigation for grammar mistakes
- Implements Ctrl+Š/Đ keyboard shortcuts to navigate between grammar mistakes/highlights. #4
2025-06-04 10:26:56 +02:00
c7c90101a2 Implement tab navigation for grammar mistakes
- The feature is still not fully finished yet.
- Navigation does not work in Quill, textarea and static-content examples.
- But it works well in CKEditor and contenteditable examples.

#4
2025-06-03 14:59:25 +02:00
Aljaž Grilc
b9ab9b6a64 Add double underline drawing for specific grammar rules 2025-05-28 21:01:43 +02:00
Aljaž Grilc
c67adcdc99 Adjust highlight color as requested by the company 2025-05-28 19:46:49 +02:00
be08136a31 Improve color of the popup close button #6 2025-05-21 09:14:06 +02:00
9bc8dfbdfc Display AI suggestions using different color 2025-04-24 14:46:23 +02:00
5cbac62de3 Fix BesQuillService when pasting a simple block of text 2025-04-16 09:27:20 +02:00
c27f9628f4 Fine-tune markup drawing
This adjusts markup color slightly for the dark display, makes it fully
opaque, alternates the squiggly line between grammar and spelling
mistakes to visualize one-word-two-mistake-types, paints most important
mistakes last/on top etc.

All to make the markup as visible as possible.
2025-03-04 11:09:57 +01:00
ef0d35ccee Cleanup 2025-03-04 10:49:12 +01:00
2b54735175 Reformat code 2025-03-04 09:21:51 +01:00
9c2151f182 Add clickable tolerance around grammar mistakes
Users are complaining it is hard to make a click on a mistake when
mistake is covering relative small portion of the text.
2025-03-04 09:21:35 +01:00
a507f24326 Relax line height in the samples 2025-03-03 14:28:39 +01:00
20713b8b5d Add dark color-scheme for samples 2025-03-03 14:28:39 +01:00
72b6fb2d91 Enlarge markup font
Due to popular demand. 😉
2025-03-03 14:21:56 +01:00
9815ddfed0 Get markup text from <canvas> element
This allows setting markup text font separately from the host element.
E.g.: A different font is desired for the markup other than font used in
the edit box.
2025-03-03 14:21:16 +01:00
24216a4dff Merge remote-tracking branch 'remotes/origin/revise-canvas' 2025-03-03 13:10:51 +01:00
61401cb3c0 Fix <textarea> overlay 2025-03-03 13:06:02 +01:00
2dd06fcef4 Fix redraw after zoom change
Resize first, then repaint. The Range.getClientRects() is returning
funny coordinates before resize.
2025-02-28 15:05:09 +01:00
32690de8a7 samples: Fix CKEditor markup style switching 2025-02-28 14:56:12 +01:00
0ff4e96c0a Fix offset compensation
See-also: 51099347f2f51d3bb5c0d30febc5dcaa2ad62f45
2025-02-28 14:52:41 +01:00
b6c825cc83 Add special markup for missing period
Period is too small to use standard missing text approach. Besides,
period was offended, since comma had its own markup sign and period
didn't. It demanded own markup sign and period.
2025-02-28 14:27:06 +01:00
bf7b844e1c Same grammar mistake shouldn't be highlighted twice 2025-02-28 12:45:33 +01:00
d990cd061a Update function documentation 2025-02-28 12:42:16 +01:00
51099347f2 Revise scrolling 2025-02-28 12:25:58 +01:00
d246d07d7f <textarea>: Populate text panel content sooner
This makes the text panel contain true content and size earlier at the
registration time.
2025-02-28 11:35:11 +01:00
6b1b46de55 Rename markup drawing methods
This matches what they are doing better.
2025-02-28 11:33:24 +01:00
9c7c967039 Rotate panel names
The new name reflects the purpose of the panel better:

- panelParent → correctionPanel: This is our (0, 0) positioned <div>
  inside which most of the magic happens. We do need it to be able to
  position it's child properly.

- correctionPanel → scrollPanel: This is a <div> which size and
  placement should exactly match the hostElement. We need it to provide
  a scrollable (hence the name) viewport for our canvas.
2025-02-28 11:02:04 +01:00
acd7ac1a2b Cleanup CSS 2025-02-28 10:28:39 +01:00
0ed93fb9b2 Fix ToCToU issue with canvas resizing
This could end up in endless resizing&repainting of the markup canvas.
2025-02-28 09:44:51 +01:00
16e85f5498 Fix unregister cleanup 2025-02-27 16:03:45 +01:00
cf70e4128e Simplify
setCorrectionPanelSize() includes repositionAllMarkup() when needed
2025-02-27 15:57:18 +01:00
29dcd4c40d Merge canvas and scroll panels 2025-02-27 15:32:35 +01:00
f88b2fd1a0 Add note about compatibility issue 2025-02-27 15:22:01 +01:00
b41068196e Set overflow style in CSS
It is static and should never change.
2025-02-27 15:01:37 +01:00
156e6302e6 Fix status icon positioning 2025-02-27 14:49:19 +01:00
20e24b4e3a Replace sample picture
The previous one had visible scroll bar.
2025-02-27 14:19:22 +01:00
17a80ab0a9 Add early return for empty highlights 2025-02-27 14:15:50 +01:00
bb822f0bbc Extend grammar markup style continued 2025-02-27 14:01:37 +01:00
53fc05a2f8 Rename popupCorrectionPanel to preparePopup and update parameter names for clarity 2025-02-27 09:28:40 +01:00
54c0307d9b Adjust correctionPanel positioning 2025-02-27 09:23:53 +01:00
5d8b620abc Fix highlight positioning when scrolling 2025-02-27 08:43:12 +01:00
ad13e9849f Extend grammar markup style 2025-02-26 15:51:15 +01:00
ad256cabef Enhance popup styles 2025-02-26 10:53:16 +01:00
29e83ccc0a Prevent endless loop when zooming in/out and dismiss popup on scroll event 2025-02-26 09:28:33 +01:00
3d6c7fcd60 Refactor popupCorrectionPanel to handle multiple grammar matches 2025-02-25 15:05:47 +01:00
0855c13384 Fix <textarea>, cleanup... 2025-02-25 12:56:09 +01:00
00cb5aecd4 Hide popup and remove highlighted rects after input 2025-02-25 09:35:34 +01:00