aboutsummaryrefslogtreecommitdiff
path: root/src/Utils.ts
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2021-02-10 22:32:29 -0500
committerbobzel <zzzman@gmail.com>2021-02-10 22:32:29 -0500
commitaed4a386bf57ba7b1b144bacd39f9f9ccabe0dfd (patch)
tree537ea7b01c98e5cdde362984292c4db3173e98c4 /src/Utils.ts
parentf240c85ff0adee914b43d9d169fa31260e03265d (diff)
simplified focus'ing on documents. refactored scrollFocus code. changed focus in 2D to move doc into view but not center.
Diffstat (limited to 'src/Utils.ts')
-rw-r--r--src/Utils.ts7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/Utils.ts b/src/Utils.ts
index c7074c3da..061c74611 100644
--- a/src/Utils.ts
+++ b/src/Utils.ts
@@ -191,6 +191,13 @@ export namespace Utils {
return { h: h, s: s, l: l };
}
+ export function scrollIntoView(targetY: number, targetHgt: number, scrollTop: number, contextHgt: number) {
+ if (scrollTop + contextHgt < targetY + Math.max(targetHgt * 1.1, 100)) {
+ return Math.min(scrollTop, targetY + Math.max(targetHgt * 1.1, 100) - contextHgt);
+ } else if (scrollTop > targetY - targetHgt * .1) {
+ return Math.max(0, targetY - targetHgt * .1);
+ }
+ }
export function clamp(n: number, lower: number, upper: number) {
return Math.max(lower, Math.min(upper, n));