mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-11-22 16:03:47 +01:00
When an infolog changes, only refresh calendar when it's the active app, otherwise wait until it is activated. Fixes event positioning problems caused by refreshing while hidden without needing to recalculate everything while hidden.
This commit is contained in:
parent
75fa12b1d3
commit
bfb599666e
@ -304,9 +304,24 @@ app.classes.calendar = (function(){ "use strict"; return AppJS.extend(
|
|||||||
}
|
}
|
||||||
if (do_refresh)
|
if (do_refresh)
|
||||||
{
|
{
|
||||||
// Discard cache, reload
|
// Discard cache
|
||||||
this._clear_cache();
|
this._clear_cache();
|
||||||
this.setState({state: this.state});
|
|
||||||
|
// Calendar is the current application, refresh now
|
||||||
|
if(framework.activeApp.appName == this.appName)
|
||||||
|
{
|
||||||
|
this.setState({state: this.state});
|
||||||
|
}
|
||||||
|
// Bind once to trigger a refresh when tab is activated again
|
||||||
|
else if(framework.applications.calendar && framework.applications.calendar.tab &&
|
||||||
|
framework.applications.calendar.tab.contentDiv)
|
||||||
|
{
|
||||||
|
jQuery(framework.applications.calendar.tab.contentDiv)
|
||||||
|
.off('show.calendar')
|
||||||
|
.one('show.calendar',
|
||||||
|
jQuery.proxy(function() {this.setState({state: this.state});},this)
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'calendar':
|
case 'calendar':
|
||||||
|
Loading…
Reference in New Issue
Block a user