Fixed wrong trackpad scrolling.
This commit is contained in:
parent
00d8206ad2
commit
63b964f1c5
|
@ -310,13 +310,23 @@ metal__make_buffer(u32 size, id<MTLDevice> device){
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// HACK(yuval): This is the best way I found to force valid width and height without drawing on the next draw cycle (1 frame delay).
|
// HACK(yuval): This is the best way I found to force valid width and height without drawing on the next draw cycle (1 frame delay).
|
||||||
|
|
||||||
CGSize drawable_size = [view drawableSize];
|
CGSize drawable_size = [view drawableSize];
|
||||||
i32 width = (i32)Min(_target->width, drawable_size.width);
|
i32 width = (i32)Min(_target->width, drawable_size.width);
|
||||||
i32 height = (i32)Min(_target->height, drawable_size.height);
|
i32 height = (i32)Min(_target->height, drawable_size.height);
|
||||||
|
|
||||||
Font_Set *font_set = (Font_Set*)_target->font_set;
|
Font_Set *font_set = (Font_Set*)_target->font_set;
|
||||||
|
|
||||||
|
// TODO(yuval): Free any textures in the target's texture free list
|
||||||
|
#if 0
|
||||||
|
for (Render_Free_Texture *free_texture = _target->free_texture_first;
|
||||||
|
free_texture;
|
||||||
|
free_texture = free_texture->next){
|
||||||
|
/*sll_queue_push(texture_slots.first_free_slot, texture_slots.last_free_slot, free_texture)*/
|
||||||
|
}
|
||||||
|
_target->free_texture_first = 0;
|
||||||
|
_taget->free_texture_last = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
// NOTE(yuval): Create the command buffer
|
// NOTE(yuval): Create the command buffer
|
||||||
id<MTLCommandBuffer> command_buffer = [command_queue commandBuffer];
|
id<MTLCommandBuffer> command_buffer = [command_queue commandBuffer];
|
||||||
command_buffer.label = @"4coder Metal Render Command";
|
command_buffer.label = @"4coder Metal Render Command";
|
||||||
|
|
|
@ -285,12 +285,11 @@ gl_render(Render_Target *t){
|
||||||
t->free_texture_first = 0;
|
t->free_texture_first = 0;
|
||||||
t->free_texture_last = 0;
|
t->free_texture_last = 0;
|
||||||
|
|
||||||
u64 begin_draw = system_now_time();
|
|
||||||
for (Render_Group *group = t->group_first;
|
for (Render_Group *group = t->group_first;
|
||||||
group != 0;
|
group != 0;
|
||||||
group = group->next){
|
group = group->next){
|
||||||
Rect_i32 box = Ri32(group->clip_box);
|
Rect_i32 box = Ri32(group->clip_box);
|
||||||
|
|
||||||
Rect_i32 scissor_box = {
|
Rect_i32 scissor_box = {
|
||||||
box.x0, height - box.y1, box.x1 - box.x0, box.y1 - box.y0,
|
box.x0, height - box.y1, box.x1 - box.x0, box.y1 - box.y0,
|
||||||
};
|
};
|
||||||
|
|
|
@ -952,9 +952,11 @@ mac_toggle_fullscreen(void){
|
||||||
float dx = event.scrollingDeltaX;
|
float dx = event.scrollingDeltaX;
|
||||||
float dy = event.scrollingDeltaY;
|
float dy = event.scrollingDeltaY;
|
||||||
|
|
||||||
i8 scroll_speed = 100;
|
i8 scroll_speed = 0;
|
||||||
if (dy > 0){
|
if (dy > 0){
|
||||||
scroll_speed *= -1;
|
scroll_speed = -100;
|
||||||
|
} else if (dy < 0){
|
||||||
|
scroll_speed = 100;
|
||||||
}
|
}
|
||||||
mac_vars.input_chunk.trans.mouse_wheel = scroll_speed;
|
mac_vars.input_chunk.trans.mouse_wheel = scroll_speed;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue