mirror of
https://github.com/samuelclay/NewsBlur.git
synced 2025-08-05 16:58:59 +00:00
Laying out web now only refreshes right side when changing views. Faster and smoother.
This commit is contained in:
parent
bed0f9d0e8
commit
a3323de772
2 changed files with 71 additions and 69 deletions
|
@ -256,15 +256,16 @@
|
||||||
this.apply_tipsy_titles();
|
this.apply_tipsy_titles();
|
||||||
},
|
},
|
||||||
|
|
||||||
apply_resizable_layout: function(refresh) {
|
apply_resizable_layout: function(options) {
|
||||||
|
options = options || {};
|
||||||
var story_anchor = this.model.preference('story_pane_anchor');
|
var story_anchor = this.model.preference('story_pane_anchor');
|
||||||
|
|
||||||
if (refresh) {
|
if (options.right_side) {
|
||||||
this.layout.contentLayout && this.layout.contentLayout.destroy();
|
this.layout.contentLayout && this.layout.contentLayout.destroy();
|
||||||
this.layout.rightLayout && this.layout.rightLayout.destroy();
|
this.layout.rightLayout && this.layout.rightLayout.destroy();
|
||||||
this.layout.leftCenterLayout && this.layout.leftCenterLayout.destroy();
|
// this.layout.leftCenterLayout && this.layout.leftCenterLayout.destroy();
|
||||||
this.layout.leftLayout && this.layout.leftLayout.destroy();
|
// this.layout.leftLayout && this.layout.leftLayout.destroy();
|
||||||
this.layout.outerLayout && this.layout.outerLayout.destroy();
|
// this.layout.outerLayout && this.layout.outerLayout.destroy();
|
||||||
|
|
||||||
var feed_stories_bin = $.make('div').append(this.$s.$feed_stories.children());
|
var feed_stories_bin = $.make('div').append(this.$s.$feed_stories.children());
|
||||||
var story_titles_bin = $.make('div').append(this.$s.$story_titles.children());
|
var story_titles_bin = $.make('div').append(this.$s.$story_titles.children());
|
||||||
|
@ -276,69 +277,70 @@
|
||||||
.removeClass('NB-story-pane-hidden')
|
.removeClass('NB-story-pane-hidden')
|
||||||
.toggleClass('NB-story-pane-'+story_anchor,
|
.toggleClass('NB-story-pane-'+story_anchor,
|
||||||
NEWSBLUR.assets.view_setting(NEWSBLUR.reader.active_feed, 'layout') == 'split');
|
NEWSBLUR.assets.view_setting(NEWSBLUR.reader.active_feed, 'layout') == 'split');
|
||||||
|
if (!options.right_side) {
|
||||||
this.layout.outerLayout = this.$s.$layout.layout({
|
this.layout.outerLayout = this.$s.$layout.layout({
|
||||||
zIndex: 2,
|
zIndex: 2,
|
||||||
fxName: "slideOffscreen",
|
fxName: "slideOffscreen",
|
||||||
fxSettings: { duration: 560, easing: "easeInOutQuint" },
|
fxSettings: { duration: 560, easing: "easeInOutQuint" },
|
||||||
center__paneSelector: ".right-pane",
|
center__paneSelector: ".right-pane",
|
||||||
west__paneSelector: ".left-pane",
|
west__paneSelector: ".left-pane",
|
||||||
west__size: this.model.preference('feed_pane_size'),
|
west__size: this.model.preference('feed_pane_size'),
|
||||||
west__minSize: this.constants.MIN_FEED_LIST_SIZE,
|
west__minSize: this.constants.MIN_FEED_LIST_SIZE,
|
||||||
west__onresize_end: $.rescope(this.save_feed_pane_size, this),
|
west__onresize_end: $.rescope(this.save_feed_pane_size, this),
|
||||||
// west__initHidden: this.options.hide_sidebar,
|
// west__initHidden: this.options.hide_sidebar,
|
||||||
west__spacing_open: this.options.hide_sidebar ? 1 : 1,
|
west__spacing_open: this.options.hide_sidebar ? 1 : 1,
|
||||||
resizerDragOpacity: 0.6,
|
resizerDragOpacity: 0.6,
|
||||||
resizeWhileDragging: true,
|
resizeWhileDragging: true,
|
||||||
enableCursorHotkey: false,
|
enableCursorHotkey: false,
|
||||||
togglerLength_open: 0
|
togglerLength_open: 0
|
||||||
});
|
});
|
||||||
|
|
||||||
if (this.model.preference('feed_pane_size') < 242) {
|
if (this.model.preference('feed_pane_size') < 242) {
|
||||||
this.layout.outerLayout.resizeAll();
|
this.layout.outerLayout.resizeAll();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.layout.leftLayout = $('.left-pane').layout({
|
||||||
|
closable: false,
|
||||||
|
resizeWhileDragging: true,
|
||||||
|
fxName: "slideOffscreen",
|
||||||
|
fxSettings: { duration: 560, easing: "easeInOutQuint" },
|
||||||
|
animatePaneSizing: true,
|
||||||
|
north__paneSelector: ".left-north",
|
||||||
|
north__size: 37,
|
||||||
|
north__resizeable: false,
|
||||||
|
north__spacing_open: 0,
|
||||||
|
center__paneSelector: ".left-center",
|
||||||
|
center__resizable: false,
|
||||||
|
south__paneSelector: ".left-south",
|
||||||
|
south__size: 31,
|
||||||
|
south__resizable: false,
|
||||||
|
enableCursorHotkey: false,
|
||||||
|
togglerLength_open: 0,
|
||||||
|
south__spacing_open: 0
|
||||||
|
});
|
||||||
|
|
||||||
|
this.layout.leftCenterLayout = $('.left-center').layout({
|
||||||
|
closable: false,
|
||||||
|
slidable: false,
|
||||||
|
resizeWhileDragging: true,
|
||||||
|
center__paneSelector: ".left-center-content",
|
||||||
|
center__resizable: false,
|
||||||
|
south__paneSelector: ".left-center-footer",
|
||||||
|
south__size: 'auto',
|
||||||
|
south__resizable: false,
|
||||||
|
south__slidable: true,
|
||||||
|
south__spacing_open: 0,
|
||||||
|
south__spacing_closed: 0,
|
||||||
|
south__closable: true,
|
||||||
|
south__initClosed: true,
|
||||||
|
fxName: "slideOffscreen",
|
||||||
|
fxSettings_close: { duration: 560, easing: "easeInOutQuint" },
|
||||||
|
fxSettings_open: { duration: 0 },
|
||||||
|
enableCursorHotkey: false,
|
||||||
|
togglerLength_open: 0
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
this.layout.leftLayout = $('.left-pane').layout({
|
|
||||||
closable: false,
|
|
||||||
resizeWhileDragging: true,
|
|
||||||
fxName: "slideOffscreen",
|
|
||||||
fxSettings: { duration: 560, easing: "easeInOutQuint" },
|
|
||||||
animatePaneSizing: true,
|
|
||||||
north__paneSelector: ".left-north",
|
|
||||||
north__size: 37,
|
|
||||||
north__resizeable: false,
|
|
||||||
north__spacing_open: 0,
|
|
||||||
center__paneSelector: ".left-center",
|
|
||||||
center__resizable: false,
|
|
||||||
south__paneSelector: ".left-south",
|
|
||||||
south__size: 31,
|
|
||||||
south__resizable: false,
|
|
||||||
enableCursorHotkey: false,
|
|
||||||
togglerLength_open: 0,
|
|
||||||
south__spacing_open: 0
|
|
||||||
});
|
|
||||||
|
|
||||||
this.layout.leftCenterLayout = $('.left-center').layout({
|
|
||||||
closable: false,
|
|
||||||
slidable: false,
|
|
||||||
resizeWhileDragging: true,
|
|
||||||
center__paneSelector: ".left-center-content",
|
|
||||||
center__resizable: false,
|
|
||||||
south__paneSelector: ".left-center-footer",
|
|
||||||
south__size: 'auto',
|
|
||||||
south__resizable: false,
|
|
||||||
south__slidable: true,
|
|
||||||
south__spacing_open: 0,
|
|
||||||
south__spacing_closed: 0,
|
|
||||||
south__closable: true,
|
|
||||||
south__initClosed: true,
|
|
||||||
fxName: "slideOffscreen",
|
|
||||||
fxSettings_close: { duration: 560, easing: "easeInOutQuint" },
|
|
||||||
fxSettings_open: { duration: 0 },
|
|
||||||
enableCursorHotkey: false,
|
|
||||||
togglerLength_open: 0
|
|
||||||
});
|
|
||||||
|
|
||||||
if (_.contains(['split', 'full'],
|
if (_.contains(['split', 'full'],
|
||||||
NEWSBLUR.assets.view_setting(NEWSBLUR.reader.active_feed, 'layout'))) {
|
NEWSBLUR.assets.view_setting(NEWSBLUR.reader.active_feed, 'layout'))) {
|
||||||
var rightLayoutOptions = {
|
var rightLayoutOptions = {
|
||||||
|
@ -414,7 +416,7 @@
|
||||||
this.flags['story_titles_closed'] = false;
|
this.flags['story_titles_closed'] = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (refresh) {
|
if (options.right_side) {
|
||||||
this.$s.$feed_stories.append(feed_stories_bin.children());
|
this.$s.$feed_stories.append(feed_stories_bin.children());
|
||||||
this.$s.$story_titles.append(story_titles_bin.children());
|
this.$s.$story_titles.append(story_titles_bin.children());
|
||||||
this.resize_window();
|
this.resize_window();
|
||||||
|
@ -1550,7 +1552,7 @@
|
||||||
NEWSBLUR.assets.view_setting(NEWSBLUR.reader.active_feed, {'layout': story_layout});
|
NEWSBLUR.assets.view_setting(NEWSBLUR.reader.active_feed, {'layout': story_layout});
|
||||||
|
|
||||||
this.set_correct_story_view_for_feed();
|
this.set_correct_story_view_for_feed();
|
||||||
this.apply_resizable_layout(true);
|
this.apply_resizable_layout({right_side: true});
|
||||||
|
|
||||||
if (story_layout == 'list') {
|
if (story_layout == 'list') {
|
||||||
if (this.active_story) {
|
if (this.active_story) {
|
||||||
|
|
|
@ -313,7 +313,7 @@ NEWSBLUR.StoryOptionsPopover = NEWSBLUR.ReaderPopover.extend({
|
||||||
}
|
}
|
||||||
NEWSBLUR.assets.preference('story_pane_anchor', setting);
|
NEWSBLUR.assets.preference('story_pane_anchor', setting);
|
||||||
NEWSBLUR.assets.preference('story_titles_pane_size', pane_size);
|
NEWSBLUR.assets.preference('story_titles_pane_size', pane_size);
|
||||||
NEWSBLUR.reader.apply_resizable_layout(true);
|
NEWSBLUR.reader.apply_resizable_layout({right_side: true});
|
||||||
},
|
},
|
||||||
|
|
||||||
change_single_story: function(e) {
|
change_single_story: function(e) {
|
||||||
|
|
Loading…
Add table
Reference in a new issue