| tadding autozoom lock when site is already zoomed. - surf - customized build of… | |
| git clone git://src.adamsgaard.dk/surf | |
| Log | |
| Files | |
| Refs | |
| README | |
| LICENSE | |
| --- | |
| commit 31441e93f73029017fb59ac9f7e36ba74206ced4 | |
| parent 92afa03d80ba077f7a5b1dc1bd44d82ab1d35b8f | |
| Author: Enno Boland (tox) <[email protected]> | |
| Date: Tue, 20 Oct 2009 20:49:33 +0200 | |
| adding autozoom lock when site is already zoomed. | |
| Diffstat: | |
| M surf.c | 10 ++++++++-- | |
| 1 file changed, 8 insertions(+), 2 deletions(-) | |
| --- | |
| diff --git a/surf.c b/surf.c | |
| t@@ -37,6 +37,7 @@ typedef struct Client { | |
| char *title, *linkhover; | |
| gint progress; | |
| struct Client *next; | |
| + gboolean zoomed; | |
| } Client; | |
| typedef struct { | |
| t@@ -680,8 +681,10 @@ void | |
| resize(GtkWidget *w, GtkAllocation *a, Client *c) { | |
| double zoom; | |
| + if(c->zoomed) | |
| + return; | |
| zoom = webkit_web_view_get_zoom_level(c->view); | |
| - if(a->width * a->height < 300 * 300 && zoom != 0.2) | |
| + if(a->width * a->height < 300 * 400 && zoom != 0.2) | |
| webkit_web_view_set_zoom_level(c->view, 0.2); | |
| else if(zoom != 1.0) | |
| webkit_web_view_set_zoom_level(c->view, 1.0); | |
| t@@ -839,12 +842,15 @@ windowobjectcleared(GtkWidget *w, WebKitWebFrame *frame,… | |
| void | |
| zoom(Client *c, const Arg *arg) { | |
| + c->zoomed = TRUE; | |
| if(arg->i < 0) /* zoom out */ | |
| webkit_web_view_zoom_out(c->view); | |
| else if(arg->i > 0) /* zoom in */ | |
| webkit_web_view_zoom_in(c->view); | |
| - else /* reset */ | |
| + else { /* reset */ | |
| + c->zoomed = FALSE; | |
| webkit_web_view_set_zoom_level(c->view, 1.0); | |
| + } | |
| } | |
| int main(int argc, char *argv[]) { |