Skip to content

Commit 1afd2c0

Browse files
committed
Go listeners.
1 parent 560005d commit 1afd2c0

File tree

5 files changed

+63
-22
lines changed

5 files changed

+63
-22
lines changed

demo/bb.css

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1611,7 +1611,7 @@ textarea.bb-feedback-required {
16111611
}
16121612

16131613
.bb-capture-editor-notrecording .bb-capture-editor-borderlayer {
1614-
background-color: rgba(0, 0, 0, 0.6);
1614+
background-color: rgba(0, 0, 0, 0.5);
16151615
}
16161616

16171617
.bb-capture-editor-item-inactive {
@@ -1629,7 +1629,7 @@ textarea.bb-feedback-required {
16291629
}
16301630

16311631
.bb-capture-editor-notrecording .bb-capture-svg {
1632-
pointer-events: none;
1632+
pointer-events: none !important;
16331633
}
16341634

16351635
.bb-screenshot-editor--marked .bb-screenshot-editor-canvas,
@@ -1798,9 +1798,13 @@ textarea.bb-feedback-required {
17981798
opacity: 0.9;
17991799
}
18001800

1801+
.bb-capture-toolbar-item-recording {
1802+
margin-right: 0px;
1803+
}
1804+
18011805
.bb-capture-toolbar-item-recording svg {
1802-
width: 26px;
1803-
height: 26px;
1806+
width: 33px;
1807+
height: 33px;
18041808
}
18051809

18061810
.bb-capture-toolbar-item-colorpicker {

demo/index.html

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -165,11 +165,14 @@ <h2>Good morning.</h2>
165165
better: You can add custom data to your bug details.</span
166166
>
167167
<br /><br />
168-
<div class="buttonlink">Get started</div><br /><br />
168+
<div class="buttonlink" onclick="window.open('appwidget.html')">Get started
169+
</div>
170+
<br /><br />
169171
<span
170172
>In less than a minute you can add our Gleap SDK to your App or WebApp.
171173
Install our SDK, build and run. A piece of cake.</span
172-
>
174+
><br />
175+
<a href="appwidget.html">GO to it!</a>.
173176
</div>
174177
<!-- index.js as found in build/index.js -->
175178
<script src="index.js"></script>

src/Gleap.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -914,6 +914,7 @@ class Gleap {
914914
name: "reportedBy",
915915
required: true,
916916
remember: true,
917+
hideOnDefaultSet: true,
917918
}
918919
: null;
919920

@@ -922,7 +923,6 @@ class Gleap {
922923
emailFormItem &&
923924
!(sessionInstance.session && sessionInstance.session.email)
924925
) {
925-
emailFormItem.hideOnDefaultSet = false;
926926
newFormArray.push(emailFormItem);
927927
}
928928

@@ -947,7 +947,6 @@ class Gleap {
947947
sessionInstance.session &&
948948
sessionInstance.session.email
949949
) {
950-
emailFormItem.hideOnDefaultSet = true;
951950
emailFormItem.defaultValue = sessionInstance.session.email;
952951
emailFormItem.page =
953952
feedbackOptions.form[feedbackOptions.form.length - 1].page;

src/MarkerManager.js

Lines changed: 43 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ export default class MarkerManager {
1212
callback = null;
1313
screenDrawer = null;
1414
escListener = null;
15+
pageLeaveListener = null;
1516
overrideLanguage = Gleap.getInstance().overrideLanguage;
1617

1718
constructor(type) {
@@ -36,9 +37,7 @@ export default class MarkerManager {
3637
}
3738

3839
// Unregister ESC listener
39-
if (this.escListener) {
40-
document.removeEventListener("keydown", this.escListener);
41-
}
40+
this.unregisterListeners();
4241

4342
// Cleanup mouse pointer
4443
this.cleanupMousePointer();
@@ -183,7 +182,10 @@ export default class MarkerManager {
183182
<span class="bb-tooltip bb-tooltip-audio-recording"></span>
184183
</div>
185184
<div class="bb-capture-toolbar-item-timer bb-capture-item-rec">3:00</div>
186-
<div class="bb-capture-toolbar-item-spacer"></div>`
185+
<div class="bb-capture-toolbar-item-spacer"></div>
186+
<div class="bb-capture-toolbar-item bb-capture-toolbar-drawingitem bb-capture-toolbar-item-tool" data-type="pointer">
187+
${loadIcon("pointer")}
188+
</div>`
187189
: ""
188190
}
189191
<div class="bb-capture-toolbar-item bb-capture-toolbar-drawingitem bb-capture-toolbar-item-tool bb-capture-toolbar-item--active" data-type="pen">
@@ -252,8 +254,20 @@ export default class MarkerManager {
252254
}
253255
};
254256

255-
registerEscapeListener() {
257+
unregisterListeners() {
258+
if (this.escListener) {
259+
document.removeEventListener("keydown", this.escListener);
260+
}
261+
262+
if (this.pageLeaveListener) {
263+
window.removeEventListener("beforeunload", this.pageLeaveListener);
264+
}
265+
}
266+
267+
registerListeners() {
256268
const self = this;
269+
270+
// Esc listener
257271
this.escListener = function (evt) {
258272
evt = evt || window.event;
259273
var isEscape = false;
@@ -267,13 +281,20 @@ export default class MarkerManager {
267281
}
268282
};
269283
document.addEventListener("keydown", this.escListener);
284+
285+
// Page leave listener
286+
this.pageLeaveListener = function (event) {
287+
event.preventDefault();
288+
event.returnValue = "";
289+
};
290+
window.addEventListener("beforeunload", this.pageLeaveListener);
270291
}
271292

272293
show(callback) {
273294
this.callback = callback;
274295
const self = this;
275296

276-
this.registerEscapeListener();
297+
this.registerListeners();
277298

278299
// Hide widget UI
279300
this.hideWidgetUI();
@@ -377,6 +398,9 @@ export default class MarkerManager {
377398
".bb-capture-toolbar-item-colorpicker"
378399
);
379400

401+
// Capture SVG ref
402+
const captureSVG = document.querySelector(".bb-capture-svg");
403+
380404
// Setup toolbar items
381405
var toolbarItems = document.querySelectorAll(".bb-capture-toolbar-item");
382406
for (var i = 0; i < toolbarItems.length; i++) {
@@ -404,7 +428,7 @@ export default class MarkerManager {
404428
// Inactivate buttons.
405429
return;
406430
}
407-
if (type === "pen" || type === "rect") {
431+
if (type === "pen" || type === "rect" || type === "pointer") {
408432
const toolbarTools = document.querySelectorAll(
409433
".bb-capture-toolbar-item-tool"
410434
);
@@ -414,14 +438,19 @@ export default class MarkerManager {
414438
toolbarItem.classList.add("bb-capture-toolbar-item--active");
415439
self.screenDrawer.setTool(type);
416440

417-
try {
418-
var svgClone = toolbarItem.querySelector("svg").cloneNode(true);
419-
if (svgClone && self.dragCursor) {
420-
self.dragCursor.innerHTML = "";
421-
self.dragCursor.appendChild(svgClone);
441+
if (type === "pointer") {
442+
self.dragCursor.innerHTML = "";
443+
captureSVG.style.pointerEvents = "none";
444+
} else {
445+
captureSVG.style.pointerEvents = "auto";
446+
try {
447+
var svgClone = toolbarItem.querySelector("svg").cloneNode(true);
448+
if (svgClone && self.dragCursor) {
449+
self.dragCursor.appendChild(svgClone);
450+
}
451+
} catch (exp) {
452+
console.log(exp);
422453
}
423-
} catch (exp) {
424-
console.log(exp);
425454
}
426455
}
427456
if (type === "colorpicker") {

src/UI.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -645,6 +645,12 @@ export const loadIcon = function (name, color) {
645645
</svg>`;
646646
}
647647

648+
if (name === "pointer") {
649+
return `<svg width="1200pt" height="1200pt" version="1.1" viewBox="0 0 1200 1200" xmlns="http://www.w3.org/2000/svg">
650+
<path d="m1050.7 508.95-225.94 157.5 160.31 160.31c4.4531 4.4531 6.9141 10.43 6.9141 16.758s-2.4609 12.305-6.9141 16.758l-126.09 126.09c-4.4531 4.4531-10.43 6.9141-16.758 6.9141-6.3281 0-12.188-2.4609-16.758-6.9141l-160.2-160.43-157.62 225.94c-3.3984 4.9219-9.0234 7.8516-14.883 7.8516-0.70313 0-1.5234 0-2.2266-0.11719-6.7969-0.82031-12.422-5.2734-14.766-11.719l-333.16-880.55c-2.5781-6.6797-0.9375-14.297 4.2188-19.336 5.0391-5.0391 12.656-6.6797 19.336-4.2188l880.66 333.05c6.3281 2.3438 10.781 8.0859 11.602 14.766 0.82031 6.7969-2.1094 13.359-7.7344 17.344z" fill="#333"/>
651+
</svg>`;
652+
}
653+
648654
if (name === "clip") {
649655
return `<svg width="600px" height="1126px" viewBox="0 0 600 1126" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
650656
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">

0 commit comments

Comments
 (0)