author | hgs |
Thu, 23 Sep 2010 15:32:11 -0400 | |
changeset 14 | 6aeb7a756187 |
parent 12 | afcd8e6d025b |
child 16 | 3c88a81ff781 |
permissions | -rw-r--r-- |
3 | 1 |
var __prevOpenedBookmarkControl = null; |
2 |
var __previousSortEle = null; |
|
3 |
var __bookmarkCount= 0; |
|
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
4 |
var __dragendFlag = false; |
12 | 5 |
var __dogearSelected = false; |
6 |
var __timerValueLeft = 0; |
|
7 |
var __timerId = ""; |
|
8 |
var __longPressEvent = false; |
|
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
9 |
// Set to the LongPress object that is currently waiting for activation, |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
10 |
// ie. it has gotten a mouse-down event and has its timer running. |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
11 |
var __currentLongPress; |
3 | 12 |
var __cancelLinkOpening = false; |
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
13 |
|
3 | 14 |
function _enableSorting(ele) { |
12 | 15 |
// This is messy, why do we even need to do this sort/no-sort stuff??? |
16 |
$(ele).removeClass('no-sort'); |
|
17 |
$(ele).addClass('sort'); |
|
3 | 18 |
|
12 | 19 |
var evt = document.createEvent("MouseEvents"); |
20 |
evt.initMouseEvent("mousedown", true, true, window, |
|
21 |
0, 0, 0, gInitialX, gInitialY, false, false, false, false, 0, null); |
|
22 |
var canceled = !ele.dispatchEvent(evt); |
|
3 | 23 |
|
24 |
views.WebView.gesturesEnabled = false; |
|
25 |
||
12 | 26 |
$(ele).find(".dogEarBox").addClass('selected'); |
27 |
$(ele).find(".dogEar").addClass('selected'); |
|
3 | 28 |
|
29 |
__sortingEnabled = true; |
|
30 |
__sortEleOffsetTop = ele.offsetTop; |
|
31 |
__previousSortEle = ele; |
|
12 | 32 |
$(ele).toggleClass('highlight'); |
3 | 33 |
|
34 |
} |
|
35 |
||
36 |
function _disableSorting(ele) { |
|
12 | 37 |
// app.debug('disablesorting:'); printProp(ele); |
3 | 38 |
|
39 |
views.WebView.gesturesEnabled = true; |
|
40 |
||
12 | 41 |
$(ele).removeClass('sort'); |
42 |
$(ele).addClass('no-sort'); |
|
43 |
$(ele).find('.dogEarBox').removeClass('selected').addClass('closed'); |
|
44 |
$(ele).find('.dogEar').removeClass('selected').addClass('closed'); |
|
3 | 45 |
|
46 |
__sortingEnabled = false; |
|
47 |
__sortEleOffsetTop = 0; |
|
48 |
__previousSortEle = null; |
|
49 |
} |
|
50 |
||
51 |
function _dragInit() |
|
52 |
{ |
|
53 |
$("#bookmarkListTree").sortable({ |
|
54 |
placeholder: 'ui-state-highlight', |
|
55 |
axis:'y', |
|
56 |
cancel : 'li.no-sort', |
|
57 |
scrollSensitivity : 40, |
|
58 |
scrollSpeed : 40, |
|
59 |
start: function(event, ui) { |
|
60 |
__dragendFlag = true; |
|
61 |
}, |
|
62 |
update: function(event, ui) { |
|
12 | 63 |
var sortedBookmark = ui.item[0]; |
64 |
_disableSorting(sortedBookmark); // Unselect it |
|
65 |
// If there's only one bookmark in the list, do nothing |
|
66 |
if ($('#bookmarkListTree').children().length == 0) |
|
67 |
return; |
|
68 |
var nextBookmark = $(sortedBookmark).next()[0]; |
|
69 |
var bm = window.bookmarksController.findBookmark(sortedBookmark.id); |
|
70 |
// If it wasn't moved to the end, change the sortIndex to the next bookmark's sortIndex and the rest will propagate down |
|
71 |
if (nextBookmark) { |
|
72 |
var nextbm = window.bookmarksController.findBookmark(nextBookmark.id); |
|
73 |
window.bookmarksController.reorderBookmark(sortedBookmark.id, nextbm.sortIndex); |
|
74 |
} |
|
75 |
// It was moved to the end, so change the sortIndex to the prev bookmark's sortIndex + 1 |
|
76 |
else { |
|
77 |
var prevBookmark = $(sortedBookmark).prev()[0]; |
|
78 |
var prevbm = window.bookmarksController.findBookmark(prevBookmark.id); |
|
79 |
window.bookmarksController.reorderBookmark(sortedBookmark.id, prevbm.sortIndex+1); |
|
3 | 80 |
} |
81 |
} |
|
82 |
}); |
|
83 |
||
84 |
$("#bookmarkListTree").sortable('enable'); |
|
85 |
$("#bookmarkListTree").disableSelection(); |
|
86 |
} |
|
87 |
||
88 |
function _longPress(ele) |
|
89 |
{ |
|
12 | 90 |
__longPressEvent = true; |
91 |
if(__timerId != "") |
|
92 |
{ |
|
93 |
window.clearTimeout(__timerId); |
|
94 |
__timerId = ""; |
|
95 |
} |
|
3 | 96 |
if (__sortingEnabled) |
97 |
{ |
|
98 |
_disableSorting(__previousSortEle) |
|
99 |
return false; |
|
100 |
} |
|
101 |
||
102 |
if(__prevOpenedBookmarkControl) |
|
103 |
_bookmarkHideControl(__prevOpenedBookmarkControl); |
|
104 |
||
12 | 105 |
if(!__dogearSelected) |
106 |
_enableSorting(ele); |
|
3 | 107 |
} |
108 |
||
12 | 109 |
function _timeLeft() |
110 |
{ |
|
111 |
__timerValueLeft = 1; |
|
112 |
} |
|
3 | 113 |
function _longPressStarted(lp) |
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
114 |
{ |
12 | 115 |
__timerValueLeft = 0; |
116 |
__longPressEvent = false; |
|
117 |
if(!window.views.WebView.bedrockTiledBackingStoreEnabled()) |
|
118 |
{ |
|
119 |
__timerId = window.setTimeout("_timeLeft()",250); |
|
120 |
} |
|
121 |
else |
|
122 |
{ |
|
123 |
__timerId = window.setTimeout("_timeLeft()",550); |
|
124 |
} |
|
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
125 |
// Remember the current LongPress object so we can cancel it if scrolling |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
126 |
// starts. |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
127 |
__currentLongPress = lp; |
3 | 128 |
__cancelLinkOpening = false; |
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
129 |
} |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
130 |
|
3 | 131 |
function _handlePanStarted(type) |
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
132 |
{ |
3 | 133 |
__cancelLinkOpening = true; |
134 |
||
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
135 |
// Scrolling started, cancel the LongPress. |
3 | 136 |
if (__currentLongPress != undefined) { |
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
137 |
__currentLongPress.cancel(); |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
138 |
__currentLongPress = undefined; |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
139 |
} |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
140 |
} |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
141 |
|
3 | 142 |
|
143 |
function _bookmarkHideControl(ele){ |
|
12 | 144 |
$(ele).find('.dogEarBox').addClass('closed'); |
145 |
$(ele).find('.dogEar').addClass('closed'); |
|
146 |
$(ele).find('.bookmarkItem').css('width', (parseInt(window.innerWidth)-70)+"px"); |
|
3 | 147 |
} |
148 |
||
12 | 149 |
function _bookmarkToggleControls(event){ |
150 |
var ele = event.target; |
|
3 | 151 |
try { |
12 | 152 |
if(__timerId != "") |
153 |
{ |
|
154 |
window.clearTimeout(__timerId); |
|
155 |
__timerId = ""; |
|
156 |
} |
|
157 |
if (__sortingEnabled && ele.parentNode.parentNode!=__previousSortEle) |
|
158 |
{ |
|
159 |
_disableSorting(__previousSortEle) |
|
160 |
return false; |
|
161 |
} |
|
162 |
else if (__sortingEnabled && (ele.parentNode.parentNode==__previousSortEle)) |
|
163 |
{ |
|
164 |
return false; |
|
165 |
} |
|
166 |
if(__timerValueLeft == 1 || __longPressEvent == true) |
|
167 |
{ |
|
168 |
__timerValueLeft = 0; |
|
169 |
__longPressEvent = false; |
|
170 |
return false; |
|
171 |
} |
|
172 |
__timerValueLeft = 0; |
|
3 | 173 |
|
12 | 174 |
var li = $(ele).parents('li'); |
175 |
var dogEarBox = li.find('.dogEarBox'); |
|
176 |
dogEarBox.toggleClass('closed'); |
|
177 |
dogEarBox.find('.dogEar').toggleClass('closed'); |
|
178 |
// It's too bad we can't do this via margin-right because then we could just do it in the .css file coz it would be a static value |
|
179 |
if (dogEarBox.hasClass('closed')) { |
|
180 |
li.find('.bookmarkItem').css('width', (parseInt(window.innerWidth)-70)+"px"); |
|
181 |
} |
|
182 |
else { |
|
183 |
li.find('.bookmarkItem').css('width', (parseInt(window.innerWidth)-220)+"px"); |
|
184 |
} |
|
3 | 185 |
if (__prevOpenedBookmarkControl != null && __prevOpenedBookmarkControl != ele.parentNode.parentNode) |
186 |
_bookmarkHideControl(__prevOpenedBookmarkControl); |
|
187 |
||
188 |
}catch(e) { alert(e); } |
|
189 |
||
190 |
__prevOpenedBookmarkControl = ele.parentNode.parentNode; |
|
191 |
} |
|
192 |
||
12 | 193 |
function _addNewBookmark(bmtitle,bmurl,bmid) |
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
194 |
{ |
12 | 195 |
// bookmark title/url may have been altered by the controller's add method (i.e. to include http://) so reload it |
196 |
var bm = window.bookmarksController.findBookmark(bmid); |
|
197 |
bmtitle = bm.title; |
|
198 |
bmurl = bm.url; |
|
199 |
if(__timerId != "") |
|
200 |
{ |
|
201 |
window.clearTimeout(__timerId); |
|
202 |
__timerId = ""; |
|
203 |
} |
|
204 |
if(__prevOpenedBookmarkControl) |
|
3 | 205 |
_bookmarkHideControl(__prevOpenedBookmarkControl); |
206 |
||
207 |
if(__previousSortEle != null) |
|
208 |
_disableSorting(__previousSortEle) |
|
209 |
||
210 |
__bookmarkCount += 1; |
|
211 |
//create element and add it to bookmark view |
|
212 |
var ul=document.getElementById('bookmarkListTree'); |
|
213 |
var dbgTitle = bmtitle.replace(/'/g, "'"); |
|
12 | 214 |
dbgTitle = dbgTitle.replace(/"/g, """); |
215 |
var li = _createBookmarkElement(dbgTitle,bmurl,bmid); |
|
216 |
$(li).addClass('no-sort'); |
|
14 | 217 |
ul.insertBefore(li, ul.firstChild); |
12 | 218 |
ul.childNodes[ul.childNodes.length-1].focus(); |
9 | 219 |
|
220 |
if (!window.views.WebView.bedrockTiledBackingStoreEnabled()) |
|
221 |
new LongPress(li.id, _longPress, _longPressStarted, 250); |
|
222 |
else |
|
223 |
new LongPress(li.id, _longPress, _longPressStarted, 550); |
|
3 | 224 |
|
225 |
$('html, body').animate({ |
|
226 |
scrollTop: 0}, 1000); |
|
227 |
} |
|
228 |
||
12 | 229 |
function _editBookmark(bmtitle,bmurl,bmid) |
3 | 230 |
{ |
12 | 231 |
if(__prevOpenedBookmarkControl) |
232 |
_bookmarkHideControl(__prevOpenedBookmarkControl); |
|
3 | 233 |
|
12 | 234 |
// bookmark title/url may have been altered by the controller's edit method (i.e. to include http://) so reload it |
235 |
var bm = window.bookmarksController.findBookmark(bmid); |
|
236 |
||
237 |
$('#'+bmid).find('.aTitle').text(bm.title); |
|
238 |
$('#'+bmid).find('.aUrl').text(bm.url); |
|
3 | 239 |
} |
240 |
||
12 | 241 |
function _launchEditBookmark(r,bmtitle,bmurl,id) |
3 | 242 |
{ |
14 | 243 |
// bookmark title/url may have been altered by the controller's edit method, so reload it |
244 |
var bm = window.bookmarksController.findBookmark(id); |
|
245 |
window.bookmarksController.showBookmarkEditDialog(bm.title,bm.url,id); |
|
3 | 246 |
} |
247 |
||
12 | 248 |
function _deleteBookmark(r,bmid) |
3 | 249 |
{ |
12 | 250 |
window.bookmarksController.deleteBookmark(bmid); |
251 |
$('#'+bmid).remove(); |
|
3 | 252 |
} |
253 |
||
254 |
||
14 | 255 |
function _openUrl(ele, bmid) { |
12 | 256 |
if(__timerId != "") |
257 |
{ |
|
258 |
window.clearTimeout(__timerId); |
|
259 |
__timerId = ""; |
|
260 |
} |
|
261 |
// DragStart & DragEnd listeners are defined at bottom |
|
262 |
if (__sortingEnabled && (ele.parentNode!=__previousSortEle)) |
|
263 |
{ |
|
264 |
_disableSorting(__previousSortEle) |
|
265 |
return false; |
|
266 |
} |
|
267 |
else if (__sortingEnabled && (ele.parentNode==__previousSortEle)) |
|
3 | 268 |
{ |
269 |
return false; |
|
270 |
} |
|
12 | 271 |
else if (__dragendFlag) |
272 |
{ |
|
273 |
__dragendFlag = false; |
|
274 |
return false; |
|
275 |
} |
|
276 |
else if(__cancelLinkOpening) |
|
277 |
{ |
|
278 |
__cancelLinkOpening = false; |
|
279 |
return false; |
|
280 |
} |
|
3 | 281 |
|
282 |
window.views.WebView.showNormalPage(); |
|
283 |
window.ViewStack.switchView( "WebView","BookmarkTreeView"); |
|
284 |
||
12 | 285 |
// Laod a page to chrome view |
14 | 286 |
// bookmark title/url may have been altered by the controller's edit method, so reload it |
287 |
var bm = window.bookmarksController.findBookmark(bmid); |
|
288 |
window.views.WebView.loadUrlToCurrentPage(bm.url); |
|
12 | 289 |
views.WebView.gesturesEnabled = true; |
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
290 |
} |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
291 |
|
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
292 |
function _updateBookmarkViewGoemetry(displayMode) |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
293 |
{ |
12 | 294 |
// It's too bad we couldn't use margin-right instead of width coz then we could just put a static value in the .css file and not even need to do anything |
295 |
$('.dogEarBox.closed').next('.bookmarkItem').css('width', (parseInt(window.innerWidth)-70)+"px"); |
|
296 |
$('.dogEarBox').not('.closed').next('.bookmarkItem').css('width', (parseInt(window.innerWidth)-220)+"px"); |
|
297 |
} |
|
3 | 298 |
|
12 | 299 |
function _setDogear() |
300 |
{ |
|
301 |
__dogearSelected = true; |
|
302 |
} |
|
303 |
||
304 |
function _unsetDogear() |
|
305 |
{ |
|
306 |
__dogearSelected = false; |
|
3 | 307 |
} |
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
308 |
|
3 | 309 |
function _createBookmarkElement(bmtitle,bmfullurl,idValue) |
310 |
{ |
|
311 |
var _width = parseInt(window.innerWidth)-70; |
|
312 |
var escapedTitle = bmtitle.replace(/'/g, "\\'"); |
|
313 |
var li=document.createElement('li'); |
|
314 |
li.id = idValue; |
|
315 |
li.innerHTML = |
|
12 | 316 |
'<div class="dogEarBox closed">'+ // bookmarkBox |
317 |
'<div class="dogEar closed"></div>'+ |
|
318 |
'<img class="bookmarkEditBtn" src="icons/edit_btn.png" width="56" height="56" vspace="7" hspace="5">'+ |
|
319 |
'<img class="bookmarkDeleteBtn" src="icons/delete_btn.png" width="56" height="56" vspace="7" hspace="5" >'+ |
|
3 | 320 |
'</div>'+ |
12 | 321 |
'<div class="bookmarkItem" style="width:'+_width+'px;">'+ |
322 |
'<span class="aTitle">'+bmtitle+'</span>'+ |
|
323 |
'<br/>'+ |
|
324 |
'<span class="aUrl">'+bmfullurl+'</span>'+ |
|
3 | 325 |
'</div>'; |
12 | 326 |
$(li).find(".dogEar") |
327 |
.click(_bookmarkToggleControls) |
|
328 |
.mouseover(_setDogear) |
|
329 |
.mouseout(_unsetDogear); |
|
330 |
$(li).find(".bookmarkItem"). |
|
14 | 331 |
click(function (event) {_openUrl(event.target, idValue);}); |
12 | 332 |
$(li).find(".bookmarkEditBtn"). |
333 |
click(function (event) {_launchEditBookmark(event.target, bmtitle, bmfullurl, idValue);}); |
|
334 |
$(li).find(".bookmarkDeleteBtn"). |
|
335 |
click(function (event) {_deleteBookmark(event.target, idValue);}); |
|
3 | 336 |
|
337 |
return li; |
|
338 |
} |
|
339 |
||
340 |
function _createBookmarkView() |
|
341 |
{ |
|
342 |
try |
|
343 |
{ |
|
344 |
__currentLongPress = undefined; |
|
345 |
//Get bookmarks data from database |
|
12 | 346 |
window.bookmarksController.findAllBookmarks(); |
3 | 347 |
var ul=document.getElementById('bookmarkListTree'); |
12 | 348 |
while (window.bookmarksController.hasMoreBookmarks()) |
3 | 349 |
{ |
12 | 350 |
var bm = window.bookmarksController.nextBookmark(); |
351 |
var bmurl = bm.url; |
|
352 |
var bmtitle = bm.title; |
|
353 |
var id = bm.id; |
|
3 | 354 |
|
355 |
//create element and add it to bookmark view |
|
12 | 356 |
var li = _createBookmarkElement(bmtitle,bmurl,id); |
357 |
$(li).addClass('no-sort'); |
|
3 | 358 |
ul.appendChild(li); |
359 |
ul.childNodes[0].focus(); |
|
9 | 360 |
if (!window.views.WebView.bedrockTiledBackingStoreEnabled()) |
361 |
new LongPress(li.id, _longPress, _longPressStarted, 250); |
|
362 |
else |
|
363 |
new LongPress(li.id, _longPress, _longPressStarted, 550); |
|
364 |
||
12 | 365 |
__bookmarkCount++; |
3 | 366 |
} |
367 |
} catch(E) { alert(E); } |
|
368 |
||
369 |
_dragInit(); |
|
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
370 |
} |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
371 |
|
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
372 |
function launchBookmarkView() |
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
373 |
{ |
3 | 374 |
try{ |
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
375 |
window.chrome.aspectChanged.connect(_updateBookmarkViewGoemetry); |
12 | 376 |
window.bookmarksController.bookmarkAdded.connect(_addNewBookmark); |
377 |
window.bookmarksController.bookmarkModified.connect(_editBookmark); |
|
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
378 |
|
3 | 379 |
// Get Bookmarks from the database |
380 |
_createBookmarkView(); |
|
0
1450b09d0cfd
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
381 |
|
3 | 382 |
// Watch for the start of scrolling in the view so we can cancel the |
383 |
// long presses to prevent them from interfere with scrolling. Otherwise |
|
384 |
// the long press callback will fire and trigger sortable mode. |
|
385 |
views.WebView.startingPanGesture.connect(_handlePanStarted); |
|
386 |
||
387 |
}catch(e){ alert(e); } |
|
388 |
} |