From 6c85978220d98508b7445a8ecf3882ff99f0df39 Mon Sep 17 00:00:00 2001 From: nathan Date: Fri, 12 Aug 2016 22:09:07 -0700 Subject: [PATCH] [OSD] make it not possible to overflow the bounds of the preview window when positioning elements --- tabs/osd.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tabs/osd.js b/tabs/osd.js index d513db82..7e253917 100755 --- a/tabs/osd.js +++ b/tabs/osd.js @@ -379,10 +379,15 @@ OSD.GUI.preview = { onDrop: function(e) { var ev = e.originalEvent; var position = $(this).removeAttr('style').data('position'); + var field_id = parseInt(ev.dataTransfer.getData('text').split('field-')[1]) + var display_item = OSD.data.display_items[field_id]; + var overflows_line = FONT.constants.SIZES.LINE - ((position % FONT.constants.SIZES.LINE) + display_item.preview.length); + if (overflows_line < 0) { + position += overflows_line; + } if (position > OSD.data.display_size.total/2) { position = position - OSD.data.display_size.total; } - var field_id = parseInt(ev.dataTransfer.getData('text').split('field-')[1]) $('input.'+field_id+'.position').val(position).change(); }, };