[arachne] Re: Maximal width of virtual screens
- From: "Glenn McCorkle" <glennmcc@xxxxxxxxxxxx>
- To: arachne@xxxxxxxxxxxxx
- Date: Sat, 21 Feb 2009 16:27:46 -0500
Arachne at FreeLists---The Arachne Fan Club!
On Sat, 21 Feb 2009 14:43:06 +0000, Udo Kuhnt wrote:
> Hi all,
> where is the maximal width of a virtual screen in Arachne defined, and
> how can I change this value? The reason for this is that scrolling
> becomes very slow when the page is wider than the maximum, and most
> web pages that I encountered recently seem to suffer from this problem.
Hi Udo,
The wiodth of the virtual screen is tied to the
arachne.cfg setting of 'BMPwidth'
Soooo.... increase that setting via the 'Options - Local settings'
setup page to its max value of 2048
(which is double the width of our max screen res of 1024x768)
BMP width in pixels for bitmap export (Cntrl+P)
_2048_ (width of exported image - any integer between 640 and 2048, typically
800)
___________________________________________________________________________________
If you would like to experiment with making it even bigger ....
Here's the code for it.....
--- in htmldraw.c ---
if(
#ifndef POSIX
arachne.xSwap==0 && !DisableXMS && //0...XMS, 2...disk
#endif
virt==REDRAW_CREATE_VIRTUAL && //Smart - smaller virtual screen
(user_interface.screenmode || //Auto(default) - only if it fits
frame->scroll.total_y<=user_interface.virtualysize) ||
virt && user_interface.screenmode=='N')//Nice(slow)- create screen always
{
char *fname="$0.obr";
int TypVirt = 0; //HARO
//reset virtual screen to zero
virtualxstart[htmldata->whichvirtual]=0;
virtualystart[htmldata->whichvirtual]=0;
virtualxend[htmldata->whichvirtual]=0l;
virtualyend[htmldata->whichvirtual]=0l;
if(virt && (x_getmaxcol()==255||x_getmaxcol()==0) && //HARO
user_interface.virtualysize && !arachne.xSwap) //xSwap==0 ... XMS
{
if(frame->scroll.total_x>frame->scroll.xsize)
{
//!!Ray: July 07, 2007 -- increase from 1600 to 2048
//!!glennmcc: July 08, 2007 -- '<=' instead of simply '<'
//!!glennmcc: July 09, 2007 -- use BMPwidth CFG variable.
//defaults to min of 640 and max of 2048
int value=atoi(configvariable(&ARACHNEcfg,"BMPwidth",NULL));
if(!value || value<640) value=640;
if(value>2048) value=2048;
//!!glennmcc: July 13, 2008 -- prevent 'split screen'
// when BMPwidth is less than screen width
if(value<x_maxx()) value=x_maxx();
//!!glennmcc: end
if(frame->scroll.total_x<=value)
// if(frame->scroll.total_x<=2048)
// if(frame->scroll.total_x<2048)
frame->scroll.xsize=frame->scroll.total_x+FUZZYPIX;
else
frame->scroll.xsize=value;//_NOW_ it _is_ definable in ARACHNE.CFG ;-)
// frame->scroll.xsize=2048; // !!! will be definable in ARACHNE.CFG !!!
//!!Ray: end
}
else
frame->scroll.xsize+=FUZZYPIX;
_______________________________________________________________________________________
--
Glenn
http://www.delorie.com/listserv/mime/
http://www.delorie.com/djgpp/doc/msdog.html
http://www.glennmcc.org/
http://www.law.cornell.edu/constitution/constitution.table.html
Arachne at FreeLists
-- Arachne, The Premier GPL Web Browser/Suite for DOS --
Other related posts: