Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 360674

Summary: [History] prevent unnecessary timer calls on client
Product: [RT] RAP Reporter: Tim Buschtoens <tbuschto>
Component: RWTAssignee: Project Inbox <rap-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: enhancement    
Priority: P3 CC: ivan, tbuschto
Version: 1.5   
Target Milestone: 1.5 M5   
Hardware: All   
OS: All   
Whiteboard:

Description Tim Buschtoens CLA 2011-10-12 10:58:59 EDT
As soon History.js is initialized, a timer checks the browser location every 100ms. The implentation should be updated to only enable these check if there is an actual BrowserHistoryListener registred on the server.
Comment 1 Tim Buschtoens CLA 2012-01-23 09:48:41 EST
This would require BrowserHistory.java to write a protocol message to listen to history events (on display?). Since it has no LCA, i'm not sure what would be the best way to implement and test this. Ideas?
Comment 2 Ivan Furnadjiev CLA 2012-01-23 17:04:15 EST
History.js is a singleton. We could deal with it like with other singletons (UICallBack for example). Register History.js as a predefined object on the client, create an adapter and add a "navigation" listener to it. More over, server-side BrowserHistory class still renders javascript (qx.client.History.getInstance().addToHistory). We have to change it with a protocol message too.
Comment 3 Ivan Furnadjiev CLA 2012-01-24 11:52:39 EST
Switched BrowserHistory to the protocol and start the timer only when there is a listener attached. Changes are in CVS HEAD.