Scale vertical/horizontal scrolling by the contents of the numeric buffer.

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
This commit is contained in:
Marwan Tanager 2013-03-03 03:11:48 +02:00 committed by Sebastian Ramacher
parent 438c9cdc9f
commit 7841eea2eb

View File

@ -551,7 +551,7 @@ sc_rotate(girara_session_t* session, girara_argument_t* argument,
bool bool
sc_scroll(girara_session_t* session, girara_argument_t* argument, sc_scroll(girara_session_t* session, girara_argument_t* argument,
girara_event_t* UNUSED(event), unsigned int UNUSED(t)) girara_event_t* UNUSED(event), unsigned int t)
{ {
g_return_val_if_fail(session != NULL, false); g_return_val_if_fail(session != NULL, false);
g_return_val_if_fail(session->global.data != NULL, false); g_return_val_if_fail(session->global.data != NULL, false);
@ -561,6 +561,10 @@ sc_scroll(girara_session_t* session, girara_argument_t* argument,
return false; return false;
} }
if (!t){
t = 1;
}
GtkAdjustment* adjustment = NULL; GtkAdjustment* adjustment = NULL;
if ( (argument->n == LEFT) || (argument->n == FULL_LEFT) || (argument->n == HALF_LEFT) || if ( (argument->n == LEFT) || (argument->n == FULL_LEFT) || (argument->n == HALF_LEFT) ||
(argument->n == RIGHT) || (argument->n == FULL_RIGHT) || (argument->n == HALF_RIGHT)) { (argument->n == RIGHT) || (argument->n == FULL_RIGHT) || (argument->n == HALF_RIGHT)) {
@ -612,16 +616,16 @@ sc_scroll(girara_session_t* session, girara_argument_t* argument,
new_value = value + ((view_size + padding) / 2); new_value = value + ((view_size + padding) / 2);
break; break;
case LEFT: case LEFT:
new_value = value - scroll_hstep; new_value = value - scroll_hstep * t;
break; break;
case UP: case UP:
new_value = value - scroll_step; new_value = value - scroll_step * t;
break; break;
case RIGHT: case RIGHT:
new_value = value + scroll_hstep; new_value = value + scroll_hstep * t;
break; break;
case DOWN: case DOWN:
new_value = value + scroll_step; new_value = value + scroll_step * t;
break; break;
case TOP: case TOP:
new_value = 0; new_value = 0;