surf

surf
git clone git@git.zachrice.app:repos/surf.git
Log | Files | Refs | README | LICENSE

surf-hardwareaccel.patch (2413B)


      1 diff --git a/config.def.h b/config.def.h
      2 index ea29f8c..545351a 100644
      3 --- a/config.def.h
      4 +++ b/config.def.h
      5 @@ -30,6 +30,7 @@ static Parameter defconfig[ParameterLast] = {
      6  	[FileURLsCrossAccess] =       { { .i = 0 },     },
      7  	[FontSize]            =       { { .i = 12 },    },
      8  	[Geolocation]         =       { { .i = 0 },     },
      9 +	[HardwareAcceleration] =      { { .i = 1 },     },
     10  	[HideBackground]      =       { { .i = 0 },     },
     11  	[Inspector]           =       { { .i = 1 },     },
     12  	[JavaScript]          =       { { .i = 1 },     },
     13 diff --git a/surf.c b/surf.c
     14 index 39ed548..11af08d 100644
     15 --- a/surf.c
     16 +++ b/surf.c
     17 @@ -65,6 +65,7 @@ typedef enum {
     18  	FileURLsCrossAccess,
     19  	FontSize,
     20  	Geolocation,
     21 +	HardwareAcceleration,
     22  	HideBackground,
     23  	Inspector,
     24  	JavaScript,
     25 @@ -288,6 +289,7 @@ static ParamName loadcommitted[] = {
     26  	DefaultCharset,
     27  	FontSize,
     28  	Geolocation,
     29 +	HardwareAcceleration,
     30  	HideBackground,
     31  	Inspector,
     32  //	KioskMode,
     33 @@ -685,6 +687,7 @@ gettogglestats(Client *c)
     34  	togglestats[4] = curconfig[LoadImages].val.i ?      'I' : 'i';
     35  	togglestats[5] = curconfig[JavaScript].val.i ?      'S' : 's';
     36  	togglestats[6] = curconfig[Style].val.i ?           'M' : 'm';
     37 +	togglestats[7] = curconfig[HardwareAcceleration].val.i ? 'A' : 'a';
     38  	togglestats[8] = curconfig[Certificate].val.i ?     'X' : 'x';
     39  	togglestats[9] = curconfig[StrictTLS].val.i ?       'T' : 't';
     40  }
     41 @@ -810,6 +813,11 @@ setparameter(Client *c, int refresh, ParamName p, const Arg *a)
     42  	case Geolocation:
     43  		refresh = 0;
     44  		break;
     45 +	case HardwareAcceleration:
     46 +		webkit_settings_set_hardware_acceleration_policy(c->settings, a->i ?
     47 +		    WEBKIT_HARDWARE_ACCELERATION_POLICY_ON_DEMAND :
     48 +		    WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER);
     49 +		break;
     50  	case HideBackground:
     51  		if (a->i)
     52  			webkit_web_view_set_background_color(c->view, &bgcolor);
     53 @@ -1177,6 +1185,9 @@ newview(Client *c, WebKitWebView *rv)
     54  		   "enable-site-specific-quirks", curconfig[SiteQuirks].val.i,
     55  		   "enable-smooth-scrolling", curconfig[SmoothScrolling].val.i,
     56  		   "enable-webgl", curconfig[WebGL].val.i,
     57 +		   "hardware-acceleration-policy", curconfig[HardwareAcceleration].val.i ?
     58 +		       WEBKIT_HARDWARE_ACCELERATION_POLICY_ON_DEMAND :
     59 +		       WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER,
     60  		   "media-playback-requires-user-gesture", curconfig[MediaManualPlay].val.i,
     61  		   NULL);
     62  /* For more interesting settings, have a look at