Loading src/options.c +3 −3 Original line number Diff line number Diff line Loading @@ -416,7 +416,7 @@ static void feh_parse_option_array(int argc, char **argv, int finalrun) {"no-recursive" , 0, 0, 241}, {"cache-size" , 1, 0, 243}, {"version-sort" , 0, 0, 246}, {"inner-geometry", 1, 0, 247}, {"offset" , 1, 0, 247}, {0, 0, 0, 0} }; int optch = 0, cmdx = 0; Loading Loading @@ -786,8 +786,8 @@ static void feh_parse_option_array(int argc, char **argv, int finalrun) opt.version_sort = 1; break; case 247: opt.inner_geom_flags = XParseGeometry(optarg, &opt.inner_geom_x, &opt.inner_geom_y, &opt.inner_geom_w, &opt.inner_geom_h); opt.offset_flags = XParseGeometry(optarg, &opt.offset_x, &opt.offset_y, (unsigned int *)&discard, (unsigned int *)&discard); break; default: break; Loading src/options.h +3 −5 Original line number Diff line number Diff line Loading @@ -111,11 +111,9 @@ struct __fehoptions { int geom_y; unsigned int geom_w; unsigned int geom_h; int inner_geom_flags; int inner_geom_x; int inner_geom_y; unsigned int inner_geom_w; unsigned int inner_geom_h; int offset_flags; int offset_x; int offset_y; int default_zoom; int zoom_mode; unsigned char adjust_reload; Loading src/winwidget.c +8 −8 Original line number Diff line number Diff line Loading @@ -565,18 +565,18 @@ void winwidget_render_image(winwidget winwid, int resize, int force_alias) */ if (need_center || resize) { if ((opt.inner_geom_flags & XValue) && (winwid->im_w * winwid->zoom) > winwid->w) { if (opt.inner_geom_flags & XNegative) { winwid->im_x = winwid->w - (winwid->im_w * winwid->zoom) - opt.inner_geom_x; if ((opt.offset_flags & XValue) && (winwid->im_w * winwid->zoom) > winwid->w) { if (opt.offset_flags & XNegative) { winwid->im_x = winwid->w - (winwid->im_w * winwid->zoom) - opt.offset_x; } else { winwid->im_x = - opt.inner_geom_x * winwid->zoom; winwid->im_x = - opt.offset_x * winwid->zoom; } } if ((opt.inner_geom_flags & YValue) && (winwid->im_h * winwid->zoom) > winwid->h) { if (opt.inner_geom_flags & YNegative) { winwid->im_y = winwid->h - (winwid->im_h * winwid->zoom) - opt.inner_geom_y; if ((opt.offset_flags & YValue) && (winwid->im_h * winwid->zoom) > winwid->h) { if (opt.offset_flags & YNegative) { winwid->im_y = winwid->h - (winwid->im_h * winwid->zoom) - opt.offset_y; } else { winwid->im_y = - opt.inner_geom_y * winwid->zoom; winwid->im_y = - opt.offset_y * winwid->zoom; } } } Loading Loading
src/options.c +3 −3 Original line number Diff line number Diff line Loading @@ -416,7 +416,7 @@ static void feh_parse_option_array(int argc, char **argv, int finalrun) {"no-recursive" , 0, 0, 241}, {"cache-size" , 1, 0, 243}, {"version-sort" , 0, 0, 246}, {"inner-geometry", 1, 0, 247}, {"offset" , 1, 0, 247}, {0, 0, 0, 0} }; int optch = 0, cmdx = 0; Loading Loading @@ -786,8 +786,8 @@ static void feh_parse_option_array(int argc, char **argv, int finalrun) opt.version_sort = 1; break; case 247: opt.inner_geom_flags = XParseGeometry(optarg, &opt.inner_geom_x, &opt.inner_geom_y, &opt.inner_geom_w, &opt.inner_geom_h); opt.offset_flags = XParseGeometry(optarg, &opt.offset_x, &opt.offset_y, (unsigned int *)&discard, (unsigned int *)&discard); break; default: break; Loading
src/options.h +3 −5 Original line number Diff line number Diff line Loading @@ -111,11 +111,9 @@ struct __fehoptions { int geom_y; unsigned int geom_w; unsigned int geom_h; int inner_geom_flags; int inner_geom_x; int inner_geom_y; unsigned int inner_geom_w; unsigned int inner_geom_h; int offset_flags; int offset_x; int offset_y; int default_zoom; int zoom_mode; unsigned char adjust_reload; Loading
src/winwidget.c +8 −8 Original line number Diff line number Diff line Loading @@ -565,18 +565,18 @@ void winwidget_render_image(winwidget winwid, int resize, int force_alias) */ if (need_center || resize) { if ((opt.inner_geom_flags & XValue) && (winwid->im_w * winwid->zoom) > winwid->w) { if (opt.inner_geom_flags & XNegative) { winwid->im_x = winwid->w - (winwid->im_w * winwid->zoom) - opt.inner_geom_x; if ((opt.offset_flags & XValue) && (winwid->im_w * winwid->zoom) > winwid->w) { if (opt.offset_flags & XNegative) { winwid->im_x = winwid->w - (winwid->im_w * winwid->zoom) - opt.offset_x; } else { winwid->im_x = - opt.inner_geom_x * winwid->zoom; winwid->im_x = - opt.offset_x * winwid->zoom; } } if ((opt.inner_geom_flags & YValue) && (winwid->im_h * winwid->zoom) > winwid->h) { if (opt.inner_geom_flags & YNegative) { winwid->im_y = winwid->h - (winwid->im_h * winwid->zoom) - opt.inner_geom_y; if ((opt.offset_flags & YValue) && (winwid->im_h * winwid->zoom) > winwid->h) { if (opt.offset_flags & YNegative) { winwid->im_y = winwid->h - (winwid->im_h * winwid->zoom) - opt.offset_y; } else { winwid->im_y = - opt.inner_geom_y * winwid->zoom; winwid->im_y = - opt.offset_y * winwid->zoom; } } } Loading