Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/Remmina/remminadoc.gitlab.io.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntenore Gatta <antenore@simbiosi.org>2023-06-14 15:38:12 +0300
committerAntenore Gatta <antenore@simbiosi.org>2023-06-14 15:38:12 +0300
commitb907c1023f99c685576b443229f680427eb6ce09 (patch)
tree44f37d1c5618c7f5e5d04dee5b33aed1674e267b
parent801b447b3cb7b3fd7366716d72b2a868886bd751 (diff)
Automatic doc build by remmina-ci
-rw-r--r--public/rcw_8c_source.html2
-rw-r--r--public/remmina__exec_8c_source.html4
-rw-r--r--public/remmina__file_8c_source.html4
-rw-r--r--public/remmina__file__editor_8c_source.html2
-rw-r--r--public/remmina__main_8c.html110
-rw-r--r--public/remmina__main_8c_source.html80
-rw-r--r--public/remmina__main_8h.html42
-rw-r--r--public/remmina__main_8h_source.html42
-rw-r--r--public/remmina__mpchange_8c_source.html2
-rw-r--r--public/remmina__plugin__manager_8c_source.html4
10 files changed, 146 insertions, 146 deletions
diff --git a/public/rcw_8c_source.html b/public/rcw_8c_source.html
index 803cbde92..c1c243be1 100644
--- a/public/rcw_8c_source.html
+++ b/public/rcw_8c_source.html
@@ -117,7 +117,7 @@ $(document).ready(function(){initNavTree('rcw_8c_source.html','');});
<div class="ttc" id="rcw_8c_html_af657fd4825d16d8d003a8b42fbd0c715"><div class="ttname"><a href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a></div><div class="ttdeci">gchar * remmina_pref_file</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00078">rcw.c:78</a></div></div>
<div class="ttc" id="rcw_8c_html_af2f5c8716d84e6223a4b2cbc9efc532b"><div class="ttname"><a href="rcw_8c.html#af2f5c8716d84e6223a4b2cbc9efc532b">rcw_toolbar_fullscreen</a></div><div class="ttdeci">static void rcw_toolbar_fullscreen(GtkToolItem *toggle, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01351">rcw.c:1351</a></div></div>
<div class="ttc" id="rcw_8c_html_a8f8175377bfbda4794674e619ca0fa8b"><div class="ttname"><a href="rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b">rcw_on_switch_page</a></div><div class="ttdeci">static void rcw_on_switch_page(GtkNotebook *notebook, GtkWidget *newpage, guint page_num, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03653">rcw.c:3653</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01716">remmina_main.c:1716</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01718">remmina_main.c:1718</a></div></div>
<div class="ttc" id="remmina__protocol__widget_8c_html_aaf355ea7103fc57a4cbc7b815cde2995"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget_get_width</a></div><div class="ttdeci">gint remmina_protocol_widget_get_width(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01389">remmina_protocol_widget.c:1389</a></div></div>
<div class="ttc" id="rcw_8c_html_acb1b2ab629603837e08f8d8de542316d"><div class="ttname"><a href="rcw_8c.html#acb1b2ab629603837e08f8d8de542316d">rcw_hostkey_func</a></div><div class="ttdeci">static gboolean rcw_hostkey_func(RemminaProtocolWidget *gp, guint keyval, gboolean release)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04053">rcw.c:4053</a></div></div>
<div class="ttc" id="remmina__scrolled__viewport_8c_html_a0ba56f429a9c1ec05b093f5f78be692c"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport_remove_motion</a></div><div class="ttdeci">void remmina_scrolled_viewport_remove_motion(RemminaScrolledViewport *gsv)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00190">remmina_scrolled_viewport.c:190</a></div></div>
diff --git a/public/remmina__exec_8c_source.html b/public/remmina__exec_8c_source.html
index c47f3d0fa..57ee93e9a 100644
--- a/public/remmina__exec_8c_source.html
+++ b/public/remmina__exec_8c_source.html
@@ -89,7 +89,7 @@ $(document).ready(function(){initNavTree('remmina__exec_8c_source.html','');});
<a href="remmina__exec_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Remmina - The GTK+ Remote Desktop Client</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2014-2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Copyright (C) 2016-2023 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * it under the terms of the GNU General Public License as published by</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version of the file(s), but you are not obligated to do so. * If you</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;buildflags.h&quot;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina_8h.html">remmina.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__main_8h.html">remmina_main.h</a>&quot;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__log_8h.html">remmina_log.h</a>&quot;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__pref_8h.html">remmina_pref.h</a>&quot;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__widget__pool_8h.html">remmina_widget_pool.h</a>&quot;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__unlock_8h.html">remmina_unlock.h</a>&quot;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__pref__dialog_8h.html">remmina_pref_dialog.h</a>&quot;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file_8h.html">remmina_file.h</a>&quot;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file__manager_8h.html">remmina_file_manager.h</a>&quot;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file__editor_8h.html">remmina_file_editor.h</a>&quot;</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rcw_8h.html">rcw.h</a>&quot;</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__about_8h.html">remmina_about.h</a>&quot;</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__plugin__manager_8h.html">remmina_plugin_manager.h</a>&quot;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__exec_8h.html">remmina_exec.h</a>&quot;</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file__manager_8h.html">remmina_file_manager.h</a>&quot;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__crypt_8h.html">remmina_crypt.h</a>&quot;</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__icon_8h.html">remmina_icon.h</a>&quot;</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"># define ISSNAP &quot;- SNAP Build -&quot;</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"># define ISSNAP &quot;-&quot;</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a"> 67</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a">cb_closewidget</a>(GtkWidget *widget, gpointer data)</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;{</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">/* The correct way to close a rcw is to send</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> * it a &quot;delete-event&quot; signal. Simply destroying it will not close</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> * all network connections */</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span> (REMMINA_IS_CONNECTION_WINDOW(widget))</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7">rcw_delete</a>(RCW(widget));</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;}</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3"> 78</a></span>&#160;<span class="keyword">const</span> gchar* <a class="code" href="remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3">remmina_exec_get_build_config</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;{</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> gchar build_config[] =</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="stringliteral">&quot;Build configuration: &quot;</span> BUILD_CONFIG <span class="stringliteral">&quot;\n&quot;</span></div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="stringliteral">&quot;Build type: &quot;</span> BUILD_TYPE <span class="stringliteral">&quot;\n&quot;</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="stringliteral">&quot;CFLAGS: &quot;</span> CFLAGS <span class="stringliteral">&quot;\n&quot;</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="stringliteral">&quot;Compiler: &quot;</span> COMPILER_ID <span class="stringliteral">&quot;, &quot;</span> COMPILER_VERSION <span class="stringliteral">&quot;\n&quot;</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="stringliteral">&quot;Target architecture: &quot;</span> TARGET_ARCH <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">return</span> build_config;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;}</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f"> 89</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>()</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;{</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">/* Save main window state/position */</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main_save_before_destroy</a>();</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">/* Delete all widgets, main window not included */</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a>(<a class="code" href="remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a">cb_closewidget</a>, NULL);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">/* Remove systray menu */</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon_destroy</a>();</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="comment">/* close/destroy main window struct and window */</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c">remmina_main_destroy</a>();</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">/* Exit from Remmina */</span></div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; g_application_quit(g_application_get_default());</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;}</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f"> 111</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f">disable_rcw_delete_confirm_cb</a>(GtkWidget *widget, gpointer data)</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;{</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *rcw;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">if</span> (REMMINA_IS_CONNECTION_WINDOW(widget)) {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; rcw = (<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a>*)widget;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="rcw_8c.html#a4204fcd726a60493b290dd5590ec693d">rcw_set_delete_confirm_mode</a>(rcw, <a class="code" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc">RCW_ONDELETE_NOCONFIRM</a>);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; }</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;}</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31"> 123</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a>(<a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">RemminaCondExitType</a> why)</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;{</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="comment">/* Exit remmina only if there are no interesting windows left:</span></div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"> * no main window, no systray menu, no connection window.</span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"> * This function is usually called after a disconnection */</span></div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">switch</span> (why) {</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51">REMMINA_CONDEXIT_ONDISCONNECT</a>:</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="comment">// A connection has disconnected, should we exit remmina ?</span></div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8">remmina_widget_pool_count</a>() &lt; 1 &amp;&amp; !<a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>() &amp;&amp; !<a class="code" href="remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon_is_available</a>())</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>();</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40">REMMINA_CONDEXIT_ONMAINWINDELETE</a>:</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="comment">/* If we are in Kiosk mode, we just exit */</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE)</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>();</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="comment">// Main window has been deleted</span></div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8">remmina_widget_pool_count</a>() &lt; 1 &amp;&amp; !<a class="code" href="remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon_is_available</a>())</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>();</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284">REMMINA_CONDEXIT_ONQUIT</a>:</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="comment">// Quit command has been sent from main window or appindicator/systray menu</span></div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="comment">// quit means QUIT.</span></div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a>(<a class="code" href="remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f">disable_rcw_delete_confirm_cb</a>, NULL);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>();</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; }</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;}</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305"> 155</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305">newline_remove</a>(<span class="keywordtype">char</span> *s)</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;{</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">char</span> c;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">while</span>((c = *s) != 0 &amp;&amp; c != <span class="charliteral">&#39;\r&#39;</span> &amp;&amp; c != <span class="charliteral">&#39;\n&#39;</span>)</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; s++;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; *s = 0;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;}</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment">/* used for commandline parameter --update-profile X --set-option Y --set-option Z</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> * return a status code for exit()</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a4e202866339a104ffdbfa519cfbcdca9"> 166</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="remmina__exec_8c.html#a4e202866339a104ffdbfa519cfbcdca9">remmina_exec_set_setting</a>(gchar *profilefilename, gchar **settings)</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;{</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; gchar **tk, *value = NULL;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordtype">char</span> *line = NULL;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordtype">size_t</span> len = 0;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; ssize_t read;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; gboolean abort = FALSE;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; remminafile = <a class="code" href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a>(profilefilename);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">if</span> (!remminafile) {</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; g_print(<span class="stringliteral">&quot;Unable to open profile file %s\n&quot;</span>, profilefilename);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; }</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">for</span>(i = 0; settings[i] != NULL &amp;&amp; !abort; i++) {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">if</span> (strlen(settings[i]) &gt; 0) {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; tk = g_strsplit(settings[i], <span class="stringliteral">&quot;=&quot;</span>, 2);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">if</span> (tk[1] == NULL) {</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; read = getline(&amp;line, &amp;len, stdin);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">if</span> (read &gt; 0) {</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305">newline_remove</a>(line);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; value = line;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; g_print(<span class="stringliteral">&quot;Error: an extra line of standard input is needed\n&quot;</span>);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; abort = TRUE;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; }</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; value = tk[1];</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, tk[0], value);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; g_strfreev(tk);</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; }</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; }</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">if</span> (line) free(line);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">if</span> (!abort) <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(remminafile);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;}</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;</div><div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d"> 210</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d">remmina_exec_autostart_cb</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;{</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(remminafile, <span class="stringliteral">&quot;enable-autostart&quot;</span>, FALSE)) {</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; REMMINA_DEBUG (<span class="stringliteral">&quot;Profile %s is set to autostart&quot;</span>, remminafile-&gt;filename);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a>(remminafile-&gt;filename);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; }</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;}</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;</div><div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="remmina__exec_8c.html#ad4535dd84752c2943b8fb996ffcbcb58"> 221</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__exec_8c.html#ad4535dd84752c2943b8fb996ffcbcb58">remmina_exec_connect</a>(<span class="keyword">const</span> gchar *data)</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;{</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; gchar *protocol;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; gchar **protocolserver;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; gchar *server;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; gchar **userat;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; gchar **userpass;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; gchar *user;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; gchar *password;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; gchar **domainuser;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; gchar **serverquery;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; gchar **querystring;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; gchar **querystringpart;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; gchar **querystringpartkv;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; gchar *value;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; gchar *temp;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; protocol = NULL;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">if</span> (strncmp(<span class="stringliteral">&quot;rdp://&quot;</span>, data, 6) == 0 || strncmp(<span class="stringliteral">&quot;RDP://&quot;</span>, data, 6) == 0)</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; protocol = <span class="stringliteral">&quot;RDP&quot;</span>;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strncmp(<span class="stringliteral">&quot;vnc://&quot;</span>, data, 6) == 0 || strncmp(<span class="stringliteral">&quot;VNC://&quot;</span>, data, 6) == 0)</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; protocol = <span class="stringliteral">&quot;VNC&quot;</span>;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strncmp(<span class="stringliteral">&quot;ssh://&quot;</span>, data, 6) == 0 || strncmp(<span class="stringliteral">&quot;SSH://&quot;</span>, data, 6) == 0)</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; protocol = <span class="stringliteral">&quot;SSH&quot;</span>;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strncmp(<span class="stringliteral">&quot;spice://&quot;</span>, data, 8) == 0 || strncmp(<span class="stringliteral">&quot;SPICE://&quot;</span>, data, 8) == 0)</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; protocol = <span class="stringliteral">&quot;SPICE&quot;</span>;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">if</span> (strncmp(<span class="stringliteral">&quot;file://&quot;</span>, data, 6) == 0) {</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; gchar *filename = g_filename_from_uri (data, NULL, &amp;error);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">if</span> (filename != NULL) {</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="code" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a>(filename);</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; REMMINA_DEBUG (<span class="stringliteral">&quot;Opening URI %s failed with error %s&quot;</span>, data, error-&gt;message);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; g_error_free(error);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; }</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">if</span> (protocol == NULL) {</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a>(data);</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; }</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; protocolserver = g_strsplit(data, <span class="stringliteral">&quot;://&quot;</span>, 2);</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; server = g_strdup(protocolserver[1]);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="comment">// Support loading .remmina files using handler</span></div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">if</span> ((temp = strrchr(server, <span class="charliteral">&#39;.&#39;</span>)) != NULL &amp;&amp; g_strcmp0(temp + 1, <span class="stringliteral">&quot;remmina&quot;</span>) == 0) {</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; g_strfreev(protocolserver);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; temp = g_uri_unescape_string(server, NULL);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; g_free(server);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; server = temp;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <a class="code" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a>(server);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; }</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a>();</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="comment">// Check for username@server</span></div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">if</span> ((strcmp(protocol, <span class="stringliteral">&quot;RDP&quot;</span>) == 0 || strcmp(protocol, <span class="stringliteral">&quot;VNC&quot;</span>) == 0 || strcmp(protocol, <span class="stringliteral">&quot;SSH&quot;</span>) == 0) &amp;&amp; strstr(server, <span class="stringliteral">&quot;@&quot;</span>) != NULL) {</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; userat = g_strsplit(server, <span class="stringliteral">&quot;@&quot;</span>, 2);</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="comment">// Check for username:password</span></div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">if</span> (strstr(userat[0], <span class="stringliteral">&quot;:&quot;</span>) != NULL) {</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; userpass = g_strsplit(userat[0], <span class="stringliteral">&quot;:&quot;</span>, 2);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; user = g_uri_unescape_string(userpass[0], NULL);</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; password = g_uri_unescape_string(userpass[1], NULL);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="comment">// Try to decrypt the password field if it contains =</span></div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; temp = password != NULL &amp;&amp; strrchr(password, <span class="charliteral">&#39;=&#39;</span>) != NULL ? <a class="code" href="remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9">remmina_crypt_decrypt</a>(password) : NULL;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">if</span> (temp != NULL) {</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; g_free(password);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; password = temp;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, password);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; g_free(password);</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; g_strfreev(userpass);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; user = g_uri_unescape_string(userat[0], NULL);</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; }</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="comment">// Check for domain\user for RDP connections</span></div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">if</span> (strcmp(protocol, <span class="stringliteral">&quot;RDP&quot;</span>) == 0 &amp;&amp; strstr(user, <span class="stringliteral">&quot;\\&quot;</span>) != NULL) {</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; domainuser = g_strsplit(user, <span class="stringliteral">&quot;\\&quot;</span>, 2);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;domain&quot;</span>, domainuser[0]);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; g_free(user);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; user = g_strdup(domainuser[1]);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; }</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, user);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; g_free(user);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; g_free(server);</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; server = g_strdup(userat[1]);</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; g_strfreev(userat);</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; }</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">if</span> (strcmp(protocol, <span class="stringliteral">&quot;VNC&quot;</span>) == 0 &amp;&amp; strstr(server, <span class="stringliteral">&quot;?&quot;</span>) != NULL) {</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="comment">// https://tools.ietf.org/html/rfc7869</span></div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="comment">// VncUsername, VncPassword and ColorLevel supported for vnc-params</span></div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="comment">// Check for query string parameters</span></div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; serverquery = g_strsplit(server, <span class="stringliteral">&quot;?&quot;</span>, 2);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; querystring = g_strsplit(serverquery[1], <span class="stringliteral">&quot;&amp;&quot;</span>, -1);</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">for</span> (querystringpart = querystring; *querystringpart; querystringpart++) {</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">if</span> (strstr(*querystringpart, <span class="stringliteral">&quot;=&quot;</span>) == NULL)</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; querystringpartkv = g_strsplit(*querystringpart, <span class="stringliteral">&quot;=&quot;</span>, 2);</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; value = g_uri_unescape_string(querystringpartkv[1], NULL);</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">if</span> (strcmp(querystringpartkv[0], <span class="stringliteral">&quot;VncPassword&quot;</span>) == 0) {</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="comment">// Try to decrypt password field if it contains =</span></div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; temp = value != NULL &amp;&amp; strrchr(value, <span class="charliteral">&#39;=&#39;</span>) != NULL ? <a class="code" href="remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9">remmina_crypt_decrypt</a>(value) : NULL;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">if</span> (temp != NULL) {</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; g_free(value);</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; value = temp;</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; }</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, value);</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(querystringpartkv[0], <span class="stringliteral">&quot;VncUsername&quot;</span>) == 0) {</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, value);</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(querystringpartkv[0], <span class="stringliteral">&quot;ColorLevel&quot;</span>) == 0) {</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;colordepth&quot;</span>, value);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; }</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; g_free(value);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; g_strfreev(querystringpartkv);</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; }</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; g_strfreev(querystring);</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; g_free(server);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; server = g_strdup(serverquery[0]);</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; g_strfreev(serverquery);</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; }</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="comment">// Unescape server</span></div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; temp = g_uri_unescape_string(server, NULL);</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; g_free(server);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; server = temp;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>, server);</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>, server);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;sound&quot;</span>, <span class="stringliteral">&quot;off&quot;</span>);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>, protocol);</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; g_free(server);</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; g_strfreev(protocolserver);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <a class="code" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a>(remminafile);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160;}</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160;</div><div class="line"><a name="l00368"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7"> 368</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">RemminaCommandType</a> command, <span class="keyword">const</span> gchar* data)</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;{</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; gchar *s1;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; gchar *s2;</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; gchar *temp;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; GtkWindow *mainwindow;</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; GtkWidget *prefdialog;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <a class="code" href="struct___remmina_entry_plugin.html">RemminaEntryPlugin</a> *plugin;</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordtype">int</span> ch;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; mainwindow = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">switch</span> (command) {</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8">REMMINA_COMMAND_AUTOSTART</a>:</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a>((GFunc)<a class="code" href="remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d">remmina_exec_autostart_cb</a>, NULL);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a>:</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">if</span> (mainwindow) {</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; gtk_window_present(mainwindow);</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; gtk_window_deiconify(GTK_WINDOW(mainwindow));</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; widget = <a class="code" href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main_new</a>();</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; }</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">REMMINA_COMMAND_PREF</a>:</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(mainwindow) == 0)</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; prefdialog = <a class="code" href="remmina__pref__dialog_8c.html#a9f24dad52fd8f57961ac7c5df58f251e">remmina_pref_dialog_get_dialog</a>();</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">if</span> (prefdialog) {</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; gtk_window_present(GTK_WINDOW(prefdialog));</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; gtk_window_deiconify(GTK_WINDOW(prefdialog));</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="comment">/* Create a new preference dialog */</span></div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; widget = <a class="code" href="remmina__pref__dialog_8c.html#ab09f64d25a5a016281a56edca7e2d70a">remmina_pref_dialog_new</a>(atoi(data), NULL);</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; }</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a>:</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>))</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(mainwindow) == 0)</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; s1 = (data ? strchr(data, <span class="charliteral">&#39;,&#39;</span>) : NULL);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">if</span> (s1) {</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; s1 = g_strdup(data);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; s2 = strchr(s1, <span class="charliteral">&#39;,&#39;</span>);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; *s2++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor_new_full</a>(s2, s1);</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; g_free(s1);</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor_new_full</a>(NULL, data);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; }</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a>:</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; REMMINA_DEBUG (<span class="stringliteral">&quot;Initiating connection&quot;</span>);</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_connect&quot;</span>)</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>))</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(mainwindow) == 0)</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <a class="code" href="remmina__exec_8c.html#ad4535dd84752c2943b8fb996ffcbcb58">remmina_exec_connect</a>(data);</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">REMMINA_COMMAND_EDIT</a>:</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>))</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(mainwindow) == 0)</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor_new_from_filename</a>(data);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">if</span> (widget)</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">REMMINA_COMMAND_ABOUT</a>:</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <a class="code" href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about_open</a>(NULL);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06">REMMINA_COMMAND_VERSION</a>:</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; mainwindow = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="keywordflow">if</span> (mainwindow) {</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about_open</a>(NULL);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; g_print(<span class="stringliteral">&quot;%s %s %s (git %s)\n&quot;</span>, g_get_application_name(), ISSNAP, VERSION, REMMINA_GIT_REVISION);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <span class="comment">/* As we do not use the &quot;handle-local-options&quot; signal, we have to exit Remmina */</span></div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a">REMMINA_COMMAND_EXIT</a>, NULL);</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; }</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885">REMMINA_COMMAND_FULL_VERSION</a>:</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; mainwindow = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordflow">if</span> (mainwindow) {</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="comment">/* Show th widget with the list of plugins and versions */</span></div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager_show</a>(mainwindow);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; g_print(<span class="stringliteral">&quot;\n%s %s %s (git %s)\n\n&quot;</span>, g_get_application_name(), ISSNAP, VERSION, REMMINA_GIT_REVISION);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager_show_stdout</a>();</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; g_print(<span class="stringliteral">&quot;\n%s\n&quot;</span>, <a class="code" href="remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3">remmina_exec_get_build_config</a>());</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a">REMMINA_COMMAND_EXIT</a>, NULL);</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; }</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad">REMMINA_COMMAND_PLUGIN</a>:</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; plugin = (<a class="code" href="struct___remmina_entry_plugin.html">RemminaEntryPlugin</a>*)<a class="code" href="remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager_get_plugin</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">REMMINA_PLUGIN_TYPE_ENTRY</a>, data);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">if</span> (plugin) {</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; plugin-&gt;<a class="code" href="struct___remmina_entry_plugin.html#afb2a9a6ff9289c08eccaaec0962f3c19">entry_func</a>(plugin);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; widget = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; _(<span class="stringliteral">&quot;Plugin %s is not registered.&quot;</span>), data);</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(gtk_widget_destroy), NULL);</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>(widget);</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; }</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab4e4dc22219fe0323279276222efb0b5">REMMINA_COMMAND_ENCRYPT_PASSWORD</a>:</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; i = 0;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; g_print(<span class="stringliteral">&quot;Enter the password you want to encrypt: &quot;</span>);</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; temp = (<span class="keywordtype">char</span> *)g_malloc(255 * <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>));</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <span class="keywordflow">while</span> ((ch = getchar()) != EOF &amp;&amp; ch != <span class="charliteral">&#39;\n&#39;</span>) {</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keywordflow">if</span> (i &lt; 254) {</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; temp[i] = ch;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; i++;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; }</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; }</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; temp[i] = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; s1 = <a class="code" href="remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1">remmina_crypt_encrypt</a>(temp);</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; s2 = g_uri_escape_string(s1, NULL, TRUE);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; g_print(<span class="stringliteral">&quot;\nEncrypted password: %s\n\n&quot;</span>, s1);</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; g_print(<span class="stringliteral">&quot;Usage:\n&quot;</span>);</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; g_print(<span class="stringliteral">&quot;rdp://username:%s@server\n&quot;</span>, s1);</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; g_print(<span class="stringliteral">&quot;vnc://username:%s@server\n&quot;</span>, s1);</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; g_print(<span class="stringliteral">&quot;vnc://server?VncUsername=user\\&amp;VncPassword=%s\n&quot;</span>, s2);</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; g_free(s1);</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; g_free(s2);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; g_free(temp);</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>();</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160;</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a">REMMINA_COMMAND_EXIT</a>:</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a>(<a class="code" href="remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f">disable_rcw_delete_confirm_cb</a>, NULL);</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>();</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160;</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; }</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;}</div><div class="ttc" id="remmina__exec_8c_html_a4e202866339a104ffdbfa519cfbcdca9"><div class="ttname"><a href="remmina__exec_8c.html#a4e202866339a104ffdbfa519cfbcdca9">remmina_exec_set_setting</a></div><div class="ttdeci">int remmina_exec_set_setting(gchar *profilefilename, gchar **settings)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00166">remmina_exec.c:166</a></div></div>
<div class="ttc" id="remmina__plugin__manager_8h_html"><div class="ttname"><a href="remmina__plugin__manager_8h.html">remmina_plugin_manager.h</a></div></div>
<div class="ttc" id="remmina__exec_8h_html_ae9dfd6986f18cb3d846a4933ac792fd5"><div class="ttname"><a href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">RemminaCondExitType</a></div><div class="ttdeci">RemminaCondExitType</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00058">remmina_exec.h:58</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01716">remmina_main.c:1716</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01718">remmina_main.c:1718</a></div></div>
<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885">REMMINA_COMMAND_FULL_VERSION</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00051">remmina_exec.h:51</a></div></div>
<div class="ttc" id="remmina__file__manager_8h_html"><div class="ttname"><a href="remmina__file__manager_8h.html">remmina_file_manager.h</a></div></div>
<div class="ttc" id="remmina__crypt_8c_html_a3fe2fa245d401146adf02a3a8f996ab9"><div class="ttname"><a href="remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9">remmina_crypt_decrypt</a></div><div class="ttdeci">gchar * remmina_crypt_decrypt(const gchar *str)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__crypt_8c_source.html#l00134">remmina_crypt.c:134</a></div></div>
@@ -105,7 +105,7 @@ $(document).ready(function(){initNavTree('remmina__exec_8c_source.html','');});
<div class="ttc" id="remmina__about_8h_html"><div class="ttname"><a href="remmina__about_8h.html">remmina_about.h</a></div></div>
<div class="ttc" id="remmina__icon_8c_html_a42f087b679b43b8a1d36cd9e9781a8b6"><div class="ttname"><a href="remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon_is_available</a></div><div class="ttdeci">gboolean remmina_icon_is_available(void)</div><div class="ttdoc">Determine whenever the Remmina icon is available. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00318">remmina_icon.c:318</a></div></div>
<div class="ttc" id="remmina__file__editor_8c_html_ab563344276cbcdf0fcea05b0b64c7aeb"><div class="ttname"><a href="remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor_new_full</a></div><div class="ttdeci">GtkWidget * remmina_file_editor_new_full(const gchar *server, const gchar *protocol)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l02040">remmina_file_editor.c:2040</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_af14b1942a754d7b2f5c10266208ebe01"><div class="ttname"><a href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main_new</a></div><div class="ttdeci">GtkWidget * remmina_main_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01632">remmina_main.c:1632</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_af14b1942a754d7b2f5c10266208ebe01"><div class="ttname"><a href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main_new</a></div><div class="ttdeci">GtkWidget * remmina_main_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01634">remmina_main.c:1634</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a009f32092bd1d8dcd8e783d25416f3df"><div class="ttname"><a href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main_save_before_destroy</a></div><div class="ttdeci">void remmina_main_save_before_destroy()</div><div class="ttdoc">Save the Remmina Main Window size and the expanded group before to close Remmina. ...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00180">remmina_main.c:180</a></div></div>
<div class="ttc" id="remmina__exec_8c_html_a93f5633a6348dc1df1a5723b3054a2a3"><div class="ttname"><a href="remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3">remmina_exec_get_build_config</a></div><div class="ttdeci">const gchar * remmina_exec_get_build_config(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00078">remmina_exec.c:78</a></div></div>
<div class="ttc" id="remmina__main_8h_html"><div class="ttname"><a href="remmina__main_8h.html">remmina_main.h</a></div></div>
diff --git a/public/remmina__file_8c_source.html b/public/remmina__file_8c_source.html
index 1e91d358e..012815b5d 100644
--- a/public/remmina__file_8c_source.html
+++ b/public/remmina__file_8c_source.html
@@ -122,7 +122,7 @@ $(document).ready(function(){initNavTree('remmina__file_8c_source.html','');});
<div class="ttc" id="struct___remmina_secret_plugin_html"><div class="ttname"><a href="struct___remmina_secret_plugin.html">_RemminaSecretPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00135">plugin.h:135</a></div></div>
<div class="ttc" id="remmina__file_8c_html_afd8b12f3d84b4e201b9f465d5b8e0d03"><div class="ttname"><a href="remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file_format_properties</a></div><div class="ttdeci">gchar * remmina_file_format_properties(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00561">remmina_file.c:561</a></div></div>
<div class="ttc" id="remmina__file_8c_html_a1399e5b83aa040b6613cf98be45b4c99"><div class="ttname"><a href="remmina__file_8c.html#a1399e5b83aa040b6613cf98be45b4c99">find_protocol_setting</a></div><div class="ttdeci">const RemminaProtocolSetting * find_protocol_setting(const gchar *name, RemminaProtocolPlugin *protocol_plugin)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00235">remmina_file.c:235</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a5ae0372dafe41f96a09097c07d1b270a"><div class="ttname"><a href="remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a></div><div class="ttdeci">void remmina_main_update_file_datetime(RemminaFile *file)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01728">remmina_main.c:1728</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a5ae0372dafe41f96a09097c07d1b270a"><div class="ttname"><a href="remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a></div><div class="ttdeci">void remmina_main_update_file_datetime(RemminaFile *file)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01730">remmina_main.c:1730</a></div></div>
<div class="ttc" id="struct___remmina_protocol_plugin_html_a8a4c7d195e85a1428abf82e952ff4df3"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3">_RemminaProtocolPlugin::icon_name_ssh</a></div><div class="ttdeci">const gchar * icon_name_ssh</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00073">plugin.h:73</a></div></div>
<div class="ttc" id="remmina__file_8c_html_aba0aa663aaad89e4df41b42259d29841"><div class="ttname"><a href="remmina__file_8c.html#aba0aa663aaad89e4df41b42259d29841">remmina_file_get_state_int</a></div><div class="ttdeci">gint remmina_file_get_state_int(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00615">remmina_file.c:615</a></div></div>
<div class="ttc" id="remmina__file_8c_html_a493ffa77b862ff3bad9ea951592715a8"><div class="ttname"><a href="remmina__file_8c.html#a493ffa77b862ff3bad9ea951592715a8">remmina_file_state_last_success</a></div><div class="ttdeci">void remmina_file_state_last_success(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00946">remmina_file.c:946</a></div></div>
@@ -135,7 +135,7 @@ $(document).ready(function(){initNavTree('remmina__file_8c_source.html','');});
<div class="ttc" id="remmina__log_8h_html"><div class="ttname"><a href="remmina__log_8h.html">remmina_log.h</a></div></div>
<div class="ttc" id="remmina__crypt_8c_html_aa02cf0fed3eb68d6a89815c3ba3bf7b1"><div class="ttname"><a href="remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1">remmina_crypt_encrypt</a></div><div class="ttdeci">gchar * remmina_crypt_encrypt(const gchar *str)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__crypt_8c_source.html#l00093">remmina_crypt.c:93</a></div></div>
<div class="ttc" id="remmina__file_8c_html_ad2cf2ab34ab748bb984005fdd579d113"><div class="ttname"><a href="remmina__file_8c.html#ad2cf2ab34ab748bb984005fdd579d113">remmina_file_get_state_double</a></div><div class="ttdeci">gdouble remmina_file_get_state_double(RemminaFile *remminafile, const gchar *setting, gdouble default_value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00655">remmina_file.c:655</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_ad99b9c0bf2fa8c166a8b4a09e06ffdf7"><div class="ttname"><a href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a></div><div class="ttdeci">void remmina_main_show_warning_dialog(const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01745">remmina_main.c:1745</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ad99b9c0bf2fa8c166a8b4a09e06ffdf7"><div class="ttname"><a href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a></div><div class="ttdeci">void remmina_main_show_warning_dialog(const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01747">remmina_main.c:1747</a></div></div>
<div class="ttc" id="remmina__pref_8h_html_ab48899087cc647f0f791ed0c459adc53a0378e0f09c7bc6fd7f8d95b3827ad561"><div class="ttname"><a href="remmina__pref_8h.html#ab48899087cc647f0f791ed0c459adc53a0378e0f09c7bc6fd7f8d95b3827ad561">RM_ENC_MODE_SODIUM_SENSITIVE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00095">remmina_pref.h:95</a></div></div>
<div class="ttc" id="remmina__file_8c_html_af153b0d289ac93f6ecdaa15d5f3b9b8c"><div class="ttname"><a href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a></div><div class="ttdeci">void remmina_file_set_int(RemminaFile *remminafile, const gchar *setting, gint value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00585">remmina_file.c:585</a></div></div>
<div class="ttc" id="remmina__file_8c_html_a89ec355adbf6e03ad16d7faf810af46f"><div class="ttname"><a href="remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f">remmina_file_get_keyfile</a></div><div class="ttdeci">static GKeyFile * remmina_file_get_keyfile(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00680">remmina_file.c:680</a></div></div>
diff --git a/public/remmina__file__editor_8c_source.html b/public/remmina__file__editor_8c_source.html
index 12d7bf00c..7a334ebe7 100644
--- a/public/remmina__file__editor_8c_source.html
+++ b/public/remmina__file__editor_8c_source.html
@@ -106,7 +106,7 @@ $(document).ready(function(){initNavTree('remmina__file__editor_8c_source.html',
<div class="ttc" id="remmina__file__editor_8c_html_a73b8581fd1fd77532b748d91a2951f25"><div class="ttname"><a href="remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25">remmina_file_editor_on_connect</a></div><div class="ttdeci">static void remmina_file_editor_on_connect(GtkWidget *button, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01744">remmina_file_editor.c:1744</a></div></div>
<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00109">types.h:109</a></div></div>
<div class="ttc" id="rcw_8c_html_af657fd4825d16d8d003a8b42fbd0c715"><div class="ttname"><a href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a></div><div class="ttdeci">gchar * remmina_pref_file</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00078">rcw.c:78</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01716">remmina_main.c:1716</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01718">remmina_main.c:1718</a></div></div>
<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">REMMINA_PROTOCOL_SETTING_TYPE_FOLDER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00111">types.h:111</a></div></div>
<div class="ttc" id="remmina__string__list_8c_html_a500b85eafd23280f998d2980d1eba80e"><div class="ttname"><a href="remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list_set_validation_func</a></div><div class="ttdeci">void remmina_string_list_set_validation_func(RemminaStringListValidationFunc func)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00247">remmina_string_list.c:247</a></div></div>
<div class="ttc" id="remmina__file__editor_8c_html_abb7466f51c11427405a54c94767a52de"><div class="ttname"><a href="remmina__file__editor_8c.html#abb7466f51c11427405a54c94767a52de">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaFileEditor, remmina_file_editor, GTK_TYPE_DIALOG)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00058">remmina_file_editor.c:58</a></div></div>
diff --git a/public/remmina__main_8c.html b/public/remmina__main_8c.html
index 40c1d1c9e..64a3eef00 100644
--- a/public/remmina__main_8c.html
+++ b/public/remmina__main_8c.html
@@ -342,7 +342,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01312">1312</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01315">1315</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -386,7 +386,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01201">1201</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01204">1204</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -430,7 +430,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01532">1532</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01534">1534</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -638,7 +638,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01448">1448</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01450">1450</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -674,7 +674,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01471">1471</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01473">1473</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -716,7 +716,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01430">1430</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01432">1432</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -818,7 +818,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01716">1716</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01718">1718</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -866,7 +866,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01158">1158</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01161">1161</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -895,7 +895,7 @@ Variables</h2></td></tr>
</div><div class="memdoc">
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000007">Todo:</a></b></dt><dd>Set entry_quick_connect_server as default search entry. Weirdly. This does not work yet. </dd></dl>
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01551">1551</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01553">1553</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1170,7 +1170,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01632">1632</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01634">1634</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1226,7 +1226,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01417">1417</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01419">1419</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1262,7 +1262,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01306">1306</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01309">1309</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1298,7 +1298,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01260">1260</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01263">1263</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1334,7 +1334,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01112">1112</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01115">1115</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1406,7 +1406,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01254">1254</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01257">1257</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1442,7 +1442,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01086">1086</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01091">1091</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1478,7 +1478,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01140">1140</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01143">1143</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1514,7 +1514,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01393">1393</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01396">1396</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1802,7 +1802,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01423">1423</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01425">1425</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1838,7 +1838,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01288">1288</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01291">1291</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1874,7 +1874,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01300">1300</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01303">1303</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1910,7 +1910,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01294">1294</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01297">1297</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1946,7 +1946,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01276">1276</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01279">1279</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1982,7 +1982,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01282">1282</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01285">1285</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2018,7 +2018,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01399">1399</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01402">1402</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2054,7 +2054,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01225">1225</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01228">1228</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2090,7 +2090,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01213">1213</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01216">1216</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2109,7 +2109,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01148">1148</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01151">1151</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2233,7 +2233,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01513">1513</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01515">1515</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2263,7 +2263,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01623">1623</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01625">1625</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2318,7 +2318,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01544">1544</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01546">1546</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2348,7 +2348,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01387">1387</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01390">1390</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2378,7 +2378,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01493">1493</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01495">1495</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2420,7 +2420,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01486">1486</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01488">1488</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2448,7 +2448,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01324">1324</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01327">1327</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2478,7 +2478,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01378">1378</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01381">1381</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2786,7 +2786,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01735">1735</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01737">1737</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2833,7 +2833,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01745">1745</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01747">1747</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2903,7 +2903,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01728">1728</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01730">1730</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -2927,18 +2927,18 @@ Variables</h2></td></tr>
</tr>
</table>
</div><div class="memdoc">
-<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> { <span class="stringliteral">&quot;about&quot;</span>, <a class="code" href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;default&quot;</span>, <a class="code" href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;mpchange&quot;</span>, <a class="code" href="remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;plugins&quot;</span>, <a class="code" href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;preferences&quot;</span>, <a class="code" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>, <span class="stringliteral">&quot;i&quot;</span>, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;dark&quot;</span>, <a class="code" href="remmina__main_8c.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;debug&quot;</span>, <a class="code" href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;community&quot;</span>, <a class="code" href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;donations&quot;</span>, <a class="code" href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;homepage&quot;</span>, <a class="code" href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;wiki&quot;</span>, <a class="code" href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;quit&quot;</span>, <a class="code" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a>, NULL, NULL, NULL },</div><div class="line">}</div><div class="ttc" id="remmina__main_8c_html_a7049d977154921f651cc1538f59c5b7a"><div class="ttname"><a href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a></div><div class="ttdeci">void remmina_main_on_action_help_homepage(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01276">remmina_main.c:1276</a></div></div>
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> { <span class="stringliteral">&quot;about&quot;</span>, <a class="code" href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;default&quot;</span>, <a class="code" href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;mpchange&quot;</span>, <a class="code" href="remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;plugins&quot;</span>, <a class="code" href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;preferences&quot;</span>, <a class="code" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>, <span class="stringliteral">&quot;i&quot;</span>, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;dark&quot;</span>, <a class="code" href="remmina__main_8c.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;debug&quot;</span>, <a class="code" href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;community&quot;</span>, <a class="code" href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;donations&quot;</span>, <a class="code" href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;homepage&quot;</span>, <a class="code" href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;wiki&quot;</span>, <a class="code" href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;quit&quot;</span>, <a class="code" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a>, NULL, NULL, NULL },</div><div class="line">}</div><div class="ttc" id="remmina__main_8c_html_a7049d977154921f651cc1538f59c5b7a"><div class="ttname"><a href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a></div><div class="ttdeci">void remmina_main_on_action_help_homepage(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01279">remmina_main.c:1279</a></div></div>
<div class="ttc" id="remmina__main_8c_html_abf51d42fa2c5ce84164b5514b4634229"><div class="ttname"><a href="remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a></div><div class="ttdeci">void remmina_main_on_action_application_mpchange(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00814">remmina_main.c:814</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a5db4436cc72b9d5ea3e498f8519efecc"><div class="ttname"><a href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a></div><div class="ttdeci">void remmina_main_on_action_help_debug(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01300">remmina_main.c:1300</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a0c32fe66988056b353220128611b9116"><div class="ttname"><a href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a></div><div class="ttdeci">void remmina_main_on_action_help_wiki(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01282">remmina_main.c:1282</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a05dbb6ce820f3a137949b919d0efa6a1"><div class="ttname"><a href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a></div><div class="ttdeci">void remmina_main_on_action_application_default(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01112">remmina_main.c:1112</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a2704d643ee15702a84a1c76219dd5277"><div class="ttname"><a href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a></div><div class="ttdeci">void remmina_main_on_action_help_donations(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01294">remmina_main.c:1294</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a6ed9f6a588a2d9e3a6cf6884c8d07f92"><div class="ttname"><a href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a></div><div class="ttdeci">void remmina_main_on_action_application_preferences(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01086">remmina_main.c:1086</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_aac3aa116a8d8b527f1aa61b7395b4b32"><div class="ttname"><a href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a></div><div class="ttdeci">void remmina_main_on_action_help_community(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01288">remmina_main.c:1288</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a91f22c2834ac7f38d201d8d678f8c57b"><div class="ttname"><a href="remmina__main_8c.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a></div><div class="ttdeci">void remmina_main_on_action_application_dark_theme(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01260">remmina_main.c:1260</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a5445e5568a6fc04d08b620829a59334a"><div class="ttname"><a href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a></div><div class="ttdeci">void remmina_main_on_action_application_quit(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01140">remmina_main.c:1140</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_aac0bb51159be042fecab0103e73a54dc"><div class="ttname"><a href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a></div><div class="ttdeci">void remmina_main_on_action_application_about(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01306">remmina_main.c:1306</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_adf59ad5b0a0ef68e58bbea3701929efc"><div class="ttname"><a href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a></div><div class="ttdeci">void remmina_main_on_action_application_plugins(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01254">remmina_main.c:1254</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a5db4436cc72b9d5ea3e498f8519efecc"><div class="ttname"><a href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a></div><div class="ttdeci">void remmina_main_on_action_help_debug(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01303">remmina_main.c:1303</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a0c32fe66988056b353220128611b9116"><div class="ttname"><a href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a></div><div class="ttdeci">void remmina_main_on_action_help_wiki(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01285">remmina_main.c:1285</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a05dbb6ce820f3a137949b919d0efa6a1"><div class="ttname"><a href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a></div><div class="ttdeci">void remmina_main_on_action_application_default(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01115">remmina_main.c:1115</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a2704d643ee15702a84a1c76219dd5277"><div class="ttname"><a href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a></div><div class="ttdeci">void remmina_main_on_action_help_donations(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01297">remmina_main.c:1297</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a6ed9f6a588a2d9e3a6cf6884c8d07f92"><div class="ttname"><a href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a></div><div class="ttdeci">void remmina_main_on_action_application_preferences(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01091">remmina_main.c:1091</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_aac3aa116a8d8b527f1aa61b7395b4b32"><div class="ttname"><a href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a></div><div class="ttdeci">void remmina_main_on_action_help_community(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01291">remmina_main.c:1291</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a91f22c2834ac7f38d201d8d678f8c57b"><div class="ttname"><a href="remmina__main_8c.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a></div><div class="ttdeci">void remmina_main_on_action_application_dark_theme(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01263">remmina_main.c:1263</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a5445e5568a6fc04d08b620829a59334a"><div class="ttname"><a href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a></div><div class="ttdeci">void remmina_main_on_action_application_quit(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01143">remmina_main.c:1143</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_aac0bb51159be042fecab0103e73a54dc"><div class="ttname"><a href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a></div><div class="ttdeci">void remmina_main_on_action_application_about(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01309">remmina_main.c:1309</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_adf59ad5b0a0ef68e58bbea3701929efc"><div class="ttname"><a href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a></div><div class="ttdeci">void remmina_main_on_action_application_plugins(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01257">remmina_main.c:1257</a></div></div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00096">96</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
@@ -2964,17 +2964,17 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> { <span class="stringliteral">&quot;connect&quot;</span>, <a class="code" href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;copy&quot;</span>, <a class="code" href="remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;delete&quot;</span>, <a class="code" href="remmina__main_8c.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;delete_multiple&quot;</span>, <a class="code" href="remmina__main_8c.html#af56bada711b2fc9c50af83b8b62dfe8b">remmina_main_on_action_connection_delete_multiple</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;edit&quot;</span>, <a class="code" href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;exttools&quot;</span>, <a class="code" href="remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main_on_action_connection_external_tools</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;new&quot;</span>, <a class="code" href="remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;export&quot;</span>, <a class="code" href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;import&quot;</span>, <a class="code" href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;expand&quot;</span>, <a class="code" href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;collapse&quot;</span>, <a class="code" href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a>, NULL, NULL, NULL },</div><div class="line"> { <span class="stringliteral">&quot;search&quot;</span>, <a class="code" href="remmina__main_8c.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a>, NULL, NULL, NULL },</div><div class="line">}</div><div class="ttc" id="remmina__main_8c_html_a6b30ed832369f3a7153aa63f98873c9d"><div class="ttname"><a href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a></div><div class="ttdeci">void remmina_main_on_action_connection_connect(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00768">remmina_main.c:768</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a4b4f0bbdb9e487d6c3809e8a57dc1d1c"><div class="ttname"><a href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a></div><div class="ttdeci">void remmina_main_on_action_tools_import(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01213">remmina_main.c:1213</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a4b4f0bbdb9e487d6c3809e8a57dc1d1c"><div class="ttname"><a href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a></div><div class="ttdeci">void remmina_main_on_action_tools_import(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01216">remmina_main.c:1216</a></div></div>
<div class="ttc" id="remmina__main_8c_html_af56bada711b2fc9c50af83b8b62dfe8b"><div class="ttname"><a href="remmina__main_8c.html#af56bada711b2fc9c50af83b8b62dfe8b">remmina_main_on_action_connection_delete_multiple</a></div><div class="ttdeci">void remmina_main_on_action_connection_delete_multiple(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01011">remmina_main.c:1011</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a44eb44c6391f53a19c6f1fdf9a39a8c1"><div class="ttname"><a href="remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a></div><div class="ttdeci">void remmina_main_on_action_connection_copy(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00910">remmina_main.c:910</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a0edcc1d7dc3adcbb7bb36aa0f62dec3a"><div class="ttname"><a href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a></div><div class="ttdeci">void remmina_main_on_action_collapse(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01393">remmina_main.c:1393</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a0edcc1d7dc3adcbb7bb36aa0f62dec3a"><div class="ttname"><a href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a></div><div class="ttdeci">void remmina_main_on_action_collapse(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01396">remmina_main.c:1396</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a52cc21537ff003b9d0fbdb9040c811af"><div class="ttname"><a href="remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a></div><div class="ttdeci">void remmina_main_on_action_connection_new(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00851">remmina_main.c:851</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a10e574723222f5df9db456977e62a093"><div class="ttname"><a href="remmina__main_8c.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a></div><div class="ttdeci">void remmina_main_on_action_connection_delete(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00977">remmina_main.c:977</a></div></div>
<div class="ttc" id="remmina__main_8c_html_abcf8bd8ca57b389264ff9739a61efdc1"><div class="ttname"><a href="remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main_on_action_connection_external_tools</a></div><div class="ttdeci">void remmina_main_on_action_connection_external_tools(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00796">remmina_main.c:796</a></div></div>
<div class="ttc" id="remmina__main_8c_html_adfbfc580d25b58d09770a7d33ffe03cc"><div class="ttname"><a href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a></div><div class="ttdeci">void remmina_main_on_action_connection_edit(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00946">remmina_main.c:946</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_ab98d51c96a87fddaa2d5d6d4614bafa8"><div class="ttname"><a href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a></div><div class="ttdeci">void remmina_main_on_action_expand(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01423">remmina_main.c:1423</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a9896df7a92402b5a61e58420235c515a"><div class="ttname"><a href="remmina__main_8c.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a></div><div class="ttdeci">void remmina_main_on_action_search_toggle(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01399">remmina_main.c:1399</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_ab203476099a5ad6e889f91c8e05d577d"><div class="ttname"><a href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a></div><div class="ttdeci">void remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01225">remmina_main.c:1225</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab98d51c96a87fddaa2d5d6d4614bafa8"><div class="ttname"><a href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a></div><div class="ttdeci">void remmina_main_on_action_expand(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01425">remmina_main.c:1425</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a9896df7a92402b5a61e58420235c515a"><div class="ttname"><a href="remmina__main_8c.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a></div><div class="ttdeci">void remmina_main_on_action_search_toggle(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01402">remmina_main.c:1402</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab203476099a5ad6e889f91c8e05d577d"><div class="ttname"><a href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a></div><div class="ttdeci">void remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01228">remmina_main.c:1228</a></div></div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00111">111</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
diff --git a/public/remmina__main_8c_source.html b/public/remmina__main_8c_source.html
index c46d17d00..faa948a8b 100644
--- a/public/remmina__main_8c_source.html
+++ b/public/remmina__main_8c_source.html
@@ -86,7 +86,7 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="title">remmina_main.c</div> </div>
</div><!--header-->
<div class="contents">
-<a href="remmina__main_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Remmina - The GTK+ Remote Desktop Client</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2009-2011 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2014-2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Copyright (C) 2016-2022 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Copyright (C) 2022-2023 Antenore Gatta, Giovanni Panozzo, Hiroyuki Tanaka</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * it under the terms of the GNU General Public License as published by</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version of the file(s), but you are not obligated to do so. * If you</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;ctype.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;gio/gio.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifndef __APPLE__</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;gio/gdesktopappinfo.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina_8h.html">remmina.h</a>&quot;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__string__array_8h.html">remmina_string_array.h</a>&quot;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__public_8h.html">remmina_public.h</a>&quot;</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file_8h.html">remmina_file.h</a>&quot;</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file__manager_8h.html">remmina_file_manager.h</a>&quot;</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file__editor_8h.html">remmina_file_editor.h</a>&quot;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rcw_8h.html">rcw.h</a>&quot;</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__about_8h.html">remmina_about.h</a>&quot;</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__pref_8h.html">remmina_pref.h</a>&quot;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__pref__dialog_8h.html">remmina_pref_dialog.h</a>&quot;</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__widget__pool_8h.html">remmina_widget_pool.h</a>&quot;</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__plugin__manager_8h.html">remmina_plugin_manager.h</a>&quot;</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__log_8h.html">remmina_log.h</a>&quot;</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__icon_8h.html">remmina_icon.h</a>&quot;</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__main_8h.html">remmina_main.h</a>&quot;</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__exec_8h.html">remmina_exec.h</a>&quot;</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__mpchange_8h.html">remmina_mpchange.h</a>&quot;</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__external__tools_8h.html">remmina_external_tools.h</a>&quot;</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__unlock_8h.html">remmina_unlock.h</a>&quot;</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89"> 69</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_main.html">RemminaMain</a> *<a class="code" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89">remminamain</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#define RM_GET_OBJECT(object_name) gtk_builder_get_object(remminamain-&gt;builder, object_name)</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445"> 74</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>,</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c"> 75</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>,</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b"> 76</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>,</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f"> 77</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>,</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756"> 78</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>,</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb"> 79</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>,</div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d"> 80</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>,</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454"> 81</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a>,</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a348c0cf6892b36818d9825dddc25f8e3"> 82</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a348c0cf6892b36818d9825dddc25f8e3">NOTES_COLUMN</a>,</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ac70d28409ca79aa291cc0e58244f1fe4"> 83</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ac70d28409ca79aa291cc0e58244f1fe4">N_COLUMNS</a></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;};</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keyword">static</span></div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12"> 87</a></span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[] = {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/rdp&quot;</span>,</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/spice&quot;</span>,</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/vnc&quot;</span>,</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/remmina&quot;</span>,</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="stringliteral">&quot;application/x-remmina&quot;</span>,</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; NULL</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;};</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a923b3e2712d969eb59d9291e99f933e8"> 96</a></span>&#160;<span class="keyword">static</span> GActionEntry <a class="code" href="remmina__main_8c.html#a923b3e2712d969eb59d9291e99f933e8">app_actions</a>[] = {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; { <span class="stringliteral">&quot;about&quot;</span>, <a class="code" href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; { <span class="stringliteral">&quot;default&quot;</span>, <a class="code" href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; { <span class="stringliteral">&quot;mpchange&quot;</span>, <a class="code" href="remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; { <span class="stringliteral">&quot;plugins&quot;</span>, <a class="code" href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; { <span class="stringliteral">&quot;preferences&quot;</span>, <a class="code" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>, <span class="stringliteral">&quot;i&quot;</span>, NULL, NULL },</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; { <span class="stringliteral">&quot;dark&quot;</span>, <a class="code" href="remmina__main_8c.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; { <span class="stringliteral">&quot;debug&quot;</span>, <a class="code" href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; { <span class="stringliteral">&quot;community&quot;</span>, <a class="code" href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; { <span class="stringliteral">&quot;donations&quot;</span>, <a class="code" href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; { <span class="stringliteral">&quot;homepage&quot;</span>, <a class="code" href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; { <span class="stringliteral">&quot;wiki&quot;</span>, <a class="code" href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; { <span class="stringliteral">&quot;quit&quot;</span>, <a class="code" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;};</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3"> 111</a></span>&#160;<span class="keyword">static</span> GActionEntry <a class="code" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3">main_actions</a>[] = {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; { <span class="stringliteral">&quot;connect&quot;</span>, <a class="code" href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; { <span class="stringliteral">&quot;copy&quot;</span>, <a class="code" href="remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; { <span class="stringliteral">&quot;delete&quot;</span>, <a class="code" href="remmina__main_8c.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; { <span class="stringliteral">&quot;delete_multiple&quot;</span>, <a class="code" href="remmina__main_8c.html#af56bada711b2fc9c50af83b8b62dfe8b">remmina_main_on_action_connection_delete_multiple</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; { <span class="stringliteral">&quot;edit&quot;</span>, <a class="code" href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; { <span class="stringliteral">&quot;exttools&quot;</span>, <a class="code" href="remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main_on_action_connection_external_tools</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; { <span class="stringliteral">&quot;new&quot;</span>, <a class="code" href="remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; { <span class="stringliteral">&quot;export&quot;</span>, <a class="code" href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; { <span class="stringliteral">&quot;import&quot;</span>, <a class="code" href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; { <span class="stringliteral">&quot;expand&quot;</span>, <a class="code" href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; { <span class="stringliteral">&quot;collapse&quot;</span>, <a class="code" href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; { <span class="stringliteral">&quot;search&quot;</span>, <a class="code" href="remmina__main_8c.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;};</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda"> 126</a></span>&#160;<span class="keyword">static</span> GtkTargetEntry <a class="code" href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda">remmina_drop_types</a>[] =</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;{</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; { <span class="stringliteral">&quot;text/uri-list&quot;</span>, 0, 1 }</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;};</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c"> 131</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">char</span> *<a class="code" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a>[] =</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;{</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="stringliteral">&quot;RDP&quot;</span>, <span class="stringliteral">&quot;VNC&quot;</span>, <span class="stringliteral">&quot;SSH&quot;</span>, <span class="stringliteral">&quot;NX&quot;</span>, <span class="stringliteral">&quot;SPICE&quot;</span>, <span class="stringliteral">&quot;X2GO&quot;</span></div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;};</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee"> 139</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee">remmina_main_save_size</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;{</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span> ((gdk_window_get_state(gtk_widget_get_window(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>))) &amp; GDK_WINDOW_STATE_MAXIMIZED) == 0) {</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; gtk_window_get_size(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, &amp;<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">main_width</a>, &amp;<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">main_height</a>);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">main_maximize</a> = FALSE;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">main_maximize</a> = TRUE;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;}</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2"> 150</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2">remmina_main_save_expanded_group_func</a>(GtkTreeView *tree_view, GtkTreePath *path, gpointer user_data)</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;{</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; gchar *group;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; gtk_tree_model_get_iter(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter, path);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; gtk_tree_model_get(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group, -1);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">if</span> (group) {</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array_add</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>, group);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; g_free(group);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;}</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40"> 164</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main_save_expanded_group</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;{</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">if</span> (GTK_IS_TREE_STORE(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>)) {</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>)</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a> = <a class="code" href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a>();</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; gtk_tree_view_map_expanded_rows(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>,</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; (GtkTreeViewMappingFunc)<a class="code" href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2">remmina_main_save_expanded_group_func</a>, NULL);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;}</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5"> 180</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main_save_before_destroy</a>()</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;{</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">if</span> (!remminamain || !remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>)</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee">remmina_main_save_size</a>();</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="code" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main_save_expanded_group</a>();</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; g_free(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">expanded_group</a>);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">expanded_group</a> = <a class="code" href="remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array_to_string</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;}</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8"> 193</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c">remmina_main_destroy</a>()</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;{</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">if</span> (remminamain) {</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>)</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; gtk_widget_destroy(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>));</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; g_object_unref(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a>);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a> = NULL;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>)</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; g_object_unref(G_OBJECT(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>));</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; g_object_unref(G_OBJECT(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>));</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>);</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; g_free(remminamain);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; remminamain = NULL;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; }</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;}</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2"> 218</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2">remmina_main_dexit</a>(gpointer data)</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;{</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <a class="code" href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a>(<a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40">REMMINA_CONDEXIT_ONMAINWINDELETE</a>);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;}</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302"> 225</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302">remmina_main_on_delete_event</a>(GtkWidget *widget, GdkEvent *event, gpointer user_data)</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;{</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main_save_before_destroy</a>();</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; g_idle_add(<a class="code" href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2">remmina_main_dexit</a>, NULL);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;}</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div><div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a829d3ad1468d780380ae1ad693532e82"> 235</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#a829d3ad1468d780380ae1ad693532e82">remmina_main_idle_destroy</a>(gpointer data)</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;{</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">if</span> (remminamain)</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <a class="code" href="remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c">remmina_main_destroy</a>();</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;}</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a4d2d08c3fed3f72ea7f4c0600fec7ed5"> 248</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aeb74f36e5fd58ceab9f13a184bfb2029">remmina_main_on_destroy_event</a>()</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;{</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">if</span> (remminamain) {</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="comment">/* Invalidate remminamain-&gt;window to avoid multiple destructions */</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a> = NULL;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="comment">/* Destroy remminamain struct, later. We can&#39;t destroy</span></div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="comment"> * important objects like the builder now */</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; g_idle_add(<a class="code" href="remmina__main_8c.html#a829d3ad1468d780380ae1ad693532e82">remmina_main_idle_destroy</a>, NULL);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; }</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;}</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;</div><div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12"> 261</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;{</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a> = NULL;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a> = NULL;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;}</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;</div><div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5"> 272</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5">remmina_main_show_snap_welcome</a>()</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;{</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; GtkBuilder *dlgbuilder = NULL;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; GtkWidget *dlg;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; GtkWindow *parent;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordtype">int</span> result;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keyword">static</span> gboolean shown_once = FALSE;</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; gboolean need_snap_interface_connections = FALSE;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; GtkWidget *dsa;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *<a class="code" href="remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e">remmina_secret_plugin</a>;</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">if</span> (shown_once)</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; shown_once = TRUE;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; g_print(<span class="stringliteral">&quot;Remmina is compiled as a SNAP package.\n&quot;</span>);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; remmina_secret_plugin = <a class="code" href="remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager_get_secret_plugin</a>();</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">if</span> (remmina_secret_plugin == NULL) {</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; g_print(<span class="stringliteral">&quot; but we can’t find the secret plugin inside the SNAP.\n&quot;</span>);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; need_snap_interface_connections = TRUE;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">if</span> (!remmina_secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a2123e14795b104f5fe8d77a4b7847261">is_service_available</a>(remmina_secret_plugin)) {</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; g_print(<span class="stringliteral">&quot; but we can’t access a secret service. Secret service or SNAP interface connection is missing.\n&quot;</span>);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; need_snap_interface_connections = TRUE;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; }</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">if</span> (need_snap_interface_connections &amp;&amp; !<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7">prevent_snap_welcome_message</a>) {</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; dlgbuilder = <a class="code" href="remmina__public_8c.html#a4573e086e1ff8507eb9447b25bf11b92">remmina_public_gtk_builder_new_from_resource</a>(<span class="stringliteral">&quot;/org/remmina/Remmina/src/../data/ui/remmina_snap_info_dialog.glade&quot;</span>);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; dsa = GTK_WIDGET(gtk_builder_get_object(dlgbuilder, <span class="stringliteral">&quot;dontshowagain&quot;</span>));</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">if</span> (dlgbuilder) {</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; parent = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; dlg = GTK_WIDGET(gtk_builder_get_object(dlgbuilder, <span class="stringliteral">&quot;SnapInfoDlg&quot;</span>));</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">if</span> (parent)</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(dlg), parent);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; gtk_builder_connect_signals(dlgbuilder, NULL);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; result = gtk_dialog_run(GTK_DIALOG(dlg));</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">if</span> (result == 1) {</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7">prevent_snap_welcome_message</a> = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dsa));</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; }</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; gtk_widget_destroy(dlg);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; g_object_unref(dlgbuilder);</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; }</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;}</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;</div><div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66"> 322</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66">remmina_main_selection_func</a>(GtkTreeSelection *selection, GtkTreeModel *model, GtkTreePath *path,</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; gboolean path_currently_selected, gpointer user_data)</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;{</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; guint context_id;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; gchar buf[1000];</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">if</span> (path_currently_selected)</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_get_iter(model, &amp;iter, path))</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>();</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; gtk_tree_model_get(model, &amp;iter,</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, &amp;remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>,</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>,</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; -1);</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; context_id = gtk_statusbar_get_context_id(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, <span class="stringliteral">&quot;status&quot;</span>);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; gtk_statusbar_pop(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, context_id);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>) {</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%s (%s)&quot;</span>, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; gtk_statusbar_push(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, context_id, buf);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; gtk_statusbar_push(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, context_id, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; }</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;}</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;</div><div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6"> 355</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6">remmina_main_load_file_list_callback</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;{</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; GtkListStore *store;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; store = GTK_LIST_STORE(user_data);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; gchar *datetime;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; datetime = <a class="code" href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a>(remminafile);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; gtk_list_store_set(store, &amp;iter,</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a>(remminafile),</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>),</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a348c0cf6892b36818d9825dddc25f8e3">NOTES_COLUMN</a>, g_uri_unescape_string(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;notes_text&quot;</span>), NULL),</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;group&quot;</span>),</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>),</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>),</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, datetime,</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, <a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(remminafile),</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;labels&quot;</span>),</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; -1);</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; g_free(datetime);</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;}</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;</div><div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5"> 380</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5">remmina_main_load_file_tree_traverse</a>(GNode *<a class="code" href="remmina__ssh_8c.html#a85d5bd836f83ef1dbbcf4657f32e0792">node</a>, GtkTreeStore *store, GtkTreeIter *parent)</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;{</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; GtkTreeIter *iter;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a> *data;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; GNode *child;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; iter = NULL;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">if</span> (node-&gt;data) {</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; data = (<a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a> *)node-&gt;data;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; iter = g_new0(GtkTreeIter, 1);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; gtk_tree_store_append(store, iter, parent);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; gtk_tree_store_set(store, iter,</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>, <span class="stringliteral">&quot;folder-symbolic&quot;</span>,</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, data-&gt;name,</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, data-&gt;group,</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, data-&gt;datetime,</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, NULL,</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a>, data-&gt;labels,</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; -1);</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; }</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">for</span> (child = g_node_first_child(node); child; child = g_node_next_sibling(child))</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <a class="code" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5">remmina_main_load_file_tree_traverse</a>(child, store, iter);</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; g_free(iter);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;}</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;</div><div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296"> 407</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296">remmina_main_load_file_tree_group</a>(GtkTreeStore *store)</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;{</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; GNode *root;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; root = <a class="code" href="remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857">remmina_file_manager_get_group_tree</a>();</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5">remmina_main_load_file_tree_traverse</a>(root, store, NULL);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <a class="code" href="remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager_free_group_tree</a>(root);</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;}</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;</div><div class="line"><a name="l00417"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c"> 417</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c">remmina_main_expand_group_traverse</a>(GtkTreeIter *iter)</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160;{</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; GtkTreeModel *tree;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; gboolean ret;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; gchar *group, *filename;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; GtkTreeIter child;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; GtkTreePath *path;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; tree = remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; ret = TRUE;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">while</span> (ret) {</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; gtk_tree_model_get(tree, iter, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;filename, -1);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordflow">if</span> (filename == NULL) {</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array_find</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>, group) &gt;= 0) {</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; path = gtk_tree_model_get_path(tree, iter);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; gtk_tree_view_expand_row(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, path, FALSE);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; }</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">if</span> (gtk_tree_model_iter_children(tree, &amp;child, iter))</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c">remmina_main_expand_group_traverse</a>(&amp;child);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; g_free(group);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; g_free(filename);</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; ret = gtk_tree_model_iter_next(tree, iter);</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; }</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;}</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;</div><div class="line"><a name="l00446"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e"> 446</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e">remmina_main_expand_group</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;{</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160;</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">if</span> (gtk_tree_model_get_iter_first(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter))</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <a class="code" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c">remmina_main_expand_group_traverse</a>(&amp;iter);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160;}</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;</div><div class="line"><a name="l00455"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497"> 455</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497">remmina_main_load_file_tree_find</a>(GtkTreeModel *tree, GtkTreeIter *iter, <span class="keyword">const</span> gchar *match_group)</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;{</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; gboolean ret, match;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; gchar *group, *filename;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; GtkTreeIter child;</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; match = FALSE;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; ret = TRUE;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keywordflow">while</span> (ret) {</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; gtk_tree_model_get(tree, iter, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;filename, -1);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; match = (filename == NULL &amp;&amp; g_strcmp0(group, match_group) == 0);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; g_free(group);</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; g_free(filename);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="keywordflow">if</span> (match)</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordflow">if</span> (gtk_tree_model_iter_children(tree, &amp;child, iter)) {</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; match = <a class="code" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497">remmina_main_load_file_tree_find</a>(tree, &amp;child, match_group);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keywordflow">if</span> (match) {</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; memcpy(iter, &amp;child, <span class="keyword">sizeof</span>(GtkTreeIter));</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; }</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; }</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; ret = gtk_tree_model_iter_next(tree, iter);</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; }</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keywordflow">return</span> match;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;}</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;</div><div class="line"><a name="l00483"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4"> 483</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4">remmina_main_load_file_tree_callback</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;{</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; GtkTreeIter iter, child;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; GtkTreeStore *store;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; gboolean found;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; gchar *datetime = NULL;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; store = GTK_TREE_STORE(user_data);</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; found = FALSE;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="keywordflow">if</span> (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &amp;iter))</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; found = <a class="code" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497">remmina_main_load_file_tree_find</a>(GTK_TREE_MODEL(store), &amp;iter,</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;group&quot;</span>));</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; datetime = <a class="code" href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a>(remminafile);</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <span class="comment">//REMMINA_DEBUG(&quot;The date is %s&quot;, datetime);</span></div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; gtk_tree_store_append(store, &amp;child, (found ? &amp;iter : NULL));</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; gtk_tree_store_set(store, &amp;child,</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a>(remminafile),</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>),</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a348c0cf6892b36818d9825dddc25f8e3">NOTES_COLUMN</a>, g_uri_unescape_string(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;notes_text&quot;</span>), NULL),</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;group&quot;</span>),</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>),</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>),</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, datetime,</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, <a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(remminafile),</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;labels&quot;</span>),</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; -1);</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; g_free(datetime);</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;}</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;</div><div class="line"><a name="l00515"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7"> 515</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7">remmina_main_file_model_on_sort</a>(GtkTreeSortable *sortable, gpointer user_data)</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;{</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; gint columnid;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; GtkSortType order;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160;</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; gtk_tree_sortable_get_sort_column_id(sortable, &amp;columnid, &amp;order);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">main_sort_column_id</a> = columnid;</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4">main_sort_order</a> = order;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;}</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160;</div><div class="line"><a name="l00527"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800"> 527</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800">remmina_main_filter_visible_func</a>(GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;{</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; gchar *text;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; gchar *protocol, *name, *labels, *group, *server, *plugin, *date, *s;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; gboolean result = TRUE;</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; text = g_ascii_strdown(gtk_entry_get_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>), -1);</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; <span class="keywordflow">if</span> (text &amp;&amp; text[0]) {</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; gtk_tree_model_get(model, iter,</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>, &amp;protocol,</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, &amp;name,</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group,</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>, &amp;server,</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>, &amp;plugin,</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, &amp;date,</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a>, &amp;labels,</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; -1);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(protocol, <span class="stringliteral">&quot;folder-symbolic&quot;</span>) != 0) {</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; s = g_ascii_strdown(name ? name : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; g_free(name);</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; name = s;</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; s = g_ascii_strdown(group ? group : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; g_free(group);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; group = s;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; s = g_ascii_strdown(server ? server : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; g_free(server);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; server = s;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; s = g_ascii_strdown(plugin ? plugin : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; g_free(plugin);</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; plugin = s;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; s = g_ascii_strdown(date ? date : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; g_free(date);</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; date = s;</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; result = (strstr(name, text) || strstr(group, text) || strstr(server, text) || strstr(plugin, text) || strstr(date, text));</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; <span class="comment">// Filter by labels</span></div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; s = g_ascii_strdown(labels ? labels : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; g_free(labels);</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; labels = s;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <span class="keywordflow">if</span> (strlen(labels) &gt; 0) {</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; gboolean labels_result = TRUE;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; gchar **labels_array = g_strsplit(labels, <span class="stringliteral">&quot;,&quot;</span>, -1);</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; gchar **text_array = g_strsplit(text, <span class="stringliteral">&quot;,&quot;</span>, -1);</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> t = 0; (NULL != text_array[t]); t++) {</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; <span class="keywordflow">if</span> (0 == strlen(text_array[t])) {</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; }</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; gboolean text_result = FALSE;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> l = 0; (NULL != labels_array[l]); l++) {</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; <span class="keywordflow">if</span> (0 == strlen(labels_array[l])) {</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; }</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; text_result = (text_result || strstr(labels_array[l], text_array[t]));</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">if</span> (text_result) {</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; }</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; }</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; labels_result = (labels_result &amp;&amp; text_result);</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160;</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <span class="keywordflow">if</span> (!labels_result) {</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; }</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; }</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160;</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; result = (result || labels_result);</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160;</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; g_strfreev(labels_array);</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; g_strfreev(text_array);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; }</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; }</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; g_free(protocol);</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; g_free(name);</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; g_free(labels);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; g_free(group);</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; g_free(server);</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; g_free(plugin);</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; g_free(date);</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; }</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; g_free(text);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160;}</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160;</div><div class="line"><a name="l00618"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355"> 618</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main_select_file</a>(<span class="keyword">const</span> gchar *filename)</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160;{</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; GtkTreePath *path;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; gchar *item_filename;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; gboolean cmp;</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_get_iter_first(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter))</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160;</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keywordflow">while</span> (TRUE) {</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; gtk_tree_model_get(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;item_filename, -1);</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; cmp = g_strcmp0(item_filename, filename);</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; g_free(item_filename);</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keywordflow">if</span> (cmp == 0) {</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; gtk_tree_selection_select_iter(gtk_tree_view_get_selection(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>),</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; &amp;iter);</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; path = gtk_tree_model_get_path(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter);</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; gtk_tree_view_scroll_to_cell(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, path, NULL, TRUE, 0.5, 0.0);</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; }</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_iter_next(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter))</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; }</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;}</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160;</div><div class="line"><a name="l00646"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7"> 646</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>()</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160;{</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; gint items_count;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; gchar buf[200];</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; guint context_id;</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; gint view_file_mode;</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; gboolean always_show_notes;</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keywordtype">char</span> *save_selected_filename;</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; GtkTreeModel *newmodel;</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keyword">const</span> gchar *neticon;</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <span class="keyword">const</span> gchar *connection_tooltip;</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160;</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; save_selected_filename = g_strdup(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <a class="code" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main_save_expanded_group</a>();</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160;</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; view_file_mode = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a>;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a>)</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; view_file_mode = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>;</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160;</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; <span class="keywordflow">switch</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a>) {</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>:</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; gtk_toggle_button_set_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>, FALSE);</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>:</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; gtk_toggle_button_set_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>, TRUE);</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; }</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160;</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keywordflow">switch</span> (view_file_mode) {</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>:</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; <span class="comment">/* Create new GtkTreeStore model */</span></div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; newmodel = GTK_TREE_MODEL(gtk_tree_store_new(9, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING));</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="comment">/* Hide the Group column in the tree view mode */</span></div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; gtk_tree_view_column_set_visible(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">column_files_list_group</a>, FALSE);</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="comment">/* Load groups first */</span></div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <a class="code" href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296">remmina_main_load_file_tree_group</a>(GTK_TREE_STORE(newmodel));</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; <span class="comment">/* Load files list */</span></div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; items_count = <a class="code" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a>((GFunc)<a class="code" href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4">remmina_main_load_file_tree_callback</a>, (gpointer)newmodel);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160;</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>:</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; <span class="comment">/* Create new GtkListStore model */</span></div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; newmodel = GTK_TREE_MODEL(gtk_list_store_new(9, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING));</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <span class="comment">/* Show the Group column in the list view mode */</span></div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; gtk_tree_view_column_set_visible(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">column_files_list_group</a>, TRUE);</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="comment">/* Load files list */</span></div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; items_count = <a class="code" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a>((GFunc)<a class="code" href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6">remmina_main_load_file_list_callback</a>, (gpointer)newmodel);</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; }</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160;</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="comment">/* Set note column visibility*/</span></div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; always_show_notes = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a320861799b86dc076d5f87e3a216eb95">always_show_notes</a>;</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <span class="keywordflow">if</span> (!always_show_notes){</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; gtk_tree_view_column_set_visible(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">column_files_list_notes</a>, FALSE);</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; }</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <span class="comment">/* Unset old model */</span></div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; gtk_tree_view_set_model(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, NULL);</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; <span class="comment">/* Destroy the old model and save the new one */</span></div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a> = newmodel;</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160;</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="comment">/* Create a sorted filtered model based on newmodel and apply it to the TreeView */</span></div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a> = gtk_tree_model_filter_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>, NULL);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; gtk_tree_model_filter_set_visible_func(GTK_TREE_MODEL_FILTER(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>),</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; (GtkTreeModelFilterVisibleFunc)<a class="code" href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800">remmina_main_filter_visible_func</a>, NULL, NULL);</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a> = gtk_tree_model_sort_new_with_model(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>);</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>),</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">main_sort_column_id</a>,</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4">main_sort_order</a>);</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; gtk_tree_view_set_model(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>);</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; g_signal_connect(G_OBJECT(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>), <span class="stringliteral">&quot;sort-column-changed&quot;</span>,</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; G_CALLBACK(<a class="code" href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7">remmina_main_file_model_on_sort</a>), NULL);</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <a class="code" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e">remmina_main_expand_group</a>();</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="comment">/* Select the file previously selected */</span></div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <span class="keywordflow">if</span> (save_selected_filename) {</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; <a class="code" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main_select_file</a>(save_selected_filename);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; g_free(save_selected_filename);</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; }</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; gtk_tree_view_column_set_widget(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a">column_files_list_date</a>, NULL);</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; GtkWidget *label = gtk_tree_view_column_get_button(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a">column_files_list_date</a>);</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160;</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; gtk_widget_set_tooltip_text(GTK_WIDGET(label),</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; _(<span class="stringliteral">&quot;The latest successful connection attempt, or a pre-computed date&quot;</span>));</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; <span class="comment">/* Show in the status bar the total number of connections found */</span></div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), ngettext(<span class="stringliteral">&quot;Total %i item.&quot;</span>, <span class="stringliteral">&quot;Total %i items.&quot;</span>, items_count), items_count);</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; context_id = gtk_statusbar_get_context_id(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, <span class="stringliteral">&quot;status&quot;</span>);</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; gtk_statusbar_pop(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, context_id);</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; gtk_statusbar_push(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, context_id, buf);</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <a class="code" href="remmina__monitor_8c.html#acf79b91eb05694ec967d726bd0f85e50">remmina_network_monitor_status</a> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150">monitor</a>);</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150">monitor</a>-&gt;<a class="code" href="struct___remmina_monitor.html#adaa8ac5463302ab18a45171b5e4618f1">connected</a>){</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; neticon = g_strdup(<span class="stringliteral">&quot;network-transmit-receive-symbolic&quot;</span>);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; connection_tooltip = g_strdup(_(<span class="stringliteral">&quot;Network status: fully online&quot;</span>));</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; neticon = g_strdup(<span class="stringliteral">&quot;network-offline-symbolic&quot;</span>);</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; connection_tooltip = g_strdup(_(<span class="stringliteral">&quot;Network status: offline&quot;</span>));</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; }</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160;</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; <span class="keywordflow">if</span> (GTK_IS_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>))</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; gtk_widget_destroy(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>);</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; GIcon *icon = g_themed_icon_new (neticon);</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a> = gtk_image_new_from_gicon (icon, GTK_ICON_SIZE_BUTTON);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; gtk_widget_set_tooltip_text (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>, connection_tooltip);</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160;</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; g_object_unref (icon);</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160;</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; gtk_box_pack_start (GTK_BOX(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>, FALSE, FALSE, 0);</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; gtk_widget_show (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>);</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160;</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160;}</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160;</div><div class="line"><a name="l00762"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a627eb26ab02f0093365ed6b10dab0320"> 762</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a627eb26ab02f0093365ed6b10dab0320">remmina_main_load_files_cb</a>(GtkEntry *entry, <span class="keywordtype">char</span> *<span class="keywordtype">string</span>, gpointer user_data)</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160;{</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160;}</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160;</div><div class="line"><a name="l00768"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d"> 768</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160;{</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160;</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160;</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160;</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160;</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; <span class="keywordflow">if</span> (remminafile == NULL)</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160;</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_connect&quot;</span>)</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (remminafile, <span class="stringliteral">&quot;profile-lock&quot;</span>, FALSE) == 1</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160;</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <a class="code" href="remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a>(remminafile);</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; <a class="code" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160;</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160;}</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160;</div><div class="line"><a name="l00796"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1"> 796</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main_on_action_connection_external_tools</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160;{</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160;</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; <a class="code" href="remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d">remmina_external_tools_from_filename</a>(remminamain, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160;}</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160;</div><div class="line"><a name="l00805"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd"> 805</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd">remmina_main_file_editor_destroy</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160;{</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160;</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; <span class="keywordflow">if</span> (!remminamain)</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160;}</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160;</div><div class="line"><a name="l00814"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229"> 814</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160;{</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160;</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; <span class="keyword">const</span> gchar *username;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <span class="keyword">const</span> gchar *domain;</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; <span class="keyword">const</span> gchar *group;</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; <span class="keyword">const</span> gchar *gatewayusername;</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; <span class="keyword">const</span> gchar *gatewaydomain;</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160;</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; username = domain = group = gatewayusername = gatewaydomain = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160;</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; remminafile = NULL;</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160;</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160;</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>) {</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; <span class="keywordflow">if</span> (remminafile != NULL) {</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; username = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>);</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; domain = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;domain&quot;</span>);</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; group = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;group&quot;</span>);</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; gatewayusername = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_username&quot;</span>);</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; gatewaydomain = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_domain&quot;</span>);</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; }</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; }</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160;</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <a class="code" href="remmina__mpchange_8c.html#aa5a382490ca5e92bc4b124f66d83c4ff">remmina_mpchange_schedule</a>(TRUE, group, domain, username, <span class="stringliteral">&quot;&quot;</span>, gatewayusername, gatewaydomain, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160;</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; <span class="keywordflow">if</span> (remminafile != NULL)</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160;}</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160;</div><div class="line"><a name="l00851"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af"> 851</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160;{</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE)</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160;</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160;</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor_new</a>();</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd">remmina_main_file_editor_destroy</a>), remminamain);</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(widget), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160;}</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160;</div><div class="line"><a name="l00870"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#af129aea3f5f3ec56b061187a81d43e4c"> 870</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#af129aea3f5f3ec56b061187a81d43e4c">remmina_main_search_key_event</a>(GtkWidget *search_entry, GdkEventKey *event, gpointer user_data)</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160;{</div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; <span class="keywordflow">if</span> (event-&gt;keyval == GDK_KEY_Escape) {</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; gtk_entry_set_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;search_toggle&quot;</span>)), FALSE);</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; }</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160;}</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160;</div><div class="line"><a name="l00881"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a4477897686d091d6f57e7f9401674a8c"> 881</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a4477897686d091d6f57e7f9401674a8c">remmina_main_tree_row_activated</a>(GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data)</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160;{</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160; <span class="keywordflow">if</span> (gtk_tree_view_row_expanded(tree, path))</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; gtk_tree_view_collapse_row(tree, path);</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; gtk_tree_view_expand_row(tree, path, FALSE);</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160;}</div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160;</div><div class="line"><a name="l00891"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766"> 891</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766">remmina_main_on_view_toggle</a>()</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160;{</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; <span class="keywordflow">if</span> (gtk_toggle_button_get_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>)) {</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>) {</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>;</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; gtk_entry_set_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; }</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>) {</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>;</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; gtk_entry_set_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; }</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>&#160; }</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160;}</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160;</div><div class="line"><a name="l00910"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1"> 910</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160;{</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160;</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160;</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160;</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160;</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; <span class="keywordflow">if</span> (((<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>))</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; || <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (remminafile, <span class="stringliteral">&quot;profile-lock&quot;</span>, FALSE))</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160;</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; remminafile = NULL;</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; }</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160;</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor_new_copy</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; <span class="keywordflow">if</span> (widget) {</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd">remmina_main_file_editor_destroy</a>), remminamain);</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(widget), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; }</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; <span class="comment">/* Select the file previously selected */</span></div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; <a class="code" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main_select_file</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160;}</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160;</div><div class="line"><a name="l00946"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc"> 946</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160;{</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160;</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160;</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160;</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; &amp;&amp; (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; || <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (remminafile, <span class="stringliteral">&quot;profile-lock&quot;</span>, FALSE))</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160;</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; remminafile = NULL;</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; }</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160;</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor_new_from_filename</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; <span class="keywordflow">if</span> (widget) {</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(widget), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; }</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160;<span class="comment">/* Select the file previously selected */</span></div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; <a class="code" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main_select_file</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160;}</div><div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160;</div><div class="line"><a name="l00977"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a10e574723222f5df9db456977e62a093"> 977</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160;{</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160;</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160;</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160;</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160; <span class="keywordflow">if</span> (((<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>))</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160; || <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (remminafile, <span class="stringliteral">&quot;profile-lock&quot;</span>, FALSE))</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160;</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; remminafile = NULL;</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160; }</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160;</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160; dialog = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160; _(<span class="stringliteral">&quot;Are you sure you want to delete “%s”?&quot;</span>), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>);</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_YES) {</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; gchar *delfilename = g_strdup(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; <a class="code" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a>(delfilename);</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; g_free(delfilename), delfilename = NULL;</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; <a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>();</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160; }</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160; <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>();</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;}</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;</div><div class="line"><a name="l01011"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#af56bada711b2fc9c50af83b8b62dfe8b"> 1011</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#af56bada711b2fc9c50af83b8b62dfe8b">remmina_main_on_action_connection_delete_multiple</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;{</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; GtkTreeSelection *sel = gtk_tree_view_get_selection(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>);</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; GtkTreeModel *model = gtk_tree_view_get_model(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>);</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; GList *list = gtk_tree_selection_get_selected_rows(sel, &amp;model);</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; gchar *file_to_delete;</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160; dialog = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; _(<span class="stringliteral">&quot;Are you sure you want to delete the selected files?&quot;</span>));</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160;</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160; <span class="comment">// Delete files if Yes is clicked</span></div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_YES) {</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160; <span class="keywordflow">while</span> (list) {</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; GtkTreePath *path = list-&gt;data;</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160; </div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_get_iter(model, &amp;iter, path)) {</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; GtkWidget *dialog_warning;</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; dialog_warning = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_WARNING, GTK_BUTTONS_OK, </div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160; _(<span class="stringliteral">&quot;Failed to delete files!&quot;</span>));</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog_warning));</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160; gtk_widget_destroy(dialog_warning);</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>();</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160; }</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; gtk_tree_model_get(model, &amp;iter, </div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;file_to_delete, -1);</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(file_to_delete);</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160; <span class="keywordflow">if</span> (((<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>))</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; || <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (remminafile, <span class="stringliteral">&quot;profile-lock&quot;</span>, FALSE))</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160; remminafile = NULL;</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; }</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; gchar *delfilename = g_strdup(file_to_delete);</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160; <a class="code" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a>(delfilename);</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160; g_free(delfilename), delfilename = NULL;</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; <a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>();</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; list = g_list_next(list);</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160; }</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160; }</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; </div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>();</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;}</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;</div><div class="line"><a name="l01069"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a1e8b7e8c0f7a47dc0409ae6eb18cfc6a"> 1069</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a1e8b7e8c0f7a47dc0409ae6eb18cfc6a">remmina_main_on_accel_application_preferences</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160;{</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; GVariant *v = g_variant_new(<span class="stringliteral">&quot;i&quot;</span>, 0);</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; <a class="code" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>(NULL, v, NULL);</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;}</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;</div><div class="line"><a name="l01077"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a1bdf3fe7a3de2371f80adcbdcf50381d"> 1077</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a1bdf3fe7a3de2371f80adcbdcf50381d">remmina_main_reload_preferences</a>()</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;{</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160; GtkSettings *settings;</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; settings = gtk_settings_get_default();</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160; g_object_set(settings, <span class="stringliteral">&quot;gtk-application-prefer-dark-theme&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">dark_theme</a>, NULL);</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; <a class="code" href="remmina__main_8c.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a>(NULL,NULL,NULL);</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160; gtk_tree_view_column_set_visible(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">column_files_list_notes</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a320861799b86dc076d5f87e3a216eb95">always_show_notes</a>);</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160;}</div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;</div><div class="line"><a name="l01086"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92"> 1086</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160;{</div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160;</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Opening the preferences&quot;</span>);</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; gint32 tab_num;</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; <span class="keywordflow">if</span> (param) {</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Parameter passed to preferences of type %s&quot;</span>, g_variant_get_type_string(param));</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; tab_num = g_variant_get_int32(param);</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;We got a parameter for the preferences: %d&quot;</span>, tab_num);</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; tab_num = 0;</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160; }</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160;</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160; GtkWidget *widget = <a class="code" href="remmina__pref__dialog_8c.html#ab09f64d25a5a016281a56edca7e2d70a">remmina_pref_dialog_new</a>(tab_num, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160;</div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160; gtk_widget_show_all(widget); </div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160; <span class="comment">/* Reload to use new preferences */</span></div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160; <a class="code" href="remmina__main_8c.html#a1bdf3fe7a3de2371f80adcbdcf50381d">remmina_main_reload_preferences</a>();</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;}</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;</div><div class="line"><a name="l01112"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1"> 1112</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;{</div><div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160;<span class="preprocessor">#ifndef __APPLE__</span></div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; g_autoptr(GError) error = NULL;</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160; GDesktopAppInfo *desktop_info;</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160; GAppInfo *info = NULL;</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; g_autofree gchar *<span class="keywordtype">id</span> = g_strconcat(REMMINA_APP_ID, <span class="stringliteral">&quot;.desktop&quot;</span>, NULL);</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160;</div><div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160; desktop_info = g_desktop_app_info_new(<span class="keywordtype">id</span>);</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; <span class="keywordflow">if</span> (!desktop_info)</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; info = G_APP_INFO(desktop_info);</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; <span class="keywordflow">for</span> (i = 0; <a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i]; i++) {</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; <span class="keywordflow">if</span> (!g_app_info_set_as_default_for_type(info, <a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i], &amp;error))</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; g_warning(<span class="stringliteral">&quot;Failed to set &#39;%s&#39; as the default application for secondary content type &#39;%s&#39;: %s&quot;</span>,</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; g_app_info_get_name(info), <a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i], error-&gt;message);</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; g_debug(<span class="stringliteral">&quot;Set &#39;%s&#39; as the default application for &#39;%s&#39;&quot;</span>,</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; g_app_info_get_name(info),</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; <a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i]);</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; }</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;}</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;</div><div class="line"><a name="l01140"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a"> 1140</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160;{</div><div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160; <span class="comment">// Called by quit signal in remmina_main.glade</span></div><div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160; g_debug(<span class="stringliteral">&quot;Quit intercept&quot;</span>);</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160; <a class="code" href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a>(<a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284">REMMINA_CONDEXIT_ONQUIT</a>);</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160;}</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;</div><div class="line"><a name="l01148"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db"> 1148</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db">remmina_main_on_date_column_sort_clicked</a>()</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;{</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>) {</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>;</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; gtk_entry_set_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; }</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;}</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;</div><div class="line"><a name="l01158"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20"> 1158</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a>(GSList *files)</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;{</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160; GtkWidget *dlg;</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; GSList *element;</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; gchar *path;</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; <a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *plugin;</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160; GString *err;</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = NULL;</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; gboolean imported;</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160;</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160; err = g_string_new(NULL);</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160; imported = FALSE;</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160; <span class="keywordflow">for</span> (element = files; element; element = element-&gt;next) {</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160; path = (gchar *)element-&gt;data;</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; plugin = <a class="code" href="remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager_get_import_file_handler</a>(path);</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; <span class="keywordflow">if</span> (plugin &amp;&amp; (remminafile = plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#a597178a88c755ebe0614897b7aa279b1">import_func</a>(plugin, path)) != NULL &amp;&amp; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>)) {</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; <a class="code" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a>(remminafile);</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(remminafile);</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160; imported = TRUE;</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160; g_string_append(err, path);</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; g_string_append_c(err, <span class="charliteral">&#39;\n&#39;</span>);</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; }</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; remminafile = NULL;</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160; }</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; g_free(path);</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; }</div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160; g_slist_free(files);</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160; <span class="keywordflow">if</span> (err-&gt;len &gt; 0) {</div><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160; dlg = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160; _(<span class="stringliteral">&quot;Unable to import:\n%s&quot;</span>), err-&gt;str);</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; g_signal_connect(G_OBJECT(dlg), <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(gtk_widget_destroy), NULL);</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; gtk_widget_show(dlg);</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; }</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160; g_string_free(err, TRUE);</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; <span class="keywordflow">if</span> (imported)</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;}</div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160;</div><div class="line"><a name="l01201"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d"> 1201</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d">remmina_main_action_tools_import_on_response</a>(GtkDialog *dialog, gint response_id, gpointer user_data)</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160;{</div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160; GSList *files;</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160;</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160; <span class="keywordflow">if</span> (response_id == GTK_RESPONSE_ACCEPT) {</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160; files = gtk_file_chooser_get_filenames(GTK_FILE_CHOOSER(dialog));</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; <a class="code" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a>(files);</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160; }</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160;}</div><div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160;</div><div class="line"><a name="l01213"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c"> 1213</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160;{</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160;</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160; dialog = gtk_file_chooser_dialog_new(_(<span class="stringliteral">&quot;Import&quot;</span>), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_FILE_CHOOSER_ACTION_OPEN, <span class="stringliteral">&quot;Import&quot;</span>,</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; GTK_RESPONSE_ACCEPT, NULL);</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160; gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(dialog), TRUE);</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160; g_signal_connect(G_OBJECT(dialog), <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(<a class="code" href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d">remmina_main_action_tools_import_on_response</a>), NULL);</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;}</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160;</div><div class="line"><a name="l01225"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d"> 1225</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160;{</div><div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160; <a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *plugin;</div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160;</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160;</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; <span class="keywordflow">if</span> (remminafile == NULL)</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160; plugin = <a class="code" href="remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager_get_export_file_handler</a>(remminafile);</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; <span class="keywordflow">if</span> (plugin) {</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160; dialog = gtk_file_chooser_dialog_new(plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f">export_hints</a>, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>,</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160; GTK_FILE_CHOOSER_ACTION_SAVE, _(<span class="stringliteral">&quot;_Save&quot;</span>), GTK_RESPONSE_ACCEPT, NULL);</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT)</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160; plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#a8bf634ff09caba624ecf93c42e12af78">export_func</a>(plugin, remminafile, gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)));</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160; dialog = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160; _(<span class="stringliteral">&quot;This protocol does not support exporting.&quot;</span>));</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160; g_signal_connect(G_OBJECT(dialog), <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(gtk_widget_destroy), NULL);</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160; }</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160;}</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160;</div><div class="line"><a name="l01254"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc"> 1254</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160;{</div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager_show</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160;}</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160;</div><div class="line"><a name="l01260"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a91f22c2834ac7f38d201d8d678f8c57b"> 1260</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160;{</div><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160; GtkSettings *settings;</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160;</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160; settings = gtk_settings_get_default();</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160; <span class="keywordflow">if</span> (gtk_switch_get_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a912f2057752ad0779485c3303e3e9b04">switch_dark_mode</a>))</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">dark_theme</a> = 1;</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">dark_theme</a> = 0;</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160;</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160; g_object_set(settings, <span class="stringliteral">&quot;gtk-application-prefer-dark-theme&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">dark_theme</a>, NULL);</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160;}</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160;</div><div class="line"><a name="l01276"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a"> 1276</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160;{</div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160; g_app_info_launch_default_for_uri(<span class="stringliteral">&quot;https://www.remmina.org&quot;</span>, NULL, NULL);</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160;}</div><div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>&#160;</div><div class="line"><a name="l01282"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a0c32fe66988056b353220128611b9116"> 1282</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;{</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160; g_app_info_launch_default_for_uri(<span class="stringliteral">&quot;https://gitlab.com/Remmina/Remmina/wikis/home&quot;</span>, NULL, NULL);</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160;}</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160;</div><div class="line"><a name="l01288"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32"> 1288</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160;{</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160; g_app_info_launch_default_for_uri(<span class="stringliteral">&quot;https://remmina.org/community&quot;</span>, NULL, NULL);</div><div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>&#160;}</div><div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>&#160;</div><div class="line"><a name="l01294"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277"> 1294</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160;{</div><div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160; g_app_info_launch_default_for_uri(<span class="stringliteral">&quot;https://www.remmina.org/donations&quot;</span>, NULL, NULL);</div><div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>&#160;}</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160;</div><div class="line"><a name="l01300"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc"> 1300</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01301"></a><span class="lineno"> 1301</span>&#160;{</div><div class="line"><a name="l01302"></a><span class="lineno"> 1302</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>&#160; <a class="code" href="remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d">remmina_log_start</a>();</div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160;}</div><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>&#160;</div><div class="line"><a name="l01306"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc"> 1306</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160;{</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160; <a class="code" href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about_open</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160;};</div><div class="line"><a name="l01311"></a><span class="lineno"> 1311</span>&#160;</div><div class="line"><a name="l01312"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a1f5f9a964a75214d500e7a9fca1bd8a6"> 1312</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a1f5f9a964a75214d500e7a9fca1bd8a6">is_empty</a>(<span class="keyword">const</span> gchar *s)</div><div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>&#160;{</div><div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>&#160; <span class="keywordflow">if</span> (s == NULL)</div><div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160; <span class="keywordflow">while</span> (*s != 0) {</div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160; <span class="keywordflow">if</span> (!isspace((<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>)*s))</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160; s++;</div><div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160; }</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160;}</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160;</div><div class="line"><a name="l01324"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01"> 1324</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01">remmina_main_quickconnect</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160;{</div><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160; gchar *server;</div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160; gchar *server_trimmed;</div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160; gchar *qcp;</div><div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160;</div><div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160;</div><div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160; <span class="comment">/* Save quick connect protocol if different from the previous one */</span></div><div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160; qcp = gtk_combo_box_text_get_active_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>);</div><div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160; <span class="keywordflow">if</span> (qcp &amp;&amp; strcmp(qcp, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a>) != 0) {</div><div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160; g_free(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a>);</div><div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a> = g_strdup(qcp);</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160; }</div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160;</div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a>();</div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160; server = g_strdup(gtk_entry_get_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>));</div><div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>&#160; <span class="keywordflow">if</span> (g_hostname_to_ascii(server) == NULL)</div><div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160; <span class="comment">/* If server contain /, e.g. vnc://, it won&#39;t connect</span></div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160;<span class="comment"> * We could search for an array of invalid characters, but</span></div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160;<span class="comment"> * it&#39;s better to find a way to correctly parse and validate addresses</span></div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160; <span class="keywordflow">if</span> (g_strrstr(server, <span class="stringliteral">&quot;/&quot;</span>) != NULL)</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160; <span class="comment">//if (g_str_has_suffix (server, &quot;/&quot;))</span></div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; <span class="comment">//return FALSE;</span></div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__main_8c.html#a1f5f9a964a75214d500e7a9fca1bd8a6">is_empty</a>(server))</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160;</div><div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160; <span class="comment">/* check if server is an IP address and trim whitespace if so */</span></div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160; server_trimmed = g_strdup(server);</div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160; g_strstrip(server_trimmed);</div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160; gchar **strings = g_strsplit(server_trimmed, <span class="stringliteral">&quot;:&quot;</span>, 2);</div><div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160;</div><div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160; <span class="keywordflow">if</span> (strings[0] != NULL)</div><div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160; <span class="keywordflow">if</span> (g_hostname_is_ip_address(strings[0]))</div><div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>&#160; g_stpcpy(server, server_trimmed);</div><div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>&#160;</div><div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;sound&quot;</span>, <span class="stringliteral">&quot;off&quot;</span>);</div><div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>, server);</div><div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>, server);</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>, qcp);</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160; g_free(server);</div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160; g_free(server_trimmed);</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160; g_free(qcp);</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160;</div><div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160; <a class="code" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a>(remminafile);</div><div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160;</div><div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160;}</div><div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160;</div><div class="line"><a name="l01378"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d"> 1378</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d">remmina_main_quickconnect_on_click</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160;{</div><div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == FALSE)</div><div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01">remmina_main_quickconnect</a>();</div><div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160;}</div><div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160;</div><div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160;<span class="comment">/* Select all the text inside the quick search box if there is anything */</span></div><div class="line"><a name="l01387"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427"> 1387</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427">remmina_main_quick_search_enter</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160;{</div><div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160; <span class="keywordflow">if</span> (gtk_entry_get_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>))</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160; gtk_editable_select_region(GTK_EDITABLE(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>), 0, -1);</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160;}</div><div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160;</div><div class="line"><a name="l01393"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a"> 1393</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160;{</div><div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>&#160; gtk_tree_view_collapse_all(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>);</div><div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160;}</div><div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160;</div><div class="line"><a name="l01399"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a9896df7a92402b5a61e58420235c515a"> 1399</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160;{</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Search toggle triggered&quot;</span>);</div><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a>), !<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a>);</div><div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160;</div><div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160; gboolean toggle_status = gtk_toggle_button_get_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a>);</div><div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160;</div><div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160; gtk_search_bar_set_search_mode(remminamain-&gt;<a class="code" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">search_bar</a>, toggle_status);</div><div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160; <span class="keywordflow">if</span> (toggle_status) {</div><div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Search toggle is active&quot;</span>);</div><div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160; gtk_widget_grab_focus(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>));</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Search toggle is not active, focus is tree_files_list&quot;</span>);</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160; gtk_widget_grab_focus(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>));</div><div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160; }</div><div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>&#160;}</div><div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>&#160;</div><div class="line"><a name="l01417"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aea426b2e8fc03f963bb2b98cb8649adf"> 1417</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aea426b2e8fc03f963bb2b98cb8649adf">remmina_main_on_accel_search_toggle</a>(<a class="code" href="struct___remmina_main.html">RemminaMain</a> *remminamain)</div><div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160;{</div><div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a>), TRUE);</div><div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160;}</div><div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>&#160;</div><div class="line"><a name="l01423"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8"> 1423</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160;{</div><div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>&#160; gtk_tree_view_expand_all(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>);</div><div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>&#160;}</div><div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>&#160;</div><div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>&#160;<span class="comment">/* Handle double click on a row in the connections list */</span></div><div class="line"><a name="l01430"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10"> 1430</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10">remmina_main_file_list_on_row_activated</a>(GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data)</div><div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160;{</div><div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160;<span class="comment">/* If a connection was selected then execute the default action */</span></div><div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>) {</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160; <span class="keywordflow">switch</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef">default_action</a>) {</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba84fe14d6d19ab0479931a6886178f2e3">REMMINA_ACTION_EDIT</a>:</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160; <a class="code" href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a>(NULL, NULL, NULL);</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebbad14d19fdcc60e744406c5f80c1bb840a">REMMINA_ACTION_CONNECT</a>:</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160; <a class="code" href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a>(NULL, NULL, NULL);</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160; }</div><div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>&#160; }</div><div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160;}</div><div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>&#160;</div><div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160;<span class="comment">/* Show the popup menu by the right button mouse click */</span></div><div class="line"><a name="l01448"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9"> 1448</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9">remmina_main_file_list_on_button_press</a>(GtkWidget *widget, GdkEventButton *event, gpointer user_data)</div><div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160;{</div><div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160; <span class="keywordflow">if</span> (event-&gt;button == MOUSE_BUTTON_RIGHT) {</div><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == FALSE) {</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160; <span class="comment">// For now, if more than one selected row, display only a delete menu option</span></div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160; <span class="keywordflow">if</span> (gtk_tree_selection_count_selected_rows(gtk_tree_view_get_selection(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>)) &gt; 1) {</div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160; gtk_menu_popup_at_pointer(GTK_MENU(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a98a1ddd6aebc35c131f8de819a3d861f">menu_popup_delete_rc</a>), (GdkEvent *)event);</div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160; <span class="keywordflow">return</span> GDK_EVENT_STOP;</div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160; }</div><div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160; <span class="keywordflow">else</span> {</div><div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160; gtk_menu_popup_at_pointer(GTK_MENU(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>), (GdkEvent *)event);</div><div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160; }</div><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160; gtk_menu_popup(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>, NULL, NULL, NULL, NULL, event-&gt;button, event-&gt;time);</div><div class="line"><a name="l01464"></a><span class="lineno"> 1464</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>&#160; }</div><div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160; }</div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160;}</div><div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160;</div><div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160;<span class="comment">/* Show the popup menu by the menu key */</span></div><div class="line"><a name="l01471"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193"> 1471</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193">remmina_main_file_list_on_key_press</a>(GtkWidget *widget, GdkEventKey *event, gpointer user_data)</div><div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160;{</div><div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160; <span class="keywordflow">if</span> (event-&gt;keyval == GDK_KEY_Menu) {</div><div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160; gtk_menu_popup_at_widget(GTK_MENU(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>), widget,</div><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160; GDK_GRAVITY_CENTER, GDK_GRAVITY_CENTER,</div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160; (GdkEvent *)event);</div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160; gtk_menu_popup(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>, NULL, NULL, NULL, NULL, 0, event-&gt;time);</div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160; }</div><div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>&#160;}</div><div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>&#160;</div><div class="line"><a name="l01486"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f"> 1486</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f">remmina_main_quick_search_on_icon_press</a>(GtkEntry *entry, GtkEntryIconPosition icon_pos, GdkEvent *event, gpointer user_data)</div><div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>&#160;{</div><div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>&#160; <span class="keywordflow">if</span> (icon_pos == GTK_ENTRY_ICON_SECONDARY)</div><div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>&#160; gtk_entry_set_text(entry, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160;}</div><div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160;</div><div class="line"><a name="l01493"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657"> 1493</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657">remmina_main_quick_search_on_changed</a>(GtkEditable *editable, gpointer user_data)</div><div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160;{</div><div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160; <span class="comment">/* If a search text was input then temporary set the file mode to list */</span></div><div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160; <span class="keywordflow">if</span> (gtk_entry_get_text_length(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>)) {</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160; <span class="keywordflow">if</span> (GTK_IS_TREE_STORE(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>)) {</div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160; <span class="comment">/* File view mode changed, put it to override and reload list */</span></div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a> = TRUE;</div><div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01502"></a><span class="lineno"> 1502</span>&#160; }</div><div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a>) {</div><div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160; <span class="comment">/* File view mode changed, put it to default (disable override) and reload list */</span></div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a> = FALSE;</div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160; }</div><div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>&#160; }</div><div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>&#160; gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>));</div><div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>&#160;}</div><div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>&#160;</div><div class="line"><a name="l01513"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#adf073486149762f547504020484bff70"> 1513</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#adf073486149762f547504020484bff70">remmina_main_on_drag_data_received</a>(GtkWidget *widget, GdkDragContext *drag_context, gint x, gint y,</div><div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160; GtkSelectionData *data, guint info, guint time, gpointer user_data)</div><div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>&#160;{</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160; gchar **uris;</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160; GSList *files = NULL;</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160; gint i;</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160;</div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160; uris = g_uri_list_extract_uris((<span class="keyword">const</span> gchar *)gtk_selection_data_get_data(data));</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160; <span class="keywordflow">for</span> (i = 0; uris[i]; i++) {</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160; <span class="keywordflow">if</span> (strncmp(uris[i], <span class="stringliteral">&quot;file://&quot;</span>, 7) != 0)</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160; files = g_slist_append(files, g_strdup(uris[i] + 7));</div><div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>&#160; }</div><div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>&#160; g_strfreev(uris);</div><div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160; <a class="code" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a>(files);</div><div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>&#160;}</div><div class="line"><a name="l01530"></a><span class="lineno"> 1530</span>&#160;</div><div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160;<span class="comment">/* Add a new menuitem to the Tools menu */</span></div><div class="line"><a name="l01532"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f"> 1532</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f">remmina_main_add_tool_plugin</a>(gchar *name, <a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin, gpointer user_data)</div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160;{</div><div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>&#160; <a class="code" href="struct___remmina_tool_plugin.html">RemminaToolPlugin</a> *tool_plugin = (<a class="code" href="struct___remmina_tool_plugin.html">RemminaToolPlugin</a> *)plugin;</div><div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>&#160; GtkWidget *menuitem = gtk_menu_item_new_with_label(plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">description</a>);</div><div class="line"><a name="l01537"></a><span class="lineno"> 1537</span>&#160;</div><div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">menu_popup_full</a>), menuitem);</div><div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(tool_plugin-&gt;<a class="code" href="struct___remmina_tool_plugin.html#ad83c522c030d51d5f0313b1f77f04d74">exec_func</a>), tool_plugin);</div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>&#160;}</div><div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>&#160;</div><div class="line"><a name="l01544"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79"> 1544</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79">remmina_main_on_window_state_event</a>(GtkWidget *widget, GdkEventWindowState *event, gpointer user_data)</div><div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>&#160;{</div><div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>&#160;}</div><div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>&#160;</div><div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160;<span class="comment">/* Remmina main window initialization */</span></div><div class="line"><a name="l01551"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300"> 1551</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main_init</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160;{</div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160; <span class="keywordtype">int</span> i, qcp_idx, qcp_actidx;</div><div class="line"><a name="l01555"></a><span class="lineno"> 1555</span>&#160; <span class="keywordtype">char</span> *name;</div><div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>&#160; GtkSettings *settings;</div><div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>&#160;</div><div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Initializing the Remmina main window&quot;</span>);</div><div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160; <span class="comment">/* Switch to a dark theme if the user enabled it */</span></div><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160; settings = gtk_settings_get_default();</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160; g_object_set(settings, <span class="stringliteral">&quot;gtk-application-prefer-dark-theme&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">dark_theme</a>, NULL);</div><div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>&#160;</div><div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160; REMMINA_DEBUG (<span class="stringliteral">&quot;Initializing monitor&quot;</span>);</div><div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150">monitor</a> = <a class="code" href="remmina__monitor_8c.html#ac37c2579934e206d669c1af9b51f8ef1">remmina_network_monitor_new</a>();</div><div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>&#160;</div><div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a> = <a class="code" href="remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array_new_from_string</a>(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">expanded_group</a>);</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == FALSE)</div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160; gtk_window_set_title(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, _(<span class="stringliteral">&quot;Remmina Remote Desktop Client&quot;</span>));</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160; gtk_window_set_title(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, _(<span class="stringliteral">&quot;Remmina Kiosk&quot;</span>));</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == FALSE) {</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160; gtk_window_set_default_size(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">main_width</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">main_height</a>);</div><div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">main_maximize</a>)</div><div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160; gtk_window_maximize(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160; }</div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160; <span class="comment">/* Honor global preferences Search Bar visibility */</span></div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a>)</div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;search_toggle&quot;</span>)), FALSE);</div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160;</div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160; <span class="comment">/* Add a GtkMenuItem to the Tools menu for each plugin of type REMMINA_PLUGIN_TYPE_TOOL */</span></div><div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac">REMMINA_PLUGIN_TYPE_TOOL</a>, <a class="code" href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f">remmina_main_add_tool_plugin</a>, remminamain);</div><div class="line"><a name="l01582"></a><span class="lineno"> 1582</span>&#160;</div><div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160; <span class="comment">/* Add available quick connect protocols to remminamain-&gt;combo_quick_connect_protocol */</span></div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160; qcp_idx = qcp_actidx = 0;</div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <span class="keyword">sizeof</span>(<a class="code" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a>) / <span class="keyword">sizeof</span>(<a class="code" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a>[0]); i++) {</div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160; name = <a class="code" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a>[i];</div><div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager_get_plugin</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, name)) {</div><div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160; gtk_combo_box_text_append(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>, name, name);</div><div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a> != NULL &amp;&amp; strcmp(name, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a>) == 0)</div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160; qcp_actidx = qcp_idx;</div><div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160; qcp_idx++;</div><div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>&#160; }</div><div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>&#160; }</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160; gtk_combo_box_set_active(GTK_COMBO_BOX(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>), qcp_actidx);</div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160;</div><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160; <span class="comment">/* Connect the group accelerators to the GtkWindow */</span></div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160; <span class="comment">//gtk_window_add_accel_group(remminamain-&gt;window, remminamain-&gt;accelgroup_shortcuts);</span></div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160; <span class="comment">/* Set the Quick Connection */</span></div><div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160; gtk_entry_set_activates_default(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, TRUE);</div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160; <span class="comment">/* Set the TreeView for the files list */</span></div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160; gtk_tree_selection_set_select_function(</div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160; gtk_tree_view_get_selection(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>),</div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160; <a class="code" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66">remmina_main_selection_func</a>, NULL, NULL);</div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160; gtk_tree_view_set_search_entry(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, GTK_ENTRY(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>));</div><div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a>)</div><div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160; gtk_widget_grab_focus(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>));</div><div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160; <span class="comment">/* Load the files list */</span></div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>&#160;</div><div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160; <span class="comment">/* Drag-n-drop support */</span></div><div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160; gtk_drag_dest_set(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>), GTK_DEST_DEFAULT_ALL, <a class="code" href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda">remmina_drop_types</a>, 1, GDK_ACTION_COPY);</div><div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160;</div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160; <span class="comment">/* Finish initialization */</span></div><div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">initialized</a> = TRUE;</div><div class="line"><a name="l01616"></a><span class="lineno"> 1616</span>&#160;</div><div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160; <span class="comment">/* Register the window in remmina_widget_pool with GType=GTK_WINDOW and TAG=remmina-main-window */</span></div><div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160; g_object_set_data(G_OBJECT(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>), <span class="stringliteral">&quot;tag&quot;</span>, <span class="stringliteral">&quot;remmina-main-window&quot;</span>);</div><div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>));</div><div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160;}</div><div class="line"><a name="l01621"></a><span class="lineno"> 1621</span>&#160;</div><div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>&#160;<span class="comment">/* Signal handler for &quot;show&quot; on remminamain-&gt;window */</span></div><div class="line"><a name="l01623"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2"> 1623</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2">remmina_main_on_show</a>(GtkWidget *w, gpointer user_data)</div><div class="line"><a name="l01624"></a><span class="lineno"> 1624</span>&#160;{</div><div class="line"><a name="l01625"></a><span class="lineno"> 1625</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l01627"></a><span class="lineno"> 1627</span>&#160; <a class="code" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5">remmina_main_show_snap_welcome</a>();</div><div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>&#160;}</div><div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>&#160;</div><div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>&#160;<span class="comment">/* RemminaMain instance */</span></div><div class="line"><a name="l01632"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7"> 1632</a></span>&#160;GtkWidget *<a class="code" href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>&#160;{</div><div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>&#160; GSimpleActionGroup *actions;</div><div class="line"><a name="l01636"></a><span class="lineno"> 1636</span>&#160; GtkAccelGroup *accel_group = NULL;</div><div class="line"><a name="l01637"></a><span class="lineno"> 1637</span>&#160;</div><div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>&#160; remminamain = g_new0(<a class="code" href="struct___remmina_main.html">RemminaMain</a>, 1);</div><div class="line"><a name="l01639"></a><span class="lineno"> 1639</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a> = g_new0(<a class="code" href="struct___remmina_main_priv.html">RemminaMainPriv</a>, 1);</div><div class="line"><a name="l01640"></a><span class="lineno"> 1640</span>&#160; <span class="comment">/* Assign UI widgets to the private members */</span></div><div class="line"><a name="l01641"></a><span class="lineno"> 1641</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a> = <a class="code" href="remmina__public_8c.html#a4573e086e1ff8507eb9447b25bf11b92">remmina_public_gtk_builder_new_from_resource</a>(<span class="stringliteral">&quot;/org/remmina/Remmina/src/../data/ui/remmina_main.glade&quot;</span>);</div><div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a> = GTK_WINDOW(RM_GET_OBJECT(<span class="stringliteral">&quot;RemminaMain&quot;</span>));</div><div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE) {</div><div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160; gtk_window_set_position(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_WIN_POS_CENTER_ALWAYS);</div><div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>&#160; gtk_window_set_default_size(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, 800, 400);</div><div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>&#160; gtk_window_set_resizable(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, FALSE);</div><div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>&#160; }</div><div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>&#160; <span class="comment">/* New Button */</span></div><div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">button_new</a> = GTK_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;button_new&quot;</span>));</div><div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE)</div><div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">button_new</a>), FALSE);</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160; <span class="comment">/* Search bar */</span></div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a> = GTK_TOGGLE_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;search_toggle&quot;</span>));</div><div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">search_bar</a> = GTK_SEARCH_BAR(RM_GET_OBJECT(<span class="stringliteral">&quot;search_bar&quot;</span>));</div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160; <span class="comment">/* view mode list/tree */</span></div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a> = GTK_TOGGLE_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;view_toggle_button&quot;</span>));</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE)</div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>), FALSE);</div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160;</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160; <span class="comment">/* Menu widgets */</span></div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a> = GTK_MENU(RM_GET_OBJECT(<span class="stringliteral">&quot;menu_popup&quot;</span>));</div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">menu_header_button</a> = GTK_MENU_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;menu_header_button&quot;</span>));</div><div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">menu_popup_full</a> = GTK_MENU(RM_GET_OBJECT(<span class="stringliteral">&quot;menu_popup_full&quot;</span>));</div><div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a98a1ddd6aebc35c131f8de819a3d861f">menu_popup_delete_rc</a> = GTK_MENU(RM_GET_OBJECT(<span class="stringliteral">&quot;menu_popup_delete_rc&quot;</span>));</div><div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE) {</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">menu_popup_full</a>), FALSE);</div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">menu_header_button</a>), FALSE);</div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160; }</div><div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>&#160; <span class="comment">/* View mode radios */</span></div><div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4">menuitem_view_mode_list</a> = GTK_RADIO_MENU_ITEM(RM_GET_OBJECT(<span class="stringliteral">&quot;menuitem_view_mode_list&quot;</span>));</div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0">menuitem_view_mode_tree</a> = GTK_RADIO_MENU_ITEM(RM_GET_OBJECT(<span class="stringliteral">&quot;menuitem_view_mode_tree&quot;</span>));</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160; <span class="comment">/* Quick connect objects */</span></div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95">box_quick_connect</a> = GTK_BOX(RM_GET_OBJECT(<span class="stringliteral">&quot;box_quick_connect&quot;</span>));</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a> = GTK_COMBO_BOX_TEXT(RM_GET_OBJECT(<span class="stringliteral">&quot;combo_quick_connect_protocol&quot;</span>));</div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE)</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>), FALSE);</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a> = GTK_ENTRY(RM_GET_OBJECT(<span class="stringliteral">&quot;entry_quick_connect_server&quot;</span>));</div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160; <span class="comment">/* Other widgets */</span></div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a> = GTK_TREE_VIEW(RM_GET_OBJECT(<span class="stringliteral">&quot;tree_files_list&quot;</span>));</div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#aa2b3c232b59da2278215d446b93db0e5">column_files_list_name</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_name&quot;</span>));</div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">column_files_list_group</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_group&quot;</span>));</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a7db532834f4fd6360956cb0e2383b0fb">column_files_list_server</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_server&quot;</span>));</div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a8e21f782dd6e0a6d80f0f622898b2a48">column_files_list_plugin</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_plugin&quot;</span>));</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a">column_files_list_date</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_date&quot;</span>));</div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">column_files_list_notes</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_notes&quot;</span>));</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160; gtk_tree_view_column_set_fixed_width(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">column_files_list_notes</a>, 100);</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a> = GTK_STATUSBAR(RM_GET_OBJECT(<span class="stringliteral">&quot;statusbar_main&quot;</span>));</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160; <span class="comment">/* signals */</span></div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160; g_signal_connect(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, <span class="stringliteral">&quot;key-release-event&quot;</span>, G_CALLBACK(<a class="code" href="remmina__main_8c.html#af129aea3f5f3ec56b061187a81d43e4c">remmina_main_search_key_event</a>), NULL);</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160; g_signal_connect(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, <span class="stringliteral">&quot;row-activated&quot;</span>, G_CALLBACK(<a class="code" href="remmina__main_8c.html#a4477897686d091d6f57e7f9401674a8c">remmina_main_tree_row_activated</a>), NULL);</div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160; <span class="comment">/* Non widget objects */</span></div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>&#160; actions = g_simple_action_group_new();</div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160; g_action_map_add_action_entries(G_ACTION_MAP(actions), <a class="code" href="remmina__main_8c.html#a923b3e2712d969eb59d9291e99f933e8">app_actions</a>, G_N_ELEMENTS(<a class="code" href="remmina__main_8c.html#a923b3e2712d969eb59d9291e99f933e8">app_actions</a>), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160; gtk_widget_insert_action_group(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>), <span class="stringliteral">&quot;app&quot;</span>, G_ACTION_GROUP(actions));</div><div class="line"><a name="l01695"></a><span class="lineno"> 1695</span>&#160; g_action_map_add_action_entries(G_ACTION_MAP(actions), <a class="code" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3">main_actions</a>, G_N_ELEMENTS(<a class="code" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3">main_actions</a>), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160; gtk_widget_insert_action_group(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>), <span class="stringliteral">&quot;main&quot;</span>, G_ACTION_GROUP(actions));</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160; g_object_unref(actions);</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>&#160; <span class="comment">/* Accelerators */</span></div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160; accel_group = gtk_accel_group_new();</div><div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>&#160; gtk_window_add_accel_group(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, accel_group);</div><div class="line"><a name="l01701"></a><span class="lineno"> 1701</span>&#160; gtk_accel_group_connect(accel_group, GDK_KEY_Q, GDK_CONTROL_MASK, 0,</div><div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>&#160; g_cclosure_new_swap(G_CALLBACK(<a class="code" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a>), NULL, NULL));</div><div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>&#160; <span class="comment">// TODO: This crash remmina because the function doesn&#39;t receive the parameter we expect</span></div><div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>&#160; gtk_accel_group_connect(accel_group, GDK_KEY_P, GDK_CONTROL_MASK, 0,</div><div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>&#160; g_cclosure_new_swap(G_CALLBACK(<a class="code" href="remmina__main_8c.html#a1e8b7e8c0f7a47dc0409ae6eb18cfc6a">remmina_main_on_accel_application_preferences</a>), NULL, NULL));</div><div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>&#160; gtk_accel_group_connect(accel_group, GDK_KEY_F, GDK_CONTROL_MASK, 0,</div><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160; g_cclosure_new_swap(G_CALLBACK(<a class="code" href="remmina__main_8c.html#aea426b2e8fc03f963bb2b98cb8649adf">remmina_main_on_accel_search_toggle</a>), remminamain, NULL));</div><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160;</div><div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160; <span class="comment">/* Connect signals */</span></div><div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160; gtk_builder_connect_signals(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a>, NULL);</div><div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>&#160; <span class="comment">/* Initialize the window and load the preferences */</span></div><div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160; <a class="code" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main_init</a>();</div><div class="line"><a name="l01713"></a><span class="lineno"> 1713</span>&#160; <span class="keywordflow">return</span> GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01714"></a><span class="lineno"> 1714</span>&#160;}</div><div class="line"><a name="l01715"></a><span class="lineno"> 1715</span>&#160;</div><div class="line"><a name="l01716"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc"> 1716</a></span>&#160;GtkWindow *<a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>()</div><div class="line"><a name="l01717"></a><span class="lineno"> 1717</span>&#160;{</div><div class="line"><a name="l01718"></a><span class="lineno"> 1718</span>&#160; <span class="keywordflow">if</span> (!remminamain)</div><div class="line"><a name="l01719"></a><span class="lineno"> 1719</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01720"></a><span class="lineno"> 1720</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>)</div><div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">initialized</a>)</div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a> = GTK_WINDOW(RM_GET_OBJECT(<span class="stringliteral">&quot;RemminaMain&quot;</span>));</div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160; <span class="keywordflow">return</span> remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>;</div><div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>&#160;}</div><div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>&#160;</div><div class="line"><a name="l01728"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a"> 1728</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file)</div><div class="line"><a name="l01729"></a><span class="lineno"> 1729</span>&#160;{</div><div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>&#160; <span class="keywordflow">if</span> (!remminamain)</div><div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>&#160;}</div><div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>&#160;</div><div class="line"><a name="l01735"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#ab2a1a54320992fb796850ffbd6a63589"> 1735</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ab2a1a54320992fb796850ffbd6a63589">remmina_main_show_dialog</a>(GtkMessageType msg, GtkButtonsType buttons, <span class="keyword">const</span> gchar* message) {</div><div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01737"></a><span class="lineno"> 1737</span>&#160;</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) {</div><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160; dialog = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, msg, buttons, <span class="stringliteral">&quot;%s&quot;</span>, message);</div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01742"></a><span class="lineno"> 1742</span>&#160; }</div><div class="line"><a name="l01743"></a><span class="lineno"> 1743</span>&#160;}</div><div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>&#160;</div><div class="line"><a name="l01745"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7"> 1745</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a>(<span class="keyword">const</span> gchar *message) {</div><div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>&#160;</div><div class="line"><a name="l01748"></a><span class="lineno"> 1748</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) {</div><div class="line"><a name="l01749"></a><span class="lineno"> 1749</span>&#160; dialog = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_WARNING, GTK_BUTTONS_CLOSE,</div><div class="line"><a name="l01750"></a><span class="lineno"> 1750</span>&#160; message, g_get_application_name());</div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160; }</div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>&#160;}</div><div class="ttc" id="remmina__file__manager_8h_html_a0155f52ba9a28e2aa0ea5d831f5d2c90"><div class="ttname"><a href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a></div><div class="ttdeci">G_BEGIN_DECLS struct _RemminaGroupData RemminaGroupData</div></div>
+<a href="remmina__main_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Remmina - The GTK+ Remote Desktop Client</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2009-2011 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2014-2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Copyright (C) 2016-2022 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Copyright (C) 2022-2023 Antenore Gatta, Giovanni Panozzo, Hiroyuki Tanaka</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * it under the terms of the GNU General Public License as published by</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version of the file(s), but you are not obligated to do so. * If you</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;ctype.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;gio/gio.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifndef __APPLE__</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;gio/gdesktopappinfo.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina_8h.html">remmina.h</a>&quot;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__string__array_8h.html">remmina_string_array.h</a>&quot;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__public_8h.html">remmina_public.h</a>&quot;</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file_8h.html">remmina_file.h</a>&quot;</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file__manager_8h.html">remmina_file_manager.h</a>&quot;</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file__editor_8h.html">remmina_file_editor.h</a>&quot;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rcw_8h.html">rcw.h</a>&quot;</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__about_8h.html">remmina_about.h</a>&quot;</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__pref_8h.html">remmina_pref.h</a>&quot;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__pref__dialog_8h.html">remmina_pref_dialog.h</a>&quot;</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__widget__pool_8h.html">remmina_widget_pool.h</a>&quot;</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__plugin__manager_8h.html">remmina_plugin_manager.h</a>&quot;</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__log_8h.html">remmina_log.h</a>&quot;</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__icon_8h.html">remmina_icon.h</a>&quot;</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__main_8h.html">remmina_main.h</a>&quot;</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__exec_8h.html">remmina_exec.h</a>&quot;</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__mpchange_8h.html">remmina_mpchange.h</a>&quot;</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__external__tools_8h.html">remmina_external_tools.h</a>&quot;</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__unlock_8h.html">remmina_unlock.h</a>&quot;</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89"> 69</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_main.html">RemminaMain</a> *<a class="code" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89">remminamain</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#define RM_GET_OBJECT(object_name) gtk_builder_get_object(remminamain-&gt;builder, object_name)</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445"> 74</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>,</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c"> 75</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>,</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b"> 76</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>,</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f"> 77</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>,</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756"> 78</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>,</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb"> 79</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>,</div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d"> 80</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>,</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454"> 81</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a>,</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a348c0cf6892b36818d9825dddc25f8e3"> 82</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a348c0cf6892b36818d9825dddc25f8e3">NOTES_COLUMN</a>,</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ac70d28409ca79aa291cc0e58244f1fe4"> 83</a></span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ac70d28409ca79aa291cc0e58244f1fe4">N_COLUMNS</a></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;};</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keyword">static</span></div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12"> 87</a></span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[] = {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/rdp&quot;</span>,</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/spice&quot;</span>,</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/vnc&quot;</span>,</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/remmina&quot;</span>,</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="stringliteral">&quot;application/x-remmina&quot;</span>,</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; NULL</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;};</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a923b3e2712d969eb59d9291e99f933e8"> 96</a></span>&#160;<span class="keyword">static</span> GActionEntry <a class="code" href="remmina__main_8c.html#a923b3e2712d969eb59d9291e99f933e8">app_actions</a>[] = {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; { <span class="stringliteral">&quot;about&quot;</span>, <a class="code" href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; { <span class="stringliteral">&quot;default&quot;</span>, <a class="code" href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; { <span class="stringliteral">&quot;mpchange&quot;</span>, <a class="code" href="remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; { <span class="stringliteral">&quot;plugins&quot;</span>, <a class="code" href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; { <span class="stringliteral">&quot;preferences&quot;</span>, <a class="code" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>, <span class="stringliteral">&quot;i&quot;</span>, NULL, NULL },</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; { <span class="stringliteral">&quot;dark&quot;</span>, <a class="code" href="remmina__main_8c.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; { <span class="stringliteral">&quot;debug&quot;</span>, <a class="code" href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; { <span class="stringliteral">&quot;community&quot;</span>, <a class="code" href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; { <span class="stringliteral">&quot;donations&quot;</span>, <a class="code" href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; { <span class="stringliteral">&quot;homepage&quot;</span>, <a class="code" href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; { <span class="stringliteral">&quot;wiki&quot;</span>, <a class="code" href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; { <span class="stringliteral">&quot;quit&quot;</span>, <a class="code" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;};</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3"> 111</a></span>&#160;<span class="keyword">static</span> GActionEntry <a class="code" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3">main_actions</a>[] = {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; { <span class="stringliteral">&quot;connect&quot;</span>, <a class="code" href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; { <span class="stringliteral">&quot;copy&quot;</span>, <a class="code" href="remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; { <span class="stringliteral">&quot;delete&quot;</span>, <a class="code" href="remmina__main_8c.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; { <span class="stringliteral">&quot;delete_multiple&quot;</span>, <a class="code" href="remmina__main_8c.html#af56bada711b2fc9c50af83b8b62dfe8b">remmina_main_on_action_connection_delete_multiple</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; { <span class="stringliteral">&quot;edit&quot;</span>, <a class="code" href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; { <span class="stringliteral">&quot;exttools&quot;</span>, <a class="code" href="remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main_on_action_connection_external_tools</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; { <span class="stringliteral">&quot;new&quot;</span>, <a class="code" href="remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; { <span class="stringliteral">&quot;export&quot;</span>, <a class="code" href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; { <span class="stringliteral">&quot;import&quot;</span>, <a class="code" href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; { <span class="stringliteral">&quot;expand&quot;</span>, <a class="code" href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; { <span class="stringliteral">&quot;collapse&quot;</span>, <a class="code" href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; { <span class="stringliteral">&quot;search&quot;</span>, <a class="code" href="remmina__main_8c.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;};</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda"> 126</a></span>&#160;<span class="keyword">static</span> GtkTargetEntry <a class="code" href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda">remmina_drop_types</a>[] =</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;{</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; { <span class="stringliteral">&quot;text/uri-list&quot;</span>, 0, 1 }</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;};</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c"> 131</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">char</span> *<a class="code" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a>[] =</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;{</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="stringliteral">&quot;RDP&quot;</span>, <span class="stringliteral">&quot;VNC&quot;</span>, <span class="stringliteral">&quot;SSH&quot;</span>, <span class="stringliteral">&quot;NX&quot;</span>, <span class="stringliteral">&quot;SPICE&quot;</span>, <span class="stringliteral">&quot;X2GO&quot;</span></div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;};</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee"> 139</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee">remmina_main_save_size</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;{</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span> ((gdk_window_get_state(gtk_widget_get_window(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>))) &amp; GDK_WINDOW_STATE_MAXIMIZED) == 0) {</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; gtk_window_get_size(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, &amp;<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">main_width</a>, &amp;<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">main_height</a>);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">main_maximize</a> = FALSE;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">main_maximize</a> = TRUE;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;}</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2"> 150</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2">remmina_main_save_expanded_group_func</a>(GtkTreeView *tree_view, GtkTreePath *path, gpointer user_data)</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;{</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; gchar *group;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; gtk_tree_model_get_iter(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter, path);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; gtk_tree_model_get(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group, -1);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">if</span> (group) {</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array_add</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>, group);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; g_free(group);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;}</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40"> 164</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main_save_expanded_group</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;{</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">if</span> (GTK_IS_TREE_STORE(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>)) {</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>)</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a> = <a class="code" href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a>();</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; gtk_tree_view_map_expanded_rows(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>,</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; (GtkTreeViewMappingFunc)<a class="code" href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2">remmina_main_save_expanded_group_func</a>, NULL);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;}</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5"> 180</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main_save_before_destroy</a>()</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;{</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">if</span> (!remminamain || !remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>)</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee">remmina_main_save_size</a>();</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="code" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main_save_expanded_group</a>();</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; g_free(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">expanded_group</a>);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">expanded_group</a> = <a class="code" href="remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array_to_string</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;}</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8"> 193</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c">remmina_main_destroy</a>()</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;{</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">if</span> (remminamain) {</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>)</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; gtk_widget_destroy(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>));</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; g_object_unref(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a>);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a> = NULL;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>)</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; g_object_unref(G_OBJECT(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>));</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; g_object_unref(G_OBJECT(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>));</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>);</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; g_free(remminamain);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; remminamain = NULL;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; }</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;}</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2"> 218</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2">remmina_main_dexit</a>(gpointer data)</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;{</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <a class="code" href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a>(<a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40">REMMINA_CONDEXIT_ONMAINWINDELETE</a>);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;}</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302"> 225</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302">remmina_main_on_delete_event</a>(GtkWidget *widget, GdkEvent *event, gpointer user_data)</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;{</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main_save_before_destroy</a>();</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; g_idle_add(<a class="code" href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2">remmina_main_dexit</a>, NULL);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;}</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div><div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a829d3ad1468d780380ae1ad693532e82"> 235</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#a829d3ad1468d780380ae1ad693532e82">remmina_main_idle_destroy</a>(gpointer data)</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;{</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">if</span> (remminamain)</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <a class="code" href="remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c">remmina_main_destroy</a>();</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;}</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a4d2d08c3fed3f72ea7f4c0600fec7ed5"> 248</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aeb74f36e5fd58ceab9f13a184bfb2029">remmina_main_on_destroy_event</a>()</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;{</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">if</span> (remminamain) {</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="comment">/* Invalidate remminamain-&gt;window to avoid multiple destructions */</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a> = NULL;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="comment">/* Destroy remminamain struct, later. We can&#39;t destroy</span></div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="comment"> * important objects like the builder now */</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; g_idle_add(<a class="code" href="remmina__main_8c.html#a829d3ad1468d780380ae1ad693532e82">remmina_main_idle_destroy</a>, NULL);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; }</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;}</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;</div><div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12"> 261</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;{</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a> = NULL;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a> = NULL;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;}</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;</div><div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5"> 272</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5">remmina_main_show_snap_welcome</a>()</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;{</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; GtkBuilder *dlgbuilder = NULL;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; GtkWidget *dlg;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; GtkWindow *parent;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordtype">int</span> result;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keyword">static</span> gboolean shown_once = FALSE;</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; gboolean need_snap_interface_connections = FALSE;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; GtkWidget *dsa;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *<a class="code" href="remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e">remmina_secret_plugin</a>;</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">if</span> (shown_once)</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; shown_once = TRUE;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; g_print(<span class="stringliteral">&quot;Remmina is compiled as a SNAP package.\n&quot;</span>);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; remmina_secret_plugin = <a class="code" href="remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager_get_secret_plugin</a>();</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">if</span> (remmina_secret_plugin == NULL) {</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; g_print(<span class="stringliteral">&quot; but we can’t find the secret plugin inside the SNAP.\n&quot;</span>);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; need_snap_interface_connections = TRUE;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">if</span> (!remmina_secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a2123e14795b104f5fe8d77a4b7847261">is_service_available</a>(remmina_secret_plugin)) {</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; g_print(<span class="stringliteral">&quot; but we can’t access a secret service. Secret service or SNAP interface connection is missing.\n&quot;</span>);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; need_snap_interface_connections = TRUE;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; }</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">if</span> (need_snap_interface_connections &amp;&amp; !<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7">prevent_snap_welcome_message</a>) {</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; dlgbuilder = <a class="code" href="remmina__public_8c.html#a4573e086e1ff8507eb9447b25bf11b92">remmina_public_gtk_builder_new_from_resource</a>(<span class="stringliteral">&quot;/org/remmina/Remmina/src/../data/ui/remmina_snap_info_dialog.glade&quot;</span>);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; dsa = GTK_WIDGET(gtk_builder_get_object(dlgbuilder, <span class="stringliteral">&quot;dontshowagain&quot;</span>));</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">if</span> (dlgbuilder) {</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; parent = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; dlg = GTK_WIDGET(gtk_builder_get_object(dlgbuilder, <span class="stringliteral">&quot;SnapInfoDlg&quot;</span>));</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">if</span> (parent)</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(dlg), parent);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; gtk_builder_connect_signals(dlgbuilder, NULL);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; result = gtk_dialog_run(GTK_DIALOG(dlg));</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">if</span> (result == 1) {</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7">prevent_snap_welcome_message</a> = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dsa));</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; }</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; gtk_widget_destroy(dlg);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; g_object_unref(dlgbuilder);</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; }</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;}</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;</div><div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66"> 322</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66">remmina_main_selection_func</a>(GtkTreeSelection *selection, GtkTreeModel *model, GtkTreePath *path,</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; gboolean path_currently_selected, gpointer user_data)</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;{</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; guint context_id;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; gchar buf[1000];</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">if</span> (path_currently_selected)</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_get_iter(model, &amp;iter, path))</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>();</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; gtk_tree_model_get(model, &amp;iter,</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, &amp;remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>,</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>,</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; -1);</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; context_id = gtk_statusbar_get_context_id(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, <span class="stringliteral">&quot;status&quot;</span>);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; gtk_statusbar_pop(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, context_id);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>) {</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%s (%s)&quot;</span>, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; gtk_statusbar_push(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, context_id, buf);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; gtk_statusbar_push(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, context_id, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; }</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;}</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;</div><div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6"> 355</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6">remmina_main_load_file_list_callback</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;{</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; GtkListStore *store;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; store = GTK_LIST_STORE(user_data);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; gchar *datetime;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; datetime = <a class="code" href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a>(remminafile);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; gtk_list_store_set(store, &amp;iter,</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a>(remminafile),</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>),</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a348c0cf6892b36818d9825dddc25f8e3">NOTES_COLUMN</a>, g_uri_unescape_string(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;notes_text&quot;</span>), NULL),</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;group&quot;</span>),</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>),</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>),</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, datetime,</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, <a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(remminafile),</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;labels&quot;</span>),</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; -1);</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; g_free(datetime);</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;}</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;</div><div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5"> 380</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5">remmina_main_load_file_tree_traverse</a>(GNode *<a class="code" href="remmina__ssh_8c.html#a85d5bd836f83ef1dbbcf4657f32e0792">node</a>, GtkTreeStore *store, GtkTreeIter *parent)</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;{</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; GtkTreeIter *iter;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a> *data;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; GNode *child;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; iter = NULL;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">if</span> (node-&gt;data) {</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; data = (<a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a> *)node-&gt;data;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; iter = g_new0(GtkTreeIter, 1);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; gtk_tree_store_append(store, iter, parent);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; gtk_tree_store_set(store, iter,</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>, <span class="stringliteral">&quot;folder-symbolic&quot;</span>,</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, data-&gt;name,</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, data-&gt;group,</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, data-&gt;datetime,</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, NULL,</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a>, data-&gt;labels,</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; -1);</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; }</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">for</span> (child = g_node_first_child(node); child; child = g_node_next_sibling(child))</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <a class="code" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5">remmina_main_load_file_tree_traverse</a>(child, store, iter);</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; g_free(iter);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;}</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;</div><div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296"> 407</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296">remmina_main_load_file_tree_group</a>(GtkTreeStore *store)</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;{</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; GNode *root;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; root = <a class="code" href="remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857">remmina_file_manager_get_group_tree</a>();</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5">remmina_main_load_file_tree_traverse</a>(root, store, NULL);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <a class="code" href="remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager_free_group_tree</a>(root);</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;}</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;</div><div class="line"><a name="l00417"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c"> 417</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c">remmina_main_expand_group_traverse</a>(GtkTreeIter *iter)</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160;{</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; GtkTreeModel *tree;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; gboolean ret;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; gchar *group, *filename;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; GtkTreeIter child;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; GtkTreePath *path;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; tree = remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; ret = TRUE;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">while</span> (ret) {</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; gtk_tree_model_get(tree, iter, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;filename, -1);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordflow">if</span> (filename == NULL) {</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array_find</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>, group) &gt;= 0) {</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; path = gtk_tree_model_get_path(tree, iter);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; gtk_tree_view_expand_row(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, path, FALSE);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; }</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">if</span> (gtk_tree_model_iter_children(tree, &amp;child, iter))</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c">remmina_main_expand_group_traverse</a>(&amp;child);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; g_free(group);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; g_free(filename);</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; ret = gtk_tree_model_iter_next(tree, iter);</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; }</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;}</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;</div><div class="line"><a name="l00446"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e"> 446</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e">remmina_main_expand_group</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;{</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160;</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">if</span> (gtk_tree_model_get_iter_first(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter))</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <a class="code" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c">remmina_main_expand_group_traverse</a>(&amp;iter);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160;}</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;</div><div class="line"><a name="l00455"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497"> 455</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497">remmina_main_load_file_tree_find</a>(GtkTreeModel *tree, GtkTreeIter *iter, <span class="keyword">const</span> gchar *match_group)</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;{</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; gboolean ret, match;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; gchar *group, *filename;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; GtkTreeIter child;</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; match = FALSE;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; ret = TRUE;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keywordflow">while</span> (ret) {</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; gtk_tree_model_get(tree, iter, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;filename, -1);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; match = (filename == NULL &amp;&amp; g_strcmp0(group, match_group) == 0);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; g_free(group);</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; g_free(filename);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="keywordflow">if</span> (match)</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordflow">if</span> (gtk_tree_model_iter_children(tree, &amp;child, iter)) {</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; match = <a class="code" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497">remmina_main_load_file_tree_find</a>(tree, &amp;child, match_group);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keywordflow">if</span> (match) {</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; memcpy(iter, &amp;child, <span class="keyword">sizeof</span>(GtkTreeIter));</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; }</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; }</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; ret = gtk_tree_model_iter_next(tree, iter);</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; }</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keywordflow">return</span> match;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;}</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;</div><div class="line"><a name="l00483"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4"> 483</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4">remmina_main_load_file_tree_callback</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;{</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; GtkTreeIter iter, child;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; GtkTreeStore *store;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; gboolean found;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; gchar *datetime = NULL;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; store = GTK_TREE_STORE(user_data);</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; found = FALSE;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="keywordflow">if</span> (gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &amp;iter))</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; found = <a class="code" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497">remmina_main_load_file_tree_find</a>(GTK_TREE_MODEL(store), &amp;iter,</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;group&quot;</span>));</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; datetime = <a class="code" href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a>(remminafile);</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <span class="comment">//REMMINA_DEBUG(&quot;The date is %s&quot;, datetime);</span></div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; gtk_tree_store_append(store, &amp;child, (found ? &amp;iter : NULL));</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; gtk_tree_store_set(store, &amp;child,</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a>(remminafile),</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>),</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a348c0cf6892b36818d9825dddc25f8e3">NOTES_COLUMN</a>, g_uri_unescape_string(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;notes_text&quot;</span>), NULL),</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;group&quot;</span>),</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>),</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>),</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, datetime,</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, <a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(remminafile),</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;labels&quot;</span>),</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; -1);</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; g_free(datetime);</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;}</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;</div><div class="line"><a name="l00515"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7"> 515</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7">remmina_main_file_model_on_sort</a>(GtkTreeSortable *sortable, gpointer user_data)</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;{</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; gint columnid;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; GtkSortType order;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160;</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; gtk_tree_sortable_get_sort_column_id(sortable, &amp;columnid, &amp;order);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">main_sort_column_id</a> = columnid;</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4">main_sort_order</a> = order;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;}</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160;</div><div class="line"><a name="l00527"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800"> 527</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800">remmina_main_filter_visible_func</a>(GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;{</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; gchar *text;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; gchar *protocol, *name, *labels, *group, *server, *plugin, *date, *s;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; gboolean result = TRUE;</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; text = g_ascii_strdown(gtk_entry_get_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>), -1);</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; <span class="keywordflow">if</span> (text &amp;&amp; text[0]) {</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; gtk_tree_model_get(model, iter,</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>, &amp;protocol,</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, &amp;name,</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group,</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>, &amp;server,</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>, &amp;plugin,</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, &amp;date,</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a>, &amp;labels,</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; -1);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(protocol, <span class="stringliteral">&quot;folder-symbolic&quot;</span>) != 0) {</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; s = g_ascii_strdown(name ? name : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; g_free(name);</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; name = s;</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; s = g_ascii_strdown(group ? group : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; g_free(group);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; group = s;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; s = g_ascii_strdown(server ? server : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; g_free(server);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; server = s;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; s = g_ascii_strdown(plugin ? plugin : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; g_free(plugin);</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; plugin = s;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; s = g_ascii_strdown(date ? date : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; g_free(date);</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; date = s;</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; result = (strstr(name, text) || strstr(group, text) || strstr(server, text) || strstr(plugin, text) || strstr(date, text));</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; <span class="comment">// Filter by labels</span></div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; s = g_ascii_strdown(labels ? labels : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; g_free(labels);</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; labels = s;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <span class="keywordflow">if</span> (strlen(labels) &gt; 0) {</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; gboolean labels_result = TRUE;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; gchar **labels_array = g_strsplit(labels, <span class="stringliteral">&quot;,&quot;</span>, -1);</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; gchar **text_array = g_strsplit(text, <span class="stringliteral">&quot;,&quot;</span>, -1);</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> t = 0; (NULL != text_array[t]); t++) {</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; <span class="keywordflow">if</span> (0 == strlen(text_array[t])) {</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; }</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; gboolean text_result = FALSE;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> l = 0; (NULL != labels_array[l]); l++) {</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; <span class="keywordflow">if</span> (0 == strlen(labels_array[l])) {</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; }</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; text_result = (text_result || strstr(labels_array[l], text_array[t]));</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">if</span> (text_result) {</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; }</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; }</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; labels_result = (labels_result &amp;&amp; text_result);</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160;</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <span class="keywordflow">if</span> (!labels_result) {</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; }</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; }</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160;</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; result = (result || labels_result);</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160;</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; g_strfreev(labels_array);</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; g_strfreev(text_array);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; }</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; }</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; g_free(protocol);</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; g_free(name);</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; g_free(labels);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; g_free(group);</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; g_free(server);</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; g_free(plugin);</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; g_free(date);</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; }</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; g_free(text);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160;}</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160;</div><div class="line"><a name="l00618"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355"> 618</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main_select_file</a>(<span class="keyword">const</span> gchar *filename)</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160;{</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; GtkTreePath *path;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; gchar *item_filename;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; gboolean cmp;</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_get_iter_first(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter))</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160;</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keywordflow">while</span> (TRUE) {</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; gtk_tree_model_get(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter, <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;item_filename, -1);</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; cmp = g_strcmp0(item_filename, filename);</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; g_free(item_filename);</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keywordflow">if</span> (cmp == 0) {</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; gtk_tree_selection_select_iter(gtk_tree_view_get_selection(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>),</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; &amp;iter);</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; path = gtk_tree_model_get_path(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter);</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; gtk_tree_view_scroll_to_cell(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, path, NULL, TRUE, 0.5, 0.0);</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; }</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_iter_next(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>, &amp;iter))</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; }</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;}</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160;</div><div class="line"><a name="l00646"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7"> 646</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>()</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160;{</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; gint items_count;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; gchar buf[200];</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; guint context_id;</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; gint view_file_mode;</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; gboolean always_show_notes;</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keywordtype">char</span> *save_selected_filename;</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; GtkTreeModel *newmodel;</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keyword">const</span> gchar *neticon;</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <span class="keyword">const</span> gchar *connection_tooltip;</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160;</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; save_selected_filename = g_strdup(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <a class="code" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main_save_expanded_group</a>();</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160;</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; view_file_mode = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a>;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a>)</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; view_file_mode = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>;</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160;</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; <span class="keywordflow">switch</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a>) {</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>:</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; gtk_toggle_button_set_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>, FALSE);</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>:</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; gtk_toggle_button_set_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>, TRUE);</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; }</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160;</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keywordflow">switch</span> (view_file_mode) {</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>:</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; <span class="comment">/* Create new GtkTreeStore model */</span></div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; newmodel = GTK_TREE_MODEL(gtk_tree_store_new(9, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING));</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="comment">/* Hide the Group column in the tree view mode */</span></div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; gtk_tree_view_column_set_visible(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">column_files_list_group</a>, FALSE);</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="comment">/* Load groups first */</span></div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <a class="code" href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296">remmina_main_load_file_tree_group</a>(GTK_TREE_STORE(newmodel));</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; <span class="comment">/* Load files list */</span></div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; items_count = <a class="code" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a>((GFunc)<a class="code" href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4">remmina_main_load_file_tree_callback</a>, (gpointer)newmodel);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160;</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>:</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; <span class="comment">/* Create new GtkListStore model */</span></div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; newmodel = GTK_TREE_MODEL(gtk_list_store_new(9, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING));</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <span class="comment">/* Show the Group column in the list view mode */</span></div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; gtk_tree_view_column_set_visible(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">column_files_list_group</a>, TRUE);</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="comment">/* Load files list */</span></div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; items_count = <a class="code" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a>((GFunc)<a class="code" href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6">remmina_main_load_file_list_callback</a>, (gpointer)newmodel);</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; }</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160;</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="comment">/* Set note column visibility*/</span></div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; always_show_notes = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a320861799b86dc076d5f87e3a216eb95">always_show_notes</a>;</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <span class="keywordflow">if</span> (!always_show_notes){</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; gtk_tree_view_column_set_visible(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">column_files_list_notes</a>, FALSE);</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; }</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <span class="comment">/* Unset old model */</span></div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; gtk_tree_view_set_model(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, NULL);</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; <span class="comment">/* Destroy the old model and save the new one */</span></div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a> = newmodel;</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160;</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="comment">/* Create a sorted filtered model based on newmodel and apply it to the TreeView */</span></div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a> = gtk_tree_model_filter_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>, NULL);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; gtk_tree_model_filter_set_visible_func(GTK_TREE_MODEL_FILTER(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>),</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; (GtkTreeModelFilterVisibleFunc)<a class="code" href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800">remmina_main_filter_visible_func</a>, NULL, NULL);</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a> = gtk_tree_model_sort_new_with_model(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>);</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>),</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">main_sort_column_id</a>,</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4">main_sort_order</a>);</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; gtk_tree_view_set_model(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>);</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; g_signal_connect(G_OBJECT(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>), <span class="stringliteral">&quot;sort-column-changed&quot;</span>,</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; G_CALLBACK(<a class="code" href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7">remmina_main_file_model_on_sort</a>), NULL);</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <a class="code" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e">remmina_main_expand_group</a>();</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="comment">/* Select the file previously selected */</span></div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <span class="keywordflow">if</span> (save_selected_filename) {</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; <a class="code" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main_select_file</a>(save_selected_filename);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; g_free(save_selected_filename);</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; }</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; gtk_tree_view_column_set_widget(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a">column_files_list_date</a>, NULL);</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; GtkWidget *label = gtk_tree_view_column_get_button(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a">column_files_list_date</a>);</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160;</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; gtk_widget_set_tooltip_text(GTK_WIDGET(label),</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; _(<span class="stringliteral">&quot;The latest successful connection attempt, or a pre-computed date&quot;</span>));</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; <span class="comment">/* Show in the status bar the total number of connections found */</span></div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), ngettext(<span class="stringliteral">&quot;Total %i item.&quot;</span>, <span class="stringliteral">&quot;Total %i items.&quot;</span>, items_count), items_count);</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; context_id = gtk_statusbar_get_context_id(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, <span class="stringliteral">&quot;status&quot;</span>);</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; gtk_statusbar_pop(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, context_id);</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; gtk_statusbar_push(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>, context_id, buf);</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <a class="code" href="remmina__monitor_8c.html#acf79b91eb05694ec967d726bd0f85e50">remmina_network_monitor_status</a> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150">monitor</a>);</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150">monitor</a>-&gt;<a class="code" href="struct___remmina_monitor.html#adaa8ac5463302ab18a45171b5e4618f1">connected</a>){</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; neticon = g_strdup(<span class="stringliteral">&quot;network-transmit-receive-symbolic&quot;</span>);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; connection_tooltip = g_strdup(_(<span class="stringliteral">&quot;Network status: fully online&quot;</span>));</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; neticon = g_strdup(<span class="stringliteral">&quot;network-offline-symbolic&quot;</span>);</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; connection_tooltip = g_strdup(_(<span class="stringliteral">&quot;Network status: offline&quot;</span>));</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; }</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160;</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; <span class="keywordflow">if</span> (GTK_IS_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>))</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; gtk_widget_destroy(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>);</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; GIcon *icon = g_themed_icon_new (neticon);</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a> = gtk_image_new_from_gicon (icon, GTK_ICON_SIZE_BUTTON);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; gtk_widget_set_tooltip_text (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>, connection_tooltip);</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160;</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; g_object_unref (icon);</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160;</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; gtk_box_pack_start (GTK_BOX(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>, FALSE, FALSE, 0);</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; gtk_widget_show (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>);</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160;</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160;}</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160;</div><div class="line"><a name="l00762"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a627eb26ab02f0093365ed6b10dab0320"> 762</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a627eb26ab02f0093365ed6b10dab0320">remmina_main_load_files_cb</a>(GtkEntry *entry, <span class="keywordtype">char</span> *<span class="keywordtype">string</span>, gpointer user_data)</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160;{</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160;}</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160;</div><div class="line"><a name="l00768"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d"> 768</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160;{</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160;</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160;</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160;</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160;</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; <span class="keywordflow">if</span> (remminafile == NULL)</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160;</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_connect&quot;</span>)</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (remminafile, <span class="stringliteral">&quot;profile-lock&quot;</span>, FALSE) == 1</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160;</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <a class="code" href="remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a>(remminafile);</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; <a class="code" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160;</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160;}</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160;</div><div class="line"><a name="l00796"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1"> 796</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main_on_action_connection_external_tools</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160;{</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160;</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; <a class="code" href="remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d">remmina_external_tools_from_filename</a>(remminamain, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160;}</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160;</div><div class="line"><a name="l00805"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd"> 805</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd">remmina_main_file_editor_destroy</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160;{</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160;</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; <span class="keywordflow">if</span> (!remminamain)</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160;}</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160;</div><div class="line"><a name="l00814"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229"> 814</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160;{</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160;</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; <span class="keyword">const</span> gchar *username;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <span class="keyword">const</span> gchar *domain;</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; <span class="keyword">const</span> gchar *group;</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; <span class="keyword">const</span> gchar *gatewayusername;</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; <span class="keyword">const</span> gchar *gatewaydomain;</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160;</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; username = domain = group = gatewayusername = gatewaydomain = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160;</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; remminafile = NULL;</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160;</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160;</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>) {</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; <span class="keywordflow">if</span> (remminafile != NULL) {</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; username = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>);</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; domain = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;domain&quot;</span>);</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; group = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;group&quot;</span>);</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; gatewayusername = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_username&quot;</span>);</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; gatewaydomain = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_domain&quot;</span>);</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; }</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; }</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160;</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <a class="code" href="remmina__mpchange_8c.html#aa5a382490ca5e92bc4b124f66d83c4ff">remmina_mpchange_schedule</a>(TRUE, group, domain, username, <span class="stringliteral">&quot;&quot;</span>, gatewayusername, gatewaydomain, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160;</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; <span class="keywordflow">if</span> (remminafile != NULL)</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160;}</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160;</div><div class="line"><a name="l00851"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af"> 851</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160;{</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE)</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160;</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160;</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor_new</a>();</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd">remmina_main_file_editor_destroy</a>), remminamain);</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(widget), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160;}</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160;</div><div class="line"><a name="l00870"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#af129aea3f5f3ec56b061187a81d43e4c"> 870</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#af129aea3f5f3ec56b061187a81d43e4c">remmina_main_search_key_event</a>(GtkWidget *search_entry, GdkEventKey *event, gpointer user_data)</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160;{</div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; <span class="keywordflow">if</span> (event-&gt;keyval == GDK_KEY_Escape) {</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; gtk_entry_set_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;search_toggle&quot;</span>)), FALSE);</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; }</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160;}</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160;</div><div class="line"><a name="l00881"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a4477897686d091d6f57e7f9401674a8c"> 881</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a4477897686d091d6f57e7f9401674a8c">remmina_main_tree_row_activated</a>(GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data)</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160;{</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160; <span class="keywordflow">if</span> (gtk_tree_view_row_expanded(tree, path))</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; gtk_tree_view_collapse_row(tree, path);</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; gtk_tree_view_expand_row(tree, path, FALSE);</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160;}</div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160;</div><div class="line"><a name="l00891"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766"> 891</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766">remmina_main_on_view_toggle</a>()</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160;{</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; <span class="keywordflow">if</span> (gtk_toggle_button_get_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>)) {</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>) {</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>;</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; gtk_entry_set_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; }</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>) {</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>;</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; gtk_entry_set_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; }</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>&#160; }</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160;}</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160;</div><div class="line"><a name="l00910"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1"> 910</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160;{</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160;</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160;</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160;</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160;</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; <span class="keywordflow">if</span> (((<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>))</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; || <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (remminafile, <span class="stringliteral">&quot;profile-lock&quot;</span>, FALSE))</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160;</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; remminafile = NULL;</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; }</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160;</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor_new_copy</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; <span class="keywordflow">if</span> (widget) {</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd">remmina_main_file_editor_destroy</a>), remminamain);</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(widget), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; }</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; <span class="comment">/* Select the file previously selected */</span></div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; <a class="code" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main_select_file</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160;}</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160;</div><div class="line"><a name="l00946"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc"> 946</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160;{</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160;</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160;</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160;</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; &amp;&amp; (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; || <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (remminafile, <span class="stringliteral">&quot;profile-lock&quot;</span>, FALSE))</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160;</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; remminafile = NULL;</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; }</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160;</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor_new_from_filename</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; <span class="keywordflow">if</span> (widget) {</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(widget), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; }</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160;<span class="comment">/* Select the file previously selected */</span></div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; <a class="code" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main_select_file</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160;}</div><div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160;</div><div class="line"><a name="l00977"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a10e574723222f5df9db456977e62a093"> 977</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160;{</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160;</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160;</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160;</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160; <span class="keywordflow">if</span> (((<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>))</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160; || <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (remminafile, <span class="stringliteral">&quot;profile-lock&quot;</span>, FALSE))</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160;</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; remminafile = NULL;</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160; }</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160;</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160; dialog = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160; _(<span class="stringliteral">&quot;Are you sure you want to delete “%s”?&quot;</span>), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>);</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_YES) {</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; gchar *delfilename = g_strdup(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; <a class="code" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a>(delfilename);</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; g_free(delfilename), delfilename = NULL;</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; <a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>();</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160; }</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160; <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>();</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;}</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;</div><div class="line"><a name="l01011"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#af56bada711b2fc9c50af83b8b62dfe8b"> 1011</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#af56bada711b2fc9c50af83b8b62dfe8b">remmina_main_on_action_connection_delete_multiple</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;{</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; GtkTreeSelection *sel = gtk_tree_view_get_selection(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>);</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; GtkTreeModel *model = gtk_tree_view_get_model(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>);</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; GList *list = gtk_tree_selection_get_selected_rows(sel, &amp;model);</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; gchar *file_to_delete;</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160; dialog = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; _(<span class="stringliteral">&quot;Are you sure you want to delete the selected files?&quot;</span>));</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160;</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160; <span class="comment">// Delete files if Yes is clicked</span></div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_YES) {</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160; <span class="keywordflow">while</span> (list) {</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; GtkTreePath *path = list-&gt;data;</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160; </div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_get_iter(model, &amp;iter, path)) {</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; GtkWidget *dialog_warning;</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; dialog_warning = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_WARNING, GTK_BUTTONS_OK, </div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160; _(<span class="stringliteral">&quot;Failed to delete files!&quot;</span>));</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog_warning));</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160; gtk_widget_destroy(dialog_warning);</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>();</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160; }</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; gtk_tree_model_get(model, &amp;iter, </div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160; <a class="code" href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;file_to_delete, -1);</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(file_to_delete);</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160; <span class="keywordflow">if</span> (((<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;lock_edit&quot;</span>)</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160; &amp;&amp; <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>))</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; || <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (remminafile, <span class="stringliteral">&quot;profile-lock&quot;</span>, FALSE))</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160; remminafile = NULL;</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; }</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; gchar *delfilename = g_strdup(file_to_delete);</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160; <a class="code" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a>(delfilename);</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160; g_free(delfilename), delfilename = NULL;</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; <a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>();</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; list = g_list_next(list);</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160; }</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160; }</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; </div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>();</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;}</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;</div><div class="line"><a name="l01069"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a1e8b7e8c0f7a47dc0409ae6eb18cfc6a"> 1069</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a1e8b7e8c0f7a47dc0409ae6eb18cfc6a">remmina_main_on_accel_application_preferences</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160;{</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; GVariant *v = g_variant_new(<span class="stringliteral">&quot;i&quot;</span>, 0);</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; <a class="code" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>(NULL, v, NULL);</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;}</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;</div><div class="line"><a name="l01077"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a1bdf3fe7a3de2371f80adcbdcf50381d"> 1077</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a1bdf3fe7a3de2371f80adcbdcf50381d">remmina_main_reload_preferences</a>()</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;{</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160; GtkSettings *settings;</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; settings = gtk_settings_get_default();</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160; g_object_set(settings, <span class="stringliteral">&quot;gtk-application-prefer-dark-theme&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">dark_theme</a>, NULL);</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a>){</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160; gtk_toggle_button_set_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a>, FALSE);</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160; }</div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160; <span class="keywordflow">else</span>{</div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160; gtk_toggle_button_set_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a>, TRUE);</div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160; }</div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160; gtk_tree_view_column_set_visible(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">column_files_list_notes</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a320861799b86dc076d5f87e3a216eb95">always_show_notes</a>);</div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160;}</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;</div><div class="line"><a name="l01091"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92"> 1091</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;{</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Opening the preferences&quot;</span>);</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; gint32 tab_num;</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; <span class="keywordflow">if</span> (param) {</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Parameter passed to preferences of type %s&quot;</span>, g_variant_get_type_string(param));</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160; tab_num = g_variant_get_int32(param);</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;We got a parameter for the preferences: %d&quot;</span>, tab_num);</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160; tab_num = 0;</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; }</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160;</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="stringliteral">&quot;use_primary_password&quot;</span>)</div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160; &amp;&amp; <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) == 0)</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160;</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160; GtkWidget *widget = <a class="code" href="remmina__pref__dialog_8c.html#ab09f64d25a5a016281a56edca7e2d70a">remmina_pref_dialog_new</a>(tab_num, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160; gtk_widget_show_all(widget); </div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;}</div><div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160;</div><div class="line"><a name="l01115"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1"> 1115</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160;{</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;<span class="preprocessor">#ifndef __APPLE__</span></div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; g_autoptr(GError) error = NULL;</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; GDesktopAppInfo *desktop_info;</div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160; GAppInfo *info = NULL;</div><div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160; g_autofree gchar *<span class="keywordtype">id</span> = g_strconcat(REMMINA_APP_ID, <span class="stringliteral">&quot;.desktop&quot;</span>, NULL);</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160; desktop_info = g_desktop_app_info_new(<span class="keywordtype">id</span>);</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; <span class="keywordflow">if</span> (!desktop_info)</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; info = G_APP_INFO(desktop_info);</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160;</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; <span class="keywordflow">for</span> (i = 0; <a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i]; i++) {</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; <span class="keywordflow">if</span> (!g_app_info_set_as_default_for_type(info, <a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i], &amp;error))</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; g_warning(<span class="stringliteral">&quot;Failed to set &#39;%s&#39; as the default application for secondary content type &#39;%s&#39;: %s&quot;</span>,</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; g_app_info_get_name(info), <a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i], error-&gt;message);</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; g_debug(<span class="stringliteral">&quot;Set &#39;%s&#39; as the default application for &#39;%s&#39;&quot;</span>,</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160; g_app_info_get_name(info),</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; <a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i]);</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160; }</div><div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160;}</div><div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160;</div><div class="line"><a name="l01143"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a"> 1143</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;{</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160; <span class="comment">// Called by quit signal in remmina_main.glade</span></div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160; g_debug(<span class="stringliteral">&quot;Quit intercept&quot;</span>);</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160; <a class="code" href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a>(<a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284">REMMINA_CONDEXIT_ONQUIT</a>);</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;}</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160;</div><div class="line"><a name="l01151"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db"> 1151</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db">remmina_main_on_date_column_sort_clicked</a>()</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;{</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>) {</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a> = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>;</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; gtk_entry_set_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; }</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;}</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160;</div><div class="line"><a name="l01161"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20"> 1161</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a>(GSList *files)</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160;{</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; GtkWidget *dlg;</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160; GSList *element;</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; gchar *path;</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; <a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *plugin;</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; GString *err;</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = NULL;</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160; gboolean imported;</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160;</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160; err = g_string_new(NULL);</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; imported = FALSE;</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; <span class="keywordflow">for</span> (element = files; element; element = element-&gt;next) {</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; path = (gchar *)element-&gt;data;</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160; plugin = <a class="code" href="remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager_get_import_file_handler</a>(path);</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160; <span class="keywordflow">if</span> (plugin &amp;&amp; (remminafile = plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#a597178a88c755ebe0614897b7aa279b1">import_func</a>(plugin, path)) != NULL &amp;&amp; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>)) {</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160; <a class="code" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a>(remminafile);</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(remminafile);</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; imported = TRUE;</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160; g_string_append(err, path);</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; g_string_append_c(err, <span class="charliteral">&#39;\n&#39;</span>);</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; }</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; remminafile = NULL;</div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160; }</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160; g_free(path);</div><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160; }</div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160; g_slist_free(files);</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160; <span class="keywordflow">if</span> (err-&gt;len &gt; 0) {</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; dlg = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; _(<span class="stringliteral">&quot;Unable to import:\n%s&quot;</span>), err-&gt;str);</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160; g_signal_connect(G_OBJECT(dlg), <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(gtk_widget_destroy), NULL);</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; gtk_widget_show(dlg);</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; }</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160; g_string_free(err, TRUE);</div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160; <span class="keywordflow">if</span> (imported)</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160;}</div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160;</div><div class="line"><a name="l01204"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d"> 1204</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d">remmina_main_action_tools_import_on_response</a>(GtkDialog *dialog, gint response_id, gpointer user_data)</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160;{</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160; GSList *files;</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160; <span class="keywordflow">if</span> (response_id == GTK_RESPONSE_ACCEPT) {</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160; files = gtk_file_chooser_get_filenames(GTK_FILE_CHOOSER(dialog));</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160; <a class="code" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a>(files);</div><div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160; }</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160;}</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160;</div><div class="line"><a name="l01216"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c"> 1216</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160;{</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160;</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160; dialog = gtk_file_chooser_dialog_new(_(<span class="stringliteral">&quot;Import&quot;</span>), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_FILE_CHOOSER_ACTION_OPEN, <span class="stringliteral">&quot;Import&quot;</span>,</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; GTK_RESPONSE_ACCEPT, NULL);</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160; gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(dialog), TRUE);</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160; g_signal_connect(G_OBJECT(dialog), <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(<a class="code" href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d">remmina_main_action_tools_import_on_response</a>), NULL);</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160;}</div><div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160;</div><div class="line"><a name="l01228"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d"> 1228</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160;{</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160; <a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *plugin;</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160;</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>)</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160;</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>);</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; <span class="keywordflow">if</span> (remminafile == NULL)</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160; plugin = <a class="code" href="remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager_get_export_file_handler</a>(remminafile);</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160; <span class="keywordflow">if</span> (plugin) {</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160; dialog = gtk_file_chooser_dialog_new(plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f">export_hints</a>, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>,</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160; GTK_FILE_CHOOSER_ACTION_SAVE, _(<span class="stringliteral">&quot;_Save&quot;</span>), GTK_RESPONSE_ACCEPT, NULL);</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT)</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160; plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#a8bf634ff09caba624ecf93c42e12af78">export_func</a>(plugin, remminafile, gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)));</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; dialog = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160; _(<span class="stringliteral">&quot;This protocol does not support exporting.&quot;</span>));</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160; g_signal_connect(G_OBJECT(dialog), <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(gtk_widget_destroy), NULL);</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160; }</div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160;}</div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160;</div><div class="line"><a name="l01257"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc"> 1257</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160;{</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager_show</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160;}</div><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160;</div><div class="line"><a name="l01263"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a91f22c2834ac7f38d201d8d678f8c57b"> 1263</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160;{</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160; GtkSettings *settings;</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160;</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160; settings = gtk_settings_get_default();</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160;</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160; <span class="keywordflow">if</span> (gtk_switch_get_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a912f2057752ad0779485c3303e3e9b04">switch_dark_mode</a>))</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">dark_theme</a> = 1;</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">dark_theme</a> = 0;</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160;</div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160; g_object_set(settings, <span class="stringliteral">&quot;gtk-application-prefer-dark-theme&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">dark_theme</a>, NULL);</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160;}</div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160;</div><div class="line"><a name="l01279"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a"> 1279</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160;{</div><div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>&#160; g_app_info_launch_default_for_uri(<span class="stringliteral">&quot;https://www.remmina.org&quot;</span>, NULL, NULL);</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;}</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160;</div><div class="line"><a name="l01285"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a0c32fe66988056b353220128611b9116"> 1285</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160;{</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160; g_app_info_launch_default_for_uri(<span class="stringliteral">&quot;https://gitlab.com/Remmina/Remmina/wikis/home&quot;</span>, NULL, NULL);</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160;}</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160;</div><div class="line"><a name="l01291"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32"> 1291</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>&#160;{</div><div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160; g_app_info_launch_default_for_uri(<span class="stringliteral">&quot;https://remmina.org/community&quot;</span>, NULL, NULL);</div><div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160;}</div><div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>&#160;</div><div class="line"><a name="l01297"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277"> 1297</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>&#160;{</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>&#160; g_app_info_launch_default_for_uri(<span class="stringliteral">&quot;https://www.remmina.org/donations&quot;</span>, NULL, NULL);</div><div class="line"><a name="l01301"></a><span class="lineno"> 1301</span>&#160;}</div><div class="line"><a name="l01302"></a><span class="lineno"> 1302</span>&#160;</div><div class="line"><a name="l01303"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc"> 1303</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160;{</div><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>&#160; <a class="code" href="remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d">remmina_log_start</a>();</div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160;}</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160;</div><div class="line"><a name="l01309"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc"> 1309</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160;{</div><div class="line"><a name="l01311"></a><span class="lineno"> 1311</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01312"></a><span class="lineno"> 1312</span>&#160; <a class="code" href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about_open</a>(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>&#160;};</div><div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>&#160;</div><div class="line"><a name="l01315"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a1f5f9a964a75214d500e7a9fca1bd8a6"> 1315</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a1f5f9a964a75214d500e7a9fca1bd8a6">is_empty</a>(<span class="keyword">const</span> gchar *s)</div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160;{</div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160; <span class="keywordflow">if</span> (s == NULL)</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160; <span class="keywordflow">while</span> (*s != 0) {</div><div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160; <span class="keywordflow">if</span> (!isspace((<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>)*s))</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160; s++;</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160; }</div><div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160;}</div><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160;</div><div class="line"><a name="l01327"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01"> 1327</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01">remmina_main_quickconnect</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160;{</div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160; gchar *server;</div><div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160; gchar *server_trimmed;</div><div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160; gchar *qcp;</div><div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160;</div><div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160;</div><div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160; <span class="comment">/* Save quick connect protocol if different from the previous one */</span></div><div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160; qcp = gtk_combo_box_text_get_active_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>);</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160; <span class="keywordflow">if</span> (qcp &amp;&amp; strcmp(qcp, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a>) != 0) {</div><div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160; g_free(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a>);</div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a> = g_strdup(qcp);</div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160; }</div><div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>&#160;</div><div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a>();</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160; server = g_strdup(gtk_entry_get_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>));</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160; <span class="keywordflow">if</span> (g_hostname_to_ascii(server) == NULL)</div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160; <span class="comment">/* If server contain /, e.g. vnc://, it won&#39;t connect</span></div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160;<span class="comment"> * We could search for an array of invalid characters, but</span></div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160;<span class="comment"> * it&#39;s better to find a way to correctly parse and validate addresses</span></div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; <span class="keywordflow">if</span> (g_strrstr(server, <span class="stringliteral">&quot;/&quot;</span>) != NULL)</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160; <span class="comment">//if (g_str_has_suffix (server, &quot;/&quot;))</span></div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160; <span class="comment">//return FALSE;</span></div><div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__main_8c.html#a1f5f9a964a75214d500e7a9fca1bd8a6">is_empty</a>(server))</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160;</div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160; <span class="comment">/* check if server is an IP address and trim whitespace if so */</span></div><div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160; server_trimmed = g_strdup(server);</div><div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160; g_strstrip(server_trimmed);</div><div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160; gchar **strings = g_strsplit(server_trimmed, <span class="stringliteral">&quot;:&quot;</span>, 2);</div><div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>&#160;</div><div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>&#160; <span class="keywordflow">if</span> (strings[0] != NULL)</div><div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160; <span class="keywordflow">if</span> (g_hostname_is_ip_address(strings[0]))</div><div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160; g_stpcpy(server, server_trimmed);</div><div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>&#160;</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;sound&quot;</span>, <span class="stringliteral">&quot;off&quot;</span>);</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>, server);</div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>, server);</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>, qcp);</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160; g_free(server);</div><div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160; g_free(server_trimmed);</div><div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160; g_free(qcp);</div><div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>&#160;</div><div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160; <a class="code" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a>(remminafile);</div><div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160;</div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160;}</div><div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160;</div><div class="line"><a name="l01381"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d"> 1381</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d">remmina_main_quickconnect_on_click</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>&#160;{</div><div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == FALSE)</div><div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01">remmina_main_quickconnect</a>();</div><div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160;}</div><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160;</div><div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160;<span class="comment">/* Select all the text inside the quick search box if there is anything */</span></div><div class="line"><a name="l01390"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427"> 1390</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427">remmina_main_quick_search_enter</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160;{</div><div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160; <span class="keywordflow">if</span> (gtk_entry_get_text(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>))</div><div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160; gtk_editable_select_region(GTK_EDITABLE(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>), 0, -1);</div><div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160;}</div><div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>&#160;</div><div class="line"><a name="l01396"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a"> 1396</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160;{</div><div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160; gtk_tree_view_collapse_all(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>);</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160;}</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160;</div><div class="line"><a name="l01402"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a9896df7a92402b5a61e58420235c515a"> 1402</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160;{</div><div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Search toggle triggered&quot;</span>);</div><div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160;</div><div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160; gboolean toggle_status = gtk_toggle_button_get_active(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a>);</div><div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160;</div><div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160; gtk_search_bar_set_search_mode(remminamain-&gt;<a class="code" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">search_bar</a>, toggle_status);</div><div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160; <span class="keywordflow">if</span> (toggle_status) {</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Search toggle is active&quot;</span>);</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160; gtk_widget_grab_focus(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>));</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Search toggle is not active, focus is tree_files_list&quot;</span>);</div><div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>&#160; gtk_widget_grab_focus(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>));</div><div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>&#160; }</div><div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160;}</div><div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160;</div><div class="line"><a name="l01419"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aea426b2e8fc03f963bb2b98cb8649adf"> 1419</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aea426b2e8fc03f963bb2b98cb8649adf">remmina_main_on_accel_search_toggle</a>(<a class="code" href="struct___remmina_main.html">RemminaMain</a> *remminamain)</div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160;{</div><div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remminamain-&gt;<a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a>), TRUE);</div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160;}</div><div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160;</div><div class="line"><a name="l01425"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8"> 1425</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a>(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>&#160;{</div><div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>&#160; gtk_tree_view_expand_all(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>);</div><div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>&#160;}</div><div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160;</div><div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160;<span class="comment">/* Handle double click on a row in the connections list */</span></div><div class="line"><a name="l01432"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10"> 1432</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10">remmina_main_file_list_on_row_activated</a>(GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data)</div><div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160;{</div><div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160;<span class="comment">/* If a connection was selected then execute the default action */</span></div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>) {</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160; <span class="keywordflow">switch</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef">default_action</a>) {</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba84fe14d6d19ab0479931a6886178f2e3">REMMINA_ACTION_EDIT</a>:</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160; <a class="code" href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a>(NULL, NULL, NULL);</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebbad14d19fdcc60e744406c5f80c1bb840a">REMMINA_ACTION_CONNECT</a>:</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160; <a class="code" href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a>(NULL, NULL, NULL);</div><div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160; }</div><div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>&#160; }</div><div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160;}</div><div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160;</div><div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160;<span class="comment">/* Show the popup menu by the right button mouse click */</span></div><div class="line"><a name="l01450"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9"> 1450</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9">remmina_main_file_list_on_button_press</a>(GtkWidget *widget, GdkEventButton *event, gpointer user_data)</div><div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160;{</div><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160; <span class="keywordflow">if</span> (event-&gt;button == MOUSE_BUTTON_RIGHT) {</div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == FALSE) {</div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160; <span class="comment">// For now, if more than one selected row, display only a delete menu option</span></div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160; <span class="keywordflow">if</span> (gtk_tree_selection_count_selected_rows(gtk_tree_view_get_selection(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>)) &gt; 1) {</div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160; gtk_menu_popup_at_pointer(GTK_MENU(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a98a1ddd6aebc35c131f8de819a3d861f">menu_popup_delete_rc</a>), (GdkEvent *)event);</div><div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160; <span class="keywordflow">return</span> GDK_EVENT_STOP;</div><div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160; }</div><div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160; <span class="keywordflow">else</span> {</div><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160; gtk_menu_popup_at_pointer(GTK_MENU(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>), (GdkEvent *)event);</div><div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160; }</div><div class="line"><a name="l01464"></a><span class="lineno"> 1464</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>&#160; gtk_menu_popup(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>, NULL, NULL, NULL, NULL, event-&gt;button, event-&gt;time);</div><div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160; }</div><div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160; }</div><div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160;}</div><div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>&#160;</div><div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160;<span class="comment">/* Show the popup menu by the menu key */</span></div><div class="line"><a name="l01473"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193"> 1473</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193">remmina_main_file_list_on_key_press</a>(GtkWidget *widget, GdkEventKey *event, gpointer user_data)</div><div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160;{</div><div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160; <span class="keywordflow">if</span> (event-&gt;keyval == GDK_KEY_Menu) {</div><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160; gtk_menu_popup_at_widget(GTK_MENU(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>), widget,</div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160; GDK_GRAVITY_CENTER, GDK_GRAVITY_CENTER,</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160; (GdkEvent *)event);</div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160; gtk_menu_popup(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>, NULL, NULL, NULL, NULL, 0, event-&gt;time);</div><div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>&#160; }</div><div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01486"></a><span class="lineno"> 1486</span>&#160;}</div><div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>&#160;</div><div class="line"><a name="l01488"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f"> 1488</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f">remmina_main_quick_search_on_icon_press</a>(GtkEntry *entry, GtkEntryIconPosition icon_pos, GdkEvent *event, gpointer user_data)</div><div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>&#160;{</div><div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160; <span class="keywordflow">if</span> (icon_pos == GTK_ENTRY_ICON_SECONDARY)</div><div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160; gtk_entry_set_text(entry, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160;}</div><div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160;</div><div class="line"><a name="l01495"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657"> 1495</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657">remmina_main_quick_search_on_changed</a>(GtkEditable *editable, gpointer user_data)</div><div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160;{</div><div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160; <span class="comment">/* If a search text was input then temporary set the file mode to list */</span></div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160; <span class="keywordflow">if</span> (gtk_entry_get_text_length(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>)) {</div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160; <span class="keywordflow">if</span> (GTK_IS_TREE_STORE(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>)) {</div><div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>&#160; <span class="comment">/* File view mode changed, put it to override and reload list */</span></div><div class="line"><a name="l01502"></a><span class="lineno"> 1502</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a> = TRUE;</div><div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>&#160; }</div><div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a>) {</div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160; <span class="comment">/* File view mode changed, put it to default (disable override) and reload list */</span></div><div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a> = FALSE;</div><div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>&#160; }</div><div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>&#160; }</div><div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>&#160; gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>));</div><div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160;}</div><div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160;</div><div class="line"><a name="l01515"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#adf073486149762f547504020484bff70"> 1515</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#adf073486149762f547504020484bff70">remmina_main_on_drag_data_received</a>(GtkWidget *widget, GdkDragContext *drag_context, gint x, gint y,</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160; GtkSelectionData *data, guint info, guint time, gpointer user_data)</div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160;{</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160; gchar **uris;</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160; GSList *files = NULL;</div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160; gint i;</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160;</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160; uris = g_uri_list_extract_uris((<span class="keyword">const</span> gchar *)gtk_selection_data_get_data(data));</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160; <span class="keywordflow">for</span> (i = 0; uris[i]; i++) {</div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160; <span class="keywordflow">if</span> (strncmp(uris[i], <span class="stringliteral">&quot;file://&quot;</span>, 7) != 0)</div><div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>&#160; files = g_slist_append(files, g_strdup(uris[i] + 7));</div><div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160; }</div><div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>&#160; g_strfreev(uris);</div><div class="line"><a name="l01530"></a><span class="lineno"> 1530</span>&#160; <a class="code" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a>(files);</div><div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160;}</div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160;</div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160;<span class="comment">/* Add a new menuitem to the Tools menu */</span></div><div class="line"><a name="l01534"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f"> 1534</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f">remmina_main_add_tool_plugin</a>(gchar *name, <a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin, gpointer user_data)</div><div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>&#160;{</div><div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01537"></a><span class="lineno"> 1537</span>&#160; <a class="code" href="struct___remmina_tool_plugin.html">RemminaToolPlugin</a> *tool_plugin = (<a class="code" href="struct___remmina_tool_plugin.html">RemminaToolPlugin</a> *)plugin;</div><div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160; GtkWidget *menuitem = gtk_menu_item_new_with_label(plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">description</a>);</div><div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160;</div><div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">menu_popup_full</a>), menuitem);</div><div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(tool_plugin-&gt;<a class="code" href="struct___remmina_tool_plugin.html#ad83c522c030d51d5f0313b1f77f04d74">exec_func</a>), tool_plugin);</div><div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>&#160;}</div><div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>&#160;</div><div class="line"><a name="l01546"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79"> 1546</a></span>&#160;gboolean <a class="code" href="remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79">remmina_main_on_window_state_event</a>(GtkWidget *widget, GdkEventWindowState *event, gpointer user_data)</div><div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160;{</div><div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160;}</div><div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160;</div><div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160;<span class="comment">/* Remmina main window initialization */</span></div><div class="line"><a name="l01553"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300"> 1553</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main_init</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160;{</div><div class="line"><a name="l01555"></a><span class="lineno"> 1555</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>&#160; <span class="keywordtype">int</span> i, qcp_idx, qcp_actidx;</div><div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>&#160; <span class="keywordtype">char</span> *name;</div><div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>&#160; GtkSettings *settings;</div><div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160;</div><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160; REMMINA_DEBUG(<span class="stringliteral">&quot;Initializing the Remmina main window&quot;</span>);</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160; <span class="comment">/* Switch to a dark theme if the user enabled it */</span></div><div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>&#160; settings = gtk_settings_get_default();</div><div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160; g_object_set(settings, <span class="stringliteral">&quot;gtk-application-prefer-dark-theme&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">dark_theme</a>, NULL);</div><div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>&#160;</div><div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>&#160; REMMINA_DEBUG (<span class="stringliteral">&quot;Initializing monitor&quot;</span>);</div><div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150">monitor</a> = <a class="code" href="remmina__monitor_8c.html#ac37c2579934e206d669c1af9b51f8ef1">remmina_network_monitor_new</a>();</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160;</div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a> = <a class="code" href="remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array_new_from_string</a>(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">expanded_group</a>);</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == FALSE)</div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160; gtk_window_set_title(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, _(<span class="stringliteral">&quot;Remmina Remote Desktop Client&quot;</span>));</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160; gtk_window_set_title(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, _(<span class="stringliteral">&quot;Remmina Kiosk&quot;</span>));</div><div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == FALSE) {</div><div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160; gtk_window_set_default_size(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">main_width</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">main_height</a>);</div><div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">main_maximize</a>)</div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160; gtk_window_maximize(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160; }</div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160; <span class="comment">/* Honor global preferences Search Bar visibility */</span></div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a>)</div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;search_toggle&quot;</span>)), FALSE);</div><div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160;</div><div class="line"><a name="l01582"></a><span class="lineno"> 1582</span>&#160; <span class="comment">/* Add a GtkMenuItem to the Tools menu for each plugin of type REMMINA_PLUGIN_TYPE_TOOL */</span></div><div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac">REMMINA_PLUGIN_TYPE_TOOL</a>, <a class="code" href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f">remmina_main_add_tool_plugin</a>, remminamain);</div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160;</div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160; <span class="comment">/* Add available quick connect protocols to remminamain-&gt;combo_quick_connect_protocol */</span></div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160; qcp_idx = qcp_actidx = 0;</div><div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <span class="keyword">sizeof</span>(<a class="code" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a>) / <span class="keyword">sizeof</span>(<a class="code" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a>[0]); i++) {</div><div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160; name = <a class="code" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a>[i];</div><div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager_get_plugin</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, name)) {</div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160; gtk_combo_box_text_append(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>, name, name);</div><div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a> != NULL &amp;&amp; strcmp(name, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a>) == 0)</div><div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>&#160; qcp_actidx = qcp_idx;</div><div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>&#160; qcp_idx++;</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160; }</div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160; }</div><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160; gtk_combo_box_set_active(GTK_COMBO_BOX(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>), qcp_actidx);</div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160;</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160; <span class="comment">/* Connect the group accelerators to the GtkWindow */</span></div><div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160; <span class="comment">//gtk_window_add_accel_group(remminamain-&gt;window, remminamain-&gt;accelgroup_shortcuts);</span></div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160; <span class="comment">/* Set the Quick Connection */</span></div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160; gtk_entry_set_activates_default(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, TRUE);</div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160; <span class="comment">/* Set the TreeView for the files list */</span></div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160; gtk_tree_selection_set_select_function(</div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160; gtk_tree_view_get_selection(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>),</div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160; <a class="code" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66">remmina_main_selection_func</a>, NULL, NULL);</div><div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160; gtk_tree_view_set_search_entry(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, GTK_ENTRY(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>));</div><div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a>)</div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160; gtk_widget_grab_focus(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>));</div><div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>&#160; <span class="comment">/* Load the files list */</span></div><div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160;</div><div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160; <span class="comment">/* Drag-n-drop support */</span></div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160; gtk_drag_dest_set(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>), GTK_DEST_DEFAULT_ALL, <a class="code" href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda">remmina_drop_types</a>, 1, GDK_ACTION_COPY);</div><div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160;</div><div class="line"><a name="l01616"></a><span class="lineno"> 1616</span>&#160; <span class="comment">/* Finish initialization */</span></div><div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">initialized</a> = TRUE;</div><div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160;</div><div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160; <span class="comment">/* Register the window in remmina_widget_pool with GType=GTK_WINDOW and TAG=remmina-main-window */</span></div><div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160; g_object_set_data(G_OBJECT(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>), <span class="stringliteral">&quot;tag&quot;</span>, <span class="stringliteral">&quot;remmina-main-window&quot;</span>);</div><div class="line"><a name="l01621"></a><span class="lineno"> 1621</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>));</div><div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>&#160;}</div><div class="line"><a name="l01623"></a><span class="lineno"> 1623</span>&#160;</div><div class="line"><a name="l01624"></a><span class="lineno"> 1624</span>&#160;<span class="comment">/* Signal handler for &quot;show&quot; on remminamain-&gt;window */</span></div><div class="line"><a name="l01625"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2"> 1625</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2">remmina_main_on_show</a>(GtkWidget *w, gpointer user_data)</div><div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>&#160;{</div><div class="line"><a name="l01627"></a><span class="lineno"> 1627</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>&#160; <a class="code" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5">remmina_main_show_snap_welcome</a>();</div><div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>&#160;}</div><div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>&#160;</div><div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>&#160;<span class="comment">/* RemminaMain instance */</span></div><div class="line"><a name="l01634"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7"> 1634</a></span>&#160;GtkWidget *<a class="code" href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>&#160;{</div><div class="line"><a name="l01636"></a><span class="lineno"> 1636</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01637"></a><span class="lineno"> 1637</span>&#160; GSimpleActionGroup *actions;</div><div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>&#160; GtkAccelGroup *accel_group = NULL;</div><div class="line"><a name="l01639"></a><span class="lineno"> 1639</span>&#160;</div><div class="line"><a name="l01640"></a><span class="lineno"> 1640</span>&#160; remminamain = g_new0(<a class="code" href="struct___remmina_main.html">RemminaMain</a>, 1);</div><div class="line"><a name="l01641"></a><span class="lineno"> 1641</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a> = g_new0(<a class="code" href="struct___remmina_main_priv.html">RemminaMainPriv</a>, 1);</div><div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>&#160; <span class="comment">/* Assign UI widgets to the private members */</span></div><div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a> = <a class="code" href="remmina__public_8c.html#a4573e086e1ff8507eb9447b25bf11b92">remmina_public_gtk_builder_new_from_resource</a>(<span class="stringliteral">&quot;/org/remmina/Remmina/src/../data/ui/remmina_main.glade&quot;</span>);</div><div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a> = GTK_WINDOW(RM_GET_OBJECT(<span class="stringliteral">&quot;RemminaMain&quot;</span>));</div><div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE) {</div><div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>&#160; gtk_window_set_position(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_WIN_POS_CENTER_ALWAYS);</div><div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>&#160; gtk_window_set_default_size(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, 800, 400);</div><div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>&#160; gtk_window_set_resizable(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, FALSE);</div><div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160; }</div><div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160; <span class="comment">/* New Button */</span></div><div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">button_new</a> = GTK_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;button_new&quot;</span>));</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE)</div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">button_new</a>), FALSE);</div><div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160; <span class="comment">/* Search bar */</span></div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a> = GTK_TOGGLE_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;search_toggle&quot;</span>));</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">search_bar</a> = GTK_SEARCH_BAR(RM_GET_OBJECT(<span class="stringliteral">&quot;search_bar&quot;</span>));</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160; <span class="comment">/* view mode list/tree */</span></div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a> = GTK_TOGGLE_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;view_toggle_button&quot;</span>));</div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE)</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>), FALSE);</div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160;</div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</span>&#160; <span class="comment">/* Menu widgets */</span></div><div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a> = GTK_MENU(RM_GET_OBJECT(<span class="stringliteral">&quot;menu_popup&quot;</span>));</div><div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">menu_header_button</a> = GTK_MENU_BUTTON(RM_GET_OBJECT(<span class="stringliteral">&quot;menu_header_button&quot;</span>));</div><div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">menu_popup_full</a> = GTK_MENU(RM_GET_OBJECT(<span class="stringliteral">&quot;menu_popup_full&quot;</span>));</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a98a1ddd6aebc35c131f8de819a3d861f">menu_popup_delete_rc</a> = GTK_MENU(RM_GET_OBJECT(<span class="stringliteral">&quot;menu_popup_delete_rc&quot;</span>));</div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE) {</div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">menu_popup_full</a>), FALSE);</div><div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">menu_header_button</a>), FALSE);</div><div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>&#160; }</div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160; <span class="comment">/* View mode radios */</span></div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4">menuitem_view_mode_list</a> = GTK_RADIO_MENU_ITEM(RM_GET_OBJECT(<span class="stringliteral">&quot;menuitem_view_mode_list&quot;</span>));</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0">menuitem_view_mode_tree</a> = GTK_RADIO_MENU_ITEM(RM_GET_OBJECT(<span class="stringliteral">&quot;menuitem_view_mode_tree&quot;</span>));</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160; <span class="comment">/* Quick connect objects */</span></div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95">box_quick_connect</a> = GTK_BOX(RM_GET_OBJECT(<span class="stringliteral">&quot;box_quick_connect&quot;</span>));</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a> = GTK_COMBO_BOX_TEXT(RM_GET_OBJECT(<span class="stringliteral">&quot;combo_quick_connect_protocol&quot;</span>));</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> &amp;&amp; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> == TRUE)</div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>), FALSE);</div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a> = GTK_ENTRY(RM_GET_OBJECT(<span class="stringliteral">&quot;entry_quick_connect_server&quot;</span>));</div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160; <span class="comment">/* Other widgets */</span></div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a> = GTK_TREE_VIEW(RM_GET_OBJECT(<span class="stringliteral">&quot;tree_files_list&quot;</span>));</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#aa2b3c232b59da2278215d446b93db0e5">column_files_list_name</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_name&quot;</span>));</div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">column_files_list_group</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_group&quot;</span>));</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a7db532834f4fd6360956cb0e2383b0fb">column_files_list_server</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_server&quot;</span>));</div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a8e21f782dd6e0a6d80f0f622898b2a48">column_files_list_plugin</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_plugin&quot;</span>));</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a">column_files_list_date</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_date&quot;</span>));</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">column_files_list_notes</a> = GTK_TREE_VIEW_COLUMN(RM_GET_OBJECT(<span class="stringliteral">&quot;column_files_list_notes&quot;</span>));</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160; gtk_tree_view_column_set_fixed_width(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">column_files_list_notes</a>, 100);</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a> = GTK_STATUSBAR(RM_GET_OBJECT(<span class="stringliteral">&quot;statusbar_main&quot;</span>));</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160; <span class="comment">/* signals */</span></div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160; g_signal_connect(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>, <span class="stringliteral">&quot;key-release-event&quot;</span>, G_CALLBACK(<a class="code" href="remmina__main_8c.html#af129aea3f5f3ec56b061187a81d43e4c">remmina_main_search_key_event</a>), NULL);</div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>&#160; g_signal_connect(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>, <span class="stringliteral">&quot;row-activated&quot;</span>, G_CALLBACK(<a class="code" href="remmina__main_8c.html#a4477897686d091d6f57e7f9401674a8c">remmina_main_tree_row_activated</a>), NULL);</div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160; <span class="comment">/* Non widget objects */</span></div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160; actions = g_simple_action_group_new();</div><div class="line"><a name="l01695"></a><span class="lineno"> 1695</span>&#160; g_action_map_add_action_entries(G_ACTION_MAP(actions), <a class="code" href="remmina__main_8c.html#a923b3e2712d969eb59d9291e99f933e8">app_actions</a>, G_N_ELEMENTS(<a class="code" href="remmina__main_8c.html#a923b3e2712d969eb59d9291e99f933e8">app_actions</a>), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160; gtk_widget_insert_action_group(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>), <span class="stringliteral">&quot;app&quot;</span>, G_ACTION_GROUP(actions));</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160; g_action_map_add_action_entries(G_ACTION_MAP(actions), <a class="code" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3">main_actions</a>, G_N_ELEMENTS(<a class="code" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3">main_actions</a>), remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>&#160; gtk_widget_insert_action_group(GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>), <span class="stringliteral">&quot;main&quot;</span>, G_ACTION_GROUP(actions));</div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160; g_object_unref(actions);</div><div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>&#160; <span class="comment">/* Accelerators */</span></div><div class="line"><a name="l01701"></a><span class="lineno"> 1701</span>&#160; accel_group = gtk_accel_group_new();</div><div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>&#160; gtk_window_add_accel_group(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, accel_group);</div><div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>&#160; gtk_accel_group_connect(accel_group, GDK_KEY_Q, GDK_CONTROL_MASK, 0,</div><div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>&#160; g_cclosure_new_swap(G_CALLBACK(<a class="code" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a>), NULL, NULL));</div><div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>&#160; <span class="comment">// TODO: This crash remmina because the function doesn&#39;t receive the parameter we expect</span></div><div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>&#160; gtk_accel_group_connect(accel_group, GDK_KEY_P, GDK_CONTROL_MASK, 0,</div><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160; g_cclosure_new_swap(G_CALLBACK(<a class="code" href="remmina__main_8c.html#a1e8b7e8c0f7a47dc0409ae6eb18cfc6a">remmina_main_on_accel_application_preferences</a>), NULL, NULL));</div><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160; gtk_accel_group_connect(accel_group, GDK_KEY_F, GDK_CONTROL_MASK, 0,</div><div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160; g_cclosure_new_swap(G_CALLBACK(<a class="code" href="remmina__main_8c.html#aea426b2e8fc03f963bb2b98cb8649adf">remmina_main_on_accel_search_toggle</a>), remminamain, NULL));</div><div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160;</div><div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>&#160; <span class="comment">/* Connect signals */</span></div><div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160; gtk_builder_connect_signals(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a>, NULL);</div><div class="line"><a name="l01713"></a><span class="lineno"> 1713</span>&#160; <span class="comment">/* Initialize the window and load the preferences */</span></div><div class="line"><a name="l01714"></a><span class="lineno"> 1714</span>&#160; <a class="code" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main_init</a>();</div><div class="line"><a name="l01715"></a><span class="lineno"> 1715</span>&#160; <span class="keywordflow">return</span> GTK_WIDGET(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01716"></a><span class="lineno"> 1716</span>&#160;}</div><div class="line"><a name="l01717"></a><span class="lineno"> 1717</span>&#160;</div><div class="line"><a name="l01718"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc"> 1718</a></span>&#160;GtkWindow *<a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>()</div><div class="line"><a name="l01719"></a><span class="lineno"> 1719</span>&#160;{</div><div class="line"><a name="l01720"></a><span class="lineno"> 1720</span>&#160; <span class="keywordflow">if</span> (!remminamain)</div><div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>)</div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160; <span class="keywordflow">if</span> (!remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>-&gt;<a class="code" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">initialized</a>)</div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a> = GTK_WINDOW(RM_GET_OBJECT(<span class="stringliteral">&quot;RemminaMain&quot;</span>));</div><div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>&#160; <span class="keywordflow">return</span> remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>;</div><div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>&#160;}</div><div class="line"><a name="l01729"></a><span class="lineno"> 1729</span>&#160;</div><div class="line"><a name="l01730"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a"> 1730</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file)</div><div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>&#160;{</div><div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>&#160; <span class="keywordflow">if</span> (!remminamain)</div><div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01735"></a><span class="lineno"> 1735</span>&#160;}</div><div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>&#160;</div><div class="line"><a name="l01737"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#ab2a1a54320992fb796850ffbd6a63589"> 1737</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ab2a1a54320992fb796850ffbd6a63589">remmina_main_show_dialog</a>(GtkMessageType msg, GtkButtonsType buttons, <span class="keyword">const</span> gchar* message) {</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160;</div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) {</div><div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>&#160; dialog = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, msg, buttons, <span class="stringliteral">&quot;%s&quot;</span>, message);</div><div class="line"><a name="l01742"></a><span class="lineno"> 1742</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l01743"></a><span class="lineno"> 1743</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>&#160; }</div><div class="line"><a name="l01745"></a><span class="lineno"> 1745</span>&#160;}</div><div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>&#160;</div><div class="line"><a name="l01747"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7"> 1747</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a>(<span class="keyword">const</span> gchar *message) {</div><div class="line"><a name="l01748"></a><span class="lineno"> 1748</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01749"></a><span class="lineno"> 1749</span>&#160;</div><div class="line"><a name="l01750"></a><span class="lineno"> 1750</span>&#160; <span class="keywordflow">if</span> (remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>) {</div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160; dialog = gtk_message_dialog_new(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>, GTK_DIALOG_MODAL, GTK_MESSAGE_WARNING, GTK_BUTTONS_CLOSE,</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160; message, g_get_application_name());</div><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01755"></a><span class="lineno"> 1755</span>&#160; }</div><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160;}</div><div class="ttc" id="remmina__file__manager_8h_html_a0155f52ba9a28e2aa0ea5d831f5d2c90"><div class="ttname"><a href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a></div><div class="ttdeci">G_BEGIN_DECLS struct _RemminaGroupData RemminaGroupData</div></div>
<div class="ttc" id="remmina__file_8c_html_ac1cc2d7f827f7d64c7fd3edf10e9383e"><div class="ttname"><a href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a></div><div class="ttdeci">RemminaFile * remmina_file_load(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00350">remmina_file.c:350</a></div></div>
<div class="ttc" id="remmina__plugin__manager_8c_html_a5e79d6abd0b12c1ed2bb33988e41857e"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e">remmina_secret_plugin</a></div><div class="ttdeci">static RemminaSecretPlugin * remmina_secret_plugin</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00070">remmina_plugin_manager.c:70</a></div></div>
<div class="ttc" id="remmina__log_8c_html_a72cf53183f3ef89c4208fdccb629003d"><div class="ttname"><a href="remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d">remmina_log_start</a></div><div class="ttdeci">void remmina_log_start(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00116">remmina_log.c:116</a></div></div>
@@ -100,11 +100,11 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="struct___remmina_main_html_a6288ed69d372d1047ce94c74e77e0fd4"><div class="ttname"><a href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4">_RemminaMain::menuitem_view_mode_list</a></div><div class="ttdeci">GtkRadioMenuItem * menuitem_view_mode_list</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00056">remmina_main.h:56</a></div></div>
<div class="ttc" id="remmina__main_8c_html_ae32574ebe06b1a24f135af9379e663b4"><div class="ttname"><a href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4">remmina_main_load_file_tree_callback</a></div><div class="ttdeci">static void remmina_main_load_file_tree_callback(RemminaFile *remminafile, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00483">remmina_main.c:483</a></div></div>
<div class="ttc" id="struct___remmina_tool_plugin_html"><div class="ttname"><a href="struct___remmina_tool_plugin.html">_RemminaToolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00114">plugin.h:114</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a7049d977154921f651cc1538f59c5b7a"><div class="ttname"><a href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a></div><div class="ttdeci">void remmina_main_on_action_help_homepage(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01276">remmina_main.c:1276</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a7049d977154921f651cc1538f59c5b7a"><div class="ttname"><a href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a></div><div class="ttdeci">void remmina_main_on_action_help_homepage(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01279">remmina_main.c:1279</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a0995d06fd3cad6098f0ecfaca9ed616f"><div class="ttname"><a href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">_RemminaMain::network_icon</a></div><div class="ttdeci">GtkWidget * network_icon</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00082">remmina_main.h:82</a></div></div>
<div class="ttc" id="struct___remmina_pref_html_a054a55a2c39181609150cbb4d22413ef"><div class="ttname"><a href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef">_RemminaPref::default_action</a></div><div class="ttdeci">gint default_action</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00141">remmina_pref.h:141</a></div></div>
<div class="ttc" id="remmina__main_8c_html_ab08aae433b625c3a84330630fe2bd2d5"><div class="ttname"><a href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5">remmina_main_show_snap_welcome</a></div><div class="ttdeci">static void remmina_main_show_snap_welcome()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00272">remmina_main.c:272</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01716">remmina_main.c:1716</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01718">remmina_main.c:1718</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_a092aebd62ba9fe50c899e416361c1d00"><div class="ttname"><a href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">_RemminaMainPriv::selected_filename</a></div><div class="ttdeci">gchar * selected_filename</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00096">remmina_main.h:96</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_aec4c4540e9463a45b22a5c0b9108bc6f"><div class="ttname"><a href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">_RemminaMainPriv::file_model</a></div><div class="ttdeci">GtkTreeModel * file_model</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00090">remmina_main.h:90</a></div></div>
<div class="ttc" id="remmina__main_8c_html_ad8744dc59ba8072ffdf557b6c94e9f40"><div class="ttname"><a href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main_save_expanded_group</a></div><div class="ttdeci">static void remmina_main_save_expanded_group(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00164">remmina_main.c:164</a></div></div>
@@ -126,7 +126,7 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="remmina__widget__pool_8c_html_ae3c9c9853eb5bedbfeadbfac1d495b95"><div class="ttname"><a href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a></div><div class="ttdeci">void remmina_widget_pool_register(GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00056">remmina_widget_pool.c:56</a></div></div>
<div class="ttc" id="struct___remmina_main_html"><div class="ttname"><a href="struct___remmina_main.html">_RemminaMain</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00048">remmina_main.h:48</a></div></div>
<div class="ttc" id="struct___remmina_pref_html_ac31f888a39eec7ef6de922c7b53d044e"><div class="ttname"><a href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">_RemminaPref::last_quickconnect_protocol</a></div><div class="ttdeci">gchar * last_quickconnect_protocol</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00227">remmina_pref.h:227</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_ace72fa8f7198020464623e7117a351a9"><div class="ttname"><a href="remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9">remmina_main_file_list_on_button_press</a></div><div class="ttdeci">gboolean remmina_main_file_list_on_button_press(GtkWidget *widget, GdkEventButton *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01448">remmina_main.c:1448</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ace72fa8f7198020464623e7117a351a9"><div class="ttname"><a href="remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9">remmina_main_file_list_on_button_press</a></div><div class="ttdeci">gboolean remmina_main_file_list_on_button_press(GtkWidget *widget, GdkEventButton *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01450">remmina_main.c:1450</a></div></div>
<div class="ttc" id="struct___remmina_file_plugin_html_a597178a88c755ebe0614897b7aa279b1"><div class="ttname"><a href="struct___remmina_file_plugin.html#a597178a88c755ebe0614897b7aa279b1">_RemminaFilePlugin::import_func</a></div><div class="ttdeci">RemminaFile *(* import_func)(struct _RemminaFilePlugin *instance, const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00108">plugin.h:108</a></div></div>
<div class="ttc" id="remmina__widget__pool_8h_html"><div class="ttname"><a href="remmina__widget__pool_8h.html">remmina_widget_pool.h</a></div></div>
<div class="ttc" id="remmina__main_8c_html_ab0d22f0e3571eb80886acb0c68005800"><div class="ttname"><a href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800">remmina_main_filter_visible_func</a></div><div class="ttdeci">static gboolean remmina_main_filter_visible_func(GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00527">remmina_main.c:527</a></div></div>
@@ -138,7 +138,7 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="remmina__pref__dialog_8h_html"><div class="ttname"><a href="remmina__pref__dialog_8h.html">remmina_pref_dialog.h</a></div></div>
<div class="ttc" id="remmina__plugin__manager_8c_html_a859348bddc9069f06195915692b65076"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager_get_import_file_handler</a></div><div class="ttdeci">RemminaFilePlugin * remmina_plugin_manager_get_import_file_handler(const gchar *file)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00570">remmina_plugin_manager.c:570</a></div></div>
<div class="ttc" id="remmina__main_8c_html_af129aea3f5f3ec56b061187a81d43e4c"><div class="ttname"><a href="remmina__main_8c.html#af129aea3f5f3ec56b061187a81d43e4c">remmina_main_search_key_event</a></div><div class="ttdeci">static gboolean remmina_main_search_key_event(GtkWidget *search_entry, GdkEventKey *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00870">remmina_main.c:870</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a4b4f0bbdb9e487d6c3809e8a57dc1d1c"><div class="ttname"><a href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a></div><div class="ttdeci">void remmina_main_on_action_tools_import(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01213">remmina_main.c:1213</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a4b4f0bbdb9e487d6c3809e8a57dc1d1c"><div class="ttname"><a href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a></div><div class="ttdeci">void remmina_main_on_action_tools_import(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01216">remmina_main.c:1216</a></div></div>
<div class="ttc" id="remmina__pref_8h_html_a0ed680fdb405e7195d9f14032851eebbad14d19fdcc60e744406c5f80c1bb840a"><div class="ttname"><a href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebbad14d19fdcc60e744406c5f80c1bb840a">REMMINA_ACTION_CONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00059">remmina_pref.h:59</a></div></div>
<div class="ttc" id="remmina__monitor_8c_html_ac37c2579934e206d669c1af9b51f8ef1"><div class="ttname"><a href="remmina__monitor_8c.html#ac37c2579934e206d669c1af9b51f8ef1">remmina_network_monitor_new</a></div><div class="ttdeci">RemminaMonitor * remmina_network_monitor_new()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__monitor_8c_source.html#l00220">remmina_monitor.c:220</a></div></div>
<div class="ttc" id="remmina__plugin__manager_8c_html_ad380a98f6624aa8c830015c8b428b7b4"><div class="ttname"><a href="remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager_get_secret_plugin</a></div><div class="ttdeci">RemminaSecretPlugin * remmina_plugin_manager_get_secret_plugin(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00606">remmina_plugin_manager.c:606</a></div></div>
@@ -158,8 +158,8 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="remmina__file_8c_html_a96abbfdc183d1e82fdffd6445d611ffe"><div class="ttname"><a href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a></div><div class="ttdeci">gchar * remmina_file_get_datetime(RemminaFile *remminafile)</div><div class="ttdoc">Return the string date of the last time a Remmina state file has been modified. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l01029">remmina_file.c:1029</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a71fbe206a9c2abb8f348ee598d7751b7"><div class="ttname"><a href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7">remmina_main_file_model_on_sort</a></div><div class="ttdeci">static void remmina_main_file_model_on_sort(GtkTreeSortable *sortable, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00515">remmina_main.c:515</a></div></div>
<div class="ttc" id="struct___remmina_pref_html_a6318ff8e2f73d36fb8b35cbed503c222"><div class="ttname"><a href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">_RemminaPref::main_width</a></div><div class="ttdeci">gint main_width</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00217">remmina_pref.h:217</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_af14b1942a754d7b2f5c10266208ebe01"><div class="ttname"><a href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main_new</a></div><div class="ttdeci">GtkWidget * remmina_main_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01632">remmina_main.c:1632</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a5db4436cc72b9d5ea3e498f8519efecc"><div class="ttname"><a href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a></div><div class="ttdeci">void remmina_main_on_action_help_debug(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01300">remmina_main.c:1300</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_af14b1942a754d7b2f5c10266208ebe01"><div class="ttname"><a href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main_new</a></div><div class="ttdeci">GtkWidget * remmina_main_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01634">remmina_main.c:1634</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a5db4436cc72b9d5ea3e498f8519efecc"><div class="ttname"><a href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a></div><div class="ttdeci">void remmina_main_on_action_help_debug(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01303">remmina_main.c:1303</a></div></div>
<div class="ttc" id="remmina__string__array_8c_html_ab93a69850cfb4117c223a3f145ced986"><div class="ttname"><a href="remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array_find</a></div><div class="ttdeci">gint remmina_string_array_find(RemminaStringArray *array, const gchar *str)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00092">remmina_string_array.c:92</a></div></div>
<div class="ttc" id="remmina__string__array_8c_html_a96f7bec7ce32de6cf5deadcd5aec51ec"><div class="ttname"><a href="remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array_to_string</a></div><div class="ttdeci">gchar * remmina_string_array_to_string(RemminaStringArray *array)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00155">remmina_string_array.c:155</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a912f2057752ad0779485c3303e3e9b04"><div class="ttname"><a href="struct___remmina_main.html#a912f2057752ad0779485c3303e3e9b04">_RemminaMain::switch_dark_mode</a></div><div class="ttdeci">GtkSwitch * switch_dark_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00064">remmina_main.h:64</a></div></div>
@@ -175,30 +175,30 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="remmina__main_8c_html_a847424fdb97ffe35d060409d4d738497"><div class="ttname"><a href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497">remmina_main_load_file_tree_find</a></div><div class="ttdeci">static gboolean remmina_main_load_file_tree_find(GtkTreeModel *tree, GtkTreeIter *iter, const gchar *match_group)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00455">remmina_main.c:455</a></div></div>
<div class="ttc" id="remmina__main_8h_html"><div class="ttname"><a href="remmina__main_8h.html">remmina_main.h</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_a606c7e6dc78219e8e5536519db723a4d"><div class="ttname"><a href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">_RemminaMainPriv::selected_name</a></div><div class="ttdeci">gchar * selected_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00097">remmina_main.h:97</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a0c32fe66988056b353220128611b9116"><div class="ttname"><a href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a></div><div class="ttdeci">void remmina_main_on_action_help_wiki(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01282">remmina_main.c:1282</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a0c32fe66988056b353220128611b9116"><div class="ttname"><a href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a></div><div class="ttdeci">void remmina_main_on_action_help_wiki(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01285">remmina_main.c:1285</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a0e6602776373cf6a198d249df6e87150"><div class="ttname"><a href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150">_RemminaMain::monitor</a></div><div class="ttdeci">RemminaMonitor * monitor</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00086">remmina_main.h:86</a></div></div>
<div class="ttc" id="struct___remmina_pref_html_a4504684f0e67bb50157fd6862182e2c4"><div class="ttname"><a href="struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4">_RemminaPref::main_sort_order</a></div><div class="ttdeci">gint main_sort_order</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00221">remmina_pref.h:221</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a05dbb6ce820f3a137949b919d0efa6a1"><div class="ttname"><a href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a></div><div class="ttdeci">void remmina_main_on_action_application_default(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01112">remmina_main.c:1112</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a05dbb6ce820f3a137949b919d0efa6a1"><div class="ttname"><a href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a></div><div class="ttdeci">void remmina_main_on_action_application_default(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01115">remmina_main.c:1115</a></div></div>
<div class="ttc" id="struct___remmina_secret_plugin_html"><div class="ttname"><a href="struct___remmina_secret_plugin.html">_RemminaSecretPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00135">plugin.h:135</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a627eb26ab02f0093365ed6b10dab0320"><div class="ttname"><a href="remmina__main_8c.html#a627eb26ab02f0093365ed6b10dab0320">remmina_main_load_files_cb</a></div><div class="ttdeci">void remmina_main_load_files_cb(GtkEntry *entry, char *string, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00762">remmina_main.c:762</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a861de52d1b5ec54591d0592de6289d79"><div class="ttname"><a href="remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79">remmina_main_on_window_state_event</a></div><div class="ttdeci">gboolean remmina_main_on_window_state_event(GtkWidget *widget, GdkEventWindowState *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01544">remmina_main.c:1544</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a861de52d1b5ec54591d0592de6289d79"><div class="ttname"><a href="remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79">remmina_main_on_window_state_event</a></div><div class="ttdeci">gboolean remmina_main_on_window_state_event(GtkWidget *widget, GdkEventWindowState *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01546">remmina_main.c:1546</a></div></div>
<div class="ttc" id="remmina__exec_8h_html_ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40"><div class="ttname"><a href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40">REMMINA_CONDEXIT_ONMAINWINDELETE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00061">remmina_exec.h:61</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a5ae0372dafe41f96a09097c07d1b270a"><div class="ttname"><a href="remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a></div><div class="ttdeci">void remmina_main_update_file_datetime(RemminaFile *file)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01728">remmina_main.c:1728</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a5ae0372dafe41f96a09097c07d1b270a"><div class="ttname"><a href="remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a></div><div class="ttdeci">void remmina_main_update_file_datetime(RemminaFile *file)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01730">remmina_main.c:1730</a></div></div>
<div class="ttc" id="struct___remmina_main_html_ab3be770af5f21758fa641b274ca967ec"><div class="ttname"><a href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">_RemminaMain::menu_header_button</a></div><div class="ttdeci">GtkMenuButton * menu_header_button</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00053">remmina_main.h:53</a></div></div>
<div class="ttc" id="remmina__main_8c_html_aa46e6b815c241d32a476a29053dbf296"><div class="ttname"><a href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296">remmina_main_load_file_tree_group</a></div><div class="ttdeci">static void remmina_main_load_file_tree_group(GtkTreeStore *store)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00407">remmina_main.c:407</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a44eb44c6391f53a19c6f1fdf9a39a8c1"><div class="ttname"><a href="remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a></div><div class="ttdeci">void remmina_main_on_action_connection_copy(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00910">remmina_main.c:910</a></div></div>
<div class="ttc" id="remmina__plugin__manager_8c_html_aedec4e9cf18d99a559aa51065c2bc276"><div class="ttname"><a href="remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager_show</a></div><div class="ttdeci">void remmina_plugin_manager_show(GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00516">remmina_plugin_manager.c:516</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756"><div class="ttname"><a href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00078">remmina_main.c:78</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_ac767825cb87a34531306cfb587216d20"><div class="ttname"><a href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a></div><div class="ttdeci">static void remmina_main_import_file_list(GSList *files)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01158">remmina_main.c:1158</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ac767825cb87a34531306cfb587216d20"><div class="ttname"><a href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a></div><div class="ttdeci">static void remmina_main_import_file_list(GSList *files)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01161">remmina_main.c:1161</a></div></div>
<div class="ttc" id="remmina__icon_8h_html"><div class="ttname"><a href="remmina__icon_8h.html">remmina_icon.h</a></div></div>
<div class="ttc" id="remmina__public_8h_html"><div class="ttname"><a href="remmina__public_8h.html">remmina_public.h</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a0edcc1d7dc3adcbb7bb36aa0f62dec3a"><div class="ttname"><a href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a></div><div class="ttdeci">void remmina_main_on_action_collapse(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01393">remmina_main.c:1393</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a0edcc1d7dc3adcbb7bb36aa0f62dec3a"><div class="ttname"><a href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a></div><div class="ttdeci">void remmina_main_on_action_collapse(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01396">remmina_main.c:1396</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a2d6960ab62869638a77d2fe5bd72c7f6"><div class="ttname"><a href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">_RemminaMain::menu_popup</a></div><div class="ttdeci">GtkMenu * menu_popup</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00052">remmina_main.h:52</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a829d3ad1468d780380ae1ad693532e82"><div class="ttname"><a href="remmina__main_8c.html#a829d3ad1468d780380ae1ad693532e82">remmina_main_idle_destroy</a></div><div class="ttdeci">gboolean remmina_main_idle_destroy(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00235">remmina_main.c:235</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a4477897686d091d6f57e7f9401674a8c"><div class="ttname"><a href="remmina__main_8c.html#a4477897686d091d6f57e7f9401674a8c">remmina_main_tree_row_activated</a></div><div class="ttdeci">static gboolean remmina_main_tree_row_activated(GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00881">remmina_main.c:881</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a2704d643ee15702a84a1c76219dd5277"><div class="ttname"><a href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a></div><div class="ttdeci">void remmina_main_on_action_help_donations(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01294">remmina_main.c:1294</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a2704d643ee15702a84a1c76219dd5277"><div class="ttname"><a href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a></div><div class="ttdeci">void remmina_main_on_action_help_donations(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01297">remmina_main.c:1297</a></div></div>
<div class="ttc" id="remmina__string__array_8h_html"><div class="ttname"><a href="remmina__string__array_8h.html">remmina_string_array.h</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_ab2a1a54320992fb796850ffbd6a63589"><div class="ttname"><a href="remmina__main_8c.html#ab2a1a54320992fb796850ffbd6a63589">remmina_main_show_dialog</a></div><div class="ttdeci">void remmina_main_show_dialog(GtkMessageType msg, GtkButtonsType buttons, const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01735">remmina_main.c:1735</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab2a1a54320992fb796850ffbd6a63589"><div class="ttname"><a href="remmina__main_8c.html#ab2a1a54320992fb796850ffbd6a63589">remmina_main_show_dialog</a></div><div class="ttdeci">void remmina_main_show_dialog(GtkMessageType msg, GtkButtonsType buttons, const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01737">remmina_main.c:1737</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_a7a4eb201dd185ba606af5c486ef55e7f"><div class="ttname"><a href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">_RemminaMainPriv::initialized</a></div><div class="ttdeci">gboolean initialized</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00094">remmina_main.h:94</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454"><div class="ttname"><a href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a4d053f07c7bfa18ee1db38382a64c454">LABELS_COLUMN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00081">remmina_main.c:81</a></div></div>
<div class="ttc" id="remmina__log_8h_html"><div class="ttname"><a href="remmina__log_8h.html">remmina_log.h</a></div></div>
@@ -207,11 +207,11 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="struct___remmina_pref_html_a18872e092d22f5d3accb66d6a22845d7"><div class="ttname"><a href="struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7">_RemminaPref::prevent_snap_welcome_message</a></div><div class="ttdeci">gboolean prevent_snap_welcome_message</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00226">remmina_pref.h:226</a></div></div>
<div class="ttc" id="struct___remmina_pref_html_aa8d4c923cb9ca1be451436d1790e8ee5"><div class="ttname"><a href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">_RemminaPref::expanded_group</a></div><div class="ttdeci">gchar * expanded_group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00222">remmina_pref.h:222</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a7b03d239c21141a202d0698492cfae95"><div class="ttname"><a href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95">_RemminaMain::box_quick_connect</a></div><div class="ttdeci">GtkBox * box_quick_connect</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00069">remmina_main.h:69</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_adf073486149762f547504020484bff70"><div class="ttname"><a href="remmina__main_8c.html#adf073486149762f547504020484bff70">remmina_main_on_drag_data_received</a></div><div class="ttdeci">void remmina_main_on_drag_data_received(GtkWidget *widget, GdkDragContext *drag_context, gint x, gint y, GtkSelectionData *data, guint info, guint time, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01513">remmina_main.c:1513</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_adf073486149762f547504020484bff70"><div class="ttname"><a href="remmina__main_8c.html#adf073486149762f547504020484bff70">remmina_main_on_drag_data_received</a></div><div class="ttdeci">void remmina_main_on_drag_data_received(GtkWidget *widget, GdkDragContext *drag_context, gint x, gint y, GtkSelectionData *data, guint info, guint time, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01515">remmina_main.c:1515</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a7db532834f4fd6360956cb0e2383b0fb"><div class="ttname"><a href="struct___remmina_main.html#a7db532834f4fd6360956cb0e2383b0fb">_RemminaMain::column_files_list_server</a></div><div class="ttdeci">GtkTreeViewColumn * column_files_list_server</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00077">remmina_main.h:77</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_ad99b9c0bf2fa8c166a8b4a09e06ffdf7"><div class="ttname"><a href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a></div><div class="ttdeci">void remmina_main_show_warning_dialog(const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01745">remmina_main.c:1745</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ad99b9c0bf2fa8c166a8b4a09e06ffdf7"><div class="ttname"><a href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a></div><div class="ttdeci">void remmina_main_show_warning_dialog(const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01747">remmina_main.c:1747</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a52cc21537ff003b9d0fbdb9040c811af"><div class="ttname"><a href="remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a></div><div class="ttdeci">void remmina_main_on_action_connection_new(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00851">remmina_main.c:851</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a6c69b2fa6a56869c54f58d7ebae89427"><div class="ttname"><a href="remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427">remmina_main_quick_search_enter</a></div><div class="ttdeci">void remmina_main_quick_search_enter(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01387">remmina_main.c:1387</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a6c69b2fa6a56869c54f58d7ebae89427"><div class="ttname"><a href="remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427">remmina_main_quick_search_enter</a></div><div class="ttdeci">void remmina_main_quick_search_enter(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01390">remmina_main.c:1390</a></div></div>
<div class="ttc" id="remmina__file_8c_html_a55f66f2bb81bf427d6837e1adb7fe1d4"><div class="ttname"><a href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a></div><div class="ttdeci">void remmina_file_delete(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00909">remmina_file.c:909</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a4db5c4960c9dbe3e798528bacb31456e"><div class="ttname"><a href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">_RemminaMain::button_new</a></div><div class="ttdeci">GtkButton * button_new</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00060">remmina_main.h:60</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a1575015519fedca001bb26e129331b62"><div class="ttname"><a href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">_RemminaMain::menu_popup_full</a></div><div class="ttdeci">GtkMenu * menu_popup_full</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00054">remmina_main.h:54</a></div></div>
@@ -221,14 +221,14 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="struct___remmina_pref_html_a8edfd2a9a9a06b1fd876fbe8742b9ff6"><div class="ttname"><a href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">_RemminaPref::main_maximize</a></div><div class="ttdeci">gboolean main_maximize</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00219">remmina_pref.h:219</a></div></div>
<div class="ttc" id="struct___remmina_main_html_acacd90f3e6df6a864154edba01464ae2"><div class="ttname"><a href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">_RemminaMain::statusbar_main</a></div><div class="ttdeci">GtkStatusbar * statusbar_main</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00081">remmina_main.h:81</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a8e21f782dd6e0a6d80f0f622898b2a48"><div class="ttname"><a href="struct___remmina_main.html#a8e21f782dd6e0a6d80f0f622898b2a48">_RemminaMain::column_files_list_plugin</a></div><div class="ttdeci">GtkTreeViewColumn * column_files_list_plugin</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00078">remmina_main.h:78</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a1cac4199e40e35bf3fcdb98841615657"><div class="ttname"><a href="remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657">remmina_main_quick_search_on_changed</a></div><div class="ttdeci">void remmina_main_quick_search_on_changed(GtkEditable *editable, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01493">remmina_main.c:1493</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a6ed9f6a588a2d9e3a6cf6884c8d07f92"><div class="ttname"><a href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a></div><div class="ttdeci">void remmina_main_on_action_application_preferences(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01086">remmina_main.c:1086</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a1cac4199e40e35bf3fcdb98841615657"><div class="ttname"><a href="remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657">remmina_main_quick_search_on_changed</a></div><div class="ttdeci">void remmina_main_quick_search_on_changed(GtkEditable *editable, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01495">remmina_main.c:1495</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a6ed9f6a588a2d9e3a6cf6884c8d07f92"><div class="ttname"><a href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a></div><div class="ttdeci">void remmina_main_on_action_application_preferences(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01091">remmina_main.c:1091</a></div></div>
<div class="ttc" id="remmina__file__editor_8h_html"><div class="ttname"><a href="remmina__file__editor_8h.html">remmina_file_editor.h</a></div></div>
<div class="ttc" id="struct___remmina_main_html_ab7c6aebff1b06ef97c36bfa9d360b0c1"><div class="ttname"><a href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">_RemminaMain::builder</a></div><div class="ttdeci">GtkBuilder * builder</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00049">remmina_main.h:49</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html"><div class="ttname"><a href="struct___remmina_main_priv.html">_RemminaMainPriv</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00089">remmina_main.h:89</a></div></div>
<div class="ttc" id="remmina__public_8c_html_a4573e086e1ff8507eb9447b25bf11b92"><div class="ttname"><a href="remmina__public_8c.html#a4573e086e1ff8507eb9447b25bf11b92">remmina_public_gtk_builder_new_from_resource</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_resource(gchar *resource)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00572">remmina_public.c:572</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a10e574723222f5df9db456977e62a093"><div class="ttname"><a href="remmina__main_8c.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a></div><div class="ttdeci">void remmina_main_on_action_connection_delete(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00977">remmina_main.c:977</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a1f5f9a964a75214d500e7a9fca1bd8a6"><div class="ttname"><a href="remmina__main_8c.html#a1f5f9a964a75214d500e7a9fca1bd8a6">is_empty</a></div><div class="ttdeci">static gboolean is_empty(const gchar *s)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01312">remmina_main.c:1312</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a1f5f9a964a75214d500e7a9fca1bd8a6"><div class="ttname"><a href="remmina__main_8c.html#a1f5f9a964a75214d500e7a9fca1bd8a6">is_empty</a></div><div class="ttdeci">static gboolean is_empty(const gchar *s)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01315">remmina_main.c:1315</a></div></div>
<div class="ttc" id="remmina__string__array_8c_html_a7f1c8e427a25c2d5cede3952b1d0ad90"><div class="ttname"><a href="remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array_new_from_string</a></div><div class="ttdeci">RemminaStringArray * remmina_string_array_new_from_string(const gchar *strs)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00051">remmina_string_array.c:51</a></div></div>
<div class="ttc" id="remmina__pref_8c_html_a9a8d02227eb703bccc3f9296a5d89d6f"><div class="ttname"><a href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a></div><div class="ttdeci">gboolean remmina_pref_get_boolean(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01150">remmina_pref.c:1150</a></div></div>
<div class="ttc" id="struct___remmina_pref_html_ab43c3da7d8551c9df726996c540726f1"><div class="ttname"><a href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">_RemminaPref::view_file_mode</a></div><div class="ttdeci">gint view_file_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00213">remmina_pref.h:213</a></div></div>
@@ -237,17 +237,17 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="remmina__file__editor_8c_html_aa9345cfe3fb32d326b652e96ee55eaea"><div class="ttname"><a href="remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor_new_from_filename</a></div><div class="ttdeci">GtkWidget * remmina_file_editor_new_from_filename(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l02073">remmina_file_editor.c:2073</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb"><div class="ttname"><a href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00079">remmina_main.c:79</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a51880fc109db6457a5d0fc543c2deaf2"><div class="ttname"><a href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2">remmina_main_save_expanded_group_func</a></div><div class="ttdeci">static void remmina_main_save_expanded_group_func(GtkTreeView *tree_view, GtkTreePath *path, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00150">remmina_main.c:150</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_aa4d9b76d32fa500f4b9f39a19e4eaaf2"><div class="ttname"><a href="remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2">remmina_main_on_show</a></div><div class="ttdeci">void remmina_main_on_show(GtkWidget *w, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01623">remmina_main.c:1623</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_afefc1b651e1c546e949dbe6df72b0300"><div class="ttname"><a href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main_init</a></div><div class="ttdeci">static void remmina_main_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01551">remmina_main.c:1551</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_aa4d9b76d32fa500f4b9f39a19e4eaaf2"><div class="ttname"><a href="remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2">remmina_main_on_show</a></div><div class="ttdeci">void remmina_main_on_show(GtkWidget *w, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01625">remmina_main.c:1625</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_afefc1b651e1c546e949dbe6df72b0300"><div class="ttname"><a href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main_init</a></div><div class="ttdeci">static void remmina_main_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01553">remmina_main.c:1553</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a81f987e527d521be54aaf3f46dfe7ced"><div class="ttname"><a href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">_RemminaMain::tree_files_list</a></div><div class="ttdeci">GtkTreeView * tree_files_list</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00074">remmina_main.h:74</a></div></div>
<div class="ttc" id="remmina__main_8c_html_aa20963aed43242994c88d5a97a546355"><div class="ttname"><a href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main_select_file</a></div><div class="ttdeci">static void remmina_main_select_file(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00618">remmina_main.c:618</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a40493bb60c169e53e2e08a0d0a808302"><div class="ttname"><a href="remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302">remmina_main_on_delete_event</a></div><div class="ttdeci">gboolean remmina_main_on_delete_event(GtkWidget *widget, GdkEvent *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00225">remmina_main.c:225</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_aac3aa116a8d8b527f1aa61b7395b4b32"><div class="ttname"><a href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a></div><div class="ttdeci">void remmina_main_on_action_help_community(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01288">remmina_main.c:1288</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_aac3aa116a8d8b527f1aa61b7395b4b32"><div class="ttname"><a href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a></div><div class="ttdeci">void remmina_main_on_action_help_community(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01291">remmina_main.c:1291</a></div></div>
<div class="ttc" id="struct___remmina_main_html_ae3c2c0b9855bb44b5b9a27a3178d32e7"><div class="ttname"><a href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">_RemminaMain::view_toggle_button</a></div><div class="ttdeci">GtkToggleButton * view_toggle_button</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00065">remmina_main.h:65</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a95532ac6d110eeeb2e41d4b2a329797c"><div class="ttname"><a href="remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c">remmina_main_destroy</a></div><div class="ttdeci">void remmina_main_destroy()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00193">remmina_main.c:193</a></div></div>
<div class="ttc" id="remmina__file_8c_html_a5e421ba636d34e21bba5ece463e98892"><div class="ttname"><a href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a></div><div class="ttdeci">RemminaFile * remmina_file_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00093">remmina_file.c:93</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a56ac6ffe61c0d3663ebc6b26e65a8cbc"><div class="ttname"><a href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">_RemminaMain::column_files_list_group</a></div><div class="ttdeci">GtkTreeViewColumn * column_files_list_group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00076">remmina_main.h:76</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_aba1a89a2400c5cc8373c6bd34602ac10"><div class="ttname"><a href="remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10">remmina_main_file_list_on_row_activated</a></div><div class="ttdeci">void remmina_main_file_list_on_row_activated(GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01430">remmina_main.c:1430</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_aba1a89a2400c5cc8373c6bd34602ac10"><div class="ttname"><a href="remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10">remmina_main_file_list_on_row_activated</a></div><div class="ttdeci">void remmina_main_file_list_on_row_activated(GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01432">remmina_main.c:1432</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a74cb130b886c2b905f651e777644a08c"><div class="ttname"><a href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c">remmina_main_expand_group_traverse</a></div><div class="ttdeci">static void remmina_main_expand_group_traverse(GtkTreeIter *iter)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00417">remmina_main.c:417</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_a467cf8ebc87ccdb68b9f88bce95c9f3a"><div class="ttname"><a href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">_RemminaMainPriv::expanded_group</a></div><div class="ttdeci">RemminaStringArray * expanded_group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00099">remmina_main.h:99</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a3c5043279b5d98d4d08635d33402ea66"><div class="ttname"><a href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66">remmina_main_selection_func</a></div><div class="ttdeci">static gboolean remmina_main_selection_func(GtkTreeSelection *selection, GtkTreeModel *model, GtkTreePath *path, gboolean path_currently_selected, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00322">remmina_main.c:322</a></div></div>
@@ -255,17 +255,17 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="remmina__main_8c_html_a9e60326026d7de56882bc83c0084fd12"><div class="ttname"><a href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a></div><div class="ttdeci">static void remmina_main_clear_selection_data(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00261">remmina_main.c:261</a></div></div>
<div class="ttc" id="rcw_8h_html"><div class="ttname"><a href="rcw_8h.html">rcw.h</a></div></div>
<div class="ttc" id="rcw_8c_html_a1b7a771392e15e527005305e71cc2546"><div class="ttname"><a href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a></div><div class="ttdeci">void rcw_open_from_file(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04446">rcw.c:4446</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a3d60de4c121cae0c82e60b13873073db"><div class="ttname"><a href="remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db">remmina_main_on_date_column_sort_clicked</a></div><div class="ttdeci">void remmina_main_on_date_column_sort_clicked()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01148">remmina_main.c:1148</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a3d60de4c121cae0c82e60b13873073db"><div class="ttname"><a href="remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db">remmina_main_on_date_column_sort_clicked</a></div><div class="ttdeci">void remmina_main_on_date_column_sort_clicked()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01151">remmina_main.c:1151</a></div></div>
<div class="ttc" id="rcw_8c_html_a29701ae152ba15f6d8921f395174d2df"><div class="ttname"><a href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a></div><div class="ttdeci">RemminaPref remmina_pref</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00079">rcw.c:79</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a31102f8ca7440a22c1514bca17933193"><div class="ttname"><a href="remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193">remmina_main_file_list_on_key_press</a></div><div class="ttdeci">gboolean remmina_main_file_list_on_key_press(GtkWidget *widget, GdkEventKey *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01471">remmina_main.c:1471</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a31102f8ca7440a22c1514bca17933193"><div class="ttname"><a href="remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193">remmina_main_file_list_on_key_press</a></div><div class="ttdeci">gboolean remmina_main_file_list_on_key_press(GtkWidget *widget, GdkEventKey *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01473">remmina_main.c:1473</a></div></div>
<div class="ttc" id="remmina__file_8c_html_a4884356c195dcfb4ceacf641a1e74e66"><div class="ttname"><a href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a></div><div class="ttdeci">gint remmina_file_get_int(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00603">remmina_file.c:603</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a91f22c2834ac7f38d201d8d678f8c57b"><div class="ttname"><a href="remmina__main_8c.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a></div><div class="ttdeci">void remmina_main_on_action_application_dark_theme(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01260">remmina_main.c:1260</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a91f22c2834ac7f38d201d8d678f8c57b"><div class="ttname"><a href="remmina__main_8c.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a></div><div class="ttdeci">void remmina_main_on_action_application_dark_theme(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01263">remmina_main.c:1263</a></div></div>
<div class="ttc" id="remmina__about_8c_html_a3ad768979e0945a162018c6d596c90f4"><div class="ttname"><a href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about_open</a></div><div class="ttdeci">void remmina_about_open(GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__about_8c_source.html#l00044">remmina_about.c:44</a></div></div>
<div class="ttc" id="remmina__file__editor_8c_html_aa4e8657ca722e4cce3f3c42c0cfec51e"><div class="ttname"><a href="remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor_new</a></div><div class="ttdeci">GtkWidget * remmina_file_editor_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l02034">remmina_file_editor.c:2034</a></div></div>
<div class="ttc" id="remmina__pref_8h_html_aac34dfe6c6b73b43a4656c9dce041034a46530ebfd659963a54b7dae5702af1df"><div class="ttname"><a href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00055">remmina_pref.h:55</a></div></div>
<div class="ttc" id="remmina__exec_8h_html_ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284"><div class="ttname"><a href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284">REMMINA_CONDEXIT_ONQUIT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00060">remmina_exec.h:60</a></div></div>
<div class="ttc" id="remmina__plugin__manager_8c_html_a3872c8656a8a3d5147bcc603471c1932"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager_get_plugin</a></div><div class="ttdeci">RemminaPlugin * remmina_plugin_manager_get_plugin(RemminaPluginType type, const gchar *name)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00438">remmina_plugin_manager.c:438</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a7be10e330f0c2a3f74e119cde443786f"><div class="ttname"><a href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f">remmina_main_add_tool_plugin</a></div><div class="ttdeci">static gboolean remmina_main_add_tool_plugin(gchar *name, RemminaPlugin *plugin, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01532">remmina_main.c:1532</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a7be10e330f0c2a3f74e119cde443786f"><div class="ttname"><a href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f">remmina_main_add_tool_plugin</a></div><div class="ttdeci">static gboolean remmina_main_add_tool_plugin(gchar *name, RemminaPlugin *plugin, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01534">remmina_main.c:1534</a></div></div>
<div class="ttc" id="remmina__pref_8h_html"><div class="ttname"><a href="remmina__pref_8h.html">remmina_pref.h</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f"><div class="ttname"><a href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00077">remmina_main.c:77</a></div></div>
<div class="ttc" id="struct___remmina_monitor_html_adaa8ac5463302ab18a45171b5e4618f1"><div class="ttname"><a href="struct___remmina_monitor.html#adaa8ac5463302ab18a45171b5e4618f1">_RemminaMonitor::connected</a></div><div class="ttdeci">gboolean connected</div><div class="ttdef"><b>Definition:</b> <a href="remmina__monitor_8h_source.html#l00045">remmina_monitor.h:45</a></div></div>
@@ -276,7 +276,7 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="rcw_8c_html_aa37f2a9c56df0ce1a0dbc32f8989e4b5"><div class="ttname"><a href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a></div><div class="ttdeci">gboolean rcw_open_from_filename(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04398">rcw.c:4398</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a8ebbcba2c07af0938b3c29e316747d12"><div class="ttname"><a href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a></div><div class="ttdeci">static const gchar * supported_mime_types[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00087">remmina_main.c:87</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b"><div class="ttname"><a href="remmina__main_8c.html#a385c44f6fb256e5716a2302a5b940388a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00076">remmina_main.c:76</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_ab98d51c96a87fddaa2d5d6d4614bafa8"><div class="ttname"><a href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a></div><div class="ttdeci">void remmina_main_on_action_expand(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01423">remmina_main.c:1423</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab98d51c96a87fddaa2d5d6d4614bafa8"><div class="ttname"><a href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a></div><div class="ttdeci">void remmina_main_on_action_expand(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01425">remmina_main.c:1425</a></div></div>
<div class="ttc" id="struct___remmina_file_plugin_html_a8bf634ff09caba624ecf93c42e12af78"><div class="ttname"><a href="struct___remmina_file_plugin.html#a8bf634ff09caba624ecf93c42e12af78">_RemminaFilePlugin::export_func</a></div><div class="ttdeci">gboolean(* export_func)(struct _RemminaFilePlugin *instance, RemminaFile *file, const gchar *to_file)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00110">plugin.h:110</a></div></div>
<div class="ttc" id="remmina_8c_html_ab4a9a67c5372ff07b71d0558679ab7ae"><div class="ttname"><a href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a></div><div class="ttdeci">gboolean kioskmode</div><div class="ttdef"><b>Definition:</b> <a href="remmina_8c_source.html#l00087">remmina.c:87</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a82aa6f22340fc4f3df185aba7b01afc2"><div class="ttname"><a href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">_RemminaMain::window</a></div><div class="ttdeci">GtkWindow * window</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00050">remmina_main.h:50</a></div></div>
@@ -285,14 +285,14 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="remmina__main_8c_html_aace9ecdd0b74d392ad6ed541bd605c1c"><div class="ttname"><a href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a></div><div class="ttdeci">static char * quick_connect_plugin_list[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00131">remmina_main.c:131</a></div></div>
<div class="ttc" id="remmina__file_8c_html_a8c893a5deec9bc446bd89cc9973416c7"><div class="ttname"><a href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a></div><div class="ttdeci">void remmina_file_save(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00728">remmina_file.c:728</a></div></div>
<div class="ttc" id="struct___remmina_main_html_ab743fa626843d8fbb669fbd01819aea9"><div class="ttname"><a href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">_RemminaMain::column_files_list_notes</a></div><div class="ttdeci">GtkTreeViewColumn * column_files_list_notes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00080">remmina_main.h:80</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a802458852abacebfb16f1f4295806a01"><div class="ttname"><a href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01">remmina_main_quickconnect</a></div><div class="ttdeci">static gboolean remmina_main_quickconnect(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01324">remmina_main.c:1324</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a802458852abacebfb16f1f4295806a01"><div class="ttname"><a href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01">remmina_main_quickconnect</a></div><div class="ttdeci">static gboolean remmina_main_quickconnect(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01327">remmina_main.c:1327</a></div></div>
<div class="ttc" id="struct___remmina_pref_html_a320861799b86dc076d5f87e3a216eb95"><div class="ttname"><a href="struct___remmina_pref.html#a320861799b86dc076d5f87e3a216eb95">_RemminaPref::always_show_notes</a></div><div class="ttdeci">gboolean always_show_notes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00153">remmina_pref.h:153</a></div></div>
<div class="ttc" id="remmina__string__array_8c_html_a2aaacca7db4b86f836486cfb559398f0"><div class="ttname"><a href="remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array_add</a></div><div class="ttdeci">void remmina_string_array_add(RemminaStringArray *array, const gchar *str)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00086">remmina_string_array.c:86</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a8ccd8303ada6e26880504fc58812fbda"><div class="ttname"><a href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda">remmina_drop_types</a></div><div class="ttdeci">static GtkTargetEntry remmina_drop_types[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00126">remmina_main.c:126</a></div></div>
<div class="ttc" id="struct___remmina_main_html_aecb54d7c3dd1e86a16e24ea2e00d4ddd"><div class="ttname"><a href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">_RemminaMain::search_bar</a></div><div class="ttdeci">GtkSearchBar * search_bar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00067">remmina_main.h:67</a></div></div>
<div class="ttc" id="remmina__main_8c_html_ab7c680e1f6ffeef21cb928a083d36d89"><div class="ttname"><a href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89">remminamain</a></div><div class="ttdeci">static RemminaMain * remminamain</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00069">remmina_main.c:69</a></div></div>
<div class="ttc" id="remmina__file__editor_8c_html_aa5c50852f8569f075eec5d5db30c2ebf"><div class="ttname"><a href="remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor_new_copy</a></div><div class="ttdeci">GtkWidget * remmina_file_editor_new_copy(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l02054">remmina_file_editor.c:2054</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a5445e5568a6fc04d08b620829a59334a"><div class="ttname"><a href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a></div><div class="ttdeci">void remmina_main_on_action_application_quit(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01140">remmina_main.c:1140</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a5445e5568a6fc04d08b620829a59334a"><div class="ttname"><a href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a></div><div class="ttdeci">void remmina_main_on_action_application_quit(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01143">remmina_main.c:1143</a></div></div>
<div class="ttc" id="struct___remmina_main_html_ac2eff9c56cc7830bcf9ca4bfdf216095"><div class="ttname"><a href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">_RemminaMain::entry_quick_connect_server</a></div><div class="ttdeci">GtkEntry * entry_quick_connect_server</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00071">remmina_main.h:71</a></div></div>
<div class="ttc" id="remmina__unlock_8c_html_a81e79e5c1c230b7e2bf27b2457801d4e"><div class="ttname"><a href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a></div><div class="ttdeci">gint remmina_unlock_new(GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00113">remmina_unlock.c:113</a></div></div>
<div class="ttc" id="remmina__file_8c_html_a2feb8e9e32f3ff4e2fac836e67a77331"><div class="ttname"><a href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a></div><div class="ttdeci">const gchar * remmina_file_get_icon_name(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00883">remmina_file.c:883</a></div></div>
@@ -303,24 +303,24 @@ $(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
<div class="ttc" id="remmina__pref__dialog_8c_html_ab09f64d25a5a016281a56edca7e2d70a"><div class="ttname"><a href="remmina__pref__dialog_8c.html#ab09f64d25a5a016281a56edca7e2d70a">remmina_pref_dialog_new</a></div><div class="ttdeci">GtkWidget * remmina_pref_dialog_new(gint default_tab, GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00691">remmina_pref_dialog.c:691</a></div></div>
<div class="ttc" id="remmina__unlock_8h_html"><div class="ttname"><a href="remmina__unlock_8h.html">remmina_unlock.h</a></div></div>
<div class="ttc" id="remmina__file__manager_8c_html_a6593a3f297f420f012405fa582819857"><div class="ttname"><a href="remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857">remmina_file_manager_get_group_tree</a></div><div class="ttdeci">GNode * remmina_file_manager_get_group_tree(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00302">remmina_file_manager.c:302</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a9896df7a92402b5a61e58420235c515a"><div class="ttname"><a href="remmina__main_8c.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a></div><div class="ttdeci">void remmina_main_on_action_search_toggle(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01399">remmina_main.c:1399</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a9896df7a92402b5a61e58420235c515a"><div class="ttname"><a href="remmina__main_8c.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a></div><div class="ttdeci">void remmina_main_on_action_search_toggle(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01402">remmina_main.c:1402</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_a0307278dd7770ab490f4687f2eb00e76"><div class="ttname"><a href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">_RemminaMainPriv::override_view_file_mode_to_list</a></div><div class="ttdeci">gboolean override_view_file_mode_to_list</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00098">remmina_main.h:98</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_ab203476099a5ad6e889f91c8e05d577d"><div class="ttname"><a href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a></div><div class="ttdeci">void remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01225">remmina_main.c:1225</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab203476099a5ad6e889f91c8e05d577d"><div class="ttname"><a href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a></div><div class="ttdeci">void remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01228">remmina_main.c:1228</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a6a466d0b07944e619bd9b0e473c8a5bd"><div class="ttname"><a href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd">remmina_main_file_editor_destroy</a></div><div class="ttdeci">static void remmina_main_file_editor_destroy(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00805">remmina_main.c:805</a></div></div>
<div class="ttc" id="remmina__file__manager_8c_html_a55a717aafc046713380bd2c55f29165a"><div class="ttname"><a href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a></div><div class="ttdeci">gint remmina_file_manager_iterate(GFunc func, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00177">remmina_file_manager.c:177</a></div></div>
<div class="ttc" id="struct___remmina_pref_html_a7c139ee405d50330b1d9bfb646c0258c"><div class="ttname"><a href="struct___remmina_pref.html#a7c139ee405d50330b1d9bfb646c0258c">_RemminaPref::dark_theme</a></div><div class="ttdeci">gboolean dark_theme</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00149">remmina_pref.h:149</a></div></div>
<div class="ttc" id="remmina__pref_8h_html_a0ed680fdb405e7195d9f14032851eebba84fe14d6d19ab0479931a6886178f2e3"><div class="ttname"><a href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba84fe14d6d19ab0479931a6886178f2e3">REMMINA_ACTION_EDIT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00060">remmina_pref.h:60</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a4a4733c243f20c3ffc27105003f5e30e"><div class="ttname"><a href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e">remmina_main_expand_group</a></div><div class="ttdeci">static void remmina_main_expand_group(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00446">remmina_main.c:446</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_af51fc7233eb2397a5074ba37b5c5275f"><div class="ttname"><a href="remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f">remmina_main_quick_search_on_icon_press</a></div><div class="ttdeci">void remmina_main_quick_search_on_icon_press(GtkEntry *entry, GtkEntryIconPosition icon_pos, GdkEvent *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01486">remmina_main.c:1486</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_aea426b2e8fc03f963bb2b98cb8649adf"><div class="ttname"><a href="remmina__main_8c.html#aea426b2e8fc03f963bb2b98cb8649adf">remmina_main_on_accel_search_toggle</a></div><div class="ttdeci">void remmina_main_on_accel_search_toggle(RemminaMain *remminamain)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01417">remmina_main.c:1417</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_af51fc7233eb2397a5074ba37b5c5275f"><div class="ttname"><a href="remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f">remmina_main_quick_search_on_icon_press</a></div><div class="ttdeci">void remmina_main_quick_search_on_icon_press(GtkEntry *entry, GtkEntryIconPosition icon_pos, GdkEvent *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01488">remmina_main.c:1488</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_aea426b2e8fc03f963bb2b98cb8649adf"><div class="ttname"><a href="remmina__main_8c.html#aea426b2e8fc03f963bb2b98cb8649adf">remmina_main_on_accel_search_toggle</a></div><div class="ttdeci">void remmina_main_on_accel_search_toggle(RemminaMain *remminamain)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01419">remmina_main.c:1419</a></div></div>
<div class="ttc" id="remmina__file_8h_html"><div class="ttname"><a href="remmina__file_8h.html">remmina_file.h</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a3617295e74fa84edbd41dedc601402a7"><div class="ttname"><a href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a></div><div class="ttdeci">static void remmina_main_load_files()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00646">remmina_main.c:646</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a1ffeff8198ae0dc7c2461001118fcc5a"><div class="ttname"><a href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a">_RemminaMain::column_files_list_date</a></div><div class="ttdeci">GtkTreeViewColumn * column_files_list_date</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00079">remmina_main.h:79</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_aac0bb51159be042fecab0103e73a54dc"><div class="ttname"><a href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a></div><div class="ttdeci">void remmina_main_on_action_application_about(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01306">remmina_main.c:1306</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a85aa313453e0ecaa17bcce233973998d"><div class="ttname"><a href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d">remmina_main_action_tools_import_on_response</a></div><div class="ttdeci">static void remmina_main_action_tools_import_on_response(GtkDialog *dialog, gint response_id, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01201">remmina_main.c:1201</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_adf59ad5b0a0ef68e58bbea3701929efc"><div class="ttname"><a href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a></div><div class="ttdeci">void remmina_main_on_action_application_plugins(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01254">remmina_main.c:1254</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_aac0bb51159be042fecab0103e73a54dc"><div class="ttname"><a href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a></div><div class="ttdeci">void remmina_main_on_action_application_about(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01309">remmina_main.c:1309</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a85aa313453e0ecaa17bcce233973998d"><div class="ttname"><a href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d">remmina_main_action_tools_import_on_response</a></div><div class="ttdeci">static void remmina_main_action_tools_import_on_response(GtkDialog *dialog, gint response_id, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01204">remmina_main.c:1204</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_adf59ad5b0a0ef68e58bbea3701929efc"><div class="ttname"><a href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a></div><div class="ttdeci">void remmina_main_on_action_application_plugins(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01257">remmina_main.c:1257</a></div></div>
<div class="ttc" id="remmina__main_8c_html_a33ef5745d8b934ef52379c277d3a1ab2"><div class="ttname"><a href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2">remmina_main_dexit</a></div><div class="ttdeci">static gboolean remmina_main_dexit(gpointer data)</div><div class="ttdoc">Try to exit remmina after a delete window event. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00218">remmina_main.c:218</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a210e9e04c7c97cc86412044de31f659d"><div class="ttname"><a href="remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d">remmina_main_quickconnect_on_click</a></div><div class="ttdeci">gboolean remmina_main_quickconnect_on_click(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01378">remmina_main.c:1378</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a210e9e04c7c97cc86412044de31f659d"><div class="ttname"><a href="remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d">remmina_main_quickconnect_on_click</a></div><div class="ttdeci">gboolean remmina_main_quickconnect_on_click(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01381">remmina_main.c:1381</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
diff --git a/public/remmina__main_8h.html b/public/remmina__main_8h.html
index 4077a2e95..ef0ac5a7c 100644
--- a/public/remmina__main_8h.html
+++ b/public/remmina__main_8h.html
@@ -246,7 +246,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01716">1716</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01718">1718</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -266,7 +266,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01632">1632</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01634">1634</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -302,7 +302,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01306">1306</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01309">1309</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -338,7 +338,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01260">1260</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01263">1263</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -374,7 +374,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01112">1112</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01115">1115</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -446,7 +446,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01254">1254</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01257">1257</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -482,7 +482,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01086">1086</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01091">1091</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -518,7 +518,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01140">1140</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01143">1143</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -554,7 +554,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01393">1393</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01396">1396</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -842,7 +842,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01423">1423</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01425">1425</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -878,7 +878,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01288">1288</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01291">1291</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -914,7 +914,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01300">1300</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01303">1303</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -950,7 +950,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01294">1294</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01297">1297</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -986,7 +986,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01276">1276</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01279">1279</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1022,7 +1022,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01282">1282</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01285">1285</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1058,7 +1058,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01399">1399</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01402">1402</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1094,7 +1094,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01225">1225</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01228">1228</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1130,7 +1130,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01213">1213</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01216">1216</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1230,7 +1230,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01735">1735</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01737">1737</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1250,7 +1250,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01745">1745</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01747">1747</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
@@ -1270,7 +1270,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
-<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01728">1728</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01730">1730</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
</div>
</div>
diff --git a/public/remmina__main_8h_source.html b/public/remmina__main_8h_source.html
index e0f243b93..9bd1d24fa 100644
--- a/public/remmina__main_8h_source.html
+++ b/public/remmina__main_8h_source.html
@@ -86,7 +86,7 @@ $(document).ready(function(){initNavTree('remmina__main_8h_source.html','');});
<div class="title">remmina_main.h</div> </div>
</div><!--header-->
<div class="contents">
-<a href="remmina__main_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Remmina - The GTK+ Remote Desktop Client</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2009-2011 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2014-2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Copyright (C) 2016-2022 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Copyright (C) 2022-2023 Antenore Gatta, Giovanni Panozzo, Hiroyuki Tanaka</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * it under the terms of the GNU General Public License as published by</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version of the file(s), but you are not obligated to do so. * If you</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file_8h.html">remmina_file.h</a>&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__monitor_8h.html">remmina_monitor.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__string__array_8h.html">remmina_string_array.h</a>&quot;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052"> 46</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_main_priv.html">_RemminaMainPriv</a> <a class="code" href="struct___remmina_main_priv.html">RemminaMainPriv</a>;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="struct___remmina_main.html"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_main.html">_RemminaMain</a> {</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1"> 49</a></span>&#160; GtkBuilder * <a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2"> 50</a></span>&#160; GtkWindow * <a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="comment">/* Menu widgets */</span></div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6"> 52</a></span>&#160; GtkMenu * <a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec"> 53</a></span>&#160; GtkMenuButton * <a class="code" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">menu_header_button</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62"> 54</a></span>&#160; GtkMenu * <a class="code" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">menu_popup_full</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a98a1ddd6aebc35c131f8de819a3d861f"> 55</a></span>&#160; GtkMenu * <a class="code" href="struct___remmina_main.html#a98a1ddd6aebc35c131f8de819a3d861f">menu_popup_delete_rc</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4"> 56</a></span>&#160; GtkRadioMenuItem * <a class="code" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4">menuitem_view_mode_list</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0"> 57</a></span>&#160; GtkRadioMenuItem * <a class="code" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0">menuitem_view_mode_tree</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a"> 58</a></span>&#160; GtkMenuItem * <a class="code" href="struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a">menuitem_connection_quit</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="comment">/* Button new */</span></div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e"> 60</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">button_new</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21"> 61</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21">button_make_default</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">/* Search bar objects */</span></div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72"> 63</a></span>&#160; GtkToggleButton * <a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a912f2057752ad0779485c3303e3e9b04"> 64</a></span>&#160; GtkSwitch * <a class="code" href="struct___remmina_main.html#a912f2057752ad0779485c3303e3e9b04">switch_dark_mode</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7"> 65</a></span>&#160; GtkToggleButton * <a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670"> 66</a></span>&#160; GtkToggleButton * <a class="code" href="struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670">ustats_toggle</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd"> 67</a></span>&#160; GtkSearchBar * <a class="code" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">search_bar</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">/* Quick connect objects */</span></div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95"> 69</a></span>&#160; GtkBox * <a class="code" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95">box_quick_connect</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39"> 70</a></span>&#160; GtkComboBoxText * <a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095"> 71</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774"> 72</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774">button_quick_connect</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">/* Other widgets */</span></div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced"> 74</a></span>&#160; GtkTreeView * <a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aa2b3c232b59da2278215d446b93db0e5"> 75</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#aa2b3c232b59da2278215d446b93db0e5">column_files_list_name</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc"> 76</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">column_files_list_group</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a7db532834f4fd6360956cb0e2383b0fb"> 77</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#a7db532834f4fd6360956cb0e2383b0fb">column_files_list_server</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a8e21f782dd6e0a6d80f0f622898b2a48"> 78</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#a8e21f782dd6e0a6d80f0f622898b2a48">column_files_list_plugin</a>;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a"> 79</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a">column_files_list_date</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9"> 80</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">column_files_list_notes</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2"> 81</a></span>&#160; GtkStatusbar * <a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f"> 82</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">/* Non widget objects */</span></div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549"> 84</a></span>&#160; GtkAccelGroup * <a class="code" href="struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549">accelgroup_shortcuts</a>;</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980"> 85</a></span>&#160; <a class="code" href="struct___remmina_main_priv.html">RemminaMainPriv</a> * <a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150"> 86</a></span>&#160; <a class="code" href="struct___remmina_monitor.html">RemminaMonitor</a> * <a class="code" href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150">monitor</a>;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;} <a class="code" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a>;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html"> 89</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct___remmina_main_priv.html">_RemminaMainPriv</a> {</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f"> 90</a></span>&#160; GtkTreeModel * <a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>;</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c"> 91</a></span>&#160; GtkTreeModel * <a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd"> 92</a></span>&#160; GtkTreeModel * <a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f"> 94</a></span>&#160; gboolean <a class="code" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">initialized</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00"> 96</a></span>&#160; gchar * <a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d"> 97</a></span>&#160; gchar * <a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76"> 98</a></span>&#160; gboolean <a class="code" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a"> 99</a></span>&#160; <a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> * <a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;};</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment">/* Create the remminamain struct and the remmina main Remmina window */</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;GtkWidget *<a class="code" href="remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7">remmina_main_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment">/* Get the current main GTK window or NULL if not initialized */</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;GtkWindow *<a class="code" href="remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc">remmina_main_get_window</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8">remmina_main_destroy</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a4d2d08c3fed3f72ea7f4c0600fec7ed5">remmina_main_on_destroy_event</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5">remmina_main_save_before_destroy</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#ab2a1a54320992fb796850ffbd6a63589">remmina_main_show_dialog</a>(GtkMessageType msg, GtkButtonsType buttons, <span class="keyword">const</span> gchar* message);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a>(<span class="keyword">const</span> gchar *message);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#af56bada711b2fc9c50af83b8b62dfe8b">remmina_main_on_action_connection_delete_multiple</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main_on_action_connection_external_tools</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a1bdf3fe7a3de2371f80adcbdcf50381d">remmina_main_reload_preferences</a>();</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__main_8h_html_adf59ad5b0a0ef68e58bbea3701929efc"><div class="ttname"><a href="remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a></div><div class="ttdeci">void remmina_main_on_action_application_plugins(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01254">remmina_main.c:1254</a></div></div>
+<a href="remmina__main_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Remmina - The GTK+ Remote Desktop Client</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2009-2011 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2014-2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Copyright (C) 2016-2022 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Copyright (C) 2022-2023 Antenore Gatta, Giovanni Panozzo, Hiroyuki Tanaka</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * it under the terms of the GNU General Public License as published by</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version of the file(s), but you are not obligated to do so. * If you</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__file_8h.html">remmina_file.h</a>&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__monitor_8h.html">remmina_monitor.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__string__array_8h.html">remmina_string_array.h</a>&quot;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052"> 46</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_main_priv.html">_RemminaMainPriv</a> <a class="code" href="struct___remmina_main_priv.html">RemminaMainPriv</a>;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="struct___remmina_main.html"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_main.html">_RemminaMain</a> {</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1"> 49</a></span>&#160; GtkBuilder * <a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2"> 50</a></span>&#160; GtkWindow * <a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="comment">/* Menu widgets */</span></div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6"> 52</a></span>&#160; GtkMenu * <a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec"> 53</a></span>&#160; GtkMenuButton * <a class="code" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">menu_header_button</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62"> 54</a></span>&#160; GtkMenu * <a class="code" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">menu_popup_full</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a98a1ddd6aebc35c131f8de819a3d861f"> 55</a></span>&#160; GtkMenu * <a class="code" href="struct___remmina_main.html#a98a1ddd6aebc35c131f8de819a3d861f">menu_popup_delete_rc</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4"> 56</a></span>&#160; GtkRadioMenuItem * <a class="code" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4">menuitem_view_mode_list</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0"> 57</a></span>&#160; GtkRadioMenuItem * <a class="code" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0">menuitem_view_mode_tree</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a"> 58</a></span>&#160; GtkMenuItem * <a class="code" href="struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a">menuitem_connection_quit</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="comment">/* Button new */</span></div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e"> 60</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">button_new</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21"> 61</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21">button_make_default</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">/* Search bar objects */</span></div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72"> 63</a></span>&#160; GtkToggleButton * <a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a912f2057752ad0779485c3303e3e9b04"> 64</a></span>&#160; GtkSwitch * <a class="code" href="struct___remmina_main.html#a912f2057752ad0779485c3303e3e9b04">switch_dark_mode</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7"> 65</a></span>&#160; GtkToggleButton * <a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670"> 66</a></span>&#160; GtkToggleButton * <a class="code" href="struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670">ustats_toggle</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd"> 67</a></span>&#160; GtkSearchBar * <a class="code" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">search_bar</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">/* Quick connect objects */</span></div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95"> 69</a></span>&#160; GtkBox * <a class="code" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95">box_quick_connect</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39"> 70</a></span>&#160; GtkComboBoxText * <a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095"> 71</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774"> 72</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774">button_quick_connect</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">/* Other widgets */</span></div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced"> 74</a></span>&#160; GtkTreeView * <a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aa2b3c232b59da2278215d446b93db0e5"> 75</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#aa2b3c232b59da2278215d446b93db0e5">column_files_list_name</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc"> 76</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">column_files_list_group</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a7db532834f4fd6360956cb0e2383b0fb"> 77</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#a7db532834f4fd6360956cb0e2383b0fb">column_files_list_server</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a8e21f782dd6e0a6d80f0f622898b2a48"> 78</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#a8e21f782dd6e0a6d80f0f622898b2a48">column_files_list_plugin</a>;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a"> 79</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#a1ffeff8198ae0dc7c2461001118fcc5a">column_files_list_date</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9"> 80</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">column_files_list_notes</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2"> 81</a></span>&#160; GtkStatusbar * <a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f"> 82</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">network_icon</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">/* Non widget objects */</span></div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549"> 84</a></span>&#160; GtkAccelGroup * <a class="code" href="struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549">accelgroup_shortcuts</a>;</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980"> 85</a></span>&#160; <a class="code" href="struct___remmina_main_priv.html">RemminaMainPriv</a> * <a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150"> 86</a></span>&#160; <a class="code" href="struct___remmina_monitor.html">RemminaMonitor</a> * <a class="code" href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150">monitor</a>;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;} <a class="code" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a>;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html"> 89</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct___remmina_main_priv.html">_RemminaMainPriv</a> {</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f"> 90</a></span>&#160; GtkTreeModel * <a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>;</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c"> 91</a></span>&#160; GtkTreeModel * <a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd"> 92</a></span>&#160; GtkTreeModel * <a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f"> 94</a></span>&#160; gboolean <a class="code" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">initialized</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00"> 96</a></span>&#160; gchar * <a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d"> 97</a></span>&#160; gchar * <a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76"> 98</a></span>&#160; gboolean <a class="code" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a"> 99</a></span>&#160; <a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> * <a class="code" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;};</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment">/* Create the remminamain struct and the remmina main Remmina window */</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;GtkWidget *<a class="code" href="remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7">remmina_main_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment">/* Get the current main GTK window or NULL if not initialized */</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;GtkWindow *<a class="code" href="remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc">remmina_main_get_window</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8">remmina_main_destroy</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a4d2d08c3fed3f72ea7f4c0600fec7ed5">remmina_main_on_destroy_event</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5">remmina_main_save_before_destroy</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#ab2a1a54320992fb796850ffbd6a63589">remmina_main_show_dialog</a>(GtkMessageType msg, GtkButtonsType buttons, <span class="keyword">const</span> gchar* message);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a>(<span class="keyword">const</span> gchar *message);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#af56bada711b2fc9c50af83b8b62dfe8b">remmina_main_on_action_connection_delete_multiple</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main_on_action_connection_external_tools</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a1bdf3fe7a3de2371f80adcbdcf50381d">remmina_main_reload_preferences</a>();</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__main_8h_html_adf59ad5b0a0ef68e58bbea3701929efc"><div class="ttname"><a href="remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a></div><div class="ttdeci">void remmina_main_on_action_application_plugins(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01257">remmina_main.c:1257</a></div></div>
<div class="ttc" id="struct___remmina_main_html_acd8f3437eee668a2b8d905a16a16be72"><div class="ttname"><a href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">_RemminaMain::search_toggle</a></div><div class="ttdeci">GtkToggleButton * search_toggle</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00063">remmina_main.h:63</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a6288ed69d372d1047ce94c74e77e0fd4"><div class="ttname"><a href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4">_RemminaMain::menuitem_view_mode_list</a></div><div class="ttdeci">GtkRadioMenuItem * menuitem_view_mode_list</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00056">remmina_main.h:56</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a0995d06fd3cad6098f0ecfaca9ed616f"><div class="ttname"><a href="struct___remmina_main.html#a0995d06fd3cad6098f0ecfaca9ed616f">_RemminaMain::network_icon</a></div><div class="ttdeci">GtkWidget * network_icon</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00082">remmina_main.h:82</a></div></div>
@@ -97,7 +97,7 @@ $(document).ready(function(){initNavTree('remmina__main_8h_source.html','');});
<div class="ttc" id="struct___remmina_main_priv_html_aec4c4540e9463a45b22a5c0b9108bc6f"><div class="ttname"><a href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">_RemminaMainPriv::file_model</a></div><div class="ttdeci">GtkTreeModel * file_model</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00090">remmina_main.h:90</a></div></div>
<div class="ttc" id="remmina__main_8h_html_a77d974da2ddd1ea7c87f8b9bb1eedda8"><div class="ttname"><a href="remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8">remmina_main_destroy</a></div><div class="ttdeci">void remmina_main_destroy(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00193">remmina_main.c:193</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a45e6df8230d849a78e547fd542d76980"><div class="ttname"><a href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">_RemminaMain::priv</a></div><div class="ttdeci">RemminaMainPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00085">remmina_main.h:85</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a7049d977154921f651cc1538f59c5b7a"><div class="ttname"><a href="remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a></div><div class="ttdeci">void remmina_main_on_action_help_homepage(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01276">remmina_main.c:1276</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a7049d977154921f651cc1538f59c5b7a"><div class="ttname"><a href="remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a></div><div class="ttdeci">void remmina_main_on_action_help_homepage(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01279">remmina_main.c:1279</a></div></div>
<div class="ttc" id="types_8h_html_a112d7cc6c755209cabb68cf2a62ad515"><div class="ttname"><a href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a></div><div class="ttdeci">typedefG_BEGIN_DECLS struct _RemminaFile RemminaFile</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a37436a0fbd3d64082192826328fe063a"><div class="ttname"><a href="struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a">_RemminaMain::menuitem_connection_quit</a></div><div class="ttdeci">GtkMenuItem * menuitem_connection_quit</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00058">remmina_main.h:58</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a670425eaf7430854a172ee0f41c4e5e0"><div class="ttname"><a href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0">_RemminaMain::menuitem_view_mode_tree</a></div><div class="ttdeci">GtkRadioMenuItem * menuitem_view_mode_tree</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00057">remmina_main.h:57</a></div></div>
@@ -105,23 +105,23 @@ $(document).ready(function(){initNavTree('remmina__main_8h_source.html','');});
<div class="ttc" id="struct___remmina_main_html_a98a1ddd6aebc35c131f8de819a3d861f"><div class="ttname"><a href="struct___remmina_main.html#a98a1ddd6aebc35c131f8de819a3d861f">_RemminaMain::menu_popup_delete_rc</a></div><div class="ttdeci">GtkMenu * menu_popup_delete_rc</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00055">remmina_main.h:55</a></div></div>
<div class="ttc" id="struct___remmina_main_html"><div class="ttname"><a href="struct___remmina_main.html">_RemminaMain</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00048">remmina_main.h:48</a></div></div>
<div class="ttc" id="struct___remmina_monitor_html"><div class="ttname"><a href="struct___remmina_monitor.html">_RemminaMonitor</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__monitor_8h_source.html#l00043">remmina_monitor.h:43</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_ab98d51c96a87fddaa2d5d6d4614bafa8"><div class="ttname"><a href="remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a></div><div class="ttdeci">void remmina_main_on_action_expand(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01423">remmina_main.c:1423</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a5db4436cc72b9d5ea3e498f8519efecc"><div class="ttname"><a href="remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a></div><div class="ttdeci">void remmina_main_on_action_help_debug(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01300">remmina_main.c:1300</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_ab98d51c96a87fddaa2d5d6d4614bafa8"><div class="ttname"><a href="remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a></div><div class="ttdeci">void remmina_main_on_action_expand(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01425">remmina_main.c:1425</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a5db4436cc72b9d5ea3e498f8519efecc"><div class="ttname"><a href="remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a></div><div class="ttdeci">void remmina_main_on_action_help_debug(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01303">remmina_main.c:1303</a></div></div>
<div class="ttc" id="remmina__main_8h_html_a44eb44c6391f53a19c6f1fdf9a39a8c1"><div class="ttname"><a href="remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a></div><div class="ttdeci">void remmina_main_on_action_connection_copy(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00910">remmina_main.c:910</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a0c322c3136c4225d5f8d4cee318afce7"><div class="ttname"><a href="remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7">remmina_main_new</a></div><div class="ttdeci">G_BEGIN_DECLS GtkWidget * remmina_main_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01632">remmina_main.c:1632</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a4b4f0bbdb9e487d6c3809e8a57dc1d1c"><div class="ttname"><a href="remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a></div><div class="ttdeci">void remmina_main_on_action_tools_import(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01213">remmina_main.c:1213</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a0c322c3136c4225d5f8d4cee318afce7"><div class="ttname"><a href="remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7">remmina_main_new</a></div><div class="ttdeci">G_BEGIN_DECLS GtkWidget * remmina_main_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01634">remmina_main.c:1634</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a4b4f0bbdb9e487d6c3809e8a57dc1d1c"><div class="ttname"><a href="remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a></div><div class="ttdeci">void remmina_main_on_action_tools_import(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01216">remmina_main.c:1216</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a912f2057752ad0779485c3303e3e9b04"><div class="ttname"><a href="struct___remmina_main.html#a912f2057752ad0779485c3303e3e9b04">_RemminaMain::switch_dark_mode</a></div><div class="ttdeci">GtkSwitch * switch_dark_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00064">remmina_main.h:64</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a0baa48aa1ed260cead7af434c3f69549"><div class="ttname"><a href="struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549">_RemminaMain::accelgroup_shortcuts</a></div><div class="ttdeci">GtkAccelGroup * accelgroup_shortcuts</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00084">remmina_main.h:84</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a91f22c2834ac7f38d201d8d678f8c57b"><div class="ttname"><a href="remmina__main_8h.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a></div><div class="ttdeci">void remmina_main_on_action_application_dark_theme(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01260">remmina_main.c:1260</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a91f22c2834ac7f38d201d8d678f8c57b"><div class="ttname"><a href="remmina__main_8h.html#a91f22c2834ac7f38d201d8d678f8c57b">remmina_main_on_action_application_dark_theme</a></div><div class="ttdeci">void remmina_main_on_action_application_dark_theme(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01263">remmina_main.c:1263</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_ae1e1d579bdb2517bd0f86408b9d5f97c"><div class="ttname"><a href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">_RemminaMainPriv::file_model_filter</a></div><div class="ttdeci">GtkTreeModel * file_model_filter</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00091">remmina_main.h:91</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_a606c7e6dc78219e8e5536519db723a4d"><div class="ttname"><a href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">_RemminaMainPriv::selected_name</a></div><div class="ttdeci">gchar * selected_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00097">remmina_main.h:97</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a0e6602776373cf6a198d249df6e87150"><div class="ttname"><a href="struct___remmina_main.html#a0e6602776373cf6a198d249df6e87150">_RemminaMain::monitor</a></div><div class="ttdeci">RemminaMonitor * monitor</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00086">remmina_main.h:86</a></div></div>
<div class="ttc" id="remmina__main_8h_html_a10e574723222f5df9db456977e62a093"><div class="ttname"><a href="remmina__main_8h.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a></div><div class="ttdeci">void remmina_main_on_action_connection_delete(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00977">remmina_main.c:977</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_aac0bb51159be042fecab0103e73a54dc"><div class="ttname"><a href="remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a></div><div class="ttdeci">void remmina_main_on_action_application_about(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01306">remmina_main.c:1306</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_aac0bb51159be042fecab0103e73a54dc"><div class="ttname"><a href="remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a></div><div class="ttdeci">void remmina_main_on_action_application_about(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01309">remmina_main.c:1309</a></div></div>
<div class="ttc" id="struct___remmina_main_html_ab3be770af5f21758fa641b274ca967ec"><div class="ttname"><a href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">_RemminaMain::menu_header_button</a></div><div class="ttdeci">GtkMenuButton * menu_header_button</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00053">remmina_main.h:53</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_ab2a1a54320992fb796850ffbd6a63589"><div class="ttname"><a href="remmina__main_8h.html#ab2a1a54320992fb796850ffbd6a63589">remmina_main_show_dialog</a></div><div class="ttdeci">void remmina_main_show_dialog(GtkMessageType msg, GtkButtonsType buttons, const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01735">remmina_main.c:1735</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a9896df7a92402b5a61e58420235c515a"><div class="ttname"><a href="remmina__main_8h.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a></div><div class="ttdeci">void remmina_main_on_action_search_toggle(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01399">remmina_main.c:1399</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a6ed9f6a588a2d9e3a6cf6884c8d07f92"><div class="ttname"><a href="remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a></div><div class="ttdeci">void remmina_main_on_action_application_preferences(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01086">remmina_main.c:1086</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_ab2a1a54320992fb796850ffbd6a63589"><div class="ttname"><a href="remmina__main_8h.html#ab2a1a54320992fb796850ffbd6a63589">remmina_main_show_dialog</a></div><div class="ttdeci">void remmina_main_show_dialog(GtkMessageType msg, GtkButtonsType buttons, const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01737">remmina_main.c:1737</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a9896df7a92402b5a61e58420235c515a"><div class="ttname"><a href="remmina__main_8h.html#a9896df7a92402b5a61e58420235c515a">remmina_main_on_action_search_toggle</a></div><div class="ttdeci">void remmina_main_on_action_search_toggle(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01402">remmina_main.c:1402</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a6ed9f6a588a2d9e3a6cf6884c8d07f92"><div class="ttname"><a href="remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a></div><div class="ttdeci">void remmina_main_on_action_application_preferences(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01091">remmina_main.c:1091</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a2d6960ab62869638a77d2fe5bd72c7f6"><div class="ttname"><a href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">_RemminaMain::menu_popup</a></div><div class="ttdeci">GtkMenu * menu_popup</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00052">remmina_main.h:52</a></div></div>
<div class="ttc" id="remmina__main_8h_html_a1bdf3fe7a3de2371f80adcbdcf50381d"><div class="ttname"><a href="remmina__main_8h.html#a1bdf3fe7a3de2371f80adcbdcf50381d">remmina_main_reload_preferences</a></div><div class="ttdeci">void remmina_main_reload_preferences()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01077">remmina_main.c:1077</a></div></div>
<div class="ttc" id="remmina__string__array_8h_html"><div class="ttname"><a href="remmina__string__array_8h.html">remmina_string_array.h</a></div></div>
@@ -130,7 +130,7 @@ $(document).ready(function(){initNavTree('remmina__main_8h_source.html','');});
<div class="ttc" id="remmina__main_8h_html_af56bada711b2fc9c50af83b8b62dfe8b"><div class="ttname"><a href="remmina__main_8h.html#af56bada711b2fc9c50af83b8b62dfe8b">remmina_main_on_action_connection_delete_multiple</a></div><div class="ttdeci">void remmina_main_on_action_connection_delete_multiple(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01011">remmina_main.c:1011</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a7b03d239c21141a202d0698492cfae95"><div class="ttname"><a href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95">_RemminaMain::box_quick_connect</a></div><div class="ttdeci">GtkBox * box_quick_connect</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00069">remmina_main.h:69</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a7db532834f4fd6360956cb0e2383b0fb"><div class="ttname"><a href="struct___remmina_main.html#a7db532834f4fd6360956cb0e2383b0fb">_RemminaMain::column_files_list_server</a></div><div class="ttdeci">GtkTreeViewColumn * column_files_list_server</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00077">remmina_main.h:77</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_aac3aa116a8d8b527f1aa61b7395b4b32"><div class="ttname"><a href="remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a></div><div class="ttdeci">void remmina_main_on_action_help_community(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01288">remmina_main.c:1288</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_aac3aa116a8d8b527f1aa61b7395b4b32"><div class="ttname"><a href="remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a></div><div class="ttdeci">void remmina_main_on_action_help_community(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01291">remmina_main.c:1291</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a4db5c4960c9dbe3e798528bacb31456e"><div class="ttname"><a href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">_RemminaMain::button_new</a></div><div class="ttdeci">GtkButton * button_new</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00060">remmina_main.h:60</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a1575015519fedca001bb26e129331b62"><div class="ttname"><a href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">_RemminaMain::menu_popup_full</a></div><div class="ttdeci">GtkMenu * menu_popup_full</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00054">remmina_main.h:54</a></div></div>
<div class="ttc" id="struct___remmina_main_html_acacd90f3e6df6a864154edba01464ae2"><div class="ttname"><a href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">_RemminaMain::statusbar_main</a></div><div class="ttdeci">GtkStatusbar * statusbar_main</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00081">remmina_main.h:81</a></div></div>
@@ -140,30 +140,30 @@ $(document).ready(function(){initNavTree('remmina__main_8h_source.html','');});
<div class="ttc" id="struct___remmina_main_html_ab7c6aebff1b06ef97c36bfa9d360b0c1"><div class="ttname"><a href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">_RemminaMain::builder</a></div><div class="ttdeci">GtkBuilder * builder</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00049">remmina_main.h:49</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html"><div class="ttname"><a href="struct___remmina_main_priv.html">_RemminaMainPriv</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00089">remmina_main.h:89</a></div></div>
<div class="ttc" id="struct___remmina_main_html_aebb188bd83f8dcfb80cad10e43181774"><div class="ttname"><a href="struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774">_RemminaMain::button_quick_connect</a></div><div class="ttdeci">GtkButton * button_quick_connect</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00072">remmina_main.h:72</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_ab203476099a5ad6e889f91c8e05d577d"><div class="ttname"><a href="remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a></div><div class="ttdeci">void remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01225">remmina_main.c:1225</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a3948142732379a3d165f3b0b4d5f5abc"><div class="ttname"><a href="remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01716">remmina_main.c:1716</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_ab203476099a5ad6e889f91c8e05d577d"><div class="ttname"><a href="remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a></div><div class="ttdeci">void remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01228">remmina_main.c:1228</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a3948142732379a3d165f3b0b4d5f5abc"><div class="ttname"><a href="remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01718">remmina_main.c:1718</a></div></div>
<div class="ttc" id="remmina__main_8h_html_abf51d42fa2c5ce84164b5514b4634229"><div class="ttname"><a href="remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a></div><div class="ttdeci">void remmina_main_on_action_application_mpchange(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00814">remmina_main.c:814</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a81f987e527d521be54aaf3f46dfe7ced"><div class="ttname"><a href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">_RemminaMain::tree_files_list</a></div><div class="ttdeci">GtkTreeView * tree_files_list</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00074">remmina_main.h:74</a></div></div>
<div class="ttc" id="struct___remmina_main_html_ae3c2c0b9855bb44b5b9a27a3178d32e7"><div class="ttname"><a href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">_RemminaMain::view_toggle_button</a></div><div class="ttdeci">GtkToggleButton * view_toggle_button</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00065">remmina_main.h:65</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a56ac6ffe61c0d3663ebc6b26e65a8cbc"><div class="ttname"><a href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">_RemminaMain::column_files_list_group</a></div><div class="ttdeci">GtkTreeViewColumn * column_files_list_group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00076">remmina_main.h:76</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_a467cf8ebc87ccdb68b9f88bce95c9f3a"><div class="ttname"><a href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">_RemminaMainPriv::expanded_group</a></div><div class="ttdeci">RemminaStringArray * expanded_group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00099">remmina_main.h:99</a></div></div>
<div class="ttc" id="remmina__main_8h_html_adfbfc580d25b58d09770a7d33ffe03cc"><div class="ttname"><a href="remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a></div><div class="ttdeci">void remmina_main_on_action_connection_edit(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00946">remmina_main.c:946</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_ad99b9c0bf2fa8c166a8b4a09e06ffdf7"><div class="ttname"><a href="remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a></div><div class="ttdeci">void remmina_main_show_warning_dialog(const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01745">remmina_main.c:1745</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a05dbb6ce820f3a137949b919d0efa6a1"><div class="ttname"><a href="remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a></div><div class="ttdeci">void remmina_main_on_action_application_default(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01112">remmina_main.c:1112</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_ad99b9c0bf2fa8c166a8b4a09e06ffdf7"><div class="ttname"><a href="remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a></div><div class="ttdeci">void remmina_main_show_warning_dialog(const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01747">remmina_main.c:1747</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a05dbb6ce820f3a137949b919d0efa6a1"><div class="ttname"><a href="remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a></div><div class="ttdeci">void remmina_main_on_action_application_default(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01115">remmina_main.c:1115</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_a87a88c763f806d76fdee5a233c3ad7cd"><div class="ttname"><a href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">_RemminaMainPriv::file_model_sort</a></div><div class="ttdeci">GtkTreeModel * file_model_sort</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00092">remmina_main.h:92</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a5ae0372dafe41f96a09097c07d1b270a"><div class="ttname"><a href="remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a></div><div class="ttdeci">void remmina_main_update_file_datetime(RemminaFile *file)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01728">remmina_main.c:1728</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a5ae0372dafe41f96a09097c07d1b270a"><div class="ttname"><a href="remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a></div><div class="ttdeci">void remmina_main_update_file_datetime(RemminaFile *file)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01730">remmina_main.c:1730</a></div></div>
<div class="ttc" id="remmina__main_8h_html_a6b30ed832369f3a7153aa63f98873c9d"><div class="ttname"><a href="remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a></div><div class="ttdeci">void remmina_main_on_action_connection_connect(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00768">remmina_main.c:768</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a82aa6f22340fc4f3df185aba7b01afc2"><div class="ttname"><a href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">_RemminaMain::window</a></div><div class="ttdeci">GtkWindow * window</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00050">remmina_main.h:50</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a5445e5568a6fc04d08b620829a59334a"><div class="ttname"><a href="remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a></div><div class="ttdeci">void remmina_main_on_action_application_quit(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01140">remmina_main.c:1140</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a5445e5568a6fc04d08b620829a59334a"><div class="ttname"><a href="remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a></div><div class="ttdeci">void remmina_main_on_action_application_quit(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01143">remmina_main.c:1143</a></div></div>
<div class="ttc" id="struct___remmina_main_html_aa1e811e50525f5a74bb781f8c8a10670"><div class="ttname"><a href="struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670">_RemminaMain::ustats_toggle</a></div><div class="ttdeci">GtkToggleButton * ustats_toggle</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00066">remmina_main.h:66</a></div></div>
<div class="ttc" id="remmina__main_8h_html_a52cc21537ff003b9d0fbdb9040c811af"><div class="ttname"><a href="remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a></div><div class="ttdeci">void remmina_main_on_action_connection_new(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00851">remmina_main.c:851</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a0edcc1d7dc3adcbb7bb36aa0f62dec3a"><div class="ttname"><a href="remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a></div><div class="ttdeci">void remmina_main_on_action_collapse(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01393">remmina_main.c:1393</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a0edcc1d7dc3adcbb7bb36aa0f62dec3a"><div class="ttname"><a href="remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a></div><div class="ttdeci">void remmina_main_on_action_collapse(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01396">remmina_main.c:1396</a></div></div>
<div class="ttc" id="struct___remmina_main_html_a641297035bda72ca18ffe13816a44b21"><div class="ttname"><a href="struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21">_RemminaMain::button_make_default</a></div><div class="ttdeci">GtkButton * button_make_default</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00061">remmina_main.h:61</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a2704d643ee15702a84a1c76219dd5277"><div class="ttname"><a href="remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a></div><div class="ttdeci">void remmina_main_on_action_help_donations(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01294">remmina_main.c:1294</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a2704d643ee15702a84a1c76219dd5277"><div class="ttname"><a href="remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a></div><div class="ttdeci">void remmina_main_on_action_help_donations(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01297">remmina_main.c:1297</a></div></div>
<div class="ttc" id="struct___remmina_main_html_ab743fa626843d8fbb669fbd01819aea9"><div class="ttname"><a href="struct___remmina_main.html#ab743fa626843d8fbb669fbd01819aea9">_RemminaMain::column_files_list_notes</a></div><div class="ttdeci">GtkTreeViewColumn * column_files_list_notes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00080">remmina_main.h:80</a></div></div>
<div class="ttc" id="struct___remmina_main_html_aecb54d7c3dd1e86a16e24ea2e00d4ddd"><div class="ttname"><a href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">_RemminaMain::search_bar</a></div><div class="ttdeci">GtkSearchBar * search_bar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00067">remmina_main.h:67</a></div></div>
<div class="ttc" id="struct___remmina_main_html_ac2eff9c56cc7830bcf9ca4bfdf216095"><div class="ttname"><a href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">_RemminaMain::entry_quick_connect_server</a></div><div class="ttdeci">GtkEntry * entry_quick_connect_server</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00071">remmina_main.h:71</a></div></div>
-<div class="ttc" id="remmina__main_8h_html_a0c32fe66988056b353220128611b9116"><div class="ttname"><a href="remmina__main_8h.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a></div><div class="ttdeci">void remmina_main_on_action_help_wiki(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01282">remmina_main.c:1282</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a0c32fe66988056b353220128611b9116"><div class="ttname"><a href="remmina__main_8h.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a></div><div class="ttdeci">void remmina_main_on_action_help_wiki(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01285">remmina_main.c:1285</a></div></div>
<div class="ttc" id="struct___remmina_main_priv_html_a0307278dd7770ab490f4687f2eb00e76"><div class="ttname"><a href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">_RemminaMainPriv::override_view_file_mode_to_list</a></div><div class="ttdeci">gboolean override_view_file_mode_to_list</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00098">remmina_main.h:98</a></div></div>
<div class="ttc" id="remmina__main_8h_html_ad17d9a48f2b3f84e17baa91104bc6cb1"><div class="ttname"><a href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a></div><div class="ttdeci">struct _RemminaMain RemminaMain</div></div>
<div class="ttc" id="remmina__file_8h_html"><div class="ttname"><a href="remmina__file_8h.html">remmina_file.h</a></div></div>
diff --git a/public/remmina__mpchange_8c_source.html b/public/remmina__mpchange_8c_source.html
index 23fd27647..9f34cd8a4 100644
--- a/public/remmina__mpchange_8c_source.html
+++ b/public/remmina__mpchange_8c_source.html
@@ -93,7 +93,7 @@ $(document).ready(function(){initNavTree('remmina__mpchange_8c_source.html','');
<div class="ttc" id="remmina__file_8c_html_a8eb1b213d9d08c6ad13683ce05f4355e"><div class="ttname"><a href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a></div><div class="ttdeci">const gchar * remmina_file_get_string(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00516">remmina_file.c:516</a></div></div>
<div class="ttc" id="structmpchanger__params_html_ac8fdacd94418731904020ff679475918"><div class="ttname"><a href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">mpchanger_params::searchentrychange_timeout_source_id</a></div><div class="ttdeci">guint searchentrychange_timeout_source_id</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00072">remmina_mpchange.c:72</a></div></div>
<div class="ttc" id="remmina__mpchange_8c_html_a1e4f5a537a13face058177dc97e88c8a"><div class="ttname"><a href="remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a">remmina_mpchange_stopsearch</a></div><div class="ttdeci">static void remmina_mpchange_stopsearch(GtkSearchEntry *entry, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00356">remmina_mpchange.c:356</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01716">remmina_main.c:1716</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01718">remmina_main.c:1718</a></div></div>
<div class="ttc" id="structmpchanger__params_html_a73f1024c68afe4f35bea5608188c52bc"><div class="ttname"><a href="structmpchanger__params.html#a73f1024c68afe4f35bea5608188c52bc">mpchanger_params::eGatewayPassword2</a></div><div class="ttdeci">GtkEntry * eGatewayPassword2</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00062">remmina_mpchange.c:62</a></div></div>
<div class="ttc" id="remmina__file__manager_8h_html"><div class="ttname"><a href="remmina__file__manager_8h.html">remmina_file_manager.h</a></div></div>
<div class="ttc" id="remmina__mpchange_8c_html_a5d76b81b0ad4c19007a781d4edb8181fa8843686a2923021b5ded06faeaaf66f1"><div class="ttname"><a href="remmina__mpchange_8c.html#a5d76b81b0ad4c19007a781d4edb8181fa8843686a2923021b5ded06faeaaf66f1">NUM_COLS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00082">remmina_mpchange.c:82</a></div></div>
diff --git a/public/remmina__plugin__manager_8c_source.html b/public/remmina__plugin__manager_8c_source.html
index 8fbaadad6..d08b9a7f0 100644
--- a/public/remmina__plugin__manager_8c_source.html
+++ b/public/remmina__plugin__manager_8c_source.html
@@ -101,7 +101,7 @@ $(document).ready(function(){initNavTree('remmina__plugin__manager_8c_source.htm
<div class="ttc" id="remmina__plugin__manager_8c_html_a7e75f54171749cfec5c0cbbb1095ed86"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86">htdestroy</a></div><div class="ttdeci">static void htdestroy(gpointer ht)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00082">remmina_plugin_manager.c:82</a></div></div>
<div class="ttc" id="remmina__protocol__widget_8c_html_a9d55210413d6a313478f81cf76ecf1b7"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9d55210413d6a313478f81cf76ecf1b7">remmina_protocol_widget_start_direct_tunnel</a></div><div class="ttdeci">gchar * remmina_protocol_widget_start_direct_tunnel(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus)</div><div class="ttdoc">Start an SSH tunnel if possible and return the host:port string. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01062">remmina_protocol_widget.c:1062</a></div></div>
<div class="ttc" id="struct___remmina_language_wrapper_plugin_html"><div class="ttname"><a href="struct___remmina_language_wrapper_plugin.html">_RemminaLanguageWrapperPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00150">plugin.h:150</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01716">remmina_main.c:1716</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a7740488de65c0e642895cc9dfba07b6e"><div class="ttname"><a href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a></div><div class="ttdeci">GtkWindow * remmina_main_get_window()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01718">remmina_main.c:1718</a></div></div>
<div class="ttc" id="remmina__protocol__widget_8c_html_ae2522242b3f39ee84ee8cf75170de0c0"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget_chat_receive</a></div><div class="ttdeci">void remmina_protocol_widget_chat_receive(RemminaProtocolWidget *gp, const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l02036">remmina_protocol_widget.c:2036</a></div></div>
<div class="ttc" id="remmina__protocol__widget_8c_html_aaf355ea7103fc57a4cbc7b815cde2995"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget_get_width</a></div><div class="ttdeci">gint remmina_protocol_widget_get_width(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01389">remmina_protocol_widget.c:1389</a></div></div>
<div class="ttc" id="remmina__plugin__native_8c_html_ae60c5371a41a83ef94c6a2b3dc8c9520"><div class="ttname"><a href="remmina__plugin__native_8c.html#ae60c5371a41a83ef94c6a2b3dc8c9520">remmina_plugin_native_load</a></div><div class="ttdeci">gboolean remmina_plugin_native_load(RemminaPluginService *service, const char *name)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__native_8c_source.html#l00060">remmina_plugin_native.c:60</a></div></div>
@@ -173,7 +173,7 @@ $(document).ready(function(){initNavTree('remmina__plugin__manager_8c_source.htm
<div class="ttc" id="remmina__protocol__widget_8c_html_a1cae52cad394f317c712eb4fd709d261"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a1cae52cad394f317c712eb4fd709d261">remmina_protocol_widget_signal_connection_closed</a></div><div class="ttdeci">void remmina_protocol_widget_signal_connection_closed(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00360">remmina_protocol_widget.c:360</a></div></div>
<div class="ttc" id="remmina__plugin__manager_8c_html_a3996819fdb2c833f3c64c2ad399e5f10"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager_service</a></div><div class="ttdeci">RemminaPluginService remmina_plugin_manager_service</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00174">remmina_plugin_manager.c:174</a></div></div>
<div class="ttc" id="remmina__plugin__manager_8c_html_a719ce18a83ed7ecb3388f179a8590c10"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10">remmina_plugin_type_name</a></div><div class="ttdeci">static const gchar * remmina_plugin_type_name[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00073">remmina_plugin_manager.c:73</a></div></div>
-<div class="ttc" id="remmina__main_8c_html_ab2a1a54320992fb796850ffbd6a63589"><div class="ttname"><a href="remmina__main_8c.html#ab2a1a54320992fb796850ffbd6a63589">remmina_main_show_dialog</a></div><div class="ttdeci">void remmina_main_show_dialog(GtkMessageType msg, GtkButtonsType buttons, const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01735">remmina_main.c:1735</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab2a1a54320992fb796850ffbd6a63589"><div class="ttname"><a href="remmina__main_8c.html#ab2a1a54320992fb796850ffbd6a63589">remmina_main_show_dialog</a></div><div class="ttdeci">void remmina_main_show_dialog(GtkMessageType msg, GtkButtonsType buttons, const gchar *message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01737">remmina_main.c:1737</a></div></div>
<div class="ttc" id="remmina__protocol__widget_8c_html_a9acf045c5a3eec5b7f748678dee0d3ee"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9acf045c5a3eec5b7f748678dee0d3ee">remmina_protocol_widget_desktop_resize</a></div><div class="ttdeci">void remmina_protocol_widget_desktop_resize(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00461">remmina_protocol_widget.c:461</a></div></div>
<div class="ttc" id="remmina__log_8h_html"><div class="ttname"><a href="remmina__log_8h.html">remmina_log.h</a></div></div>
<div class="ttc" id="struct___remmina_protocol_feature_html_a1826baafd2d7b5dc8a009ef4fcad77e9"><div class="ttname"><a href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">_RemminaProtocolFeature::type</a></div><div class="ttdeci">RemminaProtocolFeatureType type</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00073">types.h:73</a></div></div>