Gitweb links:

...log 
http://git.netsurf-browser.org/netsurf.git/shortlog/702f9f2219fd9041419b5f83bf179f15db82fe03
...commit 
http://git.netsurf-browser.org/netsurf.git/commit/702f9f2219fd9041419b5f83bf179f15db82fe03
...tree 
http://git.netsurf-browser.org/netsurf.git/tree/702f9f2219fd9041419b5f83bf179f15db82fe03

The branch, vince/gtk-tab-restyle has been updated
       via  702f9f2219fd9041419b5f83bf179f15db82fe03 (commit)
      from  90bd61944e3e8c790803acfbade09369a9dcc141 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commitdiff 
http://git.netsurf-browser.org/netsurf.git/commit/?id=702f9f2219fd9041419b5f83bf179f15db82fe03
commit 702f9f2219fd9041419b5f83bf179f15db82fe03
Author: Vincent Sanders <[email protected]>
Commit: Vincent Sanders <[email protected]>

    add five more handlers

diff --git a/frontends/gtk/scaffolding.c b/frontends/gtk/scaffolding.c
index 309ee04..685b5d4 100644
--- a/frontends/gtk/scaffolding.c
+++ b/frontends/gtk/scaffolding.c
@@ -133,8 +133,6 @@ struct nsgtk_scaffolding {
 
        /** scaffold container window */
        GtkWindow *window;
-       /** flag for the scaffold window fullscreen status */
-       bool fullscreen;
 
        /** tab widget holding displayed pages */
        GtkNotebook *notebook;
@@ -819,60 +817,32 @@ MULTIHANDLER(find)
 /**
  * menu signal handler for activation on preferences item
  */
-MENUHANDLER(preferences,PREFERENCES_BUTTON);
+MENUHANDLER(preferences, PREFERENCES_BUTTON);
 
+/**
+ * menu signal handler for activation on zoom plus item
+ */
+MENUHANDLER(zoomplus, ZOOMPLUS_BUTTON);
 
-MULTIHANDLER(zoomplus)
-{
-       struct browser_window *bw = nsgtk_get_browser_window(g->top_level);
-
-       browser_window_set_scale(bw, 0.05, false);
-
-       return TRUE;
-}
-
-MULTIHANDLER(zoomnormal)
-{
-       struct browser_window *bw = nsgtk_get_browser_window(g->top_level);
-
-       browser_window_set_scale(bw, 1.0, true);
-
-       return TRUE;
-}
-
-MULTIHANDLER(zoomminus)
-{
-       struct browser_window *bw = nsgtk_get_browser_window(g->top_level);
-
-       browser_window_set_scale(bw, -0.05, false);
-
-       return TRUE;
-}
-
-MULTIHANDLER(fullscreen)
-{
-       if (g->fullscreen) {
-               gtk_window_unfullscreen(g->window);
-       } else {
-               gtk_window_fullscreen(g->window);
-       }
-
-       g->fullscreen = !g->fullscreen;
-
-       return TRUE;
-}
+/**
+ * menu signal handler for activation on zoom minus item
+ */
+MENUHANDLER(zoomminus, ZOOMMINUS_BUTTON);
 
-MULTIHANDLER(viewsource)
-{
-       nserror ret;
+/**
+ * menu signal handler for activation on zoom normal item
+ */
+MENUHANDLER(zoomnormal, ZOOMNORMAL_BUTTON);
 
-       ret = nsgtk_viewsource(g->window, 
nsgtk_get_browser_window(g->top_level));
-       if (ret != NSERROR_OK) {
-               nsgtk_warning(messages_get_errorcode(ret), 0);
-       }
+/**
+ * menu signal handler for activation on full screen item
+ */
+MENUHANDLER(fullscreen, FULLSCREEN_BUTTON);
 
-       return TRUE;
-}
+/**
+ * menu signal handler for activation on view source item
+ */
+MENUHANDLER(viewsource, VIEWSOURCE_BUTTON);
 
 
 static gboolean
@@ -2205,8 +2175,6 @@ struct nsgtk_scaffolding *nsgtk_new_scaffolding(struct 
gui_window *toplevel)
        nsgtk_menu_connect_signals(gs);
        nsgtk_menu_set_sensitivity(gs);
 
-       gs->fullscreen = false;
-
        /* attach to the list */
        if (scaf_list) {
                scaf_list->prev = gs;
diff --git a/frontends/gtk/toolbar.c b/frontends/gtk/toolbar.c
index 1560a6e..8fbdfa1 100644
--- a/frontends/gtk/toolbar.c
+++ b/frontends/gtk/toolbar.c
@@ -2725,7 +2725,125 @@ preferences_button_clicked_cb(GtkWidget *widget, 
gpointer data)
        }
 
        return TRUE;
+}
+
+
+/**
+ * handler for zoom plus tool bar item clicked signal
+ *
+ * \param widget The widget the signal is being delivered to.
+ * \param data The toolbar context passed when the signal was connected
+ * \return TRUE
+ */
+static gboolean
+zoomplus_button_clicked_cb(GtkWidget *widget, gpointer data)
+{
+       struct nsgtk_toolbar *tb = (struct nsgtk_toolbar *)data;
+       struct browser_window *bw;
+
+       bw = tb->get_bw(tb->get_bw_ctx);
+
+       browser_window_set_scale(bw, 0.05, false);
+
+       return TRUE;
+}
+
 
+/**
+ * handler for zoom minus tool bar item clicked signal
+ *
+ * \param widget The widget the signal is being delivered to.
+ * \param data The toolbar context passed when the signal was connected
+ * \return TRUE
+ */
+static gboolean
+zoomminus_button_clicked_cb(GtkWidget *widget, gpointer data)
+{
+       struct nsgtk_toolbar *tb = (struct nsgtk_toolbar *)data;
+       struct browser_window *bw;
+
+       bw = tb->get_bw(tb->get_bw_ctx);
+
+       browser_window_set_scale(bw, -0.05, false);
+
+       return TRUE;
+
+}
+
+
+/**
+ * handler for zoom normal tool bar item clicked signal
+ *
+ * \param widget The widget the signal is being delivered to.
+ * \param data The toolbar context passed when the signal was connected
+ * \return TRUE
+ */
+static gboolean
+zoomnormal_button_clicked_cb(GtkWidget *widget, gpointer data)
+{
+       struct nsgtk_toolbar *tb = (struct nsgtk_toolbar *)data;
+       struct browser_window *bw;
+
+       bw = tb->get_bw(tb->get_bw_ctx);
+
+       browser_window_set_scale(bw, 1.0, true);
+
+       return TRUE;
+}
+
+
+/**
+ * handler for full screen tool bar item clicked signal
+ *
+ * \param widget The widget the signal is being delivered to.
+ * \param data The toolbar context passed when the signal was connected
+ * \return TRUE
+ */
+static gboolean
+fullscreen_button_clicked_cb(GtkWidget *widget, gpointer data)
+{
+       GtkWindow *gtkwindow; /* gtk window widget is in */
+       GdkWindow *gdkwindow;
+       GdkWindowState state;
+
+       gtkwindow = GTK_WINDOW(gtk_widget_get_ancestor(widget,GTK_TYPE_WINDOW));
+       gdkwindow = gtk_widget_get_window(GTK_WIDGET(gtkwindow));
+       state = gdk_window_get_state(gdkwindow);
+
+       if (state & GDK_WINDOW_STATE_FULLSCREEN) {
+               gtk_window_unfullscreen(gtkwindow);
+       } else {
+               gtk_window_fullscreen(gtkwindow);
+       }
+       return TRUE;
+}
+
+
+/**
+ * handler for full screen tool bar item clicked signal
+ *
+ * \param widget The widget the signal is being delivered to.
+ * \param data The toolbar context passed when the signal was connected
+ * \return TRUE
+ */
+static gboolean
+viewsource_button_clicked_cb(GtkWidget *widget, gpointer data)
+{
+       nserror res;
+       struct nsgtk_toolbar *tb = (struct nsgtk_toolbar *)data;
+       struct browser_window *bw;
+       GtkWindow *gtkwindow; /* gtk window widget is in */
+
+       bw = tb->get_bw(tb->get_bw_ctx);
+
+       gtkwindow = GTK_WINDOW(gtk_widget_get_ancestor(widget,GTK_TYPE_WINDOW));
+
+       res = nsgtk_viewsource(gtkwindow, bw);
+       if (res != NSERROR_OK) {
+               nsgtk_warning(messages_get_errorcode(res), 0);
+       }
+
+       return TRUE;
 }
 
 
diff --git a/frontends/gtk/toolbar_items.h b/frontends/gtk/toolbar_items.h
index b4bc91f..ecdd978 100644
--- a/frontends/gtk/toolbar_items.h
+++ b/frontends/gtk/toolbar_items.h
@@ -117,11 +117,11 @@ TOOLBAR_ITEM(DELETE_BUTTON, delete, false, 
delete_button_clicked_cb)
 TOOLBAR_ITEM(SELECTALL_BUTTON, selectall, true, selectall_button_clicked_cb)
 TOOLBAR_ITEM(FIND_BUTTON, find, true, NULL)
 TOOLBAR_ITEM(PREFERENCES_BUTTON, preferences, true, 
preferences_button_clicked_cb)
-TOOLBAR_ITEM(ZOOMPLUS_BUTTON, zoomplus, true, NULL)
-TOOLBAR_ITEM(ZOOMMINUS_BUTTON, zoomminus, true, NULL)
-TOOLBAR_ITEM(ZOOMNORMAL_BUTTON, zoomnormal, true, NULL)
-TOOLBAR_ITEM(FULLSCREEN_BUTTON, fullscreen, true, NULL)
-TOOLBAR_ITEM(VIEWSOURCE_BUTTON, viewsource, true, NULL)
+TOOLBAR_ITEM(ZOOMPLUS_BUTTON, zoomplus, true, zoomplus_button_clicked_cb)
+TOOLBAR_ITEM(ZOOMMINUS_BUTTON, zoomminus, true, zoomminus_button_clicked_cb)
+TOOLBAR_ITEM(ZOOMNORMAL_BUTTON, zoomnormal, true, zoomnormal_button_clicked_cb)
+TOOLBAR_ITEM(FULLSCREEN_BUTTON, fullscreen, true, fullscreen_button_clicked_cb)
+TOOLBAR_ITEM(VIEWSOURCE_BUTTON, viewsource, true, viewsource_button_clicked_cb)
 TOOLBAR_ITEM(DOWNLOADS_BUTTON, downloads, true, NULL)
 TOOLBAR_ITEM(SAVEWINDOWSIZE_BUTTON, savewindowsize, true, NULL)
 TOOLBAR_ITEM(TOGGLEDEBUGGING_BUTTON, toggledebugging, true, NULL)


-----------------------------------------------------------------------

Summary of changes:
 frontends/gtk/scaffolding.c   |   74 ++++++++------------------
 frontends/gtk/toolbar.c       |  118 +++++++++++++++++++++++++++++++++++++++++
 frontends/gtk/toolbar_items.h |   10 ++--
 3 files changed, 144 insertions(+), 58 deletions(-)

diff --git a/frontends/gtk/scaffolding.c b/frontends/gtk/scaffolding.c
index 309ee04..685b5d4 100644
--- a/frontends/gtk/scaffolding.c
+++ b/frontends/gtk/scaffolding.c
@@ -133,8 +133,6 @@ struct nsgtk_scaffolding {
 
        /** scaffold container window */
        GtkWindow *window;
-       /** flag for the scaffold window fullscreen status */
-       bool fullscreen;
 
        /** tab widget holding displayed pages */
        GtkNotebook *notebook;
@@ -819,60 +817,32 @@ MULTIHANDLER(find)
 /**
  * menu signal handler for activation on preferences item
  */
-MENUHANDLER(preferences,PREFERENCES_BUTTON);
+MENUHANDLER(preferences, PREFERENCES_BUTTON);
 
+/**
+ * menu signal handler for activation on zoom plus item
+ */
+MENUHANDLER(zoomplus, ZOOMPLUS_BUTTON);
 
-MULTIHANDLER(zoomplus)
-{
-       struct browser_window *bw = nsgtk_get_browser_window(g->top_level);
-
-       browser_window_set_scale(bw, 0.05, false);
-
-       return TRUE;
-}
-
-MULTIHANDLER(zoomnormal)
-{
-       struct browser_window *bw = nsgtk_get_browser_window(g->top_level);
-
-       browser_window_set_scale(bw, 1.0, true);
-
-       return TRUE;
-}
-
-MULTIHANDLER(zoomminus)
-{
-       struct browser_window *bw = nsgtk_get_browser_window(g->top_level);
-
-       browser_window_set_scale(bw, -0.05, false);
-
-       return TRUE;
-}
-
-MULTIHANDLER(fullscreen)
-{
-       if (g->fullscreen) {
-               gtk_window_unfullscreen(g->window);
-       } else {
-               gtk_window_fullscreen(g->window);
-       }
-
-       g->fullscreen = !g->fullscreen;
-
-       return TRUE;
-}
+/**
+ * menu signal handler for activation on zoom minus item
+ */
+MENUHANDLER(zoomminus, ZOOMMINUS_BUTTON);
 
-MULTIHANDLER(viewsource)
-{
-       nserror ret;
+/**
+ * menu signal handler for activation on zoom normal item
+ */
+MENUHANDLER(zoomnormal, ZOOMNORMAL_BUTTON);
 
-       ret = nsgtk_viewsource(g->window, 
nsgtk_get_browser_window(g->top_level));
-       if (ret != NSERROR_OK) {
-               nsgtk_warning(messages_get_errorcode(ret), 0);
-       }
+/**
+ * menu signal handler for activation on full screen item
+ */
+MENUHANDLER(fullscreen, FULLSCREEN_BUTTON);
 
-       return TRUE;
-}
+/**
+ * menu signal handler for activation on view source item
+ */
+MENUHANDLER(viewsource, VIEWSOURCE_BUTTON);
 
 
 static gboolean
@@ -2205,8 +2175,6 @@ struct nsgtk_scaffolding *nsgtk_new_scaffolding(struct 
gui_window *toplevel)
        nsgtk_menu_connect_signals(gs);
        nsgtk_menu_set_sensitivity(gs);
 
-       gs->fullscreen = false;
-
        /* attach to the list */
        if (scaf_list) {
                scaf_list->prev = gs;
diff --git a/frontends/gtk/toolbar.c b/frontends/gtk/toolbar.c
index 1560a6e..8fbdfa1 100644
--- a/frontends/gtk/toolbar.c
+++ b/frontends/gtk/toolbar.c
@@ -2725,7 +2725,125 @@ preferences_button_clicked_cb(GtkWidget *widget, 
gpointer data)
        }
 
        return TRUE;
+}
+
+
+/**
+ * handler for zoom plus tool bar item clicked signal
+ *
+ * \param widget The widget the signal is being delivered to.
+ * \param data The toolbar context passed when the signal was connected
+ * \return TRUE
+ */
+static gboolean
+zoomplus_button_clicked_cb(GtkWidget *widget, gpointer data)
+{
+       struct nsgtk_toolbar *tb = (struct nsgtk_toolbar *)data;
+       struct browser_window *bw;
+
+       bw = tb->get_bw(tb->get_bw_ctx);
+
+       browser_window_set_scale(bw, 0.05, false);
+
+       return TRUE;
+}
+
 
+/**
+ * handler for zoom minus tool bar item clicked signal
+ *
+ * \param widget The widget the signal is being delivered to.
+ * \param data The toolbar context passed when the signal was connected
+ * \return TRUE
+ */
+static gboolean
+zoomminus_button_clicked_cb(GtkWidget *widget, gpointer data)
+{
+       struct nsgtk_toolbar *tb = (struct nsgtk_toolbar *)data;
+       struct browser_window *bw;
+
+       bw = tb->get_bw(tb->get_bw_ctx);
+
+       browser_window_set_scale(bw, -0.05, false);
+
+       return TRUE;
+
+}
+
+
+/**
+ * handler for zoom normal tool bar item clicked signal
+ *
+ * \param widget The widget the signal is being delivered to.
+ * \param data The toolbar context passed when the signal was connected
+ * \return TRUE
+ */
+static gboolean
+zoomnormal_button_clicked_cb(GtkWidget *widget, gpointer data)
+{
+       struct nsgtk_toolbar *tb = (struct nsgtk_toolbar *)data;
+       struct browser_window *bw;
+
+       bw = tb->get_bw(tb->get_bw_ctx);
+
+       browser_window_set_scale(bw, 1.0, true);
+
+       return TRUE;
+}
+
+
+/**
+ * handler for full screen tool bar item clicked signal
+ *
+ * \param widget The widget the signal is being delivered to.
+ * \param data The toolbar context passed when the signal was connected
+ * \return TRUE
+ */
+static gboolean
+fullscreen_button_clicked_cb(GtkWidget *widget, gpointer data)
+{
+       GtkWindow *gtkwindow; /* gtk window widget is in */
+       GdkWindow *gdkwindow;
+       GdkWindowState state;
+
+       gtkwindow = GTK_WINDOW(gtk_widget_get_ancestor(widget,GTK_TYPE_WINDOW));
+       gdkwindow = gtk_widget_get_window(GTK_WIDGET(gtkwindow));
+       state = gdk_window_get_state(gdkwindow);
+
+       if (state & GDK_WINDOW_STATE_FULLSCREEN) {
+               gtk_window_unfullscreen(gtkwindow);
+       } else {
+               gtk_window_fullscreen(gtkwindow);
+       }
+       return TRUE;
+}
+
+
+/**
+ * handler for full screen tool bar item clicked signal
+ *
+ * \param widget The widget the signal is being delivered to.
+ * \param data The toolbar context passed when the signal was connected
+ * \return TRUE
+ */
+static gboolean
+viewsource_button_clicked_cb(GtkWidget *widget, gpointer data)
+{
+       nserror res;
+       struct nsgtk_toolbar *tb = (struct nsgtk_toolbar *)data;
+       struct browser_window *bw;
+       GtkWindow *gtkwindow; /* gtk window widget is in */
+
+       bw = tb->get_bw(tb->get_bw_ctx);
+
+       gtkwindow = GTK_WINDOW(gtk_widget_get_ancestor(widget,GTK_TYPE_WINDOW));
+
+       res = nsgtk_viewsource(gtkwindow, bw);
+       if (res != NSERROR_OK) {
+               nsgtk_warning(messages_get_errorcode(res), 0);
+       }
+
+       return TRUE;
 }
 
 
diff --git a/frontends/gtk/toolbar_items.h b/frontends/gtk/toolbar_items.h
index b4bc91f..ecdd978 100644
--- a/frontends/gtk/toolbar_items.h
+++ b/frontends/gtk/toolbar_items.h
@@ -117,11 +117,11 @@ TOOLBAR_ITEM(DELETE_BUTTON, delete, false, 
delete_button_clicked_cb)
 TOOLBAR_ITEM(SELECTALL_BUTTON, selectall, true, selectall_button_clicked_cb)
 TOOLBAR_ITEM(FIND_BUTTON, find, true, NULL)
 TOOLBAR_ITEM(PREFERENCES_BUTTON, preferences, true, 
preferences_button_clicked_cb)
-TOOLBAR_ITEM(ZOOMPLUS_BUTTON, zoomplus, true, NULL)
-TOOLBAR_ITEM(ZOOMMINUS_BUTTON, zoomminus, true, NULL)
-TOOLBAR_ITEM(ZOOMNORMAL_BUTTON, zoomnormal, true, NULL)
-TOOLBAR_ITEM(FULLSCREEN_BUTTON, fullscreen, true, NULL)
-TOOLBAR_ITEM(VIEWSOURCE_BUTTON, viewsource, true, NULL)
+TOOLBAR_ITEM(ZOOMPLUS_BUTTON, zoomplus, true, zoomplus_button_clicked_cb)
+TOOLBAR_ITEM(ZOOMMINUS_BUTTON, zoomminus, true, zoomminus_button_clicked_cb)
+TOOLBAR_ITEM(ZOOMNORMAL_BUTTON, zoomnormal, true, zoomnormal_button_clicked_cb)
+TOOLBAR_ITEM(FULLSCREEN_BUTTON, fullscreen, true, fullscreen_button_clicked_cb)
+TOOLBAR_ITEM(VIEWSOURCE_BUTTON, viewsource, true, viewsource_button_clicked_cb)
 TOOLBAR_ITEM(DOWNLOADS_BUTTON, downloads, true, NULL)
 TOOLBAR_ITEM(SAVEWINDOWSIZE_BUTTON, savewindowsize, true, NULL)
 TOOLBAR_ITEM(TOGGLEDEBUGGING_BUTTON, toggledebugging, true, NULL)


-- 
NetSurf Browser

_______________________________________________
netsurf-commits mailing list
[email protected]
http://listmaster.pepperfish.net/cgi-bin/mailman/listinfo/netsurf-commits-netsurf-browser.org

Reply via email to