1
0
mirror of https://github.com/GNOME/gedit synced 2024-07-02 15:58:48 +00:00

Window: change how to get side panel and its GtkStack

This commit is contained in:
Sébastien Wilmet 2023-07-11 16:00:00 +02:00
parent eaa990492e
commit c2eae12157
7 changed files with 46 additions and 24 deletions

View File

@ -15,6 +15,19 @@
API stability guarantees.
</para>
<refsect1>
<title>45 -> 46</title>
<itemizedlist>
<listitem>
<para>
The <code>gedit_window_get_side_panel()</code> function has been
renamed to
<link linkend="gedit-window-get-side-panel-stack">gedit_window_get_side_panel_stack()</link>.
</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>44 -> 45</title>
<itemizedlist>

View File

@ -239,7 +239,7 @@ gedit_window_get_documents
gedit_window_get_unsaved_documents
gedit_window_get_views
gedit_window_get_group
gedit_window_get_side_panel
gedit_window_get_side_panel_stack
gedit_window_get_bottom_panel
gedit_window_get_statusbar
gedit_window_get_state

View File

@ -26,6 +26,7 @@
#include <tepl/tepl.h>
#include "gedit-debug.h"
#include "gedit-window.h"
#include "gedit-window-private.h"
void
_gedit_cmd_view_focus_active (GSimpleAction *action,
@ -51,19 +52,19 @@ _gedit_cmd_view_toggle_side_panel (GSimpleAction *action,
gpointer user_data)
{
GeditWindow *window = GEDIT_WINDOW (user_data);
GtkWidget *panel;
GeditSidePanel *panel;
gboolean visible;
gedit_debug (DEBUG_COMMANDS);
panel = gedit_window_get_side_panel (window);
panel = _gedit_window_get_side_panel (window);
visible = g_variant_get_boolean (state);
gtk_widget_set_visible (panel, visible);
gtk_widget_set_visible (GTK_WIDGET (panel), visible);
if (visible)
{
gtk_widget_grab_focus (panel);
gtk_widget_grab_focus (GTK_WIDGET (panel));
}
g_simple_action_set_state (action, state);

View File

@ -7,11 +7,14 @@
#include "gedit-window.h"
#include "gedit-multi-notebook.h"
#include "gedit-side-panel.h"
G_BEGIN_DECLS
GeditMultiNotebook * _gedit_window_get_multi_notebook (GeditWindow *window);
GeditSidePanel * _gedit_window_get_side_panel (GeditWindow *window);
G_END_DECLS
#endif /* GEDIT_WINDOW_PRIVATE_H */

View File

@ -48,7 +48,6 @@
#include "gedit-settings.h"
#include "gedit-menu-stack-switcher.h"
#include "gedit-header-bar.h"
#include "gedit-side-panel.h"
struct _GeditWindowPrivate
{
@ -3125,20 +3124,27 @@ _gedit_window_is_removing_tabs (GeditWindow *window)
return window->priv->removing_tabs;
}
/**
* gedit_window_get_side_panel:
* @window: a #GeditWindow
*
* Gets the side panel of the @window.
*
* Returns: (transfer none): the side panel's #GtkStack.
*/
GtkWidget *
gedit_window_get_side_panel (GeditWindow *window)
GeditSidePanel *
_gedit_window_get_side_panel (GeditWindow *window)
{
g_return_val_if_fail (GEDIT_IS_WINDOW (window), NULL);
return GTK_WIDGET (gedit_side_panel_get_stack (window->priv->side_panel));
return window->priv->side_panel;
}
/**
* gedit_window_get_side_panel_stack:
* @window: a #GeditWindow
*
* Returns: (transfer none): the side panel's #GtkStack.
* Since: 46
*/
GtkStack *
gedit_window_get_side_panel_stack (GeditWindow *window)
{
g_return_val_if_fail (GEDIT_IS_WINDOW (window), NULL);
return gedit_side_panel_get_stack (window->priv->side_panel);
}
/**

View File

@ -105,7 +105,7 @@ GList *gedit_window_get_views (GeditWindow *window);
GtkWindowGroup *gedit_window_get_group (GeditWindow *window);
GtkWidget *gedit_window_get_side_panel (GeditWindow *window);
GtkStack *gedit_window_get_side_panel_stack (GeditWindow *window);
GtkWidget *gedit_window_get_bottom_panel (GeditWindow *window);

View File

@ -453,7 +453,7 @@ gedit_file_browser_plugin_activate (GeditWindowActivatable *activatable)
{
GeditFileBrowserPlugin *plugin = GEDIT_FILE_BROWSER_PLUGIN (activatable);
GeditFileBrowserPluginPrivate *priv;
GtkWidget *panel;
GtkStack *panel;
GeditFileBrowserStore *store;
priv = plugin->priv;
@ -493,9 +493,9 @@ gedit_file_browser_plugin_activate (GeditWindowActivatable *activatable)
FILEBROWSER_FILTER_PATTERN,
G_SETTINGS_BIND_GET | G_SETTINGS_BIND_SET);
panel = gedit_window_get_side_panel (priv->window);
panel = gedit_window_get_side_panel_stack (priv->window);
gtk_stack_add_titled (GTK_STACK (panel),
gtk_stack_add_titled (panel,
GTK_WIDGET (priv->tree_widget),
"GeditFileBrowserPanel",
_("File Browser"));
@ -551,8 +551,7 @@ gedit_file_browser_plugin_deactivate (GeditWindowActivatable *activatable)
{
GeditFileBrowserPlugin *plugin = GEDIT_FILE_BROWSER_PLUGIN (activatable);
GeditFileBrowserPluginPrivate *priv = plugin->priv;
GtkWidget *panel;
GtkStack *panel;
/* Unregister messages from the bus */
gedit_file_browser_messages_unregister (priv->window);
@ -568,7 +567,7 @@ gedit_file_browser_plugin_deactivate (GeditWindowActivatable *activatable)
priv->click_policy_handle);
}
panel = gedit_window_get_side_panel (priv->window);
panel = gedit_window_get_side_panel_stack (priv->window);
gtk_container_remove (GTK_CONTAINER (panel), GTK_WIDGET (priv->tree_widget));
}