You should just not call the releaseKey function, until the button is released.
int oldVal1 = 0;
int oldVal2 = 0;
void loop()
{
val1 = digitalRead(inpin1);
if( val1!=oldVal1 )
{
oldVal1 = val1;
if(val1 != HIGH)
{
buf[2] = 80; // Left Arrow
Serial.write(buf, 8);
}
else
{
releaseKey();
}
}
val2 = digitalRead(inpin2);
if( val2!=oldVal2 )
{
oldVal2 = val2;
if(val2 != HIGH)
{
buf[2] = 79; // Right Arrow
Serial.write(buf, 8);
}
else
{
releaseKey();
}
}
}