K-Meleon
KMeleonWiki > Resources > MacroLibrary > MacroLibrary2 > Page Speed
Submitted by: Johnny Sim-Bravenboer
Notes:
Going through the K-Meleon website, looking for ways to get even more out of the incredibly fast K-Meleon browser, I stumbled on the PageSpeed Tips & Tricks page.
For my own convenience I used this tweak and turned it into a macro, allowing me to en- or disable the PageSpeed tweak from the menu with one single click.
Regards and thanks for the tweak,
John... ;-)
To have the option properly checked on startup, add to the following macro:
Sync{
&EngineSync;
setcheck("macros(SN0)",getpref(INT,$so)==0? true:false);
setcheck("macros(SN1)",getpref(INT,$so)==1? true:false);
setcheck("macros(SN2)",getpref(INT,$so)==2? true:false);
setcheck("macros(SearchLock)",getpref(BOOL,$sl));
...
setcheck("macros(ToggleSpeed)", getpref(BOOL, "network.http.pipelining") == true ? true:false);
}
Add the following macros as a whole:
# PAGESPEED MACRO
# TOGGLE PAGESPEED
ToggleSpeed{
menu = "Enable Page Load Speed-Up"
getpref(BOOL, "network.http.pipelining") == true ? &DisableSpeed:&EnableSpeed;
&Sync;
getpref(BOOL, "network.http.pipelining") == true ? $warn = "enabled":$warn = "disabled";
Alert("Page Load Speed-Up has been ".$warn."!");
}
# ENABLE PAGESPEED
EnableSpeed{
# TURN ON TIMER BASED REFLOW MANAGEMENT
setpref(BOOL, "content.notify.ontimer", true);
# SETS THE ALLOWED TIME BETWEEN REFLOWS IN MICROSECONDS
setpref(INT, "content.notify.interval", 100);
# SET THE NUMBER OF REFLOWS TO DO BEFORE WAITING FOR THE REST OF THE PAGE TO ARRIVE
setpref(INT, "content.notify.backoffcount", 200);
# ENABLE IMPROVED PIPELINING
setpref(BOOL, "network.http.pipelining", true);
setpref(BOOL, "network.http.pipelining.firstrequest", true);
setpref(INT, "network.http.pipelining.maxrequests", 100);
setpref(BOOL, "network.http.proxy.pipelining", true);
# INCREASE MULTI-THREADED DOWNLOAD PERFORMANCE
setpref(INT, "network.http.max-connections", 60);
setpref(INT, "network.http.max-connections-per-server", 32);
setpref(INT, "network.http.max-persistent-connections-per-proxy", 16);
setpref(INT, "network.http.max-persistent-connections-per-server", 8);
# REMOVE PAINT DELAY WHEN LOADING
setpref(INT, "nglayout.initialpaint.delay", 0);
# DISBALE KEEP-ALIVE
setpref(BOOL, "network.http.keep-alive", false);
setpref(BOOL, "network.http.proxy.keep-alive", false);
}
# DISABLE PAGESPEED
DisableSpeed{
setpref(BOOL, "content.notify.ontimer", false);
setpref(INT, "content.notify.interval", 1000000);
setpref(INT, "content.notify.backoffcount", 5);
setpref(BOOL,"network.http.pipelining", false);
setpref(BOOL,"network.http.pipelining.firstrequest", false);
setpref(INT, "network.http.pipelining.maxrequests", 4);
setpref(BOOL, "network.http.proxy.pipelining", false);
setpref(INT, "network.http.max-connections", 24);
setpref(INT, "network.http.max-connections-per-server", 8);
setpref(INT, "network.http.max-persistent-connections-per-proxy", 4);
setpref(INT, "network.http.max-persistent-connections-per-server", 2);
setpref(INT, "nglayout.initialpaint.delay", 250);
setpref(BOOL, "network.http.keep-alive", true);
setpref(BOOL, "network.http.proxy.keep-alive", true);
}
Add to the existing function:
Browsing Options{
macros(LayersOnly, Layers Only)
macros(WindowsOnly, Windows Only)
macros(LayersWindows, Layers and Windows)
-
macros(ToggleSpeed)
-
macros(Default, Set As Default Browser...)
}