cleanup
This commit is contained in:
parent
00e86e3854
commit
f262509adb
11 changed files with 13242 additions and 984 deletions
3
css/jquery.mobile-1.3.1.min.css
vendored
3
css/jquery.mobile-1.3.1.min.css
vendored
File diff suppressed because one or more lines are too long
3370
css/jquery.mobile.css
Normal file
3370
css/jquery.mobile.css
Normal file
File diff suppressed because it is too large
Load diff
BIN
img/icon-58.png
BIN
img/icon-58.png
Binary file not shown.
Before Width: | Height: | Size: 8.1 KiB After Width: | Height: | Size: 6.3 KiB |
15
index.html
15
index.html
|
@ -5,18 +5,13 @@
|
|||
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
|
||||
<title>Feedthemonkey</title>
|
||||
<link rel="stylesheet" href="css/jquery.mobile-1.3.1.min.css" />
|
||||
<title>FeedMonkey</title>
|
||||
|
||||
<!-- Extra Codiqa features -->
|
||||
<link rel="stylesheet" href="css/jquery.mobile.css" />
|
||||
<link rel="stylesheet" href="css/screen.css" />
|
||||
|
||||
<!-- jQuery and jQuery Mobile -->
|
||||
<script src="js/jquery-1.9.1.min.js"></script>
|
||||
<script src="js/jquery.mobile-1.3.1.js"></script>
|
||||
|
||||
<!-- Extra Codiqa features -->
|
||||
<script src="js/codiqa.ext.js"></script>
|
||||
<script src="js/jquery.js"></script>
|
||||
<script src="js/jquery.mobile.js"></script>
|
||||
|
||||
<script src="js/App.js"></script>
|
||||
<script src="js/TinyTinyRSS.js"></script>
|
||||
|
@ -32,7 +27,7 @@
|
|||
Reload
|
||||
</a>
|
||||
<h3>
|
||||
Feedthemonkey
|
||||
FeedMonkey
|
||||
</h3>
|
||||
<span class="ui-btn-right count" data-theme="a">0 / 0</span>
|
||||
</div>
|
||||
|
|
|
@ -14,7 +14,6 @@ function App() {
|
|||
$("#full").bind("taphold", this.setCurrentUnread.bind(this));
|
||||
|
||||
$(".back").on("vclick", this.setCurrentRead.bind(this));
|
||||
//$(".count").button();
|
||||
|
||||
var _this = this;
|
||||
var aop = function(event, ui) { setTimeout(function() { $("#popup").popup("close") }, 2000) };
|
||||
|
|
127
js/codiqa.ext.js
127
js/codiqa.ext.js
|
@ -1,127 +0,0 @@
|
|||
window.CodiqaControls = {
|
||||
types: {},
|
||||
instances: {},
|
||||
|
||||
define: function(type, control) {
|
||||
control._type = type;
|
||||
this.types[type] = control;
|
||||
},
|
||||
|
||||
register: function(type, id, opts) {
|
||||
var instance = new this.types[type]();
|
||||
instance._type = type;
|
||||
instance._id = id;
|
||||
instance._opts = opts;
|
||||
this.instances[id] = instance;
|
||||
|
||||
if(!this.types[type].prototype._isInited) {
|
||||
this.types[type].prototype.initType();
|
||||
}
|
||||
return instance;
|
||||
},
|
||||
|
||||
init: function() {
|
||||
for(var type in this.types) {
|
||||
this.types[type].prototype.initType();
|
||||
}
|
||||
},
|
||||
|
||||
refresh: function() {
|
||||
for(var x in this.instances) {
|
||||
this.instances[x].refresh && this.instances[x].refresh();
|
||||
}
|
||||
},
|
||||
|
||||
callbackInit: function() {
|
||||
|
||||
},
|
||||
|
||||
getInstances: function(type) {
|
||||
var x, instance, instances = [];
|
||||
for(x in this.instances) {
|
||||
instance = this.instances[x];
|
||||
if(instance._type === type) {
|
||||
instances.push(instance);
|
||||
}
|
||||
}
|
||||
return instances;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
|
||||
CodiqaControls.GoogleMap = function () {};
|
||||
CodiqaControls.GoogleMap.prototype.initType = function() {
|
||||
if( window.CodiqaControls.getInstances('googlemaps').length ) {
|
||||
if(this._isInited) {
|
||||
if(window.google && window.google.maps) {
|
||||
CodiqaControls.GoogleMap.prototype.callbackInit();
|
||||
}
|
||||
} else {
|
||||
var script = document.createElement('script');
|
||||
script.type = "text/javascript";
|
||||
script.src = "https://maps.googleapis.com/maps/api/js?sensor=true&callback=CodiqaControls.types.googlemaps.prototype.callbackInit";
|
||||
document.getElementsByTagName("head")[0].appendChild(script);
|
||||
this._isInited = true;
|
||||
}
|
||||
}
|
||||
};
|
||||
CodiqaControls.GoogleMap.prototype.callbackInit = function() {
|
||||
var x, instances = window.CodiqaControls.getInstances('googlemaps');
|
||||
for(x = 0; x < instances.length; x++) {
|
||||
instances[x]._opts.ready(instances[x]);
|
||||
}
|
||||
};
|
||||
CodiqaControls.GoogleMap.prototype.refresh = function() {
|
||||
if( this.map && this.el && $(this.el).closest('.ui-page-active').length ) {
|
||||
google.maps.event.trigger(this.map, 'resize');
|
||||
this.center && this.map.setCenter(this.center);
|
||||
}
|
||||
};
|
||||
window.CodiqaControls.define('googlemaps', CodiqaControls.GoogleMap);
|
||||
|
||||
|
||||
(function($) {
|
||||
$.widget('mobile.tabbar', $.mobile.navbar, {
|
||||
_create: function() {
|
||||
// Set the theme before we call the prototype, which will
|
||||
// ensure buttonMarkup() correctly grabs the inheritied theme.
|
||||
// We default to the "a" swatch if none is found
|
||||
var theme = this.element.jqmData('theme') || "a";
|
||||
this.element.addClass('ui-footer ui-footer-fixed ui-bar-' + theme);
|
||||
|
||||
// Make sure the page has padding added to it to account for the fixed bar
|
||||
this.element.closest('[data-role="page"]').addClass('ui-page-footer-fixed');
|
||||
|
||||
|
||||
// Call the NavBar _create prototype
|
||||
$.mobile.navbar.prototype._create.call(this);
|
||||
},
|
||||
|
||||
// Set the active URL for the Tab Bar, and highlight that button on the bar
|
||||
setActive: function(url) {
|
||||
// Sometimes the active state isn't properly cleared, so we reset it ourselves
|
||||
this.element.find('a').removeClass('ui-btn-active ui-state-persist');
|
||||
this.element.find('a[href="' + url + '"]').addClass('ui-btn-active ui-state-persist');
|
||||
}
|
||||
});
|
||||
|
||||
$(document).on('pagecreate create', function(e) {
|
||||
return $(e.target).find(":jqmData(role='tabbar')").tabbar();
|
||||
});
|
||||
|
||||
$(document).on('pageshow', ":jqmData(role='page')", function(e) {
|
||||
// Grab the id of the page that's showing, and select it on the Tab Bar on the page
|
||||
var tabBar, id = $(e.target).attr('id');
|
||||
|
||||
tabBar = $.mobile.activePage.find(':jqmData(role="tabbar")');
|
||||
if(tabBar.length) {
|
||||
tabBar.tabbar('setActive', '#' + id);
|
||||
}
|
||||
|
||||
window.CodiqaControls.refresh();
|
||||
});
|
||||
|
||||
window.CodiqaControls.init();
|
||||
|
||||
})(jQuery);
|
5
js/jquery-1.9.1.min.js
vendored
5
js/jquery-1.9.1.min.js
vendored
File diff suppressed because one or more lines are too long
9003
js/jquery.js
vendored
Normal file
9003
js/jquery.js
vendored
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1,6 +1,6 @@
|
|||
/*
|
||||
* jQuery Mobile 1.3.1
|
||||
* Git HEAD hash: 74b4bec049fd93e4fe40205e6157de16eb64eb46 <> Date: Wed Apr 10 2013 21:57:23 UTC
|
||||
/*!
|
||||
* jQuery Mobile 1.3.2
|
||||
* Git HEAD hash: 528cf0e96940644ea644096bfeb913ed920ffaef <> Date: Fri Jul 19 2013 22:17:57 UTC
|
||||
* http://jquerymobile.com
|
||||
*
|
||||
* Copyright 2010, 2013 jQuery Foundation, Inc. and other contributors
|
||||
|
@ -32,7 +32,7 @@
|
|||
$.mobile = $.extend($.mobile, {
|
||||
|
||||
// Version of the jQuery Mobile Framework
|
||||
version: "1.3.1",
|
||||
version: "1.3.2",
|
||||
|
||||
// Namespace used framework-wide for data-attrs. Default is no namespace
|
||||
ns: "",
|
||||
|
@ -4281,7 +4281,7 @@ $.mobile.getMaxScrollForTransition = $.mobile.getMaxScrollForTransition || defau
|
|||
}
|
||||
// Reset base to the default document base.
|
||||
// only reset if we are not prefetching
|
||||
if ( base && typeof options.prefetch === "undefined" ) {
|
||||
if ( base && ( typeof options === "undefined" || typeof options.prefetch === "undefined" ) ) {
|
||||
base.reset();
|
||||
}
|
||||
|
||||
|
@ -4317,7 +4317,7 @@ $.mobile.getMaxScrollForTransition = $.mobile.getMaxScrollForTransition || defau
|
|||
url = fileUrl = path.getFilePath( $( "<div>" + RegExp.$1 + "</div>" ).text() );
|
||||
}
|
||||
//dont update the base tag if we are prefetching
|
||||
if ( base && typeof options.prefetch === "undefined") {
|
||||
if ( base && ( typeof options === "undefined" || typeof options.prefetch === "undefined" )) {
|
||||
base.set( fileUrl );
|
||||
}
|
||||
|
||||
|
@ -5307,6 +5307,10 @@ $.widget( "mobile.dialog", $.mobile.widget, {
|
|||
}
|
||||
},
|
||||
|
||||
_handlePageBeforeHide: function() {
|
||||
this._isCloseable = false;
|
||||
},
|
||||
|
||||
_create: function() {
|
||||
var self = this,
|
||||
$el = this.element,
|
||||
|
@ -5341,7 +5345,8 @@ $.widget( "mobile.dialog", $.mobile.widget, {
|
|||
});
|
||||
|
||||
this._on( $el, {
|
||||
pagebeforeshow: "_handlePageBeforeShow"
|
||||
pagebeforeshow: "_handlePageBeforeShow",
|
||||
pagebeforehide: "_handlePageBeforeHide"
|
||||
});
|
||||
|
||||
$.extend( this, {
|
||||
|
@ -5565,11 +5570,6 @@ $.fn.buttonMarkup = function( options ) {
|
|||
}
|
||||
}
|
||||
|
||||
if ( getAttrFixed( e, nsKey + "rel" ) === "popup" && el.attr( "href" ) ) {
|
||||
e.setAttribute( "aria-haspopup", true );
|
||||
e.setAttribute( "aria-owns", el.attr( "href" ) );
|
||||
}
|
||||
|
||||
// Check if this element is already enhanced
|
||||
buttonElements = $.data( ( ( e.tagName === "INPUT" || e.tagName === "BUTTON" ) ? e.parentNode : e ), "buttonElements" );
|
||||
|
||||
|
@ -7588,7 +7588,7 @@ $.widget( "mobile.slider", $.mobile.widget, $.extend( {
|
|||
_sliderVMouseDown: function( event ) {
|
||||
// NOTE: we don't do this in refresh because we still want to
|
||||
// support programmatic alteration of disabled inputs
|
||||
if ( this.options.disabled || !( event.which === 1 || event.which === 0 ) ) {
|
||||
if ( this.options.disabled || !( event.which === 1 || event.which === 0 || event.which === undefined ) ) {
|
||||
return false;
|
||||
}
|
||||
if ( this._trigger( "beforestart", event ) === false ) {
|
||||
|
@ -8346,7 +8346,7 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
|
||||
(function( $, undefined ) {
|
||||
|
||||
function fitSegmentInsideSegment( winSize, segSize, offset, desired ) {
|
||||
function fitSegmentInsideSegment( winSize, segSize, offset, desired ) {
|
||||
var ret = desired;
|
||||
|
||||
if ( winSize < segSize ) {
|
||||
|
@ -8358,9 +8358,9 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
function windowCoords() {
|
||||
function windowCoords() {
|
||||
var $win = $.mobile.window;
|
||||
|
||||
return {
|
||||
|
@ -8369,9 +8369,9 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
cx: ( window.innerWidth || $win.width() ),
|
||||
cy: ( window.innerHeight || $win.height() )
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
$.widget( "mobile.popup", $.mobile.widget, {
|
||||
$.widget( "mobile.popup", $.mobile.widget, {
|
||||
options: {
|
||||
theme: null,
|
||||
overlayTheme: null,
|
||||
|
@ -8527,12 +8527,13 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
},
|
||||
thisPage = this.element.closest( ".ui-page" ),
|
||||
myId = this.element.attr( "id" ),
|
||||
self = this;
|
||||
o = this.options,
|
||||
key, value;
|
||||
|
||||
// We need to adjust the history option to be false if there's no AJAX nav.
|
||||
// We can't do it in the option declarations because those are run before
|
||||
// it is determined whether there shall be AJAX nav.
|
||||
this.options.history = this.options.history && $.mobile.ajaxEnabled && $.mobile.hashListeningEnabled;
|
||||
o.history = o.history && $.mobile.ajaxEnabled && $.mobile.hashListeningEnabled;
|
||||
|
||||
if ( thisPage.length === 0 ) {
|
||||
thisPage = $( "body" );
|
||||
|
@ -8540,7 +8541,7 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
|
||||
// define the container for navigation event bindings
|
||||
// TODO this would be nice at the the mobile widget level
|
||||
this.options.container = this.options.container || $.mobile.pageContainer;
|
||||
o.container = o.container || $.mobile.pageContainer || thisPage;
|
||||
|
||||
// Apply the proto
|
||||
thisPage.append( ui.screen );
|
||||
|
@ -8573,12 +8574,15 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
_orientationchangeInProgress: false
|
||||
});
|
||||
|
||||
$.each( this.options, function( key, value ) {
|
||||
// Cause initial options to be applied by their handler by temporarily setting the option to undefined
|
||||
// - the handler then sets it to the initial value
|
||||
self.options[ key ] = undefined;
|
||||
self._setOption( key, value, true );
|
||||
});
|
||||
// This duplicates the code from the various option setters below for
|
||||
// better performance. It must be kept in sync with those setters.
|
||||
this._applyTheme( this.element, o.theme, "body" );
|
||||
this._applyTheme( this._ui.screen, o.overlayTheme, "overlay" );
|
||||
this._applyTransition( o.transition );
|
||||
this.element
|
||||
.toggleClass( "ui-overlay-shadow", o.shadow )
|
||||
.toggleClass( "ui-corner-all", o.corners );
|
||||
this._setTolerance( o.tolerance );
|
||||
|
||||
ui.screen.bind( "vclick", $.proxy( this, "_eatEventAndClose" ) );
|
||||
|
||||
|
@ -8706,28 +8710,13 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
},
|
||||
|
||||
_setOption: function( key, value ) {
|
||||
var exclusions, setter = "_set" + key.charAt( 0 ).toUpperCase() + key.slice( 1 );
|
||||
var setter = "_set" + key.charAt( 0 ).toUpperCase() + key.slice( 1 );
|
||||
|
||||
if ( this[ setter ] !== undefined ) {
|
||||
this[ setter ]( value );
|
||||
}
|
||||
|
||||
// TODO REMOVE FOR 1.2.1 by moving them out to a default options object
|
||||
exclusions = [
|
||||
"initSelector",
|
||||
"closeLinkSelector",
|
||||
"closeLinkEvents",
|
||||
"navigateEvents",
|
||||
"closeEvents",
|
||||
"history",
|
||||
"container"
|
||||
];
|
||||
|
||||
$.mobile.widget.prototype._setOption.apply( this, arguments );
|
||||
if ( $.inArray( key, exclusions ) === -1 ) {
|
||||
// Record the option change in the options and in the DOM data-* attributes
|
||||
this.element.attr( "data-" + ( $.mobile.ns || "" ) + ( key.replace( /([A-Z])/, "-$1" ).toLowerCase() ), value );
|
||||
}
|
||||
this._super( key, value );
|
||||
},
|
||||
|
||||
// Try and center the overlay over the given coordinates
|
||||
|
@ -8886,7 +8875,7 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
_reposition: function( o ) {
|
||||
// We only care about position-related parameters for repositioning
|
||||
o = { x: o.x, y: o.y, positionTo: o.positionTo };
|
||||
this._trigger( "beforeposition", o );
|
||||
this._trigger( "beforeposition", undefined, o );
|
||||
this._ui.container.offset( this._placementCoords( this._desiredCoords( o ) ) );
|
||||
},
|
||||
|
||||
|
@ -8988,13 +8977,16 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
},
|
||||
|
||||
_closePrereqsDone: function() {
|
||||
var opts = this.options;
|
||||
var container = this._ui.container;
|
||||
|
||||
this._ui.container.removeAttr( "tabindex" );
|
||||
container.removeAttr( "tabindex" );
|
||||
|
||||
// remove the global mutex for popups
|
||||
$.mobile.popup.active = undefined;
|
||||
|
||||
// Blur elements inside the container, including the container
|
||||
$( ":focus", container[ 0 ] ).add( container[ 0 ] ).blur();
|
||||
|
||||
// alert users that the popup is closed
|
||||
this._trigger( "afterclose" );
|
||||
},
|
||||
|
@ -9178,11 +9170,11 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
this._closePopup();
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
// TODO this can be moved inside the widget
|
||||
$.mobile.popup.handleLink = function( $link ) {
|
||||
// TODO this can be moved inside the widget
|
||||
$.mobile.popup.handleLink = function( $link ) {
|
||||
var closestPage = $link.closest( ":jqmData(role='page')" ),
|
||||
scope = ( ( closestPage.length === 0 ) ? $( "body" ) : closestPage ),
|
||||
// NOTE make sure to get only the hash, ie7 (wp7) return the absolute href
|
||||
|
@ -9209,19 +9201,19 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
}
|
||||
$link.removeClass( $.mobile.activeBtnClass );
|
||||
}, 300 );
|
||||
};
|
||||
};
|
||||
|
||||
// TODO move inside _create
|
||||
$.mobile.document.bind( "pagebeforechange", function( e, data ) {
|
||||
// TODO move inside _create
|
||||
$.mobile.document.bind( "pagebeforechange", function( e, data ) {
|
||||
if ( data.options.role === "popup" ) {
|
||||
$.mobile.popup.handleLink( data.options.link );
|
||||
e.preventDefault();
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$.mobile.document.bind( "pagecreate create", function( e ) {
|
||||
$.mobile.document.bind( "pagecreate create", function( e ) {
|
||||
$.mobile.popup.prototype.enhanceWithin( e.target, true );
|
||||
});
|
||||
});
|
||||
|
||||
})( jQuery );
|
||||
|
||||
|
@ -9306,7 +9298,10 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
placeholder: "",
|
||||
|
||||
build: function() {
|
||||
var self = this;
|
||||
var self = this,
|
||||
escapeId = function( id ) {
|
||||
return id.replace( /([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g, "\\$1" );
|
||||
};
|
||||
|
||||
// Create list from select, update state
|
||||
self.refresh();
|
||||
|
@ -9336,9 +9331,9 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
|
||||
self._decideFormat();
|
||||
if ( self.menuType === "overlay" ) {
|
||||
self.button.attr( "href", "#" + self.popupID ).attr( "data-" + ( $.mobile.ns || "" ) + "rel", "popup" );
|
||||
self.button.attr( "href", "#" + escapeId( self.popupID ) ).attr( "data-" + ( $.mobile.ns || "" ) + "rel", "popup" );
|
||||
} else {
|
||||
self.button.attr( "href", "#" + self.dialogID ).attr( "data-" + ( $.mobile.ns || "" ) + "rel", "dialog" );
|
||||
self.button.attr( "href", "#" + escapeId( self.dialogID ) ).attr( "data-" + ( $.mobile.ns || "" ) + "rel", "dialog" );
|
||||
}
|
||||
self.isOpen = true;
|
||||
// Do not prevent default, so the navigation may have a chance to actually open the chosen format
|
||||
|
@ -9745,6 +9740,9 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
|
|||
// Remove the popup
|
||||
this.listbox.remove();
|
||||
|
||||
// Remove the dialog
|
||||
this.menuPage.remove();
|
||||
|
||||
// Chain up
|
||||
origDestroy.apply( this, arguments );
|
||||
}
|
||||
|
@ -9874,6 +9872,25 @@ $( document ).bind( "pagecreate create", function( e ) {
|
|||
$( e.target )
|
||||
.find( "a" )
|
||||
.jqmEnhanceable()
|
||||
.filter( ":jqmData(rel='popup')[href][href!='']" )
|
||||
.each( function() {
|
||||
// Accessibility info for popups
|
||||
var e = this,
|
||||
href = $( this ).attr( "href" ),
|
||||
idref = href.substring( 1 );
|
||||
|
||||
e.setAttribute( "aria-haspopup", true );
|
||||
e.setAttribute( "aria-owns", idref );
|
||||
e.setAttribute( "aria-expanded", false );
|
||||
$( document )
|
||||
.on( "popupafteropen", href, function() {
|
||||
e.setAttribute( "aria-expanded", true );
|
||||
})
|
||||
.on( "popupafterclose", href, function() {
|
||||
e.setAttribute( "aria-expanded", false );
|
||||
});
|
||||
})
|
||||
.end()
|
||||
.not( ".ui-btn, .ui-link-inherit, :jqmData(role='none'), :jqmData(role='nojs')" )
|
||||
.addClass( "ui-link" );
|
||||
|
||||
|
@ -10479,8 +10496,14 @@ $.widget( "mobile.panel", $.mobile.widget, {
|
|||
self._page.on( "click.panel" , "a", function( e ) {
|
||||
if ( this.href.split( "#" )[ 1 ] === self._panelID && self._panelID !== undefined ) {
|
||||
e.preventDefault();
|
||||
var $link = $( this );
|
||||
var $link = $( this ),
|
||||
$parent;
|
||||
if ( ! $link.hasClass( "ui-link" ) ) {
|
||||
// Check if we are in a listview
|
||||
$parent = $link.parent().parent();
|
||||
if ( $parent.hasClass( "ui-li" ) ) {
|
||||
$link = $parent.parent();
|
||||
}
|
||||
$link.addClass( $.mobile.activeBtnClass );
|
||||
self.element.one( "panelopen panelclose", function() {
|
||||
$link.removeClass( $.mobile.activeBtnClass );
|
||||
|
@ -11097,6 +11120,10 @@ $.mobile.document.delegate( ":jqmData(role='table')", "tablecreate refresh", fun
|
|||
// define page container
|
||||
$.mobile.pageContainer = $.mobile.firstPage.parent().addClass( "ui-mobile-viewport" );
|
||||
|
||||
// initialize navigation events now, after mobileinit has occurred and the page container
|
||||
// has been created but before the rest of the library is alerted to that fact
|
||||
$.mobile.navreadyDeferred.resolve();
|
||||
|
||||
// alert listeners that the pagecontainer has been determined for binding
|
||||
// to events triggered on it
|
||||
$window.trigger( "pagecontainercreate" );
|
||||
|
@ -11149,9 +11176,6 @@ $.mobile.document.delegate( ":jqmData(role='table')", "tablecreate refresh", fun
|
|||
}
|
||||
});
|
||||
|
||||
// initialize events now, after mobileinit has occurred
|
||||
$.mobile.navreadyDeferred.resolve();
|
||||
|
||||
// check which scrollTop value should be used by scrolling to 1 immediately at domready
|
||||
// then check what the scroll top is. Android will report 0... others 1
|
||||
// note that this initial scroll won't hide the address bar. It's just for the check.
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "Feedthemonkey",
|
||||
"description": "A TinyTinyRSS mobile client.",
|
||||
"launch_path": "index.html",
|
||||
"name": "FeedMonkey",
|
||||
"description": "A TinyTinyRSS mobile client with which you can read your RSS feeds and mark them as read on your server. Works also offline.",
|
||||
"launch_path": "/index.html",
|
||||
"icons": {
|
||||
"58": "/img/icon-58.png",
|
||||
"60": "/img/icon-60.png",
|
||||
|
@ -14,7 +14,9 @@
|
|||
"default_locale": "en",
|
||||
"type": "privileged",
|
||||
"permissions": {
|
||||
"systemXHR": {}
|
||||
"systemXHR": {
|
||||
"description": "Connection with your own TinyTinyRSS server."
|
||||
}
|
||||
},
|
||||
"installs_allowed_from": ["*"],
|
||||
"version": "0.1"
|
||||
|
|
Reference in a new issue