ginebra2/chrome/bedrockchrome/bookmarkview.superpage/bookmarkview.js
author hgs
Tue, 29 Jun 2010 00:46:29 -0400
changeset 3 0954f5dd2cd0
parent 0 1450b09d0cfd
child 9 b39122337a00
permissions -rw-r--r--
201026
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3
hgs
parents: 0
diff changeset
     1
var __prevOpenedBookmarkControl = null;
hgs
parents: 0
diff changeset
     2
var __previousSortEle = null;
hgs
parents: 0
diff changeset
     3
var __bookmarkCount= 0;
hgs
parents: 0
diff changeset
     4
var __bookmarkEditElement= null;
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     5
var __dragendFlag = false;
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
// 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
     7
// 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
     8
var __currentLongPress;
3
hgs
parents: 0
diff changeset
     9
var __cancelLinkOpening = false;
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
3
hgs
parents: 0
diff changeset
    11
function _enableSorting(ele) {
hgs
parents: 0
diff changeset
    12
hgs
parents: 0
diff changeset
    13
    ele.className = 'sort';
hgs
parents: 0
diff changeset
    14
		
hgs
parents: 0
diff changeset
    15
		var evt = document.createEvent("MouseEvents");
hgs
parents: 0
diff changeset
    16
		evt.initMouseEvent("mousedown", true, true, window,
hgs
parents: 0
diff changeset
    17
		  0, 0, 0, gInitialX, gInitialY, false, false, false, false, 0, null);
hgs
parents: 0
diff changeset
    18
		var canceled = !ele.dispatchEvent(evt);
hgs
parents: 0
diff changeset
    19
    
hgs
parents: 0
diff changeset
    20
  	views.WebView.gesturesEnabled = false;
hgs
parents: 0
diff changeset
    21
hgs
parents: 0
diff changeset
    22
    ele.childNodes[0].className = 'controlInSort';
hgs
parents: 0
diff changeset
    23
    ele.childNodes[0].childNodes[0].className = 'collapsedSort';
hgs
parents: 0
diff changeset
    24
hgs
parents: 0
diff changeset
    25
  __sortingEnabled = true;
hgs
parents: 0
diff changeset
    26
  __sortEleOffsetTop = ele.offsetTop;
hgs
parents: 0
diff changeset
    27
  __previousSortEle = ele;
hgs
parents: 0
diff changeset
    28
    
hgs
parents: 0
diff changeset
    29
    ele.className = 'highlight';
hgs
parents: 0
diff changeset
    30
hgs
parents: 0
diff changeset
    31
  }
hgs
parents: 0
diff changeset
    32
hgs
parents: 0
diff changeset
    33
function _disableSorting(ele) {
hgs
parents: 0
diff changeset
    34
hgs
parents: 0
diff changeset
    35
    views.WebView.gesturesEnabled = true;
hgs
parents: 0
diff changeset
    36
    
hgs
parents: 0
diff changeset
    37
    ele.className = 'no-sort';
hgs
parents: 0
diff changeset
    38
    ele.childNodes[0].className = 'controlIn';
hgs
parents: 0
diff changeset
    39
    ele.childNodes[0].childNodes[0].className = 'collapsed';
hgs
parents: 0
diff changeset
    40
hgs
parents: 0
diff changeset
    41
    __sortingEnabled = false;
hgs
parents: 0
diff changeset
    42
    __sortEleOffsetTop = 0;
hgs
parents: 0
diff changeset
    43
    __previousSortEle = null;
hgs
parents: 0
diff changeset
    44
}
hgs
parents: 0
diff changeset
    45
hgs
parents: 0
diff changeset
    46
function _dragInit()
hgs
parents: 0
diff changeset
    47
{
hgs
parents: 0
diff changeset
    48
    $("#bookmarkListTree").sortable({
hgs
parents: 0
diff changeset
    49
        placeholder: 'ui-state-highlight',
hgs
parents: 0
diff changeset
    50
        axis:'y',
hgs
parents: 0
diff changeset
    51
      cancel : 'li.no-sort',
hgs
parents: 0
diff changeset
    52
      scrollSensitivity : 40,
hgs
parents: 0
diff changeset
    53
      scrollSpeed : 40,
hgs
parents: 0
diff changeset
    54
        start: function(event, ui) {
hgs
parents: 0
diff changeset
    55
            __dragendFlag = true;
hgs
parents: 0
diff changeset
    56
            },
hgs
parents: 0
diff changeset
    57
      update: function(event, ui) {
hgs
parents: 0
diff changeset
    58
                var sortedItemId = ui.item[0].id;
hgs
parents: 0
diff changeset
    59
                var _a = $('#bookmarkListTree').sortable('toArray');
hgs
parents: 0
diff changeset
    60
                for (var i=0; i<_a.length; i++)
hgs
parents: 0
diff changeset
    61
                {
hgs
parents: 0
diff changeset
    62
                    if (sortedItemId == _a[i])
hgs
parents: 0
diff changeset
    63
                    {
hgs
parents: 0
diff changeset
    64
                        var li = document.getElementById(sortedItemId);
hgs
parents: 0
diff changeset
    65
                        _disableSorting(li);
hgs
parents: 0
diff changeset
    66
hgs
parents: 0
diff changeset
    67
                        var div = li.childNodes[1];
hgs
parents: 0
diff changeset
    68
                        window.bookmarksManager.reorderBokmarks(div.childNodes[0].firstChild.nodeValue,i);
hgs
parents: 0
diff changeset
    69
                    }
hgs
parents: 0
diff changeset
    70
                }
hgs
parents: 0
diff changeset
    71
            }
hgs
parents: 0
diff changeset
    72
    });
hgs
parents: 0
diff changeset
    73
hgs
parents: 0
diff changeset
    74
    $("#bookmarkListTree").sortable('enable');
hgs
parents: 0
diff changeset
    75
    $("#bookmarkListTree").disableSelection();
hgs
parents: 0
diff changeset
    76
}
hgs
parents: 0
diff changeset
    77
hgs
parents: 0
diff changeset
    78
function _longPress(ele)
hgs
parents: 0
diff changeset
    79
{
hgs
parents: 0
diff changeset
    80
  if (__sortingEnabled)
hgs
parents: 0
diff changeset
    81
  {
hgs
parents: 0
diff changeset
    82
            _disableSorting(__previousSortEle)
hgs
parents: 0
diff changeset
    83
            return false;
hgs
parents: 0
diff changeset
    84
  }
hgs
parents: 0
diff changeset
    85
hgs
parents: 0
diff changeset
    86
  if(__prevOpenedBookmarkControl)
hgs
parents: 0
diff changeset
    87
  	_bookmarkHideControl(__prevOpenedBookmarkControl);
hgs
parents: 0
diff changeset
    88
  	
hgs
parents: 0
diff changeset
    89
    _enableSorting(ele);
hgs
parents: 0
diff changeset
    90
}
hgs
parents: 0
diff changeset
    91
hgs
parents: 0
diff changeset
    92
function _longPressStarted(lp)
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    93
{
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    94
    // 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
    95
    // starts.
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    96
    __currentLongPress = lp;
3
hgs
parents: 0
diff changeset
    97
    __cancelLinkOpening = false;
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    98
}
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    99
3
hgs
parents: 0
diff changeset
   100
function _handlePanStarted(type)
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   101
{
3
hgs
parents: 0
diff changeset
   102
		__cancelLinkOpening = true;
hgs
parents: 0
diff changeset
   103
		
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   104
    // Scrolling started, cancel the LongPress.
3
hgs
parents: 0
diff changeset
   105
      if (__currentLongPress != undefined) {
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   106
        __currentLongPress.cancel();
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   107
        __currentLongPress = undefined;
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   108
    }
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   109
}
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   110
3
hgs
parents: 0
diff changeset
   111
hgs
parents: 0
diff changeset
   112
function _bookmarkHideControl(ele){
hgs
parents: 0
diff changeset
   113
    ele.childNodes[0].className = 'controlIn';
hgs
parents: 0
diff changeset
   114
    ele.childNodes[0].childNodes[0].className = 'collapsed';
hgs
parents: 0
diff changeset
   115
    ele.childNodes[1].style.width = (parseInt(window.innerWidth)-70)+"px";
hgs
parents: 0
diff changeset
   116
}
hgs
parents: 0
diff changeset
   117
hgs
parents: 0
diff changeset
   118
function _bookmarkToggleControls(ele){
hgs
parents: 0
diff changeset
   119
    try {
hgs
parents: 0
diff changeset
   120
hgs
parents: 0
diff changeset
   121
            if (__sortingEnabled && ele.parentNode.parentNode!=__previousSortEle)
hgs
parents: 0
diff changeset
   122
            {
hgs
parents: 0
diff changeset
   123
                _disableSorting(__previousSortEle)
hgs
parents: 0
diff changeset
   124
                return false;
hgs
parents: 0
diff changeset
   125
            }
hgs
parents: 0
diff changeset
   126
            else if (__sortingEnabled && (ele.parentNode.parentNode==__previousSortEle))
hgs
parents: 0
diff changeset
   127
            {
hgs
parents: 0
diff changeset
   128
                return false;
hgs
parents: 0
diff changeset
   129
            }
hgs
parents: 0
diff changeset
   130
hgs
parents: 0
diff changeset
   131
            ele.parentNode.className = (ele.parentNode.className == 'controlIn') ? 'controlOut' : 'controlIn';
hgs
parents: 0
diff changeset
   132
            if (ele.parentNode.className == 'controlIn') {
hgs
parents: 0
diff changeset
   133
                ele.className = 'collapsed';
hgs
parents: 0
diff changeset
   134
                ele.parentNode.parentNode.childNodes[1].style.width = (parseInt(window.innerWidth)-70)+"px";
hgs
parents: 0
diff changeset
   135
            }
hgs
parents: 0
diff changeset
   136
            else {
hgs
parents: 0
diff changeset
   137
                ele.className = 'expanded';
hgs
parents: 0
diff changeset
   138
                ele.parentNode.parentNode.childNodes[1].style.width = (parseInt(window.innerWidth)-220)+"px";
hgs
parents: 0
diff changeset
   139
            }
hgs
parents: 0
diff changeset
   140
hgs
parents: 0
diff changeset
   141
        if (__prevOpenedBookmarkControl != null && __prevOpenedBookmarkControl != ele.parentNode.parentNode)
hgs
parents: 0
diff changeset
   142
            _bookmarkHideControl(__prevOpenedBookmarkControl);
hgs
parents: 0
diff changeset
   143
hgs
parents: 0
diff changeset
   144
    }catch(e) { alert(e); }
hgs
parents: 0
diff changeset
   145
hgs
parents: 0
diff changeset
   146
    __prevOpenedBookmarkControl = ele.parentNode.parentNode;
hgs
parents: 0
diff changeset
   147
}
hgs
parents: 0
diff changeset
   148
hgs
parents: 0
diff changeset
   149
function _addNewBookmark(bmtitle,bmurl)
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   150
{
3
hgs
parents: 0
diff changeset
   151
	  if(__prevOpenedBookmarkControl)
hgs
parents: 0
diff changeset
   152
  		_bookmarkHideControl(__prevOpenedBookmarkControl);
hgs
parents: 0
diff changeset
   153
hgs
parents: 0
diff changeset
   154
    var ul=document.getElementById('bookmarkListTree');
hgs
parents: 0
diff changeset
   155
    for (x=0; x< ul.childNodes.length; x++)
hgs
parents: 0
diff changeset
   156
        {
hgs
parents: 0
diff changeset
   157
        	 var li_element= ul.childNodes[x];
hgs
parents: 0
diff changeset
   158
        	 var bm_title= li_element.childNodes[1].childNodes[0].innerText; 
hgs
parents: 0
diff changeset
   159
        	 
hgs
parents: 0
diff changeset
   160
        	 if(bmtitle.toLowerCase() ==  bm_title.toLowerCase())
hgs
parents: 0
diff changeset
   161
        	 {
hgs
parents: 0
diff changeset
   162
        	 	ul.removeChild(li_element);
hgs
parents: 0
diff changeset
   163
        	 	break;
hgs
parents: 0
diff changeset
   164
        	 }
hgs
parents: 0
diff changeset
   165
        	 
hgs
parents: 0
diff changeset
   166
        }
hgs
parents: 0
diff changeset
   167
    
hgs
parents: 0
diff changeset
   168
    if(__previousSortEle    != null)
hgs
parents: 0
diff changeset
   169
        _disableSorting(__previousSortEle)
hgs
parents: 0
diff changeset
   170
hgs
parents: 0
diff changeset
   171
    __bookmarkCount += 1;
hgs
parents: 0
diff changeset
   172
    //create element and add it to bookmark view
hgs
parents: 0
diff changeset
   173
    var ul=document.getElementById('bookmarkListTree');
hgs
parents: 0
diff changeset
   174
    var dbgTitle = bmtitle.replace(/'/g, "&#39");
hgs
parents: 0
diff changeset
   175
  dbgTitle = dbgTitle.replace(/"/g, "&#34");
hgs
parents: 0
diff changeset
   176
    var li = _createBookmarkElement(dbgTitle,bmurl,__bookmarkCount);
hgs
parents: 0
diff changeset
   177
		li.className = 'no-sort';
hgs
parents: 0
diff changeset
   178
    ul.insertBefore(li, ul.childNodes[0]);
hgs
parents: 0
diff changeset
   179
    ul.childNodes[0].focus();
hgs
parents: 0
diff changeset
   180
		new LongPress(li.id, _longPress, _longPressStarted);
hgs
parents: 0
diff changeset
   181
hgs
parents: 0
diff changeset
   182
    $('html, body').animate({
hgs
parents: 0
diff changeset
   183
                        scrollTop: 0}, 1000);
hgs
parents: 0
diff changeset
   184
}
hgs
parents: 0
diff changeset
   185
hgs
parents: 0
diff changeset
   186
function _editBookmark(bmtitle,bmurl)
hgs
parents: 0
diff changeset
   187
{
hgs
parents: 0
diff changeset
   188
  if(__prevOpenedBookmarkControl)
hgs
parents: 0
diff changeset
   189
  	_bookmarkHideControl(__prevOpenedBookmarkControl);
hgs
parents: 0
diff changeset
   190
hgs
parents: 0
diff changeset
   191
	var ul=document.getElementById('bookmarkListTree');
hgs
parents: 0
diff changeset
   192
	for (x=0; x< ul.childNodes.length; x++)
hgs
parents: 0
diff changeset
   193
        {
hgs
parents: 0
diff changeset
   194
        	 var li_element= ul.childNodes[x];
hgs
parents: 0
diff changeset
   195
        	 var bm_title= li_element.childNodes[1].childNodes[0].innerText; 
hgs
parents: 0
diff changeset
   196
        	 
hgs
parents: 0
diff changeset
   197
        	 if(bmtitle.toLowerCase() == bm_title.toLowerCase() &&
hgs
parents: 0
diff changeset
   198
        	   __bookmarkEditElement.childNodes[1].childNodes[0].innerText.toLowerCase() != bmtitle.toLowerCase())
hgs
parents: 0
diff changeset
   199
        	 {
hgs
parents: 0
diff changeset
   200
        	 	ul.removeChild(li_element);
hgs
parents: 0
diff changeset
   201
        	 	break;
hgs
parents: 0
diff changeset
   202
        	 }
hgs
parents: 0
diff changeset
   203
        	 
hgs
parents: 0
diff changeset
   204
         }
hgs
parents: 0
diff changeset
   205
    __bookmarkEditElement.childNodes[1].childNodes[0].innerText  = bmtitle;
hgs
parents: 0
diff changeset
   206
    __bookmarkEditElement.childNodes[1].childNodes[2].innerText  = bmurl;
hgs
parents: 0
diff changeset
   207
}
hgs
parents: 0
diff changeset
   208
hgs
parents: 0
diff changeset
   209
function _launchEditBookmark(r,bmtitle,bmurl)
hgs
parents: 0
diff changeset
   210
{
hgs
parents: 0
diff changeset
   211
    __bookmarkEditElement = r.parentNode.parentNode;
hgs
parents: 0
diff changeset
   212
    window.bookmarksManager.launchEditBookmark(bmtitle,bmurl);
hgs
parents: 0
diff changeset
   213
}
hgs
parents: 0
diff changeset
   214
hgs
parents: 0
diff changeset
   215
function _deleteBookmark(r,bmtitle)
hgs
parents: 0
diff changeset
   216
{ 
hgs
parents: 0
diff changeset
   217
  window.bookmarksManager.deleteBookmark(bmtitle);
hgs
parents: 0
diff changeset
   218
    //ToDo : check for error code
hgs
parents: 0
diff changeset
   219
    r.parentNode.parentNode.parentNode.removeChild(r.parentNode.parentNode);
hgs
parents: 0
diff changeset
   220
  
hgs
parents: 0
diff changeset
   221
}
hgs
parents: 0
diff changeset
   222
hgs
parents: 0
diff changeset
   223
hgs
parents: 0
diff changeset
   224
function _openUrl(ele, newUrl) {
hgs
parents: 0
diff changeset
   225
        // DragStart & DragEnd listeners are defined at bottom
hgs
parents: 0
diff changeset
   226
        if (__sortingEnabled && (ele.parentNode!=__previousSortEle))
hgs
parents: 0
diff changeset
   227
        {
hgs
parents: 0
diff changeset
   228
            _disableSorting(__previousSortEle)
hgs
parents: 0
diff changeset
   229
            return false;
hgs
parents: 0
diff changeset
   230
        }
hgs
parents: 0
diff changeset
   231
        else if (__sortingEnabled && (ele.parentNode==__previousSortEle))
hgs
parents: 0
diff changeset
   232
            {
hgs
parents: 0
diff changeset
   233
                return false;
hgs
parents: 0
diff changeset
   234
            }
hgs
parents: 0
diff changeset
   235
        else if (__dragendFlag)
hgs
parents: 0
diff changeset
   236
        {
hgs
parents: 0
diff changeset
   237
            __dragendFlag = false;
hgs
parents: 0
diff changeset
   238
            return false;
hgs
parents: 0
diff changeset
   239
        }
hgs
parents: 0
diff changeset
   240
        else if(__cancelLinkOpening)
hgs
parents: 0
diff changeset
   241
        {
hgs
parents: 0
diff changeset
   242
        	__cancelLinkOpening = false;
hgs
parents: 0
diff changeset
   243
        	return false;
hgs
parents: 0
diff changeset
   244
        }
hgs
parents: 0
diff changeset
   245
hgs
parents: 0
diff changeset
   246
    window.views.WebView.showNormalPage();
hgs
parents: 0
diff changeset
   247
    window.ViewStack.switchView( "WebView","BookmarkTreeView");
hgs
parents: 0
diff changeset
   248
hgs
parents: 0
diff changeset
   249
        // Laod a page to chrome view
hgs
parents: 0
diff changeset
   250
        window.views.WebView.loadUrlToCurrentPage(newUrl);
hgs
parents: 0
diff changeset
   251
        views.WebView.gesturesEnabled = true;
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   252
}
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   253
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   254
function _updateBookmarkViewGoemetry(displayMode)
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   255
{
3
hgs
parents: 0
diff changeset
   256
    try{
hgs
parents: 0
diff changeset
   257
        var _list = document.getElementsByClassName('Title');
hgs
parents: 0
diff changeset
   258
        for (var i=0; i<_list.length; i++){
hgs
parents: 0
diff changeset
   259
             if (_list[i].parentNode.childNodes[0].className == 'controlIn'){
hgs
parents: 0
diff changeset
   260
                _list[i].style.width = (parseInt(window.innerWidth)-70)+"px";
hgs
parents: 0
diff changeset
   261
            }
hgs
parents: 0
diff changeset
   262
             else{
hgs
parents: 0
diff changeset
   263
                    _list[i].style.width = (parseInt(window.innerWidth)-220)+"px";
hgs
parents: 0
diff changeset
   264
             }
hgs
parents: 0
diff changeset
   265
        }
hgs
parents: 0
diff changeset
   266
    }catch(e){ alert(e); }
hgs
parents: 0
diff changeset
   267
hgs
parents: 0
diff changeset
   268
}
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   269
3
hgs
parents: 0
diff changeset
   270
function _createBookmarkElement(bmtitle,bmfullurl,idValue)
hgs
parents: 0
diff changeset
   271
{
hgs
parents: 0
diff changeset
   272
        var _width = parseInt(window.innerWidth)-70;
hgs
parents: 0
diff changeset
   273
        var escapedTitle = bmtitle.replace(/&#39/g, "\\'"); 
hgs
parents: 0
diff changeset
   274
        var li=document.createElement('li');
hgs
parents: 0
diff changeset
   275
        li.id = idValue;
hgs
parents: 0
diff changeset
   276
        li.innerHTML =
hgs
parents: 0
diff changeset
   277
        '<div class="controlIn">'+
hgs
parents: 0
diff changeset
   278
          '<div class="collapsed" onClick="javascript:_bookmarkToggleControls(this);"></div>'+
hgs
parents: 0
diff changeset
   279
            '<img src="icons/edit_btn.png" width="56" height="56" vspace="7" hspace="5" '+
hgs
parents: 0
diff changeset
   280
              'onclick="_launchEditBookmark(this,this.parentNode.parentNode.childNodes[1].childNodes[0].innerText,'+
hgs
parents: 0
diff changeset
   281
                                                                     'this.parentNode.parentNode.childNodes[1].childNodes[2].innerText)">'+
hgs
parents: 0
diff changeset
   282
            '<img src="icons/delete_btn.png" width="56" height="56" vspace="7" hspace="5" '+
hgs
parents: 0
diff changeset
   283
               'onclick="_deleteBookmark(this, \''+escapedTitle+'\')">'+
hgs
parents: 0
diff changeset
   284
        '</div>'+
hgs
parents: 0
diff changeset
   285
        '<div class="Title" style="width:'+_width+'px;" onclick="_openUrl(this,this.childNodes[2].innerText);">'+
hgs
parents: 0
diff changeset
   286
            '<span class="aTitle">'+bmtitle+'</span>'+
hgs
parents: 0
diff changeset
   287
            '<br/>'+
hgs
parents: 0
diff changeset
   288
            '<span class="aUrl">'+bmfullurl+'</span>'+
hgs
parents: 0
diff changeset
   289
        '</div>';
hgs
parents: 0
diff changeset
   290
hgs
parents: 0
diff changeset
   291
        return li;
hgs
parents: 0
diff changeset
   292
}
hgs
parents: 0
diff changeset
   293
hgs
parents: 0
diff changeset
   294
function _createBookmarkView()
hgs
parents: 0
diff changeset
   295
{
hgs
parents: 0
diff changeset
   296
        try
hgs
parents: 0
diff changeset
   297
        {
hgs
parents: 0
diff changeset
   298
            __currentLongPress = undefined;
hgs
parents: 0
diff changeset
   299
            //Get bookmarks data from database
hgs
parents: 0
diff changeset
   300
            var bookmakrData = window.bookmarksManager.getBookmarksJSON();
hgs
parents: 0
diff changeset
   301
            var myObject = eval('(' + bookmakrData + ')');
hgs
parents: 0
diff changeset
   302
            var ul=document.getElementById('bookmarkListTree');
hgs
parents: 0
diff changeset
   303
            for (x=0; x<myObject.length; x++)
hgs
parents: 0
diff changeset
   304
            {
hgs
parents: 0
diff changeset
   305
                var bmurl = myObject[x].urlvalue;
hgs
parents: 0
diff changeset
   306
                var bmtitle = myObject[x].title;
hgs
parents: 0
diff changeset
   307
hgs
parents: 0
diff changeset
   308
                //create element and add it to bookmark view
hgs
parents: 0
diff changeset
   309
                var li = _createBookmarkElement(bmtitle,bmurl, x);
hgs
parents: 0
diff changeset
   310
                li.className = 'no-sort';
hgs
parents: 0
diff changeset
   311
                ul.appendChild(li);
hgs
parents: 0
diff changeset
   312
                ul.childNodes[0].focus();
hgs
parents: 0
diff changeset
   313
hgs
parents: 0
diff changeset
   314
                new LongPress(li.id, _longPress, _longPressStarted);
hgs
parents: 0
diff changeset
   315
                __bookmarkCount = x;
hgs
parents: 0
diff changeset
   316
            }
hgs
parents: 0
diff changeset
   317
        } catch(E) { alert(E); }
hgs
parents: 0
diff changeset
   318
hgs
parents: 0
diff changeset
   319
        _dragInit();
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   320
}
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   321
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   322
function launchBookmarkView()
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   323
{
3
hgs
parents: 0
diff changeset
   324
    try{
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   325
        window.chrome.aspectChanged.connect(_updateBookmarkViewGoemetry);
3
hgs
parents: 0
diff changeset
   326
        window.bookmarksManager.bookmarkEntryAdded.connect(_addNewBookmark);
hgs
parents: 0
diff changeset
   327
        window.bookmarksManager.bookmarkEntryModified.connect(_editBookmark);
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   328
3
hgs
parents: 0
diff changeset
   329
        // Get Bookmarks from the database
hgs
parents: 0
diff changeset
   330
        _createBookmarkView();
0
1450b09d0cfd Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   331
3
hgs
parents: 0
diff changeset
   332
        // Watch for the start of scrolling in the view so we can cancel the
hgs
parents: 0
diff changeset
   333
        // long presses to prevent them from interfere with scrolling.  Otherwise
hgs
parents: 0
diff changeset
   334
        // the long press callback will fire and trigger sortable mode.
hgs
parents: 0
diff changeset
   335
        views.WebView.startingPanGesture.connect(_handlePanStarted);
hgs
parents: 0
diff changeset
   336
hgs
parents: 0
diff changeset
   337
    }catch(e){ alert(e); }
hgs
parents: 0
diff changeset
   338
}