PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` extension.open_local_file = function () { var filebrowse = gw_new_file_dialog(null, 'Open file'); filebrowse.filter = '*'; filebrowse.browse(gpac.last_working_directory); filebrowse.extension = this; this.file_open_dlg = true; if (!gwskin.mobile_device) gw_object_set_dragable(filebrowse); filebrowse.on_display_size = function (width, height) { if (gwskin.mobile_device) { this.set_size(width, height); } else { var w = width / 2; if (w < 200) w = width - 20; if (w > 500) w = 500; this.set_size(w, 0.8 * height); this.move((width - w) / 2, 0); } } filebrowse.on_browse = function (value, directory) { if (value == null) { this.extension.controler.show(); } else { if (directory) gpac.last_working_directory = directory; this.extension.set_movie_url(value); } this.file_open_dlg = false; } filebrowse.on_close = function () { this.extension.controler.show(); this.extension.file_open_dlg = false; } if (this.history.length) { filebrowse.go_hist = filebrowse.add_tool('history'); filebrowse.go_hist.on_click = function () { var hist_items = []; var history = this.dlg.extension.history; for (var i = 0; i < history.length; i++) { var o = {}; var f = history[history.length - i - 1]; var names = f.url.split('/'); if (names.length == 0) names = f.url.split('\\'); o.name = names.pop(); o.directory = false; o.path = f.url; var delim = f.url.slice(-1); hist_items.push(o); } this.dlg.set_label('History'); this.dlg.browse(hist_items); } } filebrowse.go_fav = filebrowse.add_tool('favorite'); filebrowse.go_fav.on_click = function () { var fav_items = []; var bookmarks = this.dlg.extension.bookmarks; for (var i = 0; i < bookmarks.length; i++) { var o = {}; var f = bookmarks[bookmarks.length - i - 1]; var names = f.url.split('/'); if (names.length == 0) names = f.url.split('\\'); o.name = names.pop(); if (o.name == '') { o.directory = true; o.name = names.pop(); } else { o.directory = false; } o.path = f.url; var delim = f.url.slice(-1); fav_items.push(o); } this.dlg.set_label('Bookmarks'); this.dlg.browse(fav_items); } if (this.bookmarks.length) filebrowse.go_fav.show(); else filebrowse.go_fav.hide(); filebrowse.on_long_click = function (filename, path, directory) { var popup = gw_new_window_full(null, true, ''); popup.dlg = this; this.disable(); popup.area = gw_new_grid_container(popup); popup.area.dlg = popup; popup.area.break_at_line = true; var hist_idx = this.extension.is_in_history(path, true); if (hist_idx > -1) { var item = gw_new_icon_button(popup.area, 'history', 'Remove from history', true, 'listitem'); item.dlg = popup; item.set_size(0.9 * this.width, gwskin.default_control_height); item.index = hist_idx; item.on_click = function () { var fb_dlg = this.dlg.dlg; fb_dlg.extension.history.splice(this.index, 1); fb_dlg.extension.set_option('PlaybackHistory', gwskin.stringify(fb_dlg.extension.history)); fb_dlg.go_hist.on_click(); this.dlg.close(); } } if (this.extension.history.length) { var item = gw_new_icon_button(popup.area, 'trash', 'Clear all history', true, 'listitem'); item.dlg = popup; item.set_size(0.9 * this.width, gwskin.default_control_height); item.index = hist_idx; item.on_click = function () { var fb_dlg = this.dlg.dlg; fb_dlg.extension.history = []; fb_dlg.extension.set_option('PlaybackHistory', gwskin.stringify(fb_dlg.extension.history)); fb_dlg.close(); this.dlg.close(); } } var hist_idx = this.extension.is_in_history(path, false); item = gw_new_icon_button(popup.area, 'favorite', hist_idx > -1 ? 'Remove from favorites' : 'Add to favorites', true, 'listitem'); item.dlg = popup; item.set_size(0.9 * this.width, gwskin.default_control_height); item.index = hist_idx; item.on_click = function () { var fb_dlg = this.dlg.dlg; if (this.index > -1) { fb_dlg.extension.bookmarks.splice(this.index, 1); fb_dlg.extension.set_option('Bookmarks', gwskin.stringify(fb_dlg.extension.bookmarks)); if (fb_dlg.extension.bookmarks.length == 0) { fb_dlg.go_fav.hide(); fb_dlg.browse(fb_dlg.directory); } } else { fb_dlg.extension.add_bookmark(path, false, filename); fb_dlg.go_fav.show(); } fb_dlg.layout(this.dlg.dlg.width, this.dlg.dlg.height); this.dlg.close(); } var item = gw_new_icon_button(popup.area, 'view360', 'View as 360', true, 'listitem'); item.dlg = popup; item.set_size(0.9 * this.width, gwskin.default_control_height); item.index = hist_idx; item.on_click = function () { var fb_dlg = this.dlg.dlg; path += '#LIVE360TV'; fb_dlg.extension.set_movie_url(path); if (directory) gpac.last_working_directory = directory; fb_dlg.close(); this.dlg.close(); } popup.set_size(0.9 * this.width, 0.9 * this.height); popup.set_alpha(1); popup.move(this.translation.x, this.translation.y); popup.on_close = function () { this.dlg.enable(); } popup.show(); } filebrowse.go_net = filebrowse.add_tool('remote_location'); filebrowse.go_net.on_click = function () { var popup = gw_new_window_full(null, true, 'Enter Adress'); popup.dlg = this.dlg; this.dlg.disable(); popup.area = gw_new_grid_container(popup); popup.area.dlg = popup; popup.area.spread_h = true; popup.edit = gw_new_text_edit(popup.area, ''); popup.edit.dlg = popup; gpac.set_focus(popup.edit); popup.edit.on_text = function (val) { if (val != '') { this.dlg.dlg.on_browse(val, null); this.dlg.dlg.close(); } this.dlg.close(); } popup.on_display_size = function (w, h) { this.edit.set_size(w, 2 * gwskin.default_text_font_size); this.set_size(w, 2 * gwskin.default_text_font_size + gwskin.default_icon_height); this.move(0, h / 2 - this.height / 2); } popup.on_display_size(gw_display_width, gw_display_height); popup.set_alpha(1.0); popup.on_close = function () { this.dlg.enable(); } popup.show(); } filebrowse.on_display_size(gw_display_width, gw_display_height); if (gpac.hardware_rgba) filebrowse.set_alpha(0.8); this.controler.hide(); filebrowse.show(); return filebrowse; }; extension.is_in_history = function (url, is_history) { var search_in = is_history ? this.history : this.bookmarks; var hist = search_in.filter(function (obj) { return obj.url == url; }); if (hist.length) { var index = search_in.indexOf(hist[0]); return index; } return -1; }; extension.add_bookmark = function (url, is_history) { var store = is_history ? this.history : this.bookmarks; var hist = store.filter(function (obj) { return obj.url == url; }); if (hist.length) { var index = store.indexOf(hist[0]); if (index > -1) store.splice(index, 1); hist = hist[0]; } else { hist = {}; hist.url = url; hist.nb_access = 0; } hist.nb_access++; var t = new Date() hist.time = t.getTime(); store.push(hist); if (is_history) { var nb_max = 3; if (this.history.length > nb_max) { var rem = this.history.length - nb_max; this.history.splice(-nb_max, rem); } } this.set_option(is_history ? 'PlaybackHistory' : 'Bookmarks', gwskin.stringify(store)); };